diff options
| author | aarne <aarne@cs.chalmers.se> | 2006-06-01 08:16:21 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2006-06-01 08:16:21 +0000 |
| commit | 34ca8208ac9ca06b2a5c1005cfab860e5697071d (patch) | |
| tree | 358f24aabee51874d5df7dcb956722b6a1a070f6 /src/GF/GFModes.hs | |
| parent | 5e665fa2ac63ee0739f787cc2fb7744d40721b7a (diff) | |
reload = r command
Diffstat (limited to 'src/GF/GFModes.hs')
| -rw-r--r-- | src/GF/GFModes.hs | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/GF/GFModes.hs b/src/GF/GFModes.hs index dd25d1e49..faab3cede 100644 --- a/src/GF/GFModes.hs +++ b/src/GF/GFModes.hs @@ -28,7 +28,7 @@ import Data.Char (isSpace) -- separated from GF Main 24/6/2003 gfInteract :: HState -> IO HState -gfInteract st@(env,hist) = do +gfInteract st@(env,hist@(his,_,_,_)) = do -- putStrFlush "> " M.F 25/01-02 prompt moved to Arch. (s,cs) <- getCommandLines st case ifImpure cs of @@ -48,6 +48,15 @@ gfInteract st@(env,hist) = do st' <- execLinesH line [co] st -- s would not work in execLinesH gfInteract st' + Just (ICReload,_) -> case dropWhile (not . isImport) his of + line:_ -> do + let co = pCommandLine st $ words line + st' <- execLinesH line [co] st + gfInteract st' + _ -> do + putStrLn "No previous import" + gfInteract st + Just (ICEditSession,os) -> case getOptVal os useFile of Just file -> do s <- readFileIf file @@ -66,6 +75,10 @@ gfInteract st@(env,hist) = do opts = globalOptions env ifNotSilent c = if oElem beSilent opts then return () else putStrLnFlush c + isImport l = case words l of + "i":_ -> True + "import":_ -> True + _ -> False gfBatch :: HState -> IO HState gfBatch st@(sh,_) = do |
