about summary refs log tree commit diff
path: root/saneterm
Commit message (Collapse)AuthorAgeFilesLines
...
* history: Use .rstrip() for removing trailing newlinesSören Tempel2021-05-241-5/+2
|
* history: Strip entries if HISTSIZE is exceededSören Tempel2021-05-241-2/+15
|
* Add preliminary support for executable-specific historySören Tempel2021-05-244-0/+107
| | | | | | The current executable is determined by using tcgetpgrp on the PTY file descriptor. All history entries are stored in an SQL lite database on a per-line basis.
* terminal: Use Gtk.CheckMenuItem for config optionsSören Tempel2021-05-241-6/+3
|
* Make wordwrap configurable using context menuSören Tempel2021-05-241-14/+25
|
* Use activate instead of select signal for MenuItemSören Tempel2021-05-241-1/+1
|
* Toggle autoscroll via context menuSören Tempel2021-05-241-0/+21
|
* terminal: Autoscroll by defaultSören Tempel2021-05-241-4/+11
| | | | | This should be made configurable using the context menu and/or a keybinding in future commits.
* terminal: Use configure-event to detect resizeSören Tempel2021-05-241-1/+1
|
* Add custom delete-from-cursor implementationSören Tempel2021-05-231-0/+21
| | | | | | | This one checks for the output point explicitly and does not allow movements to go beyond it. To test this, try a shell with `PS1='>'` (i.e. no space after the prompt character) and try ctrl+w. Without this patch, words in the previous line would be deleted.
* Launch $SHELL by default if it is setsternenseemann2021-05-231-1/+4
| | | | | | | | | | | | In an user environment (which saneterm would usually be executed in) $SHELL should point to the current user's login shell as per environ(7). On startup, check if the variable is set and use it to populate the default command to run if it is, otherwise fall back to `sh` like before. I believe this is the correct change even if it gives users (including me) more trouble since many login shells people will use (like fish) don't work well in saneterm, whereas /bin/sh usually will work fine.
* Enable <ctrl>w keybinding by defaultSören Tempel2021-05-231-1/+3
|
* Remove code duplication in cursor_at_{end,out}Sören Tempel2021-05-231-10/+7
|
* termview: Ensure that cursor is not part of a selectionSören Tempel2021-05-231-0/+6
| | | | | | | Otherwise, when typing a word directly after the output point selecting this word and attempting to delete it using backspace doesn't work. Seems to me, if text is selected Gtk treats the beginning of this selected test as the current cursor position.
* Unbind ctrl+vSören Tempel2021-05-231-0/+3
|
* Use relative importssterni2021-05-232-3/+3
| | | | | | | | | | Seems to make things easier when actually installing saneterm (or at least I wouldn't know how to make it work without relative or absoulte imports). However this breaks executing the __main__.py script directly which is replaceable by using python -msaneterm which seems fine. Preserving the __main__.py seems to only be possible using self modifying PYTHOPATH which is just ugly.
* Configure TermView input hintsSören Tempel2021-05-231-0/+2
|
* Implement support for retrieving terminal windows sizeSören Tempel2021-05-231-0/+27
| | | | | Even if TUIs are not supported, this is used by some applications (most notably) ls(1) for outputting text in multiple columns.
* termview: Use a monospaced fontSören Tempel2021-05-231-0/+1
| | | | | Required by application such as ls which assume that every printed character has the same width.
* Add ctrl+j bindingSören Tempel2021-05-231-0/+1
|
* Add binding for ctrl+hSören Tempel2021-05-231-0/+1
|
* Ignore termios control characters if cursor is not at endSören Tempel2021-05-222-1/+11
| | | | | | | To me it seems somewhat unintuitive if ctrl+d causes VEOF if your cursor is not at the point where you would normally enter the next character. With this commit, all termios control keybindings are a NOPs in this case.
* termview: Split cursor_at_end method from backspaceSören Tempel2021-05-221-5/+6
|
* Rename input.py to keys.pySören Tempel2021-05-222-11/+13
| | | | Also move default control character mappings to this module.
* terminal: Add support for VEOFSören Tempel2021-05-221-0/+4
|
* saneterm: Separate flush from __end_user_actionSören Tempel2021-05-221-12/+16
| | | | Useful for flushing buffer on VEOF.
* Preliminary support for scrollingSören Tempel2021-05-221-1/+5
|
* Move control key definition to dictionarySören Tempel2021-05-221-2/+8
|
* Add keybinding for VSUSP (ctrl+z)Sören Tempel2021-05-221-0/+1
|
* Generalize support for termios-keybindingsSören Tempel2021-05-223-13/+30
|
* Add comment regarding potential quirk of interrupt methodSören Tempel2021-05-221-0/+4
|
* Don't start shell with clean environmentSören Tempel2021-05-201-1/+2
|
* Read up-to 4096 bytes in handle_pty callbackSören Tempel2021-05-201-2/+1
|
* Check for HUP events on PTYSourceSören Tempel2021-05-201-3/+11
|
* Fix argparse command argumentSören Tempel2021-05-201-1/+1
|
* Set widget name to allow saneterm-specific CSS stylingSören Tempel2021-05-201-2/+3
|
* TermView: Don't go beyond last output_mark with backspaceSören Tempel2021-05-201-0/+10
|
* Make executed command configurable through argparseSören Tempel2021-05-201-1/+13
|
* Add support for ctrl+c to interrupt the program via sigintSören Tempel2021-05-163-1/+11
|
* Remove DEL_CHAR constant as it is now unusedSören Tempel2021-05-161-3/+0
|
* Add docstring comment to termview classSören Tempel2021-05-161-0/+18
|
* Simplify termview APISören Tempel2021-05-162-24/+13
|
* Remove now unused imports from terminal.pySören Tempel2021-05-161-2/+0
|
* Remove unneeded None checksSören Tempel2021-05-161-4/+0
|
* Add dedicated TermView widget to simplify terminal implementationSören Tempel2021-05-162-69/+100
|
* Add support for setuptoolsSören Tempel2021-05-164-0/+182