summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-01-13vis: allow :-commands containing a hyphenMarc André Tanner
2016-01-13vis: add infrastructure to support per window key bindingsMarc André Tanner
2016-01-13map: implement map_copyMarc André Tanner
Copies all entries from one map to another, overwriting existing entries.
2016-01-13map: fix return value of map_deleteMarc André Tanner
2016-01-13vis: implement :map and :unmapMarc André Tanner
Remember that vis' bindings are always recursive. Hence if you do stupid things you will get yourself into an endless loop.
2016-01-13vis: cleanup key binding definitionsMarc André Tanner
This removes the tree based mode structures and instead merges all keybindings in flat modes which uses some more memory but will allow (per mode) run-time configurable key bindings. Make sure to update/remove config.h.
2016-01-13Add -pedantic to debug CFLAGS and fix resulting warningsMarc André Tanner
2016-01-13vis: fix tab expansion if enabledMarc André Tanner
Closes #144
2016-01-10gitignore: Fix patternMichael Reed
From `man gitignore': o A leading slash matches the beginning of the pathname. For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".
2016-01-10Simplify code by using text_bytes_alloc0Marc André Tanner
2016-01-10text: introduce text_bytes_alloc0 utility functionMarc André Tanner
Heap allocates a zero terminated string of the given range. Freeing is the caller's responsibility. Checks for unsigned integer overflow i.e. passing SIZE_MAX as len will always fail because there is no room for the terminating NUL byte. This is important as EPOS is defined to be SIZE_MAX.
2016-01-10text-motion: fix integer overflow in text_search_{forward,backward}Marc André Tanner
2016-01-09vis-open: Fix indentationMichael Reed
It was hard to read with everything on the same indentation level.
2016-01-09Merge branch 'vis-open' of https://github.com/Pyrohh/vis into masterMarc André Tanner
2016-01-09vis-open: Print error message to stderrMichael Reed
2016-01-09vis-open: Use basename of $0 in usage messageMichael Reed
If vis-open is placed in a user's PATH and executed then $0 will be vis-open's absolute path: $ vis-open -h usage: /usr/local/bin/vis-open [-h] [-p prompt] [file-pattern] This isn't very pretty, so use basename(1) on $0: $ vis-open -h usage: vis-open [-h] [-p prompt] [file-pattern]
2016-01-09Makefile: Use $(MAKE) instead of directly calling `make`Michael Reed
This is basically the same as b18acc1.
2016-01-06vis: make <C-v> also available at :-command promptMarc André Tanner
2016-01-06vis: apply <C-v> to all cursors not only primary oneMarc André Tanner
2016-01-06vis: enhance <C-v> to recognize a few special keysMarc André Tanner
Up until now <C-v> in insert/replace mode would only recognize numeric codes in various formats. This commits adds support for a few special keys such as <Enter> or <Tab>.
2016-01-02lexer: sync with upstream scintillua rev bdb74a2f31dfMarc André Tanner
2015-12-31Add explicit build commands to READMEMarc André Tanner
2015-12-31view: fix regressionMarc André Tanner
This reverts 2f4b69cc67e8863e5789817ed5097158e6163621. There are likely still some problems left when editing the end of a file at end of the visual area.
2015-12-31Also remove vis-open when uninstallingMarc André Tanner
2015-12-31Add section about Lua API to READMEMarc André Tanner
2015-12-31vis-lua: implement vis.events.{start,quit} eventsMarc André Tanner
2015-12-31vis-lua: implement window.cursor.{line, col, pos}Marc André Tanner
These are currently read-only properties.
2015-12-31vis-lua: implement vis.lines[..] arrayMarc André Tanner
This allows access to specific lines of a file, array indicies/line numbers are 1 based. Read access is supported for [1, #lines] while assigning to the 0 element will insert a new line at the beginning of the file. Similarly assigning to lines[#lines+1] will add a new line at the end of the file. The returned lines will not contain any line termination characters.
2015-12-31text: let text_pos_by_lineno return EPOS if given a too large line numberMarc André Tanner
2015-12-31text: introduce text_newline_insertMarc André Tanner
2015-12-31vis-lua: implement vis.open(filename)Marc André Tanner
2015-12-31vis-lua: rename a few functionsMarc André Tanner
2015-12-31vis-lua: remove unnecessary castsMarc André Tanner
2015-12-29#111 command line prompt options defaultsErlend Fagerheim
2015-12-29lexer: add some meta data to newly added lexersMarc André Tanner
2015-12-29vis: fix default lua package.path and support $XDG_CONFIG_HOMEMarc André Tanner
The ordered list of paths for startup and lexer files is: - $VIS_PATH/{,lexers} - $XDG_CONFIG_HOME/vis/{,lexers} (defaulting to $HOME/.config/vis/{,lexers}) - /usr/local/share/vis/{,lexers} - /usr/share/vis/{,lexers} - package.path (standard lua search path)
2015-12-29Clean up build systemMarc André Tanner
2015-12-29view: improve cursor handling at end of fileMarc André Tanner
Holding down <Backspace> at the end of the file should not keep the cursor on the middle line of the window.
2015-12-29view: fix new line handling at the end of visible areaMarc André Tanner
The last new line is added to the cell matrix but failure is reported to indicate that there is no space left for further characters.
2015-12-29view: fix view [start,end] range calculationMarc André Tanner
This for example now correctly displays tab characters at the very start of the visible area.
2015-12-28Update READMEMarc André Tanner
2015-12-26vis: move file type detection to visrc.luaMarc André Tanner
2015-12-26vis: change Lua package.path to also include vis base directoryMarc André Tanner
2015-12-26vis: refactor Lua integrationMarc André Tanner
Lua support can now be disabled at compile time using: $ make CONFIG_LUA=0 This commit also adds an initial Lua API and provides a few default hooks. We now also require Lua >= 5.2 due to the uservalue constructs. In principle the same functionality could be implemented using function environments from Lua 5.1.
2015-12-26Initialize enum values to the public API onesSilvan Jegen
2015-12-20vis: fix forceful redraw <C-l>Marc André Tanner
2015-12-20Make normal mode 'S' behave like in VimSilvan Jegen
2015-12-03lexer: add lexer for FaustDavid B. Lamkins
Faust is a DSP (digital signal processing) programming language. See http://faust.grame.fr/ Closes #125
2015-12-02vis: make <C-w>w an alias for <C-w>jMarc André Tanner
2015-11-28vis: add namespace prefix for MARK_SELECTION_{START,END}Marc André Tanner