diff options
author | Devin Mullins <me@twifkak.com> | 2007-10-06 09:09:59 +0200 |
---|---|---|
committer | Devin Mullins <me@twifkak.com> | 2007-10-06 09:09:59 +0200 |
commit | fcec780f4bf68073bfad76998b05bf8663e9b83f (patch) | |
tree | 7259dd31f4ec7a516ee63310bfbedb0bef6e9094 /DirectoryPrompt.hs | |
parent | 6ee3d30ce497d673bdc25592b846c14b4b660a17 (diff) | |
download | XMonadContrib-fcec780f4bf68073bfad76998b05bf8663e9b83f.tar.gz XMonadContrib-fcec780f4bf68073bfad76998b05bf8663e9b83f.tar.xz XMonadContrib-fcec780f4bf68073bfad76998b05bf8663e9b83f.zip |
change Dmenu functions to return IO/X (Maybe String)
dmenu exits with code 1 when you hit Escape, and I wanna create a contrib that
takes advantage of that.
This required changes in four contribs (Commands, DirectoryPrompt, ShellPrompt,
and WorkspaceDir), and might require changes in users' Configs. Also, I'm not
sure some of the changes I made to the client code are very Haskelly. Would
appreciate input there.
darcs-hash:20071006070959-78224-eeefb4300d6d3de7b199f2b1ad37ba43384e03f1.gz
Diffstat (limited to '')
-rw-r--r-- | DirectoryPrompt.hs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/DirectoryPrompt.hs b/DirectoryPrompt.hs index b010d4f..5ea4c36 100644 --- a/DirectoryPrompt.hs +++ b/DirectoryPrompt.hs @@ -18,6 +18,8 @@ module XMonadContrib.DirectoryPrompt ( directoryPrompt ) where +import Data.Maybe(fromMaybe) + import XMonad import XMonadContrib.XPrompt import XMonadContrib.Dmenu ( runProcessWithInput ) @@ -34,7 +36,7 @@ directoryPrompt :: XPConfig -> String -> (String -> X ()) -> X () directoryPrompt c prom job = mkXPrompt (Dir prom) c getDirCompl job getDirCompl :: String -> IO [String] -getDirCompl s = (filter notboring . lines) `fmap` +getDirCompl s = (filter notboring . lines . fromMaybe "") `fmap` runProcessWithInput "/bin/bash" [] ("compgen -A directory " ++ s ++ "\n") notboring :: String -> Bool |