aboutsummaryrefslogtreecommitdiff
path: root/vis-text-objects.c
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2016-03-11 19:04:17 +0100
committerMarc André Tanner <mat@brain-dump.org>2016-04-03 13:22:14 +0200
commitdf5873b1e2edf8e2631db236546618cb3431e3c5 (patch)
treef467ce4b93218d9b3fe8e39ef3c122d620e35a91 /vis-text-objects.c
parent6f3703737a97c3704d19f43156a8a9a86b495214 (diff)
downloadvis-df5873b1e2edf8e2631db236546618cb3431e3c5.tar.gz
vis-df5873b1e2edf8e2631db236546618cb3431e3c5.tar.xz
Support sam's structural regular expression based command language
For those not familiar with sam(1) more information can be found at http://sam.cat-v.org/ For now sam commands can be entered from the vis prompt via :sam <cmd> A command behaves differently depending on the mode in which it is issued: - in visual mode it behaves as if an implicit extract x command matching the current selection(s) would be preceding it. That is the command is executed once for each selection. - in normal mode: * if an address for the command was provided it is evaluated starting from the current cursor position(s) i.e. dot is set to the current cursor position. * if no address was supplied to the command then: + if multiple cursors exist, the command is executed once for every cursor with dot set to the current line of the cursor + otherwise if there is only 1 cursor then the command is executed with dot set to the whole file The command syntax was slightly tweaked to accpet more terse commands. - When specifiying text or regular expressions the trailing delimiter can be elided if the meaning is unambigious. - If only an address is provided the print command will be executed. - The print command creates a selection matching its range. - In text entry \t inserts a literal tab character (sam only recognizes \n). Hence the sam command ,x/pattern/ can be abbreviated to x/pattern If a command is successful vis switches to normal mode (and hence removes any selections), otherwise the editor is kept in visual mode. The print command "fails" by definition.
Diffstat (limited to 'vis-text-objects.c')
0 files changed, 0 insertions, 0 deletions