| Age | Commit message (Collapse) | Author | Files | Lines |
|
We had several elf executables that were not stripped properly. Move the
filenames to a dedicated variable and use that to not miss anything.
|
|
Hook it up via Lua to <C-k> in insert and replace mode.
Close #460 #475
|
|
While memory consumption should be improved, backward searches
will still be slow, because they are implemented in terms of
repeated forward searches. It needs to be investigated whether
the underlying automaton can have its transitions reversed and
essentially run backwards, as is the case in sam.
|
|
Signed-off-by: Christian Hesse <mail@eworm.de>
|
|
Define EXECUTABLES and install in a loop. Also fix uninstalling
man pages.
|
|
|
|
|
|
|
|
This allows inclusion in other Makefiles (e.g. for C unit tests).
|
|
|
|
If lpeg is built statically, this allows for a completely static vis
binary that still supports syntax highlighting.
|
|
|
|
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.
|
|
|
|
A new Makefile target `luadoc` has been added which generates
HTML documentation in the doc subfolder using ldoc(1) from
https://stevedonovan.github.io/ldoc/
There are still a few problems to resovle, for example the links (e.g.
in parameter lists) to our custom types seem to be broken.
At this point only the C part of the Lua API is covered and even
that is not yet complete.
|
|
This avoids warnings like: "_FORTIFY_SOURCE requires
compiling with optimization".
|
|
The version substitution does not seem to work with BSD make
because ${VERSION} is expanded to an empty string.
|
|
Uses mandoc(1) to generate manual pages in HTML format.
|
|
Using the installation date might be misleading and harms
reproducible builds. Omitting the dates completely might
be dangerous because it seems to be a required field:
The only firm requirement of the mdoc prologue is that
the Dd macro comes first: many formatting systems will
read up to the first macro to determine the formatting
language. If Dd is not encountered first, the mdoc format
may not be recognised.
http://manpages.bsd.lv/mdoc.html
|
|
%m is the decimal month value, not the day of the month.
|
|
With a single $, make will try to expand it as a variable.
|
|
|
|
The `git describe` command fails in shallow checked out git repositories
which do not include the tag information. At least include the git short
hash.
|
|
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
|
|
|
|
|
|
Unlike the existing vis(1) manpage, this uses the `mdoc` macro set
because it's (very slightly) more modern, and OpenBSD only supports
`mdoc` while everybody else supports both.
|
|
|
|
|
|
|
|
This serves as a wrapper around dmenu(1) and slmenu(1), by default
the latter is preferred because it also works without an X server.
The program and its default arguments can be configured by means of
the $VIS_MENU and $VIS_MENU_ARGS environment variables.
Eventually we might decide to inlcude a stripped down version of
slmenu in the vis source tree.
|
|
|
|
The intention is that vis.lua will provide parts of the Lua API not
implemented in the C core.
Please update your existing visrc.lua configuration file accordingly.
|
|
Close #231
|
|
|
|
|
|
The following vi commands have been dropped:
- saveas
- xit
- !
The following commands are only recognized in their short form:
- e (edit)
- q (quit)
- s (substitute)
- w (write)
- r (read)
|
|
|
|
|
|
|
|
|
|
|
|
This should fix `make local` (as used on travis-ci) and `make standalone`
in cases where `configure` was not run successfully due to missing
dependencies.
|
|
We want vis to be rebuilt when configuration changes, so make vis depend
on config.mk.
|
|
|
|
The new build instructions are:
$ ./configure && make && sudo make install
The configure script tries to auto detect support for various libraries
and compiler options. These choices can be overwritten by explicitly
specifing --{en,dis}able-{lua,selinux,acl}. See ./configure --help for
all supported options.
The configure script generates config.mk which should allow portable
(among GNU and BSD make) Makefiles. Manually editing config.mk is
still supported.
|
|
|
|
|
|
Both registers are currently treated identically.
The actual system integration is performed by two shell
scripts vis-copy and vis-paste.
|
|
|