mirror of
https://github.com/simonmichael/hledger.git
synced 2024-12-24 19:02:46 +03:00
tools: .ghci file to control prompt
This commit is contained in:
parent
01a2aa9394
commit
d05209d156
39
.ghci
Normal file
39
.ghci
Normal file
@ -0,0 +1,39 @@
|
||||
:set prompt "ghci> "
|
||||
|
||||
-- ghci commands to be run once at ghci startup
|
||||
-- http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/ghci-commands.html
|
||||
|
||||
-- set up context (handled by make ghci/stack ghci/cabal repl now)
|
||||
-- :set -ihledger-lib -ihledger -ihledger-web
|
||||
-- :l hledger/hledger-cli.hs
|
||||
-- import Hledger
|
||||
|
||||
-- -- :reload and run commands in .ghci2
|
||||
-- :def R \_ -> return ":reload\n:script .ghci2"
|
||||
|
||||
-- -- run commands from a file, .ghci2 by default
|
||||
-- :def s \f -> readFile $ if null f then ".ghci2" else f
|
||||
|
||||
-- -- reset hledger's sticky global debug level flag so :main --debug=N works
|
||||
-- :def resetdebug \_ -> return ":!touch hledger-lib/Hledger/Utils.hs\n:reload\n"
|
||||
|
||||
-- -- http://www.reddit.com/r/haskell/comments/24kpyu/watching_for_changes_and_rerunning_tests_in_ghci/
|
||||
-- :{
|
||||
-- {-
|
||||
-- import System.FSNotify
|
||||
-- import Data.String
|
||||
-- import Control.Concurrent.MVar
|
||||
-- import Control.Concurrent
|
||||
|
||||
-- :def test const (withManager (\manager ->
|
||||
-- do putStrLn "Listening to changes, press any key to stop..."
|
||||
-- lock <- newEmptyMVar
|
||||
-- watchTree manager (fromString ".") (const True) (const $ putMVar lock True)
|
||||
-- forkIO (getLine >> putMVar lock False)
|
||||
-- rerun <- readMVar lock
|
||||
-- return $ if rerun
|
||||
-- then ":reload \n :main \n :test"
|
||||
-- else ""
|
||||
-- ))
|
||||
-- -}
|
||||
-- :}
|
Loading…
Reference in New Issue
Block a user