aboutsummaryrefslogtreecommitdiff
path: root/lua/vis.lua
AgeCommit message (Collapse)AuthorFilesLines
2017-05-31vis-lua: fix file:match_at API documentationMarc André Tanner1-1/+1
2017-03-19vis-lua: allow operators to be defined as lua functionsMarc André Tanner1-0/+36
2017-03-19Move :set theme option implementation to luaMarc André Tanner1-2/+0
2017-03-19Move :set syntax option implementation to luaMarc André Tanner1-2/+45
It is no longer possible to change the used syntax by assigning to the `win.syntax = name` field, instead the function win:set_syntax(name)` should be called. The distinction between filetype and syntax lexer to use should probably be clarified/cleaned up at some point.
2017-02-23vis-lua: use shorter type namesMarc André Tanner1-1/+1
2017-02-22lua: add file:match_at method to match LPeg pattern around a positionMarc André Tanner1-0/+31
2017-02-22lua: expose vis:module_exist method, load lexer and lpeg module during startupMarc André Tanner1-2/+24
2016-12-14lua: improve error message when failing to load lpeg/lexer moduleMarc André Tanner1-8/+1
Differentiate between the case where the module is not found and the case where an error occured while loading it. This should make it easier to debug cases in which there is a Lua version mismatch between vis and lpeg.
2016-12-09vis-lua: add comment about possibly outdated Lua API documentationMarc André Tanner1-1/+1
2016-12-09vis-lua: expose input key event in insert and replace modesMarc André Tanner1-0/+2
2016-12-08vis-lua: move mode constants from vis.MODE_* to vis.modes.*Marc André Tanner1-5/+5
2016-12-08vis-lua: add optional help parameter to mapping functionsMarc André Tanner1-9/+11
2016-12-08vis-lua: expose init event and use it to set default themeMarc André Tanner1-0/+2
The init event is emitted immediately after `visrc.lua` has been sourced, but before any other events have occured, in particular the command line arguments have not yet been processed. Close #422
2016-12-08lua: add simple event multiplexing mechanismMarc André Tanner1-2/+100
The editor core calls into the functions registered in the `vis.events` table which then multiplex the events to all registered event handlers. The first handler which returns a non `nil` value terminates event propagation.
2016-12-07lua: move non-core code out of vis.luaMarc André Tanner1-591/+1
The following structure is adapted: * visrc.lua entry point for all Lua code * vis.lua only implements the Lua part of the core API * vis-std.lua registers standard event handlers (e.g. syntax highlighting, statusbar handling, theme changes etc). It is sourced from vis.lua. * plugins/* non essential editor functionality, needs to be explicitly enabled by loading it from visrc.lua
2016-12-07Move all lua related files to lua/ subfolderMarc André Tanner1-0/+664
Also remove the lexers sub directory from the Lua search path. As a result we attempt to open fewer files during startup: $ strace -e open -o log ./vis +q config.h && wc -l log In order to avoid having to modifiy all lexers which `require('lexer')` we instead place a symlink in the top level directory. $ ./configure --disable-lua $ rm -rf lua Should result in a source tree with most lua specifc functionality removed.