mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-07-31 20:21:51 -07:00
SshPrompt.hs: use `uniqSort' from XPrompt.hs
Remove excessive import lists.
This commit is contained in:
28
SshPrompt.hs
28
SshPrompt.hs
@@ -3,7 +3,7 @@
|
|||||||
-- Module : XMonadContrib.SshPrompt
|
-- Module : XMonadContrib.SshPrompt
|
||||||
-- Copyright : (C) 2007 Andrea Rossato
|
-- Copyright : (C) 2007 Andrea Rossato
|
||||||
-- License : BSD3
|
-- License : BSD3
|
||||||
--
|
--
|
||||||
-- Maintainer : andrea.rossato@unibz.it
|
-- Maintainer : andrea.rossato@unibz.it
|
||||||
-- Stability : unstable
|
-- Stability : unstable
|
||||||
-- Portability : unportable
|
-- Portability : unportable
|
||||||
@@ -18,17 +18,17 @@ module XMonadContrib.SshPrompt (
|
|||||||
sshPrompt
|
sshPrompt
|
||||||
) where
|
) where
|
||||||
|
|
||||||
import System.Environment (getEnv)
|
import XMonad
|
||||||
import Control.Monad(Monad (return), Functor(..), liftM2, mapM)
|
import XMonadContrib.Run
|
||||||
import Data.List ((++), concat, filter, map, words, lines, takeWhile, take,
|
import XMonadContrib.XPrompt
|
||||||
sort)
|
|
||||||
import Data.Maybe (Maybe(..), catMaybes)
|
import System.Directory
|
||||||
import Data.Set (toList, fromList)
|
import System.Environment
|
||||||
import System.Directory (doesFileExist)
|
|
||||||
import XMonad (X, io)
|
import Control.Monad
|
||||||
import XMonadContrib.Run (runInTerm)
|
import Data.List
|
||||||
import XMonadContrib.XPrompt (XPrompt(..), XPConfig, mkXPrompt,
|
import Data.Maybe
|
||||||
mkComplFunFromList)
|
|
||||||
-- $usage
|
-- $usage
|
||||||
-- 1. In Config.hs add:
|
-- 1. In Config.hs add:
|
||||||
--
|
--
|
||||||
@@ -58,13 +58,13 @@ ssh :: String -> X ()
|
|||||||
ssh s = runInTerm ("ssh " ++ s)
|
ssh s = runInTerm ("ssh " ++ s)
|
||||||
|
|
||||||
sshComplList :: IO [String]
|
sshComplList :: IO [String]
|
||||||
sshComplList = (nub . sort) `fmap` liftM2 (++) sshComplListLocal sshComplListGlobal
|
sshComplList = uniqSort `fmap` liftM2 (++) sshComplListLocal sshComplListGlobal
|
||||||
|
|
||||||
sshComplListLocal :: IO [String]
|
sshComplListLocal :: IO [String]
|
||||||
sshComplListLocal = do
|
sshComplListLocal = do
|
||||||
h <- getEnv "HOME"
|
h <- getEnv "HOME"
|
||||||
sshComplListFile $ h ++ "/.ssh/known_hosts"
|
sshComplListFile $ h ++ "/.ssh/known_hosts"
|
||||||
|
|
||||||
sshComplListGlobal :: IO [String]
|
sshComplListGlobal :: IO [String]
|
||||||
sshComplListGlobal = do
|
sshComplListGlobal = do
|
||||||
env <- getEnv "SSH_KNOWN_HOSTS" `catch` (\_ -> return "/nonexistent")
|
env <- getEnv "SSH_KNOWN_HOSTS" `catch` (\_ -> return "/nonexistent")
|
||||||
|
Reference in New Issue
Block a user