xmonad의 특정 작업 공간에서 응용 프로그램 시작


13

manageHook 및 composeAll을 사용하여 특정 응용 프로그램을 특정 작업 영역과 연결하는 방법을 알고 있습니다. 내가 찾고있는 것은 특정 작업 공간에서 응용 프로그램을 생성하는 방법 String -> workSpaceId -> X ()입니다. 예를 들어 다음과 같은 예제 사용 유형의 함수 가 있습니다.

spawnToWorkspace "emacs" "2:code"

답변:


9

더 정확한 (그리고 현대; SpawnOn이 출시 된 XMonad에 있다고 생각하지 않습니다. 많은 좋은 것들이 단지 darcs에만 있다고 생각합니다)

import XMonad.Actions.SpawnOn

그런 다음 액션을 사용하십시오.

spawnOn "2:code" "emacs"

자세한 내용은 http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Actions-SpawnOn.html 을 참조하십시오.


6
여전히 작동합니까? 저는 xmonad 0.10을 사용하고 있으며 spawnOn을 사용하면 여전히 현재 작업 공간에서 응용 프로그램을 생성하는 것 같습니다.
bhh1988

5

좋아, 실제로 생각보다 쉬웠다.

spawnToWorkspace :: String -> String -> X ()
spawnToWorkspace program workspace = do
                                      spawn program     
                                      windows $ W.greedyView workspace

1
이것은 작동하는 것으로 보이는 유일한 솔루션입니다 spawnOn.XMonad-Contrib의 최신 버전의 XMonad가 손상되었습니다.
eazar001
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.