summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-23Add missing wordMarc André Tanner
2016-03-23Remove identically replicated copyright comments from source filesMarc André Tanner
2016-03-23vis: use vis-clipboard instead of vis-{copy,paste} scriptsMarc André Tanner
2016-03-23Add vis-clipboard scriptRichard Burke
Originally written for the wed editor by Richard Burke, released under the ISC license for vis.
2016-03-22configure: clear ${C,LD}FLAGS_LUA in error caseMarc André Tanner
2016-03-22configure: exchange _{BSD,DARWIN_C}_SOURCE definesMarc André Tanner
2016-03-21Remove bashisms from configure script.Richard Burke
2016-03-21vis: also lookup Lua support files relative to the binary locationMarc André Tanner
This simplifies deployment of vis on remote systems without root access. The idea is to extract a statically linked binary together with the lexer syntax files into some directory, adjust $PATH to include it and have everything just work. For now this uses /proc/self/exe and thus only works on Linux based systems.
2016-03-21configure: probe for hardening flagsMarc André Tanner
2016-03-21configure: probe for size optimizing flags (disabled for now)Marc André Tanner
2016-03-21build: reorder some variablesMarc André Tanner
2016-03-21build: create empty config.mk if it does not existMarc André Tanner
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.
2016-03-21configure: make vis depend on config.mkChristian Hesse
We want vis to be rebuilt when configuration changes, so make vis depend on config.mk.
2016-03-21build: add vis subdirectory to $SHAREPREFIXMarc André Tanner
2016-03-21configure: make man and share directories configurableChristian Hesse
2016-03-21configure: fix install prefix for man and share directoriesChristian Hesse
2016-03-21configure: fix condition for libselinuxChristian Hesse
2016-03-21configure: fix condition for libaclChristian Hesse
2016-03-21configure: fix condition for libluaChristian Hesse
2016-03-21configure: fix condition for libtermkeyChristian Hesse
2016-03-21configure: fix condition for ncursesChristian Hesse
2016-03-21build: overhaul build system auto detect stuff using a configure scriptMarc André Tanner
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.
2016-03-15vis: do not segfault when given a NULL command to processMarc André Tanner
2016-03-15vis: do properly replay ": and "/ registersMarc André Tanner
This makes @: (and @/) work.
2016-03-15vis: slightly cleanup register related codeMarc André Tanner
2016-03-15vis: add support for command register ":Marc André Tanner
2016-03-15text: improve ENOSPC handling when savingMarc André Tanner
The default atomic save method using rename(2) would correctly fail, but the calling code would wrongly assume it was because of dealing with a special (e.g. hard or symlink) file or that some other properties (e.g. POSIX ACL, SELinux labels, permissions etc) could not be restored. It would then go on to ftruncate(2) the file, if the following writes then fail (which is likely if the new file content is bigger or some other process has used up disk space in the mean time) we lose data. This should fix it for the common case i.e. regular file where the rename(2) based method is used. The problem persits when directly overwriting a file. It is unclear whether this could be improved/fixed by: 1) first appending the new file content to the old one 2) fsync the data (old||new) 3) deleteing the original file content by overwritting it with the previously appended new file content. That is essentially moving the new file content from the end of the file to the start. 4) ftruncate to the new file size 5) fsync the data (new) if during 1) or 2) an error would occur we could revert the operation by doing a ftruncate to the original file size. An error in steps 3-5 would still be fatal. Another option would be to first write a backup file somewhere.
2016-03-14text-regex: fix possible infinite loop when searching backwardsMarc André Tanner
2016-03-13Update README to include recent changes to supported registersMarc André Tanner
2016-03-13vis: convert gn and gN text objects to use "/ register contentMarc André Tanner
2016-03-12ui/view: general code cleanupMarc André Tanner
2016-03-12ui: use correct default cell styleMarc André Tanner
This is important for files without associated syntax highlighting. The selections should now again be visible.
2016-03-12view: cleanup default ui style handlingMarc André Tanner
2016-03-12vis-lua: allow to set window.syntax = nilMarc André Tanner
This will load the default lua color theme.
2016-03-12view: also load lua theme for windows without syntax highlightingMarc André Tanner
This for example affects the default background color and cursor related settings.
2016-03-12ui: make primary cursor blink even if no lua theme has been loadedMarc André Tanner
2016-03-12vis: overhaul search related code, support "/ registerMarc André Tanner
2016-03-12register: add function to set register content to arbitrary dataMarc André Tanner
2016-03-12register: make sure returned register content is always NUL terminatedMarc André Tanner
2016-03-12register: rename register put related functionsMarc André Tanner
2016-03-11Update README to reflect changes in multiple cursor supportMarc André Tanner
2016-03-11ui: also blink primary cursor if it is on a blank cellMarc André Tanner
2016-03-11vis: respect count for <C-d> and <C-u>Marc André Tanner
2016-03-10view: add query function for multiple cursorsMarc André Tanner
2016-03-10ui: make primary cursor blinkMarc André Tanner
2016-03-10ui: add support for blink style attributeMarc André Tanner
2016-03-10vis: let <C-u> and <C-d> in visual mode move to prev/next cursorMarc André Tanner
We do currently not enforce a strict ordering among cursors. Hence these key bindings can move you to an arbitray position. In practice it somewhat works because most of the time cursors are created in "top-down" i.e from the start of the file towards the end.
2016-03-10view: clean up API functions related to primary cursor handlingMarc André Tanner
The currently visible display port is always adjusted in a way that the primary cursor is visible.
2016-03-10vis: let /^pattern match at the start of the lineMarc André Tanner
2016-03-08Merge branch 'master' of https://github.com/xomachine/visMarc André Tanner