| Age | Commit message (Collapse) | Author | Files | Lines |
|
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.
|
|
|
|
This is basically the same as b18acc1.
|
|
|
|
|
|
|
|
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.
|
|
If the current $TERM value indicates 256 color support fall back
to xterm-256color otherwise try xterm.
Improves upon 43605fded457cec954600b688d54242341eedc7c
Closes #105
|
|
|
|
Force ncurses libdir to be /usr/lib not /usr/lib64.
|
|
|
|
|
|
Make lpeg module table explicitly global, which should work
with the different module loading semantics.
|
|
|
|
Add separate per library {C,LD}FLAGS and use default values
from pkg-config to allow for finer control.
Disable pkg-config by setting PKG_CONFIG_PATH= PKG_CONFIG_LIBDIR=
Override flags completely by specifying them as arguments to make:
$ make CFLAGS_CURSES="your custom flags for curses"
Also introduce a new, experimental Makefile target standalone. It
tries to build a self contained statically linked vis binary. All
dependencies (musl, ncurses, termkey, lua, lpeg) are build from
source. Lua is patched to include lpeg as a statically built module.
|
|
This merges parts of the build system overhaul found in the lua
branch.
|