aboutsummaryrefslogtreecommitdiffstats
path: root/Run.hs
diff options
context:
space:
mode:
authorgwern0 <gwern0@gmail.com>2007-10-24 02:16:28 +0200
committergwern0 <gwern0@gmail.com>2007-10-24 02:16:28 +0200
commit4984acd0120116b4c0d9199041abfc5c213fcdab (patch)
tree1e6497109b6d22036e917ef222a5d31f8e6e0cb4 /Run.hs
parentee0a58ea0a471eb423a96e1778832f35b5bff43f (diff)
downloadXMonadContrib-4984acd0120116b4c0d9199041abfc5c213fcdab.tar.gz
XMonadContrib-4984acd0120116b4c0d9199041abfc5c213fcdab.tar.xz
XMonadContrib-4984acd0120116b4c0d9199041abfc5c213fcdab.zip
Run.hs: +my suggested runInTerm general function
darcs-hash:20071024001628-f7719-f20250b704f106adbf77f8a16dc1948781dc882c.gz
Diffstat (limited to '')
-rw-r--r--Run.hs7
1 files changed, 7 insertions, 0 deletions
diff --git a/Run.hs b/Run.hs
index c3ed501..f7d134b 100644
--- a/Run.hs
+++ b/Run.hs
@@ -22,6 +22,7 @@ module XMonadContrib.Run (
runProcessWithInputAndWait,
safeSpawn,
unsafeSpawn,
+ runInTerm,
runInXTerm,
seconds
) where
@@ -105,6 +106,12 @@ safeSpawn prog arg = io (try (forkProcess $ executeFile prog True [arg] Nothing)
unsafeSpawn :: String -> X ()
unsafeSpawn = spawn
+-- | Run a given program in a given X terminal emulator. This uses safeSpawn.
+runInTerm :: String -> String -> X ()
+runInTerm term command = safeSpawn term ("-e " ++ command)
+
+-- | Runs a given program in XTerm, the X terminal emulator included by default in X.org installations.
+-- The use of XTerm can be overridden in one's shell by setting $XTERMCMD to another shell's name.
runInXTerm :: String -> X ()
runInXTerm com = do
c <- io $ catch (getEnv "XTERMCMD") (const $ return "xterm")