Use new terminal config option

This commit is contained in:
Spencer Janssen 2007-10-24 11:02:19 +00:00
parent 32a01355bf
commit c65b9c06b9
3 changed files with 10 additions and 15 deletions

View File

@ -29,7 +29,7 @@ import XMonad
import Operations import Operations
import StackSet hiding (workspaces) import StackSet hiding (workspaces)
import XMonadContrib.Dmenu (dmenu) import XMonadContrib.Dmenu (dmenu)
import {-# SOURCE #-} Config (workspaces,serialisedLayouts) import {-# SOURCE #-} Config (workspaces,serialisedLayouts, terminal)
import qualified Data.Map as M import qualified Data.Map as M
import System.Exit import System.Exit
@ -84,7 +84,7 @@ defaultCommands = workspaceCommands ++ screenCommands
, ("default-layout" , setLayout (head serialisedLayouts) ) , ("default-layout" , setLayout (head serialisedLayouts) )
, ("restart-wm" , sr >> restart Nothing True ) , ("restart-wm" , sr >> restart Nothing True )
, ("restart-wm-no-resume", sr >> restart Nothing False ) , ("restart-wm-no-resume", sr >> restart Nothing False )
, ("xterm" , spawn "xterm" ) , ("xterm" , spawn terminal )
, ("run" , spawn "exe=`dmenu_path | dmenu -b` && exec $exe" ) , ("run" , spawn "exe=`dmenu_path | dmenu -b` && exec $exe" )
, ("kill" , kill ) , ("kill" , kill )
, ("refresh" , refresh ) , ("refresh" , refresh )

17
Run.hs
View File

@ -24,7 +24,6 @@ module XMonadContrib.Run (
unsafeSpawn, unsafeSpawn,
runInTerm, runInTerm,
safeRunInTerm, safeRunInTerm,
runInXTerm,
seconds seconds
) where ) where
@ -37,6 +36,7 @@ import System.Exit (ExitCode(ExitSuccess), exitWith)
import System.IO (IO, FilePath, hPutStr, hGetContents, hFlush, hClose) import System.IO (IO, FilePath, hPutStr, hGetContents, hFlush, hClose)
import System.Process (runInteractiveProcess, waitForProcess) import System.Process (runInteractiveProcess, waitForProcess)
import XMonad (X, io, spawn) import XMonad (X, io, spawn)
import {-# SOURCE #-} Config (terminal)
-- $usage -- $usage
-- For an example usage of runInXTerm see XMonadContrib.SshPrompt -- For an example usage of runInXTerm see XMonadContrib.SshPrompt
@ -106,15 +106,10 @@ safeSpawn prog arg = io (try (forkProcess $ executeFile prog True [arg] Nothing)
unsafeSpawn :: String -> X () unsafeSpawn :: String -> X ()
unsafeSpawn = spawn unsafeSpawn = spawn
-- | Run a given program in a given X terminal emulator. This uses safeSpawn. -- | Run a given program in the preferred terminal emulator. This uses safeSpawn.
safeRunInTerm :: String -> String -> X () safeRunInTerm :: String -> X ()
safeRunInTerm term command = safeSpawn term ("-e " ++ command) safeRunInTerm command = safeSpawn terminal ("-e " ++ command)
unsafeRunInTerm, runInTerm :: String -> String -> X () unsafeRunInTerm, runInTerm :: String -> X ()
unsafeRunInTerm term command = unsafeSpawn $ term ++ " -e " ++ command unsafeRunInTerm command = unsafeSpawn $ terminal ++ " -e " ++ command
runInTerm = unsafeRunInTerm runInTerm = unsafeRunInTerm
-- | Runs a given program in XTerm, the X terminal emulator included by default in X.org installations.
-- Specializes runInTerm to use XTerm instead of an arbitrary other terminal emulator.
runInXTerm :: String -> X ()
runInXTerm = runInTerm "xterm"

View File

@ -26,7 +26,7 @@ import Data.Maybe (Maybe(..), catMaybes)
import Data.Set (toList, fromList) import Data.Set (toList, fromList)
import System.Directory (doesFileExist) import System.Directory (doesFileExist)
import XMonad (X, io) import XMonad (X, io)
import XMonadContrib.Run (runInXTerm) import XMonadContrib.Run (runInTerm)
import XMonadContrib.XPrompt (XPrompt(..), XPConfig, mkXPrompt, import XMonadContrib.XPrompt (XPrompt(..), XPConfig, mkXPrompt,
mkComplFunFromList) mkComplFunFromList)
-- $usage -- $usage
@ -55,7 +55,7 @@ sshPrompt c = do
mkXPrompt Ssh c (mkComplFunFromList sc) ssh mkXPrompt Ssh c (mkComplFunFromList sc) ssh
ssh :: String -> X () ssh :: String -> X ()
ssh s = runInXTerm ("ssh " ++ s) ssh s = runInTerm ("ssh " ++ s)
sshComplList :: IO [String] sshComplList :: IO [String]
sshComplList = (sort . toList . fromList) `fmap` liftM2 (++) sshComplListLocal sshComplListGlobal sshComplList = (sort . toList . fromList) `fmap` liftM2 (++) sshComplListLocal sshComplListGlobal