| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2015-10-26 | vis: merge editor.c into vis.c | Marc André Tanner | 1 | -339/+0 | |
| 2015-10-25 | vis: clean up mark handling | Marc André Tanner | 1 | -2/+2 | |
| 2015-10-25 | vis: convert jumplist navigation to proper motions | Marc André Tanner | 1 | -5/+0 | |
| 2015-10-25 | vis: convert changelist navigation to proper motions | Marc André Tanner | 1 | -2/+3 | |
| 2015-10-23 | vis: begin librarization of core vis primitives | Marc André Tanner | 1 | -0/+10 | |
| 2015-10-22 | vis: remove config selection based on argv[0] | Marc André Tanner | 1 | -7/+0 | |
| I would still like to experiment with a busybox style editor multiplexer which behaves like vi(m), emacs or nano depending on argv[0]. | |||||
| 2015-10-22 | vis: remove yet more global state from motion functions | Marc André Tanner | 1 | -1/+1 | |
| 2015-10-22 | vis: rename motion type | Marc André Tanner | 1 | -1/+1 | |
| 2015-10-22 | vis: remove more global state from motion functions | Marc André Tanner | 1 | -1/+2 | |
| 2015-10-22 | vis: pass editor instance to keyboard action functions | Marc André Tanner | 1 | -1/+1 | |
| 2015-10-22 | vis: pass editor instance to command handling funcitons | Marc André Tanner | 1 | -1/+1 | |
| 2015-10-22 | vis: pass editor instance to mode handling functions | Marc André Tanner | 1 | -4/+4 | |
| 2015-10-22 | vis: refactor operator implementation | Marc André Tanner | 1 | -1/+2 | |
| Pass editor instance and text to operate on as parameter instead of using global state. | |||||
| 2015-10-22 | vis: improve :help text, add separate status mode names | Marc André Tanner | 1 | -0/+2 | |
| 2015-10-14 | vis: introduce special keys which allow mappings to editor actions | Marc André Tanner | 1 | -0/+3 | |
| Key bindings in vis are always recursive, hence mapping ~ to ~l will cause an infinite loop. Instead vis supports special editor "keys" which map to internal editor functions. As an example one can thus map ~ to <vis-operator-case-swap>l or even <vis-operator-case-swap><cursor-char-next> Furthermore this makes it possible to completely unmap core editor features such as operators, the corresponding funtionality is still available via its corresponding special key. | |||||
| 2015-10-14 | view: cleanup option handling | Marc André Tanner | 1 | -1/+0 | |
| 2015-10-05 | vis: introduce keyboard actions | Marc André Tanner | 1 | -1/+8 | |
| This adds another level of indirection by defining keyboard actions which will likely eventually be used by a :map command. | |||||
| 2015-10-05 | vis: remove now unused common_prefix mode attribute | Marc André Tanner | 1 | -1/+0 | |
| 2015-10-05 | vis: add rudimentary support for key aliases | Marc André Tanner | 1 | -0/+1 | |
| This will eventually be exposed via a :map style command. | |||||
| 2015-10-05 | vis: change key binding function prototypes | Marc André Tanner | 1 | -1/+3 | |
| The idea is to work more like a finite state machine. Every function gets an additional argument keys which holds the already read keyboard input. The return value of the functions should point to the first not consumed key. A return value of NULL indicates that more input is needed. The function will be called again from the editor core when more input is available. These changes are mostly mechanical and in many cases not optimal, they will be cleaned up in further commits. | |||||
| 2015-10-05 | vis: rework input handling using libtermkey | Marc André Tanner | 1 | -8/+9 | |
| Key bindings are now specified as symbolic key strings, this will eventually allow run time configurable key mappings. This introduces a bulid time dependency on libtermkey which can be found at: http://www.leonerd.org.uk/code/libtermkey/ | |||||
| 2015-07-31 | vis: cleanup handling of charwise/linewise motions | Marc André Tanner | 1 | -2/+1 | |
| Also text objects in visual mode should now work better. | |||||
| 2015-07-28 | vis: pass cursor to operator implementations | Marc André Tanner | 1 | -0/+1 | |
| 2015-07-26 | vis: add infrastructure to support multiple cursors/selections | Marc André Tanner | 1 | -2/+1 | |
| This cleans up the existing selection handling code and adds the necessary bits to eventually support multiple cursors/selections. The cursor position is kept track of using marks, which means retrieving the cursor position is no longer a constant time operation. Furthermore the terminal cursor is no longer used, instead the whole window is redrawn after every cursor movement. | |||||
| 2015-07-21 | ui: further separate curses related user interface code | Marc André Tanner | 1 | -3/+2 | |
| By now ui-curses.[hc] are the only files dealing directly with curses related functions. Integration of a proper mainloop is still pending. | |||||
| 2015-07-19 | vis: handle file truncation more gracefully | Marc André Tanner | 1 | -0/+4 | |
| If we use the file / virtual memory system as cache (using mmap(2)) and another process truncates the file we are editing, we have a problem. All we can do is catch the resulting SIGBUS, close the corresponding window and print a warning message. To test this use: $ dd if=/dev/zero of=TEST bs=8M count=1 $ vis TEST :! echo TRUNCATE > TEST | |||||
| 2015-07-19 | text: move regex related functions to separate file | Marc André Tanner | 1 | -0/+1 | |
| Eventually this should probably be rewritten to use an iternal regex engine, currently it has unacceptable memory usage, it copies the whole text. | |||||
| 2015-07-11 | vis: rename struct member to avoid conflict with standard library | Marc André Tanner | 1 | -1/+1 | |
| Closes #60 | |||||
| 2015-07-09 | ui: move input handling code to ui specific files | Marc André Tanner | 1 | -5/+0 | |
| 2015-07-06 | Warn when saving a file which has been changed outside the editor | Marc André Tanner | 1 | -0/+1 | |
| 2015-07-06 | text: remove text_load_fd and text_fd_get | Marc André Tanner | 1 | -1/+1 | |
| 2015-07-06 | Move filename from Text to File | Marc André Tanner | 1 | -2/+4 | |
| Also apply syntax rules every time the file name changes. | |||||
| 2015-06-30 | Cleanup insert/replace mode input handling | Marc André Tanner | 1 | -3/+3 | |
| View should only display the file content, but not modify it. | |||||
| 2015-05-17 | Filter command :! | Marc André Tanner | 1 | -0/+2 | |
| If no range is given then stdin is passed through which allows interactive usage as in :!ls -1 *.c | slmenu For this to work the command needs to use stderr for its user interface and write any data for vis to stdout. | |||||
| 2015-05-16 | Release macro data | Marc André Tanner | 1 | -1/+3 | |
| 2015-04-29 | Make operators return new cursor position | Marc André Tanner | 1 | -1/+1 | |
| 2015-04-22 | Rename window.[ch] to view.[ch] | Marc André Tanner | 1 | -2/+2 | |
| 2015-04-22 | Yet more renames (EditorWin -> Win) | Marc André Tanner | 1 | -17/+17 | |
| 2015-04-22 | More renames, no functional changes | Marc André Tanner | 1 | -3/+3 | |
| Win -> View, window_* -> view_* | |||||
| 2015-04-22 | More renaming vis->win->view instead of vis->win->win | Marc André Tanner | 1 | -1/+1 | |
| 2015-04-22 | Better variable naming (VisText -> File) | Marc André Tanner | 1 | -7/+7 | |
| Therefore vis->win->text->data becomes vis->win->file->text. | |||||
| 2015-04-21 | Cleanup implementation of movements to marks | Marc André Tanner | 1 | -4/+2 | |
| 2015-04-21 | Implement ';' and ',' | Marc André Tanner | 1 | -0/+1 | |
| This fixes #45 | |||||
| 2015-04-21 | Clean up to/till movements | Marc André Tanner | 1 | -1/+1 | |
| 2015-04-11 | Eliminate global running variable | Marc André Tanner | 1 | -0/+1 | |
| 2015-04-11 | Remove global mode state | Marc André Tanner | 1 | -0/+3 | |
| Once again show mode in window status bar. | |||||
| 2015-04-11 | Move structs to editor.h remove global action{,_prev} | Marc André Tanner | 1 | -0/+115 | |
| 2015-04-11 | Eliminate global state for repetition of last modification | Marc André Tanner | 1 | -0/+1 | |
| 2015-04-11 | Eliminate global state for :set options | Marc André Tanner | 1 | -0/+1 | |
| 2015-04-11 | Lazy initialization of :-commands | Marc André Tanner | 1 | -0/+2 | |
