From 533037cc58a7c50e1c014e27e8b971d53e7b47bd Mon Sep 17 00:00:00 2001 From: niksaz Date: Sun, 1 May 2016 13:34:45 +0200 Subject: 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 --- testsuite/tests/ghci/scripts/ghci061.script | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 testsuite/tests/ghci/scripts/ghci061.script (limited to 'testsuite/tests/ghci/scripts/ghci061.script') 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 -- cgit v1.2.1