| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2015-07-31 | vis: cleanup handling of charwise/linewise motions | Marc André Tanner | 1 | -80/+55 | |
| Also text objects in visual mode should now work better. | |||||
| 2015-07-28 | vis: fix one more coverity scan warning | Marc André Tanner | 1 | -2/+2 | |
| With the current code this will never cause a NULL dereference since it is checked at the call site. However it makes sense to check it anyway. | |||||
| 2015-07-28 | vis: fix bugs uncovered by coverity scan | Marc André Tanner | 1 | -2/+4 | |
| 2015-07-28 | vis: fix join operator | Marc André Tanner | 1 | -6/+9 | |
| Only skip last line break if range comes from linewise visual mode. | |||||
| 2015-07-28 | vis: pass cursor to operator implementations | Marc André Tanner | 1 | -0/+1 | |
| 2015-07-28 | text-object: introduce utility function text_range_is_linewise | Marc André Tanner | 1 | -1/+1 | |
| 2015-07-28 | vis: use multiple cursor/selection infrastructure | Marc André Tanner | 1 | -0/+61 | |
| This commits introduces the following keybindings, in normal mode: CTRL-N select word the cursor is currently over, switch to visual mode CTRL-P remove least recently added cursor ESC if a selection is active, clear it. Otherwise dispose all but the primary cursor. In visual mode: CTRL-N create new cursor and select next word matching current selection CTRL-X clear (skip) current selection, but select next matching word CTRL-P remove least recently added cursor | |||||
| 2015-07-28 | vis: do not move cursor in multicursor mode after undo/redo | Marc André Tanner | 1 | -2/+6 | |
| 2015-07-28 | vis: try to align cursors on the same column with CTRL-A | Marc André Tanner | 1 | -0/+19 | |
| 2015-07-28 | vis: CTRL+J and CTRL+K creates a new cursor on the line below/above | Marc André Tanner | 1 | -0/+15 | |
| 2015-07-28 | vis: ESC in normal mode clears all cursors | Marc André Tanner | 1 | -3/+12 | |
| 2015-07-28 | vis: add per cursor registers | Marc André Tanner | 1 | -2/+8 | |
| 2015-07-28 | vis: add an operator to create new cursors | Marc André Tanner | 1 | -0/+15 | |
| The operator creates a new cursor at the start of every line covered by the given range. It is currently only available as CTRL+O in visual mode. | |||||
| 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 | -111/+106 | |
| 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 | -2/+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-20 | vis: improve insertion of verbatim characters via CTRL-V in insert mode | Marc André Tanner | 1 | -7/+58 | |
| Recognized formats are: CTRL-V nnn decimal value nnn CTRL-V onnn or CTRL-V Onnn octal value nnn CTRL-V xnn or CTRL-V Xnn hex value nn CTRL-V unnnn Unicode codepoint nnnn CTRL-V Unnnnnnnn Unicode codepoint nnnnnnnn Leading zeros can be omitted, any illegal character for the given format will be ignored and terminates the numerical code. | |||||
| 2015-07-19 | vis: handle file truncation more gracefully | Marc André Tanner | 1 | -0/+35 | |
| 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-11 | vis: rename struct member to avoid conflict with standard library | Marc André Tanner | 1 | -2/+2 | |
| Closes #60 | |||||
| 2015-07-10 | vis: add a file open dialog | Marc André Tanner | 1 | -19/+58 | |
| For this to work make sure you have vis-open and slmenu or dmenu somewhere in $PATH. For now the file dialog is shown for :open, :split and :vsplit when the argument is either . (a dot) or looks like a file pattern. For example :open *.[ch] will show a listing of all C source and header files in the current directory. Use a fuzzy search to make your choice. | |||||
| 2015-07-10 | vis: fix detection of file changes outside the editor | Marc André Tanner | 1 | -2/+2 | |
| 2015-07-09 | ui: move terminal state handling code to ui specific file | Marc André Tanner | 1 | -3/+2 | |
| 2015-07-09 | ui: move input handling code to ui specific files | Marc André Tanner | 1 | -28/+1 | |
| 2015-07-09 | vis: improve handling of linewise deletion at end of file | Marc André Tanner | 1 | -3/+6 | |
| dd on the last line now moves the cursor to the start of the preceding line. | |||||
| 2015-07-08 | vis: make J (join) behave like in vim when given a count | Marc André Tanner | 1 | -0/+2 | |
| 2015-07-08 | vis: only read file content from stdin if - was specified | Marc André Tanner | 1 | -1/+1 | |
| This allows to feed keyboard input from a file as in: cat keyboard-input | vis input-file which will be used for testing purposes. | |||||
| 2015-07-06 | Warn when saving a file which has been changed outside the editor | Marc André Tanner | 1 | -1/+10 | |
| 2015-07-06 | text: remove text_load_fd and text_fd_get | Marc André Tanner | 1 | -13/+22 | |
| 2015-07-06 | Move filename from Text to File | Marc André Tanner | 1 | -6/+9 | |
| Also apply syntax rules every time the file name changes. | |||||
| 2015-07-03 | Add movements to next/previous character within same line | Marc André Tanner | 1 | -0/+4 | |
| These movements always keep the cursor on the same line and do not move over newlines. | |||||
| 2015-07-03 | Add :show command to display special symbols for whitespaces | Marc André Tanner | 1 | -0/+32 | |
| Enable/disable by setting to 0/1 respectively: :set show spaces=0 tabs=0 newlines=1 | |||||
| 2015-06-30 | Fix segfault in cmd_filter | Marc André Tanner | 1 | -3/+3 | |
| Using FD_ISSET on negative file descriptors results in breakage. Closes #55. | |||||
| 2015-06-30 | Perform character prev/next movements based on Text not View | Marc André Tanner | 1 | -2/+2 | |
| While it is slower, it allows to move to characters which are currently not visible. This will be handy when experimenting with multiple cursors. | |||||
| 2015-06-30 | Cleanup insert/replace mode input handling | Marc André Tanner | 1 | -17/+5 | |
| View should only display the file content, but not modify it. | |||||
| 2015-06-28 | Do not take address of variables which go out of scope | Marc André Tanner | 1 | -4/+4 | |
| This is a bit of a hack, since now the callers range is modified. The various cmd_* functions should probably take a const Filerange pointer as argument and modify a local Filerange variable if needed. | |||||
| 2015-06-28 | Mark intentional case statement fall through | Marc André Tanner | 1 | -3/+3 | |
| 2015-06-27 | Make :earlier and :later accept arguments similar to vim | Marc André Tanner | 1 | -19/+50 | |
| Currently the following arguments are accepted: {count} Go to older text state {count} times. {N}s Go to older text state about {N} seconds before. {N}m Go to older text state about {N} minutes before. {N}h Go to older text state about {N} hours before. {N}d Go to older text state about {N} days before | |||||
| 2015-06-27 | Hook up :-commands & keybindings for earlier/later | Ryan Chipman | 1 | -0/+41 | |
| 2015-05-17 | Implement :substitute by invoking sed as a filter | Marc André Tanner | 1 | -2/+5 | |
| 2015-05-17 | Implement :r and :r! in terms of filter commands | Marc André Tanner | 1 | -25/+20 | |
| 2015-05-17 | Filter command :! | Marc André Tanner | 1 | -0/+216 | |
| 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 | Let each :-command decide what to do if no range is specified | Marc André Tanner | 1 | -1/+2 | |
| 2015-05-16 | Improve parsing of :-command name and parameters | Silvan Jegen | 1 | -8/+16 | |
| 2015-05-14 | In command mode make the '.' range specifier match the current line | Marc André Tanner | 1 | -1/+5 | |
| 2015-05-07 | Add '--' as end of options | Matias Linares | 1 | -1/+5 | |
| Now it works properly, `vis -- -v` edit a file named `-v`. Also added the proper info to the man page. | |||||
| 2015-05-06 | Use the command name without the Filerange in argv | Silvan Jegen | 1 | -1/+1 | |
| Signed-off-by: Silvan Jegen <s.jegen@gmail.com> | |||||
| 2015-04-29 | Move redrawing out of operator implementations | Marc André Tanner | 1 | -13/+15 | |
| Note that currently all windows are redrawn, this could be further optimized to only redraw the affected windows. | |||||
| 2015-04-29 | Make operators return new cursor position | Marc André Tanner | 1 | -36/+41 | |
| 2015-04-22 | Cleanup line ending type detection and insertion | Marc André Tanner | 1 | -2/+11 | |
| 2015-04-22 | Fix echo foo | vis - | Marc André Tanner | 1 | -6/+8 | |
| A single '-' indicates read from stdin. Also adjust coding style. | |||||
