summaryrefslogtreecommitdiff
path: root/testsuite/tests/ghci/scripts/ghci061.script
diff options
context:
space:
mode:
authorniksaz <nikitasazanovich@gmail.com>2016-05-01 13:34:45 +0200
committerBen Gamari <ben@smart-cactus.org>2016-05-01 23:29:49 +0200
commit533037cc58a7c50e1c014e27e8b971d53e7b47bd (patch)
tree6bdc053c60cc3b8d2254a0cc14569c2207c317f8 /testsuite/tests/ghci/scripts/ghci061.script
parent18676a4a0dfe79e2704e48be5c8716a656825efe (diff)
downloadhaskell-533037cc58a7c50e1c014e27e8b971d53e7b47bd.tar.gz
Greater customization of GHCi prompt
This patch is trying to redesign the :set prompt option to take not a String but a Haskell function, like [String] -> Int -> IO String, where [String] is the list of the names of the currently loaded modules and Int is the line number. Currently you may set prompt function with **:set promt-function [String] -> Int -> IO String** option and old version is also available - :set prompt String. So, it looks like I've almost completed this patch: 1) Now we have a lot of escape sequences - 13 to be exact. Most of them are similar to bash prompt escape sequences. Thus they are quite handy. 2) We may use the special escape sequence to call shell functions, for example "%call(ls -l -a)". 3) We may use :set prompt-function to set PFunction to handle prompt. It is just [String] -> Int -> IO String. Reviewers: erikd, austin, mpickering, bgamari Reviewed By: mpickering, bgamari Subscribers: mpickering, thomie Differential Revision: https://phabricator.haskell.org/D2084 GHC Trac Issues: #5850
Diffstat (limited to 'testsuite/tests/ghci/scripts/ghci061.script')
-rw-r--r--testsuite/tests/ghci/scripts/ghci061.script5
1 files changed, 5 insertions, 0 deletions
diff --git a/testsuite/tests/ghci/scripts/ghci061.script b/testsuite/tests/ghci/scripts/ghci061.script
new file mode 100644
index 0000000000..2d96b16ba4
--- /dev/null
+++ b/testsuite/tests/ghci/scripts/ghci061.script
@@ -0,0 +1,5 @@
+:l ghci061.hs
+:set prompt-function two_args
+:set prompt-function three_args
+:set prompt-cont-function two_args
+:set prompt-cont-function three_args