Karya, built on Mon Jul 24 11:39:07 PDT 2017 (patch 33511aca01257b76b88de7c7a2763b7a965c084e)

Safe HaskellNone




Simple repl to talk to seq.

Type a command to send it to the sequencer. Everything in Cmd.Repl.Environ and Cmd.Repl.Global is in scope.

The prompt will have the name of the currently loaded score, and history will be written to (and read from) a name.repl file. Unfortunately you have to hit enter to update it if it changed. TODO bring back async notification like before?

Tab completion should work for function names, and filename completion within quotes.

:r or :R will reload modified modules, but only modify "surface" modules, since the GHC API tends to crash if you make it reload too much. Maybe crashes if it has to reload something with a C dependency.

:h or :H will open an editor on the history. You can find a line, edit it, and use ZZ to write it back.



data Status Source #


Command !Text

Skip the next prompt and send this as a QCommand.


Blow this popsicle stand.


prompt :: Bool -> Maybe IO.FilePath -> String Source #

Colorize the prompt to make it stand out.


edit :: ReplProtocol.Editor -> IO.IO () Source #

Open an editor as requested by ReplProtocol.Editor.

with_temp :: IO.FilePath -> Text -> (IO.FilePath -> IO.IO a) -> IO.IO a Source #

Run the action with a temp file, and delete it afterwards.

edit_line :: IO.FilePath -> IO.IO (Maybe Text) Source #

Open the given file, and return the selected line.