DynamicWorkspaces를 사용하여 작업공간 이름을 대화형으로 바꾸는 것이 작동하지 않습니다.

DynamicWorkspaces를 사용하여 작업공간 이름을 대화형으로 바꾸는 것이 작동하지 않습니다.

작업하는 동안 작업 공간의 이름을 바꾸는 방법을 찾으려고 노력했습니다. 현재 최대 4개의 작업 공간을 사용하고 있으며 필요에 따라 작업 공간에 새 이름을 할당하고 싶습니다.

XMonad.Actions.DynamicWorkspaces작업 공간을 생성하고 삭제할 수는 있지만 이름을 바꿀 수는 없다는 사실을 발견했습니다 . 현재 바인딩이 있습니다.

((modM .|. shiftMask, xK_r), renameWorkspace defaultXPConfig)

그러나 defaultXPConfig에 무언가를 입력하면 아무 일도 일어나지 않습니다(즉, 작업 공간 이름은 xmobar에서 변경되지 않습니다). 작업 공간을 생성하고 삭제할 수 있으며 변경 사항이 xmobar에 표시됩니다.

renameWorkspaceByName 메서드가 예상대로 작동하는데 xpconfig를 잘못 사용하고 있는 것 같습니다.

내 xmonad.hs를 게시했습니다.여기

답변1

xmonad-contrib에서 "configure"를 사용하고 있는지 확인하십시오.https://hackage.haskell.org/package/xmonad-contrib-0.13/docs/XMonad-Config-Desktop.html.

기본적으로 게시한 최소 구성부터 시작하여 필요한 모듈도 가져와야 xmonad $ defaultConfig {합니다 .xmonad $ desktopConfig {import XMonad.Config.Desktop

작업을 위한 최소 구성은 다음과 같습니다.

import XMonad
import XMonad.Config.Desktop
import XMonad.Util.EZConfig
import XMonad.Actions.DynamicWorkspaces

modM                 = mod4Mask
myWorkspaces         = ["1:Surf",  "2:Web", "3:Dev", "4:Term","5:Pdf"]
myKeys = [((modM .|. shiftMask, xK_r), renameWorkspace def)]

main = do
  xmonad $ desktopConfig {
   workspaces         = myWorkspaces
  , modMask            = modM
  }
    `additionalKeys` myKeys

관련 정보