| Age | Commit message (Collapse) | Author |
|
same as buffer commit Array is completely visible
|
|
Same as previous commit each window only has a single View. No
need for it to be stored elsewhere in memory.
|
|
|
|
The core vis code was originally written under the assumption that there
always exists at least one window. However, when being called from the
Lua configuration file during start up this is not yet the case.
In general, Lua code should always be placed within appropriate event
handlers e.g. vis.events.INIT for global configuration. Invoking API
functions depending on an active window from top level statements is
not supported. Where before the editor simply crashed, these changes
turn such code sections into NOPs.
Fix #561
|
|
This partially reverts f9e2b884c15919757651db8b10c033a344a19e75
further jumps after leaving visual mode should not break `gv`.
|
|
|
|
|
|
This window local register holds the last active selections.
|
|
|
|
|
|
|
|
|
|
|
|
Close #563
|
|
Fix #532
|
|
There is no longer a need to explicitly redraw the window status
bar upon a mode change, it will happen anyway during the next UI
update.
|
|
$ ./configure --disable-help
shrinks the binary by about 20K on a x86_64 system.
|
|
|
|
Does not work for the current implementation of `O` because the
"lookbehind" i.e. second to last processed key is `<Up>` and not
`<Enter>`.
Fix #383
|
|
Previously something like `5ifoo<Escape>:<Escape>` would insert
foo into the command prompt.
|
|
|
|
|
|
Fix #371
|
|
Fix #372
|
|
|
|
|
|
The vis_keys_feed function is currently unaffected by this change.
It still creates individual undo points. While this is probably
undesirable from an API point of view, it keeps the lua based tests
that use undo points working.
|
|
Previously if you had a mapping for both `a` and `ab` the latter would
in effect be unreachable because the greedy search would always match
and then execute the former. With the new behavior we keep reading keys
until we have a non ambigious sequence. That is after pressing `a` nothing
will happen, if the next key is a `b` we will execute the `ab` mapping
otherwise we will perform `a` and whatever the action is for the next key.
Close #386
|
|
Fix #459
|
|
|
|
|
|
|
|
|
|
The handling of :unmap needs to be revisited at some point.
|
|
Do not take snapshots after every operation in insert/replace mode.
As an example up until now we would take a snapshot after every
<Backspace>/<Delete> press, hence when undoing changes each character
would be restored individually. The same applies for <C-w> and related
actions.
From now on we only snaphost when:
- transitioning from insert/replace mode to normal mode (but not when
switching to operator pending mode)
- an operation takes place from normal mode
- an idle time expires in normal/replace mode
|
|
They both perform a motion before changing mode.
|
|
|
|
Do not override implicit operator macro in command mode.
Fix #334
|
|
Make window status bar content configurable via Lua.
|
|
|
|
`<` needs a special treatment because it is used to denote symbolic
keys without it the shift left operator would not work.
|
|
|
|
This does only detect the simplest cases.
|
|
Since commit 197ab824206335eab7ceed774ddeccac18fafc09 visual line
and replace modes are child modes, hence we also have to consider
the window local key bindings of their respective parent modes.
For example in replace mode the key lookup chain is now as follows:
window local replace mode -> global replace mode ->
window local insert mode -> global insert mode
This fixes <Enter> behaviour in prompt for replace and visual line
modes.
|
|
Make replace mode a child of insert mode and visual line a
child of visual mode. This means any key binding for the
former is automatically available in the latter. Also keys
can not be unmapped solely from the child modes.
|
|
|
|
Switching to character wise visual mode is still different
than in vim because we do not distinguish between line
wise and charwise selections.
Close #149
|
|
|
|
|
|
|