我已经安装了在Haskell中编写的Xmonad 0.10-3轻量级X11窗口管理器以及我的Ubuntu 12.04 LTS系统上的库和文档.
我期望一些界面/菜单运行这个应用程序但没有看到.我也找不到相关文档.
请指导如何开始使用Xmonad?
几周前我开始使用xmonad作为我的窗口管理器.我喜欢它.这很棒.但是从那以后,当我在emacs中并且想要按下"ALT"键时,我不得不使用"ESC"键.这是因为"ALT"键被xmonad用作"mod"键.
有没有办法将emacs mod键分配给除"ALT"键以外的任何键,例如将其分配给"windows"键.
任何帮助将非常感激.
谢谢,Vimal
PS这是我使用的键盘 http://tinyurl.com/c4955o
当我想重新编译xmonad以更改配置时,我得到了这个:
Implicit import declaration:
Ambiguous module name `Prelude':
it was found in multiple packages: base haskell98-2.0.0.0
Run Code Online (Sandbox Code Playgroud)
Xmonad是通过pacman安装的.当我收到此错误时,我从pacman中删除了xmonad,然后尝试安装xmonad.我再次得到了上述错误但我能够通过从cabal文件中删除haskell98来解决它.
现在我想用MOD-Q重新配置xmonad错误再次出现,我不知道如何解决这个问题.任何帮助赞赏.
我使用GHC 7.0.3版(来自Haskell平台)
我想要
目前,我正在使用XMonad.Layout.NoBorders中的smartBorders从mplayer中删除边框,并在该窗口是工作区中唯一的窗口时删除窗口的边框.但是,当我在两个工作区之间切换时,这两个工作区都有一个非浮动窗口(无论模式(高/镜像/满)),然后我看到窗口(在我正在改变的工作空间中)"跳"了一下,绘制边框,然后删除一小段时间(如果将borderWidth设置为大数,效果会更明显).
我的〜/ .xmonad/xmonad.hs的相关部分如下所示.
import XMonad.Hooks.ManageDocks
import XMonad.Layout.NoBorders
myLayout = tiled ||| Mirror tiled ||| Full
where
tiled = Tall 1 (3/100) (3/5)
main = xmonad $ defaultConfig
{ layoutHook = avoidStruts $ smartBorders $ myLayout
, borderWidth = 4
, normalBorderColor = "#000000" -- black
, focusedBorderColor = "#ff3f3f" -- reddish
}
Run Code Online (Sandbox Code Playgroud)
你们大家都知道我是如何实现这种效果的吗?(是第2部分.甚至是可能的吗?)对扩展和/或现有配置的建议和指示,以实现类似的效果非常感激.
鉴于我对Haskell的有限(零)知识,xmonad.hs可能具有挑战性.
我正在寻找如何修改我的配置文件以允许使用例如VLC观看视频的"真实"全屏.
我目前的xmonad.hs:
import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks
import XMonad.Util.Run(spawnPipe)
import XMonad.Util.EZConfig(additionalKeys)
import Graphics.X11.ExtraTypes.XF86
import System.IO
main = do
xmproc <- spawnPipe "xmobar /home/user/.xmobarrc"
xmonad $ defaultConfig
{ terminal = "urxvt",
manageHook = manageDocks <+> manageHook defaultConfig
, layoutHook = avoidStruts $ layoutHook defaultConfig
, logHook = dynamicLogWithPP xmobarPP
{ ppOutput = hPutStrLn xmproc
, ppTitle = xmobarColor "green" "" . shorten 50
}
} `additionalKeys`
[ ((0 , xF86XK_AudioLowerVolume), spawn "amixer set Master on && amixer set Headphone …
Run Code Online (Sandbox Code Playgroud) 是否有可能以某种方式使工作区布局根据我显示的物理屏幕而改变?
我想在左侧监视器上的布局上使用reflectHoriz(来自XMonad.Layout.PerWorkspace),以便主窗格始终最接近2个屏幕的中心.
我尝试了XMonad.Layout.IndependentScreens,但这只是创建双监视器依赖的工作区,这不是我的目标.理想情况下,我希望相同的工作区具有不同的布局设置,具体取决于显示它的监视器.
我左边有几个垂直堆叠的瓷砖,右边有一些.我可以轻松地水平调整主窗格(使用mod + l和mod + h),但我想在此设置中垂直调整某些窗口(包括非主窗口)的大小.
我该怎么做呢??
我正在尝试配置我,xmonad.hs
这样当我开始我的会话时,我会在不同的工作区上启动一系列不同的程序(例如1中的终端; 2中的Firefox; 3中的Pidgin).
我已经调查过了XMonad.Actions.SpawnOn
,但是作为一个spawnOn
返回X ()
而不是一个共同的m ()
我不能使用它main = do ...
.
是否有一个函数采用X
-monad并返回IO ()
或是否有另一种解决方法?
我可以更改工作区的名称,并且可能只是通过更改此常量来添加更多:
myWorkspaces = ["1","2","3?","4","5","6","7?","8?","9?"]
Run Code Online (Sandbox Code Playgroud)
如果我向数组添加内容,将会有更多工作空间,但我如何键入它们?Mod-1到Mod-9是默认设置,但我找不到有关如何更改默认值的文档.
我有一个Java swing GUI,使用其他窗口管理器运行并显示正常,但是当我在Xmonad中运行它时,它无法正确显示.所有显示的是窗口的框架,它没有按钮,菜单等灰显.如何正确显示Swing GUI?