# HG changeset patch # User Bram Moolenaar # Date 1598801406 -7200 # Node ID bbca88cd13d5a14ad792b8282f4bb47f502e59c9 # Parent 8086857308b923939415242a5c3ee193e772bf37 Update runtime files. Commit: https://github.com/vim/vim/commit/207f009326c8f878defde0e594d7d9ed9860106e Author: Bram Moolenaar Date: Sun Aug 30 17:20:20 2020 +0200 Update runtime files. diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -1,7 +1,7 @@ " Vim functions for file type detection " " Maintainer: Bram Moolenaar -" Last Change: 2020 Mar 30 +" Last Change: 2020 Aug 17 " These functions are moved here from runtime/filetype.vim to make startup " faster. diff --git a/runtime/compiler/eslint.vim b/runtime/compiler/eslint.vim --- a/runtime/compiler/eslint.vim +++ b/runtime/compiler/eslint.vim @@ -1,7 +1,7 @@ " Vim compiler file " Compiler: ESLint for JavaScript " Maintainer: Romain Lafourcade -" Last Change: 2020 May 17 +" Last Change: 2020 August 20 if exists("current_compiler") finish @@ -12,5 +12,5 @@ if exists(":CompilerSet") != 2 command -nargs=* CompilerSet setlocal endif -CompilerSet makeprg=eslint\ --format\ compact +CompilerSet makeprg=npx\ eslint\ --format\ compact CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m,%-G%.%# diff --git a/runtime/compiler/standard.vim b/runtime/compiler/standard.vim --- a/runtime/compiler/standard.vim +++ b/runtime/compiler/standard.vim @@ -1,7 +1,7 @@ " Vim compiler file " Compiler: Standard for JavaScript " Maintainer: Romain Lafourcade -" Last Change: 2020 May 17 +" Last Change: 2020 August 20 if exists("current_compiler") finish @@ -12,5 +12,5 @@ if exists(":CompilerSet") != 2 command -nargs=* CompilerSet setlocal endif -CompilerSet makeprg=standard -CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m,%-G%.%# +CompilerSet makeprg=npx\ standard +CompilerSet errorformat=%f:%l:%c:\ %m,%-G%.%# diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -1,4 +1,4 @@ -*change.txt* For Vim version 8.2. Last change: 2020 Jun 04 +*change.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -153,7 +153,7 @@ the 'joinspaces' option is on, these com '!' or '?' (but if 'cpoptions' includes the 'j' flag, they insert two spaces only after a '.'). The 'B' and 'M' flags in 'formatoptions' change the behavior for inserting -spaces before and after a multi-byte character |fo-table|. +spaces before and after a multibyte character |fo-table|. The '[ mark is set at the end of the first line that was joined, '] at the end of the resulting line. @@ -1680,11 +1680,11 @@ b Like 'v', but only auto-wrap if you en l Long lines are not broken in insert mode: When a line was longer than 'textwidth' when the insert command started, Vim does not automatically format it. -m Also break at a multi-byte character above 255. This is useful for +m Also break at a multibyte character above 255. This is useful for Asian text where every character is a word on its own. -M When joining lines, don't insert a space before or after a multi-byte +M When joining lines, don't insert a space before or after a multibyte character. Overrules the 'B' flag. -B When joining lines, don't insert a space between two multi-byte +B When joining lines, don't insert a space between two multibyte characters. Overruled by the 'M' flag. 1 Don't break a line after a one-letter word. It's broken before it instead (if possible). diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt --- a/runtime/doc/develop.txt +++ b/runtime/doc/develop.txt @@ -1,4 +1,4 @@ -*develop.txt* For Vim version 8.2. Last change: 2020 Jul 27 +*develop.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -473,7 +473,7 @@ available spell checking libraries and p was that none of them provided sufficient capabilities to be used as the spell checking engine in Vim, for various reasons: -- Missing support for multi-byte encodings. At least UTF-8 must be supported, +- Missing support for multibyte encodings. At least UTF-8 must be supported, so that more than one language can be used in the same file. Doing on-the-fly conversion is not always possible (would require iconv support). diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt --- a/runtime/doc/editing.txt +++ b/runtime/doc/editing.txt @@ -1,4 +1,4 @@ -*editing.txt* For Vim version 8.2. Last change: 2020 Jul 05 +*editing.txt* For Vim version 8.2. Last change: 2020 Aug 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -652,7 +652,7 @@ list of the current window. :args ## x < This will add the "x" item and sort the new list. -:argd[elete] {pattern} .. *:argd* *:argdelete* *E480* +:argd[elete] {pattern} .. *:argd* *:argdelete* *E480* *E610* Delete files from the argument list that match the {pattern}s. {pattern} is used like a file pattern, see |file-pattern|. "%" can be used to delete the @@ -662,7 +662,7 @@ list of the current window. Example: > :argdel *.obj -:[range]argd[elete] Delete the {range} files from the argument list. +:[range]argd[elete] Delete the [range] files from the argument list. Example: > :10,$argdel < Deletes arguments 10 and further, keeping 1-9. > diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 8.2. Last change: 2020 Aug 15 +*eval.txt* For Vim version 8.2. Last change: 2020 aug 30 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1135,7 +1135,7 @@ In legacy Vim script: If expr8 is a Number or String this results in a String that contains the expr1'th single byte from expr8. expr8 is used as a String (a number is automatically converted to a String), expr1 as a Number. This doesn't -recognize multi-byte encodings, see `byteidx()` for an alternative, or use +recognize multibyte encodings, see `byteidx()` for an alternative, or use `split()` to turn the string into a list of characters. Example, to get the byte under the cursor: > :let c = getline(".")[col(".") - 1] @@ -1163,12 +1163,12 @@ error. expr8[expr1a : expr1b] substring or sublist *expr-[:]* -If expr8 is a String this results in the substring with the bytes from expr1a -to and including expr1b. expr8 is used as a String, expr1a and expr1b are -used as a Number. +If expr8 is a String this results in the substring with the bytes or +characters from expr1a to and including expr1b. expr8 is used as a String, +expr1a and expr1b are used as a Number. In legacy Vim script the indexes are byte indexes. This doesn't recognize -multi-byte encodings, see |byteidx()| for computing the indexes. If expr8 is +multibyte encodings, see |byteidx()| for computing the indexes. If expr8 is a Number it is first converted to a String. In Vim9 script the indexes are character indexes. To use byte indexes use @@ -1185,6 +1185,7 @@ expr1b is smaller than expr1a the result Examples: > :let c = name[-1:] " last byte of a string + :let c = name[0:-1] " the whole string :let c = name[-2:-2] " last but one byte of a string :let s = line(".")[4:] " from the fifth byte to the end :let s = s[:-3] " remove last two bytes @@ -2359,7 +2360,7 @@ assert_equalfile({fname-one}, {fname-two Number assert file contents are equal assert_exception({error} [, {msg}]) Number assert {error} is in v:exception -assert_fails({cmd} [, {error} [, {msg}]]) +assert_fails({cmd} [, {error} [, {msg} [, {lnum}]]]) Number assert {cmd} fails assert_false({actual} [, {msg}]) Number assert {actual} is false @@ -5722,6 +5723,7 @@ getreginfo([{regname}]) *getreginfo( If {regname} is invalid or not set, an empty Dictionary will be returned. If {regname} is not specified, |v:register| is used. + The returned Dictionary can be passed to |setreg()|. Can also be used as a |method|: > GetRegname()->getreginfo() @@ -6029,7 +6031,7 @@ has({feature} [, {check}]) zero otherwise. This is useful to check for a typo in {feature} and to detect dead code. Keep in mind that an older Vim version will not know about a feature added later and - features that have been abandoned will not be know by the + features that have been abandoned will not be known by the current Vim version. Also see |exists()|. @@ -8971,7 +8973,7 @@ setcellwidths({list}) *setcellwidths tells Vim how wide characters are, counted in screen cells. This overrides 'ambiwidth'. Example: > setcellwidths([[0xad, 0xad, 1], - \ [0x2194, 0x2199, 2]] + \ [0x2194, 0x2199, 2]]) < *E1109* *E1110* *E1111* *E1112* *E1113* The {list} argument is a list of lists with each three @@ -8986,6 +8988,8 @@ setcellwidths({list}) *setcellwidths To clear the overrides pass an empty list: > setcellwidths([]); +< You can use the script $VIMRUNTIME/tools/emoji_list.vim to see + the effect for known emoji characters. setcharsearch({dict}) *setcharsearch()* @@ -11443,7 +11447,7 @@ mouse_urxvt Compiled with support for u mouse_xterm Compiled with support for xterm mouse. mouseshape Compiled with support for 'mouseshape'. multi_byte Compiled with support for 'encoding' (always true) -multi_byte_encoding 'encoding' is set to a multi-byte encoding. +multi_byte_encoding 'encoding' is set to a multibyte encoding. multi_byte_ime Compiled with support for IME input method. multi_lang Compiled with support for multiple languages. mzscheme Compiled with MzScheme interface |mzscheme|. diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt --- a/runtime/doc/help.txt +++ b/runtime/doc/help.txt @@ -1,4 +1,4 @@ -*help.txt* For Vim version 8.2. Last change: 2020 Apr 05 +*help.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM - main help file k @@ -158,7 +158,7 @@ Programming language support ~ Language support ~ |digraph.txt| list of available digraphs -|mbyte.txt| multi-byte text support +|mbyte.txt| multibyte text support |mlang.txt| non-English language support |rileft.txt| right-to-left editing mode |arabic.txt| Arabic language support and editing diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -1,4 +1,4 @@ -*intro.txt* For Vim version 8.2. Last change: 2020 May 30 +*intro.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -232,8 +232,8 @@ Vim would never have become what it is n Flemming Madsen X11 client-server, various features and patches Tony Mechelynck answers many user questions Paul Moore Python interface extensions, many patches - Katsuhito Nagano Work on multi-byte versions - Sung-Hyun Nam Work on multi-byte versions + Katsuhito Nagano Work on multibyte versions + Sung-Hyun Nam Work on multibyte versions Vince Negri Win32 GUI and generic console enhancements Steve Oualline Author of the first Vim book |frombook| Dominique Pelle Valgrind reports and many fixes @@ -510,7 +510,7 @@ the ":map" command. The rules are: Meta- a ('a' with bit 8 set) Meta- A ('A' with bit 8 set) "kd" termcap entry (cursor down key) - Although you can specify with {char} being a multi-byte + Although you can specify with {char} being a multibyte character, Vim may not be able to know what byte sequence that is and then it won't work. diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt --- a/runtime/doc/map.txt +++ b/runtime/doc/map.txt @@ -1,4 +1,4 @@ -*map.txt* For Vim version 8.2. Last change: 2020 Aug 01 +*map.txt* For Vim version 8.2. Last change: 2020 Aug 30 VIM REFERENCE MANUAL by Bram Moolenaar @@ -191,6 +191,12 @@ whether to use the "," mapping or the lo argument. Then the mapping will be used when it matches, Vim does not wait for more characters to be typed. However, if the characters were already typed they are used. +Note that this works when the mapping fully matches and is found +before any partial matches. This works when: +- There is only one matching buffer-local mapping, since these are always + found before global mappings. +- There is another buffer-local mapping that partly matches, but it is was + defined earlier (last defined mapping is found first). *:map-* *:map-silent* To define a mapping which will not be echoed on the command line, add @@ -595,7 +601,7 @@ construct can be used: character 27 character 127 character 114 ('r') shifted ('R') -This is useful to specify a (multi-byte) character in a 'keymap' file. +This is useful to specify a (multibyte) character in a 'keymap' file. Upper and lowercase differences are ignored. *map-comments* diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt --- a/runtime/doc/mbyte.txt +++ b/runtime/doc/mbyte.txt @@ -1,4 +1,4 @@ -*mbyte.txt* For Vim version 8.2. Last change: 2019 Jul 04 +*mbyte.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar et al. @@ -36,7 +36,7 @@ 1. Getting started *mbyte-first* This is a summary of the multibyte features in Vim. If you are lucky it works as described and you can start using Vim without much trouble. If something doesn't work you will have to read the rest. Don't be surprised if it takes -quite a bit of work and experimenting to make Vim use all the multi-byte +quite a bit of work and experimenting to make Vim use all the multibyte features. Unfortunately, every system has its own way to deal with multibyte languages and it is quite complicated. @@ -123,7 +123,7 @@ You can also set 'guifont' alone, Vim wi INPUT -There are several ways to enter multi-byte characters: +There are several ways to enter multibyte characters: - For X11 XIM can be used. See |XIM|. - For MS-Windows IME can be used. See |IME|. - For all systems keymaps can be used. See |mbyte-keymap|. @@ -237,11 +237,11 @@ encoded with one byte, we call this a si used one is called "latin1". This limits the number of characters to 256. Some of these are control characters, thus even fewer can be used for text. -When some characters use two or more bytes, we call this a multi-byte +When some characters use two or more bytes, we call this a multibyte encoding. This allows using much more than 256 characters, which is required for most East Asian languages. -Most multi-byte encodings use one byte for the first 127 characters. These +Most multibyte encodings use one byte for the first 127 characters. These are equal to ASCII, which makes it easy to exchange plain-ASCII text, no matter what language is used. Thus you might see the right text even when the encoding was set wrong. @@ -488,11 +488,11 @@ possible. ============================================================================== 4. Using a terminal *mbyte-terminal* -The GUI fully supports multi-byte characters. It is also possible in a +The GUI fully supports multibyte characters. It is also possible in a terminal, if the terminal supports the same encoding that Vim uses. Thus this is less flexible. -For example, you can run Vim in a xterm with added multi-byte support and/or +For example, you can run Vim in a xterm with added multibyte support and/or |XIM|. Examples are kterm (Kanji term) and hanterm (for Korean), Eterm (Enlightened terminal) and rxvt. @@ -544,7 +544,7 @@ For Vim you may need to set 'encoding' t 5. Fonts on X11 *mbyte-fonts-X11* Unfortunately, using fonts in X11 is complicated. The name of a single-byte -font is a long string. For multi-byte fonts we need several of these... +font is a long string. For multibyte fonts we need several of these... Note: Most of this is no longer relevant for GTK+ 2. Selecting a font via its XLFD is not supported; see 'guifont' for an example of how to @@ -610,7 +610,7 @@ written like: X FONTSET *fontset* *xfontset* -A single-byte charset is typically associated with one font. For multi-byte +A single-byte charset is typically associated with one font. For multibyte charsets a combination of fonts is often used. This means that one group of characters are used from one font and another group from another font (which might be double wide). This collection of fonts is called a fontset. @@ -1436,7 +1436,7 @@ not everybody is able to type a composin ============================================================================== 12. Overview of options *mbyte-options* -These options are relevant for editing multi-byte files. Check the help in +These options are relevant for editing multibyte files. Check the help in options.txt for detailed information. 'encoding' Encoding used for the keyboard and display. It is also the @@ -1456,14 +1456,14 @@ options.txt for detailed information. languages where a sequence of characters can be broken anywhere. -'guifontset' The list of font names used for a multi-byte encoding. When +'guifontset' The list of font names used for a multibyte encoding. When this option is not empty, it replaces 'guifont'. 'keymap' Specify the name of a keyboard mapping. ============================================================================== -Contributions specifically for the multi-byte features by: +Contributions specifically for the multibyte features by: Chi-Deok Hwang SungHyun Nam K.Nagano diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 8.2. Last change: 2020 Jan 01 +*message.txt* For Vim version 8.2. Last change: 2020 Aug 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -19,13 +19,14 @@ The ":messages" command can be used to v is especially useful when messages have been overwritten or truncated. This depends on the 'shortmess' option. - :messages Show all messages. + :mes[sages] Show all messages. - :{count}messages Show the {count} most recent messages. + :{count}mes[sages] Show the {count} most recent messages. - :messages clear Clear all messages. + :mes[sages] clear Clear all messages. - :{count}messages clear Clear messages, keeping only the {count} most + :{count}mes[sages] clear + Clear messages, keeping only the {count} most recent ones. The number of remembered messages is fixed at 20 for the tiny version and 200 diff --git a/runtime/doc/mlang.txt b/runtime/doc/mlang.txt --- a/runtime/doc/mlang.txt +++ b/runtime/doc/mlang.txt @@ -1,4 +1,4 @@ -*mlang.txt* For Vim version 8.2. Last change: 2020 Jun 16 +*mlang.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -7,7 +7,7 @@ Multi-language features *multilang* *multi-lang* This is about using messages and menus in various languages. For editing -multi-byte text see |multibyte|. +multibyte text see |multibyte|. The basics are explained in the user manual: |usr_45.txt|. diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -1,4 +1,4 @@ -*motion.txt* For Vim version 8.2. Last change: 2019 Nov 16 +*motion.txt* For Vim version 8.2. Last change: 2020 Aug 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -495,10 +495,11 @@ a set of section macros, specified by th 'sections' option. The default is "SHNHH HUnhsh", which defines a section to start at the nroff macros ".SH", ".NH", ".H", ".HU", ".nh" and ".sh". -The "]" and "[" commands stop at the '{' or '}' in the first column. This is -useful to find the start or end of a function in a C program. Note that the -first character of the command determines the search direction and the -second character the type of brace found. +The "]]" and "[[" commands stop at the '{' in the first column. This is +useful to find the start of a function in a C program. To search for a '}' in +the first column, the end of a C function, use "][" (forward) or "[]" +(backward). Note that the first character of the command determines the +search direction. If your '{' or '}' are not in the first column, and you would like to use "[[" and "]]" anyway, try these mappings: > @@ -1142,7 +1143,7 @@ sequence of small changes in a line, for to the change list. When 'textwidth' is zero 'wrapmargin' is used. When that also isn't set a fixed number of 79 is used. Detail: For the computations bytes are used, not characters, to avoid a speed penalty (this only matters -for multi-byte encodings). +for multibyte encodings). Note that when text has been inserted or deleted the cursor position might be a bit different from the position of the change. Especially when lines have diff --git a/runtime/doc/netbeans.txt b/runtime/doc/netbeans.txt --- a/runtime/doc/netbeans.txt +++ b/runtime/doc/netbeans.txt @@ -1,4 +1,4 @@ -*netbeans.txt* For Vim version 8.2. Last change: 2020 Apr 19 +*netbeans.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Gordon Prieur et al. @@ -362,12 +362,12 @@ color Argument with either a decimal nu offset A number argument that indicates a byte position in a buffer. The first byte has offset zero. Line breaks are counted for how they appear in the file (CR/LF counts for two bytes). - Note that a multi-byte character is counted for the number of + Note that a multibyte character is counted for the number of bytes it takes. lnum/col Argument with a line number and column number position. The line number starts with one, the column is the byte position, - starting with zero. Note that a multi-byte character counts + starting with zero. Note that a multibyte character counts for several columns. pathname String argument: file name with full path. diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 8.2. Last change: 2020 Aug 13 +*options.txt* For Vim version 8.2. Last change: 2020 Aug 28 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2735,8 +2735,9 @@ A jump table for the options with a shor is replaced with the path name of the edited file. - For Unix and Win32, if a directory ends in two path separators "//", the swap file name will be built from the complete path to the file - with all path separators substituted to percent '%' signs. This will - ensure file name uniqueness in the preserve directory. + with all path separators replaced by percent '%' signs (including + the colon following the drive letter on Win32). This will ensure + file name uniqueness in the preserve directory. On Win32, it is also possible to end with "\\". However, When a separating comma is following, you must use "//", since "\\" will include the comma in the file name. Therefore it is recommended to @@ -2834,7 +2835,7 @@ A jump table for the options with a shor This is specified with 'fileencoding'. The conversion is done with iconv() or as specified with 'charconvert'. - If you need to know whether 'encoding' is a multi-byte encoding, you + If you need to know whether 'encoding' is a multibyte encoding, you can use: > if has("multi_byte_encoding") < @@ -6189,7 +6190,7 @@ A jump table for the options with a shor screen. If the statusline is given by 'statusline' (i.e. not empty), this option takes precedence over 'ruler' and 'rulerformat' If the number of characters displayed is different from the number of - bytes in the text (e.g., for a TAB or a multi-byte character), both + bytes in the text (e.g., for a TAB or a multibyte character), both the text column (byte number) and the screen column are shown, separated with a dash. For an empty line "0-1" is shown. diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 8.2. Last change: 2020 Jul 10 +*pattern.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -939,7 +939,7 @@ An ordinary atom can be: These three can be used to match specific columns in a buffer or string. The "23" can be any column number. The first column is 1. Actually, the column is the byte number (thus it's not exactly right - for multi-byte characters). + for multibyte characters). WARNING: When inserting or deleting text Vim does not automatically update the matches. This means Syntax highlighting quickly becomes wrong. @@ -994,7 +994,7 @@ Character classes: \p printable character (see 'isprint' option) */\p* \P like "\p", but excluding digits */\P* -NOTE: the above also work for multi-byte characters. The ones below only +NOTE: the above also work for multibyte characters. The ones below only match ASCII characters, as indicated by the range. *whitespace* *white-space* @@ -1131,9 +1131,9 @@ x A single character, with no special me a list of at least one character, each of which is either '-', '.', '/', alphabetic, numeric, '_' or '~'. These items only work for 8-bit characters, except [:lower:] and - [:upper:] also work for multi-byte characters when using the new + [:upper:] also work for multibyte characters when using the new regexp engine. See |two-engines|. In the future these items may - work for multi-byte characters. For now, to get all "alpha" + work for multibyte characters. For now, to get all "alpha" characters you can use: [[:lower:][:upper:]]. The "Func" column shows what library function is used. The @@ -1257,8 +1257,8 @@ When working with expression evaluation, matches a in the string. The use of "\n" (backslash n) to match a doesn't work there, it only works to match text in the buffer. - *pattern-multi-byte* -Patterns will also work with multi-byte characters, mostly as you would + *pattern-multi-byte* *pattern-multibyte* +Patterns will also work with multibyte characters, mostly as you would expect. But invalid bytes may cause trouble, a pattern with an invalid byte will probably never match. diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt --- a/runtime/doc/pi_netrw.txt +++ b/runtime/doc/pi_netrw.txt @@ -1,4 +1,4 @@ -*pi_netrw.txt* For Vim version 8.2. Last change: 2020 Jan 14 +*pi_netrw.txt* For Vim version 8.2. Last change: 2020 Aug 15 ------------------------------------------------ NETRW REFERENCE MANUAL by Charles E. Campbell @@ -3054,7 +3054,7 @@ your browsing preferences. (see also: | (see |netrw-c-tab|). *g:netrw_xstrlen* Controls how netrw computes string lengths, - including multi-byte characters' string + including multibyte characters' string length. (thanks to N Weibull, T Mechelynck) =0: uses Vim's built-in strlen() =1: number of codepoints (Latin a + combining diff --git a/runtime/doc/print.txt b/runtime/doc/print.txt --- a/runtime/doc/print.txt +++ b/runtime/doc/print.txt @@ -1,4 +1,4 @@ -*print.txt* For Vim version 8.2. Last change: 2019 Dec 17 +*print.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -114,7 +114,7 @@ If 'printencoding' is empty or Vim canno encoding file. If Vim is unable to find a character encoding file then it will use the "latin1" print character encoding file. -When 'encoding' is set to a multi-byte encoding, Vim will try to convert +When 'encoding' is set to a multibyte encoding, Vim will try to convert characters to the printing encoding for printing (if 'printencoding' is empty then the conversion will be to latin1). Conversion to a printing encoding other than latin1 will require Vim to be compiled with the |+iconv| feature. @@ -269,7 +269,7 @@ Japanese text you would do the following :set printmbcharset=JIS_X_1983 If 'printmbcharset' is not one of the above values then it is assumed to -specify a custom multi-byte character set and no check will be made that it is +specify a custom multibyte character set and no check will be made that it is compatible with the value for 'printencoding'. Vim will look for a file defining the character set in the "print" directory in 'runtimepath'. @@ -304,7 +304,7 @@ printing of characters in the ASCII code a:yes Use ASCII character set for codes in the ASCII a:no (default) code range. -The following is an example of specifying two multi-byte fonts, one for normal +The following is an example of specifying two multibyte fonts, one for normal and italic printing and one for bold and bold-italic printing, and using Courier to print codes in the ASCII code range but using the national character set: > @@ -420,10 +420,10 @@ There are currently a number of limitati possible to get all the characters in an encoding to print by installing a new version of the Courier font family. -- Multi-byte support - Currently Vim will try to convert multi-byte characters +- Multi-byte support - Currently Vim will try to convert multibyte characters to the 8-bit encoding specified by 'printencoding' (or latin1 if it is empty). Any characters that are not successfully converted are shown as - unknown characters. Printing will fail if Vim cannot convert the multi-byte + unknown characters. Printing will fail if Vim cannot convert the multibyte to the 8-bit encoding. ============================================================================== @@ -508,7 +508,7 @@ print ASCII text using the national char characters. If you want true ASCII code printing then you need to configure Vim to output ASCII characters for the ASCII code range with 'printmbfont'. -It is possible to define your own multi-byte character set although this +It is possible to define your own multibyte character set although this should not be attempted lightly. A discussion on the process if beyond the scope of these help files. You can find details on CMap (character map) files in the document 'Adobe CMap and CIDFont Files Specification, Version 1.0', diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 8.2. Last change: 2020 Jun 10 +*quickref.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -696,7 +696,7 @@ Short explanation of each option: *opti 'eventignore' 'ei' autocommand events that are ignored 'expandtab' 'et' use spaces when is inserted 'exrc' 'ex' read .vimrc and .exrc in the current directory -'fileencoding' 'fenc' file encoding for multi-byte text +'fileencoding' 'fenc' file encoding for multibyte text 'fileencodings' 'fencs' automatically detected character encodings 'fileformat' 'ff' file format used for file I/O 'fileformats' 'ffs' automatically detected values for 'fileformat' @@ -728,7 +728,7 @@ Short explanation of each option: *opti 'grepprg' 'gp' program to use for ":grep" 'guicursor' 'gcr' GUI: settings for cursor shape and blinking 'guifont' 'gfn' GUI: Name(s) of font(s) to be used -'guifontset' 'gfs' GUI: Names of multi-byte fonts to be used +'guifontset' 'gfs' GUI: Names of multibyte fonts to be used 'guifontwide' 'gfw' list of font names for double-wide characters 'guiheadroom' 'ghr' GUI: pixels room for window decorations 'guioptions' 'go' GUI: Which components and options are used diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -887,7 +887,7 @@ time ":mkspell" is used. Vim will then generate a spell file for 'encoding'. If some of the used characters to not fit in 'encoding' you will get an error message. *spell-affix-mbyte* -When using a multi-byte encoding it's possible to use more different affix +When using a multibyte encoding it's possible to use more different affix flags. But Myspell doesn't support that, thus you may not want to use it anyway. For compatibility use an 8-bit encoding. diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 8.2. Last change: 2020 Jul 28 +*syntax.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -4348,7 +4348,7 @@ Notes: - A negative offset for an end pattern may not always work, because the end pattern may be detected when the highlighting should already have stopped. - Before Vim 7.2 the offsets were counted in bytes instead of characters. - This didn't work well for multi-byte characters, so it was changed with the + This didn't work well for multibyte characters, so it was changed with the Vim 7.2 release. - The start of a match cannot be in a line other than where the pattern matched. This doesn't work: "a\nb"ms=e. You can make the highlighting diff --git a/runtime/doc/tags b/runtime/doc/tags --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -3894,6 +3894,8 @@ E10 message.txt /*E10* E100 diff.txt /*E100* E101 diff.txt /*E101* E102 diff.txt /*E102* +E1023 vim9.txt /*E1023* +E1024 vim9.txt /*E1024* E103 diff.txt /*E103* E104 digraph.txt /*E104* E1042 vim9.txt /*E1042* @@ -3906,7 +3908,12 @@ E1092 vim9.txt /*E1092* E1094 vim9.txt /*E1094* E11 cmdline.txt /*E11* E110 eval.txt /*E110* +E1109 eval.txt /*E1109* E111 eval.txt /*E111* +E1110 eval.txt /*E1110* +E1111 eval.txt /*E1111* +E1112 eval.txt /*E1112* +E1113 eval.txt /*E1113* E112 eval.txt /*E112* E113 eval.txt /*E113* E114 eval.txt /*E114* @@ -4437,6 +4444,7 @@ E607 eval.txt /*E607* E608 eval.txt /*E608* E609 if_cscop.txt /*E609* E61 pattern.txt /*E61* +E610 editing.txt /*E610* E612 sign.txt /*E612* E613 print.txt /*E613* E614 editing.txt /*E614* @@ -5722,6 +5730,7 @@ char2nr() eval.txt /*char2nr()* characterwise motion.txt /*characterwise* characterwise-register change.txt /*characterwise-register* characterwise-visual visual.txt /*characterwise-visual* +charclass() eval.txt /*charclass()* charconvert_from-variable eval.txt /*charconvert_from-variable* charconvert_to-variable eval.txt /*charconvert_to-variable* charity uganda.txt /*charity* @@ -6949,6 +6958,7 @@ gettabinfo() eval.txt /*gettabinfo()* gettabvar() eval.txt /*gettabvar()* gettabwinvar() eval.txt /*gettabwinvar()* gettagstack() eval.txt /*gettagstack()* +gettext() eval.txt /*gettext()* getwininfo() eval.txt /*getwininfo()* getwinpos() eval.txt /*getwinpos()* getwinposx() eval.txt /*getwinposx()* @@ -8154,6 +8164,7 @@ new-more-highlighting version7.txt /*new new-more-unicode version7.txt /*new-more-unicode* new-multi-byte version5.txt /*new-multi-byte* new-multi-lang version6.txt /*new-multi-lang* +new-multibyte version5.txt /*new-multibyte* new-netrw-explore version7.txt /*new-netrw-explore* new-network-files version6.txt /*new-network-files* new-omni-completion version7.txt /*new-omni-completion* @@ -8167,7 +8178,7 @@ new-persistent-undo version7.txt /*new-p new-plugins version6.txt /*new-plugins* new-popup-window version8.txt /*new-popup-window* new-posix version7.txt /*new-posix* -new-print-multi-byte version7.txt /*new-print-multi-byte* +new-print-multibyte version7.txt /*new-print-multibyte* new-printing version6.txt /*new-printing* new-python3 version7.txt /*new-python3* new-regexp-engine version7.txt /*new-regexp-engine* @@ -8310,6 +8321,7 @@ pattern-atoms pattern.txt /*pattern-atom pattern-delimiter change.txt /*pattern-delimiter* pattern-multi-byte pattern.txt /*pattern-multi-byte* pattern-multi-items pattern.txt /*pattern-multi-items* +pattern-multibyte pattern.txt /*pattern-multibyte* pattern-overview pattern.txt /*pattern-overview* pattern-searches pattern.txt /*pattern-searches* pattern.txt pattern.txt /*pattern.txt* @@ -8821,6 +8833,7 @@ set-option options.txt /*set-option* set-spc-auto spell.txt /*set-spc-auto* setbufline() eval.txt /*setbufline()* setbufvar() eval.txt /*setbufvar()* +setcellwidths() eval.txt /*setcellwidths()* setcharsearch() eval.txt /*setcharsearch()* setcmdpos() eval.txt /*setcmdpos()* setenv() eval.txt /*setenv()* @@ -9643,6 +9656,7 @@ twice if_cscop.txt /*twice* two-engines pattern.txt /*two-engines* type() eval.txt /*type()* type-casting vim9.txt /*type-casting* +type-checking vim9.txt /*type-checking* type-inference vim9.txt /*type-inference* type-mistakes tips.txt /*type-mistakes* typecorr-settings usr_41.txt /*typecorr-settings* diff --git a/runtime/doc/testing.txt b/runtime/doc/testing.txt --- a/runtime/doc/testing.txt +++ b/runtime/doc/testing.txt @@ -1,4 +1,4 @@ -*testing.txt* For Vim version 8.2. Last change: 2020 Jul 11 +*testing.txt* For Vim version 8.2. Last change: 2020 Aug 17 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 8.2. Last change: 2020 Aug 15 +*todo.txt* For Vim version 8.2. Last change: 2020 Aug 29 VIM REFERENCE MANUAL by Bram Moolenaar @@ -38,25 +38,25 @@ browser use: https://github.com/vim/vim/ *known-bugs* -------------------- Known bugs and current work ----------------------- -What is the way to get the character under the cursor? With or without -composing characters. getline(".") and then use col(".") somehow? -Add charidx() perhaps? +Why does Test_invalid_sid() not work in the GUI? Making everything work: -- Slice of list: [1, 2, 3][1:2]. -- Slice of string: "abc"[1:2]. (#6709) +- Check :const works the same as in legacy script. - Run the same tests in :def and Vim9 script, like in Test_expr7_not() - :put with a "=" register argument doesn't work, need to find the expression and compile it. (#6397) -- At the script level, keep script variables local to the block they are +- At the Vim9 script level, keep script variables local to the block they are declared in? Need to remember what variables were declared and delete them when leaving the block. - Implement { } block at the script level. +- Use the line number argument with assert_fails() in many more tests. - In autocmd: use legacy syntax, not whatever the current script uses? - need to check type when a declaration specifies a type: #6507 let nr: number = 'asdf' - Make sure that in vim9script a function call without namespace only finds the script-local function, not a global one. +- Make sure that where a callback is expected a function can be used (without + quotes). E.g. sort() and map(). Also at the script level. - Make map() give an error if the resulting type is wrong. Add mapnew() to create a new List/Dict for the result, which can have a different value type. @@ -261,23 +261,24 @@ Terminal emulator window: - When 'encoding' is not utf-8, or the job is using another encoding, setup conversions. -Error numbers available: -E610, E611, E653 - -Clean up empty entries in testdir/Make_all.mak +Error numbers available: E653 + +Remove "MacOS X installation"? $APPDIR is no longer set. Remove SPACE_IN_FILENAME ? It is only used for completion. -Patch to use collaction based sorting. (Christian Brabandt, #6229) +Patch to use collation based sorting. (Christian Brabandt, #6229) Add 'termguiattr' option, use "gui=" attributes in the terminal? Would work with 'termguicolors'. #1740 +Patch for blockwise paste reporting changes: #6660. + Can we detect true color support? https://gist.github.com/XVilka/8346728 Try setting a color then request the current color, like using t_u7. Check out PR #543 (Roland Puntaier). -Patch for multi-byte characters in langmap and applying a mapping on them. +Patch for multibyte characters in langmap and applying a mapping on them. (Christian Brabandt, 2015 Jun 12, update July 25) Is this the right solution? Need to cleanup langmap behavior: - in vgetorpeek() apply langmap to the typeahead buffer and put the result in @@ -424,6 +425,7 @@ Should do current file first and not spl Undo history wrong when ":next file" re-uses a buffer. (#5426) ex_next() should pass flag to do_argfile(), then to do_ecmd(). +Is there a test for this? Help for ":argadd fname" says that if "fname" is already in the argument list that entry is used. But instead it's always added. (#6210) @@ -1231,7 +1233,7 @@ Screen update bug related to matchparen. Rule to use "^" for statusline does not work if a space is defined with highlighting for both stl and stlnc. Patch by Ken Hamada (itchyny, 2016 Dec 11) -8 "stl" and "stlnc" in 'fillchars' don't work for multi-byte characters. +8 "stl" and "stlnc" in 'fillchars' don't work for multibyte characters. Patch by Christian Wellenbrock, 2013 Jul 5. Using CTRL-G_U in InsertCharPre causes trouble for redo. (Israel Chauca @@ -1382,7 +1384,7 @@ Regexp problems: - Bug with pattern: '\vblock (\d+)\.\n.*\d+%(\1)@ and \?. (Brett Stahlman, 2013 Dec 21) Remark from Marcin Szamotulski; Remark from Brett 2014 Jan 6 and 7. @@ -1597,7 +1599,7 @@ Patch to add :mapgroup, put mappings in Value returned by virtcol() changes depending on how lines wrap. This is inconsistent with the documentation. -Value of virtcol() for '[ and '] depend on multi-byte character. +Value of virtcol() for '[ and '] depend on multibyte character. (Luchr, #277) Can we cache the syntax attributes, so that updates for 'relativenumber' and @@ -2129,7 +2131,7 @@ Also for another example (ZyX, 2011 Jan Build problem with small features on Mac OS X 10.6. (Rainer, 2011 Jan 24) -"0g@$" puts '] on last byte of multi-byte. (ZyX, 2011 Jan 22) +"0g@$" puts '] on last byte of multibyte. (ZyX, 2011 Jan 22) Patch for :tabrecently. (Hirokazu Yoshida, 2012 Jan 30) @@ -2636,7 +2638,7 @@ work, the backslash is removed, assuming Kondakoff, 2009 May 13) Win32: Using "gvim --remote-tab-silent elŝuti.txt" doesn't work, the -multi-byte character isn't passed and edits elsuti.txt. +multibyte character isn't passed and edits elsuti.txt. (Raúl Núñez de Arenas Coronado, 2015 Dec 18) Problem with 'langmap' being used on the rhs of a mapping. (Nikolai Weibull, @@ -3197,7 +3199,7 @@ 8 Add a few more command names to the 7 ATTENTION dialog choices are more logical when "Delete it" appears before "Quit". Patch by Robert Webb, 2004 May 3. - Include flipcase patch: ~/vim/patches/wall.flipcase2 ? Make it work - for multi-byte characters. + for multibyte characters. - Win32: add options to print dialog. Patch from Vipin Aravind. - Patch to add highlighting for whitespace. (Tom Schumm, 2003 Jul 5) use the patch that keeps using HLF_8 if HLF_WS has not @@ -3693,8 +3695,8 @@ 8 "gf" always excludes trailing punctu 8 'hkmap' should probably be global-local. 8 Using ":s" in a function changes the previous replacement string. Save "old_sub" in save_search_patterns()? -8 Should allow multi-byte characters for the delimiter: ":s+a+b+" where "+" - is a multi-byte character. +8 Should allow multibyte characters for the delimiter: ":s+a+b+" where "+" + is a multibyte character. 8 When appending to a file and 'patchmode' isn't empty, a backup file is always written, even when the original file already exists. 9 When getting focus while writing a large file, could warn for this file @@ -3997,7 +3999,7 @@ 9 Make the Reference Manual more preci - change to cursor position and curswant - if it can be undone (u/CTRL-R) and redone (.) - how it works for folded lines - - how it works with multi-byte characters + - how it works with multibyte characters 9 In change.txt, remark about Javadoc isn't right. Right alignment would work too. 8 Spread the windows commands over the other files. For example, ":stag" @@ -4233,8 +4235,8 @@ 7 When converting a file fails, mentio 8 Add configure option to be able to disable using the iconv library. (Udo Schweigert) 9 'aleph' should be set to 1488 for Unicode. (Zvi Har'El) -8 Should add test for using various commands with multi-byte characters. -8 'infercase' doesn't work with multi-byte characters. +8 Should add test for using various commands with multibyte characters. +8 'infercase' doesn't work with multibyte characters. 8 toupper() function doesn't handle byte count changes. 7 Searching and composing characters: When searching, should order of composing characters be ignored? @@ -4242,7 +4244,7 @@ 7 Searching and composing characters: characters can be manipulated. 8 Should implement 'delcombine' for command line editing. 8 Detect overlong UTF-8 sequences and handle them like illegal bytes. -8 ":s/x/\u\1/" doesn't work, making uppercase isn't done for multi-byte +8 ":s/x/\u\1/" doesn't work, making uppercase isn't done for multibyte characters. 8 UTF-8: "r" in Visual mode doesn't take composing characters. 8 UTF-8: When there is a precomposed character in the font, use it instead @@ -4266,14 +4268,14 @@ 7 Use ideas for nl_langinfo() from Mar convert_input() for Mac GUI. - Add mnemonics from RFC1345 longer than two characters. Support CTRL-K _{mnemonic}_ -- Make 'breakat' accept multi-byte characters. Problem: can't use a lookup +- Make 'breakat' accept multibyte characters. Problem: can't use a lookup table anymore (breakat_flags[]). Simplistic solution: when 'formatoptions' contains "m" also break a line - at a multi-byte character >= 0x100. + at a multibyte character >= 0x100. - Add the possibility to enter mappings which are used whenever normal text could be entered. E.g., for "f" command. But not in Normal mode. Sort of opposite of 'langmap'. Use ":amap" command? -- When breaking a line, take properties of multi-byte characters into +- When breaking a line, take properties of multibyte characters into account. The "linebreak" program from Bruno Haible can do it: ftp://ftp.ilog.fr/pub/Users/haible/gnu/linebreak-0.1.tar.gz But it's very complicated... @@ -5338,11 +5340,11 @@ 8 Add text object for fold, so that it 8 Add test script for text object commands "aw", "iW", etc. 8 Add text object for part of a CamelHumpedWord and under_scored_word. (Scott Graham) "ac" and "au"? -8 Add a text object for any kind of quoting, also with multi-byte +8 Add a text object for any kind of quoting, also with multibyte characters. Option to specify what quotes are recognized (default: all) use "aq" and "iq". Use 'quotepairs' to define pairs of quotes, like 'matchpairs'? -8 Add text object for any kind of parens, also multi-byte ones. +8 Add text object for any kind of parens, also multibyte ones. 8 Add a way to make an ":omap" for a user-defined text object. Requires changing the starting position in oap->start. 8 Add "gp" and "gP" commands: insert text and make sure there is a single @@ -6118,7 +6120,7 @@ 8 Allow using a trailing space to sign regexp which triggers auto-formatting (for one line). ":set autoformat=\\s$". - Be able to redefine where a sentence stops. Use a regexp pattern? -- Support multi-byte characters for sentences. Example from Ben Peterson. +- Support multibyte characters for sentences. Example from Ben Peterson. 7 Add command "g)" to go to the end of a sentence, "g(" to go back to the end of a sentence. (Servatius Brandt) - Be able to redefine where a paragraph starts. For "[[" where the '{' is diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 8.2. Last change: 2020 Aug 13 +*usr_41.txt* For Vim version 8.2. Last change: 2020 Aug 30 VIM USER MANUAL - by Bram Moolenaar @@ -2069,7 +2069,7 @@ with this mechanism: > 22 map a TypecorrAdd; 23 endif -This checks if a mapping to "TypecorrAdd/" already exists, and only +This checks if a mapping to "TypecorrAdd;" already exists, and only defines the mapping from "a" if it doesn't. The user then has a chance of putting this in his vimrc file: > diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 8.2. Last change: 2020 Jul 10 +*various.txt* For Vim version 8.2. Last change: 2020 Aug 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -92,7 +92,7 @@ 8g8 Find an illegal UTF-8 byte sequenc encoding because it contains illegal bytes. Does not wrap around the end of the file. Note that when the cursor is on an illegal byte or the - cursor is halfway a multi-byte character the command + cursor is halfway a multibyte character the command won't move the cursor. *:p* *:pr* *:print* *E749* @@ -145,16 +145,16 @@ 8g8 Find an illegal UTF-8 byte sequenc :{range}z[+-^.=]{count} Display several lines of text surrounding the line specified with {range}, or around the current line if there is no {range}. If there is a {count}, that's - how many lines you'll see; if there is only one window - then twice the value of the 'scroll' option is used, - otherwise the current window height minus 3 is used. + how many lines you'll see; if there is no {count} and + only one window then twice the value of the 'scroll' + option is used, otherwise the current window height + minus 3 is used. If there is a {count} the 'window' option is set to its value. :z can be used either alone or followed by any of - several punctuation marks. These have the following - effect: + several marks. These have the following effect: mark first line last line new cursor line ~ ---- ---------- --------- ------------ diff --git a/runtime/doc/version5.txt b/runtime/doc/version5.txt --- a/runtime/doc/version5.txt +++ b/runtime/doc/version5.txt @@ -1,4 +1,4 @@ -*version5.txt* For Vim version 8.2. Last change: 2016 Feb 27 +*version5.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2133,12 +2133,12 @@ it is invoked. Deleted the "os_archie" files, they were not working anyway. -Multi-byte support *new-multi-byte* +Multi-byte support *new-multi-byte* *new-multibyte* ------------------ MultiByte support for Win32 GUI. (Baek) The 'fileencoding' option decides how the text in the file is encoded. -":ascii" works for multi-byte characters. Multi-byte characters work on +":ascii" works for multibyte characters. Multi-byte characters work on Windows 95, even when using the US version. (Aaron) Needs to be enabled in feature.h. This has not been tested much yet! @@ -3671,10 +3671,10 @@ For the ":clist" command, you can scroll "u" (half a screenful) and "k" (one line). Multi-byte support: -- X-input method for multi-byte characters. And various fixes for multi-byte +- X-input method for multibyte characters. And various fixes for multibyte support. (Nam) - Hangul input method feature: |hangul|. (Nam) -- Cleaned up configuration of multi-byte support, XIM, fontset and Hangul +- Cleaned up configuration of multibyte support, XIM, fontset and Hangul input. Each is now configurable separately. - Changed check for GTK_KEYBOARD to HANGUL_KEYBOARD_TYPE. (Nam) - Added doc/hangulin.txt: Documentation for the Hangul input code. (Nam) @@ -3682,10 +3682,10 @@ Multi-byte support: - First attempt to include support for SJIS encoding. (Nagano) - When a double-byte character doesn't fit at the end of the line, put a "~" there and print it on the next line. -- Optimize output of multi-byte text. (Park) +- Optimize output of multibyte text. (Park) - Win32 IME: preedit style is like over-the-spot. (Nagano) - Win32 IME: IME mode change now done with ImmSetOpenStatus. (Nagano) -- GUI Athena: file selection dialog can display multi-byte characters. +- GUI Athena: file selection dialog can display multibyte characters. (Nagano) - Selection reply for XA_TEXT as XA_STRING. (Nagano) @@ -3720,7 +3720,7 @@ X11: with the VisualNOS group to show this. (Madsen) - Support for requesting the type of clipboard support. Used for AIX and dtterm. (Wittig) -- Support compound_text selection (even when compiled without multi-byte). +- Support compound_text selection (even when compiled without multibyte). Swap file: - New variation for naming swap files: Replace path separators into %, place @@ -4063,7 +4063,7 @@ compiling pathdef.c. Replaced it with " Perl: DO_JOIN was redefined by Perl. Undefined it in the perl files. -Various XIM and multi-byte fixes: +Various XIM and multibyte fixes: - Fix user cannot see his language while he is typing his language with off-the-spot method. (Nagano) - Fix preedit position using text/edit area (using gui.wid). (Nagano) @@ -4080,7 +4080,7 @@ Various XIM and multi-byte fixes: - XIM: Composed strings were sometimes ignored. Vim crashed when compose string was longer than 256 bytes. IM's geometry control is fixed. (Nam, Nagano) -- Win32 multi-byte: hollowed cursor width on a double byte char was wrong. +- Win32 multibyte: hollowed cursor width on a double byte char was wrong. (Nagano) - When there is no GUI, selecting XIM caused compilation problems. Automatically disable XIM when there is no GUI in configure. @@ -5496,7 +5496,7 @@ Solution: When there is a comment lead Files: src/misc1.c Patch 5.4.26 -Problem: Multi-byte: a multi-byte character is never recognized in a file +Problem: Multi-byte: a multibyte character is never recognized in a file name, causing a backslash before it to be removed on Windows. Solution: Assume that a leading-byte character is a file name character in vim_isfilec(). @@ -5945,7 +5945,7 @@ Configure used fprintf() instead of prin BeOS: Adjust computing the char_height and char_ascent. Round them up separately, avoids redrawing artifacts. (Mike Steed) -Fix a few multi-byte problems in menu_name_skip(), set_reg_ic(), searchc() and +Fix a few multibyte problems in menu_name_skip(), set_reg_ic(), searchc() and findmatchlimit(). (Taro Muraoka) GTK GUI: @@ -6631,9 +6631,9 @@ Solution: Use a shell extension dll. ( Files: src/dosinst.c, src/uninstal.c, gvimext/*, runtime/doc/gui_w32.txt Patch 5.6a.028 (extra) -Problem: Win32 GUI: Dialogs and tear-off menus can't handle multi-byte +Problem: Win32 GUI: Dialogs and tear-off menus can't handle multibyte characters. -Solution: Adjust nCopyAnsiToWideChar() to handle multi-byte characters +Solution: Adjust nCopyAnsiToWideChar() to handle multibyte characters correctly. Files: src/gui_w32.c @@ -6727,9 +6727,9 @@ Many fixes to Macintosh specific parts: - Add digraphs table. (Axel Kielhorn) - Multi-byte support: (Kenichi Asai) Switch keyscript when going in/out of Insert mode. - Draw multi-byte character correctly. - Don't use mblen() but highest bit of char to detect multi-byte char. - Display value of multi-byte in statusline (also for other systems). + Draw multibyte character correctly. + Don't use mblen() but highest bit of char to detect multibyte char. + Display value of multibyte in statusline (also for other systems). - mouse button was not initialized properly to MOUSE_LEFT when USE_CTRLCLICKMENU not defined. - With Japanese SJIS characters: Make "w", "b", and "e" work @@ -6981,7 +6981,7 @@ Solution: Support TEXT and COMPOUND_TE Files: src/gui_gtk_x11.c Patch 5.6.037 -Problem: Multi-byte: Can't use "f" command with multi-byte character in GUI. +Problem: Multi-byte: Can't use "f" command with multibyte character in GUI. Solution: Enable XIM in Normal mode for the GUI. (Sung-Hyun Nam) Files: src/gui_gtk_x11.c, src/multbyte.c @@ -7094,7 +7094,7 @@ Files: src/fileio.c, src/tag.c Patch 5.6.052 Problem: Multi-byte: When an Ex command has a '|' or '"' as a second byte, it terminates the command. -Solution: Skip second byte of multi-byte char when checking for '|' and '"'. +Solution: Skip second byte of multibyte char when checking for '|' and '"'. (Asai Kenichi) Files: src/ex_docmd.c @@ -7246,7 +7246,7 @@ Files: src/Makefile.bor, src/dosinst Patch 5.6.074 (extra) Problem: Entering CSI directly doesn't always work, because it's recognized - as the start of a special key. Mostly a problem with multi-byte + as the start of a special key. Mostly a problem with multibyte in the GUI. Solution: Use K_CSI for a typed CSI character. Use for a normal CSI, for a CSI typed in the GUI. @@ -7337,7 +7337,7 @@ Solution: Use IsBadStringPtr() to chec Files: src/os_win32.c Patch 5.6.087 -Problem: Multi-byte: Commands and messages with multi-byte characters are +Problem: Multi-byte: Commands and messages with multibyte characters are displayed wrong. Solution: Detect double-byte characters. (Yasuhiro Matsumoto) Files: src/ex_getln.c, src/message.c, src/misc2.c, src/screen.c @@ -7384,9 +7384,9 @@ Solution: Don't write a message about Files: src/fileio.c Patch 5.6.094 -Problem: Problem with multi-byte string for ":echo var". +Problem: Problem with multibyte string for ":echo var". Solution: Check for length in msg_outtrans_len_attr(). (Sung-Hyun Nam) - Also make do_echo() aware of multi-byte characters. + Also make do_echo() aware of multibyte characters. Files: src/eval.c, src/message.c Patch 5.6.095 @@ -7417,9 +7417,9 @@ Files: src/misc1.c Patch 5.7a.003 Problem: Multi-byte: After using CTRL-O in Insert mode with the cursor at - the end of the line on a multi-byte character the cursor moves to + the end of the line on a multibyte character the cursor moves to the left. -Solution: Check for multi-byte character at end-of-line. (Taro Muraoka) +Solution: Check for multibyte character at end-of-line. (Taro Muraoka) Also: fix cls() to detect a double-byte character. (Chong-Dae Park) Files: src/edit.c, src/search.c @@ -7736,7 +7736,7 @@ Solution: Disallow executing a shell c Files: src/misc1.c, src/os_unix.c Patch 5.7.019 -Problem: Multibyte: In a substitute string, a multi-byte character isn't +Problem: Multibyte: In a substitute string, a multibyte character isn't skipped properly, can be a problem when the second byte is a backslash. Solution: Skip an extra byte for a double-byte character. (Muraoka Taro) diff --git a/runtime/doc/version6.txt b/runtime/doc/version6.txt --- a/runtime/doc/version6.txt +++ b/runtime/doc/version6.txt @@ -1,4 +1,4 @@ -*version6.txt* For Vim version 8.2. Last change: 2019 Jan 17 +*version6.txt* For Vim version 8.2. Last change: 2020 Aug 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -623,7 +623,7 @@ For syntax items: Removed limit of matching only up to 32767 times with *, \+, etc. -Added support to match multi-byte characters. (partly by Muraoka Taro) +Added support to match multibyte characters. (partly by Muraoka Taro) Made "\<" and "\>" work for UTF-8. (Muraoka Taro) @@ -664,10 +664,10 @@ Many new items for Multi-byte support: - Added 'guifontwide' to specify a font for double-wide characters. - Added Korean support for character class detection. Also fix cls() in search.c. (Chong-Dae Park) -- Win32: Typing multi-byte characters without IME. (Alexander Smishlajev) +- Win32: Typing multibyte characters without IME. (Alexander Smishlajev) - Win32 with Mingw: compile with iconv library. (Ron Aaron) - Win32 with MSVC: dynamically load iconv.dll library. (Muraoka Taro) -- Make it possible to build a version with multi-byte and iconv support with +- Make it possible to build a version with multibyte and iconv support with Borland 5.5. (Yasuhiro Matsumoto) - Added 'delcombine' option: Delete combining character separately. (Ron Aaron) @@ -680,19 +680,19 @@ Many new items for Multi-byte support: - Support "CursorIM" for XIM. (Nam SungHyun) - Added 'm' flag to 'formatoptions': When wrapping words, allow splitting at each multibyte character, not only at a space. -- Made ":syntax keyword" work with multi-byte characters. +- Made ":syntax keyword" work with multibyte characters. - Added support for Unicode upper/lowercase flipping and comparing. (based on patch by Raphael Finkel) - Let "~" on multi-byte characters that have a third case ("title case") + Let "~" on multibyte characters that have a third case ("title case") switch between the three cases. (Raphael Finkel) -Allow defining digraphs for multi-byte characters. +Allow defining digraphs for multibyte characters. Added RFC1345 digraphs for Unicode. Most Normal mode commands that accept a character argument, like "r", "t" and "f" now accept a digraph. The 'D' flag in 'cpoptions' disables this to remain Vi compatible. -Added Language mapping and 'keymap' to be able to type multi-byte characters: +Added Language mapping and 'keymap' to be able to type multibyte characters: - Added the ":lmap" command and friends: Define mappings that are used when typing characters in the language of the text. Also for "r", "t", etc. In Insert and Command-line mode CTRL-^ switches the use of the mappings on/off. @@ -715,7 +715,7 @@ Added Language mapping and 'keymap' to b - When typing a mapping that's not finished yet, display the last character under the cursor in Insert mode and Command-line mode. Looks good for dead characters. -- Made the 'langmap' option recognize multi-byte characters. But mapping only +- Made the 'langmap' option recognize multibyte characters. But mapping only works for 8-bit characters. Helps when using UTF-8. - Use a different cursor for when ":lmap" mappings are active. Can specify two highlight groups for an item in 'guicursor'. By default "lCursor" and @@ -726,7 +726,7 @@ Added Language mapping and 'keymap' to b Also works for "f", which now works to find a character that includes a composing character. -Other multi-byte character additions: +Other multibyte character additions: - Support double-byte single-width characters for euc-jp: Characters starting with 0x8E. Added ScreenLines2[] to store the second byte. @@ -1004,7 +1004,7 @@ systems a PostScript file is generated, (MS-Windows part by Vince Negri, Vipin Aravind, PostScript by Vince Negri and Mike Williams) -Made ":hardcopy" work with multi-byte characters. (Muraoka Taro, Yasuhiro +Made ":hardcopy" work with multibyte characters. (Muraoka Taro, Yasuhiro Matsumoto) Added options to tune the way printing works: (Vince Negri) @@ -1703,7 +1703,7 @@ GUI: - Win32: Added "c" flag to 'guifont' to be able to specify the charset. (Artem Khodush) - When no --enable-xim argument is given, automatically enable it when a X GUI - is used. Required for dead key support (and multi-byte input). + is used. Required for dead key support (and multibyte input). - After a file selection dialog, check that the edited files were not changed or deleted. The Win32 dialog allows deleting and renaming files. - Motif and Athena: Added support for "editres". (Marcin Dalecki) @@ -2025,8 +2025,8 @@ Timestamps: file that steadily grows. Mapping when 'encoding' is "latin1" and then setting 'encoding' to -"utf-8" causes the first byte of a multi-byte to be mapped. Can cause very -hard to find problems. Disallow mapping part of a multi-byte character. +"utf-8" causes the first byte of a multibyte to be mapped. Can cause very +hard to find problems. Disallow mapping part of a multibyte character. For ":python" and ":tcl" accept an in-line script. (Johannes Zellner) Also for ":ruby" and ":perl". (Benoit Cerrina) @@ -2467,7 +2467,7 @@ Motif: When adding many menu items, the menubar didn't wrap. Now manually set the menubar height. When using in Insert mode to remove a line break, or using "J" to join -lines, the cursor could end up halfway a multi-byte character. (Muraoka Taro) +lines, the cursor could end up halfway a multibyte character. (Muraoka Taro) Removed defining SVR4 in configure. It causes problems for some X header files and doesn't appear to be used anywhere. @@ -2617,12 +2617,12 @@ column. Can't encode a larger number in 222, don't jump back to the first column. GUI: In some versions CSI would cause trouble, either when typed directly or -when part of a multi-byte sequence. +when part of a multibyte sequence. When using multibyte characters in a ":normal" command, a trailing byte that is CSI or K_SPECIAL caused problems. -Wildmenu didn't handle multi-byte characters. +Wildmenu didn't handle multibyte characters. ":sleep 10" could not be interrupted on Windows, while "gs" could. Made them both work the same. @@ -2673,7 +2673,7 @@ path. Multi-byte: - Using an any-but character range [^x] in a regexp didn't work for UTF-8. (Muraoka Taro) -- When backspacing over inserted characters in Replace mode multi-byte +- When backspacing over inserted characters in Replace mode multibyte characters were not handled correctly. (Muraoka Taro) - Search commands "#" and "*" didn't work with multibyte characters. (Muraoka Taro) @@ -2701,8 +2701,8 @@ Multi-byte: - When a multibyte character contained a 0x80 byte, it didn't work (was using a CSI byte instead). (Muraoka Taro) - Wordwise selection with the mouse didn't work. -- Yanking a modeless selection of multi-byte characters didn't work. -- When 'selection' is "exclusive", selecting a word that ends in a multi-byte +- Yanking a modeless selection of multibyte characters didn't work. +- When 'selection' is "exclusive", selecting a word that ends in a multibyte character used wrong highlighting for the following character. Win32 with Make_mvc.mak: Didn't compile for debugging. (Craig Barkhouse) @@ -2801,7 +2801,7 @@ Multi-byte: included the character after the word. - When using a double-byte encoding and there is a lead byte at the end of the line, the preceding line would be displayed. "ga" also showed wrong info. -- "gf" didn't include multi-byte characters before the cursor properly. +- "gf" didn't include multibyte characters before the cursor properly. (Muraoka Taro) GUI: The cursor was sometimes not removed when scrolling. Changed the policy @@ -2919,7 +2919,7 @@ The message remembered for displaying la into a generic buffer, which might be changed by the time the message is displayed. Now make a copy of the message. -When using multi-byte characters in a menu and a trailing byte is a backslash, +When using multibyte characters in a menu and a trailing byte is a backslash, the menu would not be created correctly. (Muraoka Taro) Using a multibyte character in the substitute string where a trail byte is a backslash didn't work. (Muraoka Taro) @@ -2958,7 +2958,7 @@ the output. Don't define the termcode in an xterm, reduces the problem when someone types } in Insert mode. -Made slash_adjust() work correctly for multi-byte characters. (Yasuhiro +Made slash_adjust() work correctly for multibyte characters. (Yasuhiro Matsumoto) Using a filename in Big5 encoding for autocommands didn't work (backslash in trailbyte). (Yasuhiro Matsumoto) @@ -3147,7 +3147,7 @@ available space correctly. Was counting Conversion of the docs to HTML didn't handle the line with the +quickfix tag correctly. (Antonio Colombo) -Win32: fname_case() didn't handle multi-byte characters correctly. (Yasuhiro +Win32: fname_case() didn't handle multibyte characters correctly. (Yasuhiro Matsumoto) The Cygwin version had trouble with fchdir(). Don't use that function for @@ -3164,10 +3164,10 @@ the terminal it was started in. When using ESC in Insert mode, an autoindent that wraps to the next line caused the cursor to move to the end of the line temporarily. When the -character before the cursor was a double-wide multi-byte character the cursor +character before the cursor was a double-wide multibyte character the cursor would be on the right half, which causes problems with some terminals. -Didn't handle multi-byte characters correctly when expanding a file name. +Didn't handle multibyte characters correctly when expanding a file name. (Yasuhiro Matsumoto) Win32 GUI: Errors generated before the GUI is decided to start were not @@ -3307,7 +3307,7 @@ started from the desktop (no place to di open the GUI window early to be able to display the messages and pop up the dialog. -"r" on a multi-byte character deleted only the first byte of the +"r" on a multibyte character deleted only the first byte of the character. "3r" deleted three bytes instead of three characters. When interrupting reading a file, Vi considers the buffer modified. Added the @@ -3431,7 +3431,7 @@ Solution: Change slashes to backslashe Files: src/gui_w48.c Athena file browser: On some systems wcstombs() can't be used to get the -length of a multi-byte string. Use the maximum length then. (Yasuhiro +length of a multibyte string. Use the maximum length then. (Yasuhiro Matsumoto) Patch 6.0ax.001 @@ -3784,7 +3784,7 @@ Solution: Check for a NULL pointer. Files: src/mbyte.c Patch 6.0.019 -Problem: Converting a string with multi-byte characters to a printable +Problem: Converting a string with multibyte characters to a printable string, e.g., with strtrans(), may cause a crash. (Tomas Zellerin) Solution: Correctly compute the length of the result in transstr(). Files: src/charset.c @@ -4148,9 +4148,9 @@ Solution: Position the system cursor b Files: src/os_msdos.c Patch 6.0.074 -Problem: When using "&" in a substitute string a multi-byte character with +Problem: When using "&" in a substitute string a multibyte character with a trailbyte 0x5c is not handled correctly. -Solution: Recognize multi-byte characters inside the "&" part. (Muraoka Taro) +Solution: Recognize multibyte characters inside the "&" part. (Muraoka Taro) Files: src/regexp.c Patch 6.0.075 @@ -4311,7 +4311,7 @@ Files: src/ex_cmds.c Patch 6.0.097 Problem: Re-indenting in Insert mode with CTRL-F may cause a crash with a - multi-byte encoding. + multibyte encoding. Solution: Avoid using a character before the start of a line. (Sergey Vlasov) Files: src/edit.c @@ -4669,14 +4669,14 @@ Solution: Correctly report "operand co Files: src/regexp.c Patch 6.0.150 -Problem: When using a multi-byte encoding, patch 6.0.148 causes "p" to work +Problem: When using a multibyte encoding, patch 6.0.148 causes "p" to work like "P". (Sung-Hyun Nam) -Solution: Compute the byte length of a multi-byte character. +Solution: Compute the byte length of a multibyte character. Files: src/ops.c Patch 6.0.151 Problem: Redrawing the status line and ruler can be wrong when it contains - multi-byte characters. + multibyte characters. Solution: Use character width and byte length correctly. (Yasuhiro Matsumoto) Files: src/screen.c @@ -4878,7 +4878,7 @@ Solution: Free the allocated memory. Files: src/misc2.c Patch 6.0.182 -Problem: When using a regexp on multi-byte characters, could try to read a +Problem: When using a regexp on multibyte characters, could try to read a character before the start of the line. Solution: Don't decrement a pointer to before the start of the line. Files: src/regexp.c @@ -5060,7 +5060,7 @@ Files: src/edit.c Patch 6.0.209 Problem: GUI GTK: After selecting a 'guifont' with the font dialog there - are redraw problems for multi-byte characters. + are redraw problems for multibyte characters. Solution: Separate the font dialog from setting the new font name to avoid that "*" is used to find wide and bold fonts. When redrawing extra characters for the bold trick, take care of @@ -5203,14 +5203,14 @@ Files: src/ex_docmd.c, src/globals.h Patch 6.0.229 Problem: Multi-byte: With 'm' in 'formatoptions', formatting doesn't break - at a multi-byte char followed by an ASCII char, and the other way + at a multibyte char followed by an ASCII char, and the other way around. (Muraoka Taro) - When joining lines a space is inserted between multi-byte + When joining lines a space is inserted between multibyte characters, which is not always wanted. -Solution: Check for multi-byte character before and after the breakpoint. - Don't insert a space before or after a multi-byte character when +Solution: Check for multibyte character before and after the breakpoint. + Don't insert a space before or after a multibyte character when joining lines and the 'M' flag is in 'formatoptions'. Don't - insert a space between multi-byte characters when the 'B' flag is + insert a space between multibyte characters when the 'B' flag is in 'formatoptions'. Files: src/edit.c, src/ops.c, src/option.h @@ -5290,7 +5290,7 @@ Patch 6.0.241 Problem: Win32: Expanding the old value of an option that is a path that starts with a backslash, an extra backslash is inserted. Solution: Only insert backslashes where needed. - Also handle multi-byte characters properly when removing + Also handle multibyte characters properly when removing backslashes. Files: src/option.c @@ -5312,7 +5312,7 @@ Problem: Multi-byte: Problems with (i file name (e.g., icon text, status line). Solution: Correctly handle unprintable characters. Catch illegal UTF-8 characters and replace them with . Truncating the status line - wasn't done correctly at a multi-byte character. (Yasuhiro + wasn't done correctly at a multibyte character. (Yasuhiro Matsumoto) Added correct_cmdspos() and transchar_byte(). Files: src/buffer.c, src/charset.c, src/ex_getln.c, src/gui.c, @@ -5424,7 +5424,7 @@ Solution: Don't call gui_write() when Files: src/fileio.c, src/gui.c, src/misc1.c, src/ui.c Patch 6.0.261 -Problem: nr2char() and char2nr() don't work with multi-byte characters. +Problem: nr2char() and char2nr() don't work with multibyte characters. Solution: Use 'encoding' for these functions. (Yasuhiro Matsumoto) Files: runtime/doc/eval.txt, src/eval.c @@ -5517,7 +5517,7 @@ Solution: Don't keep the driver contex Files: src/os_mswin.c Patch 6.1a.006 -Problem: multi-byte: after setting 'encoding' the window title might be +Problem: multibyte: after setting 'encoding' the window title might be wrong. Solution: Force resetting the title. (Yasuhiro Matsumoto) Files: src/option.c @@ -5654,7 +5654,7 @@ Files: src/globals.h, src/mbyte.c, s Patch 6.1a.029 Problem: After patch 6.1a.028 can't compile GTK version with XIM but - without multi-byte chars. + without multibyte chars. Solution: Add an #ifdef. (Aschwin Marsman) Files: src/mbyte.c @@ -5701,9 +5701,9 @@ Solution: Remove the ACL checks, go ba Files: src/os_win32.c Patch 6.1a.035 -Problem: multi-byte: When using ":sh" in the GUI, typed and displayed - multi-byte characters are not handled correctly. -Solution: Deal with multi-byte characters to and from the shell. (Yasuhiro +Problem: multibyte: When using ":sh" in the GUI, typed and displayed + multibyte characters are not handled correctly. +Solution: Deal with multibyte characters to and from the shell. (Yasuhiro Matsumoto) Also handle UTF-8 composing characters. Files: src/os_unix.c @@ -5748,9 +5748,9 @@ Files: runtime/doc/diff.txt, src/dif Patch 6.1b.001 (extra) -Problem: Checking for wildcards in a path does not handle multi-byte +Problem: Checking for wildcards in a path does not handle multibyte characters with a trail byte which is a wildcard. -Solution: Handle multi-byte characters correctly. (Muraoka Taro) +Solution: Handle multibyte characters correctly. (Muraoka Taro) Files: src/os_amiga.c, src/os_mac.c, src/os_msdos.c, src/os_mswin.c, src/os_unix.c @@ -5894,7 +5894,7 @@ Files: src/move.c Patch 6.1b.023 Problem: On MS-Windows system() may cause checking timestamps, because Vim - looses and gains input focus, while this doesn't happen on Unix. + loses and gains input focus, while this doesn't happen on Unix. Solution: Don't check timestamps while system() is busy. Files: src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c @@ -6393,7 +6393,7 @@ wrong (back)slashes. Win32: printer dialog texts were not translated. (Yasuhiro Matsumoto) -When using a multi-byte character with a K_SPECIAL byte or a special key code +When using a multibyte character with a K_SPECIAL byte or a special key code with "--remote-send" the received byte sequence was mangled. Put it in the typeahead buffer instead of the input buffer. @@ -6438,7 +6438,7 @@ library version of fgets() to work corre Kielhorn) When typing a password a "*" was shown for each byte instead of for each -character. Added multi-byte handling to displaying the stars. (Yasuhiro +character. Added multibyte handling to displaying the stars. (Yasuhiro Matsumoto) When using Perl 5.6 accessing $curbuf doesn't work. Add an #ifdef to use @@ -6690,9 +6690,9 @@ Solution: Overrule 'lazyredraw' when d Files: src/main.c, src/screen.c Patch 6.1.038 -Problem: Multi-byte: When a ":s" command contains a multi-byte character +Problem: Multi-byte: When a ":s" command contains a multibyte character where the trail byte is '~' the text is messed up. -Solution: Properly skip multi-byte characters in regtilde() (Muraoka Taro) +Solution: Properly skip multibyte characters in regtilde() (Muraoka Taro) Files: src/regexp.c Patch 6.1.039 @@ -7105,7 +7105,7 @@ Solution: Use ":setlocal" instead of " Files: runtime/optwin.vim Patch 6.1.102 -Problem: Unprintable and multi-byte characters in a statusline item are not +Problem: Unprintable and multibyte characters in a statusline item are not truncated correctly. (Yasuhiro Matsumoto) Solution: Count the width of characters instead of the number of bytes. Files: src/buffer.c @@ -7480,7 +7480,7 @@ Solution: Take 'siso' into account whe Files: src/normal.c Patch 6.1.159 -Problem: When expanding an abbreviation that includes a multi-byte +Problem: When expanding an abbreviation that includes a multibyte character too many characters are deleted. (Andrey Urazov) Solution: Delete the abbreviation counting characters instead of bytes. Files: src/getchar.c @@ -7964,10 +7964,10 @@ Files: src/gui_w48.c Patch 6.1.231 Problem: Double clicking with the mouse to select a word does not work for - multi-byte characters. + multibyte characters. Solution: Use vim_iswordc() instead of vim_isIDc(). This means 'iskeyword' is used instead of 'isident'. Also fix that mixing ASCII with - multi-byte word characters doesn't work, the mouse class for + multibyte word characters doesn't work, the mouse class for punctuation and word characters was mixed up. Files: src/normal.c @@ -8056,7 +8056,7 @@ Files: src/vim.h Patch 6.1.245 Problem: Comparing with ignored case does not work properly for Unicode with a locale where case folding an ASCII character results in a - multi-byte character. (Glenn Maynard) + multibyte character. (Glenn Maynard) Solution: Handle ignore-case compare for Unicode differently. Files: src/mbyte.c @@ -8081,8 +8081,8 @@ Files: src/eval.c Patch 6.1.249 Problem: Can't expand a path on the command line if it includes a "|" as a - trail byte of a multi-byte character. -Solution: Check for multi-byte characters. (Yasuhiro Matsumoto) + trail byte of a multibyte character. +Solution: Check for multibyte characters. (Yasuhiro Matsumoto) Files: src/ex_docmd.c Patch 6.1.250 @@ -8177,9 +8177,9 @@ Solution: Set the previous context mar Files: src/fold.c Patch 6.1.263 -Problem: When typing a multi-byte character that triggers an abbreviation +Problem: When typing a multibyte character that triggers an abbreviation it is not inserted properly. -Solution: Handle adding the typed multi-byte character. (Yasuhiro Matsumoto) +Solution: Handle adding the typed multibyte character. (Yasuhiro Matsumoto) Files: src/getchar.c Patch 6.1.264 (depends on patch 6.1.254) @@ -8207,7 +8207,7 @@ Solution: Allocate enough memory for s Files: src/ops.c Patch 6.1.268 -Problem: When triggering an abbreviation with a multi-byte character, this +Problem: When triggering an abbreviation with a multibyte character, this character is not correctly inserted after expanding the abbreviation. (Taro Muraoka) Solution: Add ABBR_OFF to all characters above 0xff. @@ -8321,7 +8321,7 @@ Files: runtime/doc/options.txt, src/ src/quickfix.c Patch 6.1.286 -Problem: 'showbreak' cannot contain multi-byte characters. +Problem: 'showbreak' cannot contain multibyte characters. Solution: Allow using all printable characters for 'showbreak'. Files: src/charset.c, src/move.c, src/option.c @@ -8343,9 +8343,9 @@ Solution: Add a typecast for " ". Files: src/screen.c Patch 6.1.290 (extra) -Problem: Truncating long text for message box may break multi-byte +Problem: Truncating long text for message box may break multibyte character. -Solution: Adjust to start of multi-byte character. (Yasuhiro Matsumoto) +Solution: Adjust to start of multibyte character. (Yasuhiro Matsumoto) Files: src/os_mswin.c Patch 6.1.291 (extra) @@ -8368,7 +8368,7 @@ Solution: Change ">=" to ">" in ml_fin Files: src/memline.c Patch 6.1.294 -Problem: Can't include a multi-byte character in a string by its hex value. +Problem: Can't include a multibyte character in a string by its hex value. (Benji Fisher) Solution: Add "\u....": a character specified with up to four hex numbers and stored according to the value of 'encoding'. @@ -8791,7 +8791,7 @@ Solution: Set Vim as the frontprocess. Files: src/gui_mac.c Patch 6.1.360 (depends on 6.1.341) -Problem: In Insert mode CTRL-K ESC messes up a multi-byte character. +Problem: In Insert mode CTRL-K ESC messes up a multibyte character. (Anders Helmersson) Solution: Save all bytes of a character when displaying a character temporarily. @@ -8962,7 +8962,7 @@ Files: src/gui_w32.c Patch 6.1.383 Problem: The filling of the status line doesn't work properly for - multi-byte characters. (Nam SungHyun) + multibyte characters. (Nam SungHyun) There is no check for going past the end of the buffer. Solution: Properly distinguish characters and bytes. Properly check for running out of buffer space. @@ -8976,7 +8976,7 @@ Files: runtime/doc/eval.txt, src/eva src/version.c Patch 6.1.385 (depends on 6.1.383) -Problem: Can't compile without the multi-byte feature. +Problem: Can't compile without the multibyte feature. Solution: Move an #ifdef. (Christian J. Robinson) Files: src/buffer.c @@ -9201,10 +9201,10 @@ Solution: Respect the GUARDEDOFFSET fo Files: src/netbeans.c Patch 6.1.417 -Problem: Unprintable multi-byte characters are not handled correctly. +Problem: Unprintable multibyte characters are not handled correctly. Multi-byte characters above 0xffff are displayed as another character. -Solution: Handle unprintable multi-byte characters. Display multi-byte +Solution: Handle unprintable multibyte characters. Display multibyte characters above 0xffff with a marker. Recognize UTF-16 words and BOM words as unprintable. (Daniel Elstner) Files: src/charset.c, src/mbyte.c, src/screen.c @@ -9326,7 +9326,7 @@ Solution: Add the line number to the e Files: src/fileio.c Patch 6.1.437 (extra, depends on 6.1.421) -Problem: Using multi-byte functions when they are not available. +Problem: Using multibyte functions when they are not available. Solution: Put the clipboard conversion inside an #ifdef. (Vince Negri) Also fix a pointer type mistake. (Walter Briscoe) Files: src/os_mswin.c @@ -9526,8 +9526,8 @@ Solution: Only store folds for a buffe Files: src/ex_docmd.c Patch 6.1.469 -Problem: 'listchars' cannot contain multi-byte characters. -Solution: Handle multi-byte UTF-8 list characters. (Matthew Samsonoff) +Problem: 'listchars' cannot contain multibyte characters. +Solution: Handle multibyte UTF-8 list characters. (Matthew Samsonoff) Files: src/message.c, src/option.c, src/screen.c Patch 6.1.470 (lang) @@ -10009,7 +10009,7 @@ Files: nsis/gvim.nsi Patch 6.2.010 Problem: When 'virtualedit' is effective and a line starts with a - multi-byte character, moving the cursor right doesn't work. + multibyte character, moving the cursor right doesn't work. Solution: Obtain the right character to compute the column offset. (Taro Muraoka) Files: src/charset.c @@ -10109,7 +10109,7 @@ Files: src/fileio.c Patch 6.2.027 Problem: Warning for uninitialized variable. -Solution: Set mb_l to one when not using multi-byte characters. +Solution: Set mb_l to one when not using multibyte characters. Files: src/message.c Patch 6.2.028 @@ -10271,15 +10271,15 @@ Files: src/osdef1.h.in Patch 6.2.054 Problem: A double-byte character with a second byte that is a backslash causes problems inside a string. -Solution: Skip over multi-byte characters in a string properly. (Yasuhiro +Solution: Skip over multibyte characters in a string properly. (Yasuhiro Matsumoto) Files: src/eval.c Patch 6.2.055 Problem: Using col('.') from CTRL-O in Insert mode does not return the - correct value for multi-byte characters. + correct value for multibyte characters. Solution: Correct the cursor position when it is necessary, move to the - first byte of a multi-byte character. (Yasuhiro Matsumoto) + first byte of a multibyte character. (Yasuhiro Matsumoto) Files: src/edit.c Patch 6.2.056 (extra) @@ -10851,7 +10851,7 @@ Files: Makefile, src/Makefile, src/a Patch 6.2.143 Problem: Using "K" on Visually selected text doesn't work if it ends in - a multi-byte character. + a multibyte character. Solution: Include all the bytes of the last character. (Taro Muraoka) Files: src/normal.c @@ -11269,12 +11269,12 @@ Files: src/gui_w32.c, src/gui_w48.c Patch 6.2.206 Problem: Multi-byte characters cannot be used as hotkeys in a console dialog. (Mattias Erkisson) -Solution: Handle multi-byte characters properly. Also put () or [] around +Solution: Handle multibyte characters properly. Also put () or [] around default hotkeys. Files: src/message.c, src/macros.h Patch 6.2.207 -Problem: When 'encoding' is a multi-byte encoding, expanding an +Problem: When 'encoding' is a multibyte encoding, expanding an abbreviation that starts where insertion started results in characters before the insertion to be deleted. (Xiangjiang Ma) Solution: Stop searching leftwards for the start of the word at the position @@ -11344,7 +11344,7 @@ Files: src/fileio.c, src/netbeans.c, Patch 6.2.216 (after 6.2.206) Problem: Multi-byte characters still cannot be used as hotkeys in a console dialog. (Mattias Erkisson) -Solution: Make get_keystroke() handle multi-byte characters. +Solution: Make get_keystroke() handle multibyte characters. Files: src/misc1.c Patch 6.2.217 @@ -11710,7 +11710,7 @@ Files: src/gui.c Patch 6.2.269 Problem: Diff mode does not highlight a change in a combining character. (Raphael Finkel) -Solution: Make diff_find_change() multi-byte aware: find the start byte of +Solution: Make diff_find_change() multibyte aware: find the start byte of a character that contains a change. Files: src/diff.c @@ -12505,7 +12505,7 @@ Solution: Don't redraw the bottom line Files: src/screen.c Patch 6.2.390 -Problem: Using "r*" in Visual mode on multi-byte characters only replaces +Problem: Using "r*" in Visual mode on multibyte characters only replaces every other character. (Tyson Roberts) Solution: Correct the cursor position after replacing each character. Files: src/ops.c @@ -12745,7 +12745,7 @@ Solution: Also use the line number of Files: src/syntax.c Patch 6.2.427 (extra) -Problem: When pasting a lot of text in a multi-byte encoding, conversion +Problem: When pasting a lot of text in a multibyte encoding, conversion from 'termencoding' to 'encoding' may fail for some characters. (Kuang-che Wu) Solution: When there is an incomplete byte sequence at the end of the read @@ -12984,7 +12984,7 @@ Files: src/normal.c Patch 6.2.462 Problem: Finding a matching parenthesis does not correctly handle a backslash in a trailing byte. -Solution: Handle multi-byte characters correctly. (Taro Muraoka) +Solution: Handle multibyte characters correctly. (Taro Muraoka) Files: src/search.c Patch 6.2.463 (extra) @@ -13015,7 +13015,7 @@ Solution: Redefine wcsicmp() to wcscmp Files: src/os_win32.c Patch 6.2.467 (extra, after 6.2.463) -Problem: Win32: can't compile without multi-byte feature. (Ajit Thakkar) +Problem: Win32: can't compile without multibyte feature. (Ajit Thakkar) Solution: Add #ifdefs around the info stream code. Files: src/os_win32.c @@ -13183,8 +13183,8 @@ Solution: Allow using " " (two spaces Files: src/search.c Patch 6.2.491 -Problem: Decrementing a position doesn't take care of multi-byte chars. -Solution: Adjust the column for multi-byte characters. Remove mb_dec(). +Problem: Decrementing a position doesn't take care of multibyte chars. +Solution: Adjust the column for multibyte characters. Remove mb_dec(). (Yasuhiro Matsumoto) Files: src/mbyte.c, src/misc2.c, src/proto/mbyte.pro @@ -13354,12 +13354,12 @@ Files: runtime/doc/options.txt, runt src/screen.c, src/syntax.c, src/vim.h Patch 6.2.517 -Problem: Using "r*" in Visual mode on multi-byte characters replaces +Problem: Using "r*" in Visual mode on multibyte characters replaces too many characters. In Visual Block mode replacing with a - multi-byte character doesn't work. + multibyte character doesn't work. Solution: Adjust the operator end for the difference in byte length of the original and the replaced character. Insert all bytes of a - multi-byte character, take care of double-wide characters. + multibyte character, take care of double-wide characters. Files: src/ops.c Patch 6.2.518 @@ -13438,7 +13438,7 @@ Problem: NetBeans: Changes of the "~" Solution: Call netbeans_inserted() after performing "~". (Gordon Prieur) Also change NetBeans debugging to append to the log file. Also fix that "~" in Visual block mode changes too much if there - are multi-byte characters. + are multibyte characters. Files: src/nbdebug.c, src/normal.c, src/ops.c Patch 6.2.529 (extra) @@ -13552,7 +13552,7 @@ Solution: Convert menu strings from 'e Files: src/gui_w32.c, src/gui_w48.c Patch 6.3a.014 -Problem: Using multi-byte text and highlighting in a statusline causes gaps +Problem: Using multibyte text and highlighting in a statusline causes gaps to appear. (Helmut Stiegler) Solution: Advance the column by text width instead of number of bytes. Add the vim_strnsize() function. @@ -14040,19 +14040,19 @@ Solution: Correctly check that one cha Files: src/misc1.c Patch 6.3.021 -Problem: When the last character of a file name is a multi-byte character +Problem: When the last character of a file name is a multibyte character and the last byte is a path separator, the file cannot be edited. -Solution: Check for the last byte to be part of a multi-byte character. +Solution: Check for the last byte to be part of a multibyte character. (Taro Muraoka) Files: src/fileio.c Patch 6.3.022 (extra) -Problem: Win32: When the last character of a file name is a multi-byte +Problem: Win32: When the last character of a file name is a multibyte character and the last byte is a path separator, the file cannot be written. A trail byte that is a space makes that a file cannot be opened from the command line. Solution: Recognize double-byte characters when parsing the command line. - In mch_stat() check for the last byte to be part of a multi-byte + In mch_stat() check for the last byte to be part of a multibyte character. (Taro Muraoka) Files: src/gui_w48.c, src/os_mswin.c @@ -14222,7 +14222,7 @@ Solution: Don't allow setting termcap Files: src/option.c, runtime/doc/options.txt Patch 6.3.046 -Problem: ":registers" doesn't show multi-byte characters properly. +Problem: ":registers" doesn't show multibyte characters properly. (Valery Kondakoff) Solution: Get the length of each character before displaying it. Files: src/ops.c @@ -14250,9 +14250,9 @@ Solution: Ignore SIGHUP when exiting b Files: src/misc1.c, src/main.c Patch 6.3.051 -Problem: When 'wildmenu' is set and completed file names contain multi-byte +Problem: When 'wildmenu' is set and completed file names contain multibyte characters Vim may crash. -Solution: Reserve room for multi-byte characters. (Yasuhiro Matsumoto) +Solution: Reserve room for multibyte characters. (Yasuhiro Matsumoto) Files: src/screen.c Patch 6.3.052 (extra) @@ -14286,9 +14286,9 @@ Solution: When moving ccline out of th Files: src/ex_getln.c Patch 6.3.056 -Problem: The last characters of a multi-byte file name may not be displayed +Problem: The last characters of a multibyte file name may not be displayed in the window title. -Solution: Avoid to remove a multi-byte character where the last byte looks +Solution: Avoid to remove a multibyte character where the last byte looks like a path separator character. (Yasuhiro Matsumoto) Files: src/buffer.c, src/ex_getln.c @@ -14319,9 +14319,9 @@ Files: src/edit.c Patch 6.3.061 Problem: When editing a utf-8 file in an utf-8 xterm and there is a - multi-byte character in the last column, displaying is messed up. + multibyte character in the last column, displaying is messed up. (Joël Rio) -Solution: Check for a multi-byte character, not a multi-column character. +Solution: Check for a multibyte character, not a multi-column character. Files: src/screen.c Patch 6.3.062 @@ -14384,7 +14384,7 @@ Files: src/edit.c Patch 6.3.072 Problem: Crash in giving substitute message when language is Chinese and encoding is utf-8. (Yongwei) -Solution: Make the msg_buf size larger when using multi-byte. +Solution: Make the msg_buf size larger when using multibyte. Files: src/vim.h Patch 6.3.073 @@ -14508,7 +14508,7 @@ Solution: Change "a" to "b". (Tony Mec Files: src/version.h Patch 6.4b.002 -Problem: In Insert mode, pasting a multi-byte character after the end of +Problem: In Insert mode, pasting a multibyte character after the end of the line leaves the cursor just before that character. Solution: Make sure "gP" leaves the cursor in the right place when 'virtualedit' is set. diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 8.2. Last change: 2016 Jul 17 +*version7.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -22,7 +22,7 @@ Vim script enhancements |new-vim-scrip Spell checking |new-spell| Omni completion |new-omni-completion| MzScheme interface |new-MzScheme| -Printing multi-byte text |new-print-multi-byte| +Printing multibyte text |new-print-multibyte| Tab pages |new-tab-pages| Undo branches |new-undo-branches| Extended Unicode support |new-more-unicode| @@ -302,10 +302,10 @@ The |:mzfile| command can be used to e This depends on Vim being compiled with the |+mzscheme| feature. -Printing multi-byte text *new-print-multi-byte* +Printing multibyte text *new-print-multibyte* ------------------------ -The |:hardcopy| command now supports printing multi-byte characters when using +The |:hardcopy| command now supports printing multibyte characters when using PostScript. The 'printmbcharset' and 'printmbfont' options are used for this. @@ -1211,7 +1211,7 @@ Also fixes the problem that setting 'cli Mac: GUI font selector. (Peter Cucka) -Mac: support for multi-byte characters. (Da Woon Jung) +Mac: support for multibyte characters. (Da Woon Jung) This doesn't always work properly. If you see text drawing problems try switching the 'macatsui' option off. @@ -1361,7 +1361,7 @@ When C, C++ or IDL syntax is used, may a Support setting 'filetype' and 'syntax' to "aaa.bbb" for "aaa" plus "bbb" filetype or syntax. -The ":registers" command now displays multi-byte characters properly. +The ":registers" command now displays multibyte characters properly. VMS: In the usage message mention that a slash can be used to make a flag upper case. Add color support to the builtin vt320 terminal codes. @@ -1460,7 +1460,7 @@ To count items (pattern matches) without been added to |:substitute|. See |count-items|. In a |:substitute| command the \u, \U, \l and \L items now also work for -multi-byte characters. +multibyte characters. The "screen.linux" $TERM name is recognized to set the default for 'background' to "dark". (Ciaran McCreesh) Also for "cygwin" and "putty". @@ -1736,7 +1736,7 @@ variables like for a regular command wit 'cindent': When the argument of a #define looks like a C++ class the next line is indented too much. -When 'comments' includes multi-byte characters inserting the middle part and +When 'comments' includes multibyte characters inserting the middle part and alignment may go wrong. 'cindent' also suffers from this for right-aligned items. @@ -2309,7 +2309,7 @@ characters in v:this_session. ":set sta ts=8 sw=4 sts=2" deleted 4 spaces halfway a line instead of 2. -In a multi-byte file the foldmarker could be recognized in the trail byte. +In a multibyte file the foldmarker could be recognized in the trail byte. (Taro Muraoka) Pasting with CTRL-V and menu didn't work properly when some commands are @@ -2504,7 +2504,7 @@ a crash. For a new tab page the 'scroll' option wasn't set to a good default. -Using an end offset for a search "/pat/e" didn't work properly for multi-byte +Using an end offset for a search "/pat/e" didn't work properly for multibyte text. (Yukihiro Nakadaira) ":s/\n/,/" doubled the text when used on the last line. @@ -2604,7 +2604,7 @@ recursively. But after a ":normal" comm ":s/a/b/n" didn't work when 'modifiable' was off. -When $VIMRUNTIME includes a multi-byte character then rgb.txt could not be +When $VIMRUNTIME includes a multibyte character then rgb.txt could not be found. (Yukihiro Nakadaira) ":mkspell" didn't work correctly for non-ASCII affix flags when conversion is @@ -2670,7 +2670,7 @@ keep them in the original order. Fixed a crash when editing a directory in diff mode. Don't trigger autocommands when executing the diff command. -Getting a keystroke could get stuck if 'encoding' is a multi-byte encoding and +Getting a keystroke could get stuck if 'encoding' is a multibyte encoding and typing a special key. When 'foldignore' is set the folds were not updated right away. @@ -2711,7 +2711,7 @@ When using ":vsp" or ":sp" the available windows. (Servatius Brandt) Expanding on a trailing blank resulted in the first word in the line -if 'encoding' is a multi-byte encoding. +if 'encoding' is a multibyte encoding. Spell checking: spellbadword() didn't see a missing capital in the first word of a line. Popup menu now only suggest the capitalized word when appropriate. @@ -2734,7 +2734,7 @@ background, which made magenta text disa specific situation. After completing the longest match "." didn't insert the same text. Repeating -also didn't work correctly for multi-byte text. +also didn't work correctly for multibyte text. When using Insert mode completion and BS the whole word that was completed would result in all possible matches. Now stop completion. Also fixes that @@ -2751,7 +2751,7 @@ non-ASCII characters looked wrong. (Yega Motif: building failed when Xm/Notebook.h doesn't exist. Added a configure check, disable GUI tabline when it's missing. -Mac: When compiled without multi-byte feature the clipboard didn't work. +Mac: When compiled without multibyte feature the clipboard didn't work. It was possible to switch to another tab page when the cmdline window is open. @@ -2867,7 +2867,7 @@ a crash. GTK: The tab pages line menu was not converted from 'encoding' to utf-8. -Typing a multi-byte character or a special key at the hit-enter prompt did not +Typing a multibyte character or a special key at the hit-enter prompt did not work. When 'virtualedit' contains "onemore" CTRL-O in Insert mode still moved the @@ -3387,7 +3387,7 @@ Solution: When running Vim as root don Files: src/main.c Patch 7.0.053 -Problem: Shortening a directory name may fail when there are multi-byte +Problem: Shortening a directory name may fail when there are multibyte characters. Solution: Copy the correct bytes. (Titov Anatoly) Files: src/misc1.c @@ -3621,7 +3621,7 @@ Solution: Remove the "-pipe" argument Files: src/auto/configure, src/configure.in Patch 7.0.089 -Problem: "ga" does not work properly for a non-Unicode multi-byte encoding. +Problem: "ga" does not work properly for a non-Unicode multibyte encoding. Solution: Only check for composing chars for utf-8. (Taro Muraoka) Files: src/ex_cmds.c @@ -4224,7 +4224,7 @@ Files: src/if_cscope.c Patch 7.0.185 Problem: Multi-byte characters in a message are displayed with attributes from what comes before it. -Solution: Don't use the attributes for a multi-byte character. Do use +Solution: Don't use the attributes for a multibyte character. Do use attributes for special characters. (Yukihiro Nakadaira) Files: src/message.c @@ -4307,7 +4307,7 @@ Solution: Add type casts. Use "*" for Files: src/Make_mvc.mak, src/eval.c, src/gvim.exe.mnf, src/misc2.c Patch 7.0.199 -Problem: When using multi-byte characters the combination of completion and +Problem: When using multibyte characters the combination of completion and formatting may result in a wrong cursor position. Solution: Don't decrement the cursor column, use dec_cursor(). (Yukihiro Nakadaira) Also check for the column to be zero. @@ -5902,10 +5902,10 @@ Solution: Don't advance the cursor whe Files: src/normal.c Patch 7.1.185 -Problem: Using "gR" with a multi-byte encoding and typing a CR pushes +Problem: Using "gR" with a multibyte encoding and typing a CR pushes characters onto the replace stack incorrectly, resulting in BS putting back the wrong characters. (Paul B. Mahol) -Solution: Push multi-byte characters onto the replace stack in reverse byte +Solution: Push multibyte characters onto the replace stack in reverse byte order. Add replace_push_mb(). Files: src/edit.c, src/misc1.c, src/proto/edit.pro @@ -6112,7 +6112,7 @@ Files: runtime/doc/eval.txt, src/eva Patch 7.1.220 Problem: When a ")" or word movement command moves the cursor back from the - end of the line it may end up on the trail byte of a multi-byte + end of the line it may end up on the trail byte of a multibyte character. It's also moved back when it isn't needed. Solution: Add the adjust_cursor() function. Files: src/normal.c @@ -6241,7 +6241,7 @@ Problem: When "gUe" turns a German sh before the end of the word. Latin2 has the same sharp s but it's not changed to SS there. Solution: Make sure all the characters are operated upon. Detect the sharp - s in latin2. Also fixes that changing case of a multi-byte + s in latin2. Also fixes that changing case of a multibyte character that changes the byte count doesn't always work. Files: src/ops.c @@ -6771,7 +6771,7 @@ Files: src/misc1.c Warning for missing sentinel in gui_xmldlg.c. (Dominique Pelle) -A search offset from the end of a match didn't work properly for multi-byte +A search offset from the end of a match didn't work properly for multibyte characters. (Yukihiro Nakadaira) When displaying the value of 'key' don't show "*****" when the value is empty. @@ -6965,7 +6965,7 @@ The #ifdef for including "vimio.h" was i depended on MSWIN, which isn't defined until later. Patch 7.2b.001 -Problem: Compilation problem: mb_fix_col() missing with multi-byte feature +Problem: Compilation problem: mb_fix_col() missing with multibyte feature but without GUI or clipboard. Solution: Remove #ifdef. Files: src/mbyte.c @@ -7804,7 +7804,7 @@ Solution: Don't change "Columns" back Files: src/gui.c Patch 7.2.066 -Problem: It's not easy to see whether 'encoding' is a multi-byte encoding. +Problem: It's not easy to see whether 'encoding' is a multibyte encoding. Solution: Add has('multi_byte_encoding'). Files: runtime/doc/eval.txt, src/eval.c @@ -7949,7 +7949,7 @@ Solution: Don't use a WM_OLE message o Files: src/if_ole.cpp, src/gui_w48.c Patch 7.2.090 -Problem: User command containing 0x80 in multi-byte character does not work +Problem: User command containing 0x80 in multibyte character does not work properly. (Yasuhiro Matsumoto) Solution: Undo replacement of K_SPECIAL and CSI characters when executing the command. @@ -7967,7 +7967,7 @@ Files: src/eval.c Patch 7.2.093 (extra) Problem: Win32: inputdialog() and find/replace dialogs can't handle - multi-byte text. + multibyte text. Solution: Use the wide version of dialog functions when available. (Yanwei Jia) Files: src/gui_w32.c, src/gui_w48.c @@ -8062,8 +8062,8 @@ Solution: Add #ifdef. Files: src/option.c Patch 7.2.109 -Problem: 'langmap' does not work for multi-byte characters. -Solution: Add a list of mapped multi-byte characters. (based on work by +Problem: 'langmap' does not work for multibyte characters. +Solution: Add a list of mapped multibyte characters. (based on work by Konstantin Korikov, Agathoklis Hatzimanikas) Files: runtime/doc/options.txt, src/edit.c, src/getchar.c, src/macros.h, src/normal.c, src/option.c, src/proto/option.pro, src/window.c @@ -8908,7 +8908,7 @@ Solution: Remove _FORTIFY_SOURCE=2 fro Files: src/auto/configure, src/configure.in Patch 7.2.252 -Problem: When using a multi-byte 'enc' the 'iskeyword' option cannot +Problem: When using a multibyte 'enc' the 'iskeyword' option cannot contain characters above 128. Solution: Use mb_ptr2char_adv(). Files: src/charset.c @@ -9053,7 +9053,7 @@ Files: src/memline.c Patch 7.2.276 Problem: Crash when setting 'isprint' to a small bullet. (Raul Coronado) Solution: Check for the character to be < 256. Also make it possible to - specify a range of multi-byte characters. (Lech Lorens) + specify a range of multibyte characters. (Lech Lorens) Files: src/charset.c Patch 7.2.277 @@ -9144,7 +9144,7 @@ Solution: Use utfc_ptr2char_len() rath Files: src/screen.c Patch 7.2.292 -Problem: Block right-shift doesn't work properly with multi-byte encoding +Problem: Block right-shift doesn't work properly with multibyte encoding and 'list' set. Solution: Add the missing "else". (Lech Lorens) Files: src/ops.c @@ -9430,7 +9430,7 @@ Files: src/screen.c Patch 7.2.342 Problem: Popup menu displayed wrong in 'rightleft' mode when there are - multi-byte characters. + multibyte characters. Solution: Adjust the column computations. (Dominique Pelle) Files: src/popupmnu.c @@ -10111,7 +10111,7 @@ Fix compile warnings, esp. for 64-bit sy Fix: :redir to a dictionary that is changed before ":redir END" causes a memory access error. -Fix: terminal title not properly restored when there are multi-byte +Fix: terminal title not properly restored when there are multibyte characters. (partly by James Vega) Set 'wrapscan' when checking the .po files. (Mike Williams) @@ -10132,7 +10132,7 @@ Changed readfile() to ignore byte order On MS-Windows completion of shell commands didn't work. -An unprintable multi-byte character at the start of the screen line caused the +An unprintable multibyte character at the start of the screen line caused the following text to be drawn at the wrong position. Got ml_get errors when using undo with 'virtualedit'. @@ -10391,7 +10391,7 @@ Solution: Increase the list reference Files: src/eval.c, src/testdir/Makefile, src/testdir/test61.in Patch 7.3.006 -Problem: Can't build some multi-byte code with C89. +Problem: Can't build some multibyte code with C89. Solution: Move code to after declarations. (Joachim Schmitz) Files: src/mbyte.c, src/spell.c @@ -11161,7 +11161,7 @@ Solution: Call update_screen() before Files: src/misc1.c, src/getchar.c Patch 7.3.138 -Problem: ":com" changes the multi-byte text of :echo. (Dimitar Dimitrov) +Problem: ":com" changes the multibyte text of :echo. (Dimitar Dimitrov) Solution: Search for K_SPECIAL as a byte, not a character. (Ben Schmidt) Files: src/ex_docmd.c @@ -11486,7 +11486,7 @@ Files: README_extra.txt, src/Make_ro src/option.h, src/structs.h, src/version.c, src/pty.c, Filelist Patch 7.3.192 -Problem: Ex command ":s/ \?/ /g" splits multi-byte characters into bytes. +Problem: Ex command ":s/ \?/ /g" splits multibyte characters into bytes. (Dominique Pelle) Solution: Advance over whole character instead of one byte. Files: src/ex_cmds.c @@ -12016,15 +12016,15 @@ Solution: Only restore the cursor posi Files: src/ex_getln.c Patch 7.3.283 -Problem: An expression mapping with a multi-byte character containing a +Problem: An expression mapping with a multibyte character containing a 0x80 byte gets messed up. (ZyX) Solution: Unescape the expression before evaluating it (Yukihiro Nakadaira) Files: src/getchar.c Patch 7.3.284 -Problem: The str2special() function doesn't handle multi-byte characters +Problem: The str2special() function doesn't handle multibyte characters properly. -Solution: Recognize multi-byte characters. (partly by Vladimir Vichniakov) +Solution: Recognize multibyte characters. (partly by Vladimir Vichniakov) Files: src/getchar.c, src/message.c, src/misc2.c Patch 7.3.285 (after 7.3.284) @@ -12112,7 +12112,7 @@ Solution: Adjust the style. (Elias Die Files: src/gui_photon.c Patch 7.3.300 -Problem: Python doesn't parse multi-byte argument correctly. +Problem: Python doesn't parse multibyte argument correctly. Solution: Use "t" instead of "s". (lilydjwg) Files: src/if_py_both.h @@ -12270,7 +12270,7 @@ Files: src/ex_cmds.c Patch 7.3.328 Problem: When command line wraps the cursor may be displayed wrong when - there are multi-byte characters. + there are multibyte characters. Solution: Position the cursor before drawing the text. (Yasuhiro Matsumoto) Files: src/ex_getln.c @@ -13377,7 +13377,7 @@ Solution: Move the call to gui_mch_ini Files: src/gui.c, src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro Patch 7.3.521 -Problem: Using "z=" on a multi-byte character may cause a crash. +Problem: Using "z=" on a multibyte character may cause a crash. Solution: Don't use strlen() on an int pointer. Files: src/spell.c @@ -13475,7 +13475,7 @@ Files: src/quickfix.c, src/testdir/t Patch 7.3.539 Problem: Redrawing a character on the command line does not work properly - for multi-byte characters. + for multibyte characters. Solution: Count the number of bytes in a character. (Yukihiro Nakadaira) Files: src/ex_getln.c @@ -13854,7 +13854,7 @@ Solution: Add #ifdef for MEMORYSTATUSE Files: src/os_win32.c Patch 7.3.606 -Problem: CTRL-P completion has a problem with multi-byte characters. +Problem: CTRL-P completion has a problem with multibyte characters. Solution: Check for next character being NUL properly. (Yasuhiro Matsumoto) Files: src/search.c, src/macros.h @@ -14190,7 +14190,7 @@ Files: src/ex_docmd.c Patch 7.3.664 Problem: Buffer overflow in unescaping text. (Raymond Ko) -Solution: Limit check for multi-byte character to 4 bytes. +Solution: Limit check for multibyte character to 4 bytes. Files: src/mbyte.c Patch 7.3.665 @@ -14357,8 +14357,8 @@ Solution: Add the shiftwidth() functio Files: runtime/doc/eval.txt, src/eval.c Patch 7.3.695 -Problem: Balloon cannot show multi-byte text. -Solution: Properly deal with multi-byte characters. (Dominique Pelle) +Problem: Balloon cannot show multibyte text. +Solution: Properly deal with multibyte characters. (Dominique Pelle) Files: src/gui_beval.c, src/ui.c Patch 7.3.696 @@ -14656,7 +14656,7 @@ Files: runtime/doc/eval.txt, src/eva src/testdir/test88.ok, Patch 7.3.749 -Problem: Python interface doesn't build without the multi-byte feature. +Problem: Python interface doesn't build without the multibyte feature. Solution: Add #ifdef. (Ken Takata) Files: src/if_py_both.h @@ -14762,7 +14762,7 @@ Solution: Save and restore the cursor Files: src/edit.c Patch 7.3.769 -Problem: 'matchpairs' does not work with multi-byte characters. +Problem: 'matchpairs' does not work with multibyte characters. Solution: Make it work. (Christian Brabandt) Files: src/misc1.c, src/option.c, src/proto/option.pro, src/search.c, src/testdir/test69.in, src/testdir/test69.ok @@ -15182,9 +15182,9 @@ Solution: Add lines for new files. Files: Filelist Patch 7.3.840 -Problem: "\@80v" properly for multi-byte characters. +Problem: Can't match "%>80v" properly for multibyte characters. Solution: Multiply the character number by the maximum number of bytes in a character. (Yasuhiro Matsumoto) Files: src/regexp_nfa.c @@ -4424,7 +4424,7 @@ Solution: Check if 'numberwidth' chang Files: src/screen.c, src/structs.h Patch 7.4.665 -Problem: 'linebreak' does not work properly with multi-byte characters. +Problem: 'linebreak' does not work properly with multibyte characters. Solution: Compute the pointer offset with mb_head_off(). (Yasuhiro Matsumoto) Files: src/screen.c @@ -4512,7 +4512,7 @@ Solution: Truncate to 255 colors. (Yas Files: src/os_win32.c Patch 7.4.680 -Problem: CTRL-W in Insert mode does not work well for multi-byte +Problem: CTRL-W in Insert mode does not work well for multibyte characters. Solution: Use mb_get_class(). (Yasuhiro Matsumoto) Files: src/edit.c, src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak, @@ -5051,7 +5051,7 @@ Solution: Change the way escape sequen Files: src/ascii.h, src/term.c Patch 7.4.771 -Problem: Search does not handle multi-byte character at the start position +Problem: Search does not handle multibyte character at the start position correctly. Solution: Take byte size of character into account. (Yukihiro Nakadaira) Files: src/search.c, src/testdir/Make_amiga.mak, @@ -5388,7 +5388,7 @@ Files: src/testdir/test_increment.i src/ops.c Patch 7.4.824 (after 7.4.813) -Problem: Can't compile without the multi-byte feature. (John Marriott) +Problem: Can't compile without the multibyte feature. (John Marriott) Solution: Add #ifdef. Files: src/eval.c @@ -5399,7 +5399,7 @@ Files: src/syntax.c Patch 7.4.826 Problem: Compiler warnings and errors. -Solution: Make it build properly without the multi-byte feature. +Solution: Make it build properly without the multibyte feature. Files: src/eval.c, src/search.c Patch 7.4.827 @@ -5477,7 +5477,7 @@ Solution: Send a WM_CLOSE message. (Ju Files: src/gui_w32.c Patch 7.4.841 -Problem: Can't compile without the multi-byte feature. (John Marriott) +Problem: Can't compile without the multibyte feature. (John Marriott) Solution: Add more #ifdef's. Files: src/option.c @@ -5512,7 +5512,7 @@ Files: Filelist, CONTRIBUTING.md Patch 7.4.847 Problem: "vi)d" may leave a character behind. -Solution: Skip over multi-byte character. (Christian Brabandt) +Solution: Skip over multibyte character. (Christian Brabandt) Files: src/search.c Patch 7.4.848 @@ -5969,9 +5969,9 @@ Files: runtime/doc/options.txt, run src/option.h, src/screen.c Patch 7.4.926 -Problem: Completing the longest match doesn't work properly with multi-byte +Problem: Completing the longest match doesn't work properly with multibyte characters. -Solution: When using multi-byte characters use another way to find the +Solution: When using multibyte characters use another way to find the longest match. (Hirohito Higashi) Files: src/ex_getln.c, src/testdir/test_utf8.in, src/testdir/test_utf8.ok @@ -9038,7 +9038,7 @@ Files: src/if_sniff.c, src/if_sniff Patch 7.4.1434 Problem: JSON encoding doesn't handle surrogate pair. -Solution: Improve multi-byte handling of JSON. (Yasuhiro Matsumoto) +Solution: Improve multibyte handling of JSON. (Yasuhiro Matsumoto) Files: src/json.c, src/testdir/test_json.vim Patch 7.4.1435 @@ -9092,7 +9092,7 @@ Solution: Use gtk_widget_get_window(). Files: src/gui_gtk_x11.c Patch 7.4.1444 -Problem: Can't build with JSON but without multi-byte. +Problem: Can't build with JSON but without multibyte. Solution: Fix pointer name. Files: src/json.c @@ -9351,7 +9351,7 @@ Solution: Add #ifdef. (Dominique Pelle Files: src/gui_gtk_x11.c Patch 7.4.1491 -Problem: Visual-block shift breaks multi-byte characters. +Problem: Visual-block shift breaks multibyte characters. Solution: Compute column differently. (Yasuhiro Matsumoto) Add a test. Files: src/ops.c, src/testdir/test_visual.vim, src/testdir/Make_all.mak @@ -10491,7 +10491,7 @@ Solution: Fix the coding style. (Ken T Files: src/if_ruby.c Patch 7.4.1690 -Problem: Can't compile with the conceal feature but without multi-byte. +Problem: Can't compile with the conceal feature but without multibyte. Solution: Adjust #ifdef. (Owen Leibman) Files: src/eval.c, src/window.c @@ -10547,7 +10547,7 @@ Files: src/ex_cmds2.c, src/testdir/ Patch 7.4.1700 Problem: Equivalence classes are not properly tested. -Solution: Add tests for multi-byte and latin1. Fix an error. (Owen Leibman) +Solution: Add tests for multibyte and latin1. Fix an error. (Owen Leibman) Files: src/regexp.c, src/testdir/Make_all.mak, src/testdir/test_alot_latin.vim, src/testdir/test_alot_utf8.vim, src/testdir/test_regexp_latin.vim, @@ -11027,7 +11027,7 @@ Solution: Change the condition for the Files: src/eval.c Patch 7.4.1782 -Problem: strcharpart() does not work properly with some multi-byte +Problem: strcharpart() does not work properly with some multibyte characters. Solution: Use mb_cptr2len() instead of mb_char2len(). (Hirohito Higashi) Files: src/eval.c, src/testdir/test_expr_utf8.vim @@ -15896,7 +15896,7 @@ Files: src/term.c, src/term.h, src/ src/vim.h, src/proto/edit.pro, runtime/doc/term.txt Patch 8.0.0211 (after 8.0.0210) -Problem: Build fails if the multi-byte feature is disabled. +Problem: Build fails if the multibyte feature is disabled. Solution: Change #ifdef around ins_char_bytes. Files: src/misc1.c @@ -15960,7 +15960,7 @@ Solution: Remove the check for PROTO. Files: src/misc1.c Patch 8.0.0222 -Problem: When a multi-byte character ends in a zero byte, putting blockwise +Problem: When a multibyte character ends in a zero byte, putting blockwise text puts it before the character instead of after it. Solution: Use int instead of char for the character under the cursor. (Luchr, closes #1403) Add a test. @@ -16132,9 +16132,9 @@ Files: .travis.yml Patch 8.0.0250 Problem: When virtcol() gets a column that is not the first byte of a - multi-byte character the result is unpredictable. (Christian + multibyte character the result is unpredictable. (Christian Ludwig) -Solution: Correct the column to the first byte of a multi-byte character. +Solution: Correct the column to the first byte of a multibyte character. Change the utf-8 test to new style. Files: src/charset.c, src/testdir/test_utf8.in, src/testdir/test_utf8.ok, src/testdir/test_utf8.vim, src/Makefile, src/testdir/Make_all.mak, @@ -16321,7 +16321,7 @@ Solution: Check the MSVC version and u Files: src/Make_mvc.mak Patch 8.0.0280 -Problem: On MS-Windows setting an environment variable with multi-byte +Problem: On MS-Windows setting an environment variable with multibyte strings does not work well. Solution: Use wputenv when possible. (Taro Muraoka, Ken Takata) Files: src/misc1.c, src/os_win32.c, src/os_win32.h, @@ -17777,7 +17777,7 @@ Files: runtime/doc/eval.txt, src/ev src/testdir/test_quickfix.vim Patch 8.0.0518 -Problem: Storing a zero byte from a multi-byte character causes fold text +Problem: Storing a zero byte from a multibyte character causes fold text to show up wrong. Solution: Avoid putting zero in ScreenLines. (Christian Brabandt, closes #1567) @@ -17818,13 +17818,13 @@ Files: src/ops.c, src/proto/ui.pro, src/testdir/test_alot.vim Patch 8.0.0523 -Problem: dv} deletes part of a multi-byte character. (Urtica Dioica) +Problem: dv} deletes part of a multibyte character. (Urtica Dioica) Solution: Include the whole character. Files: src/search.c, src/testdir/test_normal.vim Patch 8.0.0524 (after 8.0.0518) Problem: Folds are messed up when 'encoding' is "utf-8". -Solution: Also set the fold character when it's not multi-byte. +Solution: Also set the fold character when it's not multibyte. Files: src/screen.c, src/testdir/test_display.vim Patch 8.0.0525 @@ -19204,7 +19204,7 @@ Files: src/structs.h, src/os_unix.c src/proto/os_unix.pro, src/os_win32.c, src/proto/os_win32.pro Patch 8.0.0745 -Problem: multi-byte characters in a terminal window are not displayed +Problem: multibyte characters in a terminal window are not displayed properly. Solution: Set the unused screen characters. (Yasuhiro Matsumoto, closes #1857) @@ -19380,7 +19380,7 @@ Solution: Use OUTDIR. (Ken Takata) Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/libvterm/Makefile.msc Patch 8.0.0774 -Problem: Build failure without the multi-byte feature on HPUX. +Problem: Build failure without the multibyte feature on HPUX. Solution: Move #ifdefs. (John Marriott) Files: src/term.c @@ -19526,7 +19526,7 @@ Files: src/terminal.c Patch 8.0.0800 Problem: Terminal window scrollback contents is wrong. -Solution: Fix handling of multi-byte characters (Yasuhiro Matsumoto) Handle +Solution: Fix handling of multibyte characters (Yasuhiro Matsumoto) Handle empty lines correctly. (closes #1891) Files: src/terminal.c @@ -20139,7 +20139,7 @@ Files: runtime/doc/eval.txt, src/qu src/testdir/test_quickfix.vim Patch 8.0.0905 -Problem: MS-Windows: broken multi-byte characters in the console. +Problem: MS-Windows: broken multibyte characters in the console. Solution: Restore all regions of the console buffer. (Ken Takata) Files: src/os_win32.c @@ -20574,7 +20574,7 @@ Solution: Do not use a blinking cursor Files: src/terminal.c Patch 8.0.0982 -Problem: When 'encoding' is set to a multi-byte encoding other than utf-8 +Problem: When 'encoding' is set to a multibyte encoding other than utf-8 the characters from their terminal are messed up. Solution: Convert displayed text from utf-8 to 'encoding' for MS-Windows. (Yasuhiro Matsumoto, close #2000) @@ -20600,8 +20600,8 @@ Files: src/Makefile, src/libvterm/s src/proto/mbyte.pro, src/Make_cyg_ming.mak, src/Make_mvc.mak Patch 8.0.0986 -Problem: Terminal feature always requires multi-byte feature. -Solution: Remove #ifdef FEAT_MBYTE, disable terminal without multi-byte. +Problem: Terminal feature always requires multibyte feature. +Solution: Remove #ifdef FEAT_MBYTE, disable terminal without multibyte. Files: src/terminal.c, src/feature.h Patch 8.0.0987 @@ -21012,7 +21012,7 @@ Solution: Avoid message for writing fi Files: src/testdir/test_bufline.vim, src/testdir/test_timers.vim Patch 8.0.1056 -Problem: Cannot build with the diff feature but without the multi-byte +Problem: Cannot build with the diff feature but without the multibyte feature. Solution: Remove #ifdefs. (John Marriott) Files: src/diff.c @@ -22781,7 +22781,7 @@ Solution: Skip the text. Files: src/testdir/test_iminsert.vim, runtime/doc/options.txt Patch 8.0.1342 -Problem: Cannot build with Motif and multi-byte. (Mohamed Boughaba) +Problem: Cannot build with Motif and multibyte. (Mohamed Boughaba) Solution: Use the right input method status flag. (closes #2374) Files: src/mbyte.c @@ -24713,7 +24713,7 @@ Solution: Add the file name in the sep Files: src/terminal.c Patch 8.0.1663 (after 8.0.1660) -Problem: Cannot build without multi-byte feature. +Problem: Cannot build without multibyte feature. Solution: Add #ifdef. Files: src/ex_docmd.c @@ -25710,7 +25710,7 @@ Solution: Escape '?' when needed. Alw Files: src/gui.c Patch 8.0.1835 -Problem: Print document name does not support multi-byte. +Problem: Print document name does not support multibyte. Solution: Use StartDocW() if needed. (Yasuhiro Matsumoto, closes #2478) Files: src/os_mswin.c @@ -26735,7 +26735,7 @@ Solution: Check the terminal type. (No Files: src/evalfunc.c Patch 8.1.0125 -Problem: Virtual edit replace with multi-byte fails at end of line. (Lukas +Problem: Virtual edit replace with multibyte fails at end of line. (Lukas Werling) Solution: use ins_char() to add the character. (Christian Brabandt, closes #3114) Rename PCHAR() to PBYTE() to avoid mistakes like @@ -26977,7 +26977,7 @@ Files: src/dict.c, src/channel.c, sr src/if_perl.xs, src/if_py_both.h Patch 8.1.0168 -Problem: Output of :marks is too short with multi-byte chars. (Tony +Problem: Output of :marks is too short with multibyte chars. (Tony Mechelynck) Solution: Get more bytes from the text line. Files: src/mark.c, src/testdir/test_marks.vim @@ -30303,8 +30303,8 @@ Solution: Make a copy of the sourced f Files: src/ex_cmds2.c Patch 8.1.0733 -Problem: Too many #ifdefs for the multi-byte feature. -Solution: Tentatively always enable the multi-byte feature. If you have a +Problem: Too many #ifdefs for the multibyte feature. +Solution: Tentatively always enable the multibyte feature. If you have a problem with this, please discuss on the Vim maillist. Files: src/configure.ac, src/auto/configure, src/feature.h, src/Makefile, src/Make_bc5.mak, src/Make_cyg_ming.mak, src/Make_mvc.mak @@ -31143,8 +31143,8 @@ Solution: Make them the same, update d Files: src/option.c, runtime/doc/options.txt, runtime/doc/indent.txt Patch 8.1.0859 -Problem: "%v" in 'errorformat' does not handle multi-byte characters. -Solution: Handle multi-byte characters. (Yegappan Lakshmanan, closes #3700) +Problem: "%v" in 'errorformat' does not handle multibyte characters. +Solution: Handle multibyte characters. (Yegappan Lakshmanan, closes #3700) Files: src/quickfix.c, src/testdir/test_quickfix.vim Patch 8.1.0860 @@ -32563,7 +32563,7 @@ Solution: Use GetLongPathNameW() inste Files: src/eval.c Patch 8.1.1091 -Problem: MS-Windows: cannot use multi-byte chars in environment var. +Problem: MS-Windows: cannot use multibyte chars in environment var. Solution: Use the wide API. (Ken Takata, closes #4008) Files: src/misc1.c, src/testdir/test_let.vim @@ -36218,7 +36218,7 @@ Solution: Update the screen if needed. Files: src/beval.c Patch 8.1.1655 -Problem: Popup window border drawn wrong with multi-byte char. (Marcin +Problem: Popup window border drawn wrong with multibyte char. (Marcin Szamotulski) Solution: Correct check in mb_fix_col(). (closes #4635) Files: src/mbyte.c, src/testdir/test_popupwin.vim, @@ -37499,13 +37499,13 @@ Files: src/testdir/test_popupwin.vim src/testdir/dumps/Test_popupwin_previewpopup_6.dump Patch 8.1.1857 -Problem: Cannot use modifier with multi-byte character. -Solution: Allow using a multi-byte character, although it doesn't work +Problem: Cannot use modifier with multibyte character. +Solution: Allow using a multibyte character, although it doesn't work everywhere. Files: src/misc2.c, src/testdir/test_mapping.vim Patch 8.1.1858 -Problem: Test for multi-byte mapping fails on some systems. +Problem: Test for multibyte mapping fails on some systems. Solution: Test in another way. Files: src/testdir/test_mapping.vim @@ -39372,7 +39372,7 @@ Files: src/term.c, src/getchar.c, sr Patch 8.1.2135 Problem: With modifyOtherKeys Alt-a does not work properly. -Solution: Remove the ALT modifier. Get multi-byte after applying ALT. +Solution: Remove the ALT modifier. Get multibyte after applying ALT. Files: src/getchar.c Patch 8.1.2136 @@ -39971,8 +39971,8 @@ Solution: Use the wide version of the Files: src/filepath.c, src/testdir/test_shortpathname.vim Patch 8.1.2235 -Problem: "C" with 'virtualedit' set does not include multi-byte char. -Solution: Include the whole multi-byte char. (Nobuhiro Takasaki, +Problem: "C" with 'virtualedit' set does not include multibyte char. +Solution: Include the whole multibyte char. (Nobuhiro Takasaki, closes #5152) Files: src/ops.c, src/testdir/test_virtualedit.vim @@ -41255,7 +41255,7 @@ Files: runtime/doc/autocmd.txt, run Patch 8.2.0018 Problem: :join does not add white space where it should. (Zdenek Dohnal) -Solution: Handle joining multiple lines propely. +Solution: Handle joining multiple lines properly. Files: src/ops.c, src/testdir/test_join.vim Patch 8.2.0019 @@ -41337,7 +41337,7 @@ Files: src/channel.c, src/testdir/t Patch 8.2.0033 Problem: Crash when make_extmatch() runs out of memory. -Solution: Check for NULL. (Dominique Pellé, closs #5392) +Solution: Check for NULL. (Dominique Pellé, closes #5392) Files: src/regexp_bt.c, src/regexp_nfa.c Patch 8.2.0034 @@ -41502,7 +41502,7 @@ Files: src/message_test.c, src/mess Patch 8.2.0061 Problem: The execute stack can grow big and never shrinks. -Solution: Reduce the size in gargage collect. +Solution: Reduce the size in garbage collect. Files: src/eval.c Patch 8.2.0062 @@ -41517,7 +41517,7 @@ Files: src/ops.c Patch 8.2.0064 Problem: Diffmode completion doesn't use per-window setting. -Solution: Check if a window is in diff mode. (Dominique Pell, closes #5419) +Solution: Check if a window is in diff mode. (Dominique Pellé, closes #5419) Files: src/buffer.c, src/testdir/test_diffmode.vim Patch 8.2.0065 @@ -42066,7 +42066,7 @@ Files: src/vim9script.c, src/vim9co Patch 8.2.0156 Problem: Various typos in source files and tests. -Solution: Fix the typos. (Emir Sari, closes #5532) +Solution: Fix the typos. (Emir Sarı, closes #5532) Files: Makefile, src/INSTALLvms.txt, src/Make_vms.mms, src/beval.h, src/buffer.c, src/charset.c, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c, src/getchar.c, src/gui.c, src/gui_mac.c, @@ -42263,7 +42263,7 @@ Solution: Check for features. (Dominique Pellé, closes #5561) Files: src/testdir/test_functions.vim, src/testdir/test_highlight.vim Patch 8.2.0187 -Problem: Reduntant code. +Problem: Redundant code. Solution: Remove unused assignments. (Dominique Pellé, closes #5557) Files: src/vim9compile.c @@ -42557,7 +42557,7 @@ Files: src/buffer.c, src/testdir/te src/testdir/dumps/Test_statusline_1.dump Patch 8.2.0236 -Problem: MS-Windows unintall doesn't delete vimtutur.bat. +Problem: MS-Windows uninstall doesn't delete vimtutur.bat. Solution: Change directory before deletion. (Ken Takata, closes #5603) Files: src/uninstall.c @@ -42583,7 +42583,7 @@ Files: src/os_win32.c, src/testdir/ Patch 8.2.0240 Problem: Using memory after it was freed. (Dominique Pellé) -Solution: Do not mix converion buffer with other buffer. +Solution: Do not mix conversion buffer with other buffer. Files: src/viminfo.c, src/vim.h Patch 8.2.0241 @@ -42795,7 +42795,7 @@ Files: src/testdir/test_autocmd.vim Patch 8.2.0271 Problem: The "num64" feature is available everywhere and building without it causes problems. -Solution: Graduage the "num64" feature. (James McCoy, closes #5650) +Solution: Graduate the "num64" feature. (James McCoy, closes #5650) Files: src/evalfunc.c, src/feature.h, src/message.c, src/structs.h, src/testdir/test_expr.vim, src/testdir/test_largefile.vim, src/testdir/test_sort.vim, src/testdir/test_vimscript.vim, @@ -42945,7 +42945,7 @@ Files: src/vim9compile.c, src/testd Patch 8.2.0295 Problem: Highlighting for :s wrong when using different separator. -Solution: Use separat argument for search direction and separator. (Rob +Solution: Use separate argument for search direction and separator. (Rob Pilling, closes #5665) Files: src/ex_docmd.c, src/ex_getln.c, src/gui.c, src/normal.c, src/proto/search.pro, src/quickfix.c, src/search.c, src/spell.c, @@ -43093,7 +43093,7 @@ Files: Filelist, src/evalvars.c, sr Patch 8.2.0320 Problem: No Haiku support. -Solution: Add support for Haiku. (Emir Sari, closes #5605) +Solution: Add support for Haiku. (Emir Sarı, closes #5605) Files: Filelist, runtime/doc/Makefile, runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/help.txt, runtime/doc/options.txt, runtime/doc/os_haiku.txt, @@ -43377,8 +43377,8 @@ Solution: Make a difference between int and short. (Dominique Pellé, Files: src/message.c Patch 8.2.0365 -Problem: Tag kind can't be a multi-byte character. (Marcin Szamotulski) -Solution: Recognize multi-byte character. (closes #5724) +Problem: Tag kind can't be a multibyte character. (Marcin Szamotulski) +Solution: Recognize multibyte character. (closes #5724) Files: src/tag.c, src/testdir/test_taglist.vim Patch 8.2.0366 @@ -43467,7 +43467,7 @@ Files: src/textprop.c Patch 8.2.0380 Problem: Tiny popup when creating a terminal popup without minwidth. -Solution: Use a default mininum size of 5 lines of 20 characters. +Solution: Use a default minimum size of 5 lines of 20 characters. Files: src/popupwin.c, src/testdir/test_terminal.vim, src/testdir/dumps/Test_terminal_popup_m1.dump @@ -44040,7 +44040,7 @@ Files: src/terminal.c Patch 8.2.0473 Problem: Variables declared in an outer scope. -Solution: Decleare variables only in the scope where they are used. +Solution: Declare variables only in the scope where they are used. Files: src/evalvars.c Patch 8.2.0474 (after 8.2.0403) @@ -44050,12 +44050,12 @@ Files: src/fileio.c, src/testdir/te Patch 8.2.0475 Problem: Channel out_cb test still fails sometimes on Mac. -Solution: Use an ever longer timeout. +Solution: Use an even longer timeout. Files: src/testdir/test_channel.vim Patch 8.2.0476 Problem: Terminal nasty callback test fails sometimes. -Solution: use term_wait() instead of a sleep. (Yee Cheng Chin,closes #5865) +Solution: use term_wait() instead of a sleep. (Yee Cheng Chin, closes #5865) Files: src/testdir/test_terminal.vim Patch 8.2.0477 @@ -44225,7 +44225,7 @@ Solution: Cleanup the scope list. Files: src/vim9compile.c Patch 8.2.0505 -Problem: term_getty() not sufficiently tested. +Problem: term_gettty() not sufficiently tested. Solution: Add more asserts. (Dominique Pellé, closes #5877) Files: src/testdir/test_terminal.vim @@ -44406,7 +44406,7 @@ Files: src/testdir/test_search.vim, Patch 8.2.0532 Problem: Cannot use simplify() as a method. -Solution: Add FEARG_1. (closes #5996) +Solution: Add FEARG_1. (closes #5896) Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_functions.vim @@ -44932,7 +44932,7 @@ Files: src/insexpand.c, src/globals src/testdir/test_ex_mode.vim, runtime/doc/insert.txt Patch 8.2.0615 -Problem: Regexp benchmark stest is old style. +Problem: Regexp benchmark test is old style. Solution: Make it a new style test. Fix using a NULL list. Add more tests. (Yegappan Lakshmanan, closes #5963) Files: src/evalbuffer.c, src/testdir/Make_dos.mak, @@ -44982,7 +44982,7 @@ Files: src/testdir/Makefile, src/Ma Patch 8.2.0622 Problem: Haiku: GUI does not compile. -Solution: Various fixes. (Emir Sari, closes #5961) +Solution: Various fixes. (Emir Sarı, closes #5961) Files: Filelist, README.md, READMEdir/README_haiku.txt, runtime/doc/os_haiku.txt, src/Makefile, src/beval.h, src/gui_haiku.cc, src/proto/gui_haiku.pro @@ -45021,7 +45021,7 @@ Files: src/userfunc.c Patch 8.2.0628 Problem: Error in menu translations. Solution: Insert a backslash before a space in one more file. (Shun Bai, - Emir Sari) + Emir Sarı) Files: runtime/lang/menu_zh_cn.utf-8.vim, runtime/lang/menu_ca_es.latin1.vim, runtime/lang/menu_cs_cz.iso_8859-2.vim, @@ -45287,7 +45287,7 @@ Files: src/testdir/shared.vim, src/ Patch 8.2.0667 Problem: Cannot install Haiku version from source. -Solution: Update Makefile and rdef file. (Emir Sari, closes #6013) +Solution: Update Makefile and rdef file. (Emir Sarı, closes #6013) Files: Filelist, READMEdir/README_haiku.txt, runtime/doc/os_haiku.txt, src/Makefile, src/os_haiku.rdef.in, src/os_haiku.rdef @@ -45313,7 +45313,7 @@ Files: src/ex_getln.c, src/beval.c, Patch 8.2.0671 Problem: Haiku: compiler warnings. -Solution: Avoid the warnings. Drop display_errors() copy. (Emir Sari, +Solution: Avoid the warnings. Drop display_errors() copy. (Emir Sarı, closes #6018) Files: .gitignore, src/gui.c, src/gui_haiku.cc @@ -45566,7 +45566,7 @@ Files: runtime/filetype.vim, src/te Patch 8.2.0714 Problem: Vim9: handling constant expression does not scale. -Solution: Use another solution, passint typval_T. +Solution: Use another solution, passing typval_T. Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim Patch 8.2.0715 @@ -45680,7 +45680,7 @@ Solution: Do not check for next line i Files: src/scriptfile.c Patch 8.2.0735 -Problem: Vim9: using unitialized memory. +Problem: Vim9: using uninitialized memory. Solution: Clear the arg_lvar field. Files: src/vim9compile.c @@ -45801,7 +45801,7 @@ Files: src/testdir/test_vim9_script Patch 8.2.0755 Problem: Vim9: No error when variable initializer is not a constant. Solution: Return FAIL when trying to get a variable value. Do not execute a - script when an error is deteted in the first or second phase. + script when an error is detected in the first or second phase. Files: src/eval.c, src/vim9script.c, src/testdir/test_vim9_script.vim Patch 8.2.0756 (after 8.2.0249) @@ -46003,7 +46003,7 @@ Files: src/libvterm/include/vterm.h Patch 8.2.0786 Problem: Channel test is flaky on FreeBSD. -Solution: Set the sockiet TCP_NODELAY option. Adjust expected line count in +Solution: Set the socket TCP_NODELAY option. Adjust expected line count in netbeans test. (Ozaki Kiichi, closes #6097) Files: src/testdir/test_channel.py, src/testdir/test_netbeans.vim @@ -46273,7 +46273,7 @@ Solution: Fix off-by-one error. Files: src/userfunc.c Patch 8.2.0828 -Problem: Travis: regexp patttern doesn't work everywhere. +Problem: Travis: regexp pattern doesn't work everywhere. Solution: Use [:blank:] instead of \b. (Ozaki Kiichi, closes #6146) Files: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed, ci/config.mk.sed, src/if_ruby.c @@ -46396,7 +46396,7 @@ Files: src/os_win32.c, src/proto/os Patch 8.2.0849 Problem: BeOS code is not maintained and probably unused. -Solution: Remove the BeOS code. (Emir Sari, closes #5817) +Solution: Remove the BeOS code. (Emir Sarı, closes #5817) Files: Filelist, src/Makefile, src/configure.ac, src/auto/configure, src/evalfunc.c, src/normal.c, src/os_beos.c, src/os_beos.h, src/os_beos.rsrc, src/os_unix.c, src/proto.h, @@ -46404,7 +46404,7 @@ Files: Filelist, src/Makefile, src/ src/testdir/test_functions.vim, src/ui.c, src/vim.h Patch 8.2.0850 -Problem: MS-Windows: exepath() works different from cmd.exe. +Problem: MS-Windows: exepath() works differently from cmd.exe. Solution: Make exepath() work better on MS-Windows. (closes #6115) Files: runtime/doc/eval.txt, src/os_win32.c, src/testdir/test_functions.vim @@ -46497,7 +46497,7 @@ Files: runtime/doc/syntax.txt, runt Patch 8.2.0864 Problem: Pragmas are indented all the way to the left. -Solution: Add an option to indent progmas like normal code. (Max Rumpf, +Solution: Add an option to indent pragmas like normal code. (Max Rumpf, closes #5468) Files: runtime/doc/indent.txt, src/cindent.c, src/structs.h, src/testdir/test_cindent.vim @@ -46558,7 +46558,7 @@ Files: runtime/doc/eval.txt, src/ev src/testdir/test_marks.vim Patch 8.2.0872 -Problem: XIM code is mixed with multi-byte code. +Problem: XIM code is mixed with multibyte code. Solution: Move the XIM code to a separate file. (Yegappan Lakshmanan, closes #6177) Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak, @@ -46735,7 +46735,7 @@ Files: src/search.c, src/testdir/te Patch 8.2.0903 Problem: comparing WINVER does not work correctly. -Solution: Use arithmethic expansion. (Ozaki Kiichi, closes #6197) +Solution: Use arithmetic expansion. (Ozaki Kiichi, closes #6197) Files: src/Make_cyg_ming.mak Patch 8.2.0904 @@ -46817,7 +46817,7 @@ Files: src/getchar.c, src/proto/get src/proto/term.pro, src/testdir/test_termcodes.vim Patch 8.2.0917 -Problem: Quickfix entries do not suport a "note" type. +Problem: Quickfix entries do not support a "note" type. Solution: Add support for "note". (partly by Yegappan Lakshmanan, closes #5527, closes #6216) Files: runtime/doc/quickfix.txt, src/quickfix.c, @@ -46901,14 +46901,14 @@ Files: runtime/scripts.vim, src/tes Patch 8.2.0931 Problem: Some remarks about BeOS remain. -Solution: Remove BeOS remarks from the help and other files. (Emir Sari, +Solution: Remove BeOS remarks from the help and other files. (Emir Sarı, closes #6221) Files: READMEdir/README_extra.txt, runtime/doc/options.txt, runtime/doc/os_beos.txt, runtime/doc/os_vms.txt, runtime/doc/vi_diff.txt, src/INSTALL Patch 8.2.0932 -Problem: Missspelling spelllang. +Problem: Misspelling spelllang. Solution: Add an "l". (Dominique Pellé) Files: src/optionstr.c, src/proto/spell.pro, src/spell.c @@ -47364,7 +47364,7 @@ Solution: Skip over "++arg". (Christia Files: src/cmdexpand.c, src/testdir/test_cmdline.vim Patch 8.2.1008 -Problem: Vim9: no test for disassambling newly added instructions. +Problem: Vim9: no test for disassembling newly added instructions. Solution: Add a function and check disassembly. Files: src/testdir/test_vim9_disassemble.vim @@ -47480,7 +47480,7 @@ Solution: Check for a continuation lin Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim Patch 8.2.1027 -Problem: GUI: multi-byte characters do not work in a terminal. +Problem: GUI: multibyte characters do not work in a terminal. Solution: Do not assume a key is one byte. (closes #6304) Files: src/gui_gtk_x11.c, src/gui_x11.c @@ -47697,7 +47697,7 @@ Solution: Check for operator after lin Files: src/eval.c, src/testdir/test_vim9_expr.vim Patch 8.2.1064 -Problem: Vim9: no line break allowed before comperators. +Problem: Vim9: no line break allowed before comparators. Solution: Check for comperator after line break. Files: src/eval.c, src/testdir/test_vim9_expr.vim @@ -47839,7 +47839,7 @@ Files: src/filepath.c Patch 8.2.1088 Problem: A very long translation might cause a buffer overflow. -Solution: Trunctate the message if needed. +Solution: Truncate the message if needed. Files: src/fileio.c Patch 8.2.1089 @@ -48001,7 +48001,7 @@ Solution: Adjust how a command is pars Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim Patch 8.2.1117 -Problem: Coverity warns for unsing unitialized field. +Problem: Coverity warns for using uninitialized field. Solution: Initialize v_lock. Files: src/if_lua.c @@ -48545,7 +48545,7 @@ Problem: Using ht_used when looping t Solution: Use ht_changed in a few more places. Files: src/userfunc.c, src/if_py_both.h -Patch 8.2.1211 (after 8.2.1118 +Patch 8.2.1211 (after 8.2.1118) Problem: Removed more than dead code. Solution: Put back the decrement. Files: src/move.c, src/testdir/test_diffmode.vim @@ -48852,7 +48852,7 @@ Files: Filelist, src/Make_cyg_ming. src/proto/ex_cmds.pro, src/proto/help.pro Patch 8.2.1263 -Problem: Vim9: comperators use 'ignorecase' in Vim9 script. +Problem: Vim9: comparators use 'ignorecase' in Vim9 script. Solution: Ignore 'ignorecase'. Use true and false instead of 1 and 0. (closes #6497) Files: src/eval.c, src/typval.c, src/vim9execute.c, @@ -49043,7 +49043,7 @@ Files: src/Makefile, src/testdir/Ma src/testdir/test_regexp_utf8.vim Patch 8.2.1296 -Problem: Some part of using 'smarcase' was not tested. +Problem: Some part of using 'smartcase' was not tested. Solution: Add more tests. (Dominique Pellé, closes #6538) Files: src/testdir/test_search.vim @@ -49334,7 +49334,7 @@ Files: src/testdir/test_vim9_func.v Patch 8.2.1345 Problem: Redraw error when using visual block and scroll. -Solution: Add check for w_topline. ( closes #6597) +Solution: Add check for w_topline. (closes #6597) Files: src/drawscreen.c, src/testdir/test_display.vim, src/testdir/dumps/Test_display_visual_block_scroll.dump @@ -49504,7 +49504,7 @@ Files: src/vim9compile.c, src/testd Patch 8.2.1376 Problem: Vim9: expression mapping causes error for using :import. -Solution: Add EX_LOCK_OK to :import and :export. (closes 3606) +Solution: Add EX_LOCK_OK to :import and :export. (closes #6606) Files: src/ex_cmds.h, src/testdir/test_vim9_script.vim Patch 8.2.1377 @@ -49558,7 +49558,7 @@ Solution: Add a test on Travis for ARM Files: .travis.yml Patch 8.2.1386 -Problem: Backslash not removed afer space in option with space in +Problem: Backslash not removed after space in option with space in 'isfname'. Solution: Do remove backslash before space, also when it is in 'isfname'. (Yasuhiro Matsumoto, closes #6651) diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt --- a/runtime/doc/vi_diff.txt +++ b/runtime/doc/vi_diff.txt @@ -1,4 +1,4 @@ -*vi_diff.txt* For Vim version 8.2. Last change: 2020 Jun 07 +*vi_diff.txt* For Vim version 8.2. Last change: 2020 Aug 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -467,7 +467,7 @@ Editing binary files. |edit-binary| last line in the file. Multi-language support. |multi-lang| - Files in double-byte or multi-byte encodings can be edited. There is + Files in double-byte or multibyte encodings can be edited. There is UTF-8 support to be able to edit various languages at the same time, without switching fonts. |UTF-8| Messages and menus are available in different languages. diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt --- a/runtime/doc/vim9.txt +++ b/runtime/doc/vim9.txt @@ -1,4 +1,4 @@ -*vim9.txt* For Vim version 8.2. Last change: 2020 Aug 15 +*vim9.txt* For Vim version 8.2. Last change: 2020 Aug 27 VIM REFERENCE MANUAL by Bram Moolenaar @@ -49,6 +49,7 @@ errors are handled. The Vim9 script syntax and semantics are used in: - a function defined with the `:def` command - a script file where the first command is `vim9script` +- an autocommand defined in the context of these When using `:function` in a Vim9 script file the legacy syntax is used. However, this can be confusing and is therefore discouraged. @@ -92,9 +93,13 @@ often 10x to 100x times. Many errors are already found when compiling, before the function is executed. The syntax is strict, to enforce code that is easy to read and understand. -Compilation is done when the function is first called, or when the -`:defcompile` command is encountered in the script where the function was -defined. `:disassemble` also compiles the function. +Compilation is done when: +- the function is first called +- when the `:defcompile` command is encountered in the script where the + function was defined +- `:disassemble` is used for the function. +- a function that is compiled calls the function or uses it as a function + reference `:def` has no options like `:function` does: "range", "abort", "dict" or "closure". A `:def` function always aborts on an error, does not get a range @@ -492,6 +497,18 @@ For a workaround, split it in two functi use-feature enddef endif +Of put the unsupported code inside an `if` with a constant expression that +evaluates to false: > + def Maybe() + if has('feature') + use-feature + endif + enddef +Note that for unrecognized commands there is no check for "|" and a following +command. This will give an error for missing `endif`: > + def Maybe() + if has('feature') | use-feature | endif + enddef ============================================================================== @@ -539,7 +556,7 @@ If the script the function is defined in variables can be accessed without the "s:" prefix. They must be defined before the function is compiled. If the script the function is defined in is legacy script, then script-local variables must be accessed with the "s:" -prefix. +prefix and they do not need to exist (they can be deleted any time). *:defc* *:defcompile* :defc[ompile] Compile functions defined in the current script that @@ -692,6 +709,22 @@ dictionary. If there is a mix of types, ['a', 'b', 'c'] list [1, 'x', 3] list + +Stricter type checking *type-checking* + +In legacy Vim script, where a number was expected, a string would be +automatically converted to a number. This was convenient for an actual number +such as "123", but leads to unexpected problems (but no error message) if the +string doesn't start with a number. Quite often this leads to hard-to-find +bugs. + +In Vim9 script this has been made stricter. In most places it works just as +before, if the expected type was already. There will sometimes be an error, +thus breaking backwards compatibility. For example: +- Using a number other than 0 or 1 where a boolean is expected. *E1023* +- Using a string value when setting a number options. +- Using a number where a string is expected. *E1024* + ============================================================================== 5. Namespace, Import and Export @@ -703,6 +736,9 @@ A Vim9 script can be written to be impor the script is local, unless exported. Those exported items, and only those items, can then be imported in another script. +You can cheat by using the global namespace explicitly. We will assume here +that you don't do that. + Namespace ~ *:vim9script* *:vim9* diff --git a/runtime/ftplugin/javascript.vim b/runtime/ftplugin/javascript.vim --- a/runtime/ftplugin/javascript.vim +++ b/runtime/ftplugin/javascript.vim @@ -1,11 +1,11 @@ " Vim filetype plugin file -" Language: Javascript -" Maintainer: Doug Kearns -" Last Change: 2008 Jun 15 -" URL: http://gus.gscit.monash.edu.au/~djkea2/vim/ftplugin/javascript.vim +" Language: Javascript +" Maintainer: Doug Kearns +" Last Change: 2020 Jun 23 +" Contributor: Romain Lafourcade if exists("b:did_ftplugin") - finish + finish endif let b:did_ftplugin = 1 @@ -13,7 +13,7 @@ let s:cpo_save = &cpo set cpo-=C " Set 'formatoptions' to break comment lines but not other lines, -" " and insert the comment leader when hitting or using "o". +" and insert the comment leader when hitting or using "o". setlocal formatoptions-=t formatoptions+=croql " Set completion with CTRL-X CTRL-O to autoloaded function. @@ -26,13 +26,50 @@ setlocal comments=sO:*\ -,mO:*\ \ ,exO:* setlocal commentstring=//%s -" Change the :browse e filter to primarily show Java-related files. -if has("gui_win32") - let b:browsefilter="Javascript Files (*.js)\t*.js\n" . - \ "All Files (*.*)\t*.*\n" +" Change the :browse e filter to primarily show JavaScript-related files. +if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter") + let b:browsefilter = + \ "JavaScript Files (*.js)\t*.js\n" + \ .. "JSX Files (*.jsx)\t*.jsx\n" + \ .. "JavaScript Modules (*.es, *.es6, *.cjs, *.mjs, *.jsm)\t*.es;*.es6;*.cjs;*.mjs;*.jsm\n" + \ .. "Vue Templates (*.vue)\t*.vue\n" + \ .. "JSON Files (*.json)\t*.json\n" + \ .. "All Files (*.*)\t*.*\n" endif - -let b:undo_ftplugin = "setl fo< ofu< com< cms<" + +" The following suffixes should be implied when resolving filenames +setlocal suffixesadd+=.js,.jsx,.es,.es6,.cjs,.mjs,.jsm,.vue,.json + +" The following suffixes should have low priority +" .snap jest snapshot +setlocal suffixes+=.snap + +" Remove irrelevant part of 'path'. +" User is expected to augment it with contextually-relevant paths +setlocal path-=/usr/include + +" Matchit configuration +if exists("loaded_matchit") + let b:match_ignorecase = 0 + let b:match_words = + \ '\:\,' + \ .. '<\@<=\([^ \t>/]\+\)\%(\s\+[^>]*\%([^/]>\|$\)\|>\|$\):<\@<=/\1>,' + \ .. '<\@<=\%([^ \t>/]\+\)\%(\s\+[^/>]*\|$\):/>' +endif + +" Set 'define' to a comprehensive value +let &l:define = + \ '\(^\s*(*async\s\+function\|(*function\)' + \ .. '\|^\s*\(\*\|static\|async\|get\|set\|\i\+\.\)' + \ .. '\|^\s*\(\ze\i\+\)\(([^)]*).*{$\|\s*[:=,]\)' + \ .. '\|^\s*\(export\s\+\|export\s\+default\s\+\)*\(var\|let\|const\|function\|class\)' + \ .. '\|\' + +let b:undo_ftplugin = + \ "setl fo< ofu< com< cms< sua< su< def< pa<" + \ .. "| unlet! b:browsefilter b:match_ignorecase b:match_words" let &cpo = s:cpo_save unlet s:cpo_save + +" vim: textwidth=78 tabstop=8 shiftwidth=4 softtabstop=4 expandtab diff --git a/runtime/ftplugin/javascriptreact.vim b/runtime/ftplugin/javascriptreact.vim --- a/runtime/ftplugin/javascriptreact.vim +++ b/runtime/ftplugin/javascriptreact.vim @@ -1,2 +1,7 @@ +" Vim filetype plugin file +" Language: JavaScript React +" Maintainer: Doug Kearns +" Last Change: 2020 Aug 19 + " Placeholder for backwards compatilibity: .jsx used to stand for JavaScript. runtime! ftplugin/javascript.vim diff --git a/runtime/keymap/russian-typograph.vim b/runtime/keymap/russian-typograph.vim new file mode 100644 --- /dev/null +++ b/runtime/keymap/russian-typograph.vim @@ -0,0 +1,190 @@ +" Vim Keymap file for Russian characters +" layout English-US standard 104 key 'QWERTY', 'JCUKEN' +" +" Maintainer: Restorer +" Last Changed: 20 Jan 2019 +" Description: Раскладка сделана на основе раскладки «русская машинопись» +" (KBDRU1.DLL), поставляемой в составе ОС MS Windows. Эта раскладка позволяет +" печать практически все знаки препинания используя цифровой ряд и не требуя при +" этом нажатия дополнительных клавиш, ну и также удобное расположение буквы «Ё». +" Однако были внесены некоторые дополнения (улучшения?), в частности: +" ‐ раздельные символы круглых скобок (), расположены на тех же позициях, что и +" в US-International; +" ‐ раздельные символы типографских кавычек «», расположены на клавишах «3» и +" «4» соответственно; +" ‐ на этих же клавишах находятся внутренние кавычки “лапки”, набираемые при +" нажатой клавише «ALT»; +" ‐ возможность набирать символы, отсутствующие в русской раскладке клавиатуры, +" а именно @#$^&*{}[]"'`~<>, которые расположены на тех же местах, что и раньше. +" Для этого не требуется переключаться в латинскую раскладку клавиатуры, а +" оставаясь в русской, использовать для этого дополнительные клавиши «SHIFT» и +" «ALT»; +" ‐ и ещё несколько удобств, которые позволяют быстро и с минимальными усилиями +" набирать текст. + +scriptencoding utf-8 + +" Переключение языка ввода со стандартного сочетания на указанные ниже +" Для режимов вставки и замены +""или SHIFT+SPACE +" inoremap +""или CTRL+SPACE" +" inoremap +" Для режима командной строки +""или SHIFT+SPACE +" cnoremap +""или CTRL+SPACE" +" cnoremap +" Одной командой для режимов вставки, замены и командной строки +" noremap! +" noremap! +" +" Стандартное переключение по CTRL+^ после этих переназначений также сохраняется + +let b:keymap_name ="RUS" + +loadkeymap + +" DIGITAL ROW + +" The Shift key is not pressed +" + " PERCENT SIGN + " EXCLAMATION MARK + " EM DASH + " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK + " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK + " COLON + " COMMA + " FULL STOP + " QUESTION MARK + " LEFT PARENTHESIS + " RIGHT PARENTHESIS + " HYPHEN + " SEMICOLON + +" The Shift key is pressed + + " EQUALS SIGN + " DIGIT ONE + " DIGIT TWO + " DIGIT THREE + " DIGIT FOUR + " DIGIT FIVE + " DIGIT SIX + " DIGIT SEVEN + " DIGIT EIGHT + " DIGIT NINE + " DIGIT ZERO + " HYPHEN-MINUS + " PLUS SIGN + +" ALPHABETICAL 1st ROW + + " CYRILLIC SMALL LETTER SHORT I + " CYRILLIC CAPITAL LETTER SHORT I + " CYRILLIC SMALL LETTER TSE + " CYRILLIC CAPITAL LETTER TSE + " CYRILLIC SMALL LETTER U + " CYRILLIC CAPITAL LETTER U + " CYRILLIC SMALL LETTER KA + " CYRILLIC CAPITAL LETTER KA + " CYRILLIC SMALL LETTER IE + " CYRILLIC CAPITAL LETTER IE + " CYRILLIC SMALL LETTER EN + " CYRILLIC CAPITAL LETTER EN + " CYRILLIC SMALL LETTER GHE + " CYRILLIC CAPITAL LETTER GHE + " CYRILLIC SMALL LETTER SHA + " CYRILLIC CAPITAL LETTER SHA + " CYRILLIC SMALL LETTER SHCHA + " CYRILLIC CAPITAL LETTER SHCHA + " CYRILLIC SMALL LETTER ZE + " CYRILLIC CAPITAL LETTER ZE + " CYRILLIC SMALL LETTER HA + " CYRILLIC CAPITAL LETTER HA + " CYRILLIC SMALL LETTER HARD SIGN + " CYRILLIC CAPITAL LETTER HARD SIGN + +" ALPHABETIC 2st ROW + + " CYRILLIC SMALL LETTER EF + " CYRILLIC CAPITAL LETTER EF + " CYRILLIC SMALL LETTER YERU + " CYRILLIC CAPITAL LETTER YERU + " CYRILLIC SMALL LETTER VE + " CYRILLIC CAPITAL LETTER VE + " CYRILLIC SMALL LETTER A + " CYRILLIC CAPITAL LETTER A + " CYRILLIC SMALL LETTER PE + " CYRILLIC CAPITAL LETTER PE + " CYRILLIC SMALL LETTER ER + " CYRILLIC CAPITAL LETTER ER + " CYRILLIC SMALL LETTER O + " CYRILLIC CAPITAL LETTER O + " CYRILLIC SMALL LETTER EL + " CYRILLIC CAPITAL LETTER EL + " CYRILLIC SMALL LETTER DE + " CYRILLIC CAPITAL LETTER DE + " CYRILLIC SMALL LETTER ZHE + " CYRILLIC CAPITAL LETTER ZHE + " CYRILLIC SMALL LETTER E + " CYRILLIC CAPITAL LETTER E + +" ALPHABETIC 3st ROW + + " CYRILLIC SMALL LETTER YA + " CYRILLIC CAPITAL LETTER YA + " CYRILLIC SMALL LETTER CHE + " CYRILLIC CAPITAL LETTER CHE + " CYRILLIC SMALL LETTER ES + " CYRILLIC CAPITAL LETTER ES + " CYRILLIC SMALL LETTER EM + " CYRILLIC CAPITAL LETTER EM + " CYRILLIC SMALL LETTER I + " CYRILLIC CAPITAL LETTER I + " CYRILLIC SMALL LETTER TE + " CYRILLIC CAPITAL LETTER TE + " CYRILLIC SMALL LETTER SOFT SIGN + " CYRILLIC CAPITAL LETTER SOFT SIGN + " CYRILLIC SMALL LETTER BE + " CYRILLIC CAPITAL LETTER BE + " CYRILLIC SMALL LETTER YU + " CYRILLIC CAPITAL LETTER YU + " CYRILLIC SMALL LETTER IO + " CYRILLIC CAPITAL LETTER IO + +" VK_OEM_5 key (scan code 2b) + +" The Shift key is not pressed + " SOLIDUS +" The Shift key is pressed + " REVERSE SOLIDUS + +" Alt key pressed + + " GRAVE ACCENT + " NUMERO SIGN + " LEFT DOUBLE QUOTATION MARK + " RIGHT DOUBLE QUOTATION MARK + " LEFT SQUARE BRACKET + " RIGHT SQUARE BRACKET + " APOSTROPHE + +" Alt and Shift keys pressed + + " TILDE + " COMMERCIAL AT + " NUMBER SIGN + " DOLLAR SIGN + " CIRCUMFLEX ACCENT + " AMPERSAND + " ASTERISK + " LOW LINE + " LEFT CURLY BRACKET + " RIGHT CURLY BRACKET + " QUOTATION MARK + " LESS-THAN SIGN + " GREATER-THAN SIGN + " VERTICAL LINE + diff --git a/runtime/keymap/turkish-f.vim b/runtime/keymap/turkish-f.vim --- a/runtime/keymap/turkish-f.vim +++ b/runtime/keymap/turkish-f.vim @@ -55,7 +55,6 @@ N Z LATIN CAPITAL LETTER Z Å Û LATIN CAPITAL LETTER U WITH CIRCUMFLEX Í Î LATIN CAPITAL LETTER I WITH CIRCUMFLEX Ï Â LATIN CAPITAL LETTER A WITH CIRCUMFLEX -` » RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK f a LATIN SMALL LETTER A , b LATIN SMALL LETTER B @@ -100,7 +99,7 @@ n z LATIN SMALL LETTER Z • [ LEFT SQUARE BRACKET ª ] RIGHT SQUARE BRACKET º } RIGHT CURLY BRACKET -– \ REVERSE SOLIDUS +– \\ REVERSE SOLIDUS ≠ | VERTICAL LINE œ @ COMMERCIAL AT ‘ ~ TILDE @@ -111,4 +110,3 @@ n z LATIN SMALL LETTER Z ˙ ₺ TURKISH LIRA SIGN ¬ £ POUND SIGN … ¥ YEN SIGN -` « LEFT-POINTING DOUBLE ANGLE QUOTATION MARK diff --git a/runtime/keymap/turkish-q.vim b/runtime/keymap/turkish-q.vim --- a/runtime/keymap/turkish-q.vim +++ b/runtime/keymap/turkish-q.vim @@ -51,7 +51,7 @@ i ı LATIN SMALL LETTER DOTLESS I • [ LEFT SQUARE BRACKET ª ] RIGHT SQUARE BRACKET º } RIGHT CURLY BRACKET -– \ REVERSE SOLIDUS +– \\ REVERSE SOLIDUS ≠ | VERTICAL LINE œ @ COMMERCIAL AT ´ € EURO SIGN diff --git a/runtime/syntax/awk.vim b/runtime/syntax/awk.vim --- a/runtime/syntax/awk.vim +++ b/runtime/syntax/awk.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: awk, nawk, gawk, mawk " Maintainer: Antonio Colombo -" Last Change: 2020 Mar 25 +" Last Change: 2020 Aug 18 " AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger " The AWK Programming Language, Addison-Wesley, 1988 @@ -27,6 +27,8 @@ endif let s:cpo_save = &cpo set cpo&vim +syn iskeyword @,48-57,_,192-255,@-@ + " A bunch of useful Awk keywords " AWK ref. p. 188 syn keyword awkStatement break continue delete exit diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: C " Maintainer: Bram Moolenaar -" Last Change: 2020 Aug 11 +" Last Change: 2020 Aug 28 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") @@ -346,6 +346,8 @@ if !exists("c_no_ansi") || exists("c_ans syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2 syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF FOPEN_MAX FILENAME_MAX L_tmpnam syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET TMP_MAX stderr stdin stdout EXIT_FAILURE EXIT_SUCCESS RAND_MAX + " used in assert.h + syn keyword cConstant NDEBUG " POSIX 2001 syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG SIGVTALRM SIGXCPU SIGXFSZ " non-POSIX signals diff --git a/runtime/syntax/help_ru.vim b/runtime/syntax/help_ru.vim new file mode 100644 --- /dev/null +++ b/runtime/syntax/help_ru.vim @@ -0,0 +1,65 @@ +" Vim syntax file +" Language: Russian Vim program help files *.rux +" Maintainer: Restorer (restorers@users.sourceforge.net) +" Last Change: 04 Aprl 2017 +" + +" Проверяем язык локали и установки опции 'helplang' +" Если не русский, то выходим из скрипта. +if ('ru' !~? v:lang || 'russian' !~? v:lang) && 'ru' !~? &helplang + finish +endif + +" Подсветка русских гиперссылок +syntax match helpHyperTextJump "\\\@" +"старый заголовок +syntax match helpVim "\<СПРАВОЧНИК ПО .*" +" новый заголовок +"syntax match helpVim "\<РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ РЕДАКТОРОМ VIM\>" +"syntax match helpVim "\<автор\%[ы:] .*$" +"старый заголовок +syntax match helpVim "\<РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ .*" +" Подсветка примечаний в тексте, начала примеров и т.п. +syntax keyword helpNote Примечание. Совет. Пример. Примеры: +syntax keyword helpWarning Внимание! +" в старой версии документации +syntax keyword helpNote Замечание: +" в старой версии документации +syntax keyword helpWarning ВНИМАНИЕ! Предупреждение: +" Подсветка Ex-команд в документации Vim +syntax match helpCommand "\":[A-Za-z!]\+\""hs=s+1,he=e-1 +" Подсветка специальных обозначений +syntax match helpSpecial "{[-а-яёА-ЯЁ0-9'":%#=[\]<>.,]\+}" +syntax match helpSpecial "{[-а-яёА-ЯЁ0-9'"*+/:%#=[\]<>.,]\+}" +syntax match helpSpecial "\s\[[-а-яё^А-ЯЁ0-9_]\{2,}]"ms=s+1 +syntax match helpSpecial "<[-а-яёА-ЯЁ0-9_]\+>" +syntax match helpSpecial "\[диапазон]" +syntax match helpSpecial "\[счётчик]" +syntax match helpSpecial "\[число]" +syntax match helpSpecial "\[+число]" +syntax match helpSpecial "\[-число]" +syntax match helpSpecial "\[кол-во]" +syntax match helpSpecial "\[строка]" +syntax match helpSpecial "\[смещение]" +syntax match helpSpecial "\[параметр]" +syntax match helpSpecial "\[параметры]" +syntax match helpSpecial "CTRL-{символ}" +syntax region helpNotVi start="{Доступно только" start="{В редкторе Vim" start="{В редакторе Vi" end="}" contains=helpLeadBlank,helpHyperTextJump +" Подсветка примечаний переводчика +syntax region helpTrnsNote start="\[Прим. перевод." end="]" contains=helpComment +" Определение группы подсветки Ex-команд в документации Vim +"hi def link helpCommand vimCommand +" Определение группы подсветки примечаний переводчика +hi def link helpTrnsNote Comment +" hi def link helpTrnsNote Comment +" +" vim: ts=8 sw=2 diff --git a/runtime/tools/unicode.vim b/runtime/tools/unicode.vim --- a/runtime/tools/unicode.vim +++ b/runtime/tools/unicode.vim @@ -7,7 +7,7 @@ " Usage: Vim -S " " Author: Bram Moolenaar -" Last Update: 2010 Jan 12 +" Last Update: 2020 Aug 24 " Parse lines of UnicodeData.txt. Creates a list of lists in s:dataprops. func! ParseDataToProps() @@ -262,85 +262,148 @@ func! BuildWidthTable(pattern, tableName wincmd p endfunc -" Build the amoji width table in a new buffer. -func! BuildEmojiTable(pattern, tableName) - let alltokens = [] - let widthtokens = [] - let lines = map(filter(filter(getline(1, '$'), 'v:val=~"^[1-9]"'), 'v:val=~a:pattern'), 'matchstr(v:val,"^\\S\\+")') - for n in range(len(lines)) - let line = lines[n] - let token = split(line, '\.\.') - let first = ('0x' . token[0]) + 0 - if len(token) == 1 + +" Get characters from a list of lines in form "12ab .." or "12ab..56cd ..." +" and put them in dictionary "chardict" +func AddLinesToCharDict(lines, chardict) + for line in a:lines + let tokens = split(line, '\.\.') + let first = str2nr(tokens[0], 16) + if len(tokens) == 1 let last = first else - let last = ('0x' . token[1]) + 0 + let last = str2nr(tokens[1], 16) endif - - let token = [first, last] - if len(alltokens) > 0 && (token[0] - 1 == alltokens[-1][1]) - let alltokens[-1][1] = token[1] - else - call add(alltokens, token) - endif - - " Characters below 1F000 may be considered single width traditionally, - " making them double width causes problems. - if first < 0x1f000 - continue - endif + for nr in range(first, last) + let a:chardict[nr] = 1 + endfor + endfor +endfunc - " exclude characters that are in the "ambiguous" or "doublewidth" table - for ambi in s:ambitable - if first >= ambi[0] && first <= ambi[1] - let first = ambi[1] + 1 - endif - if last >= ambi[0] && last <= ambi[1] - let last = ambi[0] - 1 - endif - endfor - for double in s:doubletable - if first >= double[0] && first <= double[1] - let first = double[1] + 1 - endif - if last >= double[0] && last <= double[1] - let last = double[0] - 1 - endif - endfor +func Test_AddLinesToCharDict() + let dict = {} + call AddLinesToCharDict([ + \ '1234 blah blah', + \ '1235 blah blah', + \ '12a0..12a2 blah blah', + \ '12a1 blah blah', + \ ], dict) + call assert_equal({0x1234: 1, 0x1235: 1, + \ 0x12a0: 1, 0x12a1: 1, 0x12a2: 1, + \ }, dict) + if v:errors != [] + echoerr 'AddLinesToCharDict' v:errors + return 1 + endif + return 0 +endfunc - if first <= last - let token = [first, last] - if len(widthtokens) > 0 && (token[0] - 1 == widthtokens[-1][1]) - let widthtokens[-1][1] = token[1] - else - call add(widthtokens, token) - endif + +func CharDictToPairList(chardict) + let result = [] + let keys = keys(a:chardict)->map('str2nr(v:val)')->sort('N') + let low = keys[0] + let high = keys[0] + for key in keys + if key > high + 1 + call add(result, [low, high]) + let low = key + let high = key + else + let high = key endif endfor - let allranges = map(alltokens, 'printf("\t{0x%04x, 0x%04x},", v:val[0], v:val[1])') - let widthranges = map(widthtokens, 'printf("\t{0x%04x, 0x%04x},", v:val[0], v:val[1])') + call add(result, [low, high]) + return result +endfunc + +func Test_CharDictToPairList() + let dict = {0x1020: 1, 0x1021: 1, 0x1022: 1, + \ 0x1024: 1, + \ 0x2022: 1, + \ 0x2024: 1, 0x2025: 1} + call assert_equal([ + \ [0x1020, 0x1022], + \ [0x1024, 0x1024], + \ [0x2022, 0x2022], + \ [0x2024, 0x2025], + \ ], CharDictToPairList(dict)) + if v:errors != [] + echoerr 'CharDictToPairList' v:errors + return 1 + endif + return 0 +endfunc + + +" Build the amoji width table in a new buffer. +func BuildEmojiTable() + " First make the table for all emojis. + let pattern = '; Emoji\s\+#\s' + let lines = map(filter(filter(getline(1, '$'), 'v:val=~"^[1-9]"'), 'v:val=~pattern'), 'matchstr(v:val,"^\\S\\+")') + + " Make a dictionary with an entry for each character. + let chardict = {} + call AddLinesToCharDict(lines, chardict) + let pairlist = CharDictToPairList(chardict) + let allranges = map(pairlist, 'printf(" {0x%04x, 0x%04x},", v:val[0], v:val[1])') " New buffer to put the result in. new - exe "file " . a:tableName . '_all' - call setline(1, " static struct interval " . a:tableName . "_all[] =") - call setline(2, " {") + exe 'file emoji_all' + call setline(1, "static struct interval emoji_all[] =") + call setline(2, "{") call append('$', allranges) call setline('$', getline('$')[:-2]) " remove last comma - call setline(line('$') + 1, " };") + call setline(line('$') + 1, "};") wincmd p + " Make the table for wide emojis. + let pattern = '; Emoji_\(Presentation\|Modifier_Base\)\s\+#\s' + let lines = map(filter(filter(getline(1, '$'), 'v:val=~"^[1-9]"'), 'v:val=~pattern'), 'matchstr(v:val,"^\\S\\+")') + + " Make a dictionary with an entry for each character. + let chardict = {} + call AddLinesToCharDict(lines, chardict) + + " exclude characters that are in the "ambiguous" or "doublewidth" table + for ambi in s:ambitable + for nr in range(ambi[0], ambi[1]) + if has_key(chardict, nr) + call remove(chardict, nr) + endif + endfor + endfor + + for wide in s:doubletable + for nr in range(wide[0], wide[1]) + if has_key(chardict, nr) + call remove(chardict, nr) + endif + endfor + endfor + + let pairlist = CharDictToPairList(chardict) + let wide_ranges = map(pairlist, 'printf("\t{0x%04x, 0x%04x},", v:val[0], v:val[1])') + " New buffer to put the result in. new - exe "file " . a:tableName . '_width' - call setline(1, " static struct interval " . a:tableName . "_width[] =") + exe 'file emoji_wide' + call setline(1, " static struct interval emoji_wide[] =") call setline(2, " {") - call append('$', widthranges) + call append('$', wide_ranges) call setline('$', getline('$')[:-2]) " remove last comma call setline(line('$') + 1, " };") wincmd p endfunc +" First test a few things +let v:errors = [] +if Test_AddLinesToCharDict() || Test_CharDictToPairList() + finish +endif + + " Try to avoid hitting E36 set equalalways @@ -383,9 +446,8 @@ let s:ambitable = [] call BuildWidthTable('A', 'ambiguous') " Edit the emoji text file. Requires the netrw plugin. -edit https://www.unicode.org/Public/emoji/11.0/emoji-data.txt -"edit http://www.unicode.org/Public/emoji/latest/emoji-data.txt +edit https://unicode.org/Public/emoji/12.1/emoji-data.txt " Build the emoji table. Ver. 1.0 - 6.0 -" Must come after the "ambiguous" table -call BuildEmojiTable('; Emoji\s\+#\s\+\d\+\.\d', 'emoji') +" Must come after the "ambiguous" and "doublewidth" tables +call BuildEmojiTable() diff --git a/src/po/nl.po b/src/po/nl.po --- a/src/po/nl.po +++ b/src/po/nl.po @@ -5808,3 +5808,27 @@ msgstr "zoeken bereikte TOP, verder vana msgid "search hit BOTTOM, continuing at TOP" msgstr "zoeken bereikte BODEM, verder vanaf TOP" +msgid "" +"\" Each \"set\" line shows the current value of an option (on the left)." +msgstr "" +"\" Elke \"set\" regel toont de huidige waarde van optie (aan de linkerkant)." + +msgid "\" Hit on a \"set\" line to execute it." +msgstr "\" Druk op op een \"set\" regel om het uit te voeren." + +msgid "\" A boolean option will be toggled." +msgstr "\" Een booleaanse optie wordt omgeschakeld." + +msgid "" +"\" For other options you can edit the value before hitting ." +msgstr "" +"\" Voor andere opties kun je de waarde aanpassen voor op te drukken." + +msgid "\" Hit on a help line to open a help window on this option." +msgstr "\" Druk op op een help regel om help te openen voor deze optie." + +msgid "\" Hit on an index line to jump there." +msgstr "\" Druk op op een index regel om daarheen te springen." + +msgid "\" Hit on a \"set\" line to refresh it." +msgstr "\" Druk op op een \"set\" regel om te verversen." diff --git a/src/po/tr.po b/src/po/tr.po --- a/src/po/tr.po +++ b/src/po/tr.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Vim Turkish Localization Project\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-03-26 16:40+0300\n" -"PO-Revision-Date: 2020-03-26 14:40+0300\n" +"POT-Creation-Date: 2020-08-22 22:11+0300\n" +"PO-Revision-Date: 2020-08-22 22:50+0300\n" "Last-Translator: Emir SARI \n" -"Language-Team: Turkish \n" +"Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -27,6 +27,9 @@ msgstr "E164: İlk dosyadan öncesine gidilemez" msgid "E165: Cannot go beyond last file" msgstr "E165: Son dosyadan öteye gidilemez" +msgid "E610: No argument to delete" +msgstr "E610: Silinecek bir değişken yok" + msgid "E249: window layout changed unexpectedly" msgstr "E249: Pencere yerleşimi beklenmedik bir biçimde değişti" @@ -173,14 +176,14 @@ msgstr "E88: İlk arabellekten öncesine gidilemez" #, c-format msgid "E89: No write since last change for buffer %d (add ! to override)" msgstr "" -"E89: %d numaralı arabellek son değişiklikten sonra yazılmadı (yok saymak " +"E89: %d numaralı arabellek son değişiklikten sonra yazılmadı (geçersiz kılmak " "için ! ekleyin)" msgid "E948: Job still running (add ! to end the job)" msgstr "E948: İş hâlâ sürüyor (bitirmek için ! ekleyin)" msgid "E37: No write since last change (add ! to override)" -msgstr "E37: Son değişiklikten sonra yazılmadı (yok saymak için ! ekleyin)" +msgstr "E37: Son değişiklikten sonra yazılmadı (geçersiz kılmak için ! ekleyin)" msgid "E948: Job still running" msgstr "E948: İş hâlâ sürüyor" @@ -216,9 +219,6 @@ msgstr " [Değiştirildi]" msgid "[Not edited]" msgstr "[Değiştirilmedi]" -msgid "[New file]" -msgstr "[Yeni dosya]" - msgid "[Read errors]" msgstr "[Okuma hataları]" @@ -277,6 +277,12 @@ msgstr "UYARI: Bu dosya açıldıktan sonra başkası tarafından değiştirilmiş!!!" msgid "Do you really want to write to it" msgstr "Yine de yazmak istiyor musunuz?" +msgid "[New]" +msgstr "[Yeni]" + +msgid "[New File]" +msgstr "[Yeni Dosya]" + msgid "E676: No matching autocommands for acwrite buffer" msgstr "E676: acwrite arabelleği için eşleşen bir otokomut yok" @@ -302,22 +308,22 @@ msgid "writing to device disabled with ' msgstr "aygıta yazma 'opendevice' seçeneği ile kapatılmış" msgid "is read-only (add ! to override)" -msgstr "saltokunur (yok saymak için ! ekleyin)" +msgstr "saltokunur (geçersiz kılmak için ! ekleyin)" msgid "E506: Can't write to backup file (add ! to override)" -msgstr "E506: Yedek dosyasına yazılamıyor (yok saymak için ! ekleyin)" +msgstr "E506: Yedek dosyasına yazılamıyor (geçersiz kılmak için ! ekleyin)" msgid "E507: Close error for backup file (add ! to override)" -msgstr "E507: Yedek dosya için kapatma hatası (yok saymak için ! ekleyin)" +msgstr "E507: Yedek dosya için kapatma hatası (geçersiz kılmak için ! ekleyin)" msgid "E508: Can't read file for backup (add ! to override)" -msgstr "E508: Yedek dosyası okunamıyor (yok saymak için ! ekleyin)" +msgstr "E508: Yedek dosyası okunamıyor (geçersiz kılmak için ! ekleyin)" msgid "E509: Cannot create backup file (add ! to override)" -msgstr "E509: Yedek dosyası oluşturulamıyor (yok saymak için ! ekleyin)" +msgstr "E509: Yedek dosyası oluşturulamıyor (geçersiz kılmak için ! ekleyin)" msgid "E510: Can't make backup file (add ! to override)" -msgstr "E510: Yedek dosyası yapılamıyor (yok saymak için ! ekleyin) " +msgstr "E510: Yedek dosyası yapılamıyor (geçersiz kılmak için ! ekleyin) " msgid "E214: Can't find temp file for writing" msgstr "E214: Yazma için geçici dosya bulunamıyor" @@ -339,7 +345,7 @@ msgstr "E512: Kapatma başarısız oldu" msgid "E513: write error, conversion failed (make 'fenc' empty to override)" msgstr "" -"E513: Yazma hatası, dönüştürme başarısız (yok saymak için 'fenc'i boş " +"E513: Yazma hatası, dönüştürme başarısız (geçersiz kılmak için 'fenc'i boş " "bırakın)" #, c-format @@ -347,7 +353,7 @@ msgid "" "E513: write error, conversion failed in line %ld (make 'fenc' empty to " "override)" msgstr "" -"E513: Yazma hatası, %ld. satırda dönüştürme başarısız (yok saymak için " +"E513: Yazma hatası, %ld. satırda dönüştürme başarısız (geçersiz kılmak için " "'fenc'i boş bırakın)" msgid "E514: write error (file system full?)" @@ -369,12 +375,6 @@ msgstr "[dönüştürüldü]" msgid "[Device]" msgstr "[Aygıt]" -msgid "[New]" -msgstr "[Yeni]" - -msgid "[New File]" -msgstr "[Yeni Dosya]" - msgid " [a]" msgstr " [a]" @@ -412,12 +412,16 @@ msgstr "W10: Uyarı: Saltokunur bir dosya değiştiriliyor" msgid "E902: Cannot connect to port" msgstr "E902: Kapıya bağlanılamıyor" +msgid "E898: socket() in channel_connect()" +msgstr "E898: channel_connect() içinde socket()" + +#, c-format +msgid "E901: getaddrinfo() in channel_open(): %s" +msgstr "E901: channel_open() içinde getaddrinfo(): %s" + msgid "E901: gethostbyname() in channel_open()" msgstr "E901: channel_open() içinde gethostbyname()" -msgid "E898: socket() in channel_open()" -msgstr "E898: channel_open() içinde socket()" - msgid "E903: received command with non-string argument" msgstr "E903: Dizi olmayan değişken içeren komut alındı" @@ -462,6 +466,44 @@ msgstr "E918: Arabellek yüklenmiş olmalıdır: %s" msgid "E916: not a valid job" msgstr "E916: Geçerli bir iş değil" +msgid "No display" +msgstr "Görüntü yok" + +msgid ": Send failed.\n" +msgstr ": Gönderme başarısız oldu.\n" + +msgid ": Send failed. Trying to execute locally\n" +msgstr ": Gönderme başarısız oldu. Yerel ortamda çalıştırma deneniyor\n" + +#, c-format +msgid "%d of %d edited" +msgstr "%d/%d düzenlendi" + +msgid "No display: Send expression failed.\n" +msgstr "Görüntü yok: Gönderme başarısız oldu.\n" + +msgid ": Send expression failed.\n" +msgstr ": Gönderme başarısız oldu.\n" + +msgid "E240: No connection to the X server" +msgstr "E240: X sunucusuna bağlanılamadı" + +#, c-format +msgid "E241: Unable to send to %s" +msgstr "E241: Şuraya gönderilemedi: %s" + +msgid "E277: Unable to read a server reply" +msgstr "E277: Bir sunucu yanıtı okunamadı" + +msgid "E941: already started a server" +msgstr "E941: Sunucu hâlihazırda çalışıyor" + +msgid "E942: +clientserver feature not available" +msgstr "E942: +clientserver özelliği mevcut değil" + +msgid "E258: Unable to send to client" +msgstr "E258: İstemciye gönderilemiyor" + msgid "Used CUT_BUFFER0 instead of empty selection" msgstr "Boş seçim yerine CUT_BUFFER0 kullanıldı" @@ -688,12 +730,6 @@ msgstr "E105: :loadkeymap kaynak alınmayan bir dosyada kullanılıyor" msgid "E791: Empty keymap entry" msgstr "E791: Boş düğme eşlem girdisi" -msgid "E719: Cannot use [:] with a Dictionary" -msgstr "E719: [:] bir sözlük ile kullanılamıyor" - -msgid "E806: using Float as a String" -msgstr "E806: Kayan Noktalı Değer, bir Dizi yerine kullanılıyor" - msgid "E689: Can only index a List, Dictionary or Blob" msgstr "" "E689: Yalnızca bir liste, sözlük, veya ikili geniş nesne dizinlenebilir" @@ -725,91 +761,12 @@ msgstr "E260: -> sonrası ad eksik" msgid "E695: Cannot index a Funcref" msgstr "E695: Bir Funcref dizinlenemez" -msgid "E909: Cannot index a special variable" -msgstr "E909: Özel bir değişken dizinlenemez" - -#, c-format -msgid "E112: Option name missing: %s" -msgstr "E112: Seçenek adı eksik: %s" - -msgid "E973: Blob literal should have an even number of hex characters" -msgstr "" -"E973: İkili geniş nesne hazır bilgisi çift onalt. karakterlere iye olmalıdır" - -#, c-format -msgid "E114: Missing quote: %s" -msgstr "E114: Eksik alıntı: %s" - -#, c-format -msgid "E115: Missing quote: %s" -msgstr "E115: Eksik alıntı: %s" - msgid "Not enough memory to set references, garbage collection aborted!" msgstr "Referansları ayarlamak için yetersiz bellek, atık toplama durduruldu" msgid "E724: variable nested too deep for displaying" msgstr "E724: Değişken çok iç içe geçtiğinden görüntülenemiyor" -msgid "E805: Using a Float as a Number" -msgstr "E805: Bir Kayan Noktalı Değer, Sayı yerine kullanılıyor" - -msgid "E703: Using a Funcref as a Number" -msgstr "E703: Bir Funcref, Sayı yerine kullanılıyor" - -msgid "E745: Using a List as a Number" -msgstr "E745: Bir Liste, Sayı yerine kullanılıyor" - -msgid "E728: Using a Dictionary as a Number" -msgstr "E728: Bir Sözlük, Sayı yerine kullanılıyor" - -msgid "E910: Using a Job as a Number" -msgstr "E910: Bir İş, Sayı yerine kullanılıyor" - -msgid "E913: Using a Channel as a Number" -msgstr "E913: Bir Kanal, Sayı yerine kullanılıyor" - -msgid "E974: Using a Blob as a Number" -msgstr "E974: Bir İkili Geniş Nesne, Sayı yerine kullanılıyor" - -msgid "E891: Using a Funcref as a Float" -msgstr "E891: Bir Funcref, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E892: Using a String as a Float" -msgstr "E892: Bir Dizi, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E893: Using a List as a Float" -msgstr "E893: Bir Liste, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E894: Using a Dictionary as a Float" -msgstr "E894: Bir Sözlük, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E362: Using a boolean value as a Float" -msgstr "E362: Bir Boole Değeri, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E907: Using a special value as a Float" -msgstr "E907: Bir Özel Değer, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E911: Using a Job as a Float" -msgstr "E911: Bir İş, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E914: Using a Channel as a Float" -msgstr "E914: Bir Kanal, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E975: Using a Blob as a Float" -msgstr "E975: Bir İkili Geniş Nesne, Kayan Noktalı Değer yerine kullanılıyor" - -msgid "E729: using Funcref as a String" -msgstr "E729: Funcref bir Dizi yerine kullanılıyor" - -msgid "E730: using List as a String" -msgstr "E730: Liste bir Dizi yerine kullanılıyor" - -msgid "E731: using Dictionary as a String" -msgstr "E731: Sözlük bir Dizi yerine kullanılıyor" - -msgid "E976: using Blob as a String" -msgstr "E976: İkili Geniş Nesne bir Dizi yerine kullanılıyor" - msgid "E698: variable nested too deep for making a copy" msgstr "E698: Değişken kopyalama için çok iç içe geçmiş" @@ -820,26 +777,6 @@ msgstr "" "\n" "\tEn son şuradan ayarlandı: " -msgid "E977: Can only compare Blob with Blob" -msgstr "" -"E977: Bir ikili geniş öğe yalnızca kendinden bir başkası ile " -"karşılaştırılabilir" - -msgid "E691: Can only compare List with List" -msgstr "E691: Bir liste yalnızca başka bir liste ile karşılaştırılabilir" - -msgid "E692: Invalid operation for List" -msgstr "E692: Geçersiz liste işlemi" - -msgid "E735: Can only compare Dictionary with Dictionary" -msgstr "E735: Bir sözlük yalnızca başka bir sözlük ile karşılaştırılabilir" - -msgid "E736: Invalid operation for Dictionary" -msgstr "E736: Geçersiz sözlük işlemi" - -msgid "E694: Invalid operation for Funcrefs" -msgstr "E694: Geçersiz Funcref işlemi" - msgid "E808: Number or Float required" msgstr "E808: Sayı veya kayan noktalı değer gerekiyor" @@ -885,25 +822,6 @@ msgstr "E726: Sıfır adım" msgid "E727: Start past end" msgstr "E727: Başlangıç bitişten sonra" -msgid "E240: No connection to the X server" -msgstr "E240: X sunucusuna bağlanılamadı" - -#, c-format -msgid "E241: Unable to send to %s" -msgstr "E241: Şuraya gönderilemedi: %s" - -msgid "E277: Unable to read a server reply" -msgstr "E277: Bir sunucu yanıtı okunamadı" - -msgid "E941: already started a server" -msgstr "E941: Sunucu hâlihazırda çalışıyor" - -msgid "E942: +clientserver feature not available" -msgstr "E942: +clientserver özelliği mevcut değil" - -msgid "E258: Unable to send to client" -msgstr "E258: İstemciye gönderilemiyor" - #, c-format msgid "E962: Invalid action: '%s'" msgstr "E962: Geçersiz eylem: '%s'" @@ -925,8 +843,8 @@ msgstr "E172: İmleyici eksik" msgid "E990: Missing end marker '%s'" msgstr "E990: Son imleyici '%s' eksik" -msgid "E985: .= is not supported with script version 2" -msgstr "E985: .= betiğin ikinci sürümünde desteklenmiyor" +msgid "E985: .= is not supported with script version >= 2" +msgstr "E985: .= betiğin ikinci sürümünden itibaren desteklenmiyor" msgid "E687: Less targets than List items" msgstr "E687: Liste ögelerinden daha az hedef var" @@ -934,8 +852,8 @@ msgstr "E687: Liste ögelerinden daha az hedef var" msgid "E688: More targets than List items" msgstr "E688: Liste ögelerinden daha fazla hedef var" -msgid "Double ; in list of variables" -msgstr "Değişkenler listesinde çifte ;" +msgid "E452: Double ; in list of variables" +msgstr "E452: Değişkenler listesinde çifte ;" #, c-format msgid "E738: Can't list variables for %s" @@ -951,20 +869,9 @@ msgstr "E996: Yazmaç kilitlenemiyor" msgid "E108: No such variable: \"%s\"" msgstr "E108: Böyle bir değişken yok: \"%s\"" -#, c-format -msgid "E940: Cannot lock or unlock variable %s" -msgstr "E940: Değişken %s kilitlenemiyor veya açılamıyor" - msgid "E743: variable nested too deep for (un)lock" msgstr "E743: Değişken kilitlenemez/kilidi açılamaz, çok iç içe geçmiş" -msgid "E1063: type mismatch for v: variable" -msgstr "E1063: v: değişkeni için tür uyuşmazlığı" - -#, c-format -msgid "E1041: Redefining script item %s" -msgstr "E1041: Betik ögesi %s yeniden tanımlanıyor" - #, c-format msgid "E963: setting %s to value with wrong type" msgstr "E963: %s yanlış türe sahip değere ayarlanıyor" @@ -1057,7 +964,7 @@ msgstr "Takas dosyası \"%s\" mevcut, yine de üzerine yazılsın mı?" #, c-format msgid "E768: Swap file exists: %s (:silent! overrides)" -msgstr "E768: Takas dosyası mevcut: %s (:silent! yok sayar)" +msgstr "E768: Takas dosyası mevcut: %s (:silent! geçersiz kılar)" #, c-format msgid "E141: No file name for buffer %ld" @@ -1086,7 +993,7 @@ msgstr "" #, c-format msgid "E505: \"%s\" is read-only (add ! to override)" -msgstr "E505: \"%s\" saltokunur (yok saymak için ! ekleyin)" +msgstr "E505: \"%s\" saltokunur (geçersiz kılmak için ! ekleyin)" msgid "Edit File" msgstr "Dosya Düzenle" @@ -1136,7 +1043,7 @@ msgstr[0] "%ld değiştirme, %ld satırda" msgstr[1] "%ld değiştirme, %ld satırda" msgid "E147: Cannot do :global recursive with a range" -msgstr "E147: :global bir erim ile özyineli yapılamaz" +msgstr "E147: :global özyineli olarak bir erim ile yapılamaz" msgid "E148: Regular expression missing from global" msgstr "E148: Düzenli ifade eksik" @@ -1149,45 +1056,6 @@ msgstr "Dizginin bulunduğu her satır: %s" msgid "Pattern not found: %s" msgstr "Dizgi bulunamadı: %s" -msgid "E478: Don't panic!" -msgstr "E478: Panik yok!" - -#, c-format -msgid "E661: Sorry, no '%s' help for %s" -msgstr "E661: Üzgünüm, '%s' yardımı %s için mevcut değil" - -#, c-format -msgid "E149: Sorry, no help for %s" -msgstr "E149: Üzgünüm, %s için yardım mevcut değil" - -#, c-format -msgid "Sorry, help file \"%s\" not found" -msgstr "Üzgünüm, \"%s\" yardım dosyası bulunamadı" - -#, c-format -msgid "E151: No match: %s" -msgstr "E151: Eşleşme bulunamadı: %s" - -#, c-format -msgid "E152: Cannot open %s for writing" -msgstr "E152: %s yazma için açılamıyor" - -#, c-format -msgid "E153: Unable to open %s for reading" -msgstr "E153: %s okuma için açılamıyor" - -#, c-format -msgid "E670: Mix of help file encodings within a language: %s" -msgstr "E670: Bir dilde yardım dosyası kodlamaları karıştı: %s" - -#, c-format -msgid "E154: Duplicate tag \"%s\" in file %s/%s" -msgstr "E154: Şu dosyada yinelenen \"%s\" etiketi: %s/%s" - -#, c-format -msgid "E150: Not a directory: %s" -msgstr "E150: %s bir dizin değil" - msgid "No old files" msgstr "Eski dosya yok" @@ -1218,14 +1086,6 @@ msgstr "W20: Gerekli 2.x Python sürümü desteklenmiyor, dosya yok sayılıyor: %s" msgid "W21: Required python version 3.x not supported, ignoring file: %s" msgstr "W21: Gerekli Python sürümü 3.x desteklenmiyor, dosya yok sayılıyor: %s" -#, c-format -msgid "Current %slanguage: \"%s\"" -msgstr "Şu anki %sdil: \"%s\"" - -#, c-format -msgid "E197: Cannot set language to \"%s\"" -msgstr "E197: \"%s\" diline ayarlanamıyor" - msgid "Entering Ex mode. Type \"visual\" to go to Normal mode." msgstr "Ex kipine giriliyor. Normal kipe geri dönmek için \"visual\" yazın." @@ -1326,7 +1186,7 @@ msgstr "Dosya iliştir" msgid "E747: Cannot change directory, buffer is modified (add ! to override)" msgstr "" -"E747: Dizin değiştirilemiyor, arabellekte değiştirilmiş (yok saymak için ! " +"E747: Dizin değiştirilemiyor, arabellek değiştirilmiş (geçersiz kılmak için ! " "ekleyin)" msgid "E186: No previous directory" @@ -1360,7 +1220,7 @@ msgstr "E739: Dizin oluşturulamıyor: %s" #, c-format msgid "E189: \"%s\" exists (add ! to override)" -msgstr "E189: \"%s\" zaten var (yok saymak için ! ekleyin)" +msgstr "E189: \"%s\" zaten var (geçersiz kılmak için ! ekleyin)" #, c-format msgid "E190: Cannot open \"%s\" for writing" @@ -1390,6 +1250,9 @@ msgstr "E497: \"\" yerine koymak için otokomut eşleşme adı yok" msgid "E498: no :source file name to substitute for \"\"" msgstr "E498: \"\" yerine koymak için :source dosya adı yok" +msgid "E489: no call stack to substitute for \"\"" +msgstr "E489: \"\" yerine koymak için bir çağrı yığını yok" + msgid "E842: no line number to use for \"\"" msgstr "E842: \"\" kullanımı için satır numarası yok" @@ -1480,6 +1343,9 @@ msgstr "E601: :try çok iç içe geçmiş" msgid "E604: :catch after :finally" msgstr "E604: :finally sonrası :catch" +msgid "E193: :enddef not inside a function" +msgstr "E193: :enddef bir işlev içinde değil" + msgid "E193: :endfunction not inside a function" msgstr "E193: :endfunction bir işlev içinde değil" @@ -1526,7 +1392,7 @@ msgid "Reading from stdin..." msgstr "stdin'den okunuyor..." msgid "E202: Conversion made file unreadable!" -msgstr "E202: Dönüştürme dosyayı okunamaz hale getirdi" +msgstr "E202: Dönüştürme dosyayı okunamaz hale getirdi!" msgid "[fifo]" msgstr "[fifo]" @@ -1588,10 +1454,10 @@ msgstr[0] "%ld satır, " msgstr[1] "%ld satır, " #, c-format -msgid "%lld character" -msgid_plural "%lld characters" -msgstr[0] "%lld karakter" -msgstr[1] "%lld karakter" +msgid "%lld byte" +msgid_plural "%lld bytes" +msgstr[0] "%lld bayt" +msgstr[1] "%lld bayt" msgid "[noeol]" msgstr "[noeol]" @@ -1693,6 +1559,9 @@ msgstr "Dosya Aç iletişim kutusu" msgid "E338: Sorry, no file browser in console mode" msgstr "E338: Üzgünüm, konsol kipinde dosya tarayıcı yoktur" +msgid "no matches" +msgstr "eşleşme yok" + msgid "E854: path too long for completion" msgstr "E854: Yol tamamlama için çok uzun" @@ -1776,10 +1645,6 @@ msgstr "E231: 'guifontwide' geçersiz" msgid "E599: Value of 'imactivatekey' is invalid" msgstr "E599: 'imactivatekey' değeri geçersiz" -#, c-format -msgid "E254: Cannot allocate color %s" -msgstr "E254: %s rengi ayrılamıyor" - msgid "No match at cursor, finding next" msgstr "İmleç konumunda eşleşme bulunamadı, sonraki bulunuyor" @@ -1809,7 +1674,7 @@ msgid "Scrollbar Widget: Could not get g msgstr "Kaydırma Parçacığı: Kenar piksel haritası geometrisi bulunamadı" msgid "Vim dialog" -msgstr "Vim iletişim kutusu" +msgstr "Vim" msgid "E232: Cannot create BalloonEval with both message and callback" msgstr "E232: Hem ileti hem de geri çağırma ile BallonEval oluşturulamıyor" @@ -2003,6 +1868,24 @@ msgstr "Yazıtipi0 genişliği: %d" msgid "Font%d width: %d" msgstr "Yazıtipi%d genişliği: %d" +msgid "E284: Cannot set IC values" +msgstr "E284: Girdi bağlamı değerleri ayarlanamıyor" + +msgid "E285: Failed to create input context" +msgstr "E285: Girdi bağlamı oluşturulamadı" + +msgid "E286: Failed to open input method" +msgstr "E286: Giriş yöntemi açılamadı" + +msgid "E287: Warning: Could not set destroy callback to IM" +msgstr "E287: Uyarı: Giriş yöntemine yok etme geri çağırması ayarlanamadı" + +msgid "E288: input method doesn't support any style" +msgstr "E288: Giriş yöntemi herhangi bir biçemi desteklemiyor" + +msgid "E289: input method doesn't support my preedit type" +msgstr "E289: Giriş yöntemi benim ön düzenleme türümü desteklemiyor" + msgid "Invalid font specification" msgstr "Geçersiz yazıtipi belirtimi" @@ -2126,6 +2009,45 @@ msgstr "E365: PostScript dosyası yazdırılamadı" msgid "Print job sent." msgstr "Yazdırma işi gönderildi" +msgid "E478: Don't panic!" +msgstr "E478: Panik yok!" + +#, c-format +msgid "E661: Sorry, no '%s' help for %s" +msgstr "E661: Üzgünüm, '%s' yardımı %s için mevcut değil" + +#, c-format +msgid "E149: Sorry, no help for %s" +msgstr "E149: Üzgünüm, %s için yardım mevcut değil" + +#, c-format +msgid "Sorry, help file \"%s\" not found" +msgstr "Üzgünüm, \"%s\" yardım dosyası bulunamadı" + +#, c-format +msgid "E151: No match: %s" +msgstr "E151: Eşleşme bulunamadı: %s" + +#, c-format +msgid "E152: Cannot open %s for writing" +msgstr "E152: %s yazma için açılamıyor" + +#, c-format +msgid "E153: Unable to open %s for reading" +msgstr "E153: %s okuma için açılamıyor" + +#, c-format +msgid "E670: Mix of help file encodings within a language: %s" +msgstr "E670: Bir dilde yardım dosyası kodlamaları karıştı: %s" + +#, c-format +msgid "E154: Duplicate tag \"%s\" in file %s/%s" +msgstr "E154: Şu dosyada yinelenen \"%s\" etiketi: %s/%s" + +#, c-format +msgid "E150: Not a directory: %s" +msgstr "E150: %s bir dizin değil" + msgid "E679: recursive loop loading syncolor.vim" msgstr "E679: syncolor.vim yüklenirken özyineli döngü" @@ -2166,6 +2088,9 @@ msgstr "E419: Bilinmeyen metin rengi" msgid "E420: BG color unknown" msgstr "E420: Bilinmeyen ardalan rengi" +msgid "E453: UL color unknown" +msgstr "E453: Bilinmeyen alt çizme rengi" + #, c-format msgid "E421: Color name or number not recognized: %s" msgstr "E421: Renk adı veya numarası tanımlanamadı: %s" @@ -2190,29 +2115,6 @@ msgstr "W18: Grup adında geçersiz karakter" msgid "E849: Too many highlight and syntax groups" msgstr "E849: Çok fazla vurgulama ve sözdizim grupları" -#, c-format -msgid "E799: Invalid ID: %d (must be greater than or equal to 1)" -msgstr "E799: Geçersiz ID: %d (1'e eşit veya 1'den büyük olmalıdır)" - -#, c-format -msgid "E801: ID already taken: %d" -msgstr "E801: Kullanımda olan ID: %d" - -msgid "E290: List or number required" -msgstr "E290: Liste veya numara gerekiyor" - -#, c-format -msgid "E802: Invalid ID: %d (must be greater than or equal to 1)" -msgstr "E802: Geçersiz ID: %d (1'e eşit veya 1'den büyük olmalıdır)" - -#, c-format -msgid "E803: ID not found: %d" -msgstr "E803: ID bulunamadı: %d" - -#, c-format -msgid "E798: ID is reserved for \":match\": %d" -msgstr "E798: ID, \":match\" için ayrılmış: %d" - msgid "Add a new database" msgstr "Yeni bir veritabanı ekle" @@ -2573,7 +2475,7 @@ msgstr "E251: VİM oturumu kayıt değeri düzgün oluşturulmamış. Silindi!" #, c-format msgid "%ld lines to indent... " -msgstr "girintilenecek %ld satır... " +msgstr "girintilenecek %ld satır kaldı... " #, c-format msgid "%ld line indented " @@ -2674,7 +2576,7 @@ msgid "Word from other line" msgstr "Sözcük diğer satırdan" msgid "The only match" -msgstr "Naçizane eşleşme" +msgstr "Tek eşleşen" #, c-format msgid "match %d of %d" @@ -2685,6 +2587,10 @@ msgid "match %d" msgstr "eşleşme %d" #, c-format +msgid "E491: json decode error at '%s'" +msgstr "E491: '%s' konumunda json çözümü hatası" + +#, c-format msgid "E938: Duplicate key in JSON: \"%s\"" msgstr "E938: JSON'da yinelenmiş anahtar: \"%s\"" @@ -2692,14 +2598,16 @@ msgstr "E938: JSON'da yinelenmiş anahtar: \"%s\"" msgid "E899: Argument of %s must be a List or Blob" msgstr "E899: %s değişkeni bir liste veya ikili geniş nesne olmalıdır" +msgid "E900: maxdepth must be non-negative number" +msgstr "E900: maxdepth negatif olmayan bir sayı olmalı" + +msgid "flatten() argument" +msgstr "flatten() değişkeni" + #, c-format msgid "E696: Missing comma in List: %s" msgstr "E696: Listede eksik virgül: %s" -#, c-format -msgid "E697: Missing end of List ']': %s" -msgstr "E697: Liste sonunda ']' eksik: %s" - msgid "sort() argument" msgstr "sort() değişkeni" @@ -2730,6 +2638,14 @@ msgstr "remove() değişkeni" msgid "reverse() argument" msgstr "reverse() değişkeni" +#, c-format +msgid "Current %slanguage: \"%s\"" +msgstr "Şu anki %sdil: \"%s\"" + +#, c-format +msgid "E197: Cannot set language to \"%s\"" +msgstr "E197: \"%s\" diline ayarlanamıyor" + msgid "Unknown option argument" msgstr "Bilinmeyen seçenek değişkeni" @@ -3135,25 +3051,6 @@ msgstr "-P <üst başlık>\tVim'i üst uygulama içinde aç" msgid "--windowid \tOpen Vim inside another win32 widget" msgstr "--windowid \tVim'i başka bir win32 parçacığı içinde aç" -msgid "No display" -msgstr "Görüntü yok" - -msgid ": Send failed.\n" -msgstr ": Gönderme başarısız oldu.\n" - -msgid ": Send failed. Trying to execute locally\n" -msgstr ": Gönderme başarısız oldu. Yerel ortamda çalıştırma deneniyor\n" - -#, c-format -msgid "%d of %d edited" -msgstr "%d/%d düzenlendi" - -msgid "No display: Send expression failed.\n" -msgstr "Görüntü yok: Gönderme başarısız oldu.\n" - -msgid ": Send expression failed.\n" -msgstr ": Gönderme başarısız oldu.\n" - #, c-format msgid "E224: global abbreviation already exists for %s" msgstr "E224: %s için global kısaltma hâlihazırda var" @@ -3179,6 +3076,9 @@ msgstr "Eşlemleme bulunamadı" msgid "E228: makemap: Illegal mode" msgstr "E228: makemap: İzin verilmeyen kip" +msgid "E460: entries missing in mapset() dict argument" +msgstr "E460: mapset() sözlük değişkeninde eksik girdiler" + #, c-format msgid "E357: 'langmap': Matching character missing for %s" msgstr "E357: 'langmap': %s için eşleşen karakter eksik" @@ -3215,27 +3115,32 @@ msgstr "" "\n" "dğşklk satr stn metin" +#, c-format +msgid "E799: Invalid ID: %d (must be greater than or equal to 1)" +msgstr "E799: Geçersiz ID: %d (1'e eşit veya 1'den büyük olmalıdır)" + +#, c-format +msgid "E801: ID already taken: %d" +msgstr "E801: Kullanımda olan ID: %d" + +msgid "E290: List or number required" +msgstr "E290: Liste veya numara gerekiyor" + +#, c-format +msgid "E802: Invalid ID: %d (must be greater than or equal to 1)" +msgstr "E802: Geçersiz ID: %d (1'e eşit veya 1'den büyük olmalıdır)" + +#, c-format +msgid "E803: ID not found: %d" +msgstr "E803: ID bulunamadı: %d" + +#, c-format +msgid "E798: ID is reserved for \":match\": %d" +msgstr "E798: ID, \":match\" için ayrılmış: %d" + msgid "E543: Not a valid codepage" msgstr "E543: Geçerli bir kod sayfası değil" -msgid "E284: Cannot set IC values" -msgstr "E284: Girdi bağlamı değerleri ayarlanamıyor" - -msgid "E285: Failed to create input context" -msgstr "E285: Girdi bağlamı oluşturulamadı" - -msgid "E286: Failed to open input method" -msgstr "E286: Giriş yöntemi açılamadı" - -msgid "E287: Warning: Could not set destroy callback to IM" -msgstr "E287: Uyarı: Giriş yöntemine yok etme geri çağırması ayarlanamadı" - -msgid "E288: input method doesn't support any style" -msgstr "E288: Giriş yöntemi herhangi bir biçemi desteklemiyor" - -msgid "E289: input method doesn't support my preedit type" -msgstr "E289: Giriş yöntemi benim ön düzenleme türümü desteklemiyor" - msgid "E293: block was not locked" msgstr "E293: Blok kilitlenmemişti" @@ -3809,11 +3714,12 @@ msgstr "E807: printf() için kayan noktalı değer türünde değişken bekleniyordu" msgid "E767: Too many arguments to printf()" msgstr "E767: printf() için çok fazla değişken" -msgid "Type number and or click with mouse (empty cancels): " -msgstr "Sayı girin ve 'a veya fare düğmesine basın (boş iptal eder): " - -msgid "Type number and (empty cancels): " -msgstr "Sayı girin ve 'a basın (boş iptal eder): " +msgid "Type number and or click with the mouse (q or empty cancels): " +msgstr "" +"Sayı girip 'a veya fare düğmesine basın (q veya boş iptal eder): " + +msgid "Type number and (q or empty cancels): " +msgstr "Sayı girip 'a basın (q veya boş iptal eder): " #, c-format msgid "%ld more line" @@ -3898,7 +3804,7 @@ msgstr "E511: NetBeans hâlihazırda bağlı" #, c-format msgid "E505: %s is read-only (add ! to override)" -msgstr "E505: %s saltokunur (yok saymak için ! ekleyin)" +msgstr "E505: %s saltokunur (geçersiz kılmak için ! ekleyin)" msgid "E349: No identifier under cursor" msgstr "E349: İmleç altında bir tanımlayıcı yok" @@ -4384,6 +4290,9 @@ msgstr "Vim - Uyarı" msgid "shell returned %d" msgstr "Program %d numaralı kod ile çıktı" +msgid "E861: Cannot open a second popup with a terminal" +msgstr "E861: Bir uçbirimle ikinci bir açılır pencere açılamıyor" + msgid "E450: buffer number, text or a list required" msgstr "E450: Arabellek numarası, metin veya liste gerekiyor" @@ -4475,6 +4384,9 @@ msgstr "E683: Dosya adı eksik veya geçersiz dizgi" msgid "Cannot open file \"%s\"" msgstr "\"%s\" dosyası açılamıyor" +msgid "cannot have both a list and a \"what\" argument" +msgstr "ya birinci ya da son değişken belirtilmelidir" + msgid "E681: Buffer is not loaded" msgstr "E681: Arabellek yüklenemedi" @@ -4529,6 +4441,10 @@ msgid "E956: Cannot use pattern recursiv msgstr "E956: Dizgi özyineli olarak kullanılamıyor" #, c-format +msgid "E654: missing delimiter after search pattern: %s" +msgstr "E654: Arama dizgisi sonrasında eksik sınırlandırıcı: %s" + +#, c-format msgid "E554: Syntax error in %s{...}" msgstr "E554: %s{...} içinde sözdizimi hatası" @@ -4610,13 +4526,13 @@ msgstr "E866: (BSO düzenli ifadesi) Yanlış yere koyulmuş %c" msgid "E877: (NFA regexp) Invalid character class: %d" msgstr "E877: (BSO düzenli ifadesi) Geçersiz karakter sınıfı: %d" +msgid "E951: \\% value too large" +msgstr "E951: \\% çok büyük bir değer" + #, c-format msgid "E867: (NFA) Unknown operator '\\z%c'" msgstr "E867: (BSO) Bilinmeyen işleç '\\z%c'" -msgid "E951: \\% value too large" -msgstr "E951: \\% çok büyük bir değer" - #, c-format msgid "E867: (NFA) Unknown operator '\\%%%c'" msgstr "E867: (BSO) Bilinmeyen işleç '\\%%%c'" @@ -4822,9 +4738,6 @@ msgstr "E167: :scriptencoding kaynak alınmış bir dosyanın dışında kullanıldı" msgid "E984: :scriptversion used outside of a sourced file" msgstr "E984: :scriptversion kaynak alınmış bir dosyanın dışında kullanıldı" -msgid "E1040: Cannot use :scriptversion after :vim9script" -msgstr "E1040: :vim9script ardından :scriptversion kullanılamaz" - #, c-format msgid "E999: scriptversion not supported: %d" msgstr "E999: desteklenmeyen scriptversion: %d" @@ -4957,9 +4870,6 @@ msgstr " (BULUNAMADI)" msgid " (not supported)" msgstr " (desteklenmiyor)" -msgid "E756: Spell checking is not enabled" -msgstr "E756: Yazım denetimi kapalı" - #, c-format msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\"" msgstr "Uyarı: Sözcük listesi \"%s_%s.spl\" veya \"%s_ascii.spl\" bulunamıyor" @@ -5244,8 +5154,8 @@ msgid "E845: Insufficient memory, word l msgstr "E845: Yetersiz bellek, sözcük listesi tam olmayacak" #, c-format -msgid "Compressed %d of %d nodes; %d (%d%%) remaining" -msgstr "%d/%d uç sıkıştırıldı; %d (%d%%) kalan" +msgid "Compressed %s: %ld of %ld nodes; %ld (%ld%%) remaining" +msgstr "%s sıkıştırılıyor: %ld/%ld uç sıkıştırıldı; %ld (%ld%%) kalan" msgid "Reading back spell file..." msgstr "Yazım dosyası yeniden okunuyor..." @@ -5323,6 +5233,10 @@ msgstr "\"%.*s\" şuna değiştirilecek:" msgid " < \"%.*s\"" msgstr " < \"%.*s\"" +#, c-format +msgid "E390: Illegal argument: %s" +msgstr "E390: İzin verilmeyen değişken: %s" + msgid "No Syntax items defined for this buffer" msgstr "Bu arabellek için sözdizim ögeleri tanımlanmamış" @@ -5335,16 +5249,18 @@ msgstr "sözdizim gizlemesi açık" msgid "syntax conceal off" msgstr "sözdizim gizlemesi kapalı" -#, c-format -msgid "E390: Illegal argument: %s" -msgstr "E390: İzin verilmeyen değişken: %s" - msgid "syntax case ignore" msgstr "sözdizim BÜYÜK/küçük harf yok say" msgid "syntax case match" msgstr "sözdizim BÜYÜK/küçük harfe duyarlı" +msgid "syntax foldlevel start" +msgstr "sözdizim kıvırma düzeyi başlangıcı" + +msgid "syntax foldlevel minimum" +msgstr "sözdizim kıvırma düzeyi an az" + msgid "syntax spell toplevel" msgstr "sözdizim yazım denetimi üst düzeyde" @@ -5661,6 +5577,13 @@ msgstr "E955: Bir uçbirim arabelleği değil" msgid "E982: ConPTY is not available" msgstr "E982: ConPTY mevcut değil" +msgid "" +"E856: assert_fails() second argument must be a string or a list with one or " +"two strings" +msgstr "" +"E856: assert_fails() ikinci değişkeni bir dizi veya bir veya iki dizili bir " +"liste olmalıdır" + #, c-format msgid "E971: Property type %s does not exist" msgstr "E971: Özellik türü %s mevcut değil" @@ -5685,8 +5608,8 @@ msgstr "E967: Metin özellik bilgisi hasarlı" msgid "E968: Need at least one of 'id' or 'type'" msgstr "E968: En azından bir 'id' veya 'type' gerekli" -#~ msgid "E860: Need 'id' and 'type' with 'both'" -#~ msgstr "" +msgid "E860: Need 'id' and 'type' with 'both'" +msgstr "E860: 'both' ile 'id' ve 'type' gerekli" #, c-format msgid "E969: Property type %s already defined" @@ -5708,6 +5631,105 @@ msgid_plural "%ld seconds ago" msgstr[0] "%ld saniye önce" msgstr[1] "%ld saniye önce" +msgid "E805: Using a Float as a Number" +msgstr "E805: Bir Kayan Noktalı Değer, Sayı yerine kullanılıyor" + +msgid "E703: Using a Funcref as a Number" +msgstr "E703: Bir Funcref, Sayı yerine kullanılıyor" + +msgid "E745: Using a List as a Number" +msgstr "E745: Bir Liste, Sayı yerine kullanılıyor" + +msgid "E728: Using a Dictionary as a Number" +msgstr "E728: Bir Sözlük, Sayı yerine kullanılıyor" + +msgid "E611: Using a Special as a Number" +msgstr "E611: Bir Özel, Sayı yerine kullanılıyor" + +msgid "E910: Using a Job as a Number" +msgstr "E910: Bir İş, Sayı yerine kullanılıyor" + +msgid "E913: Using a Channel as a Number" +msgstr "E913: Bir Kanal, Sayı yerine kullanılıyor" + +msgid "E974: Using a Blob as a Number" +msgstr "E974: Bir İkili Geniş Nesne, Sayı yerine kullanılıyor" + +msgid "E891: Using a Funcref as a Float" +msgstr "E891: Bir Funcref, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E892: Using a String as a Float" +msgstr "E892: Bir Dizi, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E893: Using a List as a Float" +msgstr "E893: Bir Liste, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E894: Using a Dictionary as a Float" +msgstr "E894: Bir Sözlük, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E362: Using a boolean value as a Float" +msgstr "E362: Bir Boole Değeri, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E907: Using a special value as a Float" +msgstr "E907: Bir Özel Değer, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E911: Using a Job as a Float" +msgstr "E911: Bir İş, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E914: Using a Channel as a Float" +msgstr "E914: Bir Kanal, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E975: Using a Blob as a Float" +msgstr "E975: Bir İkili Geniş Nesne, Kayan Noktalı Değer yerine kullanılıyor" + +msgid "E729: using Funcref as a String" +msgstr "E729: Funcref bir Dizi yerine kullanılıyor" + +msgid "E730: using List as a String" +msgstr "E730: Liste bir Dizi yerine kullanılıyor" + +msgid "E731: using Dictionary as a String" +msgstr "E731: Sözlük bir Dizi yerine kullanılıyor" + +msgid "E976: using Blob as a String" +msgstr "E976: İkili Geniş Nesne bir Dizi yerine kullanılıyor" + +msgid "E977: Can only compare Blob with Blob" +msgstr "" +"E977: Bir ikili geniş öğe yalnızca kendinden bir başkası ile " +"karşılaştırılabilir" + +msgid "E691: Can only compare List with List" +msgstr "E691: Bir liste yalnızca başka bir liste ile karşılaştırılabilir" + +msgid "E692: Invalid operation for List" +msgstr "E692: Geçersiz liste işlemi" + +msgid "E735: Can only compare Dictionary with Dictionary" +msgstr "E735: Bir sözlük yalnızca başka bir sözlük ile karşılaştırılabilir" + +msgid "E736: Invalid operation for Dictionary" +msgstr "E736: Geçersiz sözlük işlemi" + +msgid "E694: Invalid operation for Funcrefs" +msgstr "E694: Geçersiz Funcref işlemi" + +#, c-format +msgid "E112: Option name missing: %s" +msgstr "E112: Seçenek adı eksik: %s" + +msgid "E973: Blob literal should have an even number of hex characters" +msgstr "" +"E973: İkili geniş nesne hazır bilgisi çift onalt. karakterlere iye olmalıdır" + +#, c-format +msgid "E114: Missing quote: %s" +msgstr "E114: Eksik alıntı: %s" + +#, c-format +msgid "E115: Missing quote: %s" +msgstr "E115: Eksik alıntı: %s" + msgid "new shell started\n" msgstr "yeni kabuk başlatıldı\n" @@ -5926,16 +5948,14 @@ msgstr "E125: İzin verilmeyen değişken: %s" msgid "E853: Duplicate argument name: %s" msgstr "E853: Yinelenen değişken adı: %s" -msgid "E1059: No white space allowed before :" -msgstr "E1059: : öncesinde boşluğa izin verilmiyor" - -msgid "E1055: Missing name after ..." -msgstr "E1055: ... sonrası ad eksik" - msgid "E989: Non-default argument follows default argument" msgstr "E989: Öntanımlı olmayan değişken öntanımlı değişkenden sonra" #, c-format +msgid "E451: Expected }: %s" +msgstr "E451: } bekleniyordu: %s" + +#, c-format msgid "E740: Too many arguments for function %s" msgstr "E740: %s işlevi için çok fazla değişken" @@ -5988,6 +6008,9 @@ msgstr "E128: İşlev adı bir BÜYÜK harfle veya \"s:\" ile başlamalı: %s" msgid "E884: Function name cannot contain a colon: %s" msgstr "E884: İşlev adı iki nokta içeremez: %s" +msgid "E454: function list was modified" +msgstr "E454: İşlev listesi değiştirilmiş" + #, c-format msgid "E123: Undefined function: %s" msgstr "E123: Tanımlanmamış işlev: %s" @@ -6000,16 +6023,9 @@ msgid "E862: Cannot use g: here" msgstr "E862: g: burada kullanılamaz" #, c-format -msgid "E1056: expected a type: %s" -msgstr "E1056: Şu türden bekleniyordu: %s" - -#, c-format msgid "E932: Closure function should not be at top level: %s" msgstr "E932: Kapatma işlevi en üst düzeyde olmamalıdır: %s" -msgid "E1057: Missing :enddef" -msgstr "E1057: Eksik :enddef" - msgid "E126: Missing :endfunction" msgstr "E126: :endfunction eksik" @@ -6021,9 +6037,6 @@ msgstr "W1001: :enddef sonrası metin bulundu: %s" msgid "W22: Text found after :endfunction: %s" msgstr "W22: :endfunction sonrası metin bulundu: %s" -msgid "E1058: function nesting too deep" -msgstr "E1058: Çok fazla iç içe geçmiş işlev" - #, c-format msgid "E707: Function name conflicts with variable: %s" msgstr "E707: İşlev adı şu değişken ile çakışıyor: %s" @@ -6076,7 +6089,7 @@ msgstr "" "MS-Windows 32-bit grafik arabirim sürümü" msgid " with OLE support" -msgstr " OLE desteği ile" +msgstr ", OLE desteği ile" msgid "" "\n" @@ -6104,7 +6117,7 @@ msgid "" "macOS version w/o darwin feat." msgstr "" "\n" -"macOS sürümü (darwin özellikleri olmadan)" +"Darwin özellikleri olmayan macOS sürümü" msgid "" "\n" @@ -6118,7 +6131,7 @@ msgid "" "Included patches: " msgstr "" "\n" -"Dahil edilen yamalar: " +"İçerilen yamalar: " msgid "" "\n" @@ -6145,21 +6158,21 @@ msgid "" "Huge version " msgstr "" "\n" -"Battal sürüm " +"Dev sürüm " msgid "" "\n" "Big version " msgstr "" "\n" -"Geniş sürüm " +"Büyük sürüm " msgid "" "\n" "Normal version " msgstr "" "\n" -"Normal sürüm " +"Orta boy sürüm " msgid "" "\n" @@ -6173,13 +6186,13 @@ msgid "" "Tiny version " msgstr "" "\n" -"Minik sürüm " +"Ufak sürüm " msgid "without GUI." msgstr "(grafik arabirim içermez)." msgid "with GTK3 GUI." -msgstr "(GTK3 grafik arabirim ile)" +msgstr "(GTK3 grafik arabirim ile)." msgid "with GTK2-GNOME GUI." msgstr "(GTK2-GNOME grafik arabirim ile)." @@ -6205,12 +6218,6 @@ msgstr "(Photon grafik arabirim ile)." msgid "with GUI." msgstr "(grafik arabirim ile)." -msgid "with Carbon GUI." -msgstr "(Carbon grafik arabirim ile)." - -msgid "with Cocoa GUI." -msgstr "(Cocoa grafik arabirim ile)." - msgid " Features included (+) or not (-):\n" msgstr " İçerilen özellikler (+), içerilmeyenler (-) ile gösterilir:\n" @@ -6290,7 +6297,7 @@ msgid "type :q to msgstr "çıkmak için :q " msgid "type :help or for on-line help" -msgstr "çevrimiçi yardım için :help veya " +msgstr "yardım belgeleri için :help veya " msgid "type :help version8 for version info" msgstr "sürüm bilgisi için :help version8 " @@ -6305,7 +6312,7 @@ msgid "type :help cp-default for msgstr "ek bilgi için :help cp-default" msgid "menu Help->Orphans for information " -msgstr "bilgi için: menü -> Yardım -> Yetimler " +msgstr "bilgi için menü -> Yardım -> Yetimler" msgid "Running modeless, typed text is inserted" msgstr "Kipsiz çalışıyor, girilen metin doğrudan eklenir" @@ -6335,239 +6342,22 @@ msgid "type :help register for msgstr "bilgi için :help register " msgid "menu Help->Sponsor/Register for information " -msgstr "bilgi için: menü -> Yardım -> Sponsorluk/Kayıt " - -#, c-format -msgid "E1001: variable not found: %s" -msgstr "E1001: Değişken bulunamadı: %s" - -#, c-format -msgid "E1002: Syntax error at %s" -msgstr "E1002: %s konumunda sözdizimi hatası" - -msgid "E1035: wrong argument type for +" -msgstr "E1035: + için yanlış değişken türü" - -#, c-format -msgid "E1036: %c requires number or float arguments" -msgstr "E1036: %c sayı veya kayan noktalı değer değişken gerektirir" - -msgid "E1035: % requires number arguments" -msgstr "E1035: Şunun için sayı değişken gerekiyor: %" - -#, c-format -msgid "E1037: Cannot use \"%s\" with %s" -msgstr "E1037: \"%s\", %s ile kullanılamaz" - -#, c-format -msgid "E1072: Cannot compare %s with %s" -msgstr "E1072: %s, %s ile karşılaştırılamıyor" - -#, c-format -msgid "E1004: white space required before and after '%s'" -msgstr "E1004: '%s' öncesi ve sonrası boşluk gerekiyor" - -#, c-format -msgid "E1006: %s is used as an argument" -msgstr "E1006: %s bir değişken olarak kullanılıyor" - -msgid "E1007: No white space allowed before <" -msgstr "E1007: < öncesi boşluğa izin verilmiyor" - -msgid "E1008: Missing " -msgstr "E1008: Eksik " - -msgid "E1009: Missing > after type" -msgstr "E1009: Tür sonrası eksik >" - -msgid "E1055: This Vim is not compiled with float support" -msgstr "E1055: Bu Vim kayan noktalı değer desteği ile derlenmemiş" - -#, c-format -msgid "E1010: Type not recognized: %s" -msgstr "E1010: Tür tanımlanamadı: %s" - -#, c-format -msgid "E1060: expected dot after name: %s" -msgstr "E1060: Addan sonra nokta bekleniyordu: %s" - -#, c-format -msgid "E1050: Item not found: %s" -msgstr "E1050: Öge bulunamadı: %s" - -msgid "E1068: No white space allowed before ," -msgstr "E1068: , öncesi boşluğa izin verilmiyor" - -msgid "E1069: white space required after ," -msgstr "E1069: , sonrası boşluk gerekiyor" - -#, c-format -msgid "E1011: name too long: %s" -msgstr "E1011: Ad çok uzun: %s" - -#, c-format -msgid "E1013: type mismatch, expected %s but got %s" -msgstr "E1013: Tür uyuşmazlığı, %s bekleniyordu ancak %s alındı" - -#, c-format -msgid "E1014: Invalid key: %s" -msgstr "E1014: Geçersiz anahtar: %s" - -#, c-format -msgid "E1015: Name expected: %s" -msgstr "E1015: Ad bekleniyordu: %s" - -msgid "E1003: Missing return value" -msgstr "E1003: Eksik dönüş değeri" - -#, c-format -msgid "E1052: Cannot declare an option: %s" -msgstr "E1052: Seçenek tanımlanamıyor: %s" - -#, c-format -msgid "E1065: Cannot declare an environment variable: %s" -msgstr "E1065: Ortam değişkeni tanımlanamıyor: %s" - -#, c-format -msgid "E1066: Cannot declare a register: %s" -msgstr "E1066: Yazmaç tanımlanamıyor: %s" - -#, c-format -msgid "E1016: Cannot declare a global variable: %s" -msgstr "E1016: Global değişken tanımlanamıyor: %s" - -#, c-format -msgid "E1064: Cannot declare a v: variable: %s" -msgstr "E1064: v: değişkeni tanımlanamıyor: %s" - -#, c-format -msgid "E1034: Cannot use reserved name %s" -msgstr "E1034: Ayrılmış ad %s kullanılamaz" - -#, c-format -msgid "E1017: Variable already declared: %s" -msgstr "E1017: Değişken hâlihazırda tanımlanmış: %s" - -#, c-format -msgid "E1018: Cannot assign to a constant: %s" -msgstr "E1018: Sabit değere atanamıyor: %s" - -#, c-format -msgid "E1054: Variable already declared in the script: %s" -msgstr "E1054: Değişken betikte hâlihazırda tanımlandı: %s" - -msgid "E1019: Can only concatenate to string" -msgstr "E1019: Yalnızca bir diziye bağlanabilir" - -#, c-format -msgid "E1020: cannot use an operator on a new variable: %s" -msgstr "E1020: Yeni bir değişken üzerinde işleç kullanılamıyor: %s" - -msgid "E1031: Cannot use void value" -msgstr "E1031: Boş değer kullanılamıyor" - -msgid "E1021: const requires a value" -msgstr "E1021: const bir değer gerektirir" - -msgid "E1022: type or initialization required" -msgstr "E1022: Tür veya ilklendirme gerekiyor" - -#, c-format -msgid "E1023: variable already defined: %s" -msgstr "E1023: Değişken hâlihazırda tanımlanmış: %s" - -msgid "E1024: need a List to iterate over" -msgstr "E1024: Üzerinde yineleme için bir Liste gerekli" - -msgid "E1033: catch unreachable after catch-all" -msgstr "E1033: catch'e catch-all'dan sonra ulaşılamıyor" - -#, c-format -msgid "E1067: Separator mismatch: %s" -msgstr "E1067: Ayırıcı uyuşmazlığı: %s" - -msgid "E1032: missing :catch or :finally" -msgstr "E1032: :catch veya :finally eksik" - -#, c-format -msgid "E488: Trailing characters: %s" -msgstr "E488: Sonda fazladan karakterler: %s" - -msgid "E1025: using } outside of a block scope" -msgstr "E1025: } bir blok kapsamı dışında kullanılıyor" - -msgid "E1026: Missing }" -msgstr "E1026: Eksik }." - -msgid "E1027: Missing return statement" -msgstr "E1027: Eksik dönüş ifadesi" - -msgid "E1028: compile_def_function failed" -msgstr "E1028: compile_def_function başarısız oldu" - -#, c-format -msgid "E121: Undefined variable: g:%s" -msgstr "E121: Tanımlanmamış değişken: g:%s" - -msgid "E1051: Expected string or number" -msgstr "E1051: Dizi veya sayı bekleniyordu" - -#, c-format -msgid "E1029: Expected %s but got %s" -msgstr "E1029: %s bekleniyordu ancak %s alındı" - -#, c-format -msgid "E1061: Cannot find function %s" -msgstr "E1061: %s işlevi bulunamıyor" - -#, c-format -msgid "E1062: Function %s is not compiled" -msgstr "E1062: %s işlevi derlenmemiş" - -msgid "E1030: Using a String as a Number" -msgstr "E1030: Bir Dizi, Sayı yerine kullanılıyor" - -msgid "E1042: import/export can only be used in vim9script" -msgstr "E1042: İçe/Dışa aktar yalnızca vim9script'te kullanılabilir" - -msgid "E1038: vim9script can only be used in a script" -msgstr "E1038: vim9script yalnızca bir betikte kullanılabilir" - -msgid "E1039: vim9script must be the first command in a script" -msgstr "E1039: vim9script bir betikteki ilk komut olmalıdır" - -msgid "E1044: export with invalid argument" -msgstr "E1044: Geçersiz değişkenle dışa aktarım" - -msgid "E1043: Invalid command after :export" -msgstr "E1043: :export sonrası geçersiz komut" - -#, c-format -msgid "E1049: Item not exported in script: %s" -msgstr "E1049: Betikteki öge dışa aktarılmadı: %s" - -#, c-format -msgid "E1048: Item not found in script: %s" -msgstr "E1048: Öge betikte bulunamadı: %s" - -msgid "E1045: Missing \"as\" after *" -msgstr "E1045: * sonrası \"as\" eksik" - -msgid "E1070: Missing \"from\"" -msgstr "E1070: Eksik \"from\"" - -msgid "E1071: Invalid string after \"from\"" -msgstr "E1071: \"from\" sonrası geçersiz dizi" - -#, c-format -msgid "E1053: Could not import \"%s\"" -msgstr "E1053: \"%s\" içe aktarılamadı" - -msgid "E1046: Missing comma in import" -msgstr "E1046: İçe aktarımda virgül eksik" - -msgid "E1047: syntax error in import" -msgstr "E1047: İçe aktarımda sözdizim hatası" +msgstr "bilgi için Yardım -> Sponsorluk/Kayıt" + +msgid "[end of lines]" +msgstr "[satırların sonu]" + +msgid "global" +msgstr "global" + +msgid "buffer" +msgstr "arabellek" + +msgid "window" +msgstr "pencere" + +msgid "tab" +msgstr "sekme" msgid "" "\n" @@ -6758,9 +6548,6 @@ msgstr "E443: Başka bir pencere bölünmüşken döndürme yapılamaz" msgid "E444: Cannot close last window" msgstr "E444: Son pencere kapatılamıyor" -msgid "E813: Cannot close autocmd or popup window" -msgstr "E813: Otokomut veya açılır pencere kapatılamıyor" - msgid "E814: Cannot close window, only autocmd window would remain" msgstr "E814: Pencere kapatılamıyor, yalnızca otokomut penceresi açık kalır" @@ -6863,7 +6650,7 @@ msgid "E588: :endfor without :for" msgstr "E588: :for olmadan :endfor" msgid "E13: File exists (add ! to override)" -msgstr "E13: Dosya mevcut (yok saymak için ! ekleyin)" +msgstr "E13: Dosya mevcut (geçersiz kılmak için ! ekleyin)" msgid "E472: Command failed" msgstr "E472: Komut başarısız oldu" @@ -6916,13 +6703,13 @@ msgstr "E15: Geçersiz ifade: %s" msgid "E16: Invalid range" msgstr "E16: Geçersiz erim" -msgid "E476: Invalid command" -msgstr "E476: Geçersiz komut" - #, c-format msgid "E17: \"%s\" is a directory" msgstr "E17: \"%s\" bir dizin" +msgid "E756: Spell checking is not possible" +msgstr "E756: Yazım denetimi olanaklı değil" + #, c-format msgid "E364: Library call failed for \"%s()\"" msgstr "E364: \"%s()\" için kitaplık çağrısı başarısız oldu" @@ -7066,11 +6853,7 @@ msgid "E44: Corrupted regexp program" msgstr "E44: Bozulmuş regexp programı" msgid "E45: 'readonly' option is set (add ! to override)" -msgstr "E45: 'readonly' seçeneği ayarlanmış (yok saymak için ! ekleyin)" - -#, c-format -msgid "E121: Undefined variable: %s" -msgstr "E121: Tanımlanmamış değişken: %s" +msgstr "E45: 'readonly' seçeneği ayarlanmış (geçersiz kılmak için ! ekleyin)" #, c-format msgid "E734: Wrong variable type for %s=" @@ -7134,6 +6917,10 @@ msgid "E897: List or Blob required" msgstr "E897: Liste veya ikili geniş nesne gerekiyor" #, c-format +msgid "E697: Missing end of List ']': %s" +msgstr "E697: Liste sonunda ']' eksik: %s" + +#, c-format msgid "E712: Argument of %s must be a List or Dictionary" msgstr "E712: %s ögesinin değişkeni bir liste veya sözlük olmalıdır" @@ -7157,6 +6944,14 @@ msgstr "E113: Bilinmeyen seçenek: %s" msgid "E18: Unexpected characters in :let" msgstr "E18: :let içinde beklenmeyen karakter" +#, c-format +msgid "E998: Reduce of an empty %s with no initial value" +msgstr "E998: Başlangıç değeri olmayan boş bir %s için reduce() yapılamıyor" + +#, c-format +msgid "E857: Dictionary key \"%s\" required" +msgstr "E857: Sözlük anahtarı \"%s\" gerekiyor" + msgid "E47: Error while reading errorfile" msgstr "E47: Hata dosyası okunurken hata" @@ -7166,6 +6961,12 @@ msgstr "E48: Kum havuzunda izin verilmiy msgid "E523: Not allowed here" msgstr "E523: Burada izin verilmiyor" +msgid "E578: Not allowed to change text here" +msgstr "E578: Burada metin değişikliğine izin verilmiyor" + +msgid "E565: Not allowed to change text or change window" +msgstr "E565: Pencere veya metin değişikliğine izin verilmiyor" + msgid "E359: Screen mode setting not supported" msgstr "E359: Ekran kipi ayarı desteklenmiyor" @@ -7199,6 +7000,10 @@ msgstr "E77: Çok fazla dosya adı" msgid "E488: Trailing characters" msgstr "E488: Sonda fazladan karakterler" +#, c-format +msgid "E488: Trailing characters: %s" +msgstr "E488: Sonda fazladan karakterler: %s" + msgid "E78: Unknown mark" msgstr "E78: Bilinmeyen im" @@ -7275,6 +7080,9 @@ msgstr "E764: '%s' seçeneği ayarlanmamış" msgid "E850: Invalid register name" msgstr "E850: Geçersiz yazmaç adı" +msgid "E806: using Float as a String" +msgstr "E806: Kayan Noktalı Değer, bir Dizi yerine kullanılıyor" + #, c-format msgid "E919: Directory not found in '%s': \"%s\"" msgstr "E919: '%s' içinde dizin bulunamadı: \"%s\"" @@ -7282,6 +7090,9 @@ msgstr "E919: '%s' içinde dizin bulunamadı: \"%s\"" msgid "E952: Autocommand caused recursive behavior" msgstr "E952: Otokomut özyineli davranışa neden oldu" +msgid "E813: Cannot close autocmd or popup window" +msgstr "E813: Otokomut veya açılır pencere kapatılamıyor" + msgid "E328: Menu only exists in another mode" msgstr "E328: Menü yalnızca başka bir kipte mevcut" @@ -7323,6 +7134,14 @@ msgstr "E587: :while veya :for olmadan : msgid "E274: No white space allowed before parenthesis" msgstr "E274: Ayraçtan önce boşluğa izin verilmiyor" +#, c-format +msgid "E940: Cannot lock or unlock variable %s" +msgstr "E940: Değişken %s kilitlenemiyor veya açılamıyor" + +#, c-format +msgid "E254: Cannot allocate color %s" +msgstr "E254: %s rengi ayrılamıyor" + msgid "search hit TOP, continuing at BOTTOM" msgstr "Arama dosyanın BAŞINI geçti, dosyanın SONUNDAN sürüyor"