| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: An Ex range gets adjusted for folded lines even when the range is
not using line numbers.
Solution: Only adjust line numbers for folding. (Christian Brabandt)
https://github.com/vim/vim/commit/a3306958dcb9aadff1e1e8521d908d86b10ac99a
|
|\ \
| |/
|/| |
Make some function accept strings with length in place of just strings
|
| |
| |
| |
| |
| |
| |
| | |
Reasons:
- One does not have to do `s[len] = NUL` to work with these functions if they do
not need to replace the whole string: thus `s` may be const.
- One does not have to save/restore p_cpo to work with them.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
New ex commands: 'tcd', 'tchdir'
Changed Vimscript functions: 'haslocaldir', 'getcwd'
The ex-commands ':tcd' and ':tchdir' are the tab-local equivalents of
':lcd' and ':lchdir'. There are no new Vimscript functions introduced,
instead the functions 'haslocaldir' and 'getcwd' take in optional
arguments. See the documentation for details
Since there is now different levels of local directory a simple boolean
at source level is no longer sufficient; a new enumeration type is used
for the scope-level from now on.
The documentation has been accommodated for these new commands and
functional tests have been written to test the feature.
|
|/ |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Problem: Coverity error for clearing only one byte of struct.
Solution: Clear the whole struct. (Dominique Pelle)
https://github.com/vim/vim/commit/69b67f7e774dc212e8c97495ee81c601b8a89ac2
|
|\
| |
| | |
vim-patch:7.4.939
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Memory leak when encountering a syntax error.
Solution: Free the memory. (Dominique Pelle)
https://github.com/vim/vim/commit/9a7d58e42ed54406437c2394e5a489ee6a9e4220
|
|\ \
| | |
| | | |
vim-patch:7.4.895
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Problem: Custom command line completion does not work for a command
containing digits.
Solution: Skip over the digits. (suggested by Yasuhiro Matsumoto)
https://github.com/vim/vim/commit/23d1b62746dce048c80cc19e7e5af1d513b6b4cf
|
|/
|
|
| |
Closes #4311
|
|\
| |
| | |
vim-patch:7.4.792
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Can only conceal text by defining syntax items.
Solution: Use matchadd() to define concealing. (Christian Brabandt)
https://github.com/vim/vim/commit/6561d52ecbe6e24d1b90403078cc8b76c53c42fc
|
| |
| |
| |
| |
| |
| |
| | |
- `syntax_on` is documented. Rather than introduce a new undocumented
VimL global `g:syntax_off`, use a module-local flag.
- Rename "maybe" functions to follow style guidelines (use standard
module prefix)
|
| |
| |
| |
| |
| | |
If user invokes :filetype or :syntax before startup defaults are
applied, don't clobber their choices.
|
| |
| |
| |
| | |
It is no longer forcing anything.
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: On MS-Windows vimgrep over arglist doesn't work (Issue 361)
Solution: Only escape backslashes in ## expansion when it is not used as the
path separator. (James McCoy)
https://github.com/vim/vim/commit/6e8d3b0d41bcef7ebe0ba2e887eb25781e1437fe
---
Fix a lint error for the closing parenthesis.
NOLINT does not help to do this.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Invalid memory access when using "exe 'sc'".
Solution: Avoid going over the end of the string. (Dominique Pelle)
https://github.com/vim/vim/commit/204b93f95831454e6924acf30b16fd4bdfda0d14
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Using freed memory when triggering CmdUndefined autocommands.
Solution: Set pointer to NULL. (Dominique Pelle)
https://github.com/vim/vim/commit/829aef1eb48b17445b1f0a801948c1b826f507f8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Session file is not correct when there are multiple tab pages.
Solution: Reset the current window number for each tab page. (Jacob Niehus)
https://github.com/vim/vim/commit/695baeefe17adcd95f91d089efee87bd96fc98db
---
see: "[patch] wincmd error during session restore"
https://groups.google.com/d/msg/vim_dev/NykQ0UuOjXc/_MZi4sv9vp0J
What I did for testing:
```sh
mkdir /tmp/test_session
cd $_
function test_session() {
$1 -u NONE -i NONE -N ~/.vimrc \
-c 'wincmd s' \
-c 'wincmd v' \
-c 'wincmd T' \
-c 'normal 1gt' \
-c '2wincmd w' \
-c 'mks! test.vis' \
-c 'qa'
$1 -u NONE -i NONE -N -S test.vis
}
test_session vim
test_session nvim
test_session /path/to/your/neovim/repository/build/bin/nvim
```
|
|/
|
|
|
|
|
| |
Problem: ":1quit" works like ":.quit". (Bohr Shaw)
Solution: Don't exit Vim when a range is specified. (Christian Brabandt)
https://github.com/vim/vim/commit/c7a0d32c834ff321491d8fd7bc68bf6cabd11e44
|
|
|
|
|
|
|
|
| |
Problem: ":tabmove" does not work as documented.
Solution: Make it work consistently. Update documentation and add tests.
(Hirohito Higashi)
https://github.com/vim/vim/commit/40ce3a4e1f50badb75ca812e26557a9bc5fde8c6
|
|
|
|
|
|
|
|
|
|
| |
Although UNIX is a registered trademark of The Open Group, it doesn't
really matter whether we refer to these systems as UNIX, Unix, or
Unix-like. So, for consistency, refer to them collectively as Unix.
Related:
http://www.greens.org/about/unix.html
http://www.unixica.com/html/unixunix.html
|
| |
|
|
|
|
|
|
|
|
| |
Problem: It's a bit clumsy to execute a command on a list of matches.
Solution: Add the ":ldo", ":lfdo", ":cdo" and ":cfdo" commands. (Yegappan
Lakshmanan)
https://github.com/vim/vim/commit/aa23b379421aa214e6543b06c974594a25799b09
|
|
|
|
|
|
|
| |
Problem: Wrong ":argdo" range does not cause an error.
Solution: Reset "cmd" to NULL. (Marcin Szamotulski, Ingo Karkat)
https://github.com/vim/vim/commit/c0a37b9db38e722b9e5ac3ac8b4c4af86bdf018c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Regarding the individual items in the header:
`Vim - Vi improved by Bram Moolenar`
Bram Moolenar is already mentioned throughout the documentation, as
well as the intro screen.
`:help uganda`
It's already shown to all users who don't use `shortmess+=I` upon
starting nvim, and is already placed prominently in help.txt, i.e.,
`:help` run with no arguments.
`:help credits`
Already mentioned near the top of help.txt.
`README.md`
Already mentioned in develop.txt.
|
| |
|
|
|
|
|
| |
The former no longer exists in this repo; see the top of
src/nvim/README.md.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As can be seen in [1], the ifdefs are leftovers from Vim, where tons of
features are optional. This is not the case in Nvim, so the macros are
of little use. Besides, ex_ni is already used in a bunch of places,
just not consistently.
The ex_language macro was left untouched as the inclusion of
``:language'' actually is determined at compile time, unlike the other
commands which _always_ print "this command is not available in this
version".
[1]: https://github.com/vim/vim/blob/master/src/ex_docmd.c#L18-L497
Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From the documentation itself:
:[range]o[pen] Works like |:visual|: end Ex mode.
{Vi: start editing in open mode}
...
Vim does not support open mode, since it's not really useful. For
those situations where ":open" would start open mode Vim will leave Ex
mode, which allows executing the same commands, but updates the whole
screen instead of only one line.
Part of the reason behind this is to make removing vi_diff.txt easier,
although it's also because :open is not too useful.
Helped-by: @fdinoff
Helped-by: @dsummersl
Helped-by: @mhinz
Helped-by: @justinmk
|
|
|
|
|
|
| |
Specifically refactor u_get_undo_file_name which will be modified to
automatically create undo directory and replace `char_u` with `char` in some of
the related functions.
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
Notes:
- E136 code greatly changed its meaning: now it is write error and not read
error.
- E195 was removed because shada_read_everything will already do all the
necessary error reporting.
- E886 can be reported by both :rshada and :wshada, but :rshada comes first and
AFAIR it is the only error which is not E575 and can be reported by :rshada.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
What works:
1. ShaDa file dumping: header, registers, jump list, history, search patterns,
substitute strings, variables.
2. ShaDa file reading: registers, global marks, variables.
Most was not tested.
TODO:
1. Merging.
2. Reading history, local marks, jump and buffer lists.
3. Documentation update.
4. Converting some data from &encoding.
5. Safer variant of dumping viminfo (dump to temporary file then rename).
6. Removing old viminfo code (currently masked with `#if 0` in a ShaDa file for
reference).
|
|
|
|
|
|
|
|
|
| |
Using the `curbuf->terminal` condition alone is wrong since it does not
necessarily mean nvim is in terminal mode. It needs to be used with
`State & TERM_FOCUS` because the current buffer could have changed without
`terminal_enter` exiting.
Close #3403
|
|
|
|
| |
Ref: https://github.com/junegunn/fzf.vim/issues/8#issuecomment-139209765
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is equivalent to patches 7.4.396, 7.4.445 and 7.4.598.
vim-patch:7.4.396
Problem: When 'clipboard' is "unnamed", :g/pat/d is very slow.
(Praful)
Solution: Only set the clipboard after the last delete. (Christian
Brabandt)
https://github.com/vim/vim/commit/1f285eb49a709e00552f7bef7e74efff5ae79026
vim-patch:7.4.445
Problem: Clipboard may be cleared on startup.
Solution: Set clip_did_set_selection to -1 during startup. (Christian
Brabandt)
https://github.com/vim/vim/commit/1a19d37d90f037c09183ba68fdddf70ab8ee179a
vim-patch:7.4.598
Problem: ":tabdo windo echo 'hi'" causes "* register not to be
changed.
(Salman Halim)
Solution: Change how clip_did_set_selection is used and add
clipboard_needs_update and global_change_count. (Christian
Brabandt)
https://github.com/vim/vim/commit/af6a579263a688f30bfbbee72b28d08cc7e0f3d4
Co-Author: @bfredl
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There's no way this isn't some long-running joke:
"Just as ':print'. Was apparently added to Vi for
people that keep the shift key pressed too long..."
Note: A user command can overrule this command.
Regarding ':X': the command has been removed for a while, but the
documentation must have been missed, so remove it here.
Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
Helped-by: @jusga
|