| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2015-10-26 | vis: merge editor.c into vis.c | Marc André Tanner | 1 | -453/+0 | |
| 2015-10-25 | vis: convert jumplist navigation to proper motions | Marc André Tanner | 1 | -37/+0 | |
| 2015-10-25 | vis: convert changelist navigation to proper motions | Marc André Tanner | 1 | -28/+0 | |
| 2015-10-15 | ui: cleanup redrawing | Marc André Tanner | 1 | -2/+2 | |
| 2015-10-14 | vis: introduce special keys which allow mappings to editor actions | Marc André Tanner | 1 | -0/+9 | |
| 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 | -5/+1 | |
| 2015-10-05 | vis: rework input handling using libtermkey | Marc André Tanner | 1 | -0/+21 | |
| 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-08-09 | vis: fix :edit! command | Marc André Tanner | 1 | -4/+7 | |
| It now correctly re-edits the file (i.e reloads it from disk). | |||||
| 2015-07-28 | text: move utility functions to separate file | Marc André Tanner | 1 | -0/+1 | |
| 2015-07-26 | vis: add infrastructure to support multiple cursors/selections | Marc André Tanner | 1 | -25/+9 | |
| 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 | -7/+1 | |
| 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/+2 | |
| 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-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 | -17/+0 | |
| 2015-07-06 | Move filename from Text to File | Marc André Tanner | 1 | -19/+25 | |
| Also apply syntax rules every time the file name changes. | |||||
| 2015-06-30 | Cleanup insert/replace mode input handling | Marc André Tanner | 1 | -19/+42 | |
| View should only display the file content, but not modify it. | |||||
| 2015-05-16 | Release macro data | Marc André Tanner | 1 | -0/+2 | |
| 2015-05-16 | Cleanup general purpose buffer API | Marc André Tanner | 1 | -2/+2 | |
| Introduce buffer_init to initialize a stack allocated buffer. Rename buffer_{alloc,free} functions because they do something different than the usual convention. They operate on the underlying buffer data but do not allocate/free an actual Buffer struct. | |||||
| 2015-04-22 | Yet more renames (EditorWin -> Win) | Marc André Tanner | 1 | -29/+29 | |
| 2015-04-22 | More renames, no functional changes | Marc André Tanner | 1 | -24/+24 | |
| Win -> View, window_* -> view_* | |||||
| 2015-04-22 | More renaming vis->win->view instead of vis->win->win | Marc André Tanner | 1 | -22/+21 | |
| 2015-04-22 | Better variable naming (VisText -> File) | Marc André Tanner | 1 | -82/+82 | |
| Therefore vis->win->text->data becomes vis->win->file->text. | |||||
| 2015-04-21 | Improve loading of files | Marc André Tanner | 1 | -1/+6 | |
| This fixes a segmentation fault when opening a directory. Also, opening a file you are not permitted to read, will now give an error, instead of showing the file as empty. Based on a patch by Willem van de Krol. | |||||
| 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/+1 | |
| 2015-04-07 | Set '< and '> marks | Marc André Tanner | 1 | -5/+20 | |
| 2015-04-05 | Introduce new struct VisText | Marc André Tanner | 1 | -62/+89 | |
| This adds yet another layer of indirection and stores vi related stuff which is associated with a given text but shared among all windows displaying it (e.g. marks). This will also help if one wants to keep texts arround which aren't currently displayed. | |||||
| 2015-04-03 | Preliminary user interface separation | Marc André Tanner | 1 | -329/+59 | |
| In theory only ui-curses.[hc] should depend on curses, however in practice keyboard input is still handled in vis.c. Furthermore the syntax definitions as well as keyboard bindings and selection code in window.c still depends on some curses constants. There is also a slight regression in that the window status bar does not show the current mode name. This and related global state should be eliminated in the future. | |||||
| 2015-01-16 | Reorder if/else clause in order to avoid dead code | Marc André Tanner | 1 | -4/+4 | |
| 2015-01-14 | Fix segfault when using arrow keys in prompt | Marc André Tanner | 1 | -5/+6 | |
| 2015-01-06 | Rudimentary change list (accessible via g; and g,) | Marc André Tanner | 1 | -0/+28 | |
| 2015-01-02 | Make last insertion/replacement repeatable with '.' | Marc André Tanner | 1 | -1/+0 | |
| 2015-01-01 | Add rudimentary support for jump list (CTRL+{O,I}) | Marc André Tanner | 1 | -1/+39 | |
| 2015-01-01 | Rename mark related functions | Marc André Tanner | 1 | -2/+2 | |
| 2014-10-24 | Make command prompt available in visual modes | Marc André Tanner | 1 | -2/+4 | |
| 2014-10-23 | Move feature test macros to config.mk | Marc André Tanner | 1 | -2/+0 | |
| 2014-10-17 | Read stdin when given - as filename | Marc André Tanner | 1 | -0/+11 | |
| 2014-09-25 | Actually set global tabwidth | Marc André Tanner | 1 | -0/+1 | |
| 2014-09-24 | Change split/vsplit API | Marc André Tanner | 1 | -22/+16 | |
| 2014-09-22 | Add support for the '<', '>' marks | Marc André Tanner | 1 | -2/+8 | |
| 2014-09-19 | This fixes warning with latest glibc (>= 2.19.90), which deprecated _BSD_SOURCE | Christian Hesse | 1 | -0/+1 | |
| warning: _BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE Commit 4f537d8e4bd9707a0048289f296510b76ce6d642 just fixed one of three cases. Fix the remaining. | |||||
| 2014-09-19 | Implement expand tab functionality, make tabwidth configurable | Marc André Tanner | 1 | -0/+13 | |
| If expandtab is enabled then inserted tabs are replaced by tabwidth amount of spaces. Both settings apply to all windows files and can be changed via: :set tabwidth n # where 1 <= n <= 8 :set expandtab (1|yes|true)|(0|no|false) | |||||
| 2014-09-18 | Do only open an empty buffer if the file does not exist | Marc André Tanner | 1 | -1/+1 | |
| Opening a file without having read permissions should fail. | |||||
| 2014-09-18 | Clean up window splitting API | Marc André Tanner | 1 | -36/+45 | |
| 2014-09-16 | Import syntax rules from sandy | Marc André Tanner | 1 | -1/+4 | |
| 2014-09-15 | More efficient syntax highlighting, first match wins | Marc André Tanner | 1 | -7/+7 | |
| 2014-09-14 | All *_free(...) functions should accept a NULL argument | Marc André Tanner | 1 | -0/+2 | |
| 2014-09-14 | Fix clang static analyzer warnings | Marc André Tanner | 1 | -2/+4 | |
| 2014-09-13 | Rename text_insert_raw to text_insert | Marc André Tanner | 1 | -2/+2 | |
