Tải lại cấu hình của xmobar


0

Tôi đang hạnh phúc sử dụng xmobar với xmonad là người quản lý cửa sổ của tôi.

Khi thay đổi cấu hình của xmonad, tôi sử dụng mod + q để làm cho cấu hình mới có hiệu quả.

Điều này hoạt động tốt cho xmonad nhưng tôi nhận thấy rằng xmobar không tải lại cấu hình của nó.

Làm cách nào tôi có thể tải lại cấu hình của xmobar?


Cấu hình hiện tại của tôi trong xmonad.hs

import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks
import XMonad.Util.Run(spawnPipe)
import XMonad.Util.EZConfig(additionalKeys)
import System.IO

main = do

  xmproc <- spawnPipe "xmobar"

  xmonad $ defaultConfig {
          manageHook = manageDocks <+> manageHook defaultConfig
        , layoutHook = avoidStruts  $
                      layoutHook defaultConfig
        -- Without this, the xmonad pane would hide xmobar
        -- From https://unix.stackexchange.com/questions/288037/xmobar-does-not-appear-on-top-of-window-stack-when-xmonad-starts/303242
        , handleEventHook = handleEventHook defaultConfig <+> docksEventHook
        , logHook = dynamicLogWithPP xmobarPP
                        { ppOutput = hPutStrLn xmproc
                        , ppTitle = xmobarColor "green" "" . shorten 50
                        }
        , modMask = mod4Mask     -- Rebind Mod to the Windows key
        , terminal = "urxvt"
        , borderWidth = 1
        , normalBorderColor = "#edf9ee"
        , focusedBorderColor = "dark green"
        , focusFollowsMouse = False
        } `additionalKeys`
        [
          -- Toggle xmobar using mod + b
          ((mod4Mask, xK_b), sendMessage ToggleStruts)
          -- Make a screenshot of the whole screen with the print key
        , ((0, xK_Print), spawn "import -window root screenshot_$(date +%F_%H-%M-%S).png")
        ]

Đây là cấu hình từ .xmobarrc:

-- Configure the status bar for xmonad: https://wiki.archlinux.org/index.php/Xmobar
Config { font = "-*-Fixed-Bold-R-Normal-*-15-*-*-*-*-*-*-*"
        , borderColor = "black"
        , border = TopB
        , bgColor = "blue"
        , fgColor = "grey"
        , position = TopW L 100
        , commands = [ Run MultiCpu ["-t","Cpu: <total0> <total1> <total2> <total3>","-L","30","-H","60","-h","#FFB6B0","-l","#CEFFAC","-n","#FFFFCC","-w","3"] 10
                     , Run Memory ["-t","Mem: <usedratio>%"] 10
                     , Run Battery ["-t","Bat: <left>% / <timeleft>","-L","30","-H","60","-h","green","-n","yellow","-l","red"] 10
                     , Run Com "uname" ["-s","-r"] "" 36000
                     , Run Date "%a %F %H:%M" "date" 10
                     ]
        , sepChar = "%"
        , alignSep = "}{"
        , template = "%multicpu% | %memory% | %battery%}{<fc=#ee9a00>%date%</fc> | %uname% "
        , hideOnStart = False
        , persistent = True
        }

Câu trả lời:


0

Vì xmonad sẽ hiển thị xmobar được khởi động lại tốt, tôi sử dụng

killall xmobar; xmobar &

trong thiết bị đầu cuối của tôi để thực hiện các thay đổi trong .xmobarrc có hiệu lực.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.