aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-10-05lexers/pkgbuild: add a comment about pkgver, srcdir and startdirChristian Hesse1-0/+2
2016-10-05lexers/pkgbuild: match functions with parenthesesChristian Hesse1-1/+1
This solves a name conflict between 'pkgver' variable (which what highlighted in wrong color) and function.
2016-10-05lexers: reduce changes to scintilla core lexing codeMarc André Tanner1-39/+82
Based upon scintillua rev 568 id 55b15760cd31.
2016-10-05lexers: sync language lexers with scintillua rev 568 id 55b15760cd31Marc André Tanner2-2/+60
Adds a taskpaper lexer.
2016-10-05sam: show error message on failed writeChristian Hesse1-2/+4
2016-10-03vis: improve cursor positioning after scrollingMarc André Tanner3-15/+64
Make cursor placement after scrolling (half) pages up/down less arbitrary. Close #390, fix #391
2016-10-02vis: make <C-w> delete word instead of WORDMarc André Tanner1-1/+1
Close #392
2016-09-30sam: simplify :r command implementaionMarc André Tanner1-13/+6
Avoid intermediate shell.
2016-09-29sam: consistent argument handling for :r, :w, :e commandsMarc André Tanner3-26/+22
:e without any argument can be used to reload the file from disk whereas before a "Filename expected" error would be displayed.
2016-09-29view: change cursor line up/down off screen movementsMarc André Tanner1-2/+12
Previously the cursor would be placed in the middle of the screen thus causing a distracting jump. Instead try to scroll the view port by only 1 line when the cursor is moved out of the visible area. The current implementation might be quite a bit slower than before, use page-wise scrolling to skip large regions. At some point we should optimize motions like 1000j. Close #301
2016-09-29vis: fix % for angle bracketsMarc André Tanner1-1/+3
2016-09-29Cosmetic changes to file detection codeMarc André Tanner1-5/+7
2016-09-29Merge branch 'master' of https://github.com/lxyd/vis into filetypeMarc André Tanner1-124/+201
2016-09-28Replace win.file.lines with win.file:content for better performanceAlexey Dubinin1-3/+3
2016-09-27visrc: move global settings to start handlerMarc André Tanner1-2/+6
There is no need to set global settings for each window.
2016-09-27sam: allow non-latin command namesMarc André Tanner1-1/+1
Close #387
2016-09-27Better file type detection: full filename patterns, shebang, custom detector ↵Alexey Dubinin1-124/+201
functions
2016-09-26vis: also apply language map to operator pending modeMarc André Tanner1-1/+3
2016-09-25vis: disable language map for replacement character of `r` commandMarc André Tanner4-2/+13
The character following the `r` command in normal mode should be treated as regular input given in insert/replace mode, that is no tranformation should be applied. Temporarily disable the language map for this reason. Close #382
2016-09-25vis: move file name and word completion logic to a shell scriptMarc André Tanner4-4/+42
The shell script should be reviewed for quoting issues, currently it allows command injections as in: $ vis-complete "'; rm -f some-file; echo " However it is intended for interactive usage and from within vis it is only ever called with a valid completion prefix. The file name completion logic now supports nested directories. Close #347
2016-09-25sam: change license headerMarc André Tanner2-5/+17
We use an adapted variant of sam's structural regular expression based command language. The initial implementation was partially based upon the following functions from sam / acme: * parse.h / edit.h (struct definitions) * cmd.c / edit.c (functions parsecmd, simpleaddr, compoundaddr) * xec.c / ecmd.c (cmdexec) * address.c / addr.c (address) It turns out the relevant code can be traced back to the initial X11 port of sam which is distributed under an ISC-like license instead of the Lucent Public License Version 1.02 used for Plan 9, plan9port and 9base. http://www.netlib.org/research/ http://www.netlib.org/research/sam.shar Hence we switch to the simpler license variant. Close #238
2016-09-25text: improve variable namingMarc André Tanner1-116/+116
s/Action/Revision/g
2016-09-19vis: also list :set options in :help outputMarc André Tanner2-47/+59
The help formatting could probably be improved, short single line help texts are still missing. Patches welcome. Close #283
2016-09-19vis: add rudimentary builtin help for :-commandsMarc André Tanner2-50/+61
2016-09-19vis-lua: document lua file close eventMarc André Tanner1-0/+1
2016-09-19vis-lua: expose file save event to luaMarc André Tanner2-1/+8
Triggered after the new file content has been written to disk.
2016-09-19vis-lua: expose file open event to luaMarc André Tanner2-0/+8
The event is only triggerred for new files read from disk (e.g. splitting an existing window will not cause an event to be emitted).
2016-09-19vis: do not invoke file save event for internal filesMarc André Tanner1-1/+1
2016-09-19vis: set correct reference count when splitting windowsMarc André Tanner1-1/+0
The refcount is already incremented in the `window_new_file` function, no need to do it again.
2016-08-24vis: implement gJ like behaviorMarc André Tanner4-14/+25
The behavior is not exactly the same because vim preserves any existing white spaces wihle we remove existing ones but do not insert additional ones. The vim behavior (essentially only deleating new lines) can be achived using something like: :x/\n/d Close #374
2016-08-24vis: add vis_mode_get functionMarc André Tanner2-0/+5
2016-08-24vis: improve dot (repeat) command implmentationMarc André Tanner6-16/+21
Do not override implicit operator macro in command mode. Fix #334
2016-08-24vis: improve unpaired text objectsMarc André Tanner1-6/+54
For unpaired text objects delimited by ", ' or ` if there is no preceding symbol on the same line, advance starting position to first occurence on the same line. As a result ci" can be used to change the inner quotes on the same line even if the cursor is currently to the left of the opening quote. If the line contains no such symbol at all then the text objects will will continue to match across line boundaries. This behavior is different in vim where for example a ci" command on a line without any quotes has no effect. Close #358
2016-08-24text-motions: improve matching quotation marks heuristicMarc André Tanner1-32/+55
Prefer quotation marks on the same line to when looking for matching pairs. Improves #358.
2016-08-24vis-lua: add win:draw() functionMarc André Tanner2-0/+9
2016-08-24vis: overhaul input queue handlingMarc André Tanner4-45/+30
Let vis_keys_feed always have an immediate effect. Previously, if called from a key input handler the keys would just be added to the input queue and processed once the current key handler returned. This also affects the exposed Lua API.
2016-08-20buffer: add buffer_remove implementationMarc André Tanner2-0/+12
2016-08-07text-regex: improve searching in binary dataMarc André Tanner1-20/+43
The regex(3) API we currently use, matches on NUL terminated strings. Therefore it does not work for binary data. This commit adds loops to manually skip over NUL bytes. While it does not work for patterns which would match strings containing NUL bytes, it should improve the most basic cases. Binary file handling will need further improvements in the future. Fixes #359.
2016-08-07vis: use vis-open for gf implementationMarc André Tanner1-27/+8
This has the effect that ~ and $HOME will be expanded by the shell. However it also opens files which do not yet exist. Fixes #346
2016-08-07text-object: add ` as a delimiter for file name text objectsMarc André Tanner1-1/+1
In general it might be a better idea to specify these kinds of text objects in terms of characters belonging to them rather than listing a set of delimiting characters. Fixes #350
2016-08-07view: fix screen line based motions when cursor is not visibleMarc André Tanner1-0/+4
If a cursor is not currently visible it has no associated screen line. Fallback to the corresponding logical line based variant. For example `gj` is interpreted as `j`. Fixes #354
2016-08-07Merge branch 'new-lexers-readme' of https://github.com/5paceToast/visMarc André Tanner1-1/+1
2016-08-07Mention POSIX.1-2008 as a requirement in READMEMarc André Tanner1-2/+3
Close #353
2016-08-07sam: do not change cursor position after :! commandMarc André Tanner1-1/+1
Fixes #364
2016-08-07sam: improve quoted argument parsingMarc André Tanner1-33/+28
Handling of unbalanced quotes could probably still be improved. Closes #344
2016-07-25Fix filetype table link in lexers/README.mdChloe1-1/+1
`vis.filetypes` can be found on [line 72 of `vis.lua`](https://github.com/martanne/vis/blob/master/vis.lua#L72), but is not present at all in lexer.lua. Fix `lexers/README.md` to avoid further confusion.
2016-07-15build: properly set LDFLAGS for standalone build dependenciesMarc André Tanner1-2/+2
Might fix #248
2016-07-11standalone: update to musl version 1.1.15Christian Hesse1-2/+2
2016-07-06vis: fix inner text object variants when cursor is on opening delimiterMarc André Tanner1-3/+3
Except for special cases like gn and gN vis expected that a text object would be a function mapping a position to a range as follows: f: pos -> [start, end] with start <= f(pos) <= end Clearly this condition does not hold for inner text objects when the initial position i.e. the cursor is on the opening delimiter. This also obsoletes the need for the SPLIT text object flag which should be removed in a later commit if the current behavior is found to be working as expected.
2016-06-29Merge branch 'master' of https://github.com/aeosynth/visMarc André Tanner1-1/+1