summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2017-05-31build: allow to build self-contained executableChristian Hesse
2017-04-20vis: start cleaning up register related codeMarc André Tanner
Now that register.h is no longer used by view.h we can move the struct and function declarations to vis-core.h.
2017-04-14build: install miscellaneous documentationDavid B. Lamkins
2017-04-11build: tweak CFLAGS for profiling targetMarc André Tanner
2017-04-09text: add mem{r,}chr(3) based byte search functionsMarc André Tanner
These are generally implemented efficiently in libc. While memrchr(3) is non-standard, it is a common extension. If it is not available, we use a simple C implementation from musl.
2017-03-27build: add git based version information backMarc André Tanner
2017-03-25build: set version to 0.3Marc André Tanner
2017-03-14Add experimental raw vt100 UI backendMarc André Tanner
The intention of this is not to slowly reimplement curses but to provide a minimal working terminal UI backend which can also be used for debugging, fuzzing and in environments where curses is not available. Currently no attempt is made to optimize terminal output. The amount of flickering will depend on the smartness of your terminal emulator.
2017-03-14Restructure display codeMarc André Tanner
Use pull instead of push based model for display code. Previously view.c was calling into the ui frontend code, with the new scheme this switches around: the necessary data is fetched by the ui as necessary. The UI independent display code is moved out of view.c/ui-curses.c into vis.c. The cell styles are now directly embedded into the Cell struct. New UI styles are introduced for: - status bar (focused / non-focused) - info message - window separator - EOF symbol You will have to update your color themes. The terminal output code is further abstracted into a generic ui-terminal.c part which keeps track of the whole in-memory cell matrix and #includes ui-terminal-curses.c for the actual terminal output. This architecture currently assumes that there are no overlapping windows. It will also allow non-curses based terminal user interfaces.
2017-03-05lua: fix more luacheck warningsMarc André Tanner
2017-03-03build: add luacheck make targetMarc André Tanner
2017-02-24vis: make help texts optional to produce a smaller binaryMarc André Tanner
$ ./configure --disable-help shrinks the binary by about 20K on a x86_64 system.
2017-02-17build: more complete cleanup in make cleanMarc André Tanner
2017-01-31build: properly strip elf executablesChristian Hesse
We had several elf executables that were not stripped properly. Move the filenames to a dedicated variable and use that to not miss anything.
2017-01-27vis-digraph: add utility to handle digraphsjosuah
Hook it up via Lua to <C-k> in insert and replace mode. Close #460 #475
2017-01-19text-regex: add regex backend based on libtreMarc André Tanner
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.
2017-01-16man: add man page for vis-complete(1)Christian Hesse
Signed-off-by: Christian Hesse <mail@eworm.de>
2017-01-16make: define EXECUTABLES and install in a loopChristian Hesse
Define EXECUTABLES and install in a loop. Also fix uninstalling man pages.
2016-12-27build: pass $CFLAGS_EXTRA through make debug targetMarc André Tanner
2016-12-22build: do not install lua/doc directoryMarc André Tanner
2016-12-22build: also include working tree state in version informationMarc André Tanner
2016-12-15build: move $CFLAGS_DEBUG into config.mkMarc André Tanner
This allows inclusion in other Makefiles (e.g. for C unit tests).
2016-12-13build: add configure options for built-in lpeg supportMarc André Tanner
2016-12-12Allow building lpeg into visMichael Forney
If lpeg is built statically, this allows for a completely static vis binary that still supports syntax highlighting.
2016-12-08Move manual pages to man/ subfolderMarc André Tanner
2016-12-07Move all lua related files to lua/ subfolderMarc André Tanner
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.
2016-12-06vis-lua: more extensive Lua API documentationMarc André Tanner
2016-12-05vis-lua: add preliminary version of LDoc based Lua API documentationMarc André Tanner
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.
2016-12-03build: do not define _FORTIFY_SOURCE for debug buildsMarc André Tanner
This avoids warnings like: "_FORTIFY_SOURCE requires compiling with optimization".
2016-12-02build: simplify manual page installationMarc André Tanner
The version substitution does not seem to work with BSD make because ${VERSION} is expanded to an empty string.
2016-12-02build: add new `make man` targetMarc André Tanner
Uses mandoc(1) to generate manual pages in HTML format.
2016-11-30man: use hard coded dates in manual pagesMarc André Tanner
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
2016-11-18Fix date format string in man pagesMichael Forney
%m is the decimal month value, not the day of the month.
2016-11-18Fix date command in man page installationMichael Forney
With a single $, make will try to expand it as a variable.
2016-11-10build: add Makefile target for code coverage via gcovMarc André Tanner
2016-11-09build: make `vis -v` version output more robustMarc André Tanner
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.
2016-09-25vis: move file name and word completion logic to a shell scriptMarc André Tanner
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-06-21vis-open: Add a manpage.Tim Allen
2016-06-16vis-clipboard: Add a manpage.Tim Allen
2016-05-28[vis-menu] Add a manpage.Tim Allen
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.
2016-05-19build: let make debug compile vis-menu with debug flagsMarc André Tanner
2016-05-19vis-menu: change version outputMarc André Tanner
2016-05-19Import slmenu 7e74fa5 as vis-menuMarc André Tanner
2016-05-16vis: introduce vis-menu helper scriptMarc André Tanner
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.
2016-05-11build: install support files only when neededMarc André Tanner
2016-04-29vis: move non-configuration sections out of visrc.lua into vis.luaMarc André Tanner
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.
2016-04-20vis-lua: load files from directory specified with ./configure --sharedir=DIRMarc André Tanner
Close #231
2016-04-19Fix vis-test git submodule integrationMarc André Tanner
2016-04-19Integrate vis-test git submoduleMarc André Tanner
2016-04-03sam: unify vi(m) and sam command lineMarc André Tanner
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)