doy / runes

a modern terminal client
Other
35 stars 1 forks source link

Make history "pluggable" #35

Open jadeallenx opened 10 years ago

jadeallenx commented 10 years ago

Neat; excited to see you tackle something like this. Here is my feature suggestion:

I am looking for a mechanism to take history executed one one terminal retrievable and replayable on some other terminal session.

Example:

On my work laptop, I execute some sequence of commands to {compile, test, install} a database. On a second laptop (at home) I would like to press up arrow and find these commands in my shell "history" even though they were executed on a different system.

One way to implement this would be to make history handling pluggable so that I could write a handler in {C, golang, Perl, $LANGUAGE} to manipulate the history in a way that I like.

doy commented 10 years ago

I'm not sure that "history" is the right metaphor here, because it's not really possible to determine what the history should look like - it's too application-specific. What I do think could work is something more like vim macros - you press something and it starts recording keystrokes, and then you can press something else to replay those keystrokes somewhere else.

And yes, I'm planning on including a Lua API for this, so this sort of thing should (eventually) also be quite easy to implement as an extension.

jadeallenx commented 10 years ago

Cool; I guess what I'm really asking for is an API which permits commands executed through runes to be capturable.

dolmen commented 10 years ago

@mrallen1 Your request looks like a subset of what the script Unix command does. You could implement this completely out of a full graphical terminal emulator.

doy commented 10 years ago

'script' records output, not input - it's not really the same thing here.