| Commit message (Collapse) | Author | Age |
| ... | |
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This makes it impossible for K_EVENT to interfere with mappings, but it also
disables processing of events while in the middle of a mapping (Though this will
be fixed later as this refactoring progresses).
`may_sync_undo` is now called when K_EVENT is received. This is necessary to
correctly update undo entry lists before executing some action.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`normal_prepare` is now called by `normal_check` before returning 1(to
continue).
Also remove `input_{enable,disable}_events` calls from `normal_cmd`, which only
exists now as a compatibility function to run normal commands with keys inserted
into the typeahead buffer(We don't want to process events in these cases
anyway).
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Refactor input.c, normal.c and edit.c to use the K_EVENT special key to trigger
the CURSORHOLD event. In normal and edit mode, K_EVENT is treated as
K_CURSORHOLD, which enables better handling of arbitrary actions in those
states(eg: In normal mode the previous operator counts will be restored).
Also fix a test in vim_spec.lua. The test had a wrong assumption: cmdheight is
only used to determine when the press enter screen will be shown, not to limit
how many lines or control pagination.
|
| | | |
| | |
| | |
| | |
| | | |
This was done separately to make it easier to follow the changes in the previous
commit.
|
| | | |
| | |
| | |
| | |
| | | |
The new functions are `normal_prepare` and `normal_execute` which contain code
executed before and after input is received in normal mode.
|
| |/ /
| |
| |
| |
| |
| | |
The new function contains logic that must be executed after handling input in
normal mode and also before the first main loop iteration. Also rename
`main_loop` to `normal_enter` and move it to normal.c
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Moving the cursor in Insert mode starts new undo sequence.
Solution: Add CTRL-G U to keep the undo sequence for the following
cursor movement command. (Christian Brabandt)
https://github.com/vim/vim/commit/8b5f65a527c353b9942e362e719687c3a7592309
Closes #3492
|
| |\ \
| | |
| | | |
XDG base directory specification support
|
| | | |
| | |
| | |
| | | |
This way all standard Vim file paths have .vim extension. VIMRC_FILE constant
used for &exrc option was not touched.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Note about ~/.local/share/nvim/site used in one usr_\* file: this one talks
about user-local installation of third-party plugins, and
~/.local/share/nvim/site is the proper place for them. Most other files talk
about user own configuration and this is ~/.config.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
This is none of option.c business to create *possibly unneeded* **default**
directories **before** user specified where he actually wants to place the
files.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Remove/add includes
- Do not pretend that returns are const
- Add function attributes
- Allocate memory always in get_xdg
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Add functions that are able to query XDG.
- Replace defaults for
- &runtimepath. Does not follow #78.
- &viewdir.
- &undodir.
- &directory.
- &backupdir. Does not follow #78.
- vimrc location.
- Remove user vimrc file line from :version message.
|
| | |
| |
| |
| |
| | |
This and the previous commit together fix #3472. This one also fixes memory leak
on :delmarks!.
|
| |/ |
|
| |\
| |
| | |
server_address()
|
| | |
| |
| |
| |
| |
| | |
Return 1 if the endpoint argument is NULL, server_start() can get
a NULL value when using server_address_new() or vim_tempname(). Removed
the function attribute.
|