From 0366c0161e988e32420d2f37111a60129684905b Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 18 Jun 2018 20:52:13 +0200 Subject: [PATCH 01/24] patch 8.1.0073: crash when autocommands call setloclist() Problem: Crash when autocommands call setloclist(). (Dominique Pelle) Solution: If the quickfix list changes then don't jump to the error. --- src/quickfix.c | 8 +++++--- src/testdir/test_quickfix.vim | 11 +++++++++++ src/version.c | 2 ++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/quickfix.c b/src/quickfix.c index 031c6e7a6b..fb1cb4e868 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -6348,9 +6348,11 @@ ex_cexpr(exarg_T *eap) if (au_name != NULL) apply_autocmds(EVENT_QUICKFIXCMDPOST, au_name, curbuf->b_fname, TRUE, curbuf); - if (res > 0 && (eap->cmdidx == CMD_cexpr || - eap->cmdidx == CMD_lexpr)) - qf_jump(qi, 0, 0, eap->forceit); /* display first error */ + if (res > 0 && (eap->cmdidx == CMD_cexpr + || eap->cmdidx == CMD_lexpr) + && qi == ll_get_or_alloc_list(curwin)) + // Jump to the first error if autocmds didn't free the list. + qf_jump(qi, 0, 0, eap->forceit); } else EMSG(_("E777: String or List expected")); diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim index eade52f42d..80f327d64a 100644 --- a/src/testdir/test_quickfix.vim +++ b/src/testdir/test_quickfix.vim @@ -3362,3 +3362,14 @@ func Test_lbuffer_with_bwipe() au! augroup END endfunc + +func Test_setloclist_in_aucmd() + " This was using freed memory. + augroup nasty + au * * call setloclist(0, [], 'f') + augroup END + lexpr "x" + augroup nasty + au! + augroup END +endfunc diff --git a/src/version.c b/src/version.c index 6ce67802d7..36c57e249e 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 73, /**/ 72, /**/ From d6b01a2d3884ee0abe10aad161f584889a496e3f Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 18 Jun 2018 21:53:28 +0200 Subject: [PATCH 02/24] patch 8.1.0074: crash when running quickfix tests Problem: Crash when running quickfix tests. Solution: Do not alloc a new location list when checking for the reference to be still valid. --- src/quickfix.c | 2 +- src/version.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/quickfix.c b/src/quickfix.c index fb1cb4e868..d541aba54d 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -6350,7 +6350,7 @@ ex_cexpr(exarg_T *eap) curbuf->b_fname, TRUE, curbuf); if (res > 0 && (eap->cmdidx == CMD_cexpr || eap->cmdidx == CMD_lexpr) - && qi == ll_get_or_alloc_list(curwin)) + && qi == GET_LOC_LIST(curwin)) // Jump to the first error if autocmds didn't free the list. qf_jump(qi, 0, 0, eap->forceit); } diff --git a/src/version.c b/src/version.c index 36c57e249e..09325fbd4e 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 74, /**/ 73, /**/ From 252b7ee82384520e20df7728387a1a441c47c6e6 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 18 Jun 2018 22:00:22 +0200 Subject: [PATCH 03/24] patch 8.1.0075: no Vim logo in README file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Problem: No Vim logo in README file. Solution: Add one. (Árni Dagur, closes #3024) --- README.md | 2 ++ src/version.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/README.md b/README.md index 0e7ebf2cec..f6fb7d0fef 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ `README.md` for version 8.1 of Vim: Vi IMproved. +![Vim Logo](https://github.com/vim/vim/blob/master/runtime/vimlogo.gif) + [![Build Status](https://travis-ci.org/vim/vim.svg?branch=master)](https://travis-ci.org/vim/vim) [![Coverage Status](https://codecov.io/gh/vim/vim/coverage.svg?branch=master)](https://codecov.io/gh/vim/vim?branch=master) [![Coverage Status](https://coveralls.io/repos/vim/vim/badge.svg?branch=master&service=github)](https://coveralls.io/github/vim/vim?branch=master) diff --git a/src/version.c b/src/version.c index 09325fbd4e..bc79f7d2a7 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 75, /**/ 74, /**/ From 0ce7413a8318ec0b01386c54ee09d3d94216cb15 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 18 Jun 2018 22:15:50 +0200 Subject: [PATCH 04/24] patch 8.1.0076: command getting cleared with CTRL-W : in a terminal window Problem: Command getting cleared with CTRL-W : in a terminal window. (Jason Franklin) Solution: Call redraw_after_callback() when editing the command line. --- src/terminal.c | 8 +++++--- src/version.c | 2 ++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/terminal.c b/src/terminal.c index f4fa551659..a67c87a4be 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -973,11 +973,13 @@ write_to_term(buf_T *buffer, char_u *msg, channel_T *channel) * contents, thus no screen update is needed. */ if (!term->tl_normal_mode) { - /* TODO: only update once in a while. */ + // Don't use update_screen() when editing the command line, it gets + // cleared. + // TODO: only update once in a while. ch_log(term->tl_job->jv_channel, "updating screen"); - if (buffer == curbuf) + if (buffer == curbuf && (State & CMDLINE) == 0) { - update_screen(0); + update_screen(VALID_NO_UPDATE); /* update_screen() can be slow, check the terminal wasn't closed * already */ if (buffer == curbuf && curbuf->b_term != NULL) diff --git a/src/version.c b/src/version.c index bc79f7d2a7..04923fb3fb 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 76, /**/ 75, /**/ From 5c3670718bebacb3a9a54522cab2924a6bfbc3d4 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 18 Jun 2018 22:31:11 +0200 Subject: [PATCH 05/24] patch 8.1.0077: header of README file is not nice Problem: Header of README file is not nice. Solution: Move text to the bottom. --- README.md | 5 +++-- src/version.c | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index f6fb7d0fef..bc592147bb 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,3 @@ -`README.md` for version 8.1 of Vim: Vi IMproved. - ![Vim Logo](https://github.com/vim/vim/blob/master/runtime/vimlogo.gif) [![Build Status](https://travis-ci.org/vim/vim.svg?branch=master)](https://travis-ci.org/vim/vim) @@ -139,3 +137,6 @@ If nothing else works, report bugs directly: Send any other comments, patches, flowers and suggestions to: Bram Moolenaar + + +This is `README.md` for version 8.1 of Vim: Vi IMproved. diff --git a/src/version.c b/src/version.c index 04923fb3fb..354066fb34 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 77, /**/ 76, /**/ From c166927a32fe5c054ad35deecff00aa12c629cf7 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 14:23:53 +0200 Subject: [PATCH 06/24] patch 8.1.0078: "..." used inconsistently in messages Problem: "..." used inconsistently in messages. Solution: Drop the space before " ...". --- src/regexp_nfa.c | 2 +- src/spellfile.c | 10 +++++----- src/version.c | 2 ++ 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c index 90fff64b5e..fe0df3503e 100644 --- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -5270,7 +5270,7 @@ recursive_regmatch( } else { - EMSG(_("Could not open temporary log file for writing, displaying on stderr ... ")); + EMSG(_("Could not open temporary log file for writing, displaying on stderr... ")); log_fd = stderr; } #endif diff --git a/src/spellfile.c b/src/spellfile.c index 496e07f8f6..67f36b94aa 100644 --- a/src/spellfile.c +++ b/src/spellfile.c @@ -2241,7 +2241,7 @@ spell_read_aff(spellinfo_T *spin, char_u *fname) return NULL; } - vim_snprintf((char *)IObuff, IOSIZE, _("Reading affix file %s ..."), fname); + vim_snprintf((char *)IObuff, IOSIZE, _("Reading affix file %s..."), fname); spell_message(spin, IObuff); /* Only do REP lines when not done in another .aff file already. */ @@ -3569,7 +3569,7 @@ spell_read_dic(spellinfo_T *spin, char_u *fname, afffile_T *affile) hash_init(&ht); vim_snprintf((char *)IObuff, IOSIZE, - _("Reading dictionary file %s ..."), fname); + _("Reading dictionary file %s..."), fname); spell_message(spin, IObuff); /* start with a message for the first line */ @@ -4149,7 +4149,7 @@ spell_read_wordfile(spellinfo_T *spin, char_u *fname) return FAIL; } - vim_snprintf((char *)IObuff, IOSIZE, _("Reading word file %s ..."), fname); + vim_snprintf((char *)IObuff, IOSIZE, _("Reading word file %s..."), fname); spell_message(spin, IObuff); /* @@ -5865,7 +5865,7 @@ sug_write(spellinfo_T *spin, char_u *fname) } vim_snprintf((char *)IObuff, IOSIZE, - _("Writing suggestion file %s ..."), fname); + _("Writing suggestion file %s..."), fname); spell_message(spin, IObuff); /* @@ -6150,7 +6150,7 @@ mkspell( * Write the info in the spell file. */ vim_snprintf((char *)IObuff, IOSIZE, - _("Writing spell file %s ..."), wfname); + _("Writing spell file %s..."), wfname); spell_message(&spin, IObuff); error = write_vim_spell(&spin, wfname) == FAIL; diff --git a/src/version.c b/src/version.c index 354066fb34..f28a3468b6 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 78, /**/ 77, /**/ From d2f3a8b8787333abf2300d38836b196955f10c00 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 14:35:59 +0200 Subject: [PATCH 07/24] Update runtime files. --- runtime/colors/tools/check_colors.vim | 2 +- runtime/doc/autocmd.txt | 7 ++- runtime/doc/channel.txt | 8 ++- runtime/doc/cmdline.txt | 3 +- runtime/doc/eval.txt | 14 +++++ runtime/doc/ft_ada.txt | 2 +- runtime/doc/ft_rust.txt | 4 +- runtime/doc/insert.txt | 4 +- runtime/doc/os_beos.txt | 2 +- runtime/doc/os_win32.txt | 2 +- runtime/doc/syntax.txt | 2 +- runtime/doc/tags | 10 ++++ runtime/doc/term.txt | 10 ++++ runtime/doc/terminal.txt | 13 ++-- runtime/doc/todo.txt | 86 +++++++++++++++++++-------- runtime/doc/version5.txt | 4 +- runtime/doc/version8.txt | 36 +++++------ runtime/doc/windows.txt | 4 +- runtime/syntax/debcontrol.vim | 6 +- runtime/syntax/html.vim | 27 ++++++++- src/po/README.txt | 10 +++- src/po/af.po | 4 +- src/po/ca.po | 26 ++++---- src/po/de.po | 26 ++++---- src/po/eo.po | 26 ++++---- src/po/es.po | 20 +++---- src/po/fi.po | 14 ++--- src/po/fr.po | 16 ++--- src/po/ga.po | 24 ++++---- src/po/it.po | 26 ++++---- src/po/ja.euc-jp.po | 16 ++--- src/po/ja.po | 16 ++--- src/po/ja.sjis.po | 16 ++--- src/po/ko.UTF-8.po | 14 ++--- src/po/ko.po | 18 +++--- src/po/nb.po | 22 +++---- src/po/nl.po | 12 ++-- src/po/no.po | 22 +++---- src/po/pl.UTF-8.po | 24 ++++---- src/po/pl.cp1250.po | 24 ++++---- src/po/pl.po | 24 ++++---- src/po/pt_BR.po | 24 ++++---- src/po/ru.cp1251.po | 22 +++---- src/po/ru.po | 22 +++---- src/po/sk.cp1250.po | 18 +++--- src/po/sk.po | 18 +++--- src/po/sr.po | 26 ++++---- src/po/sv.po | 24 ++++---- src/po/uk.cp1251.po | 26 ++++---- src/po/uk.po | 26 ++++---- src/po/vi.po | 2 +- src/po/zh_CN.UTF-8.po | 12 ++-- src/po/zh_CN.cp936.po | 12 ++-- src/po/zh_CN.po | 12 ++-- src/po/zh_TW.UTF-8.po | 2 +- src/po/zh_TW.po | 2 +- 56 files changed, 503 insertions(+), 391 deletions(-) diff --git a/runtime/colors/tools/check_colors.vim b/runtime/colors/tools/check_colors.vim index 6c5e8f3c0f..b1aefa1126 100644 --- a/runtime/colors/tools/check_colors.vim +++ b/runtime/colors/tools/check_colors.vim @@ -90,7 +90,7 @@ func! Test_check_colors() let err['background'] = 'Should not issue :syn on' endif - " 7) Does not define filetype specfic groups like vimCommand, htmlTag, + " 7) Does not define filetype specific groups like vimCommand, htmlTag, let hi_groups = ['vim', 'html', 'python', 'sh', 'ruby'] for group in hi_groups let pat='\Chi\%[ghlight]\s*\zs'.group.'\w\+\>' diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index 703590a5f3..dfa46a9d93 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -670,7 +670,10 @@ DirChanged The working directory has changed in response ExitPre When using `:quit`, `:wq` in a way it makes Vim exit, or using `:qall`, just after |QuitPre|. Can be used to close any - non-essential window. + non-essential window. Exiting may still be + cancelled if there is a modified buffer that + isn't automatically saved, use |VimLeavePre| + for really exiting. *FileChangedShell* FileChangedShell When Vim notices that the modification time of a file has changed since editing started. @@ -1399,7 +1402,7 @@ Careful: '[ and '] change when using commands that change the buffer. In commands which expect a file name, you can use "" for the file name that is being read |:| (you can also use "%" for the current file name). "" can be used for the buffer number of the currently effective -buffer. This also works for buffers that doesn't have a name. But it doesn't +buffer. This also works for buffers that don't have a name. But it doesn't work for files without a buffer (e.g., with ":r file"). *gzip-example* diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt index bffb3e2833..72887fea0b 100644 --- a/runtime/doc/channel.txt +++ b/runtime/doc/channel.txt @@ -806,8 +806,14 @@ The text of the prompt can be set with the |prompt_setprompt()| function. The user can go to Normal mode and navigate through the buffer. This can be useful see older output or copy text. +The CTRL-W key can be used to start a window command, such as CTRL-W w to +switch to the next window. This also works in Insert mode (use Shift-CTRL-W +to delete a word). When leaving the window Insert mode will be stopped. When +coming back to the prompt window Insert mode will be restored. + Any command that starts Insert mode, such as "a", "i", "A" and "I", will move -the cursor to the last line, after the prompt. +the cursor to the last line. "A" will move to the end of the line, "I" to the +start of the line. vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt index d2c81967d1..ae364c3230 100644 --- a/runtime/doc/cmdline.txt +++ b/runtime/doc/cmdline.txt @@ -894,7 +894,8 @@ These modifiers can be given, in this order: directory. :. Reduce file name to be relative to current directory, if possible. File name is unmodified if it is not below the - current directory. + current directory, but on MS-Windows the drive is removed if + it is the current drive. For maximum shortness, use ":~:.". :h Head of the file name (the last component and any separators removed). Cannot be used with :e, :r or :t. diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 36e4f22bad..2243892aa7 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -5488,6 +5488,20 @@ job_start({command} [, {options}]) *job_start()* The returned Job object can be used to get the status with |job_status()| and stop the job with |job_stop()|. + Note that the job object will be deleted if there are no + references to it. This closes the stdin and stderr, which may + cause the job to fail with an error. To avoid this keep a + reference to the job. Thus instead of: > + call job_start('my-command') +< use: > + let myjob = job_start('my-command') +< and unlet "myjob" once the job is not needed or is past the + point where it would fail (e.g. when it prints a message on + startup). Keep in mind that variables local to a function + will cease to exist if the function returns. Use a + script-local variable if needed: > + let s:myjob = job_start('my-command') +< {options} must be a Dictionary. It can contain many optional items, see |job-options|. diff --git a/runtime/doc/ft_ada.txt b/runtime/doc/ft_ada.txt index b446faf173..1d08bbb07c 100644 --- a/runtime/doc/ft_ada.txt +++ b/runtime/doc/ft_ada.txt @@ -249,7 +249,7 @@ g:decada.Make_Command string External command used for |g:decada.Make()| (|'makeprg'|). *g:decada.Error_Format* -g:decada.Error_Format| string +g:decada.Error_Format string Error format (|'errorformat'|). ============================================================================== diff --git a/runtime/doc/ft_rust.txt b/runtime/doc/ft_rust.txt index 750ba76afc..b94e1f8f75 100644 --- a/runtime/doc/ft_rust.txt +++ b/runtime/doc/ft_rust.txt @@ -1,4 +1,6 @@ -*ft_rust.txt* Filetype plugin for Rust +*ft_rust.txt* For Vim version 8.1. Last change: 2017 Nov 02 + +This is documentation for the Rust filetype plugin. ============================================================================== CONTENTS *rust* diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt index 7c2547f105..0aeac148b5 100644 --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -434,11 +434,11 @@ An example for using CTRL-G U: > This makes it possible to use the cursor keys in Insert mode, without breaking the undo sequence and therefore using |.| (redo) will work as expected. -Also entering a text like (with the "(" mapping from above): > +Also entering a text like (with the "(" mapping from above): Lorem ipsum (dolor -will be repeatable by the |.|to the expected +will be repeatable by using |.| to the expected Lorem ipsum (dolor) diff --git a/runtime/doc/os_beos.txt b/runtime/doc/os_beos.txt index 4639566e48..148f5fe0e7 100644 --- a/runtime/doc/os_beos.txt +++ b/runtime/doc/os_beos.txt @@ -144,7 +144,7 @@ The default value for $VIM is set at compile time and can be determined with > :version The normal value is /boot/home/config/share/vim. If you don't like it you can -set the Vim environment variable to override this, or set 'helpfile' in your +set the VIM environment variable to override this, or set 'helpfile' in your .vimrc: > :if version >= 500 diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt index 8f4d30b126..e9953339a1 100644 --- a/runtime/doc/os_win32.txt +++ b/runtime/doc/os_win32.txt @@ -169,7 +169,7 @@ you will need to get a version older than that. ============================================================================== 6. Running under Windows 3.1 *win32-win3.1* - *win32s* *windows-3.1* *gui-w32s* + *win32s* *windows-3.1* *gui-w32s* *win16* There was a special version of gvim that runs under Windows 3.1 and 3.11. Support was removed in patch 7.4.1363. diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 88fda8ebfe..526231f70b 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1977,7 +1977,7 @@ set "lite_minlines" to the value you desire. Example: > LPC *lpc.vim* *ft-lpc-syntax* -LPC stands for a simple, memory-efficient language: Lars Pensj| C. The +LPC stands for a simple, memory-efficient language: Lars Pensjö C. The file name of LPC is usually *.c. Recognizing these files as LPC would bother users writing only C programs. If you want to use LPC syntax in Vim, you should set a variable in your .vimrc file: > diff --git a/runtime/doc/tags b/runtime/doc/tags index 9d5af7f2fd..cd14b3f679 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -5107,6 +5107,7 @@ ant.vim syntax.txt /*ant.vim* ap motion.txt /*ap* apache.vim syntax.txt /*apache.vim* append() eval.txt /*append()* +appendbufline() eval.txt /*appendbufline()* aquote motion.txt /*aquote* arabic.txt arabic.txt /*arabic.txt* arabicfonts arabic.txt /*arabicfonts* @@ -5770,6 +5771,7 @@ definitions intro.txt /*definitions* delete() eval.txt /*delete()* delete-insert change.txt /*delete-insert* delete-menus gui.txt /*delete-menus* +deletebufline() eval.txt /*deletebufline()* deleting change.txt /*deleting* demoserver.py channel.txt /*demoserver.py* design-assumptions develop.txt /*design-assumptions* @@ -8059,6 +8061,10 @@ profiling-variable eval.txt /*profiling-variable* progname-variable eval.txt /*progname-variable* progpath-variable eval.txt /*progpath-variable* progress.vim syntax.txt /*progress.vim* +prompt-buffer channel.txt /*prompt-buffer* +prompt_setcallback() eval.txt /*prompt_setcallback()* +prompt_setinterrupt() eval.txt /*prompt_setinterrupt()* +prompt_setprompt() eval.txt /*prompt_setprompt()* pronounce intro.txt /*pronounce* psql ft_sql.txt /*psql* ptcap.vim syntax.txt /*ptcap.vim* @@ -8990,10 +8996,13 @@ termdebug-commands terminal.txt /*termdebug-commands* termdebug-communication terminal.txt /*termdebug-communication* termdebug-customizing terminal.txt /*termdebug-customizing* termdebug-example terminal.txt /*termdebug-example* +termdebug-prompt terminal.txt /*termdebug-prompt* termdebug-starting terminal.txt /*termdebug-starting* termdebug-stepping terminal.txt /*termdebug-stepping* termdebug-variables terminal.txt /*termdebug-variables* termdebug_popup terminal.txt /*termdebug_popup* +termdebug_shortcuts terminal.txt /*termdebug_shortcuts* +termdebug_use_prompt terminal.txt /*termdebug_use_prompt* termdebug_wide terminal.txt /*termdebug_wide* terminal terminal.txt /*terminal* terminal-api terminal.txt /*terminal-api* @@ -9546,6 +9555,7 @@ whitespace pattern.txt /*whitespace* wildcard editing.txt /*wildcard* wildcards editing.txt /*wildcards* wildmenumode() eval.txt /*wildmenumode()* +win16 os_win32.txt /*win16* win32 os_win32.txt /*win32* win32-!start gui_w32.txt /*win32-!start* win32-PATH os_win32.txt /*win32-PATH* diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt index c7579fe8b3..dbf7e6483a 100644 --- a/runtime/doc/term.txt +++ b/runtime/doc/term.txt @@ -111,6 +111,16 @@ have a problem with this, disable bracketed paste by putting this in your If this is done while Vim is running the 't_BD' will be sent to the terminal to disable bracketed paste. +If your terminal supports bracketed paste, but the options are not set +automatically, you can try using something like this: > + + if &term =~ "screen" + let &t_BE = "\e[?2004h" + let &t_BD = "\e[?2004l" + exec "set t_PS=\e[200~" + exec "set t_PE=\e[201~" + endif +< *cs7-problem* Note: If the terminal settings are changed after running Vim, you might have an illegal combination of settings. This has been reported on Solaris 2.5 diff --git a/runtime/doc/terminal.txt b/runtime/doc/terminal.txt index a6c40f6ef1..395e7d2879 100644 --- a/runtime/doc/terminal.txt +++ b/runtime/doc/terminal.txt @@ -19,8 +19,8 @@ If the result is "1" you have it. Resizing |terminal-resizing| Terminal Modes |Terminal-mode| Cursor style |terminal-cursor-style| - Special keys |terminal-special-keys| Session |terminal-session| + Special keys |terminal-special-keys| Unix |terminal-unix| MS-Windows |terminal-ms-windows| 2. Terminal communication |terminal-communication| @@ -116,9 +116,12 @@ break: > < *options-in-terminal* After opening the terminal window and setting 'buftype' to "terminal" the -BufWinEnter autocommand event is triggered. This makes it possible to set +TerminalOpen autocommand event is triggered. This makes it possible to set options specifically for the window and buffer. Example: > - au BufWinEnter * if &buftype == 'terminal' | setlocal bufhidden=hide | endif + au TerminalOpen * if &buftype == 'terminal' | setlocal bufhidden=hide | endif +The is set to the terminal buffer, but if there is no window (hidden +terminal) then setting options will happen in the wrong buffer, therefore the +check for &buftype in the example. Mouse events (click and drag) are passed to the terminal. Mouse move events are only passed when Vim itself is receiving them. For a terminal that is @@ -449,7 +452,7 @@ Currently supported commands: of the terminal and {argument}, the decoded JSON argument. The function name must start with "Tapi_" to avoid accidentally calling a function not meant to be used for the - terminal API + terminal API. The user function should sanity check the argument. The function can use |term_sendkeys()| to send back a reply. Example in JSON: > @@ -885,7 +888,7 @@ vertical split: > let g:termdebug_wide = 163 This will set &columns to 163 when :Termdebug is used. The value is restored when quitting the debugger. -If g:termdebug_wide is set and &Columns is already larger than +If g:termdebug_wide is set and &columns is already larger than g:termdebug_wide then a vertical split will be used without changing &columns. Set it to 1 to get a vertical split without every changing &columns (useful for when the terminal can't be resized by Vim). diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index dbd293526b..c3385132c4 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -42,11 +42,35 @@ Prompt buffer: - Add a command line history. - delay next prompt until plugin gives OK? +Terminal debugger: +- Using terminal window: after "cont" in gdb window CTRL-C interrupts, but + after :Continue it does not. Mode of UI is changed? :Stop does work. +- patch from Christian to handle changing 'background' + and a patch to show breakpoint nr in sign. (June 14) +- Make prompt-buffer variant work better. +- Termdebug does not work when Vim was build with mzscheme: gdb hangs just + after "run". Everything else works, including communication channel. Not + initializing mzscheme avoid the problem, thus it's not some #ifdef. +- Show breakpoint number in the sign? (Uri Moszkowicz, 2018 Jun 13, #3007) +- Allow for users to create their own gdb mappings. Perhaps by making the gdb + buffer global? (Uri Moszkowicz, #3012) Or with a function to send a command + to gdb. + Terminal emulator window: -- Win32: Termdebug doesn't work, because gdb does not support mi2 on a tty. - This plugin: https://github.com/cpiger/NeoDebug runs gdb as a job, - redirecting input and output. - Open new console for for program with: "set new-console on" +- With a vertical split only one window is updated. (Linwei, 2018 Jun 2, + #2977) +- When typing : at the more prompt, instead of entering a new Vim command, the + : is inserted in the terminal window. Should skip terminal_loop here. + () +- When pasting should call vterm_keyboard_start_paste(), e.g. when using + K_MIDDLEMOUSE, calling insert_reg(). +- Users expect parsing the :term argument like a shell does, also support + single quotes. E.g. with: :term grep 'alice says "hello"' (#1999) +- When running a shell in a terminal to run Vim tests, CTRL-W : the command + line keeps getting cleard. Doing the same in another window is OK. (Jason + Franklin, 2018 Jun 17) +- How to access selection in Terminal running a shell? (damnskippy, 2018 May + 27, #29620 When terminal doesn't use the mouse, use modeless selection. - Win32: Redirecting input does not work, half of Test_terminal_redir_file() is disabled. - Win32: Redirecting output works but includes escape sequences. @@ -61,9 +85,6 @@ Terminal emulator window: http://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/head:/main.c#L134 - When 'encoding' is not utf-8, or the job is using another encoding, setup conversions. -- Termdebug does not work when Vim was build with mzscheme: gdb hangs just - after "run". Everything else works, including communication channel. Not - initializing mzscheme avoid the problem, thus it's not some #ifdef. Does not build with MinGW out of the box: - _stat64 is not defined, need to use "struct stat" in vim.h @@ -75,26 +96,32 @@ Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May On Win32 when not in the console and t_Co >= 256, allow using 'tgc'. (Nobuhiro Takasaki, #2833) Also check t_Co. -Patch to fix arguments of :edit. (Dominique Pelle, 2018 May 28 #2966) - -Ptch to update html syntax. (Jorge Maldonado Ventura, #2974) - -Patch to fix that restoring window doesn't work when 'winheight' is large. -(Darrell Nash, 2018 May 30, #2971) Doesn't work? Issue #2970 - -Patch to add completion to :unlet for environment vars. (Jason Franklin, 2018 -May 30) Last update. - Errors found with random data: heap-buffer-overflow in alist_add (#2472) More warnings from static analysis: https://lgtm.com/projects/g/vim/vim/alerts/?mode=list -Patch to make "is" and "as" work bettter. (Jason Franklin, 2018 May 19) +Patch to make "is" and "as" work better. (Jason Franklin, 2018 May 19) Patch to add tests for user and language completion. (Dominique Pelle, 2018 -Jun 2, #2978) +Jun 2, #2978) typo wk -> we +Patch to support user name completion on MS-Windows. (Yasuhiro Matsumoto, 2012 +Aug 16) + +Patch to add tests for libcall() and libcallnr(). (Dominique Pelle, #2982) + +Patch to fix that v:shell_error is always zero when using terminal for shell +command. (Ichizok, 2018 Jun 8, #2994) + +Patch to make test for terminal out&error more reliable. (Ichizok, 2018 Jun 8, +#2991) + +Patch to fix duplicate entry in tagfiles() and add a test. (Dominique Pelle, +#2979) + +Pasting foo} causes Vim to behave weird. (John Little, 2018 Jun 17) +Related to bracketed paste. Using ":file" in quickfix window during an autocommand doesn't work. (Jason Franklin, 2018 May 23) Allow for using it when there is no argument. @@ -107,6 +134,9 @@ Patch for xterm and vt320 builtin termcap. (Kouichi Iwamoto, 2018 May 31, Patch to add more testing for :cd command. (Dominique Pelle, 2018 May 30, #2972) +Patch to make mode() return something different for Normal mode when coming +from Insert mode with CTRL-O. (#3000) + Script generated by :mksession does not work well if there are windows with modified buffers change "silent only" into "silent only!" @@ -162,6 +192,12 @@ CreateFile() returns ERROR_SHARING_VIOLATION (Linwei, 2018 May 5) Should add a test for every command line argument. Check coverage for what is missing: --nofork, -A , -b, -h, etc. +":au * * command" should not be allowed, only use * for event when listing or +deleting autocmds, not when adding them. + +Quickfix window height is not kept with a vertical split. (Lifepillar, 2018 +Jun 10, #2998) + Patch for variable tabstops. On github (Christian Brabandt, 2014 May 15) Update 2018 March 12, #2711 @@ -215,7 +251,7 @@ Add the debug command line history to viminfo. Avoid that "sign unplace id" does a redraw right away, esp. when there is a sequence of these commands. (Andy Stewart, 2018 Mar 16) -ch_sendraw() with long string does not try to read inbetween, which may cause +ch_sendraw() with long string does not try to read in between, which may cause a deadlock if the reading side is waiting for the write to finish. (Nate Bosch, 2018 Jan 13, #2548) @@ -242,6 +278,9 @@ Using 'wildignore' also applies to literally entered file name. Also with Patch to support ":tag +- Remove any autocommands that might already be defined before defining + them. Example: > :au! * *.ext :au BufEnter *.ext ... diff --git a/runtime/doc/version8.txt b/runtime/doc/version8.txt index d927c54d6e..90784a0604 100644 --- a/runtime/doc/version8.txt +++ b/runtime/doc/version8.txt @@ -16113,7 +16113,7 @@ Files: src/edit.c, src/testdir/test_popup.vim Patch 8.0.0248 Problem: vim_strcat() cannot handle overlapping arguments. -Solution: Use mch_memmove() instead of strcpy(). (Justin M Keyes, +Solution: Use mch_memmove() instead of strcpy(). (Justin M. Keyes, closes #1415) Files: src/misc2.c @@ -16363,7 +16363,7 @@ Files: src/screen.c Patch 8.0.0287 Problem: Cannot access the arguments of the current function in debug mode. (Luc Hermitte) -Solution: use get_funccal(). (Lemonboy, closes #1432, closes #1352) +Solution: use get_funccal(). (LemonBoy, closes #1432, closes #1352) Files: src/userfunc.c Patch 8.0.0288 (after 8.0.0284) @@ -16728,7 +16728,7 @@ Files: src/gui_gtk_x11.c Patch 8.0.0350 Problem: Not enough test coverage for Perl. -Solution: Add more Perl tests. (Dominique Perl, closes #1500) +Solution: Add more Perl tests. (Dominique Pelle, closes #1500) Files: src/testdir/test_perl.vim Patch 8.0.0351 @@ -18229,7 +18229,7 @@ Files: src/edit.c, src/testdir/test_popup.vim Patch 8.0.0597 Problem: Off-by-one error in buffer size computation. -Solution: Use ">=" instead of ">". (Lemonboy, closes #1694) +Solution: Use ">=" instead of ">". (LemonBoy, closes #1694) Files: src/quickfix.c Patch 8.0.0598 @@ -18346,7 +18346,7 @@ Patch 8.0.0616 Problem: When setting the cterm background with ":hi Normal" the value of 'background' may be set wrongly. Solution: Check that the color is less than 16. Don't set 'background' when - it was set explicitly. (Lemonboy, closes #1710) + it was set explicitly. (LemonBoy, closes #1710) Files: src/syntax.c, src/testdir/test_syntax.vim Patch 8.0.0617 (after 8.0.0615) @@ -18477,8 +18477,8 @@ Files: src/gui_gtk.c Patch 8.0.0638 Problem: Cannot build with new MSVC version VS2017. -Solution: Change the compiler arguments. (Leonardo Manera, closes #1731, - closes #1747) +Solution: Change the compiler arguments. (Leonardo Valeri Manera, + closes #1731, closes #1747) Files: src/GvimExt/Makefile, src/Make_mvc.mak Patch 8.0.0639 @@ -19070,7 +19070,7 @@ Files: src/testdir/test_arglist.vim Patch 8.0.0724 Problem: The message for yanking doesn't indicate the register. -Solution: Show the register name in the "N lines yanked" message. (Lemonboy, +Solution: Show the register name in the "N lines yanked" message. (LemonBoy, closes #1803, closes #1809) Files: src/ops.c, src/Makefile, src/testdir/test_registers.vim, src/testdir/Make_all.mak @@ -21611,7 +21611,7 @@ Files: src/configure.ac, src/auto/configure Patch 8.0.1157 Problem: Compiler warning on MS-Windows. -Solution: Add type cast. (Yasuhiro Matsomoto) +Solution: Add type cast. (Yasuhiro Matsumoto) Files: src/main.c Patch 8.0.1158 @@ -21911,7 +21911,7 @@ Files: runtime/doc/autocmd.txt, src/ex_getln.c, src/fileio.c, src/vim.h, Patch 8.0.1207 Problem: Profiling skips the first and last script line. -Solution: Check for BOM after setting script ID. (Lemonboy, closes #2103, +Solution: Check for BOM after setting script ID. (LemonBoy, closes #2103, closes #2112) Add a test. List the trailing script lines. Files: src/testdir/test_profile.vim, src/ex_cmds2.c @@ -22108,7 +22108,7 @@ Problem: Mac features are confusing. Solution: Make feature names more consistent, add "osxdarwin". Rename feature flags, cleanup Mac code. (Kazunobu Kuriyama, closes #2178) Also includes a fix for when Ruby throws an exception inside - :rubyfile.(ujihisa) + :rubyfile. (ujihisa) Files: runtime/doc/eval.txt, runtime/doc/os_mac.txt, src/auto/configure, src/config.h.in, src/configure.ac, src/digraph.c, src/edit.c, src/evalfunc.c, src/feature.h, src/fileio.c, src/getchar.c, @@ -23256,7 +23256,7 @@ Files: src/screen.c Patch 8.0.1423 Problem: Error in return not caught by try/catch. -Solution: Call update_force_abort(). (Yasuhiro Matsomoto, closes #2483) +Solution: Call update_force_abort(). (Yasuhiro Matsumoto, closes #2483) Files: src/testdir/test_eval.in, src/testdir/test_eval_stuff.vim, src/Makefile, src/testdir/Make_all.mak, src/userfunc.c @@ -23287,7 +23287,7 @@ Files: src/ex_getln.c Patch 8.0.1429 Problem: Crash when calling term_start() with empty argument. -Solution: Check for invalid argument. (Yasuhiro Matsomoto, closes #2503) +Solution: Check for invalid argument. (Yasuhiro Matsumoto, closes #2503) Fix memory leak. Files: src/terminal.c, src/testdir/test_terminal.vim @@ -23677,7 +23677,7 @@ Files: src/misc2.c, src/evalfunc.c Patch 8.0.1493 Problem: Completion items cannot be annotated. Solution: Add a "user_data" entry to the completion item. (Ben Jackson, - coses #2608, closes #2508) + closes #2608, closes #2508) Files: runtime/doc/insert.txt, src/edit.c, src/structs.h, src/testdir/test_ins_complete.vim @@ -24187,8 +24187,8 @@ Files: src/os_unix.c Patch 8.0.1573 Problem: getwinpos(1) may cause response to be handled as command. -Solution: Handle any cursor position report once one was request. (partly by - Hirohito Higashi) +Solution: Handle any cursor position report once one was requested. (partly + by Hirohito Higashi) Files: src/term.c Patch 8.0.1574 @@ -24669,7 +24669,7 @@ Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim Patch 8.0.1656 Problem: No option to have xxd produce upper case variable names. -Solution: Add the -C argument. (Matt Panaro closes #2772) +Solution: Add the -C argument. (Matt Panaro, closes #2772) Files: src/xxd/xxd.c Patch 8.0.1657 @@ -25402,7 +25402,7 @@ Files: src/testdir/test_quickfix.vim, src/fileio.c, src/proto/fileio.pro, Patch 8.0.1782 Problem: No simple way to label quickfix entries. Solution: Add the "module" item, to be used instead of the file name for - display purposes. (Martin Szamotulski, closes #1757) + display purposes. (Marcin Szamotulski, closes #1757) Files: runtime/doc/eval.txt, runtime/doc/quickfix.txt, src/alloc.h, src/quickfix.c, src/testdir/test_quickfix.vim diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index e88cfcb935..f7045b8641 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -223,9 +223,9 @@ CTRL-W ^ Does ":split #", split window in two and edit alternate file. and edit buffer N. *CTRL-W_:* -CTRL-W : Does the same as typing |:| : edit a command line. Useful in a +CTRL-W : Does the same as typing |:| - enter a command line. Useful in a terminal window, where all Vim commands must be preceded with - CTRL-W or 'termkey'. + CTRL-W or 'termwinkey'. Note that the 'splitbelow' and 'splitright' options influence where a new window will appear. diff --git a/runtime/syntax/debcontrol.vim b/runtime/syntax/debcontrol.vim index 3504780445..e630373c70 100644 --- a/runtime/syntax/debcontrol.vim +++ b/runtime/syntax/debcontrol.vim @@ -3,7 +3,7 @@ " Maintainer: Debian Vim Maintainers " Former Maintainers: Gerfried Fuchs " Wichert Akkerman -" Last Change: 2018 Jan 28 +" Last Change: 2018 May 31 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim " Standard syntax initialization @@ -40,8 +40,8 @@ let s:pairs = [ " Define some common expressions we can use later on syn keyword debcontrolArchitecture contained all any -exe 'syn keyword debcontrolArchitecture contained '. join(map(s:kernels, {k,v -> v .'-any'})) -exe 'syn keyword debcontrolArchitecture contained '. join(map(s:archs, {k,v -> 'any-'.v})) +exe 'syn keyword debcontrolArchitecture contained '. join(map(copy(s:kernels), {k,v -> v .'-any'})) +exe 'syn keyword debcontrolArchitecture contained '. join(map(copy(s:archs), {k,v -> 'any-'.v})) exe 'syn keyword debcontrolArchitecture contained '. join(s:archs) exe 'syn keyword debcontrolArchitecture contained '. join(s:pairs) diff --git a/runtime/syntax/html.vim b/runtime/syntax/html.vim index 991fd8af39..cde5269d02 100644 --- a/runtime/syntax/html.vim +++ b/runtime/syntax/html.vim @@ -3,8 +3,8 @@ " Maintainer: Jorge Maldonado Ventura " Previous Maintainer: Claudio Fleiner " Repository: https://notabug.org/jorgesumle/vim-html-syntax -" Last Change: 2017 Dec 16 -" Included patch from Jorge Maldonado Ventura to add the dialog element +" Last Change: 2018 May 31 +" Included patch from Jay Sitter to add WAI-ARIA htmlArg keywords " " Please check :help html.vim for some comments and a description of the options @@ -77,6 +77,29 @@ syn keyword htmlArg contained size src start target text type url syn keyword htmlArg contained usemap ismap valign value vlink vspace width wrap syn match htmlArg contained "\<\(http-equiv\|href\|title\)="me=e-1 +" aria attributes +syn match htmlArg contained "\<\(aria-activedescendant\|aria-atomic\)\>" +syn match htmlArg contained "\<\(aria-autocomplete\|aria-busy\|aria-checked\)\>" +syn match htmlArg contained "\<\(aria-colcount\|aria-colindex\|aria-colspan\)\>" +syn match htmlArg contained "\<\(aria-controls\|aria-current\)\>" +syn match htmlArg contained "\<\(aria-describedby\|aria-details\)\>" +syn match htmlArg contained "\<\(aria-disabled\|aria-dropeffect\)\>" +syn match htmlArg contained "\<\(aria-errormessage\|aria-expanded\)\>" +syn match htmlArg contained "\<\(aria-flowto\|aria-grabbed\|aria-haspopup\)\>" +syn match htmlArg contained "\<\(aria-hidden\|aria-invalid\)\>" +syn match htmlArg contained "\<\(aria-keyshortcuts\|aria-label\)\>" +syn match htmlArg contained "\<\(aria-labelledby\|aria-level\|aria-live\)\>" +syn match htmlArg contained "\<\(aria-modal\|aria-multiline\)\>" +syn match htmlArg contained "\<\(aria-multiselectable\|aria-orientation\)\>" +syn match htmlArg contained "\<\(aria-owns\|aria-placeholder\|aria-posinset\)\>" +syn match htmlArg contained "\<\(aria-pressed\|aria-readonly\|aria-relevant\)\>" +syn match htmlArg contained "\<\(aria-required\|aria-roledescription\)\>" +syn match htmlArg contained "\<\(aria-rowcount\|aria-rowindex\|aria-rowspan\)\>" +syn match htmlArg contained "\<\(aria-selected\|aria-setsize\|aria-sort\)\>" +syn match htmlArg contained "\<\(aria-valuemax\|aria-valuemin\)\>" +syn match htmlArg contained "\<\(aria-valuenow\|aria-valuetext\)\>" +syn keyword htmlArg contained role + " Netscape extensions syn keyword htmlTagName contained frame noframes frameset nobr blink syn keyword htmlTagName contained layer ilayer nolayer spacer diff --git a/src/po/README.txt b/src/po/README.txt index 60a7e0abcc..d283210644 100644 --- a/src/po/README.txt +++ b/src/po/README.txt @@ -49,8 +49,14 @@ We will use "xx.po" as an example here, replace "xx" with the name of your language. - Edit Makefile to add xx to LANGUAGES and xx.mo to MOFILES. -- Copy the header of an existing file, e.g., de.po, to xx.po. Do not copy any - of the translated messages, delete everything after the "msgstr". +- If you haven't done so already, run ./configure in the top vim directory + (i.e. go up two directories) and then come back here afterwards. +- Execute these commands: + % make vim.pot + % msginit -l xx + % rm vim.pot + The first command will generate a vim.pot file which is used by msginit to + generate a correct xx.po file. After that vim.pot is not needed. - The remaining work is like updating, see the next section. diff --git a/src/po/af.po b/src/po/af.po index 0862e5d0d1..2acbd4153f 100644 --- a/src/po/af.po +++ b/src/po/af.po @@ -2409,8 +2409,8 @@ msgstr "-f\t\t\tMoet nie 'newcli' gebruik om venster oop te maak nie" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tGebruik vir I/O" -msgid "-A\t\t\tstart in Arabic mode" -msgstr "-A\t\t\tbegin in Arabiese modus" +msgid "-A\t\t\tStart in Arabic mode" +msgstr "-A\t\t\tBegin in Arabiese modus" msgid "-H\t\t\tStart in Hebrew mode" msgstr "-H\t\t\tBegin in Hebreeuse modus" diff --git a/src/po/ca.po b/src/po/ca.po index 834749973e..c89e8c0edc 100644 --- a/src/po/ca.po +++ b/src/po/ca.po @@ -3021,7 +3021,7 @@ msgstr "-f\t\t\tNo obre una finestra nova amb newcli" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUsa per a l'E/S" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tComena en mode arbic" msgid "-H\t\t\tStart in Hebrew mode" @@ -4797,8 +4797,8 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Memria insuficient per a recrrer la branca!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " -msgstr "No es pot obrir un fitxer temporal de logs, s'escriu a stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " +msgstr "No es pot obrir un fitxer temporal de logs, s'escriu a stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5035,8 +5035,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: error en llegir el fitxer .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Llegint el fitxer d'afixos %s ..." +msgid "Reading affix file %s..." +msgstr "Llegint el fitxer d'afixos %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5166,8 +5166,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "el valor %s difereix de l'usat en un altre fitxer .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Llegint el fitxer de diccionari %s ..." +msgid "Reading dictionary file %s..." +msgstr "Llegint el fitxer de diccionari %s..." #, c-format msgid "E760: No word count in %s" @@ -5194,8 +5194,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "S'ignora/en %d paraula/es amb carcters no-ASCII a %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Llegint el fitxer de paraules %s ..." +msgid "Reading word file %s..." +msgstr "Llegint el fitxer de paraules %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5251,8 +5251,8 @@ msgid "Total number of words: %d" msgstr "Nombre total de paraules: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Escrivint el fitxer de suggeriments %s ..." +msgid "Writing suggestion file %s..." +msgstr "Escrivint el fitxer de suggeriments %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5272,8 +5272,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Atenci: s'ha especificat composici i NOBREAK alhora" #, c-format -msgid "Writing spell file %s ..." -msgstr "Escrivint el fitxer d'ortografia %s ..." +msgid "Writing spell file %s..." +msgstr "Escrivint el fitxer d'ortografia %s..." msgid "Done!" msgstr "Fet!" diff --git a/src/po/de.po b/src/po/de.po index 2c54b9ac54..335908ed35 100644 --- a/src/po/de.po +++ b/src/po/de.po @@ -3090,7 +3090,7 @@ msgstr "-f\t\t\tVerwende nicht newcli zum msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tVerwende for I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tStart im Arabischen Modus" msgid "-H\t\t\tStart in Hebrew mode" @@ -4958,10 +4958,10 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Konnte nicht Speicher allokieren um ste zu durchlaufen!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Konnte temporre Datei zum Schreiben ffnen, zeige auf Standard " -"Fehlerausgabe ... " +"Fehlerausgabe... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5189,8 +5189,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: Fehler beim Lesen der .sug Datei: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Lese Affix-Datei %s ..." +msgid "Reading affix file %s..." +msgstr "Lese Affix-Datei %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5329,8 +5329,8 @@ msgstr "" "verwendet wird" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Lese Wrterbuch-Datei %s ..." +msgid "Reading dictionary file %s..." +msgstr "Lese Wrterbuch-Datei %s..." #, c-format msgid "E760: No word count in %s" @@ -5356,8 +5356,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "%d Wort(e) mit nicht-ASCII Zeichen ignoriert in %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Lese Wort-Datei %s ..." +msgid "Reading word file %s..." +msgstr "Lese Wort-Datei %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5413,8 +5413,8 @@ msgid "Total number of words: %d" msgstr "Gesamte Anzahl von Wrtern: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Schreibe Datei %s fr Vorschlge ..." +msgid "Writing suggestion file %s..." +msgstr "Schreibe Datei %s fr Vorschlge..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5434,8 +5434,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Achtung: Sowohl zusammengesetzte Wrter als auch NOBREAK angegeben" #, c-format -msgid "Writing spell file %s ..." -msgstr "Schreibe Rechtschreibwrterbuch %s ..." +msgid "Writing spell file %s..." +msgstr "Schreibe Rechtschreibwrterbuch %s..." msgid "Done!" msgstr "Fertig!" diff --git a/src/po/eo.po b/src/po/eo.po index 389597c5b7..55857a68ac 100644 --- a/src/po/eo.po +++ b/src/po/eo.po @@ -3069,7 +3069,7 @@ msgstr "-f\t\t\tNe uzi newcli por malfermi fenestrojn" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUzi -n por eneligo" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tKomenci en araba reĝimo" msgid "-H\t\t\tStart in Hebrew mode" @@ -4915,10 +4915,10 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Ne povis asigni memoron por traigi branĉojn!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Ne povis malfermi provizoran protokolan dosieron por skribi, nun montras sur " -"stderr ..." +"stderr..." #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5144,8 +5144,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: eraro dum legado de dosiero .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Legado de afiksa dosiero %s ..." +msgid "Reading affix file %s..." +msgstr "Legado de afiksa dosiero %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5280,8 +5280,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Valoro de %s malsamas ol tiu en alia dosiero .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Legado de vortardosiero %s ..." +msgid "Reading dictionary file %s..." +msgstr "Legado de vortardosiero %s..." #, c-format msgid "E760: No word count in %s" @@ -5308,8 +5308,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "%d ignorita(j) vorto(j) kun neaskiaj signoj en %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Legado de dosiero de vortoj %s ..." +msgid "Reading word file %s..." +msgstr "Legado de dosiero de vortoj %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5365,8 +5365,8 @@ msgid "Total number of words: %d" msgstr "Totala nombro de vortoj: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Skribado de dosiero de sugesto %s ..." +msgid "Writing suggestion file %s..." +msgstr "Skribado de dosiero de sugesto %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5387,8 +5387,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Averto: ambaŭ NOBREAK kaj NOBREAK specifitaj" #, c-format -msgid "Writing spell file %s ..." -msgstr "Skribado de literuma dosiero %s ..." +msgid "Writing spell file %s..." +msgstr "Skribado de literuma dosiero %s..." msgid "Done!" msgstr "Farita!" diff --git a/src/po/es.po b/src/po/es.po index 94c8631e7c..b2dbc0a977 100644 --- a/src/po/es.po +++ b/src/po/es.po @@ -3962,7 +3962,7 @@ msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUsar para I/O" #: main.c:3104 -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tIniciar en modo árabe" #: main.c:3107 @@ -6414,7 +6414,7 @@ msgstr "Advertencia: la región %s no es compatible" #: spell.c:5307 #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "Leyendo el archivo de afijos \"%s\"..." #: spell.c:5355 spell.c:6699 spell.c:7278 @@ -6584,8 +6584,8 @@ msgstr "El valor %s difiere de los que se usa en otro archivo .aff" #: spell.c:6660 #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Leyendo el archivo de diccionario %s ..." +msgid "Reading dictionary file %s..." +msgstr "Leyendo el archivo de diccionario %s..." #: spell.c:6669 #, c-format @@ -6619,8 +6619,8 @@ msgstr "Ignorando %d palabra(s) con caracteres no-ASCII en %s" #: spell.c:7247 #, c-format -msgid "Reading word file %s ..." -msgstr "Leyendo archivo de palabras \"%s\" ..." +msgid "Reading word file %s..." +msgstr "Leyendo archivo de palabras \"%s\"..." #: spell.c:7297 #, c-format @@ -6691,8 +6691,8 @@ msgstr "Número total de palabras: %d" #: spell.c:9096 #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Escribiendo el archivo de sugerencias %s ..." +msgid "Writing suggestion file %s..." +msgstr "Escribiendo el archivo de sugerencias %s..." #: spell.c:9157 spell.c:9418 #, c-format @@ -6719,8 +6719,8 @@ msgstr "Advertencia: Se especificó \"compounding\" y NOBREAK" #: spell.c:9411 #, c-format -msgid "Writing spell file %s ..." -msgstr "Escribiendo archivo de ortografía \"%s\" ..." +msgid "Writing spell file %s..." +msgstr "Escribiendo archivo de ortografía \"%s\"..." #: spell.c:9416 msgid "Done!" diff --git a/src/po/fi.po b/src/po/fi.po index 73136d9d01..cbafc54bdd 100644 --- a/src/po/fi.po +++ b/src/po/fi.po @@ -3033,7 +3033,7 @@ msgstr "-f\t\t\tÄlä käytä newcli:tä ikkunan avaamiseen" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tKäytä IO:hon" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tkäynnistä arabia-tilassa" msgid "-H\t\t\tStart in Hebrew mode" @@ -4851,7 +4851,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Ei voitu allokoida muistia polkujen läpikäyntiin" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Ei voitu avata väliaikaislokitiedosta kirjoittamista varten, joten virheet " "näytetään vakiovirhevirrassa. " @@ -5081,7 +5081,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: virhe luettaessa .sug-tiedostoa: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "Luetaan affiksitiedostoa %s..." #, c-format @@ -5218,7 +5218,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s-arvo eroaa toisessa .aff-tiedostossa olevasta" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "Luetaan sanakirjatiedostoa %s" #, c-format @@ -5246,7 +5246,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Ei-ASCII-merkkien takia ohitettuja sanoja %d kohteessa %s" #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "Luetaan sanatiedostoa %s..." #, c-format @@ -5303,7 +5303,7 @@ msgid "Total number of words: %d" msgstr "Sanoja yhteensä: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "Kirjoitetaan ehdotustiedostoa %s..." #, c-format @@ -5324,7 +5324,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Varoitus: sekä yhdyssanamuodostus että NOBREAK käytössä" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "Kirjoitetaan oikaisulukutiedostoa %s..." msgid "Done!" diff --git a/src/po/fr.po b/src/po/fr.po index d70346c39d..d943e5a6de 100644 --- a/src/po/fr.po +++ b/src/po/fr.po @@ -3282,7 +3282,7 @@ msgstr "-f\t\tNe pas utiliser newcli pour l'ouverture des fen msgid "-dev \t\tUse for I/O" msgstr "-dev \tUtiliser pour les E/S" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\tDmarrer en mode arabe" msgid "-H\t\t\tStart in Hebrew mode" @@ -5146,10 +5146,10 @@ msgstr "" "E878: (NFA) Impossible d'allouer la mmoire pour parcourir les branches !" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Impossible d'ouvrir le fichier de log temporaire en criture, affichage sur " -"stderr ... " +"stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5377,7 +5377,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: Erreur lors de la lecture de fichier de suggestions : %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "Lecture du fichier d'affixes %s..." #, c-format @@ -5517,7 +5517,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "La valeur de %s est diffrente de celle d'un autre fichier .aff" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "Lecture du fichier orthographique %s..." #, c-format @@ -5545,7 +5545,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "%d mot(s) ignor(s) avec des caractres non-ASCII dans %s" #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "Lecture de la liste de mots %s..." #, c-format @@ -5602,7 +5602,7 @@ msgid "Total number of words: %d" msgstr "Nombre total de mots : %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "criture du fichier de suggestions %s..." #, c-format @@ -5624,7 +5624,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Alerte : la composition et NOBREAK sont tous les deux spcifis" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "criture du fichier orthographique %s..." msgid "Done!" diff --git a/src/po/ga.po b/src/po/ga.po index d409560f6b..6c66d3d71a 100644 --- a/src/po/ga.po +++ b/src/po/ga.po @@ -3071,8 +3071,8 @@ msgstr "-f\t\t\tN msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tBain sid as do I/A" -msgid "-A\t\t\tstart in Arabic mode" -msgstr "-A\t\t\ttosaigh sa mhd Araibise" +msgid "-A\t\t\tStart in Arabic mode" +msgstr "-A\t\t\tTosaigh sa mhd Araibise" msgid "-H\t\t\tStart in Hebrew mode" msgstr "-H\t\t\tTosaigh sa mhd Eabhraise" @@ -4943,7 +4943,7 @@ msgstr "" "thrasnal!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Norbh fhidir logchomhad sealadach a oscailt le scrobh ann, thaispeint " "ar stderr..." @@ -5178,7 +5178,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: earrid agus comhad .sug lamh: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "Comhad foircinn %s lamh..." #, c-format @@ -5314,8 +5314,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "T difear idir luach %s agus an luach i gcomhad .aff eile" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Foclir %s lamh ..." +msgid "Reading dictionary file %s..." +msgstr "Foclir %s lamh..." #, c-format msgid "E760: No word count in %s" @@ -5342,8 +5342,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Rinneadh neamhshuim ar %d focal le carachtair neamh-ASCII i %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Comhad focail %s lamh ..." +msgid "Reading word file %s..." +msgstr "Comhad focail %s lamh..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5404,8 +5404,8 @@ msgid "Total number of words: %d" msgstr "Lon iomln na bhfocal: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Comhad molta %s scrobh ..." +msgid "Writing suggestion file %s..." +msgstr "Comhad molta %s scrobh..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5425,8 +5425,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Rabhadh: sonraodh comhfhocail agus NOBREAK araon" #, c-format -msgid "Writing spell file %s ..." -msgstr "Comhad litrithe %s scrobh ..." +msgid "Writing spell file %s..." +msgstr "Comhad litrithe %s scrobh..." msgid "Done!" msgstr "Crochnaithe!" diff --git a/src/po/it.po b/src/po/it.po index 550c2c7ce5..675e2823ca 100644 --- a/src/po/it.po +++ b/src/po/it.po @@ -3069,7 +3069,7 @@ msgstr "-f\t\t\tNon usare newcli per aprire finestra" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUsa per I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tComincia in modalit Araba" msgid "-H\t\t\tStart in Hebrew mode" @@ -4901,9 +4901,9 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Non posso allocare memoria per il zigzag di ramo!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" -"Non posso aprire il file temporaneo per la scrittura, mostro su stderr ... " +"Non posso aprire il file temporaneo per la scrittura, mostro su stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5129,8 +5129,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: Errore leggendo il file .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Lettura file affissi %s ..." +msgid "Reading affix file %s..." +msgstr "Lettura file affissi %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5265,8 +5265,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Il valore di %s diverso da quello usato in un altro file .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Lettura file dizionario %s ..." +msgid "Reading dictionary file %s..." +msgstr "Lettura file dizionario %s..." #, c-format msgid "E760: No word count in %s" @@ -5292,8 +5292,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "%d parole con caratteri non-ASCII ignorate in %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Lettura file parole %s ..." +msgid "Reading word file %s..." +msgstr "Lettura file parole %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5349,8 +5349,8 @@ msgid "Total number of words: %d" msgstr "Conteggio totale delle parole: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Scrivo file di suggerimenti %s ..." +msgid "Writing suggestion file %s..." +msgstr "Scrivo file di suggerimenti %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5370,8 +5370,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Avviso: specificati sia composizione sia NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Scrivo file ortografico %s ..." +msgid "Writing spell file %s..." +msgstr "Scrivo file ortografico %s..." msgid "Done!" msgstr "Fatto!" diff --git a/src/po/ja.euc-jp.po b/src/po/ja.euc-jp.po index 0a92f04fb0..ade8d153c1 100644 --- a/src/po/ja.euc-jp.po +++ b/src/po/ja.euc-jp.po @@ -3053,7 +3053,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tI/O Ѥ" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tӥ⡼ɤǵư" msgid "-H\t\t\tStart in Hebrew mode" @@ -4881,7 +4881,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) ߲Υ֥˽ʬʥƤޤ!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "NFAɽ󥸥ѤΥեѤȤƳޤ󡣥ɸϤ" "Ϥޤ" @@ -5113,7 +5113,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug եɹ˥顼ȯޤ: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "affix ե %s ɹ..." #, c-format @@ -5250,7 +5250,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr " %s ¾ .aff եǻѤ줿ΤȰۤʤޤ" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "ե %s 򥹥..." #, c-format @@ -5278,8 +5278,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "ASCIIʸޤ %d Ĥñ̵뤷ޤ (%s )" #, c-format -msgid "Reading word file %s ..." -msgstr "ɸϤɹ %s ..." +msgid "Reading word file %s..." +msgstr "ɸϤɹ %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5335,7 +5335,7 @@ msgid "Total number of words: %d" msgstr "ñ: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "ե \"%s\" ..." #, c-format @@ -5357,7 +5357,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "ٹ: ʣե饰 NOBREAK ξȤꤵޤ" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "ڥե %s ..." msgid "Done!" diff --git a/src/po/ja.po b/src/po/ja.po index 99c468317f..2cfdb8b169 100644 --- a/src/po/ja.po +++ b/src/po/ja.po @@ -3053,7 +3053,7 @@ msgstr "-f\t\t\tウィンドウを開くのに newcli を使用しない" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tI/Oに を使用する" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tアラビア語モードで起動する" msgid "-H\t\t\tStart in Hebrew mode" @@ -4881,7 +4881,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) 現在横断中のブランチに十分なメモリを割り当てられません!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "NFA正規表現エンジン用のログファイルを書込用として開けません。ログは標準出力に" "出力します。" @@ -5113,7 +5113,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug ファイルの読込中にエラーが発生しました: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "affix ファイル %s を読込中..." #, c-format @@ -5250,7 +5250,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "値 %s は他の .aff ファイルで使用されたのと異なります" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "辞書ファイル %s をスキャン中..." #, c-format @@ -5278,8 +5278,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "非ASCII文字を含む %d 個の単語を無視しました (%s 内)" #, c-format -msgid "Reading word file %s ..." -msgstr "標準入力から読込み中 %s ..." +msgid "Reading word file %s..." +msgstr "標準入力から読込み中 %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5335,7 +5335,7 @@ msgid "Total number of words: %d" msgstr "総単語数: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "修正候補ファイル \"%s\" を書込み中..." #, c-format @@ -5357,7 +5357,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "警告: 複合フラグと NOBREAK が両方とも指定されました" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "スペルファイル %s を書込み中..." msgid "Done!" diff --git a/src/po/ja.sjis.po b/src/po/ja.sjis.po index 02fff41844..6656790555 100644 --- a/src/po/ja.sjis.po +++ b/src/po/ja.sjis.po @@ -3053,7 +3053,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tI/O gp" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tArAꃂ[hŋN" msgid "-H\t\t\tStart in Hebrew mode" @@ -4881,7 +4881,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) ݉f̃u`ɏ\\ȃ蓖Ă܂!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "NFAK\\GWp̃Ot@CpƂĊJ܂BO͕Wo͂" "o͂܂B" @@ -5113,7 +5113,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug t@C̓ǍɃG[܂: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "affix t@C %s Ǎ..." #, c-format @@ -5250,7 +5250,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "l %s ͑ .aff t@CŎgpꂽ̂ƈقȂ܂" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "t@C %s XL..." #, c-format @@ -5278,8 +5278,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "ASCII܂ %d ‚̒P𖳎܂ (%s )" #, c-format -msgid "Reading word file %s ..." -msgstr "W͂Ǎݒ %s ..." +msgid "Reading word file %s..." +msgstr "W͂Ǎݒ %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5335,7 +5335,7 @@ msgid "Total number of words: %d" msgstr "Pꐔ: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "Ct@C \"%s\" ݒ..." #, c-format @@ -5357,7 +5357,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "x: tO NOBREAK Ƃw肳܂" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "Xyt@C %s ݒ..." msgid "Done!" diff --git a/src/po/ko.UTF-8.po b/src/po/ko.UTF-8.po index 1aeecd23ab..1484b6a3a2 100644 --- a/src/po/ko.UTF-8.po +++ b/src/po/ko.UTF-8.po @@ -3016,7 +3016,7 @@ msgstr "-f\t\t\t창을 열 때 newcli 사용하지 않음" msgid "-dev \t\tUse for I/O" msgstr "-dev <장치>\t\tI/O에 <장치> 사용" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tArabic 모드로 시작" msgid "-H\t\t\tStart in Hebrew mode" @@ -4817,7 +4817,7 @@ msgstr "E879: (NFA 정규표현식) \\z(가 너무 많습니다" #~ msgstr "" #~ msgid "" -#~ "Could not open temporary log file for writing, displaying on stderr ... " +#~ "Could not open temporary log file for writing, displaying on stderr... " #~ msgstr "" #, c-format @@ -5047,7 +5047,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug 파일 읽기 에러: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "affix 파일 %s 읽는 중" #, c-format @@ -5183,7 +5183,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s 값이 다른 .aff 파일에서 사용된 것과 다릅니다" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "사전 파일 %s 읽는 중 ..." #, c-format @@ -5211,7 +5211,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "무시된 %d개의 아스키문자열이 아닌 단어가 %s에 있습니다" #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "단어 파일 %s 읽는 중 ..." #, c-format @@ -5272,7 +5272,7 @@ msgid "Total number of words: %d" msgstr "총 단어 수: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "%s 제안 파일을 쓰는 중 ..." #, c-format @@ -5293,7 +5293,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "경고: compound와 NOBREAK 둘 다 명시됨" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "spell 파일 %s 쓰는 중 ..." msgid "Done!" diff --git a/src/po/ko.po b/src/po/ko.po index ddddf3451d..a315e68d5e 100644 --- a/src/po/ko.po +++ b/src/po/ko.po @@ -3016,7 +3016,7 @@ msgstr "-f\t\t\tâ msgid "-dev \t\tUse for I/O" msgstr "-dev <ġ>\t\tI/O <ġ> " -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tArabic " msgid "-H\t\t\tStart in Hebrew mode" @@ -4817,7 +4817,7 @@ msgstr "E879: (NFA #~ msgstr "" #~ msgid "" -#~ "Could not open temporary log file for writing, displaying on stderr ... " +#~ "Could not open temporary log file for writing, displaying on stderr... " #~ msgstr "" #, c-format @@ -5047,7 +5047,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug б : %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "affix %s д " #, c-format @@ -5183,7 +5183,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s ٸ .aff Ͽ Ͱ ٸϴ" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr " %s д ..." #, c-format @@ -5211,7 +5211,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "õ %d ƽŰڿ ƴ ܾ %s ֽϴ" #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "ܾ %s д ..." #, c-format @@ -5272,8 +5272,8 @@ msgid "Total number of words: %d" msgstr " ܾ : %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "%s ..." +msgid "Writing suggestion file %s..." +msgstr "%s ..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5293,8 +5293,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr ": compound NOBREAK õ" #, c-format -msgid "Writing spell file %s ..." -msgstr "spell %s ..." +msgid "Writing spell file %s..." +msgstr "spell %s ..." msgid "Done!" msgstr "!" diff --git a/src/po/nb.po b/src/po/nb.po index c8bb08d1a3..3fe23dcac9 100644 --- a/src/po/nb.po +++ b/src/po/nb.po @@ -2920,7 +2920,7 @@ msgstr "-f\t\t\tIkke bruk newcli for msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tBruk for I/U" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tStart i arabisk modus" msgid "-H\t\t\tStart in Hebrew mode" @@ -4771,8 +4771,8 @@ msgid "Warning: region %s not supported" msgstr "Advarsel: Region %s ikke stttet" #, c-format -msgid "Reading affix file %s ..." -msgstr "Leser affiksfil %s ..." +msgid "Reading affix file %s..." +msgstr "Leser affiksfil %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -4900,8 +4900,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s-verdi er forskjellig fra det som er bruk i en annen .aff-fil" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Leser ordlistefil %s ..." +msgid "Reading dictionary file %s..." +msgstr "Leser ordlistefil %s..." #, c-format msgid "E760: No word count in %s" @@ -4928,8 +4928,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Ignorerte %d ord med ikke-ASCII-tegn i %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Leser ordfil %s ..." +msgid "Reading word file %s..." +msgstr "Leser ordfil %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -4987,8 +4987,8 @@ msgid "Total number of words: %d" msgstr "Totalt antall ord: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Skriver forslagsfil %s ..." +msgid "Writing suggestion file %s..." +msgstr "Skriver forslagsfil %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5008,8 +5008,8 @@ msgstr "E755: Ugyldig region i %s" #~ msgstr "" #, c-format -msgid "Writing spell file %s ..." -msgstr "Lagrer stavefil %s ..." +msgid "Writing spell file %s..." +msgstr "Lagrer stavefil %s..." msgid "Done!" msgstr "Ferdig!" diff --git a/src/po/nl.po b/src/po/nl.po index 1a9f72a48c..c609f84f48 100644 --- a/src/po/nl.po +++ b/src/po/nl.po @@ -2990,7 +2990,7 @@ msgstr "-f\t\t\tGebruik geen newcli om venster te openen" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tGebruik voor in- en uitvoer" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tIn Arabische modus starten" msgid "-H\t\t\tStart in Hebrew mode" @@ -4369,7 +4369,7 @@ msgstr "" #~ msgstr "" #, c-format -#~ msgid "Reading affix file %s ..." +#~ msgid "Reading affix file %s..." #~ msgstr "" #, c-format @@ -4493,7 +4493,7 @@ msgstr "" #~ msgstr "" #, c-format -#~ msgid "Reading dictionary file %s ..." +#~ msgid "Reading dictionary file %s..." #~ msgstr "" #, c-format @@ -4521,7 +4521,7 @@ msgstr "" #~ msgstr "" #, c-format -#~ msgid "Reading word file %s ..." +#~ msgid "Reading word file %s..." #~ msgstr "" #, c-format @@ -4579,7 +4579,7 @@ msgstr "" #~ msgstr "" #, c-format -#~ msgid "Writing suggestion file %s ..." +#~ msgid "Writing suggestion file %s..." #~ msgstr "" #, c-format @@ -4600,7 +4600,7 @@ msgstr "" #~ msgstr "" #, c-format -#~ msgid "Writing spell file %s ..." +#~ msgid "Writing spell file %s..." #~ msgstr "" #~ msgid "Done!" diff --git a/src/po/no.po b/src/po/no.po index c8bb08d1a3..3fe23dcac9 100644 --- a/src/po/no.po +++ b/src/po/no.po @@ -2920,7 +2920,7 @@ msgstr "-f\t\t\tIkke bruk newcli for msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tBruk for I/U" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tStart i arabisk modus" msgid "-H\t\t\tStart in Hebrew mode" @@ -4771,8 +4771,8 @@ msgid "Warning: region %s not supported" msgstr "Advarsel: Region %s ikke stttet" #, c-format -msgid "Reading affix file %s ..." -msgstr "Leser affiksfil %s ..." +msgid "Reading affix file %s..." +msgstr "Leser affiksfil %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -4900,8 +4900,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s-verdi er forskjellig fra det som er bruk i en annen .aff-fil" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Leser ordlistefil %s ..." +msgid "Reading dictionary file %s..." +msgstr "Leser ordlistefil %s..." #, c-format msgid "E760: No word count in %s" @@ -4928,8 +4928,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Ignorerte %d ord med ikke-ASCII-tegn i %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Leser ordfil %s ..." +msgid "Reading word file %s..." +msgstr "Leser ordfil %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -4987,8 +4987,8 @@ msgid "Total number of words: %d" msgstr "Totalt antall ord: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Skriver forslagsfil %s ..." +msgid "Writing suggestion file %s..." +msgstr "Skriver forslagsfil %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5008,8 +5008,8 @@ msgstr "E755: Ugyldig region i %s" #~ msgstr "" #, c-format -msgid "Writing spell file %s ..." -msgstr "Lagrer stavefil %s ..." +msgid "Writing spell file %s..." +msgstr "Lagrer stavefil %s..." msgid "Done!" msgstr "Ferdig!" diff --git a/src/po/pl.UTF-8.po b/src/po/pl.UTF-8.po index 5d4c3c3799..b6e1d7b74f 100644 --- a/src/po/pl.UTF-8.po +++ b/src/po/pl.UTF-8.po @@ -3049,7 +3049,7 @@ msgstr "-f\t\t\tNie stosuj newcli do otwierania okien" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUżywaj do I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\trozpocznij w trybie arabskim" msgid "-H\t\t\tStart in Hebrew mode" @@ -4865,7 +4865,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Nie można przydzielić pamięci do przejścia przez gałęzie!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "Nie można otworzyć do zapisu tymczasowego pliku, pokazuję na stderr... " #, c-format @@ -5056,8 +5056,8 @@ msgid "Warning: region %s not supported" msgstr "Ostrzeżenie: region %s nie jest wspierany" #, c-format -msgid "Reading affix file %s ..." -msgstr "Czytam plik afiksów %s ..." +msgid "Reading affix file %s..." +msgstr "Czytam plik afiksów %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5192,8 +5192,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Wartość %s różni się od tej użytej w innym pliku .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Czytam plik słownika %s ..." +msgid "Reading dictionary file %s..." +msgstr "Czytam plik słownika %s..." #, c-format msgid "E760: No word count in %s" @@ -5223,8 +5223,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Zignorowałem %d słów ze znakami nie ASCII w %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Odczytuję plik wyrazów %s ..." +msgid "Reading word file %s..." +msgstr "Odczytuję plik wyrazów %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5284,8 +5284,8 @@ msgid "Total number of words: %d" msgstr "Całkowita liczba słów: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Zapisuję plik sugestii %s ..." +msgid "Writing suggestion file %s..." +msgstr "Zapisuję plik sugestii %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5305,8 +5305,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Ostrzeżenie: określono zarówno złożenia jak i NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Zapisuję plik sprawdzania pisowni %s ..." +msgid "Writing spell file %s..." +msgstr "Zapisuję plik sprawdzania pisowni %s..." msgid "Done!" msgstr "Zrobione!" diff --git a/src/po/pl.cp1250.po b/src/po/pl.cp1250.po index 3650598a25..1903dbd60e 100644 --- a/src/po/pl.cp1250.po +++ b/src/po/pl.cp1250.po @@ -3049,7 +3049,7 @@ msgstr "-f\t\t\tNie stosuj newcli do otwierania okien" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUywaj do I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\trozpocznij w trybie arabskim" msgid "-H\t\t\tStart in Hebrew mode" @@ -4865,7 +4865,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Nie mona przydzieli pamici do przejcia przez gazie!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "Nie mona otworzy do zapisu tymczasowego pliku, pokazuj na stderr... " #, c-format @@ -5056,8 +5056,8 @@ msgid "Warning: region %s not supported" msgstr "Ostrzeenie: region %s nie jest wspierany" #, c-format -msgid "Reading affix file %s ..." -msgstr "Czytam plik afiksw %s ..." +msgid "Reading affix file %s..." +msgstr "Czytam plik afiksw %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5192,8 +5192,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Warto %s rni si od tej uytej w innym pliku .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Czytam plik sownika %s ..." +msgid "Reading dictionary file %s..." +msgstr "Czytam plik sownika %s..." #, c-format msgid "E760: No word count in %s" @@ -5223,8 +5223,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Zignorowaem %d sw ze znakami nie ASCII w %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Odczytuj plik wyrazw %s ..." +msgid "Reading word file %s..." +msgstr "Odczytuj plik wyrazw %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5284,8 +5284,8 @@ msgid "Total number of words: %d" msgstr "Cakowita liczba sw: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Zapisuj plik sugestii %s ..." +msgid "Writing suggestion file %s..." +msgstr "Zapisuj plik sugestii %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5305,8 +5305,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Ostrzeenie: okrelono zarwno zoenia jak i NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Zapisuj plik sprawdzania pisowni %s ..." +msgid "Writing spell file %s..." +msgstr "Zapisuj plik sprawdzania pisowni %s..." msgid "Done!" msgstr "Zrobione!" diff --git a/src/po/pl.po b/src/po/pl.po index 2483aaeb59..345239084b 100644 --- a/src/po/pl.po +++ b/src/po/pl.po @@ -3049,7 +3049,7 @@ msgstr "-f\t\t\tNie stosuj newcli do otwierania okien" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tUywaj do I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\trozpocznij w trybie arabskim" msgid "-H\t\t\tStart in Hebrew mode" @@ -4865,7 +4865,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Nie mona przydzieli pamici do przejcia przez gazie!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "Nie mona otworzy do zapisu tymczasowego pliku, pokazuj na stderr... " #, c-format @@ -5056,8 +5056,8 @@ msgid "Warning: region %s not supported" msgstr "Ostrzeenie: region %s nie jest wspierany" #, c-format -msgid "Reading affix file %s ..." -msgstr "Czytam plik afiksw %s ..." +msgid "Reading affix file %s..." +msgstr "Czytam plik afiksw %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5192,8 +5192,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Warto %s rni si od tej uytej w innym pliku .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Czytam plik sownika %s ..." +msgid "Reading dictionary file %s..." +msgstr "Czytam plik sownika %s..." #, c-format msgid "E760: No word count in %s" @@ -5223,8 +5223,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Zignorowaem %d sw ze znakami nie ASCII w %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Odczytuj plik wyrazw %s ..." +msgid "Reading word file %s..." +msgstr "Odczytuj plik wyrazw %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5284,8 +5284,8 @@ msgid "Total number of words: %d" msgstr "Cakowita liczba sw: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Zapisuj plik sugestii %s ..." +msgid "Writing suggestion file %s..." +msgstr "Zapisuj plik sugestii %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5305,8 +5305,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Ostrzeenie: okrelono zarwno zoenia jak i NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Zapisuj plik sprawdzania pisowni %s ..." +msgid "Writing spell file %s..." +msgstr "Zapisuj plik sprawdzania pisowni %s..." msgid "Done!" msgstr "Zrobione!" diff --git a/src/po/pt_BR.po b/src/po/pt_BR.po index 6f90daea8b..d4cf6b16a4 100644 --- a/src/po/pt_BR.po +++ b/src/po/pt_BR.po @@ -3032,7 +3032,7 @@ msgstr "-f\t\t\tNão usar newcli para abrir janela" msgid "-dev \t\tUse for I/O" msgstr "-dev \tUsar para E/S" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tiniciar no modo Árabe" msgid "-H\t\t\tStart in Hebrew mode" @@ -4859,9 +4859,9 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) memória não pôde ser alocada para percorrer os ramos!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" -"Arquivo de log temporário não pôde ser gravado, mostrando no stderr ... " +"Arquivo de log temporário não pôde ser gravado, mostrando no stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5096,7 +5096,7 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: erro ao ler o arquivo .sug: %s" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "Lendo arquivo de afixos %s..." #, c-format @@ -5234,8 +5234,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "O valor de %s é diferente daquele usado em outro arquivo .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Lendo arquivo-dicionário %s ..." +msgid "Reading dictionary file %s..." +msgstr "Lendo arquivo-dicionário %s..." #, c-format msgid "E760: No word count in %s" @@ -5262,8 +5262,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Foram ignoradas %d palavra(s) com caracteres não-ASCII em %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Lendo arquivo de palavras %s ..." +msgid "Reading word file %s..." +msgstr "Lendo arquivo de palavras %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5319,8 +5319,8 @@ msgid "Total number of words: %d" msgstr "Número total de palavras: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Gravando arquivo de sugestões %s ..." +msgid "Writing suggestion file %s..." +msgstr "Gravando arquivo de sugestões %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5340,8 +5340,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Aviso: tanto composição quanto NOBREAK foram especificados" #, c-format -msgid "Writing spell file %s ..." -msgstr "Gravando arquivo de verificação ortográfica %s ..." +msgid "Writing spell file %s..." +msgstr "Gravando arquivo de verificação ortográfica %s..." msgid "Done!" msgstr "Concluído!" diff --git a/src/po/ru.cp1251.po b/src/po/ru.cp1251.po index 094fab9548..22e4dff459 100644 --- a/src/po/ru.cp1251.po +++ b/src/po/ru.cp1251.po @@ -3089,7 +3089,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev <>\t\t I/O <>" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\t " msgid "-H\t\t\tStart in Hebrew mode" @@ -4941,7 +4941,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: () !" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" " , stderr..." @@ -5173,8 +5173,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr " %s ..." +msgid "Reading affix file %s..." +msgstr " %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5310,8 +5310,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s , .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr " %s ..." +msgid "Reading dictionary file %s..." +msgstr " %s..." #, c-format msgid "E760: No word count in %s" @@ -5338,8 +5338,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr " %d ASCII %s" #, c-format -msgid "Reading word file %s ..." -msgstr " %s ..." +msgid "Reading word file %s..." +msgstr " %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5395,7 +5395,7 @@ msgid "Total number of words: %d" msgstr " : %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr " %s" #, c-format @@ -5417,8 +5417,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr ": NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr " %s ..." +msgid "Writing spell file %s..." +msgstr " %s..." msgid "Done!" msgstr "!" diff --git a/src/po/ru.po b/src/po/ru.po index 5f392ac333..55bbb298f4 100644 --- a/src/po/ru.po +++ b/src/po/ru.po @@ -3089,7 +3089,7 @@ msgstr "-f\t\t\tНе использовать newcli для открытия о msgid "-dev \t\tUse for I/O" msgstr "-dev <устройство>\t\tИспользовать для I/O указанное <устройство>" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tЗапуск в Арабском режиме" msgid "-H\t\t\tStart in Hebrew mode" @@ -4941,7 +4941,7 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (НКА) невозможно выделить память для прохода ветви!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Невозможно открыть файл временного журнала для записи, вывод на stderr..." @@ -5173,8 +5173,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: Ошибка при чтении файла .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Чтение файла аффиксов %s ..." +msgid "Reading affix file %s..." +msgstr "Чтение файла аффиксов %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5310,8 +5310,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s имеет другое значение, чем в файле .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Чтение файла словаря %s ..." +msgid "Reading dictionary file %s..." +msgstr "Чтение файла словаря %s..." #, c-format msgid "E760: No word count in %s" @@ -5338,8 +5338,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Пропущено %d слов с не ASCII символами в %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Чтение файла слов %s ..." +msgid "Reading word file %s..." +msgstr "Чтение файла слов %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5395,7 +5395,7 @@ msgid "Total number of words: %d" msgstr "Общее количество слов: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "Запись файла предложения исправлений правописания %s" #, c-format @@ -5417,8 +5417,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Предупреждение: оба составные и указано NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Запись файла правописания %s ..." +msgid "Writing spell file %s..." +msgstr "Запись файла правописания %s..." msgid "Done!" msgstr "Завершено!" diff --git a/src/po/sk.cp1250.po b/src/po/sk.cp1250.po index 00eac5f320..8870530eff 100644 --- a/src/po/sk.cp1250.po +++ b/src/po/sk.cp1250.po @@ -2718,7 +2718,7 @@ msgstr "-f\t\t\tNebude pou msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tPoui pre I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tspusti v Arabic mde" msgid "-H\t\t\tStart in Hebrew mode" @@ -4539,8 +4539,8 @@ msgid "Warning: region %s not supported" msgstr "Varovanie: regin %s nie je podporovan" #, c-format -msgid "Reading affix file %s ..." -msgstr "Natavam sbor s prponami %s ..." +msgid "Reading affix file %s..." +msgstr "Natavam sbor s prponami %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -4653,8 +4653,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Hodnota %s sa odliuje od hodnoty pouitej v inom .aff sbore" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Natavam slovnk %s ..." +msgid "Reading dictionary file %s..." +msgstr "Natavam slovnk %s..." #, c-format msgid "E760: No word count in %s" @@ -4681,8 +4681,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Ignorovanch %d slov s nepsmennmi znakmi v %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Natavam sbor so slovami %s ..." +msgid "Reading word file %s..." +msgstr "Natavam sbor so slovami %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -4734,8 +4734,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Varovanie: pecifikovan spjanie a nezalamovanie" #, c-format -msgid "Writing spell file %s ..." -msgstr "Ukldm slovnkov sbor %s ..." +msgid "Writing spell file %s..." +msgstr "Ukldm slovnkov sbor %s..." msgid "Done!" msgstr "Hotovo!" diff --git a/src/po/sk.po b/src/po/sk.po index de0af7dad1..26a6440107 100644 --- a/src/po/sk.po +++ b/src/po/sk.po @@ -2718,7 +2718,7 @@ msgstr "-f\t\t\tNebude pou msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tPoui pre I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tspusti v Arabic mde" msgid "-H\t\t\tStart in Hebrew mode" @@ -4539,8 +4539,8 @@ msgid "Warning: region %s not supported" msgstr "Varovanie: regin %s nie je podporovan" #, c-format -msgid "Reading affix file %s ..." -msgstr "Natavam sbor s prponami %s ..." +msgid "Reading affix file %s..." +msgstr "Natavam sbor s prponami %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -4653,8 +4653,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Hodnota %s sa odliuje od hodnoty pouitej v inom .aff sbore" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Natavam slovnk %s ..." +msgid "Reading dictionary file %s..." +msgstr "Natavam slovnk %s..." #, c-format msgid "E760: No word count in %s" @@ -4681,8 +4681,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Ignorovanch %d slov s nepsmennmi znakmi v %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Natavam sbor so slovami %s ..." +msgid "Reading word file %s..." +msgstr "Natavam sbor so slovami %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -4734,8 +4734,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Varovanie: pecifikovan spjanie a nezalamovanie" #, c-format -msgid "Writing spell file %s ..." -msgstr "Ukldm slovnkov sbor %s ..." +msgid "Writing spell file %s..." +msgstr "Ukldm slovnkov sbor %s..." msgid "Done!" msgstr "Hotovo!" diff --git a/src/po/sr.po b/src/po/sr.po index 1cf5f12a3d..4f9aeaa847 100644 --- a/src/po/sr.po +++ b/src/po/sr.po @@ -3075,7 +3075,7 @@ msgstr "-f\t\t\tНемој да користиш нов cli да отвориш msgid "-dev \t\tUse for I/O" msgstr "-dev <уређај>\t\tКористи <уређај> за У/И" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tПокрени у Арапском режиму" msgid "-H\t\t\tStart in Hebrew mode" @@ -4908,10 +4908,10 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Није могла да се алоцира меморија за обилазак грана!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Привремена лог датотека није могла да се отвори за упис, приказује се на " -"stderr ... " +"stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5141,8 +5141,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: грешка приликом читања .sug датотеке: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Читање датотеке наставака %s ..." +msgid "Reading affix file %s..." +msgstr "Читање датотеке наставака %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5280,8 +5280,8 @@ msgstr "" "%s вредност се разликује од онога што је коришћено у другој .aff датотеци" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Читање датотеке речника %s ..." +msgid "Reading dictionary file %s..." +msgstr "Читање датотеке речника %s..." #, c-format msgid "E760: No word count in %s" @@ -5308,8 +5308,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Игнорисана/о %d реч(и) са не-ASCII карактерима у %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Читање датотеке речи %s ..." +msgid "Reading word file %s..." +msgstr "Читање датотеке речи %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5365,8 +5365,8 @@ msgid "Total number of words: %d" msgstr "Укупан број речи: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Уписивање датотеке предлога %s ..." +msgid "Writing suggestion file %s..." +msgstr "Уписивање датотеке предлога %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5387,8 +5387,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Упозорење: наведени су и слагање и NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Уписивање правописне датотеке %s ..." +msgid "Writing spell file %s..." +msgstr "Уписивање правописне датотеке %s..." msgid "Done!" msgstr "Завршено!" diff --git a/src/po/sv.po b/src/po/sv.po index 5e7bbc2c6e..498c431672 100644 --- a/src/po/sv.po +++ b/src/po/sv.po @@ -2897,8 +2897,8 @@ msgstr "-f\t\t\tAnv msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tAnvnd fr I/O" -msgid "-A\t\t\tstart in Arabic mode" -msgstr "-A\t\t\tstarta i arabiskt lge" +msgid "-A\t\t\tStart in Arabic mode" +msgstr "-A\t\t\tStarta i arabiskt lge" msgid "-H\t\t\tStart in Hebrew mode" msgstr "-H\t\t\tStarta i hebreiskt lge" @@ -4753,8 +4753,8 @@ msgid "Warning: region %s not supported" msgstr "Varning: region %s stds inte" #, c-format -msgid "Reading affix file %s ..." -msgstr "Lser affix-fil %s ..." +msgid "Reading affix file %s..." +msgstr "Lser affix-fil %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -4883,8 +4883,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s vrde skiljer sig frn vad som anvnds i en annan .aff-fil." #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Lser ordboksfil %s ..." +msgid "Reading dictionary file %s..." +msgstr "Lser ordboksfil %s..." #, c-format msgid "E760: No word count in %s" @@ -4911,8 +4911,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Ignorerade %d ord med icke-ASCII tecken i %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Lser ordfil %s ..." +msgid "Reading word file %s..." +msgstr "Lser ordfil %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -4969,8 +4969,8 @@ msgid "Total number of words: %d" msgstr "Totalt antal ord: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Skriver frslagsfil %s ..." +msgid "Writing suggestion file %s..." +msgstr "Skriver frslagsfil %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -4990,8 +4990,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Varning: bde sammansttning och NOBREAK specifierad" #, c-format -msgid "Writing spell file %s ..." -msgstr "Skriver stavningsfil %s ..." +msgid "Writing spell file %s..." +msgstr "Skriver stavningsfil %s..." msgid "Done!" msgstr "Klar!" diff --git a/src/po/uk.cp1251.po b/src/po/uk.cp1251.po index ea4bf38832..2d482cff48 100644 --- a/src/po/uk.cp1251.po +++ b/src/po/uk.cp1251.po @@ -3125,7 +3125,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev <>\t\t\t <> /" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\t " msgid "-H\t\t\tStart in Hebrew mode" @@ -5032,10 +5032,10 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) !" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" " , " -"stderr ... " +"stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5271,8 +5271,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr " %s ..." +msgid "Reading affix file %s..." +msgstr " %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5408,8 +5408,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr " %s , .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr " %s ..." +msgid "Reading dictionary file %s..." +msgstr " %s..." #, c-format msgid "E760: No word count in %s" @@ -5436,8 +5436,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr " %d (~) -ASCII %s" #, c-format -msgid "Reading word file %s ..." -msgstr " %s ..." +msgid "Reading word file %s..." +msgstr " %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5497,8 +5497,8 @@ msgid "Total number of words: %d" msgstr " : %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr " %s ..." +msgid "Writing suggestion file %s..." +msgstr " %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5518,8 +5518,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr ": ` ' NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr " %s ..." +msgid "Writing spell file %s..." +msgstr " %s..." msgid "Done!" msgstr "!" diff --git a/src/po/uk.po b/src/po/uk.po index ce4e7693ff..4b9687f17f 100644 --- a/src/po/uk.po +++ b/src/po/uk.po @@ -3125,7 +3125,7 @@ msgstr "-f\t\t\tНе використовувати newcli для відкрит msgid "-dev \t\tUse for I/O" msgstr "-dev <пристрій>\t\t\tВикористовувати <пристрій> для вводу/виводу" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tЗапустити в режимі арабської мови" msgid "-H\t\t\tStart in Hebrew mode" @@ -5032,10 +5032,10 @@ msgid "E878: (NFA) Could not allocate memory for branch traversal!" msgstr "E878: (NFA) Не вдалося отримати пам’ять для обходу гілок!" msgid "" -"Could not open temporary log file for writing, displaying on stderr ... " +"Could not open temporary log file for writing, displaying on stderr... " msgstr "" "Не вдалося відкрити тимчасовий файл журналу для запису, показується на " -"stderr ... " +"stderr... " #, c-format msgid "(NFA) COULD NOT OPEN %s !" @@ -5271,8 +5271,8 @@ msgid "E782: error while reading .sug file: %s" msgstr "E782: Помилка читання файлу .sug: %s" #, c-format -msgid "Reading affix file %s ..." -msgstr "Читається файл афіксів %s ..." +msgid "Reading affix file %s..." +msgstr "Читається файл афіксів %s..." #, c-format msgid "Conversion failure for word in %s line %d: %s" @@ -5408,8 +5408,8 @@ msgid "%s value differs from what is used in another .aff file" msgstr "Значення %s відрізняється від того, що вжито у іншому файлі .aff" #, c-format -msgid "Reading dictionary file %s ..." -msgstr "Зчитується словниковий файл %s ..." +msgid "Reading dictionary file %s..." +msgstr "Зчитується словниковий файл %s..." #, c-format msgid "E760: No word count in %s" @@ -5436,8 +5436,8 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "Пропущено %d слів(~) із не-ASCII символами у %s" #, c-format -msgid "Reading word file %s ..." -msgstr "Читається файл слів %s ..." +msgid "Reading word file %s..." +msgstr "Читається файл слів %s..." #, c-format msgid "Duplicate /encoding= line ignored in %s line %d: %s" @@ -5497,8 +5497,8 @@ msgid "Total number of words: %d" msgstr "Повна кількість слів: %d" #, c-format -msgid "Writing suggestion file %s ..." -msgstr "Записується файл припущень %s ..." +msgid "Writing suggestion file %s..." +msgstr "Записується файл припущень %s..." #, c-format msgid "Estimated runtime memory use: %d bytes" @@ -5518,8 +5518,8 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "Застереження: зазначено обидва `складні слова' і NOBREAK" #, c-format -msgid "Writing spell file %s ..." -msgstr "Записується файл орфографії %s ..." +msgid "Writing spell file %s..." +msgstr "Записується файл орфографії %s..." msgid "Done!" msgstr "Зроблено!" diff --git a/src/po/vi.po b/src/po/vi.po index ceb1865264..554f508785 100644 --- a/src/po/vi.po +++ b/src/po/vi.po @@ -2436,7 +2436,7 @@ msgstr "-f\t\t\tKhông sử dụng newcli để mở cửa sổ" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tSử dụng cho I/O" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tKhởi động vào chế độ Ả Rập" msgid "-H\t\t\tStart in Hebrew mode" diff --git a/src/po/zh_CN.UTF-8.po b/src/po/zh_CN.UTF-8.po index 35ba8b3dfc..e2f897c477 100644 --- a/src/po/zh_CN.UTF-8.po +++ b/src/po/zh_CN.UTF-8.po @@ -2828,7 +2828,7 @@ msgstr "-f\t\t\t不使用 newcli 来打开窗口" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\t使用 进行输入输出" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\t以 Arabic 模式启动" msgid "-H\t\t\tStart in Hebrew mode" @@ -4667,7 +4667,7 @@ msgid "Warning: region %s not supported" msgstr "警告: 区域 %s 不支持" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "读取附加文件 %s ……" #, c-format @@ -4795,7 +4795,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s 的值与另一个 .aff 文件中使用的值不相同" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "读取字典文件 %s ……" #, c-format @@ -4823,7 +4823,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "忽略了含有非 ASCII 字符的 %d 个单词,在 %s 中" #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "读取单词文件 %s ……" #, c-format @@ -4881,7 +4881,7 @@ msgid "Total number of words: %d" msgstr "单词总数: %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "写入建议文件 %s ……" #, c-format @@ -4902,7 +4902,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr "警告: 同时指定了 compounding 和 NOBREAK" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "写入拼写文件 %s ……" msgid "Done!" diff --git a/src/po/zh_CN.cp936.po b/src/po/zh_CN.cp936.po index f7f7f913ae..cbea9de31d 100644 --- a/src/po/zh_CN.cp936.po +++ b/src/po/zh_CN.cp936.po @@ -2828,7 +2828,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tʹ " -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\t Arabic ģʽ" msgid "-H\t\t\tStart in Hebrew mode" @@ -4667,7 +4667,7 @@ msgid "Warning: region %s not supported" msgstr ": %s ֧" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "ȡļ %s " #, c-format @@ -4795,7 +4795,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s ֵһ .aff ļʹõֵͬ" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "ȡֵļ %s " #, c-format @@ -4823,7 +4823,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "˺з ASCII ַ %d ʣ %s " #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "ȡļ %s " #, c-format @@ -4881,7 +4881,7 @@ msgid "Total number of words: %d" msgstr ": %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "д뽨ļ %s " #, c-format @@ -4902,7 +4902,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr ": ͬʱָ compounding NOBREAK" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "дƴдļ %s " msgid "Done!" diff --git a/src/po/zh_CN.po b/src/po/zh_CN.po index e9a876bf04..dbc40bda13 100644 --- a/src/po/zh_CN.po +++ b/src/po/zh_CN.po @@ -2829,7 +2829,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tʹ " -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\t Arabic ģʽ" msgid "-H\t\t\tStart in Hebrew mode" @@ -4667,7 +4667,7 @@ msgid "Warning: region %s not supported" msgstr ": %s ֧" #, c-format -msgid "Reading affix file %s ..." +msgid "Reading affix file %s..." msgstr "ȡļ %s " #, c-format @@ -4795,7 +4795,7 @@ msgid "%s value differs from what is used in another .aff file" msgstr "%s ֵһ .aff ļʹõֵͬ" #, c-format -msgid "Reading dictionary file %s ..." +msgid "Reading dictionary file %s..." msgstr "ȡֵļ %s " #, c-format @@ -4823,7 +4823,7 @@ msgid "Ignored %d word(s) with non-ASCII characters in %s" msgstr "˺з ASCII ַ %d ʣ %s " #, c-format -msgid "Reading word file %s ..." +msgid "Reading word file %s..." msgstr "ȡļ %s " #, c-format @@ -4881,7 +4881,7 @@ msgid "Total number of words: %d" msgstr ": %d" #, c-format -msgid "Writing suggestion file %s ..." +msgid "Writing suggestion file %s..." msgstr "д뽨ļ %s " #, c-format @@ -4902,7 +4902,7 @@ msgid "Warning: both compounding and NOBREAK specified" msgstr ": ͬʱָ compounding NOBREAK" #, c-format -msgid "Writing spell file %s ..." +msgid "Writing spell file %s..." msgstr "дƴдļ %s " msgid "Done!" diff --git a/src/po/zh_TW.UTF-8.po b/src/po/zh_TW.UTF-8.po index 250b37be5a..350e24a45c 100644 --- a/src/po/zh_TW.UTF-8.po +++ b/src/po/zh_TW.UTF-8.po @@ -2439,7 +2439,7 @@ msgstr "-f\t\t\t不使用 newcli 來開啟視窗" msgid "-dev \t\tUse for I/O" msgstr "-dev \t\t使用 做輸出入" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\t啟動為 Arabic 模式" msgid "-H\t\t\tStart in Hebrew mode" diff --git a/src/po/zh_TW.po b/src/po/zh_TW.po index b3f84201ae..6a7abd9edb 100644 --- a/src/po/zh_TW.po +++ b/src/po/zh_TW.po @@ -2432,7 +2432,7 @@ msgstr "-f\t\t\t msgid "-dev \t\tUse for I/O" msgstr "-dev \t\tϥ XJ" -msgid "-A\t\t\tstart in Arabic mode" +msgid "-A\t\t\tStart in Arabic mode" msgstr "-A\t\t\tҰʬ Arabic Ҧ" msgid "-H\t\t\tStart in Hebrew mode" From 8df6e5d4670891608e791244b0c2ec0db387f710 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 14:45:37 +0200 Subject: [PATCH 08/24] patch 8.1.0079: superfluous space in messages Problem: Superfluous space in messages. Solution: Remove the spaces. (closes #3030) --- src/gui_w32.c | 4 ++-- src/version.c | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gui_w32.c b/src/gui_w32.c index 350b6fc43a..49aa1e0bd2 100644 --- a/src/gui_w32.c +++ b/src/gui_w32.c @@ -2821,7 +2821,7 @@ gui_mch_find_dialog(exarg_T *eap) } set_window_title(s_findrep_hwnd, - _("Find string (use '\\\\' to find a '\\')")); + _("Find string (use '\\\\' to find a '\\')")); (void)SetFocus(s_findrep_hwnd); s_findrep_is_find = TRUE; @@ -2856,7 +2856,7 @@ gui_mch_replace_dialog(exarg_T *eap) } set_window_title(s_findrep_hwnd, - _("Find & Replace (use '\\\\' to find a '\\')")); + _("Find & Replace (use '\\\\' to find a '\\')")); (void)SetFocus(s_findrep_hwnd); s_findrep_is_find = FALSE; diff --git a/src/version.c b/src/version.c index f28a3468b6..85ffd16171 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 79, /**/ 78, /**/ From de1a83147a28d3db8f9fca415ffc8fa04218eac2 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 16:59:54 +0200 Subject: [PATCH 09/24] patch 8.1.0080: can't see the breakpoint number in the terminal debugger Problem: Can't see the breakpoint number in the terminal debugger. Solution: Use the breakpoint number for the sign. (Christian Brabandt) --- runtime/doc/terminal.txt | 24 +++++++++++++++---- .../dist/opt/termdebug/plugin/termdebug.vim | 20 +++++++++++----- src/version.c | 2 ++ 3 files changed, 35 insertions(+), 11 deletions(-) diff --git a/runtime/doc/terminal.txt b/runtime/doc/terminal.txt index 395e7d2879..262b162ada 100644 --- a/runtime/doc/terminal.txt +++ b/runtime/doc/terminal.txt @@ -705,11 +705,11 @@ Put focus on the gdb window and type: > Vim will start running in the program window. Put focus there and type: > :help gui Gdb will run into the ex_help breakpoint. The source window now shows the -ex_cmds.c file. A ">>" marker will appear where the breakpoint was set. The -line where the debugger stopped is highlighted. You can now step through the -program. Let's use the mouse: click on the "Next" button in the window -toolbar. You will see the highlighting move as the debugger executes a line -of source code. +ex_cmds.c file. A red "1 " marker will appear in the signcolumn where the +breakpoint was set. The line where the debugger stopped is highlighted. You +can now step through the program. Let's use the mouse: click on the "Next" +button in the window toolbar. You will see the highlighting move as the +debugger executes a line of source code. Click "Next" a few times until the for loop is highlighted. Put the cursor on the end of "eap->arg", then click "Eval" in the toolbar. You will see this @@ -788,6 +788,13 @@ source code, a new window will be created for the source code. This also happens if the buffer in the source code window has been modified and can't be abandoned. +Gdb gives each breakpoint a number. In Vim the number shows up in the sign +column, with a red background. You can use these gdb commands: +- info break list breakpoints +- delete N delete breakpoint N +You can also use the `:Clear` command if the cursor is in the line with the +breakpoint, or use the "Clear breakpoint" right-click menu entry. + Inspecting variables ~ *termdebug-variables* *:Evaluate* @@ -831,6 +838,13 @@ There is another, hidden, buffer, which is used for Vim to communicate with gdb. The buffer name is "gdb communication". Do not delete this buffer, it will break the debugger. +Gdb has some weird behavior, the plugin does its best to work around that. +For example, after typing "continue" in the gdb window a CTRL-C can be used to +interrupt the running program. But after using the MI command +"-exec-continue" pressing CTRL-C does not interrupt. Therefore you will see +"continue" being used for the `:Continue` command, instead of using the +communication channel. + Customizing ~ diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index a01f3f1c78..f4a4dc224c 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -67,7 +67,7 @@ if !exists('termdebugger') endif let s:pc_id = 12 -let s:break_id = 13 +let s:break_id = 13 " breakpoint number is added to this let s:stopped = 1 if &background == 'light' @@ -325,10 +325,6 @@ func s:StartDebugCommon(dict) " There can be only one. sign define debugPC linehl=debugPC - " Sign used to indicate a breakpoint. - " Can be used multiple times. - sign define debugBreakpoint text=>> texthl=debugBreakpoint - " Install debugger commands in the text window. call win_gotoid(s:sourcewin) call s:InstallCommands() @@ -345,6 +341,7 @@ func s:StartDebugCommon(dict) endif endif + " Contains breakpoints that have been placed, key is the number. let s:breakpoints = {} augroup TermDebug @@ -813,6 +810,16 @@ func s:HandleCursor(msg) call win_gotoid(wid) endfunc +func s:CreateBreakpoint(nr) + if !exists("s:BreakpointSigns") + let s:BreakpointSigns = [] + endif + if index(s:BreakpointSigns, a:nr) == -1 + call add(s:BreakpointSigns, a:nr) + exe "sign define debugBreakpoint". a:nr . " text=" . a:nr . " texthl=debugBreakpoint" + endif +endfunc + " Handle setting a breakpoint " Will update the sign that shows the breakpoint func s:HandleNewBreakpoint(msg) @@ -820,6 +827,7 @@ func s:HandleNewBreakpoint(msg) if nr == 0 return endif + call s:CreateBreakpoint(nr) if has_key(s:breakpoints, nr) let entry = s:breakpoints[nr] @@ -839,7 +847,7 @@ func s:HandleNewBreakpoint(msg) endfunc func s:PlaceSign(nr, entry) - exe 'sign place ' . (s:break_id + a:nr) . ' line=' . a:entry['lnum'] . ' name=debugBreakpoint file=' . a:entry['fname'] + exe 'sign place ' . (s:break_id + a:nr) . ' line=' . a:entry['lnum'] . ' name=debugBreakpoint' . a:nr . ' file=' . a:entry['fname'] let a:entry['placed'] = 1 endfunc diff --git a/src/version.c b/src/version.c index 85ffd16171..ebcc4efc7c 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 80, /**/ 79, /**/ From f07f9e731eb97bbdbd1b0b3983750589e4f557a6 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 17:27:53 +0200 Subject: [PATCH 10/24] patch 8.1.0081: the terminal debugger doesn't adjust to changed 'background' Problem: The terminal debugger doesn't adjust to changed 'background'. Solution: Add an OptionSet autocommand. (Christian Brabandt) --- .../dist/opt/termdebug/plugin/termdebug.vim | 17 +++++++++++------ src/version.c | 2 ++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index f4a4dc224c..9b931d1437 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -70,11 +70,16 @@ let s:pc_id = 12 let s:break_id = 13 " breakpoint number is added to this let s:stopped = 1 -if &background == 'light' - hi default debugPC term=reverse ctermbg=lightblue guibg=lightblue -else - hi default debugPC term=reverse ctermbg=darkblue guibg=darkblue -endif +func s:Highlight(init, old, new) + let default = a:init ? 'default ' : '' + if a:new ==# 'light' && a:old !=# 'light' + exe "hi " . default . "debugPC term=reverse ctermbg=lightblue guibg=lightblue" + elseif a:new ==# 'dark' && a:old !=# 'dark' + exe "hi " . default . "debugPC term=reverse ctermbg=darkblue guibg=darkblue" + endif +endfunc + +call s:Highlight(1, '', &background) hi default debugBreakpoint term=reverse ctermbg=red guibg=red func s:StartDebug(bang, ...) @@ -347,6 +352,7 @@ func s:StartDebugCommon(dict) augroup TermDebug au BufRead * call s:BufRead() au BufUnload * call s:BufUnloaded() + au OptionSet background call s:Highlight(0, v:option_old, v:option_new) augroup END " Run the command if the bang attribute was given and got to the debug @@ -887,4 +893,3 @@ func s:BufUnloaded() endif endfor endfunc - diff --git a/src/version.c b/src/version.c index ebcc4efc7c..39b317f2c6 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 81, /**/ 80, /**/ From 1d4754f96fa5bff1c349cdb71560c55675f50d03 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 17:49:24 +0200 Subject: [PATCH 11/24] patch 8.1.0082: in terminal window, typing : at more prompt, inserts ':' Problem: In terminal window, typing : at more prompt, inserts ':' instead of starting another Ex command. Solution: Add skip_term_loop and set it when putting ':' in the typeahead buffer. --- src/globals.h | 5 +++++ src/main.c | 10 ++++++++-- src/message.c | 6 ++++++ src/version.c | 2 ++ 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/globals.h b/src/globals.h index 22199c90a6..db3a73f2e9 100644 --- a/src/globals.h +++ b/src/globals.h @@ -371,6 +371,11 @@ EXTERN int highlight_stltermnc[9]; /* On top of user */ # endif # endif #endif +#ifdef FEAT_TERMINAL + // When TRUE skip calling terminal_loop() once. Used when + // typing ':' at the more prompt. +EXTERN int skip_term_loop INIT(= FALSE); +#endif #ifdef FEAT_GUI EXTERN char_u *use_gvimrc INIT(= NULL); /* "-U" cmdline argument */ #endif diff --git a/src/main.c b/src/main.c index e2686b8496..c741fc4060 100644 --- a/src/main.c +++ b/src/main.c @@ -1339,7 +1339,8 @@ main_loop( #ifdef FEAT_TERMINAL if (term_use_loop() && oa.op_type == OP_NOP && oa.regname == NUL - && !VIsual_active) + && !VIsual_active + && !skip_term_loop) { /* If terminal_loop() returns OK we got a key that is handled * in Normal model. With FAIL we first need to position the @@ -1348,8 +1349,13 @@ main_loop( normal_cmd(&oa, TRUE); } else +#endif + { +#ifdef FEAT_TERMINAL + skip_term_loop = FALSE; #endif normal_cmd(&oa, TRUE); + } } } } @@ -3320,7 +3326,7 @@ usage(void) main_msg(_("-dev \t\tUse for I/O")); #endif #ifdef FEAT_ARABIC - main_msg(_("-A\t\t\tstart in Arabic mode")); + main_msg(_("-A\t\t\tStart in Arabic mode")); #endif #ifdef FEAT_RIGHTLEFT main_msg(_("-H\t\t\tStart in Hebrew mode")); diff --git a/src/message.c b/src/message.c index 9384aa6233..fd087a4a79 100644 --- a/src/message.c +++ b/src/message.c @@ -1219,6 +1219,9 @@ wait_return(int redraw) cmdline_row = msg_row; skip_redraw = TRUE; /* skip redraw once */ do_redraw = FALSE; +#ifdef FEAT_TERMINAL + skip_term_loop = TRUE; +#endif } /* @@ -2827,6 +2830,9 @@ do_more_prompt(int typed_char) /* Since got_int is set all typeahead will be flushed, but we * want to keep this ':', remember that in a special way. */ typeahead_noflush(':'); +#ifdef FEAT_TERMINAL + skip_term_loop = TRUE; +#endif cmdline_row = Rows - 1; /* put ':' on this line */ skip_redraw = TRUE; /* skip redraw once */ need_wait_return = FALSE; /* don't wait in main() */ diff --git a/src/version.c b/src/version.c index 39b317f2c6..1cdc8d4eee 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 82, /**/ 81, /**/ From 8516071124dbb7ad7caa43cc98ae3c57ae093c9e Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 18:27:41 +0200 Subject: [PATCH 12/24] patch 8.1.0083: "is" and "as" have trouble with quoted punctuation Problem: "is" and "as" have trouble with quoted punctuation. Solution: Check for punctuation before a quote. (Jason Franklin) --- src/search.c | 42 +++++++++--------- src/testdir/test_textobjects.vim | 75 ++++++++++++++++++++++++++++++++ src/version.c | 2 + 3 files changed, 98 insertions(+), 21 deletions(-) diff --git a/src/search.c b/src/search.c index 57434ec0b7..66ae647185 100644 --- a/src/search.c +++ b/src/search.c @@ -2707,10 +2707,11 @@ showmatch( } /* - * findsent(dir, count) - Find the start of the next sentence in direction - * "dir" Sentences are supposed to end in ".", "!" or "?" followed by white - * space or a line break. Also stop at an empty line. - * Return OK if the next sentence was found. + * Find the start of the next sentence, searching in the direction specified + * by the "dir" argument. The cursor is positioned on the start of the next + * sentence when found. If the next sentence is found, return OK. Return FAIL + * otherwise. See ":h sentence" for the precise definition of a "sentence" + * text object. */ int findsent(int dir, long count) @@ -2758,26 +2759,25 @@ findsent(int dir, long count) else if (dir == BACKWARD) decl(&pos); - /* go back to the previous non-blank char */ + // go back to the previous non-white non-punctuation character found_dot = FALSE; - while ((c = gchar_pos(&pos)) == ' ' || c == '\t' || - (dir == BACKWARD && vim_strchr((char_u *)".!?)]\"'", c) != NULL)) + while (c = gchar_pos(&pos), VIM_ISWHITE(c) + || vim_strchr((char_u *)".!?)]\"'", c) != NULL) { - if (vim_strchr((char_u *)".!?", c) != NULL) - { - /* Only skip over a '.', '!' and '?' once. */ - if (found_dot) - break; - found_dot = TRUE; - } - if (decl(&pos) == -1) + tpos = pos; + if (decl(&tpos) == -1 || (LINEEMPTY(tpos.lnum) && dir == FORWARD)) break; - /* when going forward: Stop in front of empty line */ - if (LINEEMPTY(pos.lnum) && dir == FORWARD) - { - incl(&pos); - goto found; - } + + if (found_dot) + break; + if (vim_strchr((char_u *) ".!?", c) != NULL) + found_dot = TRUE; + + if (vim_strchr((char_u *) ")]\"'", c) != NULL + && vim_strchr((char_u *) ".!?)]\"'", gchar_pos(&tpos)) == NULL) + break; + + decl(&pos); } /* remember the line where the search started */ diff --git a/src/testdir/test_textobjects.vim b/src/testdir/test_textobjects.vim index 17602fbe26..f02619fc09 100644 --- a/src/testdir/test_textobjects.vim +++ b/src/testdir/test_textobjects.vim @@ -165,3 +165,78 @@ x norm it q! endfunc + +func Test_sentence() + enew! + call setline(1, 'A sentence. A sentence? A sentence!') + + normal yis + call assert_equal('A sentence.', @") + normal yas + call assert_equal('A sentence. ', @") + + normal ) + + normal yis + call assert_equal('A sentence?', @") + normal yas + call assert_equal('A sentence? ', @") + + normal ) + + normal yis + call assert_equal('A sentence!', @") + normal yas + call assert_equal(' A sentence!', @") + + normal 0 + normal 2yis + call assert_equal('A sentence. ', @") + normal 3yis + call assert_equal('A sentence. A sentence?', @") + normal 2yas + call assert_equal('A sentence. A sentence? ', @") + + %delete _ +endfunc + +func Test_sentence_with_quotes() + enew! + call setline(1, 'A "sentence." A sentence.') + + normal yis + call assert_equal('A "sentence."', @") + normal yas + call assert_equal('A "sentence." ', @") + + normal ) + + normal yis + call assert_equal('A sentence.', @") + normal yas + call assert_equal(' A sentence.', @") + + %delete _ +endfunc + +func! Test_sentence_with_cursor_on_delimiter() + enew! + call setline(1, "A '([sentence.])' A sentence.") + + normal! 15|yis + call assert_equal("A '([sentence.])'", @") + normal! 15|yas + call assert_equal("A '([sentence.])' ", @") + + normal! 16|yis + call assert_equal("A '([sentence.])'", @") + normal! 16|yas + call assert_equal("A '([sentence.])' ", @") + + normal! 17|yis + call assert_equal("A '([sentence.])'", @") + normal! 17|yas + call assert_equal("A '([sentence.])' ", @") + + %delete _ +endfunc diff --git a/src/version.c b/src/version.c index 1cdc8d4eee..20cd3803cd 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 83, /**/ 82, /**/ From 828c3d70833a0689cc07581f2a67d06430675da5 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 18:58:07 +0200 Subject: [PATCH 13/24] patch 8.1.0084: user name completion does not work on MS-Windows Problem: User name completion does not work on MS-Windows. Solution: Use NetUserEnum() to get user names. (Yasuhiro Matsumoto) --- src/Make_cyg_ming.mak | 2 +- src/Make_ivc.mak | 2 +- src/Make_mvc.mak | 5 +++-- src/misc1.c | 26 ++++++++++++++++++++++++++ src/version.c | 2 ++ 5 files changed, 33 insertions(+), 4 deletions(-) diff --git a/src/Make_cyg_ming.mak b/src/Make_cyg_ming.mak index d51b6ea898..cdec101fbb 100644 --- a/src/Make_cyg_ming.mak +++ b/src/Make_cyg_ming.mak @@ -662,7 +662,7 @@ endif CFLAGS += -s endif -LIB = -lkernel32 -luser32 -lgdi32 -ladvapi32 -lcomdlg32 -lcomctl32 -lversion +LIB = -lkernel32 -luser32 -lgdi32 -ladvapi32 -lcomdlg32 -lcomctl32 -lnetapi32 -lversion GUIOBJ = $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o $(OUTDIR)/os_w32exe.o CUIOBJ = $(OUTDIR)/iscygpty.o OBJ = \ diff --git a/src/Make_ivc.mak b/src/Make_ivc.mak index d90477c761..c8c1c2f97a 100644 --- a/src/Make_ivc.mak +++ b/src/Make_ivc.mak @@ -88,7 +88,7 @@ LINK32=link.exe CPP_PROJ= /nologo /MT /W3 /GX /I ".\proto" /D "WIN32" /c # ADD CPP /nologo /MT /W3 /GX /I ".\proto" /D "WIN32" /c -LINK32_FLAGS= oldnames.lib kernel32.lib user32.lib gdi32.lib version.lib comdlg32.lib comctl32.lib advapi32.lib shell32.lib ole32.lib uuid.lib /nologo /machine:I386 /nodefaultlib +LINK32_FLAGS= oldnames.lib kernel32.lib user32.lib gdi32.lib version.lib comdlg32.lib comctl32.lib advapi32.lib shell32.lib ole32.lib netapi32.lib uuid.lib /nologo /machine:I386 /nodefaultlib # ADD LINK32 oldnames.lib kernel32.lib user32.lib gdi32.lib version.lib comdlg32.lib comctl32.lib advapi32.lib shell32.lib ole32.lib uuid.lib /nologo /machine:I386 /nodefaultlib # SUBTRACT LINK32 /incremental:yes diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak index 5ca5380877..8cb443c7c5 100644 --- a/src/Make_mvc.mak +++ b/src/Make_mvc.mak @@ -489,10 +489,11 @@ NETBEANS_LIB = WSock32.lib # need advapi32.lib for GetUserName() # need shell32.lib for ExtractIcon() +# need netapi32.lib for NetUserEnum() # gdi32.lib and comdlg32.lib for printing support # ole32.lib and uuid.lib are needed for FEAT_SHORTCUT CON_LIB = oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib \ - comdlg32.lib ole32.lib uuid.lib /machine:$(CPU) + comdlg32.lib ole32.lib netapi32.lib uuid.lib /machine:$(CPU) !if "$(DELAYLOAD)" == "yes" CON_LIB = $(CON_LIB) /DELAYLOAD:comdlg32.dll /DELAYLOAD:ole32.dll DelayImp.lib !endif @@ -801,7 +802,7 @@ GUI_OBJ = \ $(OUTDIR)\os_w32exe.obj GUI_LIB = \ gdi32.lib version.lib $(IME_LIB) \ - winspool.lib comctl32.lib advapi32.lib shell32.lib \ + winspool.lib comctl32.lib advapi32.lib shell32.lib netapi32.lib \ /machine:$(CPU) !else SUBSYSTEM = console diff --git a/src/misc1.c b/src/misc1.c index 76f50258ad..d797a0bc65 100644 --- a/src/misc1.c +++ b/src/misc1.c @@ -14,6 +14,10 @@ #include "vim.h" #include "version.h" +#if defined(FEAT_CMDL_COMPL) && defined(WIN3264) +# include +#endif + static char_u *vim_version_dir(char_u *vimdir); static char_u *remove_tail(char_u *p, char_u *pend, char_u *name); #if defined(FEAT_CMDL_COMPL) @@ -4603,6 +4607,28 @@ init_users(void) } endpwent(); } +# elif defined(WIN3264) + { + char_u* user; + DWORD nusers = 0, ntotal = 0, i; + PUSER_INFO_0 uinfo; + + if (NetUserEnum(NULL, 0, 0, (LPBYTE *) &uinfo, MAX_PREFERRED_LENGTH, + &nusers, &ntotal, NULL) == NERR_Success) + { + for (i = 0; i < nusers; i++) + { + if (ga_grow(&ga_users, 1) == FAIL) + break; + user = utf16_to_enc(uinfo[i].usri0_name, NULL); + if (user == NULL) + break; + ((char_u **)(ga_users.ga_data))[ga_users.ga_len++] = user; + } + + NetApiBufferFree(uinfo); + } + } # endif } diff --git a/src/version.c b/src/version.c index 20cd3803cd..9d4d4493b5 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 84, /**/ 83, /**/ From 5f8f2d378a4f6d7db12806f3e35ec6f7fc6bd1f3 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 19:09:09 +0200 Subject: [PATCH 14/24] patch 8.1.0085: no test for completing user name and language Problem: No test for completing user name and language. Solution: Add tests. (Dominique Pelle, closes #2978) --- src/testdir/test_cmdline.vim | 45 +++++++++++++++++++++++++++++++++++- src/version.c | 2 ++ 2 files changed, 46 insertions(+), 1 deletion(-) diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim index c807364ec3..1caf748e15 100644 --- a/src/testdir/test_cmdline.vim +++ b/src/testdir/test_cmdline.vim @@ -1,6 +1,5 @@ " Tests for editing the command line. - func Test_complete_tab() call writefile(['testfile'], 'Xtestfile') call feedkeys(":e Xtest\t\r", "tx") @@ -392,6 +391,50 @@ func Test_cmdline_complete_user_cmd() delcommand Foo endfunc +func Test_cmdline_complete_user_names() + if has('unix') && executable('whoami') + let whoami = systemlist('whoami')[0] + let first_letter = whoami[0] + if len(first_letter) > 0 + " Trying completion of :e ~x where x is the first letter of + " the user name should complete to at least the user name. + call feedkeys(':e ~' . first_letter . "\\\"\", 'tx') + call assert_match('^"e \~.*\<' . whoami . '\>', @:) + endif + endif + if has('win32') + " Just in case: check that the system has an Administrator account. + let names = system('net user') + if names =~ 'Administrator' + " Trying completion of :e ~A should complete to Administrator. + call feedkeys(':e ~A' . "\\\"\", 'tx') + call assert_match('^"e \~Administrator', @:) + endif + endif +endfunc + +funct Test_cmdline_complete_languages() + let lang = substitute(execute('language messages'), '.*"\(.*\)"$', '\1', '') + + call feedkeys(":language \\\"\", 'tx') + call assert_match('^"language .*\.*\.*\', @:) + + if has('unix') + " TODO: these tests don't work on Windows. lang appears to be 'C' + " but C does not appear in the completion. Why? + call assert_match('^"language .*\<' . lang . '\>', @:) + + call feedkeys(":language messages \\\"\", 'tx') + call assert_match('^"language .*\<' . lang . '\>', @:) + + call feedkeys(":language ctype \\\"\", 'tx') + call assert_match('^"language .*\<' . lang . '\>', @:) + + call feedkeys(":language time \\\"\", 'tx') + call assert_match('^"language .*\<' . lang . '\>', @:) + endif +endfunc + func Test_cmdline_write_alternatefile() new call setline('.', ['one', 'two']) diff --git a/src/version.c b/src/version.c index 9d4d4493b5..12ba8c41cd 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 85, /**/ 84, /**/ From 1ceebb4efc455dc6c34e0cd2c2adbd00939f038b Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 19:46:06 +0200 Subject: [PATCH 15/24] patch 8.1.0086: no tests for libcall() and libcallnr() Problem: No tests for libcall() and libcallnr(). Solution: Add tests. (Dominique Pelle, closes #2982) --- src/testdir/test_functions.vim | 36 ++++++++++++++++++++++++++++++++++ src/version.c | 2 ++ 2 files changed, 38 insertions(+) diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim index b76bc78e79..7efbbe8829 100644 --- a/src/testdir/test_functions.vim +++ b/src/testdir/test_functions.vim @@ -948,3 +948,39 @@ func Test_reg_executing_and_recording() delfunc s:save_reg_stat unlet s:reg_stat endfunc + +func Test_libcall_libcallnr() + if !has('libcall') + return + endif + + if has('win32') + let libc = 'msvcrt.dll' + elseif has('mac') + let libc = 'libSystem.B.dylib' + else + " On Unix, libc.so can be in various places. + " Interestingly, using an empty string for the 1st argument of libcall + " allows to call functions from libc which is not documented. + let libc = '' + endif + + if has('win32') + call assert_equal($USERPROFILE, libcall(libc, 'getenv', 'USERPROFILE')) + else + call assert_equal($HOME, libcall(libc, 'getenv', 'HOME')) + endif + + " If function returns NULL, libcall() should return an empty string. + call assert_equal('', libcall(libc, 'getenv', 'X_ENV_DOES_NOT_EXIT')) + + " Test libcallnr() with string and integer argument. + call assert_equal(4, libcallnr(libc, 'strlen', 'abcd')) + call assert_equal(char2nr('A'), libcallnr(libc, 'toupper', char2nr('a'))) + + call assert_fails("call libcall(libc, 'Xdoesnotexist_', '')", 'E364:') + call assert_fails("call libcallnr(libc, 'Xdoesnotexist_', '')", 'E364:') + + call assert_fails("call libcall('Xdoesnotexist_', 'getenv', 'HOME')", 'E364:') + call assert_fails("call libcallnr('Xdoesnotexist_', 'strlen', 'abcd')", 'E364:') +endfunc diff --git a/src/version.c b/src/version.c index 12ba8c41cd..bd3bca11cb 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 86, /**/ 85, /**/ From f9c3883b11b33f0c548df5e949ba59fde74d3e7b Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 19:59:20 +0200 Subject: [PATCH 16/24] patch 8.1.0087: v:shell_error is always zero when using terminal for "!cmd" Problem: v:shell_error is always zero when using terminal for "!cmd". Solution: Use "exitval" of terminal-job. (Ozaki Kiichi, closes #2994) --- src/os_unix.c | 10 ++++- src/os_win32.c | 8 +++- src/proto/terminal.pro | 1 + src/terminal.c | 6 +++ src/testdir/test_terminal.vim | 78 ++++++++++++++++++++++++----------- src/version.c | 2 + 6 files changed, 80 insertions(+), 25 deletions(-) diff --git a/src/os_unix.c b/src/os_unix.c index 05ad6b8dfd..3649276c49 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -4365,6 +4365,7 @@ mch_call_shell_terminal( char_u *tofree2 = NULL; int retval = -1; buf_T *buf; + job_T *job; aco_save_T aco; oparg_T oa; /* operator arguments */ @@ -4374,6 +4375,11 @@ mch_call_shell_terminal( init_job_options(&opt); ch_log(NULL, "starting terminal for system command '%s'", cmd); buf = term_start(NULL, argv, &opt, TERM_START_SYSTEM); + if (buf == NULL) + goto theend; + + job = term_getjob(buf->b_term); + ++job->jv_refcount; /* Find a window to make "buf" curbuf. */ aucmd_prepbuf(&aco, buf); @@ -4391,9 +4397,11 @@ mch_call_shell_terminal( else normal_cmd(&oa, TRUE); } - retval = 0; + retval = job->jv_exitval; ch_log(NULL, "system command finished"); + job_unref(job); + /* restore curwin/curbuf and a few other things */ aucmd_restbuf(&aco); diff --git a/src/os_win32.c b/src/os_win32.c index bece2c4c61..f8884e4011 100644 --- a/src/os_win32.c +++ b/src/os_win32.c @@ -4796,6 +4796,7 @@ mch_call_shell_terminal( long_u cmdlen; int retval = -1; buf_T *buf; + job_T *job; aco_save_T aco; oparg_T oa; /* operator arguments */ @@ -4826,6 +4827,9 @@ mch_call_shell_terminal( if (buf == NULL) return 255; + job = term_getjob(buf->b_term); + ++job->jv_refcount; + /* Find a window to make "buf" curbuf. */ aucmd_prepbuf(&aco, buf); @@ -4842,9 +4846,11 @@ mch_call_shell_terminal( else normal_cmd(&oa, TRUE); } - retval = 0; + retval = job->jv_exitval; ch_log(NULL, "system command finished"); + job_unref(job); + /* restore curwin/curbuf and a few other things */ aucmd_restbuf(&aco); diff --git a/src/proto/terminal.pro b/src/proto/terminal.pro index 25f9647f25..1031876c48 100644 --- a/src/proto/terminal.pro +++ b/src/proto/terminal.pro @@ -55,5 +55,6 @@ void f_term_setkill(typval_T *argvars, typval_T *rettv); void f_term_start(typval_T *argvars, typval_T *rettv); void f_term_wait(typval_T *argvars, typval_T *rettv); void term_send_eof(channel_T *ch); +job_T *term_getjob(term_T *term); int terminal_enabled(void); /* vim: set ft=c : */ diff --git a/src/terminal.c b/src/terminal.c index a67c87a4be..6195ad51df 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -5336,6 +5336,12 @@ term_send_eof(channel_T *ch) } } + job_T * +term_getjob(term_T *term) +{ + return term != NULL ? term->tl_job : NULL; +} + # if defined(WIN3264) || defined(PROTO) /************************************** diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim index c082b3b73e..bce7e10dee 100644 --- a/src/testdir/test_terminal.vim +++ b/src/testdir/test_terminal.vim @@ -522,29 +522,6 @@ func Test_terminal_env() exe buf . 'bwipe' endfunc -" must be last, we can't go back from GUI to terminal -func Test_zz_terminal_in_gui() - if !CanRunGui() - return - endif - - " Ignore the "failed to create input context" error. - call test_ignore_error('E285:') - - gui -f - - call assert_equal(1, winnr('$')) - let buf = Run_shell_in_terminal({'term_finish': 'close'}) - call Stop_shell_in_terminal(buf) - call term_wait(buf) - - " closing window wipes out the terminal buffer a with finished job - call WaitForAssert({-> assert_equal(1, winnr('$'))}) - call assert_equal("", bufname(buf)) - - unlet g:job -endfunc - func Test_terminal_list_args() let buf = term_start([&shell, &shellcmdflag, 'echo "123"']) call assert_fails(buf . 'bwipe', 'E517') @@ -1546,3 +1523,58 @@ func Test_terminwinscroll() exe buf . 'bwipe!' endfunc + +" must be nearly the last, we can't go back from GUI to terminal +func Test_zz1_terminal_in_gui() + if !CanRunGui() + return + endif + + " Ignore the "failed to create input context" error. + call test_ignore_error('E285:') + + gui -f + + call assert_equal(1, winnr('$')) + let buf = Run_shell_in_terminal({'term_finish': 'close'}) + call Stop_shell_in_terminal(buf) + call term_wait(buf) + + " closing window wipes out the terminal buffer a with finished job + call WaitForAssert({-> assert_equal(1, winnr('$'))}) + call assert_equal("", bufname(buf)) + + unlet g:job +endfunc + +func Test_zz2_terminal_guioptions_bang() + if !has('gui_running') + return + endif + set guioptions+=! + + let filename = 'Xtestscript' + if has('win32') + let filename .= '.bat' + let prefix = '' + let contents = ['@echo off', 'exit %1'] + else + let filename .= '.sh' + let prefix = './' + let contents = ['#!/bin/sh', 'exit $1'] + endif + call writefile(contents, filename) + call setfperm(filename, 'rwxrwx---') + + " Check if v:shell_error is equal to the exit status. + let exitval = 0 + execute printf(':!%s%s %d', prefix, filename, exitval) + call assert_equal(exitval, v:shell_error) + + let exitval = 9 + execute printf(':!%s%s %d', prefix, filename, exitval) + call assert_equal(exitval, v:shell_error) + + set guioptions& + call delete(filename) +endfunc diff --git a/src/version.c b/src/version.c index bd3bca11cb..72a8238581 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 87, /**/ 86, /**/ From 5319191a2a726c18a153ee53e9fac506340d16c7 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 20:08:14 +0200 Subject: [PATCH 17/24] patch 8.1.0088: terminal test for stdout and stderr is a bit flaky Problem: Terminal test for stdout and stderr is a bit flaky. Solution: Wait for both stdout and stderr to have been processed. (Ozaki Kiichi, closes #2991) --- src/testdir/test_terminal.vim | 5 +++-- src/version.c | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim index bce7e10dee..52c35aaaad 100644 --- a/src/testdir/test_terminal.vim +++ b/src/testdir/test_terminal.vim @@ -1487,8 +1487,9 @@ func Test_terminal_out_err() let outfile = 'Xtermstdout' let buf = term_start(['./Xechoerrout.sh'], {'out_io': 'file', 'out_name': outfile}) - call WaitForAssert({-> assert_inrange(1, 2, len(readfile(outfile)))}) - call assert_equal("this is standard out", readfile(outfile)[0]) + + call WaitFor({-> !empty(readfile(outfile)) && !empty(term_getline(buf, 1))}) + call assert_equal(['this is standard out'], readfile(outfile)) call assert_equal('this is standard error', term_getline(buf, 1)) call WaitForAssert({-> assert_equal('dead', job_status(term_getjob(buf)))}) diff --git a/src/version.c b/src/version.c index 72a8238581..9a1fbc6544 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 88, /**/ 87, /**/ From a15b0a936d2013e99e9323da9b920a5d93e4fb5a Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 19 Jun 2018 22:34:46 +0200 Subject: [PATCH 18/24] patch 8.1.0089: error when ending the terminal debugger Problem: error when ending the terminal debugger Solution: Fix deleting defined signs for breakpoints. Make the debugger work better on MS-Windows. --- .../dist/opt/termdebug/plugin/termdebug.vim | 42 +++++++++++++------ src/version.c | 2 + 2 files changed, 32 insertions(+), 12 deletions(-) diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index 9b931d1437..2a2e3398a6 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -408,7 +408,7 @@ func s:GdbOutCallback(channel, text) " Drop the gdb prompt, we have our own. " Drop status and echo'd commands. - if a:text == '(gdb) ' || a:text == '^done' || a:text[0] == '&' || a:text[0] == '=' + if a:text == '(gdb) ' || a:text == '^done' || a:text[0] == '&' return endif if a:text =~ '^^error,msg=' @@ -439,7 +439,7 @@ endfunc " to the next ", unescaping characters. func s:DecodeMessage(quotedText) if a:quotedText[0] != '"' - echoerr 'DecodeMessage(): missing quote' + echoerr 'DecodeMessage(): missing quote in ' . a:quotedText return endif let result = '' @@ -459,6 +459,16 @@ func s:DecodeMessage(quotedText) return result endfunc +" Extract the "name" value from a gdb message with fullname="name". +func s:GetFullname(msg) + let name = s:DecodeMessage(substitute(a:msg, '.*fullname=', '', '')) + if has('win32') && name =~ ':\\\\' + " sometimes the name arrives double-escaped + let name = substitute(name, '\\\\', '\\', 'g') + endif + return name +endfunc + func s:EndTermDebug(job, status) exe 'bwipe! ' . s:commbuf unlet s:gdbwin @@ -639,9 +649,13 @@ func s:DeleteCommands() for key in keys(s:breakpoints) exe 'sign unplace ' . (s:break_id + key) endfor - sign undefine debugPC - sign undefine debugBreakpoint unlet s:breakpoints + + sign undefine debugPC + for val in s:BreakpointSigns + exe "sign undefine debugBreakpoint" . val + endfor + unlet s:BreakpointSigns endfunc " :Break - Set a breakpoint at the cursor position. @@ -660,8 +674,9 @@ func s:SetBreakpoint() endif sleep 10m endif - call s:SendCommand('-break-insert --source ' - \ . fnameescape(expand('%:p')) . ' --line ' . line('.')) + " Use the fname:lnum format, older gdb can't handle --source. + call s:SendCommand('-break-insert ' + \ . fnameescape(expand('%:p')) . ':' . line('.')) if do_continue call s:SendCommand('-exec-continue') endif @@ -790,7 +805,11 @@ func s:HandleCursor(msg) call s:GotoSourcewinOrCreateIt() - let fname = substitute(a:msg, '.*fullname="\([^"]*\)".*', '\1', '') + if a:msg =~ 'fullname=' + let fname = s:GetFullname(a:msg) + else + let fname = '' + endif if a:msg =~ '^\(\*stopped\|=thread-selected\)' && filereadable(fname) let lnum = substitute(a:msg, '.*line="\([^"]*\)".*', '\1', '') if lnum =~ '^[0-9]*$' @@ -816,13 +835,12 @@ func s:HandleCursor(msg) call win_gotoid(wid) endfunc +let s:BreakpointSigns = [] + func s:CreateBreakpoint(nr) - if !exists("s:BreakpointSigns") - let s:BreakpointSigns = [] - endif if index(s:BreakpointSigns, a:nr) == -1 call add(s:BreakpointSigns, a:nr) - exe "sign define debugBreakpoint". a:nr . " text=" . a:nr . " texthl=debugBreakpoint" + exe "sign define debugBreakpoint" . a:nr . " text=" . a:nr . " texthl=debugBreakpoint" endif endfunc @@ -842,7 +860,7 @@ func s:HandleNewBreakpoint(msg) let s:breakpoints[nr] = entry endif - let fname = substitute(a:msg, '.*fullname="\([^"]*\)".*', '\1', '') + let fname = s:GetFullname(a:msg) let lnum = substitute(a:msg, '.*line="\([^"]*\)".*', '\1', '') let entry['fname'] = fname let entry['lnum'] = lnum diff --git a/src/version.c b/src/version.c index 9a1fbc6544..d49516e500 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 89, /**/ 88, /**/ From 9b0c5c23bd5260caef82a4f3dcc945c129857c52 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Wed, 20 Jun 2018 20:37:36 +0200 Subject: [PATCH 19/24] patch 8.1.0090: "..." used inconsistently in a message Problem: "..." used inconsistently in a message. Solution: Define the message with " ..." once. (hint by Ken Takata) --- src/regexp_nfa.c | 13 +++++++------ src/version.c | 2 ++ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c index fe0df3503e..3c270e6891 100644 --- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -2672,6 +2672,7 @@ nfa_set_code(int c) #ifdef ENABLE_LOG static FILE *log_fd; +static char_u e_log_open_failed[] = N_("Could not open temporary log file for writing, displaying on stderr... "); /* * Print the postfix notation of the current regexp. @@ -2687,7 +2688,7 @@ nfa_postfix_dump(char_u *expr, int retval) { fprintf(f, "\n-------------------------\n"); if (retval == FAIL) - fprintf(f, ">>> NFA engine failed ... \n"); + fprintf(f, ">>> NFA engine failed... \n"); else if (retval == OK) fprintf(f, ">>> NFA engine succeeded !\n"); fprintf(f, "Regexp: \"%s\"\nPostfix notation (char): \"", expr); @@ -5270,7 +5271,7 @@ recursive_regmatch( } else { - EMSG(_("Could not open temporary log file for writing, displaying on stderr... ")); + EMSG(_(e_log_open_failed)); log_fd = stderr; } #endif @@ -5620,7 +5621,7 @@ nfa_regmatch( } else { - EMSG(_("Could not open temporary log file for writing, displaying on stderr ... ")); + EMSG(_(e_log_open_failed)); log_fd = stderr; } #endif @@ -5704,7 +5705,7 @@ nfa_regmatch( #ifdef ENABLE_LOG fprintf(log_fd, "------------------------------------------\n"); fprintf(log_fd, ">>> Reginput is \"%s\"\n", reginput); - fprintf(log_fd, ">>> Advanced one character ... Current char is %c (code %d) \n", curc, (int)curc); + fprintf(log_fd, ">>> Advanced one character... Current char is %c (code %d) \n", curc, (int)curc); fprintf(log_fd, ">>> Thislist has %d states available: ", thislist->n); { int i; @@ -5757,7 +5758,7 @@ nfa_regmatch( else col = (int)(t->subs.norm.list.line[0].start - regline); nfa_set_code(t->state->c); - fprintf(log_fd, "(%d) char %d %s (start col %d)%s ... \n", + fprintf(log_fd, "(%d) char %d %s (start col %d)%s... \n", abs(t->state->id), (int)t->state->c, code, col, pim_info(&t->pim)); } @@ -7282,7 +7283,7 @@ nfa_regcomp(char_u *expr, int re_flags) if (f != NULL) { - fprintf(f, "\n*****************************\n\n\n\n\tCompiling regexp \"%s\" ... hold on !\n", expr); + fprintf(f, "\n*****************************\n\n\n\n\tCompiling regexp \"%s\"... hold on !\n", expr); fclose(f); } } diff --git a/src/version.c b/src/version.c index d49516e500..1cc60120e8 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 90, /**/ 89, /**/ From 4551c0a9fcdbdef52836d4852686d54b5e47fdaf Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Wed, 20 Jun 2018 22:38:21 +0200 Subject: [PATCH 20/24] patch 8.1.0091: MS-Windows: Cannot interrupt gdb when program is running Problem: MS-Windows: Cannot interrupt gdb when program is running. Solution: Add debugbreak() and use it in the terminal debugger. Respect 'modified' in a prompt buffer. --- runtime/doc/eval.txt | 6 +++ .../dist/opt/termdebug/plugin/termdebug.vim | 44 ++++++++++++++----- src/evalfunc.c | 33 ++++++++++++++ src/undo.c | 4 +- src/version.c | 2 + 5 files changed, 77 insertions(+), 12 deletions(-) diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 2243892aa7..d4c58e81f6 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -2108,6 +2108,7 @@ cscope_connection([{num}, {dbpath} [, {prepend}]]) cursor({lnum}, {col} [, {off}]) Number move cursor to {lnum}, {col}, {off} cursor({list}) Number move cursor to position in {list} +debugbreak({pid}) Number interrupt process being debugged deepcopy({expr} [, {noref}]) any make a full copy of {expr} delete({fname} [, {flags}]) Number delete the file or directory {fname} deletebufline({expr}, {first}[, {last}]) @@ -3480,6 +3481,11 @@ cursor({list}) position within a or after the last character. Returns 0 when the position could be set, -1 otherwise. +debugbreak({pid}) *debugbreak()* + Specifically used to interrupt a program being debugged. It + will cause process {pid} to get a SIGTRAP. Behavior for other + processes is undefined. See |terminal-debugger|. + {only available on MS-Windows} deepcopy({expr} [, {noref}]) *deepcopy()* *E698* Make a copy of {expr}. For Numbers and Strings this isn't diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index 2a2e3398a6..d837acd8cb 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -98,6 +98,7 @@ func s:StartDebug_internal(dict) return endif let s:ptywin = 0 + let s:pid = 0 " Uncomment this line to write logging in "debuglog". " call ch_logfile('debuglog', 'w') @@ -271,6 +272,8 @@ func s:StartDebug_prompt(dict) exe 'bwipe! ' . s:promptbuf return endif + " Mark the buffer modified so that it's not easy to close. + set modified let s:gdb_channel = job_getchannel(s:gdbjob) " Interpret commands while the target is running. This should usualy only @@ -396,10 +399,16 @@ func s:PromptCallback(text) call s:SendCommand(a:text) endfunc -" Function called when pressing CTRL-C in the prompt buffer. +" Function called when pressing CTRL-C in the prompt buffer and when placing a +" breakpoint. func s:PromptInterrupt() - call ch_log('Interrupting gdb') - call job_stop(s:gdbjob, 'int') + if s:pid == 0 + echoerr 'Cannot interrupt gdb, did not find a process ID' + else + call ch_log('Interrupting gdb') + " Using job_stop(s:gdbjob, 'int') does not work. + call debugbreak(s:pid) + endif endfunc " Function called when gdb outputs text. @@ -430,7 +439,7 @@ func s:GdbOutCallback(channel, text) " Add the output above the current prompt. call append(line('$') - 1, text) - set nomodified + set modified call win_gotoid(curwinid) endfunc @@ -509,6 +518,7 @@ endfunc func s:EndPromptDebug(job, status) let curwinid = win_getid(winnr()) call win_gotoid(s:gdbwin) + set nomodified close if curwinid != s:gdbwin call win_gotoid(curwinid) @@ -535,6 +545,8 @@ func s:CommOutput(chan, msg) call s:HandleNewBreakpoint(msg) elseif msg =~ '^=breakpoint-deleted,' call s:HandleBreakpointDelete(msg) + elseif msg =~ '^=thread-group-started' + call s:HandleProgramRun(msg) elseif msg =~ '^\^done,value=' call s:HandleEvaluate(msg) elseif msg =~ '^\^error,msg=' @@ -655,7 +667,7 @@ func s:DeleteCommands() for val in s:BreakpointSigns exe "sign undefine debugBreakpoint" . val endfor - unlet s:BreakpointSigns + let s:BreakpointSigns = [] endfunc " :Break - Set a breakpoint at the cursor position. @@ -666,9 +678,7 @@ func s:SetBreakpoint() if !s:stopped let do_continue = 1 if s:way == 'prompt' - " Need to send a signal to get the UI to listen. Strangely this is only - " needed once. - call job_stop(s:gdbjob, 'int') + call s:PromptInterrupt() else call s:SendCommand('-exec-interrupt') endif @@ -798,13 +808,13 @@ func s:HandleCursor(msg) let wid = win_getid(winnr()) if a:msg =~ '^\*stopped' + call ch_log('program stopped') let s:stopped = 1 elseif a:msg =~ '^\*running' + call ch_log('program running') let s:stopped = 0 endif - call s:GotoSourcewinOrCreateIt() - if a:msg =~ 'fullname=' let fname = s:GetFullname(a:msg) else @@ -813,6 +823,7 @@ func s:HandleCursor(msg) if a:msg =~ '^\(\*stopped\|=thread-selected\)' && filereadable(fname) let lnum = substitute(a:msg, '.*line="\([^"]*\)".*', '\1', '') if lnum =~ '^[0-9]*$' + call s:GotoSourcewinOrCreateIt() if expand('%:p') != fnamemodify(fname, ':p') if &modified " TODO: find existing window @@ -828,7 +839,7 @@ func s:HandleCursor(msg) exe 'sign place ' . s:pc_id . ' line=' . lnum . ' name=debugPC file=' . fname setlocal signcolumn=yes endif - else + elseif !s:stopped || fname != '' exe 'sign unplace ' . s:pc_id endif @@ -892,6 +903,17 @@ func s:HandleBreakpointDelete(msg) endif endfunc +" Handle the debugged program starting to run. +" Will store the process ID in s:pid +func s:HandleProgramRun(msg) + let nr = substitute(a:msg, '.*pid="\([0-9]*\)\".*', '\1', '') + 0 + if nr == 0 + return + endif + let s:pid = nr + call ch_log('Detected process ID: ' . s:pid) +endfunc + " Handle a BufRead autocommand event: place any signs. func s:BufRead() let fname = expand(':p') diff --git a/src/evalfunc.c b/src/evalfunc.c index 3cb66f3bbc..24c31945d7 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -123,6 +123,9 @@ static void f_cosh(typval_T *argvars, typval_T *rettv); static void f_count(typval_T *argvars, typval_T *rettv); static void f_cscope_connection(typval_T *argvars, typval_T *rettv); static void f_cursor(typval_T *argsvars, typval_T *rettv); +#ifdef WIN3264 +static void f_debugbreak(typval_T *argvars, typval_T *rettv); +#endif static void f_deepcopy(typval_T *argvars, typval_T *rettv); static void f_delete(typval_T *argvars, typval_T *rettv); static void f_deletebufline(typval_T *argvars, typval_T *rettv); @@ -577,6 +580,9 @@ static struct fst {"count", 2, 4, f_count}, {"cscope_connection",0,3, f_cscope_connection}, {"cursor", 1, 3, f_cursor}, +#ifdef WIN3264 + {"debugbreak", 1, 1, f_debugbreak}, +#endif {"deepcopy", 1, 2, f_deepcopy}, {"delete", 1, 2, f_delete}, {"deletebufline", 2, 3, f_deletebufline}, @@ -2761,6 +2767,33 @@ f_cursor(typval_T *argvars, typval_T *rettv) rettv->vval.v_number = 0; } +#ifdef WIN3264 +/* + * "debugbreak()" function + */ + static void +f_debugbreak(typval_T *argvars, typval_T *rettv) +{ + int pid; + + rettv->vval.v_number = FAIL; + pid = (int)get_tv_number(&argvars[0]); + if (pid == 0) + EMSG(_(e_invarg)); + else + { + HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, pid); + + if (hProcess != NULL) + { + DebugBreakProcess(hProcess); + CloseHandle(hProcess); + rettv->vval.v_number = OK; + } + } +} +#endif + /* * "deepcopy()" function */ diff --git a/src/undo.c b/src/undo.c index 6e3381f8cd..117321ea62 100644 --- a/src/undo.c +++ b/src/undo.c @@ -3539,7 +3539,9 @@ bufIsChanged(buf_T *buf) int bufIsChangedNotTerm(buf_T *buf) { - return !bt_dontwrite(buf) + // In a "prompt" buffer we do respect 'modified', so that we can control + // closing the window by setting or resetting that option. + return (!bt_dontwrite(buf) || bt_prompt(buf)) && (buf->b_changed || file_ff_differs(buf, TRUE)); } diff --git a/src/version.c b/src/version.c index 1cc60120e8..3fcdb73b15 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 91, /**/ 90, /**/ From 71ef1ba5e996f34d3e0acbe1d89c4c6bfa5e98ba Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 21 Jun 2018 12:07:04 +0200 Subject: [PATCH 21/24] patch 8.1.0092: prompt buffer test fails Problem: Prompt buffer test fails. Solution: Set 'nomodified' before closing the window. (Ozaki Kiichi, closes #3051 --- src/testdir/test_prompt_buffer.vim | 2 ++ src/version.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/testdir/test_prompt_buffer.vim b/src/testdir/test_prompt_buffer.vim index a6269dec49..1b8a1ec749 100644 --- a/src/testdir/test_prompt_buffer.vim +++ b/src/testdir/test_prompt_buffer.vim @@ -24,6 +24,8 @@ func WriteScript(name) call writefile([ \ 'func TextEntered(text)', \ ' if a:text == "exit"', + \ ' " Reset &modified to allow the buffer to be closed.', + \ ' set nomodified', \ ' stopinsert', \ ' close', \ ' else', diff --git a/src/version.c b/src/version.c index 3fcdb73b15..80a3c2cbde 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 92, /**/ 91, /**/ From 2ed890f1f810f977ec6a235efd8bf58adddcd0e7 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 21 Jun 2018 20:31:14 +0200 Subject: [PATCH 22/24] patch 8.1.0093: non-MS-Windows: Cannot interrupt gdb when program is running Problem: non-MS-Windows: Cannot interrupt gdb when program is running. Solution: Only use debugbreak() on MS-Windows. --- .../pack/dist/opt/termdebug/plugin/termdebug.vim | 15 ++++++++++----- src/version.c | 2 ++ 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index d837acd8cb..b6d9ac5b8a 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -402,12 +402,17 @@ endfunc " Function called when pressing CTRL-C in the prompt buffer and when placing a " breakpoint. func s:PromptInterrupt() - if s:pid == 0 - echoerr 'Cannot interrupt gdb, did not find a process ID' + call ch_log('Interrupting gdb') + if has('win32') + " Using job_stop() does not work on MS-Windows, need to send SIGTRAP to + " the debugger program so that gdb responds again. + if s:pid == 0 + echoerr 'Cannot interrupt gdb, did not find a process ID' + else + call debugbreak(s:pid) + endif else - call ch_log('Interrupting gdb') - " Using job_stop(s:gdbjob, 'int') does not work. - call debugbreak(s:pid) + call job_stop(s:gdbjob, 'int') endif endfunc diff --git a/src/version.c b/src/version.c index 80a3c2cbde..b821423eae 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 93, /**/ 92, /**/ From 32aaf5ae07af1d5befaf997688fde5d6637d43f8 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 21 Jun 2018 21:38:33 +0200 Subject: [PATCH 23/24] patch 8.1.0094: help text "usage:" is not capatalized Problem: Help text "usage:" is not capatalized. Solution: Make it "Usage:". (closes #3044) --- src/main.c | 2 +- src/version.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main.c b/src/main.c index c741fc4060..66b67b826d 100644 --- a/src/main.c +++ b/src/main.c @@ -3269,7 +3269,7 @@ usage(void) #endif mch_msg(longVersion); - mch_msg(_("\n\nusage:")); + mch_msg(_("\n\nUsage:")); for (i = 0; ; ++i) { mch_msg(_(" vim [arguments] ")); diff --git a/src/version.c b/src/version.c index b821423eae..109c4b7e6c 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 94, /**/ 93, /**/ From 39902a06d92750c203d86c921b9d69995f949d97 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 21 Jun 2018 22:10:08 +0200 Subject: [PATCH 24/24] patch 8.1.0095: dialog for ":browse tabnew" says "new window" Problem: Dialog for ":browse tabnew" says "new window". Solution: Use "new tab page". (closes #3053) --- src/ex_docmd.c | 11 +++++++---- src/version.c | 2 ++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 5229e0e73b..4d5036f229 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -8200,6 +8200,9 @@ ex_splitview(exarg_T *eap) #ifdef FEAT_BROWSE int browse_flag = cmdmod.browse; #endif + int use_tab = eap->cmdidx == CMD_tabedit + || eap->cmdidx == CMD_tabfind + || eap->cmdidx == CMD_tabnew; #ifdef FEAT_GUI need_mouse_correct = TRUE; @@ -8248,7 +8251,9 @@ ex_splitview(exarg_T *eap) } else { - fname = do_browse(0, (char_u *)_("Edit File in new window"), + fname = do_browse(0, (char_u *)(use_tab + ? _("Edit File in new tab page") + : _("Edit File in new window")), eap->arg, NULL, NULL, NULL, curbuf); if (fname == NULL) goto theend; @@ -8261,9 +8266,7 @@ ex_splitview(exarg_T *eap) /* * Either open new tab page or split the window. */ - if (eap->cmdidx == CMD_tabedit - || eap->cmdidx == CMD_tabfind - || eap->cmdidx == CMD_tabnew) + if (use_tab) { if (win_new_tabpage(cmdmod.tab != 0 ? cmdmod.tab : eap->addr_count == 0 ? 0 diff --git a/src/version.c b/src/version.c index 109c4b7e6c..4bd054c7f1 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 95, /**/ 94, /**/