vim-patch:7.4.1925
Problem: Viminfo does not merge file marks properly.
Solution: Use a timestamp. Add the :clearjumps command.
2d35899721
This commit is contained in:
parent
282109c51b
commit
492f2cfeff
|
@ -3534,7 +3534,7 @@ foreground() Move the Vim window to the foreground. Useful when sent from
|
|||
{only in the Win32 GUI and console version}
|
||||
|
||||
|
||||
*function()* *E700* *E922* *E929*
|
||||
*function()* *E700* *E922* *E923*
|
||||
function({name} [, {arglist}] [, {dict}])
|
||||
Return a |Funcref| variable that refers to function {name}.
|
||||
{name} can be a user defined function or an internal function.
|
||||
|
|
|
@ -1135,7 +1135,7 @@ files for different types of files (e.g., C code) and load them based on the
|
|||
file name, using the ":autocmd" command (see |:autocmd|). More information on
|
||||
ShaDa file format is contained in |shada-format| section.
|
||||
|
||||
*E136* *E138* *shada-error-handling*
|
||||
*E136* *E929* *shada-error-handling*
|
||||
Some errors make Neovim leave temporary file named `{basename}.tmp.X` (X is
|
||||
any free letter from `a` to `z`) while normally it will create this file,
|
||||
write to it and then rename `{basename}.tmp.X` to `{basename}`. Such errors
|
||||
|
@ -1155,7 +1155,7 @@ include:
|
|||
|
||||
Do not forget to remove the temporary file or replace the target file with
|
||||
temporary one after getting one of the above errors or all attempts to create
|
||||
a ShaDa file may fail with |E138|. If you got one of them when using
|
||||
a ShaDa file may fail with |E929|. If you got one of them when using
|
||||
|:wshada| (and not when exiting Neovim: i.e. when you have Neovim session
|
||||
running) you have additional options:
|
||||
|
||||
|
@ -1187,7 +1187,7 @@ running) you have additional options:
|
|||
internal info is written (also disables safety checks
|
||||
described in |shada-error-handling|). If 'shada' is
|
||||
empty, marks for up to 100 files will be written.
|
||||
When you get error "E138: All .tmp.X files exist,
|
||||
When you get error "E929: All .tmp.X files exist,
|
||||
cannot write ShaDa file!" check that no old temp files
|
||||
were left behind (e.g.
|
||||
~/.local/share/nvim/shada/main.shada.tmp*).
|
||||
|
|
|
@ -479,6 +479,12 @@ return {
|
|||
addr_type=ADDR_WINDOWS,
|
||||
func='ex_close',
|
||||
},
|
||||
{
|
||||
command='clearjumps',
|
||||
flags=bit.bor(TRLBAR, CMDWIN),
|
||||
addr_type=ADDR_LINES,
|
||||
func='ex_clearjumps',
|
||||
},
|
||||
{
|
||||
command='cmap',
|
||||
flags=bit.bor(EXTRA, TRLBAR, NOTRLCOM, USECTRLV, CMDWIN),
|
||||
|
|
|
@ -130,17 +130,17 @@ int setmark_pos(int c, pos_T *pos, int fnum)
|
|||
return OK;
|
||||
}
|
||||
|
||||
if (c > 'z') /* some islower() and isupper() cannot handle
|
||||
characters above 127 */
|
||||
return FAIL;
|
||||
if (islower(c)) {
|
||||
if (ASCII_ISLOWER(c)) {
|
||||
i = c - 'a';
|
||||
RESET_FMARK(curbuf->b_namedm + i, *pos, curbuf->b_fnum);
|
||||
return OK;
|
||||
}
|
||||
if (isupper(c)) {
|
||||
assert(c >= 'A' && c <= 'Z');
|
||||
i = c - 'A';
|
||||
if (ASCII_ISUPPER(c) || ascii_isdigit(c)) {
|
||||
if (ascii_isdigit(c)) {
|
||||
i = c - '0' + NMARKS;
|
||||
} else {
|
||||
i = c - 'A';
|
||||
}
|
||||
RESET_XFMARK(namedfm + i, *pos, fnum, NULL);
|
||||
return OK;
|
||||
}
|
||||
|
@ -798,6 +798,13 @@ void ex_jumps(exarg_T *eap)
|
|||
MSG_PUTS("\n>");
|
||||
}
|
||||
|
||||
void ex_clearjumps(exarg_T *eap)
|
||||
{
|
||||
free_jumplist(curwin);
|
||||
curwin->w_jumplistlen = 0;
|
||||
curwin->w_jumplistidx = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* print the changelist
|
||||
*/
|
||||
|
|
|
@ -4424,8 +4424,8 @@ msgstr ""
|
|||
"перед записом: %s"
|
||||
|
||||
#, c-format
|
||||
msgid "E138: All %s.tmp.X files exist, cannot write ShaDa file!"
|
||||
msgstr "E138: Усі файли %s.tmp.X зайнято, неможливо записати файл ShaDa!"
|
||||
msgid "E929: All %s.tmp.X files exist, cannot write ShaDa file!"
|
||||
msgstr "E929: Усі файли %s.tmp.X зайнято, неможливо записати файл ShaDa!"
|
||||
|
||||
#, c-format
|
||||
msgid "System error while opening temporary ShaDa file %s for writing: %s"
|
||||
|
|
|
@ -118,9 +118,10 @@ KHASH_SET_INIT_STR(strset)
|
|||
// E576: Missing '>'
|
||||
// E577: Illegal register name
|
||||
// E886: Can't rename viminfo file to %s!
|
||||
// E929: Too many viminfo temp files, like %s!
|
||||
// Now only six of them are used:
|
||||
// E137: ShaDa file is not writeable (for pre-open checks)
|
||||
// E138: All %s.tmp.X files exist, cannot write ShaDa file!
|
||||
// E929: All %s.tmp.X files exist, cannot write ShaDa file!
|
||||
// RCERR (E576) for critical read errors.
|
||||
// RNERR (E136) for various errors when renaming.
|
||||
// RERR (E575) for various errors inside read ShaDa file.
|
||||
|
|
|
@ -515,7 +515,7 @@ static int included_patches[] = {
|
|||
1928,
|
||||
// 1927 NA
|
||||
// 1926 NA
|
||||
// 1925 NA
|
||||
1925,
|
||||
// 1924 NA
|
||||
1923,
|
||||
// 1922 NA
|
||||
|
|
Loading…
Reference in New Issue