| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
|
| |
The warning is triggered by the second division when arr is a char array
since sizeof(char) is 1. A modulo by 1 may normally indicate a logic
error, but in this case it's intended.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot get the search statistics.
Solution: Add the searchcount() function. (Fujiwara Takuya, closes vim/vim#4446)
https://github.com/vim/vim/commit/e8f5ec0d30b629d7166f0ad03434065d8bc822df
Additional changes:
- Tests weren't passing because the test ran assuming the cursor was at
start of buffer but append() left the cursor at end of buffer .
So cursor is moved to start of buffer after append.
- searchcount() added to list of builtin functions.
|
|
|
| |
Closes #13505.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Per GCC's documentation:
> The __has_include operator by itself, without any operand or parentheses, acts as a predefined macro so that support for it can be tested in portable code. Thus, the recommended use of the operator is as follows:
>
> #if defined __has_include
> # if __has_include (<stdatomic.h>)
> # include <stdatomic.h>
> # endif
> #endif
>
> The first ‘#if’ test succeeds only when the operator is supported by the version of GCC (or another compiler) being used. Only when that test succeeds is it valid to use __has_include as a preprocessor operator.
|
|
|
|
|
|
| |
This is code generated by gperf, so there's nothing we can do about it.
The code does have /*FALLTHROUGH*/ comments but clang doesn't recognize
them.
|
|
|
|
|
|
| |
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
https://github.com/vim/vim/commit/9bf703d46a79fbffeb829246ea5ce385bddc4166
|
|
|
|
|
|
|
| |
Problem: Some MB_ macros are more complicated than necessary. (Dominique
Pelle)
Solution: Simplify the macros. Expand inline.
https://github.com/vim/vim/commit/1614a14901558ca091329315d14a7d5e1b53aa47
|
|
|
|
|
|
|
| |
Problem: Cannot get the script line number when executing a function.
Solution: Store the line number besides the script ID. (Ozaki Kiichi,
closes vim/vim#3362) Also display the line number with ":verbose set".
https://github.com/vim/vim/commit/f29c1c6aa3f365c025890fab5fb9efbe88eb1761
|
|
|
|
|
|
| |
Problem: Mac features are confusing.
Solution: Make feature names more consistent, add "osxdarwin". Rename
feature flags, cleanup Mac code. (Kazunobu Kuriyama, closes vim/vim#2178)
https://github.com/vim/vim/commit/d057301b1f28736f094affa17b190244ad56e8d9
|
|\
| |
| | |
vim-patch:8.1.{1005,1041,1049,1052,1053,1086,1394}
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Too many curly braces.
Solution: Remove curly braces where they are not needed. (Hirohito Higashi,
closes vim/vim#3982)
https://github.com/vim/vim/commit/abab0b0fdd6535969447b03a4fffc1947918cf6c
Neovim code style requires the opposite.
Add curly braces to minimize lint errors when applying Vim patches.
|
|/ |
|
| |
|
|
|
|
|
|
|
| |
Windows: Using fopen() directly may need UTF-16 filepath conversion. To
achieve that, os_fopen() goes through os_open().
fix #10586
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Travis CI, -Wmissing-prototypes gives strange error:
In file included from ../src/nvim/eval.c:5965:
/home/travis/build/neovim/neovim/build/src/nvim/auto/funcs.generated.h.gperf:215:1: error: conflicting types for 'find_internal_func_gperf'
find_internal_func_gperf (register const char *str, register unsigned int len)
^
../src/nvim/eval.c:5962:20: note: previous declaration is here
const VimLFuncDef *find_internal_func_gperf(register const char *str,
^
|
| |
|
| |
|
|
|
|
|
|
|
| |
First step towards implemening issue #7401.
The same can be done for all deprecated mb_ functions in follow-up
patches.
|
|
|
|
|
|
|
| |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
|
| |
|
|
|
|
|
|
|
| |
Problems so far:
- Marks in the current instance are not adjusted.
- Duplicates are not removed (not that it works in Vim either now, not at
8.0.134 at least).
|
| |
|
|
|
|
|
|
|
| |
Problem: Some macros are in lower case, which can be confusing.
Solution: Make a few lower case macros upper case.
https://github.com/vim/vim/commit/b5aedf3e228d35821591da9ae8501b61cf2e264c
ref #6297
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were initially checking whether to apply 'langmap' translation based
on typebuf.tb_maplen.
This gets set to 0 on the last byte of a map when the del_typebuf()
function is called, which means that the option was not working for the
last character of a mapping.
For this reason, we switched to using KeyTyped to decide whether to
apply the transformation or not in commit 53da57d27.
Substituting one for the other isn't enough, because KeyTyped isn't set
until vgetorpeek() is returning.
This means 'langmap' translations are not applied when searching for
characters to map in the vgetorpeek() function if the *previous* key was
not typed.
We can't assert that both hold, as we would then *not* apply the
transformation when looking for a map starting with the first typed key
after a previously expanded map (as KeyTyped would be `false` from the
previously expanded map, and not yet reset).
Hence we assert that if we are looking for the mapping while in
vgetorpeek(), the map length should be zero, otherwise, KeyTyped must be
`true`.
This is implemented by checking for the variable `vgetc_busy`.
|
|\ |
|
| | |
|
| |
| |
| |
| | |
ULONG on Windows.
|
|/
|
|
| |
1
|
| |
|
|
|
|
|
|
|
|
|
| |
Although GCC now detects possibly unintentional fall through, there
rules around which the comments are detected are rather strict. In
cases where a comment isn't detected, upstream [recommends] using their
fallthrough attribute.
[recommends]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77817#c11
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Windows, `mch_open_rw` is not actually doing what it claims. This
manifests as "E301: Oops, lost the swap file !!!" when filename is
changed with :file {name}.
Steps to reproduce (covered by test/functional/ex_cmds/file_spec.lua):
nvim -u NONE
:edit test
:file test2
E301 Oops, lost the swap file!!!
From libuv/src/win/fs.c:
void fs__open(uv_fs_t* req) {
...
attributes |= FILE_ATTRIBUTE_NORMAL;
if (flags & _O_CREAT) {
if (!((req->fs.info.mode & ~current_umask) & _S_IWRITE)) {
attributes |= FILE_ATTRIBUTE_READONLY;
}
}
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Problem: The 'langnoremap' option leads to double negatives. And it does
not work for the last character of a mapping.
Solution: Add 'langremap' with the opposite value. Keep 'langnoremap' for
backwards compatibility. Make it work for the last character of a
mapping. Make the test work.
https://github.com/vim/vim/commit/920694c1b60fac8017b8909efcc24f189804a9bb
|
|
|
|
| |
Also fixes buffer reusage in setmatches() and complete().
|
|
|
|
|
|
|
| |
Problem: Buffer overflow when using latin1 character with feedkeys().
Solution: Check for an illegal character. Add a test.
https://github.com/vim/vim/commit/d3c907b5d2b352482b580a0cf687cbbea4c19ea1
|
|
|
|
|
|
|
|
|
| |
Closes #1234
multiqueue:
- Implement multiqueue_size()
- Rename MultiQueueItem.parent to MultiQueueItem.parent_item, to avoid confusion
with MultiQueue.parent.
|
|
|
|
|
|
|
|
|
| |
Eliminate mb_init():
Set "enc_utf" and "has_mbyte" early. Eliminate "enc_unicode" and "enc_latin1like".
init_chartab() and screenalloc() are already invoked elsewhere
in the initialization process.
The EncodingChanged autocmd cannot be triggered.
At initialization, there is no spellfiles to reload
|
|
|
|
|
|
|
| |
Problem: Conflict for "chartab". (Kazunobu Kuriyama)
Solution: Rename the global one to something less obvious. Move it into
src/chartab.c.
https://github.com/vim/vim/commit/88e8f9f14434a7cd538d0c159dc432bea869a5bd
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
vim.h is too big, and these were missing parens around the arguments.
These may already be defined in <sys/param.h> or <windef.h>, so guard
them with an #ifndef.
extracted from #810
|
|
|
|
|
|
|
| |
Reviewed-by: Michael Reed <m.reed@mykolab.com>
Reviewed-by: Luke Andrew <luke.github@la.id.au>
Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
Reviewed-by: Florian Walch <florian@fwalch.com>
|
|
|
|
| |
parenthesis.
|
| |
|
| |
|