Compare commits

...

333 Commits

Author SHA1 Message Date
94d9f4fa65 patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Problem:    vi' does not always work when 'selection' is exclusive.
Solution:   Adjust start position.
2019-11-21 20:55:26 +01:00
44f0bd878a patch 8.1.2329: mouse multiple click test is a bit flaky
Problem:    Mouse multiple click test is a bit flaky.
Solution:   Add it to the list of flaky tests.
2019-11-21 18:27:01 +01:00
bd3bc0314e patch 8.1.2328: a few hangul input pieces remain
Problem:    A few hangul input pieces remain.
Solution:   Update VMS makefile.
2019-11-21 17:34:51 +01:00
546125869f patch 8.1.2327: cannot build with Hangul input
Problem:    Cannot build with Hangul input.
Solution:   Remove Hangul input support.
2019-11-21 17:13:31 +01:00
10455d43fe patch 8.1.2326: cannot parse a date/time string
Problem:    Cannot parse a date/time string.
Solution:   Add strptime(). (Stephen Wall, closes #)
2019-11-21 15:36:18 +01:00
9ae862ebba patch 8.1.2325: crash when using balloon with empty line
Problem:    Crash when using balloon with empty line.
Solution:   Handle empty lines. (Markus Braun)
2019-11-21 13:27:06 +01:00
202c3f7e3e patch 8.1.2324: with of scrollbar in popup menu not taken into account
Problem:    With of scrollbar in popup menu not taken into account.
Solution:   Add the width of the scrollbar.
2019-11-21 12:12:35 +01:00
403f3eb4c1 Update runtime files. 2019-11-20 22:31:13 +01:00
a075490082 patch 8.1.2323: Old MSVC version no longer tested.
Problem:    Old MSVC version no longer tested.
Solution:   Drop support for MSCV 2008 and older. (Ken Takata, closes #5248)
2019-11-19 23:01:28 +01:00
ffc4fb8fee patch 8.1.2322: quickfix test fails in very big terminal
Problem:    Quickfix test fails in very big terminal.
Solution:   Adjust the expected result for the width. (Masato Nishihata,
            closes #5244)
2019-11-19 22:38:48 +01:00
0a5aa7b28a patch 8.1.2321: cannot select all text with the mouse
Problem:    Cannot select all text with the mouse. (John Marriott)
Solution:   Move limiting the mouse column to f_getmousepos(). (closes #5242)
2019-11-18 23:31:48 +01:00
f9ae154c51 patch 8.1.2320: insufficient test coverage for quickfix
Problem:    Insufficient test coverage for quickfix.
Solution:   Add more tests.  Fix uncovered problem. (Yegappan Lakshmanan,
            closes #5238)
2019-11-18 22:02:16 +01:00
07a63d8633 patch 8.1.2319: compiler warning for int size
Problem:    Compiler warning for int size.
Solution:   Add typecast. (Mike Williams)
2019-11-18 21:38:37 +01:00
5f76334818 patch 8.1.2318: MS-Windows GUI: main background shows in toolbar
Problem:    MS-Windows GUI: main background shows in toolbar.
Solution:   Remove transparency from the toolbar. (Simon Sadler)
2019-11-17 22:54:10 +01:00
37ff4cf870 patch 8.1.2317: no test for spell affix file with flag on suffix
Problem:    No test for spell affix file with flag on suffix.
Solution:   Add a test case.
2019-11-17 20:10:20 +01:00
91b992c387 patch 8.1.2316: FORTIFY_SOURCE can also be present in CPPFLAGS
Problem:    FORTIFY_SOURCE can also be present in CPPFLAGS.
Solution:   Remove it in configure. (Benedikt Morbach, closes #2786)
2019-11-17 19:07:42 +01:00
539aa6b25e patch 8.1.2315: not always using the right window when jumping to an error
Problem:    Not always using the right window when jumping to an error.
Solution:   Add the "uselast" flag in 'switchbuf'. (closes #1652)
2019-11-17 18:09:38 +01:00
7170b295b0 patch 8.1.2314: vi' sometimes does not select anything
Problem:    vi' sometimes does not select anything.
Solution:   Recognize an empty selection. (Christian Brabandt, closes #5183)
2019-11-17 17:32:28 +01:00
eda1da0c9a patch 8.1.2313: debugging where a delay comes from is not easy
Problem:    Debugging where a delay comes from is not easy.
Solution:   Use different values when calling ui_delay().
2019-11-17 17:06:33 +01:00
077b9dd354 patch 8.1.2312: "line:" field in tags file not used
Problem:    "line:" field in tags file not used.
Solution:   Recognize the field and use the value. (Andy Massimino, Daniel
            Hahler, closes #5232, closes #2546, closes #1057)
2019-11-17 16:18:31 +01:00
09c6f265b2 Update runtime files. 2019-11-17 15:55:14 +01:00
0324f9ea0a patch 8.1.2311: warning for missing function prototype
Problem:    Warning for missing function prototype.
Solution:   Add the proto. (Dominique Pelle, closes #5233)
2019-11-16 22:49:40 +01:00
d8a8c4ca08 patch 8.1.2310: no proper test for directory changes in quickfix
Problem:    No proper test for directory changes in quickfix.
Solution:   Add a test that uses multiple directories. (Yegappan Lakshmanan,
            closes #5230)
2019-11-16 21:04:57 +01:00
abe12a1a4f patch 8.1.2309: compiler warning for argument type
Problem:    Compiler warning for argument type.
Solution:   Use linenr_T and cast to varnumber_T. (John Marriott)
2019-11-16 20:49:18 +01:00
ecafcc15ca patch 8.1.2308: deleting text before zero-width textprop removes it
Problem:    Deleting text before zero-width textprop removes it.
Solution:   Keep zero-width textprop when deleting text.
2019-11-16 20:41:51 +01:00
a37cb55da6 patch 8.1.2307: positioning popup doesn't work for buffer-local textprop
Problem:    Positioning popup doesn't work for buffer-local textprop.
Solution:   Make it work. (closes #5225)
2019-11-16 20:03:31 +01:00
f36a2c7e60 patch 8.1.2306: double and triple clicks are not tested
Problem:    Double and triple clicks are not tested.
Solution:   Test mouse clicks to select text. (closes #5226)
2019-11-16 18:57:16 +01:00
e53ec39270 patch 8.1.2305: no warning for wrong entry in translations
Problem:    No warning for wrong entry in translations.
Solution:   Check semicolons in keywords entry of desktop file.
2019-11-16 18:49:50 +01:00
db3a205147 patch 8.1.2304: cannot get the mouse position when getting a mouse click
Problem:    Cannot get the mouse position when getting a mouse click.
Solution:   Add getmousepos().
2019-11-16 18:22:41 +01:00
08f23636ae patch 8.1.2303: cursor in wrong position after horizontal scroll
Problem:    Cursor in wrong position after horizontal scroll.
Solution:   Set w_valid_leftcol.  (closes #5214, closes #5224)
2019-11-16 14:19:33 +01:00
f4a1d1c054 patch 8.1.2302: :lockmarks does not work for '[ and ']
Problem:    :lockmarks does not work for '[ and '].
Solution:   save and restore '[ and '] marks. (James McCoy, closes #5222)
2019-11-16 13:50:25 +01:00
ab85ca4e6a patch 8.1.2301: MS-Windows GUI: drawing error when background color changes
Problem:    MS-Windows GUI: drawing error when background color changes.
Solution:   Implement gui_mch_new_colors(). (Simon Sadler)
2019-11-15 22:41:14 +01:00
1ebbb6ee45 Fix vim.desktop generation. 2019-11-14 21:39:32 +01:00
574ee7bc12 Update runtime files 2019-11-13 23:04:29 +01:00
afe45b68a6 patch 8.1.2300: redraw breaks going through list of popup windows
Problem:    Redraw breaks going through list of popup windows.
Solution:   Use different flags for popup_reset_handled(). (closes #5216)
2019-11-13 22:35:19 +01:00
36e7a823c6 patch 8.1.2299: ConPTY in MS-Windows 1909 is still wrong
Problem:    ConPTY in MS-Windows 1909 is still wrong.
Solution:   Use same solution as for 1903. (Nobuhiro Takasaki, closes #5217)
2019-11-13 21:49:24 +01:00
0743ef9f8a patch 8.1.2298: missing part of 8.1.2296
Problem:    Missing part of 8.1.2296.
Solution:   s/test/text/
2019-11-13 16:37:31 +01:00
d6a98a3a97 patch 8.1.2297: the ex_vimgrep() function is too long
Problem:    The ex_vimgrep() function is too long.
Solution:   Split it in three parts. (Yegappan Lakshmanan, closes #5211)
2019-11-12 22:59:51 +01:00
58e32ab503 patch 8.1.2296: text properties are not combined with syntax by default
Problem:    Text properties are not combined with syntax by default.
Solution:   Make it work as documented. (closes #5190)
2019-11-12 22:44:22 +01:00
4eb7dae255 patch 8.1.2295: if buffer of popup is in another window cursorline sign shows
Problem:    If buffer of popup is in another window cursorline sign shows.
Solution:   Check the group of the sign.
2019-11-12 22:33:45 +01:00
cbee635eee patch 8.1.2294: cursor pos wrong with concealing and search causes a scroll
Problem:    Cursor position wrong when characters are concealed and asearch
            causes a scroll.
Solution:   Fix the cursor column in a concealed line after window scroll.
            (closes #5215, closes #5012)
2019-11-12 20:49:15 +01:00
cc184cfb09 patch 8.1.2293: join adds trailing space when second line is empty
Problem:    Join adds trailing space when second line is empty. (Brennan
            Vincent)
Solution:   Do not add a trailing space.
2019-11-12 20:31:20 +01:00
d002e411c6 patch 8.1.2292: v:mouse_winid not set on click in popup window
Problem:    v:mouse_winid not set on click in popup window.
Solution:   Set v:mouse_winid. (closes #5171)
2019-11-11 21:45:05 +01:00
adf4aa200b patch 8.1.2291: memory leak when executing command in a terminal
Problem:    Memory leak when executing command in a terminal.
Solution:   Free "argv". (Dominique Pelle, closes #5208)
2019-11-10 22:36:44 +01:00
5ef1c6a483 Update runtime files 2019-11-10 22:09:11 +01:00
a9aa86ff95 patch 8.1.2290: autocommand test fails
Problem:    Autocommand test fails.
Solution:   Remove 'closeoff' from 'diffopt'.
2019-11-10 21:25:45 +01:00
c823477979 patch 8.1.2289: after :diffsplit closing the window does not disable diff
Problem:    After :diffsplit closing the window does not disable diff.
Solution:   Add "closeoff" to 'diffopt' and add it to the default.
2019-11-10 21:00:27 +01:00
5c6b6187ac patch 8.1.2288: not using all space when popup with "topleft" flips to above
Problem:    Not using all space when popup with "topleft" flips to above.
Solution:   Recompute the height when a popup flips from below to above.
            (closes #5151)
2019-11-10 17:51:38 +01:00
1666ac9c56 patch 8.1.2287: using EndOfBuffer highlight in popup does not look good
Problem:    Using EndOfBuffer highlight in popup does not look good.
Solution:   Do not EndOfBuffer highlight. (closes #5204)
2019-11-10 17:22:31 +01:00
622b646037 patch 8.1.2286: using border highlight in popup window leaks memory
Problem:    Using border highlight in popup window leaks memory.
Solution:   Free memory before overwriting. (Dominique Pelle, closes #5203)
2019-11-10 15:16:54 +01:00
d6beab0248 patch 8.1.2285: padding in structures wastes memory
Problem:    Padding in structures wastes memory.
Solution:   Move fields to avoid padding. (Dominique Pelle, closes #5202)
2019-11-10 15:07:19 +01:00
439b3aca37 patch 8.1.2284: compiler warning for unused variable
Problem:    Compiler warning for unused variable. (Tony Mechelynck)
Solution:   Add #ifdef.
2019-11-10 01:32:12 +01:00
91e22eb6e0 patch 8.1.2283: missed on use of p_sbr
Problem:    Missed on use of p_sbr.
Solution:   Add missing p_sbr change.
2019-11-10 00:19:12 +01:00
4c054e9fb2 patch 8.1.2282: crash when passing many arguments through a partial
Problem:    Crash when passing many arguments through a partial. (Andy
            Massimino)
Solution:   Check the number of arguments. (closes #5186)
2019-11-10 00:13:50 +01:00
ee85702c10 patch 8.1.2281: 'showbreak' cannot be set for one window
Problem:    'showbreak' cannot be set for one window.
Solution:   Make 'showbreak' global-local.
2019-11-09 23:26:40 +01:00
b0745b221d patch 8.1.2280: crash when passing partial to substitute()
Problem:    Crash when passing partial to substitute().
Solution:   Take extra arguments into account. (closes #5186)
2019-11-09 22:28:11 +01:00
dbd4316806 patch 8.1.2279: computation of highlight attributes is too complicated
Problem:    Computation of highlight attributes is too complicated.
Solution:   Simplify the attribute computation and make it more consistent.
            (closes #5190)  Fix that 'combine' set to zero doesn't work.
2019-11-09 21:28:14 +01:00
3503d7c94a patch 8.1.2278: using "cd" with "exe" may fail
Problem:    Using "cd" with "exe" may fail.
Solution:   Use chdir() instead.
2019-11-09 20:10:17 +01:00
b73e439606 patch 8.1.2277: terminal window is not updated when info popup changes
Problem:    Terminal window is not updated when info popup changes.
Solution:   Redraw windows when re-using an info popup. (closes #5192)
2019-11-09 20:00:35 +01:00
5bf46e9786 patch 8.1.2276: MS-Windows: session test leaves files behind
Problem:    MS-Windows: session test leaves files behind.
Solution:   Wipe out buffers before deleting the directory. (closes #5187)
2019-11-09 18:06:04 +01:00
1e15e61188 patch 8.1.2275: using "seesion" looks like a mistake
Problem:    Using "seesion" looks like a mistake.
Solution:   Use an underscore to make the function sort first.
2019-11-09 17:18:52 +01:00
d1c1c82389 patch 8.1.2274: newlines in 'balloonexpr' result only work in the GUI
Problem:    Newlines in 'balloonexpr' result only work in the GUI.
Solution:   Also recognize newlines in the terminal. (closes #5193)
2019-11-09 16:59:14 +01:00
4dd8fe0b4f patch 8.1.2273: wrong default when "pos" is changed with popup_atcursor()
Problem:    Wrong default when "pos" is changed with popup_atcursor().
Solution:   Adjust the default line and col when "pos" is not the default
            value. (#5151)
2019-11-09 15:33:31 +01:00
34059e7b67 patch 8.1.2272: test may hang at more prompt
Problem:    Test may hang at more prompt.
Solution:   Reset 'more' after resetting 'compatible'. (Michael Soyka)
2019-11-08 23:00:25 +01:00
398a59b6a5 patch 8.1.2271: build error if FEAT_TAG_BINS is not defined
Problem:    Build error if FEAT_TAG_BINS is not defined. (John Marriott)
Solution:   Add #ifdef.
2019-11-08 21:56:57 +01:00
0208b6b771 patch 8.1.2270: "gf" is not tested in Visual mode
Problem:    "gf" is not tested in Visual mode.
Solution:   Add Visual mode test and test errors. (Dominique Pelle,
            closes #5197)
2019-11-08 21:49:48 +01:00
dc9ef26845 patch 8.1.2269: tags file with very long line stops using binary search
Problem:    Tags file with very long line stops using binary search.
Solution:   Reallocate the buffer if needed.
2019-11-07 23:08:42 +01:00
3d2a47c782 patch 8.1.2268: spell file flag zero is not recognized
Problem:    Spell file flag zero is not recognized.
Solution:   Use -1 as an error value, so that zero can be used as a valid flag
            number.
2019-11-07 20:48:42 +01:00
3b991527e8 patch 8.1.2267: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable. (Tony Mechelynck)
Solution:   Rearrange the code.
2019-11-06 23:26:20 +01:00
f8b036bcae patch 8.1.2266: position unknown for a mouse click in a popup window
Problem:    Position unknown for a mouse click in a popup window.
Solution:   Set v:mouse_col and v:mouse_lnum. (closes #5171)
2019-11-06 21:09:17 +01:00
638a4a7508 patch 8.1.2265: when popup with "botleft" does not fit it flips incorrectly
Problem:    When popup with "botleft" does not fit it flips incorrectly.
Solution:   Only flip when there is more space on the other side.  Add the
            "posinvert" option to disable flipping and do it in both
            directions if enabled.  (closes #5151)
2019-11-06 19:25:22 +01:00
fcf8a8743b patch 8.1.2264: there are two test files for :let
Problem:    There are two test files for :let.
Solution:   Merge the two files.
2019-11-06 15:22:00 +01:00
215ba3b636 patch 8.1.2263: 'noesckeys' test fails in GUI
Problem:    'noesckeys' test fails in GUI.
Solution:   Skip the test in the GUI.
2019-11-06 15:07:07 +01:00
1e673b9eb6 patch 8.1.2262: unpack assignment in function not recognized
Problem:    Unpack assignment in function not recognized.
Solution:   Skip over "[a, b]". (closes #5051)
2019-11-06 15:02:50 +01:00
177c9f2f06 patch 8.1.2261: with modifyOtherKeys set 'noesckeys' doesn't work
Problem:    With modifyOtherKeys set 'noesckeys' doesn't work. (James McCoy)
Solution:   Disable modifyOtherKeys while in Insert mode when 'noesckeys' is
            set. (closes #5180)
2019-11-06 13:59:16 +01:00
36ec6f6953 patch 8.1.2260: terminal test may fail on MS-Windows
Problem:    Terminal test may fail on MS-Windows.
Solution:   Catch the situation that "term dir" fails with a CreateProcess
            error.
2019-11-05 22:38:47 +01:00
7d2320414f patch 8.1.2259: running tests may leave XfakeHOME behind
Problem:    Running tests may leave XfakeHOME behind.
Solution:   Source summarize.vim without using setup.vim. (closes #5177)
            Also fix that on MS-Windows the test log isn't echoed.
2019-11-05 22:37:20 +01:00
dc968e7a45 patch 8.1.2258: may get hit-enter prompt after entering a number
Problem:    May get hit-enter prompt after entering a number. (Malcolm Rowe)
Solution:   Put back accidentally deleted lines. (closes #5176)
2019-11-05 21:53:20 +01:00
ae20f340ad patch 8.1.2257: MS-Windows GUI: scroll wheel always uses current window
Problem:    MS-Windows GUI: scroll wheel always uses current window.
Solution:   Add the 'scrollfocus' option for MS-Windows.
2019-11-05 21:09:23 +01:00
e5a3272d32 patch 8.1.2256: test for ":term ++shell" fails on MS-Windows
Problem:    Test for ":term ++shell" fails on MS-Windows.
Solution:   Accept failure of "dir" executable.
2019-11-04 23:36:29 +01:00
2d6d76f9cd patch 8.1.2255: ":term ++shell" does not work on MS-Windows
Problem:    ":term ++shell" does not work on MS-Windows.
Solution:   Add MS-Windows support.
2019-11-04 23:18:35 +01:00
0630bb6580 patch 8.1.2254: MS-Windows: mouse scroll wheel doesn't work in popup
Problem:    MS-Windows: mouse scroll wheel doesn't work in popup.
Solution:   Handle mouse wheel events separately. (closes #5138)
2019-11-04 22:52:12 +01:00
ad4de52510 patch 8.1.2253: using "which" to check for an executable is not reliable
Problem:    Using "which" to check for an executable is not reliable.
Solution:   Use "command -v" instead.  Also exit with error code when
            generating tags has an error. (closes #5174)
2019-11-04 21:24:48 +01:00
2ade714728 patch 8.1.2252: compiler warning for int size
Problem:    Compiler warning for int size.
Solution:   Add type cast. (Mike Williams)
2019-11-04 20:36:50 +01:00
197c6b7da3 patch 8.1.2251: ":term command" may not work without a shell
Problem:    ":term command" may not work without a shell.
Solution:   Add the ++shell option to :term. (closes #3340)
2019-11-03 23:37:12 +01:00
30efcf3d26 patch 8.1.2250: CTRL-U and CTRL-D don't work in popup window
Problem:    CTRL-U and CTRL-D don't work in popup window.
Solution:   Initialize 'scroll'.  Add "lastline" in popup_getpos().
            (closes #5170)
2019-11-03 22:29:38 +01:00
d047840ce4 patch 8.1.2249: "make vimtags" does not print any message
Problem:    "make vimtags" does not print any message.
Solution:   Add a message that the tags have been updated.
2019-11-03 21:46:19 +01:00
1e814bc017 patch 8.1.2248: CTRL-W dot does not work when modifyOtherKeys is enabled
Problem:    CTRL-W dot does not work in a terminal when modifyOtherKeys is
            enabled.
Solution:   Use the modifier when needed.  Pass the modifier along with the
            key to avoid mistakes.
2019-11-03 21:19:41 +01:00
e890b9f5dd patch 8.1.2247: "make vimtags" does not work in runtime/doc
Problem:    "make vimtags" does not work in runtime/doc.
Solution:   Test existence with "which" instead of "test -x". (Ken Takata)
2019-11-03 18:38:47 +01:00
1f068233c1 patch 8.1.2246: some tests are still in old style
Problem:    Some tests are still in old style.
Solution:   Change a few tests to new style. (Yegappan Lakshmanan)
2019-11-03 16:17:26 +01:00
2f7b7b1e12 patch 8.1.2245: third character of 'listchars' tab shows in wrong place
Problem:    Third character of 'listchars' tab shows in wrong place when
            'breakindent' is set.
Solution:   Set c_final to NUL. (Naruhiko Nishino, closes #5165)
2019-11-03 15:46:48 +01:00
82cf7f6df7 patch 8.1.2244: 'wrapscan' is not used for "gn"
Problem:    'wrapscan' is not used for "gn".
Solution:   Only reset 'wrapscan' for the first search round. (closes #5164)
2019-11-02 23:22:47 +01:00
32aa10203b patch 8.1.2243: typos in comments
Problem:    Typos in comments.
Solution:   Fix the typos. (Dominique Pelle, closes #5160)  Also adjust
            formatting a bit.
2019-11-02 22:54:41 +01:00
70def98a95 patch 8.1.2242: creating docs tags uses user preferences
Problem:    Creating docs tags uses user preferences. (Tony Mechelynck)
Solution:   Add "--clean".
2019-11-02 22:45:31 +01:00
024dbd229f patch 8.1.2241: match highlight does not combine with 'wincolor'
Problem:    Match highlight does not combine with 'wincolor'.
Solution:   Apply 'wincolor' last on top of any other attribute. (closes #5159)
2019-11-02 22:00:15 +01:00
f2885d3fb7 patch 8.1.2240: popup window width changes when scrolling
Problem:    Popup window width changes when scrolling.
Solution:   Also adjust maxwidth when applying minwidth and there is a
            scrollbar.  Fix off-by-one error. (closes #5162)
2019-11-02 20:21:25 +01:00
1a577433ac patch 8.1.2239: CI fails when running tests without building Vim
Problem:    CI fails when running tests without building Vim.
Solution:   Skip creating doc tags if the execute does not exist.
2019-11-02 18:22:08 +01:00
1ff14ba24c Update runtime files. 2019-11-02 14:09:23 +01:00
757bd2ea49 patch 8.1.2238: error in docs tags goes unnoticed
Problem:    Error in docs tags goes unnoticed.
Solution:   Adjust tags build command. (Ken Takata, closes #5158)
2019-11-01 19:46:22 +01:00
7a641ca1e1 patch 8.1.2237: mode() result depends on whether CURSOR_SHAPE is defined
Problem:    Mode() result after usign "r" depends on whether CURSOR_SHAPE is
            defined. (Christian Brabandt)
Solution:   Move the #ifdef to only skip ui_cursor_shape().
2019-10-31 19:55:55 +01:00
bb26596242 patch 8.1.2236: ml_get error if pattern matches beyond last line
Problem:    Ml_get error if pattern matches beyond last line.
Solution:   Adjust position if needed. (Christian Brabandt, closes #5139)
2019-10-31 04:38:36 +01:00
77ccc00340 patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Problem:    "C" with 'virtualedit' set does not include multi-byte char.
Solution:   Include the whole multi-byte char. (Nobuhiro Takasaki,
            closes #5152)
2019-10-31 03:21:25 +01:00
3f39697b73 patch 8.1.2234: get_short_pathname() fails depending on encoding
Problem:    get_short_pathname() fails depending on encoding.
Solution:   Use the wide version of the library function. (closes #5129)
2019-10-30 04:10:06 +01:00
69bf634858 patch 8.1.2233: cannot get the Vim command line arguments
Problem:    Cannot get the Vim command line arguments.
Solution:   Add v:argv. (Dmitri Vereshchagin, closes #1322)
2019-10-29 04:16:57 +01:00
8b530c1ff9 patch 8.1.2231: not easy to move to the middle of a text line
Problem:    Not easy to move to the middle of a text line.
Solution:   Add the gM command. (Yasuhiro Matsumoto, closes #2070)
2019-10-28 02:13:05 +01:00
077ff436a7 patch 8.1.2230: MS-Windows: testing external commands can be improved
Problem:    MS-Windows: testing external commands can be improved.
Solution:   Adjust tests, remove duplicate test. (closes #4928)
2019-10-28 00:42:21 +01:00
efae76ab1a patch 8.1.2229: cannot color number column above/below cursor differently
Problem:    Cannot color number column above/below cursor differently.
Solution:   Add LineNrAbove and LineNrBelow. (Shaun Brady, closes #624)
2019-10-27 22:54:58 +01:00
38ba4dce4a patch 8.1.2228: screenpos() returns wrong values when 'number' is set
Problem:    screenpos() returns wrong values when 'number' is set. (Ben
            Jackson)
Solution:   Compare the column with the window width. (closes #5133)
2019-10-27 21:39:09 +01:00
1c329c04be patch 8.1.2227: layout wrong if 'lines' changes while cmdline window is open
Problem:    Layout wrong if 'lines' changes while cmdline window is open.
Solution:   Do not restore the window layout if 'lines' changed.
            (closes #5130)
2019-10-27 20:37:35 +01:00
5b418992cf patch 8.1.2226: cannot use system copy/paste in non-xterm terminals
Problem:    Cannot use system copy/paste in non-xterm terminals.
Solution:   Instead of setting 'mouse' to "a" set it to "nvi" in defaults.vim.
2019-10-27 18:50:25 +01:00
52410575be patch 8.1.2225: the "last used" info of a buffer is under used
Problem:    The "last used" info of a buffer is under used.
Solution:   Add "lastused" to getbufinfo(). List buffers sorted by last-used
            field. (Andi Massimino, closes #4722)
2019-10-27 05:12:45 +01:00
dfded98f87 patch 8.1.2224: cannot build Amiga version
Problem:    Cannot build Amiga version.
Solution:   Add dummy mch_setmouse(). (Ola Söder, closes #5126)
2019-10-26 21:33:19 +02:00
cb86893114 patch 8.1.2223: cannot see what buffer an ml_get error is for
Problem:    Cannot see what buffer an ml_get error is for.
Solution:   Add the buffer number and name in the message
2019-10-26 20:56:21 +02:00
7ab5d77666 patch 8.1.2222: accessing invalid memory
Problem:    Accessing invalid memory. (Dominique Pelle)
Solution:   Reset highlight_match every time.  (closes #5125)
2019-10-26 20:45:24 +02:00
96f45c0b6f Update runtime files 2019-10-26 19:53:45 +02:00
8fc4296436 patch 8.1.2221: cannot filter :disp output
Problem:    Cannot filter :disp output.
Solution:   Support filtereing :disp output. (Andi Massimino, closes #5117)
2019-10-26 17:33:13 +02:00
6a0cc916bd patch 8.1.2220: :cfile does not abort like other quickfix commands
Problem:    :cfile does not abort like other quickfix commands.
Solution:   Abort when desired. Add tests for aborting. (Yegappan Lakshmanan,
            closes #5121)
2019-10-26 16:48:44 +02:00
28ed4dfe1f patch 8.1.2219: no autocommand for open window with terminal
Problem:    No autocommand for open window with terminal.
Solution:   Add TerminalWinOpen. (Christian Brabandt)
2019-10-26 16:21:40 +02:00
453c19257f patch 8.1.2218: "gN" is off by one in Visual mode
Problem:    "gN" is off by one in Visual mode.
Solution:   Check moving forward. (Christian Brabandt, #5075)
2019-10-26 14:42:09 +02:00
c7488a7fc8 patch 8.1.2217: compiler warning for unused variable
Problem:    Compiler warning for unused variable.
Solution:   Move variable inside #ifdef. (John Marriott)
2019-10-26 12:23:04 +02:00
1fd30d7bae patch 8.1.2216: text property in wrong place after :substitute
Problem:    Text property in wrong place after :substitute.
Solution:   Pass the new column instead of the old one. (Christian Brabandt,
            closes #4427)
2019-10-25 22:13:29 +02:00
7aee6876eb patch 8.1.2215: unreachable code in adjusting text prop columns
Problem:    Unreachable code in adjusting text prop columns.
Solution:   Remove the code. (Christian Brabandt)
2019-10-25 21:49:38 +02:00
11a58af66f patch 8.1.2214: too much is redrawn when 'cursorline' is set
Problem:    Too much is redrawn when 'cursorline' is set.
Solution:   Don't do a complete redraw. (closes #5079)
2019-10-24 22:32:31 +02:00
aa1f04d092 patch 8.1.2213: popup_textprop tests fail
Problem:    Popup_textprop tests fail.
Solution:   Adjust the column and line positioning.
2019-10-24 22:12:54 +02:00
3691f1ee72 patch 8.1.2212: cannot see the selection type in :reg output
Problem:    Cannot see the selection type in :reg output. (Ayberk Aydın)
Solution:   Add c/l/b. (Christian Brabandt, closes #5110, closes #4546)
2019-10-24 20:17:00 +02:00
336bf2b8b2 patch 8.1.2211: listener callback "added" argument is not the total
Problem:    Listener callback "added" argument is not the total. (Andy
            Massimino)
Solution:   Compute the total. (closes #5105)
2019-10-24 20:07:07 +02:00
b754b5bf6d patch 8.1.2210: using negative offset for popup_create() does not work
Problem:    Using negative offset for popup_create() does not work.
Solution:   Use -1 instead of zero. (closes #5111)
2019-10-24 19:25:00 +02:00
ec6f735012 patch 8.1.2209: LF in escape codes may be expanded to CR-LF
Problem:    LF in escape codes may be expanded to CR-LF.
Solution:   Do not expand LF in escape codes to CR-LF. (closes #5107)
2019-10-24 17:49:27 +02:00
faf626e5d1 patch 8.1.2208: Unix: Tabs in output might be expanded to spaces
Problem:    Unix: Tabs in output might be expanded to spaces.
Solution:   Reset the XTABS flag. (closes #5108)
2019-10-24 17:43:25 +02:00
edaad6e0a0 patch 8.1.2207: "gn" doesn't work quite right
Problem:    "gn" doesn't work quite right. (Jaehwang Jerry Jung)
Solution:   Improve and simplify the search logic. (Christian Brabandt,
            closes #5103, closes #5075)
2019-10-24 15:23:37 +02:00
28686682e7 patch 8.1.2206: no test for fixed issue #3893
Problem:    No test for fixed issue #3893.
Solution:   Add a test. (Christian Brabandt, #3893)
2019-10-24 15:12:37 +02:00
6656c2ec4c patch 8.1.2205: sign entry structure has confusing name
Problem:    Sign entry structure has confusing name.
Solution:   Rename signlist_T to sign_entry_T and prefix se_ to the fields.
2019-10-24 15:00:04 +02:00
8f7ab4bd1e patch 8.1.2204: crash on exit when closing terminals
Problem:    Crash on exit when closing terminals. (Corey Hickey)
Solution:   Actually wait for the job to stop. (closes #5100)
2019-10-23 23:16:45 +02:00
823edd1eed patch 8.1.2203: running libvterm tests without the +terminal feature
Problem:    Running libvterm tests without the +terminal feature.
Solution:   Only add the libvterm test target when building libvterm.
2019-10-23 22:35:36 +02:00
93bbf33ceb patch 8.1.2202: MS-Windows: build failure with GUI and small features
Problem:    MS-Windows: build failure with GUI and small features.
Solution:   Add #ifdef. (Michael Soyka, closes #5097)
2019-10-23 21:43:16 +02:00
13a1f3fb0c patch 8.1.2201: cannot build with dynamically linked Python 3.8
Problem:    Cannot build with dynamically linked Python 3.8.
Solution:   Implement py3__Py_DECREF() and py3__Py_XDECREF(). (Ken Takata,
            closes #4080)
2019-10-23 21:37:25 +02:00
1cac70953d patch 8.1.2200: crash when memory allocation fails
Problem:    Crash when memory allocation fails.
Solution:   Check for NULL curwin and curbuf. (Christian Brabandt,
            closes #4839)
2019-10-22 21:54:31 +02:00
a720be78d7 patch 8.1.2199: build failure when using normal features without GUI
Problem:    Build failure when using normal features without GUI and EXITFREE
            defined.
Solution:   Add #ifdef. (Dominique Pelle, closes #5106)
2019-10-22 21:45:19 +02:00
396b7c78c0 patch 8.1.2198: crash when using :center in autocommand
Problem:    Crash when using :center in autocommand.
Solution:   Bail out early for an empty line. (Dominique pelle, closes #5095)
2019-10-21 23:08:59 +02:00
34ba06b6e6 patch 8.1.2197: ExitPre autocommand may cause accessing freed memory
Problem:    ExitPre autocommand may cause accessing freed memory.
Solution:   Check the window pointer is still valid. (closes #5093)
2019-10-20 22:27:10 +02:00
d53ebfc624 patch 8.1.2196: MS-Windows: running tests with MSVC lacks updates
Problem:    MS-Windows: running tests with MSVC lacks updates.
Solution:   Improve running individual tests on MS-Windows. (closes #4922)
2019-10-20 21:47:20 +02:00
4d14bac8e7 patch 8.1.2195: Vim does not exit when the terminal window is last window
Problem:    Vim does not exit when closing a terminal window and it is the
            last window.
Solution:   Exit Vim if the closed terminal window is the last one.
            (closes #4539)
2019-10-20 21:15:15 +02:00
4b57018ee4 patch 8.1.2194: modifyOtherKeys is not enabled by default
Problem:    ModifyOtherKeys is not enabled by default.
Solution:   Add t_TI and t_TE to the builtin xterm termcap.
2019-10-20 19:53:22 +02:00
a13961536e patch 8.1.2193: popup_setoptions(popup_getoptions()) does not work
Problem:    Popup_setoptions(popup_getoptions()) does not work.
Solution:   Also accept a list with three entries for "moved" and
            "mousemoved". (closes #5081)
2019-10-20 18:46:05 +02:00
dca7abe79c patch 8.1.2192: cannot easily fill the info popup asynchronously
Problem:    Cannot easily fill the info popup asynchronously.
Solution:   Add the "popuphidden" value to 'completeopt'. (closes #4924)
2019-10-20 18:17:57 +02:00
88d3d09e07 patch 8.1.2191: when using modifyOtherKeys CTRL-X mode may not work
Problem:    When using modifyOtherKeys CTRL-X mode may not work.
Solution:   Recognize a control character also in the form with a modifier.
2019-10-20 16:00:47 +02:00
83e9a1ce75 patch 8.1.2190: syntax test fails on Mac
Problem:    Syntax test fails on Mac.
Solution:   Limit the window size to 20 rows.
2019-10-20 14:51:23 +02:00
82260afb0e patch 8.1.2189: syntax highlighting wrong for tab
Problem:    Syntax highlighting wrong for tab.
Solution:   Don't clear syntax attribute n_extra is non-zero.
2019-10-20 13:16:22 +02:00
2b78ab5d0c patch 8.1.2188: build error for missing define
Problem:    Build error for missing define.
Solution:   Add missing change.
2019-10-19 22:50:20 +02:00
b40c2576d4 patch 8.1.2187: error for bad regexp even though regexp is not used
Problem:    Error for bad regexp even though regexp is not used when writing
            a file. (Arseny Nasokin)
Solution:   Ignore regexp errors. (closes #5059)
2019-10-19 21:01:05 +02:00
7eed964b41 patch 8.1.2186: error for bad regexp even though regexp is not used
Problem:    Error for bad regexp even though regexp is not used, when writing
            a file. (Arseny Nasokin)
Solution:   Ignore regexp errors. (closes #5059)
2019-10-19 20:57:28 +02:00
bbfd1562ae patch 8.1.2185: syntax test fails
Problem:    Syntax test fails.
Solution:   Add missing file patch.
2019-10-19 20:38:15 +02:00
cfb381421f patch 8.1.2184: option context is not copied when splitting a window
Problem:    Option context is not copied when splitting a window. (Daniel
            Hahler)
Solution:   Copy the option context, so that ":verbose set" works.
            (closes #5066)
2019-10-19 20:18:47 +02:00
ba089307bb patch 8.1.2183: running a test is a bit verbose
Problem:    Running a test is a bit verbose.
Solution:   Silence some messages. (Daniel Hahler, closes #5070)
2019-10-19 18:56:58 +02:00
5b39d7adb0 patch 8.1.2182: test42 seen as binary by git diff
Problem:    Test42 seen as binary by git diff.
Solution:   Add .gitattributes file.  Make explicit that 'cpo' does not
            contain 'S'. (Daniel Hahler, closes #5072)
2019-10-19 18:37:53 +02:00
a74fda6f4d patch 8.1.2181: highlighting wrong when item follows tab
Problem:    Highlighting wrong when item follows tab.
Solution:   Don't use syntax attribute when n_extra is non-zero.
            (Christian Brabandt, closes #5076)
2019-10-19 17:38:03 +02:00
00e192becd patch 8.1.2180: Error E303 is not useful when 'directory' is empty
Problem:    Error E303 is not useful when 'directory' is empty.
Solution:   Skip the error message. (Daniel Hahler, #5067)
2019-10-19 17:01:28 +02:00
b98678a974 patch 8.1.2179: pressing "q" at the more prompt doesn't stop Python output
Problem:    Pressing "q" at the more prompt doesn't stop Python output. (Daniel
            Hahler)
Solution:   Check for got_int in writer(). (closes #5053)
            Also do this for Lua.
2019-10-19 15:18:44 +02:00
15ee567809 patch 8.1.2178: accessing uninitialized memory in test
Problem:    Accessing uninitialized memory in test.
Solution:   Check if there was a match before using the match position.
            (Dominique Pelle, closes #5088)
2019-10-19 14:35:02 +02:00
afbdb905c3 patch 8.1.2177: Dart files are not recognized
Problem:    Dart files are not recognized.
Solution:   Add a filetype rule. (Eugene Ciurana, closes #5087)
2019-10-19 14:10:21 +02:00
8459006af5 patch 8.1.2176: syntax attributes not combined with Visual highlighting
Problem:    Syntax attributes not combined with Visual highlighting. (Arseny
            Nasokin)
Solution:   Combine the attributes. (closes #5083)
2019-10-18 23:12:20 +02:00
c3bf7b56f2 patch 8.1.2175: meson files are not recognized
Problem:    Meson files are not recognized.
Solution:   Add the meson filetype. (Liam Beguin , Nirbheek Chauhan,
            closes #5056)  Also recognize hollywood.
2019-10-18 22:09:34 +02:00
89577b3b3e patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Problem:    Screen not recognized as supporting "sgr" mouse codes.
Solution:   Recognize screen 4.7. (Jordan Christiansen, closes #5042)
2019-10-18 21:26:05 +02:00
92ea26b925 patch 8.1.2173: searchit() has too many arguments
Problem:    Searchit() has too many arguments.
Solution:   Move optional arguments to a struct.  Add the "wrapped" argument.
2019-10-18 20:53:34 +02:00
7751d1d1a3 patch 8.1.2172: spell highlight is wrong at start of the line
Problem:    Spell highlight is wrong at start of the line.
Solution:   Fix setting the "v" variable. (closes #5078)
2019-10-18 20:37:08 +02:00
a1cb1d1dce patch 8.1.2171: mouse support not always available
Problem:    Mouse support not always available.
Solution:   Enable mouse support also in tiny version.  Do not define
            FEAT_MOUSE_XTERM on MS-Windows (didn't really work).
2019-10-17 23:00:07 +02:00
0d2c4bf171 patch 8.1.2170: cannot build without the +termresponse feature
Problem:    Cannot build without the +termresponse feature.
Solution:   Add #ifdef.
2019-10-17 22:17:02 +02:00
3cea8a9a51 patch 8.1.2169: terminal flags are never reset
Problem:    Terminal flags are never reset.
Solution:   Reset the flags when setting 'term'.
2019-10-17 21:55:24 +02:00
b1ba9abcb3 patch 8.1.2168: heredoc assignment not skipped in if block
Problem:    Heredoc assignment not skipped in if block.
Solution:   Check if "skip" is set. (closes #5063)
2019-10-16 23:34:42 +02:00
2559a47823 patch 8.1.2167: mapping test fails on MS-Windows
Problem:    Mapping test fails on MS-Windows.
Solution:   Remove all the existing Insert-mode mappings.
2019-10-16 23:33:12 +02:00
4a4981b7cd patch 8.1.2166: rubyeval() not tested as a method
Problem:    Rubyeval() not tested as a method.
Solution:   Change a test case.
2019-10-16 22:36:11 +02:00
2e693a88b2 Update runtime files. 2019-10-16 22:35:02 +02:00
4f2f61a014 patch 8.1.2165: mapping test fails on Mac
Problem:    Mapping test fails on Mac.
Solution:   Remove the default Mac mapping.
2019-10-16 22:27:49 +02:00
7b3d939667 patch 8.1.2164: stuck when using "j" in a popupwin with popup_filter_menu
Problem:    Stuck when using "j" in a popupwin with popup_filter_menu if a
            line wraps.
Solution:   Check the cursor line is visible. (closes #4577)
2019-10-16 22:17:07 +02:00
b2fe1d676f patch 8.1.2163: cannot build with +spell but without +syntax
Problem:    Cannot build with +spell but without +syntax.
Solution:   Add #ifdef. (John Marriott)
2019-10-16 21:33:40 +02:00
4e03933726 patch 8.1.2162: popup resize test is flaky
Problem:    Popup resize test is flaky. (Christian Brabandt)
Solution:   Add the function to the list of flaky tests.
2019-10-16 21:13:35 +02:00
4bd88d568a patch 8.1.2161: mapping test fails
Problem:    Mapping test fails.
Solution:   Run the test separately.
2019-10-16 19:27:26 +02:00
a6cc5beb17 patch 8.1.2160: cannot build with +syntax but without +terminal
Problem:    Cannot build with +syntax but without +terminal.
Solution:   Add #ifdef.
2019-10-16 18:42:26 +02:00
fafb4b18cd patch 8.1.2159: some mappings are listed twice
Problem:    Some mappings are listed twice.
Solution:   Skip mappings duplicated for modifyOtherKeys. (closes #5064)
2019-10-16 18:34:57 +02:00
17efc7fa05 patch 8.1.2158: terminal attributes missing in Terminal-normal mode
Problem:    Terminal attributes missing in Terminal-normal mode.
Solution:   Use "syntax_attr".
2019-10-16 18:11:31 +02:00
8f7b29f033 patch 8.1.2157: libvterm source files missing from distribution
Problem:    Libvterm source files missing from distribution.
Solution:   Rename source files. (closes #5065)
2019-10-16 17:15:18 +02:00
9115c611db patch 8.1.2156: first character after Tab is not highlighted
Problem:    First character after Tab is not highlighted.
Solution:   Remember the syntax attribute for a column.
2019-10-16 16:57:06 +02:00
a3817730c0 patch 8.1.2155: in a terminal window 'cursorlineopt' does not work properly
Problem:    In a terminal window 'cursorlineopt' does not work properly.
Solution:   Check the 'cursorlineopt' value. (closes #5055)
2019-10-16 16:31:44 +02:00
1142a31b8c patch 8.1.2154: quickfix window height wrong when there is a tabline
Problem:    Quickfix window height wrong when there is a tabline. (Daniel
            Hahler)
Solution:   Take the tabline height into account. (closes #5058)
2019-10-16 14:51:39 +02:00
3439028c89 patch 8.1.2153: combining text property and syntax highlight is wrong
Problem:    Combining text property and syntax highlight is wrong. (Nick
            Jensen)
Solution:   Compute the syntax highlight attribute much earlier.
            (closes #5057)
2019-10-16 14:38:26 +02:00
27fc8cab22 patch 8.1.2152: problems navigating tags file on MacOS Catalina
Problem:    Problems navigating tags file on MacOS Catalina.
Solution:   Use fseek instead of lseek. (John Lamb, fixes #5061)
2019-10-15 22:23:37 +02:00
3c8cd4a1dc patch 8.1.2151: state test is a bit flaky
Problem:    State test is a bit flaky.
Solution:   Add to the list of flaky tests.
2019-10-14 22:26:20 +02:00
03b00476ee patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Problem:    No test for 'ttymouse' set from xterm version response.
Solution:   Test the three possible values.
2019-10-14 22:22:03 +02:00
e3a22cb1ba patch 8.1.2149: crash when running out of memory very early
Problem:    Crash when running out of memory very early.
Solution:   Do not use IObuff when it's NULL. (closes #5052)
2019-10-14 22:01:57 +02:00
6aa7523b96 patch 8.1.2148: no test for right click extending Visual area
Problem:    No test for right click extending Visual area.
Solution:   Add a test. (Dominique Pelle, closes #5018)
2019-10-13 21:01:34 +02:00
53efb18530 patch 8.1.2147: crash when allocating memory fails
Problem:    Crash when allocating memory fails. (Zu-Ming Jiang)
Solution:   Check that 'spellcapcheck' is not NULL. (closes #5048)
2019-10-13 19:49:26 +02:00
1e7b52ad8a patch 8.1.2146: build failure
Problem:    Build failure.
Solution:   Include omitted changed file.
2019-10-13 16:59:08 +02:00
459fd785e4 patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Problem:    Cannot map <C-H> when modifyOtherKeys is enabled.
Solution:   Add the <C-H> mapping twice, both with modifier and as 0x08.  Use
            only the first one when modifyOtherKeys has been detected.
2019-10-13 16:43:39 +02:00
171a921b51 patch 8.1.2144: side effects when using t_ti to enable modifyOtherKeys
Problem:    Side effects when using t_ti to enable modifyOtherKeys.
Solution:   Add t_TI and t_TE.
2019-10-12 21:08:59 +02:00
4facea310c patch 8.1.2143: cannot see each command even when 'verbose' is set
Problem:    Cannot see each command even when 'verbose' is set.
Solution:   List each command when 'verbose' is at least 16.
2019-10-12 20:17:40 +02:00
d1e2f3984a patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Problem:    Some key mappings do not work with modifyOtherKeys.
Solution:   Remove the Shift modifier if it is already included in the key.
2019-10-12 18:22:50 +02:00
e8070987c6 patch 8.1.2141: :tselect has an extra hit-enter prompt
Problem:    :tselect has an extra hit-enter prompt.
Solution:   Do not set need_wait_return when only moving the cursor.
            (closes #5040)
2019-10-12 17:07:06 +02:00
ceba3dd518 patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Problem:    "gk" and "gj" do not work correctly in number column.
Solution:   Allow for a negative "curswant". (Zach Wegner, closes #4969)
2019-10-12 16:12:54 +02:00
18a79a6841 patch 8.1.2139: the modifyOtherKeys codes are not tested
Problem:    The modifyOtherKeys codes are not tested.
Solution:   Add a test case.
2019-10-12 15:36:11 +02:00
4cdbed33e4 patch 8.1.2138: including the build number in the Win32 binary is confusing
Problem:    Including the build number in the Win32 binary is confusing.
Solution:   Only use the patchlevel.
2019-10-12 15:02:47 +02:00
1a4cbb19de patch 8.1.2137: parsing the termresponse is not tested
Problem:    Parsing the termresponse is not tested.
Solution:   Add a first test. (related to #5042)
2019-10-12 13:25:44 +02:00
ec66c41d84 patch 8.1.2136: using freed memory with autocmd from fuzzer
Problem:    using freed memory with autocmd from fuzzer. (Dhiraj Mishra,
            Dominique Pelle)
Solution:   Avoid using "wp" after autocommands. (closes #5041)
2019-10-11 21:19:13 +02:00
00eab7f128 patch 8.1.2135: with modifyOtherKeys Alt-a does not work properly
Problem:    With modifyOtherKeys Alt-a does not work properly.
Solution:   Remove the ALT modifier.  Get multi-byte after applying ALT.
2019-10-10 21:49:28 +02:00
6a0299d8f4 patch 8.1.2134: modifier keys are not always recognized
Problem:    Modifier keys are not always recognized.
Solution:   Handle key codes generated by xterm with modifyOtherKeys set.
            Add this to libvterm so we can debug it.
2019-10-10 21:14:03 +02:00
07282f01da patch 8.1.2133: some tests fail when run as root
Problem:    Some tests fail when run as root.
Solution:   Add CheckNotRoot and use it. (James McCoy, closes #5020)
2019-10-10 16:46:17 +02:00
a129974bc7 patch 8.1.2132: MS-Windows: screen mess when not recognizing insider build
Problem:    MS-Windows: screen mess when not recognizing insider build.
Solution:   Always move the cursor to the first column first. (Nobuhiro
            Takasaki, closes #5036)
2019-10-10 16:36:00 +02:00
c25e702dee patch 8.1.2131: MSVC tests fail
Problem:    MSVC tests fail.
Solution:   Replace backslashes with slashes.
2019-10-10 14:08:26 +02:00
073e779640 patch 8.1.2130: MSVC build fails
Problem:    MSVC build fails.
Solution:   Add the source file name explicitly.
2019-10-10 13:39:08 +02:00
1ac41a5c13 patch 8.1.2129: using hard coded executable path in test
Problem:    Using hard coded executable path in test.
Solution:   Use v:progpath. Use $VIMRUNTIME instead of "runtime". (James
            McCoy, closes #5025)
2019-10-10 13:30:12 +02:00
9326805442 patch 8.1.2128: renamed libvterm sources makes merging difficult
Problem:    Renamed libvterm sources makes merging difficult.
Solution:   Rename back to the original name and only rename the .o files.
            Also clean the libvterm build artifacts. (James McCoy,
            closes #5027)
2019-10-10 13:22:54 +02:00
14c01f8348 patch 8.1.2127: the indent.c file is a bit big
Problem:    The indent.c file is a bit big.
Solution:   Move C-indent code a a new cindent.c file.  Move other
            indent-related code to indent.c. (Yegappan Lakshmanan,
            closes #5031)
2019-10-09 22:53:08 +02:00
6bd1d77067 patch 8.1.2126: viminfo not sufficiently tested
Problem:    Viminfo not sufficiently tested.
Solution:   Add more test cases.  Clean up comments. (Yegappan Lakshmanan,
            closes #5032)
2019-10-09 22:01:25 +02:00
b189295b72 patch 8.1.2125: fnamemodify() fails when repeating :e
Problem:    Fnamemodify() fails when repeating :e.
Solution:   Do not go before the tail. (Rob Pilling, closes #5024)
2019-10-08 23:26:50 +02:00
345f28df54 patch 8.1.2124: ruler is not updated if win_execute() moves cursor
Problem:    Ruler is not updated if win_execute() moves cursor.
Solution:   Update the status line. (closes #5022)
2019-10-08 22:20:35 +02:00
c3e555b22f patch 8.1.2123: parsing CSI sequence is messy
Problem:    Parsing CSI sequence is messy.
Solution:   Generalize parsing a CSI sequence.
2019-10-08 20:15:39 +02:00
fbbd102be0 patch 8.1.2122: cannot build without terminal feature
Problem:    Cannot build without terminal feature.
Solution:   Add #ifdef.
2019-10-07 22:38:58 +02:00
a27e1dcddc patch 8.1.2121: mode is not updated when switching to terminal
Problem:    Mode is not updated when switching to terminal in Insert mode.
Solution:   Redraw the mode when entering a terminal window. (Jason Franklin)
2019-10-07 22:27:36 +02:00
1614a14901 patch 8.1.2120: some MB_ macros are more complicated than necessary
Problem:    Some MB_ macros are more complicated than necessary. (Dominique
            Pelle)
Solution:   Simplify the macros.  Expand inline.
2019-10-06 22:00:13 +02:00
524f3b19ae patch 8.1.2119: memory access error for empty string
Problem:    memory access error for empty string when 'encoding' is a single
            byte encoding.
Solution:   Check for empty string when getting the length. (Dominique Pelle,
            closes #5021, closes #5007)
2019-10-06 20:08:38 +02:00
eb66328bd7 patch 8.1.2118: termcodes test fails when $TERM is "dumb"
Problem:    Termcodes test fails when $TERM is "dumb".
Solution:   Skip the test. (James McCoy, closes #5019)
2019-10-06 12:02:15 +02:00
49474ca122 patch 8.1.2117: CursorLine highlight used while 'cursorline' is off
Problem:    CursorLine highlight used while 'cursorline' is off.
Solution:   Check 'cursorline' is set. (cloes #5017)
2019-10-05 21:57:12 +02:00
1671de3098 patch 8.1.2116: no check for out of memory
Problem:    No check for out of memory.
Solution:   Check for NULL pointer.
2019-10-05 21:35:16 +02:00
2efc44b3f0 patch 8.1.2115: MS-Windows: shell commands fail if &shell contains a space
Problem:    MS-Windows: shell commands fail if &shell contains a space.
Solution:   Use quotes instead of escaping. (closes #4920)
2019-10-05 12:09:32 +02:00
fd00c042af patch 8.1.2114: when a popup is closed with CTRL-C the callback aborts
Problem:    When a popup is closed with CTRL-C the callback aborts.
Solution:   Reset got_int when invoking the callback. (closes #5008)
2019-10-05 11:56:54 +02:00
9ca250855b patch 8.1.2113: ":help expr-!~?" only works after searching
Problem:    ":help expr-!~?" only works after searching.
Solution:   Escape "~" after "expr-". (closes #5015)
2019-10-05 11:30:09 +02:00
4c063dde73 patch 8.1.2112: build number for ConPTY is outdated
Problem:    Build number for ConPTY is outdated.
Solution:   Update to new build number. (Nobuhiro Takasaki, closes #5014)
2019-10-04 21:29:12 +02:00
2a8d3b8997 patch 8.1.2111: viminfo file not sufficiently tested
Problem:    Viminfo file not sufficiently tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes #5009)
2019-10-04 21:20:25 +02:00
e8a7dfedfc patch 8.1.2110: CTRL-C closes two popups instead of one
Problem:    CTRL-C closes two popups instead of one.
Solution:   Reset got_int when the filter consumed the key.
2019-10-03 22:35:52 +02:00
1824f45883 patch 8.1.2109: popup_getoptions() hangs with tab-local popup
Problem:    popup_getoptions() hangs with tab-local popup.
Solution:   Correct pointer name. (Marko Mahnič, closes #5006)
2019-10-02 23:06:46 +02:00
23324a0b35 patch 8.1.2108: cannot close the cmdline window from CmdWinEnter
Problem:    Cannot close the cmdline window from CmdWinEnter. (George Brown)
Solution:   Reset cmdwin_result earlier. (Christian Brabandt, closes #4980)
2019-10-01 17:39:04 +02:00
8617348e21 patch 8.1.2107: various memory leaks reported by asan
Problem:    Various memory leaks reported by asan.
Solution:   Free the memory. (Ozaki Kiichi, closes #5003)
2019-10-01 17:02:16 +02:00
b4367b7fb6 patch 8.1.2106: no tests for dragging the mouse beyond the window
Problem:    No tests for dragging the mouse beyond the window.
Solution:   Add a test. (Dominique Pelle, closes #5004)
2019-10-01 14:19:07 +02:00
2886dcceba patch 8.1.2105: MS-Windows: system() may crash
Problem:    MS-Windows: system() may crash.
Solution:   Do not use "itmp" when it is NULL. (Yasuhiro Matsumoto,
            closes #5005)
2019-10-01 12:10:25 +02:00
792cf5e1be patch 8.1.2104: the normal.c file is too big
Problem:    The normal.c file is too big.
Solution:   Move do_pending_operator() to ops.c. (Yegappan Lakshmanan,
            closes #4999).
2019-09-30 23:12:16 +02:00
18223a592e patch 8.1.2103: wrong error message if "termdebugger" is not executable
Problem:    wrong error message if "termdebugger" is not executable.
Solution:   Check if "termdebugger" is executable and give a clear error
            message. (Ozaki Kiichi, closes #5000)  Fix indents.
2019-09-30 20:47:54 +02:00
d17a57a433 patch 8.1.2102: can't build with GTK and FEAT_GUI_GNOME
Problem:    Can't build with GTK and FEAT_GUI_GNOME. (Tony Mechelynck)
Solution:   Adjust the #ifdef. (Yegappan Lakshmanan)
2019-09-29 20:53:55 +02:00
ac02a638b4 patch 8.1.2101: write_session_file() often defined but not used
Problem:    write_session_file() often defined but not used.
Solution:   Adjust the #ifdef. (Yegappan Lakshmanan, closes #4998)
2019-09-29 19:02:46 +02:00
ee1a2b5a2a patch 8.1.2100: :mksession is not sufficiently tested
Problem:    :mksession is not sufficiently tested.
Solution:   Add more test cases. (Yegappan Lakshmanan, closes #4993)
2019-09-29 14:23:39 +02:00
b7a97ef340 patch 8.1.2099: state() test fails on some Mac systems
Problem:    state() test fails on some Mac systems.
Solution:   Increase the wait time. (closes #4983)
2019-09-28 22:11:56 +02:00
37ac4a531c patch 8.1.2098: mksession test fails on MS-Windows
Problem:    mksession test fails on MS-Windows.
Solution:   Skip testing with backslashes on MS-Windows.
2019-09-28 19:29:04 +02:00
66f0e6c6e2 patch 8.1.2097: :mksession is not sufficiently tested
Problem:    :mksession is not sufficiently tested.
Solution:   Add more test cases. (Yegappan Lakshmanan, closes #4992)
2019-09-28 19:08:45 +02:00
8c96af9c05 patch 8.1.2096: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_COMMENTS.
2019-09-28 19:05:57 +02:00
a893194d91 patch 8.1.2095: leaking memory when getting item from dict
Problem:    Leaking memory when getting item from dict.
Solution:   Also free the key when not evaluating.
2019-09-28 17:25:10 +02:00
473952e852 patch 8.1.2094: the fileio.c file is too big
Problem:    The fileio.c file is too big.
Solution:   Move buf_write() to bufwrite.c. (Yegappan Lakshmanan,
            closes #4990)
2019-09-28 16:30:04 +02:00
9be0e0b9d3 patch 8.1.2093: MS-Windows: system() test fails
Problem:    MS-Windows: system() test fails.
Solution:   Expect CR when using systemlist().
2019-09-28 16:25:00 +02:00
1a61339806 patch 8.1.2092: MS-Windows: redirect in system() does not work
Problem:    MS-Windows: redirect in system() does not work.
Solution:   Handle 'shellxescape' and 'shellxquote' better. (Yasuhiro
            Matsumoto, closes #2054)
2019-09-28 15:51:37 +02:00
0f1c6708fd patch 8.1.2091: double free when memory allocation fails
Problem:    Double free when memory allocation fails. (Zu-Ming Jiang)
Solution:   Use VIM_CLEAR() instead of vim_free(). (closes #4991)
2019-09-28 15:24:00 +02:00
2e47cab715 patch 8.1.2090: not clear why channel log file ends
Problem:    Not clear why channel log file ends.
Solution:   Add a "closing" line.
2019-09-27 23:12:45 +02:00
7b666c7883 patch 8.1.2089: do not get a hint that $TEST_FILTER was active
Problem:    Do not get a hint that $TEST_FILTER was active.
Solution:   Mention $TEST_FILTER if no functions were executed.
2019-09-27 21:25:00 +02:00
383f387d9d patch 8.1.2088: renamed libvterm mouse.c file not in distributed file list
Problem:    Renamed libvterm mouse.c file not in distributed file list.
Solution:   Rename the file in the file list.
2019-09-27 19:35:48 +02:00
5be4ceecea Update runtime files. 2019-09-27 19:34:08 +02:00
a7f6c3cf07 patch 8.1.2087: cannot easily select one test function to execute
Problem:    Cannot easily select one test function to execute.
Solution:   Support the $TEST_FILTER environment variable. (Ozaki Kiichi,
            closes #2695)
2019-09-27 15:34:16 +02:00
38f1eeac3d patch 8.1.2086: missing a few changes for the renamed files
Problem:    Missing a few changes for the renamed files.
Solution:   Rename in a few more places. (Ken Takata)
2019-09-27 14:19:09 +02:00
2313b61257 patch 8.1.2085: MS-Windows: draw error moving cursor over double-cell char
Problem:    MS-Windows: draw error moving cursor over double-cell character.
Solution:   Move the cursor to the left edge if needed. (Nobuhiro Takasaki,
            closes #4986)
2019-09-27 14:14:32 +02:00
5e8e967f25 patch 8.1.2084: Amiga: cannot get the user name
Problem:    Amiga: cannot get the user name.
Solution:   Use getpwuid() if available. (Ola Söder, closes #4985)
2019-09-27 13:38:56 +02:00
ce0fac2897 patch 8.1.2083: multi-byte chars do not work properly with "%.*S" in printf()
Problem:    Multi-byte chars do not work properly with "%.*S" in printf().
Solution:   Use mb_ptr2cells(). Daniel Hahler, closes #4989)
2019-09-27 13:32:06 +02:00
30e8e73506 patch 8.1.2082: some files have a weird name to fit in 8.3 characters
Problem:    Some files have a weird name to fit in 8.3 characters.
Solution:   Use a nicer names.
2019-09-27 13:08:36 +02:00
46a426c9ac patch 8.1.2081: the spell.c file is too big
Problem:    The spell.c file is too big.
Solution:   Move the code for spell suggestions to a separate file. (Yegappan
            Lakshmanan, closes #4988)
2019-09-27 12:41:56 +02:00
d2842ea60b patch 8.1.2080: the terminal API is limited and can't be disabled
Problem:    The terminal API is limited and can't be disabled.
Solution:   Add term_setapi() to set the function prefix. (Ozaki Kiichi,
            closes #2907)
2019-09-26 23:08:54 +02:00
d2c1fb476d patch 8.1.2079: popup window test fails without +terminal
Problem:    Popup window test fails without +terminal.
Solution:   Check for the +terminal feature.
2019-09-25 23:06:40 +02:00
f21118e4a9 patch 8.1.2078: build error with +textprop but without +terminal
Problem:    Build error with +textprop but without +terminal. (Tony Mechelynck)
Solution:   Add #ifdef.
2019-09-25 22:45:45 +02:00
4aea03eb87 patch 8.1.2077: the ops.c file is too big
Problem:    The ops.c file is too big.
Solution:   Move code for dealing with registers to a new file. (Yegappan
            Lakshmanan, closes #4982)
2019-09-25 22:37:17 +02:00
e0d749a496 patch 8.1.2076: crash when trying to put a terminal in a popup window
Problem:    Crash when trying to put a terminal buffer in a popup window.
Solution:   Check for NULL buffer.  Do not allow putting a terminal in a popup
            window.
2019-09-25 22:14:48 +02:00
101e99207f patch 8.1.2075: get many log messages when waiting for a typed character
Problem:    Get many log messages when waiting for a typed character.
Solution:   Do not repeat the repeated messages when nothing happens.
2019-09-25 21:43:11 +02:00
0d0c3ca007 patch 8.1.2074: test for SafeState autocommand is a bit flaky
Problem:    Test for SafeState autocommand is a bit flaky.
Solution:   Add to list of flaky tests.
2019-09-25 21:16:15 +02:00
010ee9657a patch 8.1.2073: when editing a buffer 'colorcolumn' may not work
Problem:    When editing a buffer 'colorcolumn' may not work.
Solution:   Set the buffer before copying option values. Call
            check_colorcolumn() after copying window options.
2019-09-25 20:37:36 +02:00
03ac52fc02 patch 8.1.2072: "gk" moves to start of line instead of upwards
Problem:    "gk" moves to start of line instead of upwards.
Solution:   Fix off-by-one error. (Christian Brabandt, closes #4969)
2019-09-24 22:47:46 +02:00
053f712ef2 patch 8.1.2071: when 'wincolor' is set text property changes highlighting
Problem:    When 'wincolor' is set text property changes highlighting. (Andy
            Stewart)
Solution:   Fix combining colors. (closes #4968)
2019-09-23 22:17:15 +02:00
b8ff5c271e patch 8.1.2070: mouse code is spread out
Problem:    Mouse code is spread out.
Solution:   Move mouse terminal code parsing to mouse.c. (Yegappan Lakshmanan,
            closes #4966)
2019-09-23 21:16:54 +02:00
0f6629a08a patch 8.1.2069: test for SafeStateAgain may still fail
Problem:    Test for SafeStateAgain may still fail.
Solution:   Send another message to trigger SafeStateAgain.
2019-09-22 23:24:13 +02:00
513537bfff patch 8.1.2068: test for SafeState and SafeStateAgain may fail
Problem:    Test for SafeState and SafeStateAgain may fail.
Solution:   Accept more possible responses
2019-09-22 23:03:58 +02:00
cadbe1b1fb patch 8.1.2067: no tests for SafeState and SafeStateAgain
Problem:    No tests for SafeState and SafeStateAgain.
Solution:   Add tests.
2019-09-22 21:50:09 +02:00
c258549032 patch 8.1.2066: no tests for state()
Problem:    No tests for state().
Solution:   Add tests.  Clean up some feature checks.  Make "a" flag work.
2019-09-22 21:29:53 +02:00
910c378d93 patch 8.1.2065: compiler warning building non-GUI with MinGW.
Problem:    Compiler warning building non-GUI with MinGW.
Solution:   Adjust #ifdefs. (Yegappan Lakshmanan, closes #4964)
2019-09-22 14:11:50 +02:00
bd67aac279 patch 8.1.2064: MS-Windows: compiler warnings for unused arguments
Problem:    MS-Windows: compiler warnings for unused arguments.
Solution:   Add UNUSED. (Yegappan Lakshmanan, closes #4963)
2019-09-21 23:09:04 +02:00
1e82a784ac patch 8.1.2063: some tests fail when +balloon_eval_term is missing
Problem:    Some tests fail when +balloon_eval_term is missing but
            _balloon_eval is present. (Dominique Pelle)
Solution:   Check the right feature in the test. (closes #4962)
2019-09-21 22:57:06 +02:00
b20b9e14dd patch 8.1.2062: the mouse code is spread out
Problem:    The mouse code is spread out.
Solution:   Move all the mouse code to mouse.c. (Yegappan Lakshmanan,
            closes #4959)
2019-09-21 20:48:04 +02:00
4d5c12626c patch 8.1.2061: MS-Windows GUI: ":sh" crashes when trying to use a terminal
Problem:    MS-Windows GUI: ":sh" crashes when trying to use a terminal.
Solution:   Check for a NULL command. (Yasuhiro Matsumoto, closes #4958)
2019-09-20 17:20:02 +02:00
bffba7f704 patch 8.1.2060: "precedes" in 'listchars' not used properly
Problem:    "precedes" in 'listchars' not used properly.
Solution:   Correctly handle the "precedes" char in list mode for long lines.
            (Christian Brabandt, closes #4953)
2019-09-20 17:00:17 +02:00
589edb3404 Updte runtime files 2019-09-20 14:38:13 +02:00
56ebbabea1 patch 8.1.2059: fix for "x" deleting a fold has side effects
Problem:    Fix for "x" deleting a fold has side effects.
Solution:   Fix it where the fold is included.
2019-09-20 13:40:14 +02:00
4bd782339e patch 8.1.2058: function for ex command is named inconsistently
Problem:    Function for ex command is named inconsistently.
Solution:   Rename do_marks() to ex_marks().
2019-09-19 23:21:55 +02:00
7528d1f6b5 patch 8.1.2057: the screen.c file is much too big
Problem:    The screen.c file is much too big.
Solution:   Split it in three parts. (Yegappan Lakshmanan, closes #4943)
2019-09-19 23:06:20 +02:00
cd67059c0c patch 8.1.2056: "make test" for indent files doesn't cause make to fail
Problem:    "make test" for indent files doesn't cause make to fail.
Solution:   Exit the script with ":cquit". (Daniel Hahler, closes #4949)
2019-09-18 22:14:43 +02:00
181d4f58cc patch 8.1.2055: not easy to jump to function line from profile
Problem:    Not easy to jump to function line from profile.
Solution:   Use "file:99" instead of "file line 99" so that "gf" works.
            (Daniel Hahler, closes #4951)
2019-09-18 22:04:56 +02:00
cebfcffa40 patch 8.1.2054: compiler test for Perl may fail
Problem:    Compiler test for Perl may fail.
Solution:   Accept any error line number. (James McCoy, closes #4944)
2019-09-18 21:42:38 +02:00
d103ee7843 patch 8.1.2053: SafeStateAgain not triggered if callback uses feedkeys()
Problem:    SafeStateAgain not triggered if callback uses feedkeys().
Solution:   Check for safe state in the input loop.  Make log messages easier
            to find. Add 'S' flag to state().
2019-09-18 21:15:31 +02:00
7a9bd7c1e0 patch 8.1.2052: using "x" before a closed fold may delete that fold
Problem:    Using "x" before a closed fold may delete that fold.
Solution:   Do not translate 'x' do "dl". (Christian Brabandt, closes #4927)
2019-09-17 22:42:55 +02:00
705918f9f7 patch 8.1.2051: double-click test is a bit flaky
Problem:    Double-click test is a bit flaky.
Solution:   Correct entry in list of flaky tests.
2019-09-17 21:27:49 +02:00
7e0f462db5 patch 8.1.2050: popup window test fails in some configurations
Problem:    Popup window test fails in some configurations. (James McCoy)
Solution:   Clear the command line.
2019-09-17 21:23:39 +02:00
397c6a1438 patch 8.1.2049: cannot build tiny version
Problem:    Cannot build tiny version.
Solution:   Add #ifdefs.
2019-09-17 20:54:31 +02:00
37d1807a80 patch 8.1.2048: not clear why SafeState and SafeStateAgain are not triggered
Problem:    Not clear why SafeState and SafeStateAgain are not triggered.
Solution:   Add log statements.
2019-09-17 20:28:38 +02:00
0e57dd859e patch 8.1.2047: cannot check the current state
Problem:    Cannot check the current state.
Solution:   Add the state() function.
2019-09-16 22:56:03 +02:00
69198cb8c0 patch 8.1.2046: SafeState may be triggered at the wrong moment
Problem:    SafeState may be triggered at the wrong moment.
Solution:   Move it up higher to after where messages are processed.  Add a
            SafeStateAgain event to tigger there.
2019-09-16 21:58:13 +02:00
dac1347b4d patch 8.1.2045: the option.c file is too big
Problem:    The option.c file is too big.
Solution:   Split off the code dealing with strings. (Yegappan Lakshmanan,
            closes #4937)
2019-09-16 21:06:21 +02:00
8aeec40207 patch 8.1.2044: no easy way to process postponed work
Problem:    No easy way to process postponed work. (Paul Jolly)
Solution:   Add the SafeState autocommand event.
2019-09-15 23:02:04 +02:00
ea8dcf8346 patch 8.1.2043: not sufficient testing for quoted numbers
Problem:    Not sufficient testing for quoted numbers.
Solution:   Add a few more test cases.
2019-09-15 21:12:22 +02:00
9c658c9eac patch 8.1.2042: the evalfunc.c file is too big
Problem:    The evalfunc.c file is too big.
Solution:   Move getchar() and parse_queued_messages() to getchar.c.
2019-09-15 21:00:54 +02:00
248fdb3332 patch 8.1.2041: no test for diff mode with syntax highlighting
Problem:    No test for diff mode with syntax highlighting.
Solution:   Add a test case.
2019-09-15 19:31:28 +02:00
e00fdf35d0 patch 8.1.2040: no highlighting of current line in quickfix window
Problem:    No highlighting of current line in quickfix window.
Solution:   Combine with line_attr.
2019-09-15 19:09:42 +02:00
8ae54375ca patch 8.1.2039: character from 'showbreak' does not use 'wincolor'
Problem:    Character from 'showbreak' does not use 'wincolor'. (Nick Jensen)
Solution:   Mix with 'wincolor'. (closes #4938)
2019-09-15 18:11:16 +02:00
af91438338 patch 8.1.2038: has('vimscript-4') is always 0
Problem:    has('vimscript-4') is always 0.
Solution:   Add "vimscript-4" to the feature table. (Naruhiko Nishino,
            closes #4941)
2019-09-15 17:49:10 +02:00
a046b37c22 patch 8.1.2037: can call win_gotoid() in cmdline window
Problem:    Can call win_gotoid() in cmdline window.
Solution:   Disallow switching windows. (Yasuhiro Matsumoto, closes #4940)
2019-09-15 17:26:07 +02:00
1ac90b4fa6 patch 8.1.2036: the str2nr() tests fail
Problem:    The str2nr() tests fail.
Solution:   Add missing part of patch.
2019-09-15 14:49:52 +02:00
60a8de28d1 patch 8.1.2035: recognizing octal numbers is confusing
Problem:    Recognizing octal numbers is confusing.
Solution:   Introduce scriptversion 4: do not use octal and allow for single
            quote inside numbers.
2019-09-15 14:33:22 +02:00
50bf7ce0c9 patch 8.1.2034: dark them of GTK 3 not supported
Problem:    Dark them of GTK 3 not supported.
Solution:   Add the "d" flag in 'guioptions'. (Jonathan Conder, closes #4934)
2019-09-15 13:17:00 +02:00
0571f3d6f9 patch 8.1.2033: cannot build with tiny features
Problem:    Cannot build with tiny features.
Solution:   Add #ifdef.
2019-09-14 22:33:47 +02:00
076d98839c patch 8.1.2032: scrollbar thumb wrong in popup window
Problem:    Scrollbar thumb wrong in popup window.
Solution:   Adjust thumb size and position when scrolled.
2019-09-14 22:23:29 +02:00
5babc6e858 patch 8.1.2031: cursor position wrong when resizing and using conceal
Problem:    Cursor position wrong when resizing and using conceal.
Solution:   Set the flags that the cursor position is valid when setting the
            row and column during redrawing. (closes #4931)
2019-09-14 21:55:51 +02:00
997d42427e patch 8.1.2030: tests fail when build with normal features and terminal
Problem:    Tests fail when build with normal features and terminal.
            (Dominique Pelle)
Solution:   Disable tests that won't work. (closes #4932)
2019-09-14 21:23:40 +02:00
017ba07fa2 patch 8.1.2029: cannot control 'cursorline' highlighting well
Problem:    Cannot control 'cursorline' highlighting well.
Solution:   Add "screenline". (Christian Brabandt, closes #4933)
2019-09-14 21:01:23 +02:00
d9b0d83b13 patch 8.1.2028: options test script does not work
Problem:    Options test script does not work.
Solution:   Use optiondefs.h for input.
2019-09-14 15:46:32 +02:00
57da698168 patch 8.1.2027: MS-Windows: problem with ambiwidth characters
Problem:    MS-Windows: problem with ambiwidth characters.
Solution:   handle ambiguous width characters in ConPTY on Windows 10 (1903).
            (Nobuhiro Takasaki, closes #4411)
2019-09-13 22:30:11 +02:00
dbec74907e patch 8.1.2026: possibly using uninitialized memory
Problem:    Possibly using uninitialized memory.
Solution:   Check if "dict" is NULL. (closes #4925)
2019-09-13 22:16:21 +02:00
1946de140a patch 8.1.2025: MS-Windows: Including shlguid.h causes problems for msys2
Problem:    MS-Windows: Including shlguid.h causes problems for msys2.
Solution:   Do not include shlguid.h. (closes #4913)
2019-09-13 22:03:19 +02:00
9283f92008 patch 8.1.2024: delete call commented out for debugging
Problem:    Delete call commented out for debugging.
Solution:   Restore the delete call. (Christian Brabandt)
2019-09-13 21:48:34 +02:00
dcb2b9cb08 patch 8.1.2023: no test for synIDattr() returning "strikethrough"
Problem:    No test for synIDattr() returning "strikethrough".
Solution:   Extend the synIDattr() test. (Jaskaran Singh, closes #4929)
2019-09-13 21:26:39 +02:00
0eddca40a6 patch 8.1.2022: the option.c file is too big
Problem:    The option.c file is too big.
Solution:   Move option definitions to a separate file. (Yegappan Lakshmanan,
            closes #4918)
2019-09-12 22:26:43 +02:00
8fe1000e9c Update runtime files 2019-09-11 22:56:44 +02:00
840d16fd36 patch 8.1.2021: some global functions can be local to the file
Problem:    Some global functions can be local to the file.
Solution:   Add "static". (Yegappan Lakshmanan, closes #4917)
2019-09-10 21:27:18 +02:00
d20dcb3d01 patch 8.1.2020: it is not easy to change the window layout
Problem:    It is not easy to change the window layout.
Solution:   Add win_splitmove(). (Andy Massimino, closes #4561)
2019-09-10 21:22:58 +02:00
410e98a70b patch 8.1.2019: 'cursorline' always highlights the whole line
Problem:    'cursorline' always highlights the whole line.
Solution:   Add 'cursorlineopt' to specify what is highlighted.
            (closes #4693)
2019-09-09 22:05:49 +02:00
e5fbd73930 patch 8.1.2018: using freed memory when out of memory and displaying message
Problem:    Using freed memory when out of memory and displaying message.
Solution:   Make a copy of the message first.
2019-09-09 20:04:13 +02:00
96e38a86a7 patch 8.1.2017: cannot execute commands after closing the cmdline window
Problem:    Cannot execute commands after closing the cmdline window.
Solution:   Also trigger BufEnter and WinEnter. (closes #4762)
2019-09-09 18:35:33 +02:00
adbde3fbed patch 8.1.2016: terminal altscreen test now fails on MS-Windows
Problem:    Terminal altscreen test now fails on MS-Windows.
Solution:   Skip the test on MS-Windows
2019-09-08 22:57:14 +02:00
bf9a3b0164 patch 8.1.2015: terminal altscreen test still fails sometimes
Problem:    Terminal altscreen test still fails sometimes.
Solution:   Write the escape sequence in a file.
2019-09-08 22:35:48 +02:00
b9c79cf5cc patch 8.1.2014: terminal altscreen test fails sometimes
Problem:    Terminal altscreen test fails sometimes.
Solution:   Use WaitFor().
2019-09-08 22:09:52 +02:00
f92e58cadb patch 8.1.2013: more functions can be used as methods
Problem:    More functions can be used as methods.
Solution:   Make various functions usable as a method.
2019-09-08 21:51:41 +02:00
7ee80f7661 patch 8.1.2012: more functions can be used as methods
Problem:    More functions can be used as methods.
Solution:   Make terminal functions usable as a method.  Fix term_getattr().
2019-09-08 20:55:06 +02:00
ce90e36f59 patch 8.1.2011: more functions can be used as methods
Problem:    More functions can be used as methods.
Solution:   Make various functions usable as a method.  Make the window
            command test faster.
2019-09-08 18:58:44 +02:00
9490b9a61c patch 8.1.2010: new file uses old style comments
Problem:    New file uses old style comments.
Solution:   Change to new style comments. (Yegappan Lakshmanan, closes #4910)
2019-09-08 17:20:12 +02:00
3d2a3cbce8 patch 8.1.2009: cursorline highlighting not updated in popup window
Problem:    Cursorline highlighting not updated in popup window. (Marko
            Mahnič)
Solution:   Check if the cursor position changed. (closes #4912)
2019-09-08 17:12:01 +02:00
4544bd2f24 patch 8.1.2008: error for invalid range when using listener and undo
Problem:    Error for invalid range when using listener and undo. (Paul Jolly)
Solution:   Do not change the cursor before the lines are restored.
            (closes #4908)
2019-09-08 15:27:21 +02:00
523 changed files with 72413 additions and 54995 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
src/testdir/test42.in diff

1
.gitignore vendored
View File

@ -77,6 +77,7 @@ src/testdir/messages
src/testdir/viminfo
src/testdir/opt_test.vim
runtime/indent/testdir/*.out
runtime/indent/testdir/*.fail
src/memfile_test
src/json_test
src/message_test

View File

@ -142,7 +142,10 @@ script:
"${SRCDIR}"/vim --not-a-term -u NONE -S "${SRCDIR}"/testdir/if_ver-2.vim -c quit > /dev/null
cat if_ver.txt
fi
- do_test make ${SHADOWOPT} ${TEST} && FOLD_MARKER=travis_fold
- >
do_test make ${SHADOWOPT} ${TEST} &&
make -C runtime/doc vimtags VIMEXE=../../"${SRCDIR}"/vim &&
FOLD_MARKER=travis_fold
- echo -en "${FOLD_MARKER}:end:test\\r\\033[0K"

View File

@ -65,6 +65,9 @@ If the maintainer does not respond, contact the vim-dev maillist.
# Translations
Translations of this CONTRIBUTING file:
[Korean](https://github.com/cjw1359/opensource/blob/master/Vim/CONTRIBUTING_ko.md)
Translating messages and runtime files is very much appreciated! These things
can be translated:
* Messages in Vim, see [src/po/README.txt][1]

View File

@ -4,6 +4,7 @@
# source files for all source archives
SRC_ALL = \
.gitignore \
.gitattributes \
.hgignore \
.lgtm.yml \
.travis.yml \
@ -21,9 +22,11 @@ SRC_ALL = \
src/blob.c \
src/blowfish.c \
src/buffer.c \
src/bufwrite.c \
src/change.c \
src/channel.c \
src/charset.c \
src/cindent.c \
src/cmdexpand.c \
src/cmdhist.c \
src/crypt.c \
@ -32,6 +35,8 @@ SRC_ALL = \
src/dict.c \
src/diff.c \
src/digraph.c \
src/drawline.c \
src/drawscreen.c \
src/edit.c \
src/eval.c \
src/evalbuffer.c \
@ -78,6 +83,7 @@ SRC_ALL = \
src/message_test.c \
src/misc1.c \
src/misc2.c \
src/mouse.c \
src/move.c \
src/mysign \
src/nbdebug.c \
@ -87,7 +93,9 @@ SRC_ALL = \
src/ops.c \
src/option.c \
src/option.h \
src/popupmnu.c \
src/optiondefs.h \
src/optionstr.c \
src/popupmenu.c \
src/popupwin.c \
src/profiler.c \
src/quickfix.c \
@ -95,6 +103,7 @@ SRC_ALL = \
src/regexp_bt.c \
src/regexp_nfa.c \
src/regexp.h \
src/register.c \
src/scriptfile.c \
src/screen.c \
src/search.c \
@ -105,6 +114,7 @@ SRC_ALL = \
src/spell.c \
src/spell.h \
src/spellfile.c \
src/spellsuggest.c \
src/structs.h \
src/syntax.c \
src/tag.c \
@ -179,9 +189,11 @@ SRC_ALL = \
src/proto/blob.pro \
src/proto/blowfish.pro \
src/proto/buffer.pro \
src/proto/bufwrite.pro \
src/proto/change.pro \
src/proto/channel.pro \
src/proto/charset.pro \
src/proto/cindent.pro \
src/proto/cmdexpand.pro \
src/proto/cmdhist.pro \
src/proto/crypt.pro \
@ -190,6 +202,8 @@ SRC_ALL = \
src/proto/dict.pro \
src/proto/diff.pro \
src/proto/digraph.pro \
src/proto/drawline.pro \
src/proto/drawscreen.pro \
src/proto/edit.pro \
src/proto/eval.pro \
src/proto/evalbuffer.pro \
@ -225,16 +239,19 @@ SRC_ALL = \
src/proto/message.pro \
src/proto/misc1.pro \
src/proto/misc2.pro \
src/proto/mouse.pro \
src/proto/move.pro \
src/proto/netbeans.pro \
src/proto/normal.pro \
src/proto/ops.pro \
src/proto/option.pro \
src/proto/popupmnu.pro \
src/proto/optionstr.pro \
src/proto/popupmenu.pro \
src/proto/popupwin.pro \
src/proto/profiler.pro \
src/proto/quickfix.pro \
src/proto/regexp.pro \
src/proto/register.pro \
src/proto/scriptfile.pro \
src/proto/screen.pro \
src/proto/search.pro \
@ -244,6 +261,7 @@ SRC_ALL = \
src/proto/sound.pro \
src/proto/spell.pro \
src/proto/spellfile.pro \
src/proto/spellsuggest.pro \
src/proto/syntax.pro \
src/proto/tag.pro \
src/proto/term.pro \
@ -283,7 +301,7 @@ SRC_ALL = \
src/libvterm/src/parser.c \
src/libvterm/src/pen.c \
src/libvterm/src/rect.h \
src/libvterm/src/termscreen.c \
src/libvterm/src/screen.c \
src/libvterm/src/state.c \
src/libvterm/src/unicode.c \
src/libvterm/src/utf8.h \
@ -383,7 +401,6 @@ SRC_UNIX = \
src/gui_xmebwp.h \
src/gui_x11.c \
src/gui_x11_pm.h \
src/hangulin.c \
src/if_xcmdsrv.c \
src/link.sh \
src/installman.sh \
@ -403,7 +420,6 @@ SRC_UNIX = \
src/proto/gui_motif.pro \
src/proto/gui_xmdlg.pro \
src/proto/gui_x11.pro \
src/proto/hangulin.pro \
src/proto/if_xcmdsrv.pro \
src/proto/os_unix.pro \
src/proto/pty.pro \
@ -504,7 +520,7 @@ SRC_DOS = \
src/testdir/Make_dos.mak \
src/testdir/Make_ming.mak \
src/testdir/dos.vim \
src/uninstal.c \
src/uninstall.c \
src/vim.def \
src/vim.rc \
src/vimio.h \
@ -519,7 +535,7 @@ SRC_DOS = \
nsis/gvim_version.nsh \
nsis/README.txt \
nsis/lang/*.nsi \
uninstal.txt \
uninstall.txt \
src/VisVim/Commands.cpp \
src/VisVim/Commands.h \
src/VisVim/DSAddIn.cpp \
@ -645,6 +661,7 @@ RT_ALL = \
runtime/doc/*.txt \
runtime/doc/Makefile \
runtime/doc/doctags.c \
runtime/doc/doctags.vim \
runtime/doc/test_urls.vim \
runtime/doc/vim.1 \
runtime/doc/evim.1 \
@ -839,7 +856,7 @@ BIN_AMI = \
# files for DOS binary (also in extra archive)
BIN_DOS = \
README_bindos.txt \
uninstal.txt \
uninstall.txt \
# files for Win32 OLE binary (also in extra archive)
BIN_OLE = \

View File

@ -165,7 +165,7 @@ MINOR = 1
# xxd/xxd.exe to xxdw32.exe
# vim.pdb to vimw32.pdb
# install.exe to installw32.exe
# uninstal.exe to uninstalw32.exe
# uninstall.exe to uninstallw32.exe
# Win32 GUI version build:
# - > cd src
# > nmake -f Make_mvc.mak GUI=yes
@ -175,7 +175,7 @@ MINOR = 1
# - move "gvim.exe" to here (otherwise the OLE version will overwrite it).
# - Move gvim.pdb to here.
# - Copy "GvimExt/gvimext.dll" to here.
# - Delete vimrun.exe, install.exe and uninstal.exe.
# - Delete vimrun.exe, install.exe and uninstall.exe.
# Win32 GUI version with OLE, PERL, Ruby, TCL, PYTHON and dynamic IME:
# - Install the interfaces you want, see src/INSTALLpc.txt
# Adjust bigvim.bat to match the version of each interface you want.
@ -188,7 +188,7 @@ MINOR = 1
# - check the output.
# - Rename "gvim.exe" to "gvim_ole.exe".
# - Rename gvim.pdb to "gvim_ole.pdb".
# - Delete install.exe and uninstal.exe.
# - Delete install.exe and uninstall.exe.
# Create the archives:
# - Copy all the "*.exe" files to where this Makefile is.
# - Copy all the "*.pdb" files to where this Makefile is.
@ -197,7 +197,7 @@ MINOR = 1
# NSIS self installing exe:
# - To get NSIS see http://nsis.sourceforge.net
# - Make sure gvim_ole.exe, vimw32.exe, installw32.exe,
# uninstalw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
# uninstallw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
# above.
# - copy these files (get them from a binary archive or build them):
# gvimext.dll in src/GvimExt
@ -518,7 +518,7 @@ dosbin_gvim: dist no_title.vim dist/$(COMMENT_GVIM)
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
mkdir dist/vim/$(VIMRTDIR)/GvimExt32
cp gvimext.dll dist/vim/$(VIMRTDIR)/GvimExt32/gvimext.dll
mkdir dist/vim/$(VIMRTDIR)/GvimExt64
@ -539,7 +539,7 @@ dosbin_w32: dist no_title.vim dist/$(COMMENT_W32)
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
cd dist && zip -9 -rD -z vim$(VERSION)w32.zip vim <$(COMMENT_W32)
cp vimw32.pdb dist/vim$(VERSION)w32.pdb
@ -557,7 +557,7 @@ dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
cp gvimext.dll dist/vim/$(VIMRTDIR)/gvimext.dll
cp README_ole.txt dist/vim/$(VIMRTDIR)
cp src/VisVim/VisVim.dll dist/vim/$(VIMRTDIR)/VisVim.dll

View File

@ -7,6 +7,7 @@
[![Language Grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/vim/vim.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/vim/vim/context:cpp)
[![Debian CI](https://badges.debian.net/badges/debian/testing/vim/version.svg)](https://buildd.debian.org/vim)
[![Packages](https://repology.org/badge/tiny-repos/vim.svg)](https://repology.org/metapackage/vim)
For translations of this README see the end.
## What is Vim? ##
@ -29,7 +30,6 @@ almost all flavours of UNIX. Porting to other systems should not be very
difficult. Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me, Amiga
DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
## Distribution ##
You can often use your favorite package manager to install Vim. On Mac and
@ -141,3 +141,8 @@ Send any other comments, patches, flowers and suggestions to:
This is `README.md` for version 8.1 of Vim: Vi IMproved.
## Translations of this README ##
[Korean](https://github.com/cjw1359/opensource/blob/master/Vim/README_ko.md)

View File

@ -11,8 +11,8 @@ Getting the source to z/OS:
First get the source code in one big tar file and ftp it a binary to z/OS. If
the tar file is initially compressed with gzip (tar.gz) or bzip2 (tar.bz2)
uncompress it on your PC, as this tools are (most likely) not available on the
mainframe.
uncompress it on your PC, as these tools are (most likely) not available on
the mainframe.
To reduce the size of the tar file you might compress it into a zip file. On
z/OS Unix you might have the command "jar" from java to uncompress a zip. Use:
@ -82,8 +82,8 @@ WARNING: This instruction was not tested with Vim 7.4 or later.
There are two ways for building VIM with X11 support. The first way is simple
and results in a big executable (~13 Mb), the second needs a few additional
steps and results in a much smaller executable (~4.5 Mb). This examples assume
you want Motif.
steps and results in a much smaller executable (~4.5 Mb). These examples
assume you want Motif.
The easy way:
$ export CC=cc

View File

@ -14,7 +14,7 @@ To build the installable .exe:
gvim.exe (the OLE version),
vimrun.exe,
install.exe,
uninstal.exe,
uninstall.exe,
tee/tee.exe,
xxd/xxd.exe,

View File

@ -341,13 +341,13 @@ Section "$(str_section_exe)" id_section_exe
File ${VIMSRC}\vim${BIT}.dll
!endif
File /oname=install.exe ${VIMSRC}\installw32.exe
File /oname=uninstal.exe ${VIMSRC}\uninstalw32.exe
File /oname=uninstall.exe ${VIMSRC}\uninstallw32.exe
File ${VIMSRC}\vimrun.exe
File /oname=tee.exe ${VIMSRC}\teew32.exe
File /oname=xxd.exe ${VIMSRC}\xxdw32.exe
File ..\vimtutor.bat
File ..\README.txt
File ..\uninstal.txt
File ..\uninstall.txt
File ${VIMRT}\*.vim
File ${VIMRT}\rgb.txt
@ -955,7 +955,7 @@ Section "un.$(str_unsection_register)" id_unsection_register
# delete the context menu entry and batch files
DetailPrint "$(str_msg_unregistering)"
nsExec::Exec "$0\uninstal.exe -nsis"
nsExec::Exec "$0\uninstall.exe -nsis"
Pop $3
# We may have been put to the background when uninstall did something.

280
nsis/lang/serbian.nsi Normal file
View File

@ -0,0 +1,280 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# serbian.nsi: Serbian language strings for gvim NSIS installer.
#
# Locale ID : 3098
# fileencoding : UTF-8
# Author : Ivan Pešić
!insertmacro MUI_LANGUAGE "Српски"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_SERBIAN} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_SERBIAN} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_SERBIAN} \
# "Destination Folder (Must end with $\"vim$\")"
LangString str_show_readme ${LANG_SERBIAN} \
"Прикажи ПРОЧИТАЈМЕ када се заврши инсталација"
# Install types:
LangString str_type_typical ${LANG_SERBIAN} \
"Типична"
LangString str_type_minimal ${LANG_SERBIAN} \
"Минимална"
LangString str_type_full ${LANG_SERBIAN} \
"Пуна"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_SERBIAN} \
"Уклањање постојећ(е/их) верзиј(е/а)"
LangString str_desc_old_ver ${LANG_SERBIAN} \
"Уклања постојећ(у/е) Vim верзииј(у/е) из вашег система."
LangString str_section_exe ${LANG_SERBIAN} \
"Vim ГКИ и фајлови потребни за извршавање"
LangString str_desc_exe ${LANG_SERBIAN} \
"Vim ГКИ извршни фајлови и фајлови потребни током извршавања. Ова компонента је неопходна."
LangString str_section_console ${LANG_SERBIAN} \
"Vim конзолни програм"
LangString str_desc_console ${LANG_SERBIAN} \
"Конзолна верзија програма Vim (vim.exe)."
LangString str_section_batch ${LANG_SERBIAN} \
"Креирај .bat фајлове"
LangString str_desc_batch ${LANG_SERBIAN} \
"Креира у Windows директоријуму .bat фајлове за Vim варијанте \
у циљу коришћења из командне линије."
LangString str_group_icons ${LANG_SERBIAN} \
"Креирај иконе за Vim"
LangString str_desc_icons ${LANG_SERBIAN} \
"Креира иконе за Vim на различитим местима, како би се олакшао приступ."
LangString str_section_desktop ${LANG_SERBIAN} \
"На радној површини"
LangString str_desc_desktop ${LANG_SERBIAN} \
"Креира иконе за gVim извршне фајлове на радној површини."
LangString str_section_start_menu ${LANG_SERBIAN} \
"У фасцикли Програми унутар Старт менија"
LangString str_desc_start_menu ${LANG_SERBIAN} \
"Додаје Vim у фолдер Програми Старт менија."
#LangString str_section_quick_launch ${LANG_SERBIAN} \
# "In the Quick Launch Bar"
#LangString str_desc_quick_launch ${LANG_SERBIAN} \
# "Add Vim shortcut in the quick launch bar."
LangString str_section_edit_with ${LANG_SERBIAN} \
"Додај Vim контекстни мени"
LangString str_desc_edit_with ${LANG_SERBIAN} \
"Додаје Vim у $\"Отвори помоћу...$\" листу контекстног менија."
#LangString str_section_edit_with32 ${LANG_SERBIAN} \
# "32-bit Version"
#LangString str_desc_edit_with32 ${LANG_SERBIAN} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 32-bit applications."
#LangString str_section_edit_with64 ${LANG_SERBIAN} \
# "64-bit Version"
#LangString str_desc_edit_with64 ${LANG_SERBIAN} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 64-bit applications."
LangString str_section_vim_rc ${LANG_SERBIAN} \
"Креирај Подразумевану конфигурацију"
LangString str_desc_vim_rc ${LANG_SERBIAN} \
"Креира подразумевани конфиг фајл (_vimrc) ако неки већ не постоји."
LangString str_group_plugin ${LANG_SERBIAN} \
"Креира директоријуме додатака"
LangString str_desc_plugin ${LANG_SERBIAN} \
"Креира директоријуме додатака. Ови директоријуми омогућавају проширење програма Vim \
убацивањем фајла у директоријум."
LangString str_section_plugin_home ${LANG_SERBIAN} \
"Приватне"
LangString str_desc_plugin_home ${LANG_SERBIAN} \
"Креира директоријуме додатака у HOME директоријуму."
LangString str_section_plugin_vim ${LANG_SERBIAN} \
"Дељене"
LangString str_desc_plugin_vim ${LANG_SERBIAN} \
"Креира директоријуме додатака у Vim инсталационом директоријуму, користе их сви \
на систему."
LangString str_section_vis_vim ${LANG_SERBIAN} \
"VisVim проширење"
LangString str_desc_vis_vim ${LANG_SERBIAN} \
"VisVim проширење за Microsoft Visual Studio интеграцију."
LangString str_section_nls ${LANG_SERBIAN} \
"Подршка за домаћи језик"
LangString str_desc_nls ${LANG_SERBIAN} \
"Инсталира фајлове за домаћу језичку подршку."
LangString str_unsection_register ${LANG_SERBIAN} \
"Поништи регистрацију Vim"
LangString str_desc_unregister ${LANG_SERBIAN} \
"Поништава регистрацију програма Vim на систему."
LangString str_unsection_exe ${LANG_SERBIAN} \
"Уклони Vim извршне фајлове/фајлове потребне у време извршавања"
LangString str_desc_rm_exe ${LANG_SERBIAN} \
"Уклања све Vim извршне фајлове и оне потребне у време извршавања."
LangString str_ungroup_plugin ${LANG_SERBIAN} \
"Укони директоријуме додатака"
LangString str_desc_rm_plugin ${LANG_SERBIAN} \
"Уклања директоријуме додатака ако су празни."
LangString str_unsection_plugin_home ${LANG_SERBIAN} \
"Приватне"
LangString str_desc_rm_plugin_home ${LANG_SERBIAN} \
"Уклања директоријуме додатака из HOME директоријума."
LangString str_unsection_plugin_vim ${LANG_SERBIAN} \
"Дељене"
LangString str_desc_rm_plugin_vim ${LANG_SERBIAN} \
"Уклања директоријуме додатака из Vim инсталациониг директоријума."
LangString str_unsection_rootdir ${LANG_SERBIAN} \
"Уклони Vim корени директоријум"
LangString str_desc_rm_rootdir ${LANG_SERBIAN} \
"Уклања Vim корени директоријум. Он садржи ваше Vim конфигурационе фајлове!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_SERBIAN} \
# "Found $vim_old_ver_count Vim versions on your system.$\r$\n\
# This installer can only handle ${VIM_MAX_OLD_VER} versions \
# at most.$\r$\n\
# Please remove some versions and start again."
#LangString str_msg_invalid_root ${LANG_SERBIAN} \
# "Invalid install path: $vim_install_root!$\r$\n\
# It should end with $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_SERBIAN} \
# "Binary path mismatch!$\r$\n$\r$\n\
# Expect the binary path to be $\"$vim_bin_path$\",$\r$\n\
# but system indicates the binary path is $\"$INSTDIR$\"."
#LangString str_msg_vim_running ${LANG_SERBIAN} \
# "Vim is still running on your system.$\r$\n\
# Please close all instances of Vim before you continue."
#LangString str_msg_register_ole ${LANG_SERBIAN} \
# "Attempting to register Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_unreg_ole ${LANG_SERBIAN} \
# "Attempting to unregister Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_rm_start ${LANG_SERBIAN} \
# "Uninstalling the following version:"
#LangString str_msg_rm_fail ${LANG_SERBIAN} \
# "Fail to uninstall the following version:"
#LangString str_msg_no_rm_key ${LANG_SERBIAN} \
# "Cannot find uninstaller registry key."
#LangString str_msg_no_rm_reg ${LANG_SERBIAN} \
# "Cannot find uninstaller from registry."
#LangString str_msg_no_rm_exe ${LANG_SERBIAN} \
# "Cannot access uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_SERBIAN} \
# "Fail to copy uninstaller to temporary directory."
#LangString str_msg_rm_run_fail ${LANG_SERBIAN} \
# "Fail to run uninstaller."
#LangString str_msg_abort_install ${LANG_SERBIAN} \
# "Installer will abort."
LangString str_msg_install_fail ${LANG_SERBIAN} \
"Инсталација није успела. Више среће идући пут."
LangString str_msg_rm_exe_fail ${LANG_SERBIAN} \
"Неки фајлови у $0 нису обрисани!$\r$\n\
Морате то ручно да обавите."
#LangString str_msg_rm_root_fail ${LANG_SERBIAN} \
# "WARNING: Cannot remove $\"$vim_install_root$\", it is not empty!"
LangString str_msg_uninstalling ${LANG_SERBIAN} \
"Уклањање старе верзије..."
LangString str_msg_registering ${LANG_SERBIAN} \
"Регистровање..."
LangString str_msg_unregistering ${LANG_SERBIAN} \
"Поништавање регистрације..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_SERBIAN} \
"Изаберите _vimrc подешавања"
LangString str_vimrc_page_subtitle ${LANG_SERBIAN} \
"Изаберите подешавања за побољшања, тастатуру и миша."
LangString str_msg_compat_title ${LANG_SERBIAN} \
" Vi / Vim понашање "
LangString str_msg_compat_desc ${LANG_SERBIAN} \
"&Компатибилност и побољшања"
LangString str_msg_compat_vi ${LANG_SERBIAN} \
"Vi компатибилно"
LangString str_msg_compat_vim ${LANG_SERBIAN} \
"Vim оригинално"
LangString str_msg_compat_defaults ${LANG_SERBIAN} \
"Vim са неким побољшањима (учитава defaults.vim)"
LangString str_msg_compat_all ${LANG_SERBIAN} \
"Vim са свим побољшањима (учитава vimrc_example.vim) (Подразумевано)"
LangString str_msg_keymap_title ${LANG_SERBIAN} \
" Мапирања "
LangString str_msg_keymap_desc ${LANG_SERBIAN} \
"&Ремапира неколико тастера за Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, итд.)"
LangString str_msg_keymap_default ${LANG_SERBIAN} \
"Немој да ремапираш тастере (Подразумевано)"
LangString str_msg_keymap_windows ${LANG_SERBIAN} \
"Ремапира неколико тастера"
LangString str_msg_mouse_title ${LANG_SERBIAN} \
" Миш "
LangString str_msg_mouse_desc ${LANG_SERBIAN} \
"&Понашање левог и десног тастера"
LangString str_msg_mouse_default ${LANG_SERBIAN} \
"Десни: искачући мени, Леви: визуелни режим (Подразумевано)"
LangString str_msg_mouse_windows ${LANG_SERBIAN} \
"Десни: искачући мени, Леви: режим избора (Windows)"
LangString str_msg_mouse_unix ${LANG_SERBIAN} \
"Десни: проширује избор, Леви: визуелни режим (Unix)"

View File

@ -5,7 +5,7 @@
#
# Locale ID : 2052
# fileencoding : UTF-8
# Author : Guopeng Wen
# Author : Guopeng Wen, David Liu
!insertmacro MUI_LANGUAGE "SimpChinese"
@ -112,7 +112,7 @@ LangString str_desc_plugin ${LANG_SIMPCHINESE} \
LangString str_section_plugin_home ${LANG_SIMPCHINESE} \
"私有插件目录"
LangString str_desc_plugin_home ${LANG_SIMPCHINESE} \
"Create plugin directories in HOME directory."
"在主目录创建私有插件目录。"
LangString str_section_plugin_vim ${LANG_SIMPCHINESE} \
"公共插件目录"
@ -141,14 +141,14 @@ LangString str_desc_rm_exe ${LANG_SIMPCHINESE} \
"删除 Vim 的所有执行文件及脚本。"
LangString str_ungroup_plugin ${LANG_SIMPCHINESE} \
"Remove plugin directories"
"移除插件目录"
LangString str_desc_rm_plugin ${LANG_SIMPCHINESE} \
"Remove the plugin directories if they are empty."
"移除插件目录(如果目录为空)。"
LangString str_unsection_plugin_home ${LANG_SIMPCHINESE} \
"私有插件目录"
LangString str_desc_rm_plugin_home ${LANG_SIMPCHINESE} \
"Remove the plugin directories from HOME directory."
"从主目录中移除私有插件目录。"
LangString str_unsection_plugin_vim ${LANG_SIMPCHINESE} \
"公共插件目录"
@ -241,37 +241,37 @@ LangString str_msg_unregistering ${LANG_SIMPCHINESE} \
LangString str_vimrc_page_title ${LANG_SIMPCHINESE} \
"设置 _vimrc"
LangString str_vimrc_page_subtitle ${LANG_SIMPCHINESE} \
"选择键盘、鼠标和增强选项"
"选择键盘、鼠标和扩展设置"
LangString str_msg_compat_title ${LANG_SIMPCHINESE} \
"Vi / Vim 行为"
LangString str_msg_compat_desc ${LANG_SIMPCHINESE} \
"&Compatibility and enhancements"
"兼容性与扩展(&B)"
LangString str_msg_compat_vi ${LANG_SIMPCHINESE} \
"Vi compatible"
"原始 Vi"
LangString str_msg_compat_vim ${LANG_SIMPCHINESE} \
"Vim original"
"原始 Vim"
LangString str_msg_compat_defaults ${LANG_SIMPCHINESE} \
"Vim with some enhancements (load defaults.vim)"
"Vim 原始版本和部分扩展 (加载 defaults.vim)"
LangString str_msg_compat_all ${LANG_SIMPCHINESE} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
"Vim 原始版本和所有扩展 (加载 vimrc_example.vim) (缺省)"
LangString str_msg_keymap_title ${LANG_SIMPCHINESE} \
"键盘映射"
LangString str_msg_keymap_desc ${LANG_SIMPCHINESE} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
"为 Windows 映射按键(&R) (例如:Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F)"
LangString str_msg_keymap_default ${LANG_SIMPCHINESE} \
"Do not remap keys (Default)"
"不映射按键 (缺省)"
LangString str_msg_keymap_windows ${LANG_SIMPCHINESE} \
"Remap a few keys"
"映射一些按键"
LangString str_msg_mouse_title ${LANG_SIMPCHINESE} \
"鼠标"
LangString str_msg_mouse_desc ${LANG_SIMPCHINESE} \
"&Behavior of right and left buttons"
"左键和右键行为(&B)"
LangString str_msg_mouse_default ${LANG_SIMPCHINESE} \
"Right: popup menu, Left: visual mode (Default)"
"右键:弹出菜单, 左键:可视化模式 (缺省)"
LangString str_msg_mouse_windows ${LANG_SIMPCHINESE} \
"Right: popup menu, Left: select mode (Windows)"
"右键:弹出菜单, 左键:选择模式 (Windows)"
LangString str_msg_mouse_unix ${LANG_SIMPCHINESE} \
"Right: extends selection, Left: visual mode (Unix)"
"右键: 扩展选择, 左键:可视化模式 (Unix)"

190
nsis/lang/turkish.nsi Normal file
View File

@ -0,0 +1,190 @@
# turkish.nsi: Turkish language strings for gvim NSIS installer.
# fileencoding : UTF-8
# Author : Emir SARI
!insertmacro MUI_LANGUAGE "Turkish"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_TURKISH} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_TURKISH} \
"$(^Name) Uninstall"
LangString str_show_readme ${LANG_TURKISH} \
"Kurulum bittikten sonra README dosyasını"
# Install types:
LangString str_type_typical ${LANG_TURKISH} \
"Normal"
LangString str_type_minimal ${LANG_TURKISH} \
"Küçük"
LangString str_type_full ${LANG_TURKISH} \
"Tam"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_TURKISH} \
"Eski sürümü kaldır"
LangString str_desc_old_ver ${LANG_TURKISH} \
"Vim'in eski sürümünü sisteminizden kaldırır."
LangString str_section_exe ${LANG_TURKISH} \
"Vim grafik arabirimi ve çalışma dosyaları"
LangString str_desc_exe ${LANG_TURKISH} \
"Vim program başlatıcı ve çalışma dosyaları. Bu bileşen zorunludur."
LangString str_section_console ${LANG_TURKISH} \
"Vim konsol sürümü"
LangString str_desc_console ${LANG_TURKISH} \
"Vim'in konsol sürümü (vim.exe)."
LangString str_section_batch ${LANG_TURKISH} \
".bat dosyaları oluştur"
LangString str_desc_batch ${LANG_TURKISH} \
"Vim için komut satırında kullanmak üzere .bat dosyaları oluşturur"
LangString str_group_icons ${LANG_TURKISH} \
"Vim için kısayollar oluştur"
LangString str_desc_icons ${LANG_TURKISH} \
"Kolay erişim için Vim kısayolları oluşturur."
LangString str_section_desktop ${LANG_TURKISH} \
"Masaüstünde"
LangString str_desc_desktop ${LANG_TURKISH} \
"gVim programı için Masaüstünde kısayol oluşturur."
LangString str_section_start_menu ${LANG_TURKISH} \
"Başlat Menüsü - Programlar klasöründe"
LangString str_desc_start_menu ${LANG_TURKISH} \
"Vim kısayolunu Başlat Menüsüne ekler."
LangString str_section_edit_with ${LANG_TURKISH} \
"Vim ile Aç"
LangString str_desc_edit_with ${LANG_TURKISH} \
"Vim'i $\"Birlikte $\" sağ tıklama menüsüne ekler."
LangString str_section_vim_rc ${LANG_TURKISH} \
"Bir konfigürasyon dosyası oluştur"
LangString str_desc_vim_rc ${LANG_TURKISH} \
"Eğer yoksa bir konfigürasyon dosyası (_vimrc) oluşturur."
LangString str_group_plugin ${LANG_TURKISH} \
"Eklenti dizinleri oluştur"
LangString str_desc_plugin ${LANG_TURKISH} \
"Bu dizinlere Vim eklentilerini yerleştirerek Vim'e yeni \
özellikler kazandırabilirsiniz."
LangString str_section_plugin_home ${LANG_TURKISH} \
"Gizli"
LangString str_desc_plugin_home ${LANG_TURKISH} \
"Eklenti dizinlerini EV dizininde oluşturur."
LangString str_section_plugin_vim ${LANG_TURKISH} \
"Paylaşılan"
LangString str_desc_plugin_vim ${LANG_TURKISH} \
"Eklenti dizinlerini Vim yükleme dizininde oluşturur. Bu eklentilerden \
bilgisayarın tüm kullanıcıları yararlanabilir."
LangString str_section_vis_vim ${LANG_TURKISH} \
"VisVim eklentisi"
LangString str_desc_vis_vim ${LANG_TURKISH} \
"Microsoft Visual Studio entegrasyonu için VisVim eklentisi"
LangString str_section_nls ${LANG_TURKISH} \
"Ek dil desteği"
LangString str_desc_nls ${LANG_TURKISH} \
"Mevcut olan Vim yerelleştirmelerini yükler."
LangString str_unsection_register ${LANG_TURKISH} \
"Vim kaydını kaldır"
LangString str_desc_unregister ${LANG_TURKISH} \
"Vim'in bu bilgisayardaki kaydını kaldırır."
LangString str_unsection_exe ${LANG_TURKISH} \
"Vim programını ve çalıştırma dosyalarını kaldır"
LangString str_desc_rm_exe ${LANG_TURKISH} \
"Tüm Vim çalıştırılabilir dosyalarını ve diğer dosyaları kaldırır."
LangString str_ungroup_plugin ${LANG_TURKISH} \
"Eklenti dizinlerini kaldır"
LangString str_desc_rm_plugin ${LANG_TURKISH} \
"Eklenti dizinlerini eğer boş ise kaldırır."
LangString str_unsection_plugin_home ${LANG_TURKISH} \
"Gizli"
LangString str_desc_rm_plugin_home ${LANG_TURKISH} \
"Eklenti dizinlerini EV dizininden kaldırır."
LangString str_unsection_plugin_vim ${LANG_TURKISH} \
"Paylaşılan"
LangString str_desc_rm_plugin_vim ${LANG_TURKISH} \
"Eklenti dizinlerini Vim yükleme dizininden kaldırır."
LangString str_unsection_rootdir ${LANG_TURKISH} \
"Vim kök dizinini kaldır"
LangString str_desc_rm_rootdir ${LANG_TURKISH} \
"Vim kök dizinini kaldırır. Bu dizin Vim konfigürasyon dosyalarını içerir!"
LangString str_msg_install_fail ${LANG_TURKISH} \
"Yükleme başarısız oldu. Yeniden deneyin."
LangString str_msg_rm_exe_fail ${LANG_TURKISH} \
"$0 içindeki bazı dosyalar silinemedi!$\r$\n\
Bu dosyaları el ile kaldırmalısınız."
LangString str_msg_uninstalling ${LANG_TURKISH} \
"Eski sürüm kaldırılıyor..."
LangString str_msg_registering ${LANG_TURKISH} \
"Kaydediliyor..."
LangString str_msg_unregistering ${LANG_TURKISH} \
"Kayıt siliniyor..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_TURKISH} \
"_vimrc ayarlarını seçin"
LangString str_vimrc_page_subtitle ${LANG_TURKISH} \
"Yüklenecek ek özellikler, klavye ve fare için ayarları seçin."
LangString str_msg_compat_title ${LANG_TURKISH} \
" Vi / Vim davranışı "
LangString str_msg_compat_desc ${LANG_TURKISH} \
"&Uyumluluk ve ek özellikler"
LangString str_msg_compat_vi ${LANG_TURKISH} \
"Vi uyumlu"
LangString str_msg_compat_vim ${LANG_TURKISH} \
"Vim orijinal"
LangString str_msg_compat_defaults ${LANG_TURKISH} \
"Vim ve ek olarak bazı ek özellikler (load defaults.vim)"
LangString str_msg_compat_all ${LANG_TURKISH} \
"Vim ve ek olarak tüm ek özellikler (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_TURKISH} \
" Klavye İşlevleri "
LangString str_msg_keymap_desc ${LANG_TURKISH} \
"&Windows için bazı düğmeleri yeniden ayarla (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_TURKISH} \
"Düğme işlevlerini değiştirme (varsayılan)"
LangString str_msg_keymap_windows ${LANG_TURKISH} \
"Bazı düğmeleri yeniden ayarla"
LangString str_msg_mouse_title ${LANG_TURKISH} \
" Fare İşlevleri "
LangString str_msg_mouse_desc ${LANG_TURKISH} \
"&Sağ ve sol düğme davranışı"
LangString str_msg_mouse_default ${LANG_TURKISH} \
"Sağ: açılır menü, Sol: Görsel Kip (varsayılan)"
LangString str_msg_mouse_windows ${LANG_TURKISH} \
"Sağ: açılır menü, Sol: seçim kipi (Windows)"
LangString str_msg_mouse_unix ${LANG_TURKISH} \
"Sağ: seçimi genişlet, Sol: Görsel Kip (Unix)"

View File

@ -2,7 +2,7 @@
" Language: Haskell
" Maintainer: Daniel Campoverde <alx@sillybytes.net>
" URL: https://github.com/alx741/haskellcomplete.vim
" Last Change: 2018 Aug 26
" Last Change: 2019 May 14
" Usage: setlocal omnifunc=haskellcomplete#Complete
@ -63,6 +63,7 @@ function! haskellcomplete#Complete(findstart, base)
call add(l:matches, extension)
endif
endfor
let b:completingLangExtension = 0
return l:matches
endif
@ -78,6 +79,7 @@ function! haskellcomplete#Complete(findstart, base)
call add(l:matches, flag)
endif
endfor
let b:completingOptionsGHC = 0
return l:matches
endif
@ -93,6 +95,7 @@ function! haskellcomplete#Complete(findstart, base)
call add(l:matches, module)
endif
endfor
let b:completingModule = 0
return l:matches
endif

View File

@ -1,7 +1,7 @@
" Vim completion script
" Language: HTML and XHTML
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2014 Jun 20
" Last Change: 2019 Sep 27
" Distinguish between HTML versions.
" To use with other HTML versions add another "elseif" condition to match
@ -245,7 +245,8 @@ function! htmlcomplete#CompleteTags(findstart, base)
" If context contains white space it is attribute.
" It can be also value of attribute.
" We have to get first word to offer proper completions
if context == ''
if context =~ '^\s*$'
" empty or whitespace line
let tag = ''
else
let tag = split(context)[0]

View File

@ -1,7 +1,7 @@
" netrw.vim: Handles file transfer and remote directory listing across
" AUTOLOAD SECTION
" Date: Jul 16, 2019
" Version: 165
" Date: Nov 06, 2019
" Version: 166
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
" Copyright: Copyright (C) 2016 Charles E. Campbell {{{1
@ -39,7 +39,7 @@ if exists("s:needspatches")
endfor
endif
let g:loaded_netrw = "v165"
let g:loaded_netrw = "v166"
if !exists("s:NOTE")
let s:NOTE = 0
let s:WARNING = 1
@ -232,12 +232,12 @@ if !exists("g:netrw_ftp_options")
let g:netrw_ftp_options= "-i -n"
endif
if !exists("g:netrw_http_cmd")
if executable("curl")
let g:netrw_http_cmd = "curl"
call s:NetrwInit("g:netrw_http_xcmd","-L -o")
elseif executable("wget")
if executable("wget")
let g:netrw_http_cmd = "wget"
call s:NetrwInit("g:netrw_http_xcmd","-q -O")
elseif executable("curl")
let g:netrw_http_cmd = "curl"
call s:NetrwInit("g:netrw_http_xcmd","-L -o")
elseif executable("elinks")
let g:netrw_http_cmd = "elinks"
call s:NetrwInit("g:netrw_http_xcmd","-source >")
@ -689,6 +689,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
" save registers
if has("clipboard")
" call Decho("(netrw#Explore) save @* and @+",'~'.expand("<slnum>"))
sil! let keepregstar = @*
sil! let keepregplus = @+
endif
@ -916,6 +917,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
if !exists("w:netrw_explore_list") " sanity check
NetrwKeepj call netrw#ErrorMsg(s:WARNING,"using Nexplore or <s-down> improperly; see help for netrw-starstar",40)
if has("clipboard")
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
sil! let @* = keepregstar
sil! let @+ = keepregplus
endif
@ -941,6 +943,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
if !exists("w:netrw_explore_list") " sanity check
NetrwKeepj call netrw#ErrorMsg(s:WARNING,"using Pexplore or <s-up> improperly; see help for netrw-starstar",41)
if has("clipboard")
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
sil! let @* = keepregstar
sil! let @+ = keepregplus
endif
@ -996,6 +999,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
keepalt call netrw#ErrorMsg(s:WARNING,'no files matched pattern<'.pattern.'>',45)
if &hls | let keepregslash= s:ExplorePatHls(pattern) | endif
if has("clipboard")
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
sil! let @* = keepregstar
sil! let @+ = keepregplus
endif
@ -1032,6 +1036,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
if w:netrw_explore_listlen == 0 || (w:netrw_explore_listlen == 1 && w:netrw_explore_list[0] =~ '\*\*\/')
keepalt NetrwKeepj call netrw#ErrorMsg(s:WARNING,"no files matched",42)
if has("clipboard")
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
sil! let @* = keepregstar
sil! let @+ = keepregplus
endif
@ -1080,6 +1085,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
keepalt NetrwKeepj call netrw#ErrorMsg(s:WARNING,"your vim needs the +path_extra feature for Exploring with **!",44)
endif
if has("clipboard")
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
sil! let @* = keepregstar
sil! let @+ = keepregplus
endif
@ -1153,6 +1159,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
" Consequently, set s:netrw_events to 2.
let s:netrw_events= 2
if has("clipboard")
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
sil! let @* = keepregstar
sil! let @+ = keepregplus
endif
@ -1642,7 +1649,6 @@ fun! s:NetrwOptionsSave(vt)
let {a:vt}netrw_cpokeep = &l:cpo
let {a:vt}netrw_diffkeep = &l:diff
let {a:vt}netrw_fenkeep = &l:fen
" call Decho("saving current settings: got here#1",'~'.expand("<slnum>"))
if !exists("g:netrw_ffkeep") || g:netrw_ffkeep
let {a:vt}netrw_ffkeep = &l:ff
endif
@ -1661,7 +1667,6 @@ fun! s:NetrwOptionsSave(vt)
let {a:vt}netrw_rokeep = &l:ro
let {a:vt}netrw_selkeep = &l:sel
let {a:vt}netrw_spellkeep = &l:spell
" call Decho("saving current settings: got here#2",'~'.expand("<slnum>"))
if !g:netrw_use_noswf
let {a:vt}netrw_swfkeep = &l:swf
endif
@ -1675,6 +1680,7 @@ fun! s:NetrwOptionsSave(vt)
" call Decho("saving a few selected netrw-related variables",'~'.expand("<slnum>"))
if g:netrw_keepdir
let {a:vt}netrw_dirkeep = getcwd()
" call Decho("saving to ".a:vt."netrw_dirkeep<".{a:vt}netrw_dirkeep.">",'~'.expand("<slnum>"))
endif
if has("clipboard")
sil! let {a:vt}netrw_starkeep = @*
@ -1745,6 +1751,7 @@ fun! s:NetrwOptionsRestore(vt)
" call Dfunc("s:NetrwOptionsRestore(vt<".a:vt.">) win#".winnr()." buf#".bufnr("%")."<".bufname("%")."> winnr($)=".winnr("$"))
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
if !exists("{a:vt}netrw_optionsave")
" call Decho("case ".a:vt."netrw_optionsave : doesn't exist",'~'.expand("<slnum>"))
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
" call Decho("ro=".&l:ro." ma=".&l:ma." mod=".&l:mod." wrap=".&l:wrap." (filename<".expand("%")."> win#".winnr()." ft<".&ft.">)",'~'.expand("<slnum>"))
" call Dret("s:NetrwOptionsRestore : ".a:vt."netrw_optionsave doesn't exist")
@ -1829,6 +1836,7 @@ fun! s:NetrwOptionsRestore(vt)
endif
endif
if has("clipboard")
" call Decho("has clipboard",'~'.expand("<slnum>"))
call s:NetrwRestoreSetting(a:vt."netrw_starkeep","@*")
call s:NetrwRestoreSetting(a:vt."netrw_pluskeep","@+")
endif
@ -1890,7 +1898,7 @@ endfun
" Used by s:NetrwOptionsRestore() to restore each netrw-senstive setting
" keepvars are set up by s:NetrwOptionsSave
fun! s:NetrwRestoreSetting(keepvar,setting)
"" call Dfunc("s:NetrwRestoreSetting(a:keepvar<".a:keepvar."> a:setting<".a:setting.">)")
""" call Dfunc("s:NetrwRestoreSetting(a:keepvar<".a:keepvar."> a:setting<".a:setting.">)")
" typically called from s:NetrwOptionsRestore
" call s:NetrwRestoreSettings(keep-option-variable-name,'associated-option')
@ -1905,7 +1913,7 @@ fun! s:NetrwRestoreSetting(keepvar,setting)
"" call Decho("fyi: a:setting<".a:setting."> setting<".setting.">")
if setting != keepvarval
"" call Decho("restore setting<".a:setting."=".setting."> to keepvarval<".keepvarval.">")
"" call Decho("restore setting<".a:setting."> (currently=".setting.") to keepvarval<".keepvarval.">")
if type(a:setting) == 0
exe "let ".a:setting."= ".keepvarval
elseif type(a:setting) == 1
@ -2863,7 +2871,7 @@ fun! s:NetrwGetFile(readcmd, tfile, method)
" readcmd=='t': simply do nothing
if a:readcmd == 't'
" call Decho(" ro=".&l:ro." ma=".&l:ma." mod=".&l:mod." wrap=".&l:wrap." (filename<".expand("%")."> win#".winnr()." ft<".&ft.">)",'~'.expand("<slnum>"))
" call Dret("NetrwGetFile : skip read of <".a:tfile.">")
" call Dret("NetrwGetFile : skip read of tfile<".a:tfile.">")
return
endif
@ -5194,10 +5202,11 @@ fun! s:NetrwBrowseUpDir(islocal)
endfun
" ---------------------------------------------------------------------
" netrw#BrowseX: (implements "x") executes a special "viewer" script or program for the {{{2
" netrw#BrowseX: (implements "x" and "gx") executes a special "viewer" script or program for the {{{2
" given filename; typically this means given their extension.
" 0=local, 1=remote
fun! netrw#BrowseX(fname,remote)
let use_ctrlo= 1
" call Dfunc("netrw#BrowseX(fname<".a:fname."> remote=".a:remote.")")
" if its really just a local directory, then do a "gf" instead
@ -5302,10 +5311,9 @@ fun! netrw#BrowseX(fname,remote)
endif
" call Decho("set up redirection: redir{".redir."} srr{".&srr."}",'~'.expand("<slnum>"))
" extract any viewing options. Assumes that they're set apart by quotes.
" call Decho("extract any viewing options",'~'.expand("<slnum>"))
" extract any viewing options. Assumes that they're set apart by spaces.
if exists("g:netrw_browsex_viewer")
" call Decho("g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">",'~'.expand("<slnum>"))
" call Decho("extract any viewing options from g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">",'~'.expand("<slnum>"))
if g:netrw_browsex_viewer =~ '\s'
let viewer = substitute(g:netrw_browsex_viewer,'\s.*$','','')
let viewopt = substitute(g:netrw_browsex_viewer,'^\S\+\s*','','')." "
@ -5328,16 +5336,16 @@ fun! netrw#BrowseX(fname,remote)
" execute the file handler
" call Decho("execute the file handler (if any)",'~'.expand("<slnum>"))
if exists("g:netrw_browsex_viewer") && g:netrw_browsex_viewer == '-'
" call Decho("g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">",'~'.expand("<slnum>"))
let ret= netrwFileHandlers#Invoke(exten,fname)
elseif exists("g:netrw_browsex_viewer") && executable(viewer)
" call Decho("g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) g:netrw_browsex_viewer<".g:netrw_browsex_viewer.">",'~'.expand("<slnum>"))
call s:NetrwExe("sil !".viewer." ".viewopt.s:ShellEscape(fname,1).redir)
let ret= v:shell_error
elseif has("win32") || has("win64")
" call Decho("win".(has("win32")? "32" : "64")",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) win".(has("win32")? "32" : "64"),'~'.expand("<slnum>"))
if executable("start")
call s:NetrwExe('sil! !start rundll32 url.dll,FileProtocolHandler '.s:ShellEscape(fname,1))
elseif executable("rundll32")
@ -5345,56 +5353,68 @@ fun! netrw#BrowseX(fname,remote)
else
call netrw#ErrorMsg(s:WARNING,"rundll32 not on path",74)
endif
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
let ret= v:shell_error
elseif has("win32unix")
let winfname= 'c:\cygwin'.substitute(fname,'/','\\','g')
" call Decho("cygwin: winfname<".s:ShellEscape(winfname,1).">",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) cygwin: winfname<".s:ShellEscape(winfname,1).">",'~'.expand("<slnum>"))
if executable("start")
" call Decho("(netrw#BrowseX) win32unix+start",'~'.expand("<slnum>"))
call s:NetrwExe('sil !start rundll32 url.dll,FileProtocolHandler '.s:ShellEscape(winfname,1))
elseif executable("rundll32")
" call Decho("(netrw#BrowseX) win32unix+rundll32",'~'.expand("<slnum>"))
call s:NetrwExe('sil !rundll32 url.dll,FileProtocolHandler '.s:ShellEscape(winfname,1))
elseif executable("cygstart")
" call Decho("(netrw#BrowseX) win32unix+cygstart",'~'.expand("<slnum>"))
call s:NetrwExe('sil !cygstart '.s:ShellEscape(fname,1))
else
call netrw#ErrorMsg(s:WARNING,"rundll32 not on path",74)
endif
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
let ret= v:shell_error
elseif has("unix") && executable("kfmclient") && s:CheckIfKde()
" call Decho("unix and kfmclient",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) unix and kfmclient",'~'.expand("<slnum>"))
call s:NetrwExe("sil !kfmclient exec ".s:ShellEscape(fname,1)." ".redir)
let ret= v:shell_error
elseif has("unix") && executable("exo-open") && executable("xdg-open") && executable("setsid")
" call Decho("unix, exo-open, xdg-open",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) unix, exo-open, xdg-open",'~'.expand("<slnum>"))
call s:NetrwExe("sil !setsid xdg-open ".s:ShellEscape(fname,1).redir)
let ret= v:shell_error
elseif has("unix") && $DESKTOP_SESSION == "mate" && executable("atril")
" call Decho("unix and atril",'~'.expand("<slnum>"))
call s:NetrwExe("sil !atril ".s:ShellEscape(fname,1).redir)
" call Decho("(netrw#BrowseX) unix and atril",'~'.expand("<slnum>"))
if a:fname =~ '^https\=://'
" atril does not appear to understand how to handle html -- so use gvim to edit the document
let use_ctrlo= 0
" call Decho("(COMBAK) fname<".fname.">")
" call Decho("(COMBAK) a:fname<".a:fname.">")
call s:NetrwExe("sil! !gvim ".fname.' -c "keepj keepalt file '.fnameescape(a:fname).'"')
else
call s:NetrwExe("sil !atril ".s:ShellEscape(fname,1).redir)
endif
let ret= v:shell_error
elseif has("unix") && executable("xdg-open")
" call Decho("unix and xdg-open",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) unix and xdg-open",'~'.expand("<slnum>"))
call s:NetrwExe("sil !xdg-open ".s:ShellEscape(fname,1).redir)
let ret= v:shell_error
elseif has("macunix") && executable("open")
" call Decho("macunix and open",'~'.expand("<slnum>"))
" call Decho("(netrw#BrowseX) macunix and open",'~'.expand("<slnum>"))
call s:NetrwExe("sil !open ".s:ShellEscape(fname,1)." ".redir)
let ret= v:shell_error
else
" netrwFileHandlers#Invoke() always returns 0
" call Decho("(netrw#BrowseX) use netrwFileHandlers",'~'.expand("<slnum>"))
let ret= netrwFileHandlers#Invoke(exten,fname)
endif
" if unsuccessful, attempt netrwFileHandlers#Invoke()
if ret
" call Decho("(netrw#BrowseX) ret=".ret," indicates unsuccessful thus far",'~'.expand("<slnum>"))
let ret= netrwFileHandlers#Invoke(exten,fname)
endif
@ -5416,8 +5436,9 @@ fun! netrw#BrowseX(fname,remote)
if g:netrw_use_noswf
setl noswf
endif
exe "sil! NetrwKeepj norm! \<c-o>"
" redraw!
if use_ctrlo
exe "sil! NetrwKeepj norm! \<c-o>"
endif
endif
" call Decho("restoring posn to screenposn<".string(screenposn).">",'~'.expand("<slnum>"))
call winrestview(screenposn)
@ -6076,7 +6097,6 @@ fun! s:NetrwListHide()
" call Dfunc("s:NetrwListHide() g:netrw_hide=".g:netrw_hide." g:netrw_list_hide<".g:netrw_list_hide.">")
" call Decho("initial: ".string(getline(w:netrw_bannercnt,'$')))
let ykeep= @@
" call DechoBuf(bufnr("%"),"COMBAK#3")
" find a character not in the "hide" string to use as a separator for :g and :v commands
" How-it-works: take the hiding command, convert it into a range.
@ -6120,7 +6140,6 @@ fun! s:NetrwListHide()
" remove any blank lines that have somehow remained.
" This seems to happen under Windows.
exe 'sil! NetrwKeepj 1,$g@^\s*$@d'
" call DechoBuf(bufnr("%"),"COMBAK#4")
let @@= ykeep
" call Dret("s:NetrwListHide")
@ -6328,7 +6347,7 @@ fun! s:NetrwMaps(islocal)
" generate default <Plug> maps {{{3
if !hasmapto('<Plug>NetrwHide') |nmap <buffer> <silent> <nowait> a <Plug>NetrwHide_a|endif
if !hasmapto('<Plug>NetrwBrowseUpDir') |nmap <buffer> <silent> <nowait> - <Plug>NetrwBrowseUpDir |endif
if !hasmapto('<Plug>NetrwBrowseUpDir') |nmap <buffer> <silent> <nowait> - <Plug>NetrwBrowseUpDir|endif
if !hasmapto('<Plug>NetrwOpenFile') |nmap <buffer> <silent> <nowait> % <Plug>NetrwOpenFile|endif
if !hasmapto('<Plug>NetrwBadd_cb') |nmap <buffer> <silent> <nowait> cb <Plug>NetrwBadd_cb|endif
if !hasmapto('<Plug>NetrwBadd_cB') |nmap <buffer> <silent> <nowait> cB <Plug>NetrwBadd_cB|endif
@ -6788,13 +6807,15 @@ fun! s:NetrwMarkFile(islocal,fname)
if index(s:netrwmarkfilelist,dname) == -1
" append new filename to global markfilelist
call add(s:netrwmarkfilelist,s:ComposePath(b:netrw_curdir,a:fname))
" call Decho("append filename<".a:fname."> to global markfilelist<".string(s:netrwmarkfilelist).">",'~'.expand("<slnum>"))
" call Decho("append filename<".a:fname."> to global s:markfilelist<".string(s:netrwmarkfilelist).">",'~'.expand("<slnum>"))
else
" remove new filename from global markfilelist
" call Decho("filter(".string(s:netrwmarkfilelist).",'v:val != '.".dname.")",'~'.expand("<slnum>"))
" call Decho("remove new filename from global s:markfilelist",'~'.expand("<slnum>"))
" call Decho("..filter(".string(s:netrwmarkfilelist).",'v:val != '.".dname.")",'~'.expand("<slnum>"))
call filter(s:netrwmarkfilelist,'v:val != "'.dname.'"')
" call Decho("ending s:netrwmarkfilelist <".string(s:netrwmarkfilelist).">",'~'.expand("<slnum>"))
" call Decho("..ending s:netrwmarkfilelist <".string(s:netrwmarkfilelist).">",'~'.expand("<slnum>"))
if s:netrwmarkfilelist == []
" call Decho("s:netrwmarkfilelist is empty; unlet it",'~'.expand("<slnum>"))
unlet s:netrwmarkfilelist
endif
endif
@ -6818,7 +6839,8 @@ fun! s:NetrwMarkFile(islocal,fname)
endif
endif
let @@= ykeep
" call Dret("s:NetrwMarkFile : s:netrwmarkfilelist_".curbufnr."<".(exists("s:netrwmarkfilelist_{curbufnr}")? string(s:netrwmarkfilelist_{curbufnr}) : " doesn't exist").">")
" call Decho("s:netrwmarkfilelist[".(exists("s:netrwmarkfilelist")? string(s:netrwmarkfilelist) : "")."] (avail in all buffers)",'~'.expand("<slnum>"))
" call Dret("s:NetrwMarkFile : s:netrwmarkfilelist_".curbufnr."<".(exists("s:netrwmarkfilelist_{curbufnr}")? string(s:netrwmarkfilelist_{curbufnr}) : " doesn't exist")."> (buf#".curbufnr."list)")
endfun
" ---------------------------------------------------------------------
@ -7573,8 +7595,9 @@ fun! s:NetrwMarkFileGrep(islocal)
let curdir = s:NetrwGetCurdir(a:islocal)
if exists("s:netrwmarkfilelist")
" call Decho("s:netrwmarkfilelist".string(s:netrwmarkfilelist).">",'~'.expand("<slnum>"))
" call Decho("using s:netrwmarkfilelist".string(s:netrwmarkfilelist).">",'~'.expand("<slnum>"))
let netrwmarkfilelist= join(map(deepcopy(s:netrwmarkfilelist), "fnameescape(v:val)"))
" call Decho("keeping copy of s:netrwmarkfilelist in function-local variable,'~'.expand("<slnum>"))"
call s:NetrwUnmarkAll()
else
" call Decho('no marked files, using "*"','~'.expand("<slnum>"))
@ -7582,6 +7605,7 @@ fun! s:NetrwMarkFileGrep(islocal)
endif
" ask user for pattern
" call Decho("ask user for search pattern",'~'.expand("<slnum>"))
call inputsave()
let pat= input("Enter pattern: ","")
call inputrestore()
@ -9560,6 +9584,7 @@ fun! s:NetrwWideListing()
let newcolend = newcolstart + fpc - 1
" call Decho("bannercnt=".w:netrw_bannercnt." fpl=".w:netrw_fpl." fpc=".fpc." newcol[".newcolstart.",".newcolend."]",'~'.expand("<slnum>"))
if has("clipboard")
" call Decho("(s:NetrwWideListing) save @* and @+",'~'.expand("<slnum>"))
sil! let keepregstar = @*
sil! let keepregplus = @+
endif
@ -9576,6 +9601,7 @@ fun! s:NetrwWideListing()
exe 'sil! NetrwKeepj '.w:netrw_bannercnt
endwhile
if has("clipboard")
" call Decho("(s:NetrwWideListing) restore @* and @+",'~'.expand("<slnum>"))
sil! let @*= keepregstar
sil! let @+= keepregplus
endif
@ -10849,7 +10875,6 @@ fun! s:LocalListing()
for filename in filelist
" call Decho(" ",'~'.expand("<slnum>"))
" call Decho("for filename in filelist: filename<".filename.">",'~'.expand("<slnum>"))
" call DechoBuf(bufnr("%"),"COMBAK#1")
if getftype(filename) == "link"
" indicate a symbolic link
@ -10907,10 +10932,10 @@ fun! s:LocalListing()
if w:netrw_liststyle == s:LONGLIST
let sz = getfsize(filename)
let fsz = strpart(" ",1,15-strlen(sz)).sz
if g:netrw_sizestyle =~# "[hH]"
let sz= s:NetrwHumanReadable(sz)
endif
let fsz = strpart(" ",1,15-strlen(sz)).sz
let longfile= printf("%-".(g:netrw_maxfilenamelen+1)."s",pfile)
let pfile = longfile.fsz." ".strftime(g:netrw_timefmt,getftime(filename))
" call Decho("longlist support: sz=".sz." fsz=".fsz,'~'.expand("<slnum>"))
@ -10942,7 +10967,7 @@ fun! s:LocalListing()
" call Decho("exe NetrwKeepj put ='".pfile."'",'~'.expand("<slnum>"))
sil! NetrwKeepj put=pfile
endif
" call DechoBuf(bufnr("%"),"COMBAK#2")
" call DechoBuf(bufnr("%"),"bufnr(%)")
endfor
" cleanup any windows mess at end-of-line
@ -11259,7 +11284,9 @@ fun! netrw#Expose(varname)
" call Dfunc("netrw#Expose(varname<".a:varname.">)")
if exists("s:".a:varname)
exe "let retval= s:".a:varname
" call Decho("retval=".retval,'~'.expand("<slnum>"))
if exists("g:netrw_pchk")
" call Decho("type(g:netrw_pchk=".g:netrw_pchk.")=".type(retval),'~'.expand("<slnum>"))
if type(retval) == 3
let retval = copy(retval)
let i = 0
@ -11268,10 +11295,13 @@ fun! netrw#Expose(varname)
let i = i + 1
endwhile
endif
" call Dret("netrw#Expose ".string(retval))
" call Dret("netrw#Expose ".string(retval)),'~'.expand("<slnum>"))
return string(retval)
else
" call Decho("g:netrw_pchk doesn't exist",'~'.expand("<slnum>"))
endif
else
" call Decho("s:".a:varname." doesn't exist",'~'.expand("<slnum>"))
let retval= "n/a"
endif

View File

@ -18,61 +18,5 @@
" holder be liable for any damages resulting from the use
" of this software.
function! netrw_gitignore#Hide(...)
let additional_files = a:000
let default_files = ['.gitignore', '.git/info/exclude']
" get existing global/system gitignore files
let global_gitignore = expand(substitute(system("git config --global core.excludesfile"), '\n', '', 'g'))
if global_gitignore !=# ''
let default_files = add(default_files, global_gitignore)
endif
let system_gitignore = expand(substitute(system("git config --system core.excludesfile"), '\n', '', 'g'))
if system_gitignore !=# ''
let default_files = add(default_files, system_gitignore)
endif
" append additional files if given as function arguments
if additional_files !=# []
let files = extend(default_files, additional_files)
else
let files = default_files
endif
" keep only existing/readable files
let gitignore_files = []
for file in files
if filereadable(file)
let gitignore_files = add(gitignore_files, file)
endif
endfor
" get contents of gitignore patterns from those files
let gitignore_lines = []
for file in gitignore_files
for line in readfile(file)
" filter empty lines and comments
if line !~# '^#' && line !~# '^$'
let gitignore_lines = add(gitignore_lines, line)
endif
endfor
endfor
" convert gitignore patterns to Netrw/Vim regex patterns
let escaped_lines = []
for line in gitignore_lines
let escaped = line
let escaped = substitute(escaped, '\*\*', '*', 'g')
let escaped = substitute(escaped, '\.', '\\.', 'g')
let escaped = substitute(escaped, '\$', '\\$', 'g')
let escaped = substitute(escaped, '*', '.*', 'g')
" correction: dot, dollar and asterisks chars shouldn't be escaped when
" within regex matching groups.
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\\\.', '\.', 'g')
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\\\$', '\$', 'g')
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\.\*', '*', 'g')
let escaped_lines = add(escaped_lines, escaped)
endfor
return join(escaped_lines, ',')
return substitute(substitute(system('git ls-files --other --ignored --exclude-standard --directory'), '\n', ',', 'g'), ',$', '', '')
endfunction

View File

@ -1,6 +1,6 @@
" Vim autoload file for the tohtml plugin.
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2018 Nov 11
" Last Change: 2019 Aug 16
"
" Additional contributors:
"
@ -364,6 +364,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
let body_line = ''
let html = []
let s:html5 = 0
if s:settings.use_xhtml
call add(html, xml_line)
endif
@ -371,8 +372,9 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
call add(html, "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">")
call add(html, '<html xmlns="http://www.w3.org/1999/xhtml">')
elseif s:settings.use_css && !s:settings.no_pre
call add(html, "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">")
call add(html, "<!DOCTYPE html>")
call add(html, '<html>')
let s:html5 = 1
else
call add(html, '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"')
call add(html, ' "http://www.w3.org/TR/html4/loose.dtd">')
@ -383,7 +385,11 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
" include encoding as close to the top as possible, but only if not already
" contained in XML information
if s:settings.encoding != "" && !s:settings.use_xhtml
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close)
if s:html5
call add(html, '<meta charset="' . s:settings.encoding . '"' . tag_close)
else
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close)
endif
endif
call add(html, '<title>diff</title>')
@ -392,6 +398,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
call add(html, '<meta name="settings" content="'.
\ join(filter(keys(s:settings),'s:settings[v:val]'),',').
\ ',prevent_copy='.s:settings.prevent_copy.
\ ',use_input_for_pc='.s:settings.use_input_for_pc.
\ '"'.tag_close)
call add(html, '<meta name="colorscheme" content="'.
\ (exists('g:colors_name')
@ -400,16 +407,8 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
call add(html, '</head>')
let body_line_num = len(html)
if !empty(s:settings.prevent_copy)
call add(html, "<body onload='FixCharWidth();".(s:settings.line_ids ? " JumpToLine();" : "")."'>")
call add(html, "<!-- hidden divs used by javascript to get the width of a char -->")
call add(html, "<div id='oneCharWidth'>0</div>")
call add(html, "<div id='oneInputWidth'><input size='1' value='0'".tag_close."</div>")
call add(html, "<div id='oneEmWidth' style='width: 1em;'></div>")
else
call add(html, '<body'.(s:settings.line_ids ? ' onload="JumpToLine();"' : '').'>')
endif
call add(html, "<table border='1' width='100%' id='vimCodeElement".s:settings.id_suffix."'>")
call add(html, '<body'.(s:settings.line_ids ? ' onload="JumpToLine();"' : '').'>')
call add(html, "<table ".(s:settings.use_css? "" : "border='1' width='100%' ")."id='vimCodeElement".s:settings.id_suffix."'>")
call add(html, '<tr>')
for buf in a:win_list
@ -443,7 +442,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
" Grab the style information. Some of this will be duplicated so only insert
" it if it's not already there. {{{
1
let style_start = search('^<style type="text/css">')
let style_start = search('^<style\( type="text/css"\)\?>')
1
let style_end = search('^</style>')
if style_start > 0 && style_end > 0
@ -481,7 +480,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
" TODO: restore using grabbed lines if undolevel is 1?
normal! 2u
if s:settings.use_css
call add(html, '<td valign="top"><div>')
call add(html, '<td><div>')
elseif s:settings.use_xhtml
call add(html, '<td nowrap="nowrap" valign="top"><div>')
else
@ -515,7 +514,13 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
let name = substitute(name, '\d*\.x\?html$', '', '') . i . '.' . fnamemodify(copy(name), ":t:e")
let i += 1
endwhile
let s:ei_sav = &eventignore
set eventignore+=FileType
exe "topleft new " . name
let &eventignore=s:ei_sav
unlet s:ei_sav
setlocal modifiable
" just in case some user autocmd creates content in the new buffer, make sure
@ -544,7 +549,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
" add required javascript in reverse order so we can just call append again
" and again without adjusting {{{
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids || !empty(s:settings.prevent_copy)
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids
" insert script closing tag if needed
if s:uses_script
@ -555,31 +560,6 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
\ ])
endif
" insert script which corrects the size of small input elements in
" prevent_copy mode. See 2html.vim for details on why this is needed and how
" it works.
if !empty(s:settings.prevent_copy)
call append(style_start, [
\ '',
\ '/* simulate a "ch" unit by asking the browser how big a zero character is */',
\ 'function FixCharWidth() {',
\ ' /* get the hidden element which gives the width of a single character */',
\ ' var goodWidth = document.getElementById("oneCharWidth").clientWidth;',
\ ' /* get all input elements, we''ll filter on class later */',
\ ' var inputTags = document.getElementsByTagName("input");',
\ ' var ratio = 5;',
\ ' var inputWidth = document.getElementById("oneInputWidth").clientWidth;',
\ ' var emWidth = document.getElementById("oneEmWidth").clientWidth;',
\ ' if (inputWidth > goodWidth) {',
\ ' while (ratio < 100*goodWidth/emWidth && ratio < 100) {',
\ ' ratio += 5;',
\ ' }',
\ ' document.getElementById("vimCodeElement'.s:settings.id_suffix.'").className = "em"+ratio;',
\ ' }',
\ '}'
\ ])
endif
" insert javascript to get IDs from line numbers, and to open a fold before
" jumping to any lines contained therein
if s:settings.line_ids
@ -659,10 +639,9 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
endif
if s:uses_script
" insert script tag; javascript is always needed for the line number
" normalization for URL hashes
" insert script tag if needed
call append(style_start, [
\ "<script type='text/javascript'>",
\ "<script" . (s:html5 ? "" : " type='text/javascript'") . ">",
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
endif
@ -673,11 +652,13 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
" is pretty useless for really long lines. {{{
if s:settings.use_css
call append(style_start,
\ ['<style type="text/css">']+
\ ['<style' . (s:html5 ? '' : 'type="text/css"') . '>']+
\ style+
\ [ s:settings.use_xhtml ? '' : '<!--',
\ 'table { table-layout: fixed; }',
\ 'html, body, table, tbody { width: 100%; margin: 0; padding: 0; }',
\ 'table, td, th { border: 1px solid; }',
\ 'td { vertical-align: top; }',
\ 'th, td { width: '.printf("%.1f",100.0/len(a:win_list)).'%; }',
\ 'td div { overflow: auto; }',
\ s:settings.use_xhtml ? '' : '-->',
@ -720,21 +701,22 @@ func! tohtml#GetUserSettings() "{{{
endif
" get current option settings with appropriate defaults {{{
call tohtml#GetOption(user_settings, 'no_progress', !has("statusline") )
call tohtml#GetOption(user_settings, 'diff_one_file', 0 )
call tohtml#GetOption(user_settings, 'number_lines', &number )
call tohtml#GetOption(user_settings, 'pre_wrap', &wrap )
call tohtml#GetOption(user_settings, 'use_css', 1 )
call tohtml#GetOption(user_settings, 'ignore_conceal', 0 )
call tohtml#GetOption(user_settings, 'ignore_folding', 0 )
call tohtml#GetOption(user_settings, 'dynamic_folds', 0 )
call tohtml#GetOption(user_settings, 'no_foldcolumn', user_settings.ignore_folding)
call tohtml#GetOption(user_settings, 'hover_unfold', 0 )
call tohtml#GetOption(user_settings, 'no_pre', 0 )
call tohtml#GetOption(user_settings, 'no_invalid', 0 )
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
call tohtml#GetOption(user_settings, 'line_ids', user_settings.number_lines )
call tohtml#GetOption(user_settings, 'no_progress', !has("statusline") )
call tohtml#GetOption(user_settings, 'diff_one_file', 0 )
call tohtml#GetOption(user_settings, 'number_lines', &number )
call tohtml#GetOption(user_settings, 'pre_wrap', &wrap )
call tohtml#GetOption(user_settings, 'use_css', 1 )
call tohtml#GetOption(user_settings, 'ignore_conceal', 0 )
call tohtml#GetOption(user_settings, 'ignore_folding', 0 )
call tohtml#GetOption(user_settings, 'dynamic_folds', 0 )
call tohtml#GetOption(user_settings, 'no_foldcolumn', user_settings.ignore_folding)
call tohtml#GetOption(user_settings, 'hover_unfold', 0 )
call tohtml#GetOption(user_settings, 'no_pre', 0 )
call tohtml#GetOption(user_settings, 'no_invalid', 0 )
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
call tohtml#GetOption(user_settings, 'line_ids', user_settings.number_lines )
call tohtml#GetOption(user_settings, 'use_input_for_pc', 'fallback')
" }}}
" override those settings that need it {{{
@ -868,6 +850,16 @@ func! tohtml#GetUserSettings() "{{{
let user_settings.no_invalid = 0
endif
" enforce valid values for use_input_for_pc
if user_settings.use_input_for_pc !~# 'fallback\|none\|all'
let user_settings.use_input_for_pc = 'fallback'
echohl WarningMsg
echomsg '2html: "' . g:html_use_input_for_pc . '" is not valid for g:html_use_input_for_pc'
echomsg '2html: defaulting to "' . user_settings.use_input_for_pc . '"'
echohl None
sleep 3
endif
if exists('g:html_id_expr')
let user_settings.id_suffix = eval(g:html_id_expr)
if user_settings.id_suffix !~ '^[-_:.A-Za-z0-9]*$'

View File

@ -1,6 +1,6 @@
" Vim plugin for formatting XML
" Last Change: Thu, 07 Dec 2018
" Version: 0.1
" Last Change: 2019 Oct 24
" Version: 0.2
" Author: Christian Brabandt <cb@256bit.org>
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
" License: VIM License
@ -22,44 +22,73 @@ func! xmlformat#Format()
" do not fall back to internal formatting
return 0
endif
let count_orig = v:count
let sw = shiftwidth()
let prev = prevnonblank(v:lnum-1)
let s:indent = indent(prev)/sw
let result = []
let lastitem = prev ? getline(prev) : ''
let is_xml_decl = 0
" split on `<`, but don't split on very first opening <
for item in split(join(getline(v:lnum, (v:lnum + v:count - 1))), '.\@<=[>]\zs')
if s:EndTag(item)
let s:indent = s:DecreaseIndent()
call add(result, s:Indent(item))
elseif s:EmptyTag(lastitem)
call add(result, s:Indent(item))
elseif s:StartTag(lastitem) && s:IsTag(item)
let s:indent += 1
call add(result, s:Indent(item))
else
if !s:IsTag(item)
" Simply split on '<'
let t=split(item, '.<\@=\zs')
let s:indent+=1
call add(result, s:Indent(t[0]))
let s:indent = s:DecreaseIndent()
call add(result, s:Indent(t[1]))
else
" go through every line, but don't join all content together and join it
" back. We might lose empty lines
let list = getline(v:lnum, (v:lnum + count_orig - 1))
let current = 0
for line in list
" Keep empty input lines?
if empty(line)
call add(result, '')
continue
elseif line !~# '<[/]\?[^>]*>'
let nextmatch = match(list, '<[/]\?[^>]*>', current)
let line .= join(list[(current + 1):(nextmatch-1)], "\n")
call remove(list, current+1, nextmatch-1)
endif
" split on `>`, but don't split on very first opening <
" this means, items can be like ['<tag>', 'tag content</tag>']
for item in split(line, '.\@<=[>]\zs')
if s:EndTag(item)
let s:indent = s:DecreaseIndent()
call add(result, s:Indent(item))
elseif s:EmptyTag(lastitem)
call add(result, s:Indent(item))
elseif s:StartTag(lastitem) && s:IsTag(item)
let s:indent += 1
call add(result, s:Indent(item))
else
if !s:IsTag(item)
" Simply split on '<', if there is one,
" but reformat according to &textwidth
let t=split(item, '.<\@=\zs')
" t should only contain 2 items, but just be safe here
if s:IsTag(lastitem)
let s:indent+=1
endif
let result+=s:FormatContent([t[0]])
if s:EndTag(t[1])
let s:indent = s:DecreaseIndent()
endif
"for y in t[1:]
let result+=s:FormatContent(t[1:])
"endfor
else
call add(result, s:Indent(item))
endif
endif
endif
let lastitem = item
endfor
let lastitem = item
endfor
let current += 1
endfor
if !empty(result)
exe v:lnum. ",". (v:lnum + v:count - 1). 'd'
if !empty(result)
let lastprevline = getline(v:lnum + count_orig)
let delete_lastline = v:lnum + count_orig - 1 == line('$')
exe v:lnum. ",". (v:lnum + count_orig - 1). 'd'
call append(v:lnum - 1, result)
" Might need to remove the last line, if it became empty because of the
" append() call
let last = v:lnum + len(result)
if getline(last) is ''
" do not use empty(), it returns true for `empty(0)`
if getline(last) is '' && lastprevline is '' && delete_lastline
exe last. 'd'
endif
endif
@ -88,6 +117,7 @@ func! s:StartTag(tag)
let is_comment = s:IsComment(a:tag)
return a:tag =~? '^\s*<[^/?]' && !is_comment
endfunc
" Check if tag is a Comment start {{{1
func! s:IsComment(tag)
return a:tag =~? '<!--'
endfunc
@ -108,6 +138,43 @@ endfunc
func! s:EmptyTag(tag)
return a:tag =~ '/>\s*$'
endfunc
" Format input line according to textwidth {{{1
func! s:FormatContent(list)
let result=[]
let limit = 80
if &textwidth > 0
let limit = &textwidth
endif
let column=0
let idx = -1
let add_indent = 0
let cnt = 0
for item in a:list
for word in split(item, '\s\+\S\+\zs')
let column += strdisplaywidth(word, column)
if match(word, "^\\s*\n\\+\\s*$") > -1
call add(result, '')
let idx += 1
let column = 0
let add_indent = 1
elseif column > limit || cnt == 0
let add = s:Indent(s:Trim(word))
call add(result, add)
let column = strdisplaywidth(add)
let idx += 1
else
if add_indent
let result[idx] = s:Indent(s:Trim(word))
else
let result[idx] .= ' '. s:Trim(word)
endif
let add_indent = 0
endif
let cnt += 1
endfor
endfor
return result
endfunc
" Restoration And Modelines: {{{1
let &cpo= s:keepcpo
unlet s:keepcpo

View File

@ -1,7 +1,7 @@
" The default vimrc file.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2019 Feb 18
" Last change: 2019 Oct 27
"
" This is loaded if no vimrc file was found.
" Except when Vim is run with "-u NONE" or "-C".
@ -75,8 +75,14 @@ inoremap <C-U> <C-G>u<C-U>
" In many terminal emulators the mouse works just fine. By enabling it you
" can position the cursor, Visually select and scroll with the mouse.
" Only xterm can grab the mouse events when using the shift key, for other
" terminals use ":", select text and press Esc.
if has('mouse')
set mouse=a
if &term =~ 'xterm'
set mouse=a
else
set mouse=nvi
endif
endif
" Switch syntax highlighting on when the terminal has colors or when using the

View File

@ -2,7 +2,7 @@
" Warning: This also deletes all menus defined by the user!
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2001 May 27
" Last Change: 2019 Sep 11
aunmenu *
tlunmenu *
@ -21,6 +21,11 @@ silent! unlet menutrans_path_dialog
silent! unlet menutrans_tags_dialog
silent! unlet menutrans_textwidth_dialog
silent! unlet menutrans_fileformat_dialog
silent! unlet menutrans_fileformat_choices
silent! unlet menutrans_no_file
silent! unlet menutrans_set_lang_to
silent! unlet menutrans_spell_change_ARG_to
silent! unlet menutrans_spell_add_ARG_to_word_list
silent! unlet menutrans_spell_ignore_ARG
" vim: set sw=2 :

View File

@ -323,7 +323,10 @@ all: tags vim.man evim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
# Use Vim to generate the tags file. Can only be used when Vim has been
# compiled and installed. Supports multiple languages.
vimtags: $(DOCS)
$(VIMEXE) -u NONE -esX -c "helptags ++t ." -c quit
@if command -v $(VIMEXE); then \
$(VIMEXE) --clean -eX -u doctags.vim >/dev/null && \
echo "help tags updated"; \
else echo "vim executable $(VIMEXE) not found; help tags not updated"; fi
# Use "doctags" to generate the tags file. Only works for English!
tags: doctags $(DOCS)

View File

@ -1,4 +1,4 @@
*autocmd.txt* For Vim version 8.1. Last change: 2019 Jun 26
*autocmd.txt* For Vim version 8.1. Last change: 2019 Sep 16
VIM REFERENCE MANUAL by Bram Moolenaar
@ -268,7 +268,6 @@ Name triggered by ~
|BufCreate| just after adding a buffer to the buffer list
|BufDelete| before deleting a buffer from the buffer list
|BufWipeout| before completely deleting a buffer
|TerminalOpen| after a terminal buffer was created
|BufFilePre| before changing the name of the current buffer
|BufFilePost| after changing the name of the current buffer
@ -302,6 +301,10 @@ Name triggered by ~
|VimLeavePre| before exiting Vim, before writing the viminfo file
|VimLeave| before exiting Vim, after writing the viminfo file
Terminal
|TerminalOpen| after a terminal buffer was created
|TerminalWinOpen| after a terminal buffer was created in a new window
Various
|FileChangedShell| Vim notices that a file changed since editing started
|FileChangedShellPost| After handling a file changed since editing started
@ -355,6 +358,10 @@ Name triggered by ~
when popup menu visible
|TextYankPost| after text has been yanked or deleted
|SafeState| nothing pending, going to wait for the user to type a
character
|SafeStateAgain| repeated SafeState
|ColorSchemePre| before loading a color scheme
|ColorScheme| after loading a color scheme
@ -554,16 +561,14 @@ CmdlineLeave Before leaving the command line.
*CmdwinEnter*
CmdwinEnter After entering the command-line window.
Useful for setting options specifically for
this special type of window. This is
triggered _instead_ of BufEnter and WinEnter.
this special type of window.
<afile> is set to a single character,
indicating the type of command-line.
|cmdwin-char|
*CmdwinLeave*
CmdwinLeave Before leaving the command-line window.
Useful to clean up any global setting done
with CmdwinEnter. This is triggered _instead_
of BufLeave and WinLeave.
with CmdwinEnter.
<afile> is set to a single character,
indicating the type of command-line.
|cmdwin-char|
@ -579,7 +584,7 @@ ColorScheme After loading a color scheme. |:colorscheme|
ColorSchemePre Before loading a color scheme. |:colorscheme|
Useful to setup removing things added by a
color scheme, before another one is loaded.
CompleteChanged *CompleteChanged*
CompleteChanged *CompleteChanged*
After each time the Insert mode completion
menu changed. Not fired on popup menu hide,
use |CompleteDone| for that. Never triggered
@ -957,6 +962,32 @@ RemoteReply When a reply from a Vim that functions as
Note that even if an autocommand is defined,
the reply should be read with |remote_read()|
to consume it.
*SafeState*
SafeState When nothing is pending, going to wait for the
user to type a character.
This will not be triggered when:
- an operator is pending
- a register was entered with "r
- halfway executing a command
- executing a mapping
- there is typeahead
- Insert mode completion is active
- Command line completion is active
You can use `mode()` to find out what state
Vim is in. That may be:
- VIsual mode
- Normal mode
- Insert mode
- Command-line mode
Depending on what you want to do, you may also
check more with `state()`, e.g. whether the
screen was scrolled for messages.
*SafeStateAgain*
SafeStateAgain Like SafeState but after processing any
messages and invoking callbacks. This may be
triggered often, don't do something that takes
time.
*SessionLoadPost*
SessionLoadPost After loading the session file created using
the |:mksession| command.
@ -1053,6 +1084,12 @@ TerminalOpen Just after a terminal buffer was created, with
`:terminal` or |term_start()|. This event is
triggered even if the buffer is created
without a window, with the ++hidden option.
*TerminalWinOpen*
TerminalWinOpen Just after a terminal buffer was created, with
`:terminal` or |term_start()|. This event is
triggered only if the buffer is created
with a window. Can be used to set window
local options for the terminal window.
*TermResponse*
TermResponse After the response to |t_RV| is received from
the terminal. The value of |v:termresponse|
@ -1089,8 +1126,8 @@ TextYankPost After text has been yanked or deleted in the
current buffer. The following values of
|v:event| can be used to determine the operation
that triggered this autocmd:
operator The operation performed.
regcontents Text that was stored in the
operator The operation performed.
regcontents Text that was stored in the
register, as a list of lines,
like with: >
getreg(r, 1, 1)
@ -1126,7 +1163,7 @@ VimEnter After doing all the startup stuff, including
if v:vim_did_enter
call s:init()
else
au VimEnter * call s:init()
au VimEnter * call s:init()
endif
< *VimLeave*
VimLeave Before exiting Vim, just after writing the

View File

@ -1,4 +1,4 @@
*change.txt* For Vim version 8.1. Last change: 2019 Aug 21
*change.txt* For Vim version 8.1. Last change: 2019 Sep 28
VIM REFERENCE MANUAL by Bram Moolenaar
@ -999,9 +999,13 @@ inside of strings can change! Also see 'softtabstop' option. >
delete and yank) ({.%#:} only work with put).
*:reg* *:registers*
:reg[isters] Display the contents of all numbered and named
registers. If a register is written to for |:redir|
it will not be listed.
:reg[isters] Display the type and contents of all numbered and
named registers. If a register is written to for
|:redir| it will not be listed.
Type can be one of:
"c" for |characterwise| text
"l" for |linewise| text
"b" for |blockwise-visual| text
:reg[isters] {arg} Display the contents of the numbered and named
@ -1172,7 +1176,7 @@ Rationale: In Vi the "y" command followed by a backwards motion would
With a linewise yank command the cursor is put in the first line, but the
column is unmodified, thus it may not be on the first yanked character.
There are ten types of registers: *registers* *E354*
There are ten types of registers: *registers* *{register}* *E354*
1. The unnamed register ""
2. 10 numbered registers "0 to "9
3. The small delete register "-
@ -1312,7 +1316,7 @@ When writing to this register, nothing happens. This can be used to delete
text without affecting the normal registers. When reading from this register,
nothing is returned.
10. Last search pattern register "/ *quote_/* *quote/*
10. Last search pattern register "/ *quote_/* *quote/*
Contains the most recent search-pattern. This is used for "n" and 'hlsearch'.
It is writable with `:let`, you can change it to have 'hlsearch' highlight
other matches without actually searching. You can't yank or delete into this
@ -1618,8 +1622,6 @@ By default, "b:#" is included. This means that a line that starts with
"#include" is not recognized as a comment line. But a line that starts with
"# define" is recognized. This is a compromise.
{not available when compiled without the |+comments| feature}
*fo-table*
You can use the 'formatoptions' option to influence how Vim formats text.
'formatoptions' is a string that can contain any of the letters below. The

View File

@ -1,4 +1,4 @@
*channel.txt* For Vim version 8.1. Last change: 2019 Aug 22
*channel.txt* For Vim version 8.1. Last change: 2019 Sep 11
VIM REFERENCE MANUAL by Bram Moolenaar
@ -508,6 +508,9 @@ ch_evalexpr({handle}, {expr} [, {options}]) *ch_evalexpr()*
expression. When there is an error or timeout it returns an
empty string.
Note that while waiting for the response, Vim handles other
messages. You need to make sure this doesn't cause trouble.
Can also be used as a |method|: >
GetChannel()->ch_evalexpr(expr)

View File

@ -1,4 +1,4 @@
*cmdline.txt* For Vim version 8.1. Last change: 2019 Sep 04
*cmdline.txt* For Vim version 8.1. Last change: 2019 Sep 27
VIM REFERENCE MANUAL by Bram Moolenaar
@ -129,7 +129,7 @@ CTRL-K {char1} {char2} *c_CTRL-K*
enter digraph (see |digraphs|). When {char1} is a special
key, the code for that key is inserted in <> form.
CTRL-R {0-9a-z"%#:-=.} *c_CTRL-R* *c_<C-R>*
CTRL-R {register} *c_CTRL-R* *c_<C-R>*
Insert the contents of a numbered or named register. Between
typing CTRL-R and the second character '"' will be displayed
to indicate that you are expected to enter the name of a
@ -191,8 +191,8 @@ CTRL-R CTRL-L *c_CTRL-R_CTRL-L* *c_<C-R>_<C-L>*
*c_CTRL-R_CTRL-R* *c_<C-R>_<C-R>*
*c_CTRL-R_CTRL-O* *c_<C-R>_<C-O>*
CTRL-R CTRL-R {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
CTRL-R CTRL-O {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
CTRL-R CTRL-R {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
CTRL-R CTRL-O {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
Insert register or object under the cursor. Works like
|c_CTRL-R| but inserts the text literally. For example, if
register a contains "xy^Hz" (where ^H is a backspace),
@ -1171,11 +1171,9 @@ edited as described in |cmdwin-char|.
AUTOCOMMANDS
Two autocommand events are used: |CmdwinEnter| and |CmdwinLeave|. Since this
window is of a special type, the WinEnter, WinLeave, BufEnter and BufLeave
events are not triggered. You can use the Cmdwin events to do settings
specifically for the command-line window. Be careful not to cause side
effects!
Two autocommand events are used: |CmdwinEnter| and |CmdwinLeave|. You can use
the Cmdwin events to do settings specifically for the command-line window.
Be careful not to cause side effects!
Example: >
:au CmdwinEnter : let b:cpt_save = &cpt | set cpt=.
:au CmdwinLeave : let &cpt = b:cpt_save

View File

@ -1,4 +1,4 @@
*diff.txt* For Vim version 8.1. Last change: 2019 Jul 27
*diff.txt* For Vim version 8.1. Last change: 2019 Nov 10
VIM REFERENCE MANUAL by Bram Moolenaar
@ -68,11 +68,12 @@ reset to the global value.
The options can still be overruled from a modeline when re-editing the file.
However, 'foldmethod' and 'wrap' won't be set from a modeline when 'diff' is
set.
See `:diffoff` for an easy way to revert the options.
The differences shown are actually the differences in the buffer. Thus if you
make changes after loading a file, these will be included in the displayed
diffs. You might have to do ":diffupdate" now and then, not all changes are
immediately taken into account.
immediately taken into account, especially when using an external diff command.
In your .vimrc file you could do something special when Vim was started in
diff mode. You could use a construct like this: >

6
runtime/doc/doctags.vim Normal file
View File

@ -0,0 +1,6 @@
" This script makes a tags file for help text.
"
" Usage: vim -eX -u doctags.vim
helptags ++t .
qa!

View File

@ -1,4 +1,4 @@
*editing.txt* For Vim version 8.1. Last change: 2019 Jun 10
*editing.txt* For Vim version 8.1. Last change: 2019 Sep 27
VIM REFERENCE MANUAL by Bram Moolenaar
@ -1554,7 +1554,7 @@ focus.
If you want to automatically reload a file when it has been changed outside of
Vim, set the 'autoread' option. This doesn't work at the moment you write the
file though, only when the file wasn't changed inside of Vim.
*ignore-timestamp*
If you do not want to be asked or automatically reload the file, you can use
this: >
set buftype=nofile

View File

@ -1,4 +1,4 @@
*eval.txt* For Vim version 8.1. Last change: 2019 Sep 06
*eval.txt* For Vim version 8.1. Last change: 2019 Nov 21
VIM REFERENCE MANUAL by Bram Moolenaar
@ -92,7 +92,8 @@ the Number. Examples:
*octal*
Conversion from a String to a Number is done by converting the first digits to
a number. Hexadecimal "0xf9", Octal "017", and Binary "0b10" numbers are
recognized. If the String doesn't start with digits, the result is zero.
recognized (NOTE: when using |scriptversion-4| octal is not recognized). If
the String doesn't start with digits, the result is zero.
Examples:
String "456" --> Number 456 ~
String "6bar" --> Number 6 ~
@ -487,7 +488,7 @@ as a key.
To avoid having to put quotes around every key the #{} form can be used. This
does require the key to consist only of ASCII letters, digits, '-' and '_'.
Example: >
let mydict = #{zero: 0, one_key: 1, two-key: 2, 333: 3}
:let mydict = #{zero: 0, one_key: 1, two-key: 2, 333: 3}
Note that 333 here is the string "333". Empty keys are not possible with #{}.
A value can be any expression. Using a Dictionary for a value creates a
@ -1661,6 +1662,10 @@ PREDEFINED VIM VARIABLES *vim-variable* *v:var* *v:*
*E963*
Some variables can be set by the user, but the type cannot be changed.
*v:argv* *argv-variable*
v:argv The command line arguments Vim was invoked with. This is a
list of strings. The first item is the Vim command.
*v:beval_col* *beval_col-variable*
v:beval_col The number of the column, over which the mouse pointer is.
This is the byte index in the |v:beval_lnum| line.
@ -2475,6 +2480,7 @@ getline({lnum}) String line {lnum} of current buffer
getline({lnum}, {end}) List lines {lnum} to {end} of current buffer
getloclist({nr} [, {what}]) List list of location list items
getmatches([{win}]) List list of current matches
getmousepos() Dict last known mouse position
getpid() Number process ID of Vim
getpos({expr}) List position of cursor, mark, etc.
getqflist([{what}]) List list of quickfix items
@ -2594,7 +2600,7 @@ or({expr}, {expr}) Number bitwise OR
pathshorten({expr}) String shorten directory names in a path
perleval({expr}) any evaluate |Perl| expression
popup_atcursor({what}, {options}) Number create popup window near the cursor
popup_beval({what}, {options}) Number create popup window for 'ballooneval'
popup_beval({what}, {options}) Number create popup window for 'ballooneval'
popup_clear() none close all popup windows
popup_close({id} [, {result}]) none close popup window {id}
popup_create({what}, {options}) Number create a popup window
@ -2661,7 +2667,7 @@ remote_read({serverid} [, {timeout}])
remote_send({server}, {string} [, {idvar}])
String send key sequence
remote_startserver({name}) none become server {name}
remove({list}, {idx} [, {end}]) any/List
remove({list}, {idx} [, {end}]) any/List
remove items {idx}-{end} from {list}
remove({blob}, {idx} [, {end}]) Number/Blob
remove bytes {idx}-{end} from {blob}
@ -2754,15 +2760,17 @@ spellsuggest({word} [, {max} [, {capital}]])
split({expr} [, {pat} [, {keepempty}]])
List make |List| from {pat} separated {expr}
sqrt({expr}) Float square root of {expr}
state([{what}]) String current state of Vim
str2float({expr}) Float convert String to Float
str2list({expr} [, {utf8}]) List convert each character of {expr} to
ASCII/UTF8 value
str2nr({expr} [, {base}]) Number convert String to Number
str2nr({expr} [, {base} [, {quoted}]])
Number convert String to Number
strchars({expr} [, {skipcc}]) Number character length of the String {expr}
strcharpart({str}, {start} [, {len}])
String {len} characters of {str} at {start}
strdisplaywidth({expr} [, {col}]) Number display length of the String {expr}
strftime({format} [, {time}]) String time in specified format
strftime({format} [, {time}]) String format time with a specified format
strgetchar({str}, {index}) Number get char {index} from {str}
stridx({haystack}, {needle} [, {start}])
Number index of {needle} in {haystack}
@ -2770,6 +2778,8 @@ string({expr}) String String representation of {expr} value
strlen({expr}) Number length of the String {expr}
strpart({str}, {start} [, {len}])
String {len} characters of {str} at {start}
strptime({format}, {timestring})
Number Convert {timestring} to unix timestamp
strridx({haystack}, {needle} [, {start}])
Number last index of {needle} in {haystack}
strtrans({expr}) String translate string to make it printable
@ -2816,6 +2826,7 @@ term_gettty({buf}, [{input}]) String get the tty name of a terminal
term_list() List get the list of terminal buffers
term_scrape({buf}, {row}) List get row of a terminal screen
term_sendkeys({buf}, {keys}) none send keystrokes to a terminal
term_setapi({buf}, {expr}) none set |terminal-api| function name prefix
term_setansicolors({buf}, {colors})
none set ANSI palette in GUI color mode
term_setkill({buf}, {how}) none set signal to stop job in terminal
@ -2875,6 +2886,8 @@ win_gotoid({expr}) Number go to window with ID {expr}
win_id2tabwin({expr}) List get tab and window nr from window ID
win_id2win({expr}) Number get window nr from window ID
win_screenpos({nr}) List get screen position of window {nr}
win_splitmove({nr}, {target} [, {options}])
Number move window {nr} to split of {target}
winbufnr({nr}) Number buffer number of window {nr}
wincol() Number window column of the cursor
winheight({nr}) Number height of window {nr}
@ -2968,6 +2981,9 @@ append({lnum}, {text}) *append()*
appendbufline({expr}, {lnum}, {text}) *appendbufline()*
Like |append()| but append the text in buffer {expr}.
This function works only for loaded buffers. First call
|bufload()| if needed.
For the use of {expr}, see |bufname()|.
{lnum} is used like with |append()|. Note that using |line()|
@ -3025,6 +3041,7 @@ argv([{nr} [, {winid}])
the whole |arglist| is returned.
The {winid} argument specifies the window ID, see |argc()|.
For the Vim command line arguments see |v:argv|.
assert_ functions are documented here: |assert-functions-details|
@ -3257,9 +3274,14 @@ bufnr([{expr} [, {create}]])
The result is the number of a buffer, as it is displayed by
the ":ls" command. For the use of {expr}, see |bufname()|
above.
If the buffer doesn't exist, -1 is returned. Or, if the
{create} argument is present and not zero, a new, unlisted,
buffer is created and its number is returned.
buffer is created and its number is returned. Example: >
let newbuf = bufnr('Scratch001', 1)
< Using an empty name uses the current buffer. To create a new
buffer with an empty name use |bufadd()|.
bufnr("$") is the last buffer: >
:let last_buffer = bufnr("$")
< The result is a Number, which is the highest buffer number
@ -3529,8 +3551,8 @@ complete({startcol}, {matches}) *complete()* *E785*
< This isn't very useful, but it shows how it works. Note that
an empty string is returned to avoid a zero being inserted.
Can also be used as a |method|, the second argument is passed
in: >
Can also be used as a |method|, the base is passed as the
second argument: >
GetMatches()->complete(col('.'))
complete_add({expr}) *complete_add()*
@ -3665,7 +3687,7 @@ confirm({msg} [, {choices} [, {default} [, {type}]]])
Can also be used as a |method|in: >
BuildMessage()->confirm("&Yes\n&No")
<
*copy()*
copy({expr}) Make a copy of {expr}. For Numbers and Strings this isn't
different from using {expr} directly.
@ -3860,6 +3882,9 @@ deletebufline({expr}, {first} [, {last}]) *deletebufline()*
If {last} is omitted then delete line {first} only.
On success 0 is returned, on failure 1 is returned.
This function works only for loaded buffers. First call
|bufload()| if needed.
For the use of {expr}, see |bufname()| above.
{first} and {last} are used like with |getline()|. Note that
@ -3868,7 +3893,7 @@ deletebufline({expr}, {first} [, {last}]) *deletebufline()*
Can also be used as a |method|: >
GetBuffer()->deletebufline(1)
<
*did_filetype()*
did_filetype() Returns |TRUE| when autocommands are being executed and the
FileType event has been triggered at least once. Can be used
@ -4029,7 +4054,7 @@ exepath({expr}) *exepath()*
Can also be used as a |method|: >
GetCommand()->exepath()
<
*exists()*
exists({expr}) The result is a Number, which is |TRUE| if {expr} is defined,
zero otherwise.
@ -4225,8 +4250,8 @@ expandcmd({expr}) *expandcmd()*
Expand special items in {expr} like what is done for an Ex
command such as `:edit`. This expands special keywords, like
with |expand()|, and environment variables, anywhere in
{expr}. Returns the expanded string.
Example: >
{expr}. "~user" and "~/path" are only expanded at the start.
Returns the expanded string. Example: >
:echo expandcmd('make %<.o')
< Can also be used as a |method|: >
@ -4555,7 +4580,7 @@ foldlevel({lnum}) *foldlevel()*
Can also be used as a |method|: >
GetLnum()->foldlevel()
<
*foldtext()*
foldtext() Returns a String, to be displayed for a closed fold. This is
the default function used for the 'foldtext' option and should
@ -4761,6 +4786,10 @@ getbufinfo([{dict}])
changed TRUE if the buffer is modified.
changedtick number of changes made to the buffer.
hidden TRUE if the buffer is hidden.
lastused timestamp in seconds, like
|localtime()|, when the buffer was
last used.
{only with the |+viminfo| feature}
listed TRUE if the buffer is listed.
lnum current line number in buffer.
loaded TRUE if the buffer is loaded.
@ -4892,8 +4921,9 @@ getchar([expr]) *getchar()*
When the user clicks a mouse button, the mouse event will be
returned. The position can then be found in |v:mouse_col|,
|v:mouse_lnum|, |v:mouse_winid| and |v:mouse_win|. This
example positions the mouse as it would normally happen: >
|v:mouse_lnum|, |v:mouse_winid| and |v:mouse_win|.
|getmousepos()| can also be used. This example positions the
mouse as it would normally happen: >
let c = getchar()
if c == "\<LeftMouse>" && v:mouse_win > 0
exe v:mouse_win . "wincmd w"
@ -5303,6 +5333,35 @@ getmatches([{win}]) *getmatches()*
'pattern': 'FIXME', 'priority': 10, 'id': 2}] >
:unlet m
<
getmousepos() *getmousepos()*
Returns a Dictionary with the last known position of the
mouse. This can be used in a mapping for a mouse click or in
a filter of a popup window. The items are:
screenrow screen row
screencol screen column
winid Window ID of the click
winrow row inside "winid"
wincol column inside "winid"
line text line inside "winid"
column text column inside "winid"
All numbers are 1-based.
If not over a window, e.g. when in the command line, then only
"screenrow" and "screencol" are valid, the others are zero.
When on the status line below a window or the vertical
separater right of a window, the "line" and "column" values
are zero.
When the position is after the text then "column" is the
length of the text in bytes.
If the mouse is over a popup window then that window is used.
When using |getchar()| the Vim variables |v:mouse_lnum|,
|v:mouse_col| and |v:mouse_winid| also provide these values.
*getpid()*
getpid() Return a Number which is the process ID of the Vim process.
On Unix and MS-Windows this is a unique number, until Vim
@ -5577,7 +5636,7 @@ getwininfo([{winid}]) *getwininfo()*
terminal 1 if a terminal window
{only with the +terminal feature}
tabnr tab page number
topline first displayed buffer line
topline first displayed buffer line
variables a reference to the dictionary with
window-local variables
width window width
@ -5595,7 +5654,7 @@ getwininfo([{winid}]) *getwininfo()*
getwinpos([{timeout}]) *getwinpos()*
The result is a list with two numbers, the result of
getwinposx() and getwinposy() combined:
|getwinposx()| and |getwinposy()| combined:
[x-pos, y-pos]
{timeout} can be used to specify how long to wait in msec for
a response from the terminal. When omitted 100 msec is used.
@ -5837,7 +5896,7 @@ histadd({history}, {item}) *histadd()*
:let date=input("Enter date: ")
< This function is not available in the |sandbox|.
Can also be used as a |method|, the base is used for the
Can also be used as a |method|, the base is passed as the
second argument: >
GetHistory()->histadd('search')
@ -6365,8 +6424,8 @@ libcall({libname}, {funcname}, {argument})
Examples: >
:echo libcall("libc.so", "getenv", "HOME")
< Can also be used as a |method|, where the base is passed as
the argument to the called function: >
< Can also be used as a |method|, the base is passed as the
third argument: >
GetValue()->libcall("libc.so", "getenv")
<
*libcallnr()*
@ -6380,8 +6439,8 @@ libcallnr({libname}, {funcname}, {argument})
:call libcallnr("libc.so", "printf", "Hello World!\n")
:call libcallnr("libc.so", "sleep", 10)
<
Can also be used as a |method|, where the base is passed as
the argument to the called function: >
Can also be used as a |method|, the base is passed as the
third argument: >
GetValue()->libcallnr("libc.so", "printf")
<
@ -6475,8 +6534,8 @@ listener_add({callback} [, {buf}]) *listener_add()*
a:bufnr the buffer that was changed
a:start first changed line number
a:end first line number below the change
a:added total number of lines added, negative if lines
were deleted
a:added number of lines added, negative if lines were
deleted
a:changes a List of items with details about the changes
Example: >
@ -6532,8 +6591,8 @@ listener_add({callback} [, {buf}]) *listener_add()*
The {callback} is also not invoked when the buffer is
unloaded, use the |BufUnload| autocmd event for that.
Can also be used as a |method|, where the base is passed as
the second argument, the buffer: >
Can also be used as a |method|, the base is passed as the
second argument: >
GetBuffer()->listener_add(callback)
listener_flush([{buf}]) *listener_flush()*
@ -6557,7 +6616,7 @@ listener_remove({id}) *listener_remove()*
localtime() *localtime()*
Return the current time, measured as seconds since 1st Jan
1970. See also |strftime()| and |getftime()|.
1970. See also |strftime()|, |strptime()| and |getftime()|.
log({expr}) *log()*
@ -7003,6 +7062,7 @@ matchstrpos({expr}, {pat} [, {start} [, {count}]]) *matchstrpos()*
Can also be used as a |method|: >
GetText()->matchstrpos('word')
<
*max()*
max({expr}) Return the maximum value of all items in {expr}.
{expr} can be a list or a dictionary. For a dictionary,
@ -7045,9 +7105,9 @@ mkdir({name} [, {path} [, {prot}]])
There is no error if the directory already exists and the "p"
flag is passed (since patch 8.0.1708). However, without the
"p" option the call will fail.
"p" option the call will fail.
The function result is a Number, which is 1 if the call was
The function result is a Number, which is 1 if the call was
successful or 0 if the directory creation failed or partly
failed.
@ -7062,6 +7122,7 @@ mode([expr]) Return a string that indicates the current mode.
If [expr] is supplied and it evaluates to a non-zero Number or
a non-empty String (|non-zero-arg|), then the full mode is
returned, otherwise only the first letter is returned.
Also see |state()|.
n Normal, Terminal-Normal
no Operator-pending
@ -7487,7 +7548,7 @@ pum_getpos() *pum_getpos()*
row top screen row (0 first row)
col leftmost screen column (0 first col)
size total nr of items
scrollbar |TRUE| if visible
scrollbar |TRUE| if scrollbar is visible
The values are the same as in |v:event| during
|CompleteChanged|.
@ -8258,20 +8319,31 @@ serverlist() *serverlist()*
:echo serverlist()
<
setbufline({expr}, {lnum}, {text}) *setbufline()*
Set line {lnum} to {text} in buffer {expr}. To insert
lines use |append()|. Any text properties in {lnum} are
cleared.
Set line {lnum} to {text} in buffer {expr}. This works like
|setline()| for the specified buffer.
This function works only for loaded buffers. First call
|bufload()| if needed.
To insert lines use |appendbufline()|.
Any text properties in {lnum} are cleared.
{text} can be a string to set one line, or a list of strings
to set multiple lines. If the list extends below the last
line then those lines are added.
For the use of {expr}, see |bufname()| above.
{lnum} is used like with |setline()|.
This works like |setline()| for the specified buffer.
When {lnum} is just below the last line the {text} will be
added below the last line.
When {expr} is not a valid buffer, the buffer is not loaded or
{lnum} is not valid then 1 is returned. On success 0 is
returned.
Can also be used as a |method|: >
Can also be used as a |method|, the base is passed as the
third argument: >
GetText()->setbufline(buf, lnum)
setbufvar({expr}, {varname}, {val}) *setbufvar()*
@ -8287,7 +8359,8 @@ setbufvar({expr}, {varname}, {val}) *setbufvar()*
:call setbufvar("todo", "myvar", "foobar")
< This function is not available in the |sandbox|.
Can also be used as a |method|: >
Can also be used as a |method|, the base is passed as the
third argument: >
GetValue()->setbufvar(buf, varname)
setcharsearch({dict}) *setcharsearch()*
@ -8336,7 +8409,8 @@ setenv({name}, {val}) *setenv()*
When {val} is |v:null| the environment variable is deleted.
See also |expr-env|.
Can also be used as a |method|, passing the value as the base: >
Can also be used as a |method|, the base is passed as the
second argument: >
GetPath()->setenv('PATH')
setfperm({fname}, {mode}) *setfperm()* *chmod*
@ -8367,7 +8441,7 @@ setline({lnum}, {text}) *setline()*
{lnum} is used like with |getline()|.
When {lnum} is just below the last line the {text} will be
added as a new line.
added below the last line.
If this succeeds, 0 is returned. If this fails (most likely
because {lnum} is invalid) 1 is returned.
@ -8385,7 +8459,8 @@ setline({lnum}, {text}) *setline()*
< Note: The '[ and '] marks are not set.
Can also be used as a |method|, passing the text as the base: >
Can also be used as a |method|, the base is passed as the
second argument: >
GetText()->setline(lnum)
setloclist({nr}, {list} [, {action} [, {what}]]) *setloclist()*
@ -8634,7 +8709,8 @@ settabvar({tabnr}, {varname}, {val}) *settabvar()*
Tabs are numbered starting with one.
This function is not available in the |sandbox|.
Can also be used as a |method|, the base is used as the value: >
Can also be used as a |method|, the base is passed as the
third argument: >
GetValue()->settabvar(tab, name)
settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
@ -8655,7 +8731,8 @@ settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
:call settabwinvar(3, 2, "myvar", "foobar")
< This function is not available in the |sandbox|.
Can also be used as a |method|, the base is used as the value: >
Can also be used as a |method|, the base is passed as the
fourth argument: >
GetValue()->settabvar(tab, winnr, name)
settagstack({nr}, {dict} [, {action}]) *settagstack()*
@ -8689,7 +8766,8 @@ settagstack({nr}, {dict} [, {action}]) *settagstack()*
call settagstack(1003, stack)
unlet stack
<
Can also be used as a |method|, the base is used as the Dict: >
Can also be used as a |method|, the base is passed as the
second argument: >
GetStack()->settagstack(winnr)
setwinvar({winnr}, {varname}, {val}) *setwinvar()*
@ -8698,7 +8776,8 @@ setwinvar({winnr}, {varname}, {val}) *setwinvar()*
:call setwinvar(1, "&list", 0)
:call setwinvar(2, "myvar", "foobar")
< Can also be used as a |method|, the base is used as the value: >
< Can also be used as a |method|, the base is passed as the
third argument: >
GetValue()->setwinvar(winnr, name)
sha256({string}) *sha256()*
@ -9037,6 +9116,42 @@ sqrt({expr}) *sqrt()*
{only available when compiled with the |+float| feature}
state([{what}]) *state()*
Return a string which contains characters indicating the
current state. Mostly useful in callbacks that want to do
work that may not always be safe. Roughly this works like:
- callback uses state() to check if work is safe to do.
Yes: then do it right away.
No: add to work queue and add a |SafeState| and/or
|SafeStateAgain| autocommand (|SafeState| triggers at
toplevel, |SafeStateAgain| triggers after handling
messages and callbacks).
- When SafeState or SafeStateAgain is triggered and executes
your autocommand, check with `state()` if the work can be
done now, and if yes remove it from the queue and execute.
Remove the autocommand if the queue is now empty.
Also see |mode()|.
When {what} is given only characters in this string will be
added. E.g, this checks if the screen has scrolled: >
if state('s') == ''
" screen has not scrolled
<
These characters indicate the state, generally indicating that
something is busy:
m halfway a mapping, :normal command, feedkeys() or
stuffed command
o operator pending or waiting for a command argument,
e.g. after |f|
a Insert mode autocomplete active
x executing an autocommand
w blocked on waiting, e.g. ch_evalexpr(), ch_read() and
ch_readraw() when reading json.
S not triggering SafeState or SafeStateAgain
c callback invoked, including timer (repeats for
recursiveness up to "ccc")
s screen has scrolled for messages
str2float({expr}) *str2float()*
Convert String {expr} to a Float. This mostly works the same
as when using a floating point number in an expression, see
@ -9073,14 +9188,16 @@ str2list({expr} [, {utf8}]) *str2list()*
GetString()->str2list()
str2nr({expr} [, {base}]) *str2nr()*
str2nr({expr} [, {base} [, {quoted}]]) *str2nr()*
Convert string {expr} to a number.
{base} is the conversion base, it can be 2, 8, 10 or 16.
When {quoted} is present and non-zero then embedded single
quotes are ignored, thus "1'000'000" is a million.
When {base} is omitted base 10 is used. This also means that
a leading zero doesn't cause octal conversion to be used, as
with the default String to Number conversion. Example: >
let nr = str2nr('123')
let nr = str2nr('0123')
<
When {base} is 16 a leading "0x" or "0X" is ignored. With a
different base the result will be zero. Similarly, when
@ -9152,7 +9269,7 @@ strftime({format} [, {time}]) *strftime()*
{format} depends on your system, thus this is not portable!
See the manual page of the C function strftime() for the
format. The maximum length of the result is 80 characters.
See also |localtime()| and |getftime()|.
See also |localtime()|, |getftime()| and |strptime()|.
The language can be changed with the |:language| command.
Examples: >
:echo strftime("%c") Sun Apr 27 11:49:23 1997
@ -9197,6 +9314,7 @@ stridx({haystack}, {needle} [, {start}]) *stridx()*
Can also be used as a |method|: >
GetHaystack()->stridx(needle)
<
*string()*
string({expr}) Return {expr} converted to a String. If {expr} is a Number,
Float, String, Blob or a composition of them, then the result
@ -9252,6 +9370,34 @@ strpart({src}, {start} [, {len}]) *strpart()*
Can also be used as a |method|: >
GetText()->strpart(5)
strptime({format}, {timestring}) *strptime()*
The result is a Number, which is a unix timestamp representing
the date and time in {timestring}, which is expected to match
the format specified in {format}.
The accepted {format} depends on your system, thus this is not
portable! See the manual page of the C function strptime()
for the format. Especially avoid "%c". The value of $TZ also
matters.
If the {timestring} cannot be parsed with {format} zero is
returned. If you do not know the format of {timestring} you
can try different {format} values until you get a non-zero
result.
See also |strftime()|.
Examples: >
:echo strptime("%Y %b %d %X", "1997 Apr 27 11:49:23")
< 862156163 >
:echo strftime("%c", strptime("%y%m%d %T", "970427 11:53:55"))
< Sun Apr 27 11:53:55 1997 >
:echo strftime("%c", strptime("%Y%m%d%H%M%S", "19970427115355") + 3600)
< Sun Apr 27 12:53:55 1997
Not available on all systems. To check use: >
:if exists("*strptime")
strridx({haystack}, {needle} [, {start}]) *strridx()*
The result is a Number, which gives the byte index in
{haystack} of the last occurrence of the String {needle}.
@ -9584,9 +9730,14 @@ systemlist({expr} [, {input}]) *systemlist()*
Same as |system()|, but returns a |List| with lines (parts of
output separated by NL) with NULs transformed into NLs. Output
is the same as |readfile()| will output with {binary} argument
set to "b". Note that on MS-Windows you may get trailing CR
characters.
set to "b", except that there is no extra empty item when the
result ends in a NL.
Note that on MS-Windows you may get trailing CR characters.
To see the difference between "echo hello" and "echo -n hello"
use |system()| and |split()|: >
echo system('echo hello')->split('\n', 1)
<
Returns an empty string on error.
Can also be used as a |method|: >
@ -9606,6 +9757,8 @@ tabpagebuflist([{arg}]) *tabpagebuflist()*
endfor
< Note that a buffer may appear in more than one window.
Can also be used as a |method|: >
GetTabpage()->tabpagebuflist()
tabpagenr([{arg}]) *tabpagenr()*
The result is a Number, which is the number of the current
@ -9628,6 +9781,9 @@ tabpagewinnr({tabarg} [, {arg}]) *tabpagewinnr()*
tabpagewinnr(4, '$') " number of windows in tab page 4
< When {tabarg} is invalid zero is returned.
Can also be used as a |method|: >
GetTabpage()->tabpagewinnr()
<
*tagfiles()*
tagfiles() Returns a |List| with the file names used to search for tags
for the current buffer. This is the 'tags' option expanded.
@ -9676,6 +9832,9 @@ taglist({expr} [, {filename}]) *taglist()*
located by Vim. Refer to |tags-file-format| for the format of
the tags file generated by the different ctags tools.
Can also be used as a |method|: >
GetTagpattern()->taglist()
tan({expr}) *tan()*
Return the tangent of {expr}, measured in radians, as a |Float|
in the range [-inf, inf].
@ -9742,7 +9901,10 @@ timer_info([{id}])
"callback" the callback
"paused" 1 if the timer is paused, 0 otherwise
{only available when compiled with the |+timers| feature}
Can also be used as a |method|: >
GetTimer()->timer_info()
< {only available when compiled with the |+timers| feature}
timer_pause({timer}, {paused}) *timer_pause()*
Pause or unpause a timer. A paused timer does not invoke its
@ -9757,7 +9919,10 @@ timer_pause({timer}, {paused}) *timer_pause()*
String, then the timer is paused, otherwise it is unpaused.
See |non-zero-arg|.
{only available when compiled with the |+timers| feature}
Can also be used as a |method|: >
GetTimer()->timer_pause(1)
< {only available when compiled with the |+timers| feature}
*timer_start()* *timer* *timers*
timer_start({time}, {callback} [, {options}])
@ -9790,7 +9955,10 @@ timer_start({time}, {callback} [, {options}])
< This will invoke MyHandler() three times at 500 msec
intervals.
Not available in the |sandbox|.
Can also be used as a |method|: >
GetMsec()->timer_start(callback)
< Not available in the |sandbox|.
{only available when compiled with the |+timers| feature}
timer_stop({timer}) *timer_stop()*
@ -9798,7 +9966,10 @@ timer_stop({timer}) *timer_stop()*
{timer} is an ID returned by timer_start(), thus it must be a
Number. If {timer} does not exist there is no error.
{only available when compiled with the |+timers| feature}
Can also be used as a |method|: >
GetTimer()->timer_stop()
< {only available when compiled with the |+timers| feature}
timer_stopall() *timer_stopall()*
Stop all timers. The timer callbacks will no longer be
@ -9812,11 +9983,17 @@ tolower({expr}) *tolower()*
characters turned into lowercase (just like applying |gu| to
the string).
Can also be used as a |method|: >
GetText()->tolower()
toupper({expr}) *toupper()*
The result is a copy of the String given, with all lowercase
characters turned into uppercase (just like applying |gU| to
the string).
Can also be used as a |method|: >
GetText()->toupper()
tr({src}, {fromstr}, {tostr}) *tr()*
The result is a copy of the {src} string with all characters
which appear in {fromstr} replaced by the character in that
@ -9831,6 +10008,9 @@ tr({src}, {fromstr}, {tostr}) *tr()*
echo tr("<blob>", "<>", "{}")
< returns "{blob}"
Can also be used as a |method|: >
GetText()->tr(from, to)
trim({text} [, {mask}]) *trim()*
Return {text} as a String where any character in {mask} is
removed from the beginning and end of {text}.
@ -9847,6 +10027,9 @@ trim({text} [, {mask}]) *trim()*
echo trim("rm<Xrm<>X>rrm", "rm<>")
< returns "Xrm<>X" (characters in the middle are not removed)
Can also be used as a |method|: >
GetText()->trim()
trunc({expr}) *trunc()*
Return the largest integral value with magnitude less than or
equal to {expr} as a |Float| (truncate towards zero).
@ -9907,6 +10090,9 @@ undofile({name}) *undofile()*
When compiled without the |+persistent_undo| option this always
returns an empty string.
Can also be used as a |method|: >
GetFilename()->undofile()
undotree() *undotree()*
Return the current state of the undo tree in a dictionary with
the following items:
@ -10005,8 +10191,11 @@ virtcol({expr}) *virtcol()*
all lines: >
echo max(map(range(1, line('$')), "virtcol([v:val, '$'])"))
< Can also be used as a |method|: >
GetPos()->virtcol()
visualmode([expr]) *visualmode()*
visualmode([{expr}]) *visualmode()*
The result is a String, which describes the last Visual mode
used in the current buffer. Initially it returns an empty
string, but once Visual mode has been used, it returns "v",
@ -10020,7 +10209,7 @@ visualmode([expr]) *visualmode()*
Visual mode that was used.
If Visual mode is active, use |mode()| to get the Visual mode
(e.g., in a |:vmap|).
If [expr] is supplied and it evaluates to a non-zero Number or
If {expr} is supplied and it evaluates to a non-zero Number or
a non-empty String, then the Visual mode will be cleared and
the old value is returned. See |non-zero-arg|.
@ -10049,10 +10238,17 @@ win_execute({id}, {command} [, {silent}]) *win_execute()*
Not all commands are allowed in popup windows.
When window {id} does not exist then no error is given.
Can also be used as a |method|, the base is passed as the
second argument: >
GetCommand()->win_execute(winid)
win_findbuf({bufnr}) *win_findbuf()*
Returns a list with |window-ID|s for windows that contain
buffer {bufnr}. When there is none the list is empty.
Can also be used as a |method|: >
GetBufnr()->win_findbuf()
win_getid([{win} [, {tab}]]) *win_getid()*
Get the |window-ID| for the specified window.
When {win} is missing use the current window.
@ -10062,20 +10258,32 @@ win_getid([{win} [, {tab}]]) *win_getid()*
number {tab}. The first tab has number one.
Return zero if the window cannot be found.
Can also be used as a |method|: >
GetWinnr()->win_getid()
win_gotoid({expr}) *win_gotoid()*
Go to window with ID {expr}. This may also change the current
tabpage.
Return 1 if successful, 0 if the window cannot be found.
Can also be used as a |method|: >
GetWinid()->win_gotoid()
win_id2tabwin({expr}) *win_id2tabwin()*
Return a list with the tab number and window number of window
with ID {expr}: [tabnr, winnr].
Return [0, 0] if the window cannot be found.
Can also be used as a |method|: >
GetWinid()->win_id2tabwin()
win_id2win({expr}) *win_id2win()*
Return the window number of window with ID {expr}.
Return 0 if the window cannot be found in the current tabpage.
Can also be used as a |method|: >
GetWinid()->win_id2win()
win_screenpos({nr}) *win_screenpos()*
Return the screen position of window {nr} as a list with two
numbers: [row, col]. The first window always has position
@ -10084,6 +10292,31 @@ win_screenpos({nr}) *win_screenpos()*
Return [0, 0] if the window cannot be found in the current
tabpage.
Can also be used as a |method|: >
GetWinid()->win_screenpos()
<
win_splitmove({nr}, {target} [, {options}]) *win_splitmove()*
Move the window {nr} to a new split of the window {target}.
This is similar to moving to {target}, creating a new window
using |:split| but having the same contents as window {nr}, and
then closing {nr}.
Both {nr} and {target} can be window numbers or |window-ID|s.
Returns zero for success, non-zero for failure.
{options} is a Dictionary with the following optional entries:
"vertical" When TRUE, the split is created vertically,
like with |:vsplit|.
"rightbelow" When TRUE, the split is made below or to the
right (if vertical). When FALSE, it is done
above or to the left (if vertical). When not
present, the values of 'splitbelow' and
'splitright' are used.
Can also be used as a |method|: >
GetWinid()->win_splitmove(target)
<
*winbufnr()*
winbufnr({nr}) The result is a Number, which is the number of the buffer
associated with window {nr}. {nr} can be the window number or
@ -10111,6 +10344,9 @@ winheight({nr}) *winheight()*
This excludes any window toolbar line.
Examples: >
:echo "The current window has " . winheight(0) . " lines."
< Can also be used as a |method|: >
GetWinid()->winheight()
<
winlayout([{tabnr}]) *winlayout()*
The result is a nested List containing the layout of windows
@ -10140,6 +10376,9 @@ winlayout([{tabnr}]) *winlayout()*
:echo winlayout(2)
['col', [['leaf', 1002], ['row', ['leaf', 1003],
['leaf', 1001]]], ['leaf', 1000]]
<
Can also be used as a |method|: >
GetTabnr()->winlayout()
<
*winline()*
winline() The result is a Number, which is the screen line of the cursor
@ -10174,6 +10413,9 @@ winnr([{arg}]) The result is a Number, which is the number of the current
let window_count = winnr('$')
let prev_window = winnr('#')
let wnum = winnr('3k')
< Can also be used as a |method|: >
GetWinval()->winnr()
<
*winrestcmd()*
winrestcmd() Returns a sequence of |:resize| commands that should restore
@ -10202,6 +10444,9 @@ winrestview({dict})
If you have changed the values the result is unpredictable.
If the window size changed the result won't be the same.
Can also be used as a |method|: >
GetView()->winrestview()
<
*winsaveview()*
winsaveview() Returns a |Dictionary| that contains information to restore
the view of the current window. Use |winrestview()| to
@ -10239,6 +10484,9 @@ winwidth({nr}) *winwidth()*
< For getting the terminal or screen size, see the 'columns'
option.
Can also be used as a |method|: >
GetWinid()->winwidth()
wordcount() *wordcount()*
The result is a dictionary of byte/chars/word statistics for
@ -10300,17 +10548,20 @@ writefile({object}, {fname} [, {flags}])
:let fl = readfile("foo", "b")
:call writefile(fl, "foocopy", "b")
< Can also be used as a |method|: >
GetText()->writefile("thefile")
xor({expr}, {expr}) *xor()*
Bitwise XOR on the two arguments. The arguments are converted
to a number. A List, Dict or Float argument causes an error.
Example: >
:let bits = xor(bits, 0x80)
< Can also be used as a |method|: >
<
Can also be used as a |method|: >
:let bits = bits->xor(0x80)
<
*feature-list*
There are four types of features:
1. Features that are only supported when they have been enabled when Vim
@ -11183,21 +11434,22 @@ This does NOT work: >
*:let=<<* *:let-heredoc*
*E990* *E991* *E172* *E221*
:let {var-name} =<< [trim] {marker}
:let {var-name} =<< [trim] {endmarker}
text...
text...
{marker}
{endmarker}
Set internal variable {var-name} to a List containing
the lines of text bounded by the string {marker}.
{marker} must not contain white space.
{marker} cannot start with a lower case character.
The last line should end only with the {marker} string
without any other character. Watch out for white
space after {marker}!
the lines of text bounded by the string {endmarker}.
{endmarker} must not contain white space.
{endmarker} cannot start with a lower case character.
The last line should end only with the {endmarker}
string without any other character. Watch out for
white space after {endmarker}!
Without "trim" any white space characters in the lines
of text are preserved. If "trim" is specified before
{marker}, then indentation is stripped so you can do: >
{endmarker}, then indentation is stripped so you can
do: >
let text =<< trim END
if ok
echo 'done'
@ -11211,23 +11463,31 @@ text...
non-empty text line is stripped from the input lines.
All leading indentation exactly matching the leading
indentation before `let` is stripped from the line
containing {marker}. Note that the difference between
space and tab matters here.
containing {endmarker}. Note that the difference
between space and tab matters here.
If {var-name} didn't exist yet, it is created.
Cannot be followed by another command, but can be
followed by a comment.
To avoid line continuation to be applied, consider
adding 'C' to 'cpoptions': >
set cpo+=C
let var =<< END
\ leading backslash
END
set cpo-=C
<
Examples: >
let var1 =<< END
Sample text 1
Sample text 2
Sample text 3
END
Sample text 1
Sample text 2
Sample text 3
END
let data =<< trim DATA
1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
DATA
<
*E121*
@ -11355,21 +11615,6 @@ text...
Unlock the internal variable {name}. Does the
opposite of |:lockvar|.
*:eval*
:eval {expr} Evaluate {expr} and discard the result. Example: >
:eval Getlist()->Filter()->append('$')
< The expression is supposed to have a side effect,
since the resulting value is not used. In the example
the `append()` call appends the List with text to the
buffer. This is similar to `:call` but works with any
expression.
The command can be shortened to `:ev` or `:eva`, but
these are hard to recognize and therefore not to be
used.
:if {expr1} *:if* *:end* *:endif* *:en* *E171* *E579* *E580*
:en[dif] Execute the commands until the next matching ":else"
or ":endif" if {expr1} evaluates to non-zero.
@ -11656,6 +11901,21 @@ text...
And to get a beep: >
:exe "normal \<Esc>"
<
*:eval*
:eval {expr} Evaluate {expr} and discard the result. Example: >
:eval Getlist()->Filter()->append('$')
< The expression is supposed to have a side effect,
since the resulting value is not used. In the example
the `append()` call appends the List with text to the
buffer. This is similar to `:call` but works with any
expression.
The command can be shortened to `:ev` or `:eva`, but
these are hard to recognize and therefore not to be
used.
*:exe* *:execute*
:exe[cute] {expr1} .. Executes the string that results from the evaluation
of {expr1} as an Ex command.
@ -12835,6 +13095,23 @@ instead of failing in mysterious ways.
Test for support with: >
has('vimscript-3')
<
*scriptversion-4* >
:scriptversion 4
< Numbers with a leading zero are not recognized as octal. With the
previous version you get: >
echo 017 " displays 15
echo 018 " displays 18
< with script version 4: >
echo 017 " displays 17
echo 018 " displays 18
< Also, it is possible to use single quotes inside numbers to make them
easier to read: >
echo 1'000'000
< The quotes must be surrounded by digits.
Test for support with: >
has('vimscript-4')
==============================================================================
11. No +eval feature *no-eval-feature*

View File

@ -595,6 +595,10 @@ If you do not like the default folding, use an autocommand to add your desired
folding style instead. For example: >
autocmd FileType man setlocal foldmethod=indent foldenable
If you would like :Man {number} {name} to behave like man {number} {name} by
not running man {name} if no page is found, then use this: >
let g:ft_man_no_sect_fallback = 1
You may also want to set 'keywordprg' to make the |K| command open a manual
page in a Vim window: >
set keywordprg=:Man

View File

@ -1,4 +1,4 @@
*gui.txt* For Vim version 8.1. Last change: 2019 Aug 21
*gui.txt* For Vim version 8.1. Last change: 2019 Nov 16
VIM REFERENCE MANUAL by Bram Moolenaar
@ -309,7 +309,7 @@ because the menu command will always be applied to the top window.
If you are on the ':' line (or '/' or '?'), then clicking the left or right
mouse button will position the cursor on the ':' line (if 'mouse' contains
'c', 'a' or 'A').
'c' or 'a').
In any situation the middle mouse button may be clicked to paste the current
selection.
@ -560,8 +560,9 @@ floating menus that do not appear on the main menu bar.
*E330* *E327* *E331* *E336* *E333*
*E328* *E329* *E337* *E792*
To create a new menu item, use the ":menu" commands. They are mostly like
the ":map" set of commands but the first argument is a menu item name, given
as a path of menus and submenus with a '.' between them, e.g.: >
the ":map" set of commands (see |map-modes|), but the first argument is a menu
item name, given as a path of menus and submenus with a '.' between them,
e.g.: >
:menu File.Save :w<CR>
:inoremenu File.Save <C-O>:w<CR>

View File

@ -171,14 +171,14 @@ you can.
path {path}\gvim.exe
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\vim 5.6
DisplayName Vim 5.6: Edit with Vim popup menu entry
UninstallString {path}\uninstal.exe
UninstallString {path}\uninstall.exe
Replace {path} with the path that leads to the executable.
Don't type {default}, this is the value for the key itself.
To remove "Edit with Vim" from the popup menu, just remove the registry
entries mentioned above. The "uninstal.exe" program can do this for you. You
can also use the entry in the Windows standard "Add/Remove Programs" list.
entries mentioned above. The "uninstall.exe" program can do this for you.
You can also use the entry in the Windows standard "Add/Remove Programs" list.
If you notice that this entry overrules other file type associations, set
those associations again by hand (using Windows Explorer, see above). This

View File

@ -1,112 +1,17 @@
*hangulin.txt* For Vim version 8.1. Last change: 2015 Nov 24
*hangulin.txt* For Vim version 8.1. Last change: 2019 Nov 21
VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam
*hangul*
Vim had built-in support for hangul, the Korean language, for users without
XIM (X Input Method). Since it didn't work well and was not maintained it was
removed in Vim 8.1.2327.
Introduction *hangul*
------------
It is to input hangul, the Korean language, with Vim GUI version.
If you have a XIM program, you can use another |+xim| feature.
Basically, it is for anybody who has no XIM program.
If you want this hangul input mehod you can go back to Vim 8.1.2326 or
earlier. If you think this code is still useful and want to maintain it, make
a patch to add it back. However, making it work with UTF-8 encoding would be
best.
Compile
-------
Next is a basic option. You can add any other configure option. >
./configure --with-x --enable-multibyte --enable-hangulinput \
--disable-xim
And you should check feature.h. If |+hangul_input| feature is enabled
by configure, you can select more options such as keyboard type, 2 bulsik
or 3 bulsik. You can find keywords like next in there. >
#define HANGUL_DEFAULT_KEYBOARD 2
#define ESC_CHG_TO_ENG_MODE
/* #define X_LOCALE */
Environment variables
---------------------
You should set LANG variable to Korean locale such as ko, ko_KR.eucKR
or ko_KR.UTF-8.
If you set LC_ALL variable, it should be set to Korean locale also.
Vim resource
------------
You may want to set 'encoding' and 'fileencodings'.
Next are examples: >
:set encoding=euc-kr
:set encoding=utf-8
:set fileencodings=ucs-bom,utf-8,cp949,euc-kr,latin1
Keyboard
--------
You can change keyboard type (2 bulsik or 3 bulsik) using VIM_KEYBOARD
or HANGUL_KEYBOARD_TYPE environment variables. For sh, just do (2 bulsik): >
export VIM_KEYBOARD="2"
or >
export HANGUL_KEYBOARD_TYPE="2"
If both are set, VIM_KEYBOARD has higher priority.
Hangul Fonts
------------
If you use GTK version of gvim, you should set 'guifont' and 'guifontwide'.
For example: >
set guifont=Courier\ 12
set guifontwide=NanumGothicCoding\ 12
If you use Motif or Athena version of gvim, you should set 'guifontset' in
your vimrc. You can set fontset in the .Xdefaults file.
$HOME/.gvimrc: >
set guifontset=english_font,hangul_font
$HOME/.Xdefaults: >
Vim.font: english_font
! Nexts are for hangul menu with Athena
*international: True
Vim*fontSet: english_font,hangul_font
! Nexts are for hangul menu with Motif
*international: True
Vim*fontList: english_font;hangul_font:
attention! the , (comma) or ; (semicolon)
And there should be no ':set guifont'. If it exists, then gvim ignores
':set guifontset'. It means Vim runs without fontset supporting.
So, you can see only English. Hangul does not be correctly displayed.
After "fontset" feature is enabled, Vim does not allow using english
font only in "font" setting for syntax.
For example, if you use >
:set guifontset=eng_font,your_font
in your .gvimrc, then you should do for syntax >
:hi Comment guifg=Cyan font=another_eng_font,another_your_font
If you just do >
:hi Comment font=another_eng_font
then you can see a error message. Be careful!
hangul_font width should be twice than english_font width.
Unsupported Feature
-------------------
We don't support Johab font.
We don't support Hanja input.
And We don't have any plan to support them.
If you really need such features, you can use console version of Vim with a
capable terminal emulator.
Bug or Comment
--------------
Send comments, patches and suggestions to:
SungHyun Nam <goweol@gmail.com>
Chi-Deok Hwang <...>
vim:tw=78:ts=8:noet:ft=help:norl:

View File

@ -1,4 +1,4 @@
*helphelp.txt* For Vim version 8.1. Last change: 2019 May 04
*helphelp.txt* For Vim version 8.1. Last change: 2019 Oct 18
VIM REFERENCE MANUAL by Bram Moolenaar
@ -102,7 +102,11 @@ Help on help files *helphelp*
current file. See |help-translated|.
*:helpc* *:helpclose*
:helpc[lose] Close one help window, if there is one.
:helpc[lose] Close one help window, if there is one.
Vim will try to restore the window layout (including
cursor position) to the same layout it was before
opening the help window initially. This might cause
triggering several autocommands.
*:helpg* *:helpgrep*
:helpg[rep] {pattern}[@xx]

View File

@ -55,14 +55,14 @@ The ActiveState one should work, Strawberry Perl is a good alternative.
working: >
:perl VIM::Msg("Hello")
:pe[rl] << [endpattern]
:pe[rl] << [endmarker]
{script}
{endpattern}
{endmarker}
Execute Perl script {script}.
The {endpattern} after {script} must NOT be preceded
by any white space.
The {endmarker} after {script} must NOT be preceded by
any white space.
If [endpattern] is omitted, it defaults to a dot '.'
If [endmarker] is omitted, it defaults to a dot '.'
like for the |:append| and |:insert| commands. Using
'.' helps when inside a function, because "$i;" looks
like the start of an |:insert| command to Vim.

View File

@ -28,14 +28,14 @@ downloading Ruby there.
:rub[y] {cmd} Execute Ruby command {cmd}. A command to try it out: >
:ruby print "Hello"
:rub[y] << [endpattern]
:rub[y] << [endmarker]
{script}
{endpattern}
{endmarker}
Execute Ruby script {script}.
The {endpattern} after {script} must NOT be preceded
by any white space.
The {endmarker} after {script} must NOT be preceded by
any white space.
If [endpattern] is omitted, it defaults to a dot '.'
If [endmarker] is omitted, it defaults to a dot '.'
like for the |:append| and |:insert| commands.
This form of the |:ruby| command is mainly useful for

View File

@ -949,10 +949,12 @@ Function call arguments will indent 1 extra level. For two-space indentation: >
-------------
*PHP_IndentFunctionDeclarationParameters*
Extra indentation levels to add to arguments in multi-line function definitions. >
Extra indentation levels to add to arguments in multi-line function
definitions. >
let g:PHP_IndentFunctionDeclarationParameters = 1
Function arguments in declarations will indent 1 extra level. For two-space indentation: >
Function arguments in declarations will indent 1 extra level. For two-space
indentation: >
function call_the_thing(
$with_this,

View File

@ -1,4 +1,4 @@
*index.txt* For Vim version 8.1. Last change: 2019 Sep 02
*index.txt* For Vim version 8.1. Last change: 2019 Sep 27
VIM REFERENCE MANUAL by Bram Moolenaar
@ -73,14 +73,14 @@ tag char action in Insert mode ~
the cursor
|i_CTRL-Q| CTRL-Q same as CTRL-V, unless used for terminal
control flow
|i_CTRL-R| CTRL-R {0-9a-z"%#*:=}
|i_CTRL-R| CTRL-R {register}
insert the contents of a register
|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:=}
|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {register}
insert the contents of a register literally
|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {0-9a-z"%#*:=}
|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {register}
insert the contents of a register literally
and don't auto-indent
|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {0-9a-z"%#*:=}
|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {register}
insert the contents of a register literally
and fix indent.
CTRL-S (used for terminal control flow)
@ -781,6 +781,7 @@ tag char note action in Normal mode ~
|gn| gn 1,2 find the next match with the last used
search pattern and Visually select it
|gm| gm 1 go to character at middle of the screenline
|gM| gM 1 go to character at middle of the text line
|go| go 1 cursor to byte N in the buffer
|gp| ["x]gp 2 put the text [from register x] after the
cursor N times, leave the cursor after it

View File

@ -1,4 +1,4 @@
*insert.txt* For Vim version 8.1. Last change: 2019 Aug 21
*insert.txt* For Vim version 8.1. Last change: 2019 Oct 20
VIM REFERENCE MANUAL by Bram Moolenaar
@ -106,7 +106,7 @@ CTRL-K {char1} [char2]
CTRL-N Find next keyword (see |i_CTRL-N|).
CTRL-P Find previous keyword (see |i_CTRL-P|).
CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R*
CTRL-R {register} *i_CTRL-R*
Insert the contents of a register. Between typing CTRL-R and
the second character, '"' will be displayed to indicate that
you are expected to enter the name of a register.
@ -143,7 +143,7 @@ CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R*
sequence will be broken.
See |registers| about registers.
CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
CTRL-R CTRL-R {register} *i_CTRL-R_CTRL-R*
Insert the contents of a register. Works like using a single
CTRL-R, but the text is inserted literally, not as if typed.
This differs when the register contains characters like <BS>.
@ -155,7 +155,7 @@ CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
The '.' register (last inserted text) is still inserted as
typed.
CTRL-R CTRL-O {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-O*
CTRL-R CTRL-O {register} *i_CTRL-R_CTRL-O*
Insert the contents of a register literally and don't
auto-indent. Does the same as pasting with the mouse
|<MiddleMouse>|. When the register is linewise this will
@ -164,7 +164,7 @@ CTRL-R CTRL-O {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-O*
The '.' register (last inserted text) is still inserted as
typed.
CTRL-R CTRL-P {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-P*
CTRL-R CTRL-P {register} *i_CTRL-R_CTRL-P*
Insert the contents of a register literally and fix the
indent, like |[<MiddleMouse>|.
Does not replace characters!
@ -1124,7 +1124,7 @@ is used when the info popup is created. The option is a comma separated list
of values:
height maximum height of the popup
width maximum width of the popup
highlight highlight group of the popup (default is Pmenu)
highlight highlight group of the popup (default is PmenuSel)
align "item" (default) or "menu"
border "on" (default) or "off"
Example: >
@ -1138,6 +1138,27 @@ below the text, and the bottom of the menu otherwise.
After the info popup is created it can be found with |popup_findinfo()| and
properties can be changed with |popup_setoptions()|.
*complete-popuphidden*
If the information for the popup is obtained asynchronously, use "popuphidden"
in 'completeopt'. The info popup will then be initally hidden and
|popup_show()| must be called once it has been filled with the info. This can
be done with a |CompleteChanged| autocommand, something like this: >
set completeopt+=popuphidden
au CompleteChanged * call UpdateCompleteInfo()
func UpdateCompleteInfo()
" Cancel any pending info fetch
let item = v:event.completed_item
" Start fetching info for the item then call ShowCompleteInfo(info)
endfunc
func ShowCompleteInfo(info)
let id = popup_findinfo()
if id
call popup_settext(id, 'async info: ' .. a:info)
call popup_show(id)
endif
endfunc
< *complete-item-kind*
The "kind" item uses a single letter to indicate the kind of completion. This
may be used to show the completion differently (different color or icon).
Currently these types can be used:

View File

@ -1,4 +1,4 @@
*intro.txt* For Vim version 8.1. Last change: 2019 Aug 16
*intro.txt* For Vim version 8.1. Last change: 2019 Nov 11
VIM REFERENCE MANUAL by Bram Moolenaar
@ -234,7 +234,7 @@ Vim would never have become what it is now, without the help of these people!
Sung-Hyun Nam Work on multi-byte 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
Dominique Pelle Valgrind reports and many fixes
A.Politz Many bug reports and some fixes
George V. Reilly Win32 port, Win32 GUI start-off
Stephen Riehm bug collector

View File

@ -1,4 +1,4 @@
*map.txt* For Vim version 8.1. Last change: 2019 Jun 02
*map.txt* For Vim version 8.1. Last change: 2019 Nov 09
VIM REFERENCE MANUAL by Bram Moolenaar
@ -20,7 +20,8 @@ manual.
1.8 Examples |map-examples|
1.9 Using mappings |map-typing|
1.10 Mapping alt-keys |:map-alt-keys|
1.11 Mapping an operator |:map-operator|
1.11 Mapping in modifyOtherKeys mode |modifyOtherKeys|
1.12 Mapping an operator |:map-operator|
2. Abbreviations |abbreviations|
3. Local mappings and functions |script-local|
4. User-defined commands |user-commands|
@ -357,6 +358,8 @@ Some commands work both in Insert mode and Command-line mode, some not:
:cmap :cnoremap :cunmap :cmapclear - yes -
:lmap :lnoremap :lunmap :lmapclear yes* yes* yes*
* If 'iminsert' is 1, see |language-mapping| below.
The original Vi did not have separate mappings for
Normal/Visual/Operator-pending mode and for Insert/Command-line mode.
Therefore the ":map" and ":map!" commands enter and display mappings for
@ -777,6 +780,9 @@ In the GUI Vim handles the Alt key itself, thus mapping keys with ALT should
always work. But in a terminal Vim gets a sequence of bytes and has to figure
out whether ALT was pressed or not.
If the terminal supports the modifyOtherKeys mode and it has been enabled,
then Vim can recognize more key combinations, see |modifyOtherKeys| below.
By default Vim assumes that pressing the ALT key sets the 8th bit of a typed
character. Most decent terminals can work that way, such as xterm, aterm and
rxvt. If your <A-k> mappings don't work it might be that the terminal is
@ -814,7 +820,39 @@ on the terminal; that's a good last resource in case you want to send ESC when
using other applications but not when inside Vim.
1.11 MAPPING AN OPERATOR *:map-operator*
1.11 MAPPING IN modifyOtherKeys mode *modifyOtherKeys*
Xterm and a few other terminals can be put in a mode where keys with modifiers
are sent with a special escape code. Vim recognizes these codes and can then
make a difference between CTRL-H and Backspace, even when Backspace sends the
character 8. And many more special keys.
For xterm modifyOtherKeys is enabled in the builtin termcap entry. If this is
not used you can enable modifyOtherKeys with these lines in your vimrc: >
let &t_TI = "\<Esc>[>4;2m"
let &t_TE = "\<Esc>[>4;m"
In case the modifyOtherKeys mode causes problems you can disable it: >
let &t_TI = ""
let &t_TE = ""
It does not take effect immediately. To have this work without restarting Vim
execute a shell command, e.g.: `!ls` Or put the lines in your |vimrc|.
When modifyOtherKeys is enabled you can map <C-[> and <C-S-{>: >
imap <C-[> [[[
imap <C-S-{> {{{
Without modifyOtherKeys <C-[> and <C-S-{> are indistinguishable from Esc.
A known side effect effect is that in Insert mode the raw escape sequence is
inserted after the CTRL-V key. This can be used to check whether
modifyOtherKeys is enabled: In Insert mode type CTRL-V CTRL-V, if you get
one byte then modifyOtherKeys is off, if you get <1b>27;5;118~ then it is on.
When the 'esckeys' option is off, then modifyOtherKeys will be disabled in
Insert mode to avoid every key with a modifier causing Insert mode to end.
1.12 MAPPING AN OPERATOR *:map-operator*
An operator is used before a {motion} command. To define your own operator
you must create mapping that first sets the 'operatorfunc' option and then

View File

@ -1,4 +1,4 @@
*message.txt* For Vim version 8.1. Last change: 2019 Aug 23
*message.txt* For Vim version 8.1. Last change: 2019 Oct 19
VIM REFERENCE MANUAL by Bram Moolenaar
@ -480,7 +480,7 @@ try to solve the memory shortage. To stay on the safe side, exit Vim and
start again.
If this happens while Vim is still initializing, editing files is very
unlikely to work, therefore Vim will exit with value 123.
unlikely to work, therefore Vim will exit with value 123.
Buffers are only partly kept in memory, thus editing a very large file is
unlikely to cause an out-of-memory situation. Undo information is completely
@ -582,7 +582,8 @@ allowed for the command that was used.
Vim was not able to create a swap file. You can still edit the file, but if
Vim unexpectedly exits the changes will be lost. And Vim may consume a lot of
memory when editing a big file. You may want to change the 'directory' option
to avoid this error. See |swap-file|.
to avoid this error. This error is not given when 'directory' is empty. See
|swap-file|.
*E140* >
Use ! to write partial buffer

View File

@ -1,4 +1,4 @@
*motion.txt* For Vim version 8.1. Last change: 2019 Jun 02
*motion.txt* For Vim version 8.1. Last change: 2019 Nov 16
VIM REFERENCE MANUAL by Bram Moolenaar
@ -227,6 +227,12 @@ g^ When lines wrap ('wrap' on): To the first non-blank
gm Like "g0", but half a screenwidth to the right (or as
much as possible).
*gM*
gM Like "g0", but to halfway the text of the line.
With a count: to this percentage of text in the line.
Thus "10gM" is near the start of the text and "90gM"
is near the end of the text.
*g$* *g<End>*
g$ or g<End> When lines wrap ('wrap' on): To the last character of
the screen line and [count - 1] screen lines downward
@ -958,6 +964,7 @@ These commands are not marks themselves, but jump to a mark:
- numbered marks '0 - '9
- last insert position '^
- last change position '.
- last affected text area '[ and ']
- the Visual area '< and '>
- line numbers in placed signs
- line numbers in quickfix positions

View File

@ -1,4 +1,4 @@
*options.txt* For Vim version 8.1. Last change: 2019 Aug 21
*options.txt* For Vim version 8.1. Last change: 2019 Nov 10
VIM REFERENCE MANUAL by Bram Moolenaar
@ -856,6 +856,8 @@ A jump table for the options with a short description can be found at |Q_op|.
:set background&
< Vim will guess the value. In the GUI this should work correctly,
in other cases Vim might not be able to guess the right value.
If the GUI supports a dark theme, you can use the "d" flag in
'guioptions', see 'go-d'.
When the |t_RB| option is set, Vim will use it to request the background
color from the terminal. If the returned RGB value is dark/light and
@ -1683,8 +1685,6 @@ A jump table for the options with a short description can be found at |Q_op|.
'comments' 'com' string (default
"s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-")
local to buffer
{not available when compiled without the |+comments|
feature}
A comma separated list of strings that can start a comment line. See
|format-comments|. See |option-backslash| about using backslashes to
insert a space.
@ -1877,7 +1877,7 @@ A jump table for the options with a short description can be found at |Q_op|.
*'completeslash'* *'csl'*
'completeslash' 'csl' string (default: "")
local to buffer
{not in Vi} {only for MS-Windows}
{only for MS-Windows}
When this option is set it overrules 'shellslash' for completion:
- When this option is set to "slash", a forward slash is used for path
completion in insert mode. This is useful when editing HTML tag, or
@ -1917,7 +1917,14 @@ A jump table for the options with a short description can be found at |Q_op|.
completion in a popup window. Only works in combination
with "menu" or "menuone". Overrides "preview".
See |'completepopup'| for specifying properties.
{only works when compiled with the +textprop feature}
{only works when compiled with the |+textprop| feature}
popuphidden
Just like "popup" but initially hide the popup. Use a
|CompleteChanged| autocommand to fetch the info and call
|popup_show()| once the popup has been filled.
See the example at |complete-popuphidden|.
{only works when compiled with the |+textprop| feature}
noinsert Do not insert any text for a match until the user selects
a match from the menu. Only works in combination with
@ -2461,13 +2468,32 @@ A jump table for the options with a short description can be found at |Q_op|.
local to window
{not available when compiled without the |+syntax|
feature}
Highlight the screen line of the cursor with CursorLine
|hl-CursorLine|. Useful to easily spot the cursor. Will make screen
redrawing slower.
Highlight the text line of the cursor with CursorLine |hl-CursorLine|.
Useful to easily spot the cursor. Will make screen redrawing slower.
When Visual mode is active the highlighting isn't used to make it
easier to see the selected text.
*'cursorlineopt'* *'culopt'*
'cursorlineopt' 'culopt' string (default: "number,line")
local to window
{not available when compiled without the |+syntax|
feature}
Comma separated list of settings for how 'cursorline' is displayed.
Valid values:
"line" Highlight the text line of the cursor with
CursorLine |hl-CursorLine|.
"screenline" Highlight only the screen line of the cursor with
CursorLine |hl-CursorLine|.
"number" Highlight the line number of the cursor with
CursorLineNr |hl-CursorLineNr|.
Special value:
"both" Alias for the values "line,number".
"line" and "screenline" cannot be used together.
*'debug'*
'debug' string (default "")
global
@ -2565,7 +2591,7 @@ A jump table for the options with a short description can be found at |Q_op|.
security reasons.
*'dip'* *'diffopt'*
'diffopt' 'dip' string (default "internal,filler")
'diffopt' 'dip' string (default "internal,filler,closeoff")
global
{not available when compiled without the |+diff|
feature}
@ -2624,6 +2650,12 @@ A jump table for the options with a short description can be found at |Q_op|.
vertical Start diff mode with vertical splits (unless
explicitly specified otherwise).
closeoff When a window is closed where 'diff' is set
and there is only one window remaining in the
same tab page with 'diff' set, execute
`:diffoff` in that window. This undoes a
`:diffsplit` command.
hiddenoff Do not use diff mode for a buffer when it
becomes hidden.
@ -2674,7 +2706,7 @@ A jump table for the options with a short description can be found at |Q_op|.
- The swap file will be created in the first directory where this is
possible.
- Empty means that no swap file will be used (recovery is
impossible!).
impossible!) and no |E303| error will be given.
- A directory "." means to put the swap file in the same directory as
the edited file. On Unix, a dot is prepended to the file name, so
it doesn't show in a directory listing. On MS-Windows the "hidden"
@ -2907,6 +2939,9 @@ A jump table for the options with a short description can be found at |Q_op|.
won't work by default.
NOTE: This option is set to the Vi default value when 'compatible' is
set and to the Vim default value when 'compatible' is reset.
NOTE: when this option is off then the |modifyOtherKeys| functionality
is disabled while in Insert mode to avoid ending Insert mode with any
key that has a modifier.
*'eventignore'* *'ei'*
'eventignore' 'ei' string (default "")
@ -3720,6 +3755,9 @@ A jump table for the options with a short description can be found at |Q_op|.
*'go-c'*
'c' Use console dialogs instead of popup dialogs for simple
choices.
*'go-d'*
'd' Use dark theme variant if available. Currently only works for
GTK+ GUI.
*'go-e'*
'e' Add tab pages when indicated with 'showtabline'.
'guitablabel' can be used to change the text in the labels.
@ -3894,6 +3932,7 @@ A jump table for the options with a short description can be found at |Q_op|.
"8:SpecialKey,~:EndOfBuffer,@:NonText,
d:Directory,e:ErrorMsg,i:IncSearch,
l:Search,m:MoreMsg,M:ModeMsg,n:LineNr,
a:LineNrAbove,b:LineNrBelow,
N:CursorLineNr,r:Question,s:StatusLine,
S:StatusLineNC,c:VertSplit,t:Title,
v:Visual,V:VisualNOS,w:WarningMsg,
@ -3925,6 +3964,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|hl-ModeMsg| M Mode (e.g., "-- INSERT --")
|hl-LineNr| n line number for ":number" and ":#" commands, and
when 'number' or 'relativenumber' option is set.
|hl-LineNrAbove| a line number above the cursor for when the
'relativenumber' option is set.
|hl-LineNrBelow| b line number below the cursor for when the
'relativenumber' option is set.
|hl-CursorLineNr| N like n for when 'cursorline' or 'relativenumber' is
set.
|hl-Question| r |hit-enter| prompt and yes/no questions
@ -4817,9 +4860,9 @@ A jump table for the options with a short description can be found at |Q_op|.
off and the line continues beyond the right of the
screen.
*lcs-precedes*
precedes:c Character to show in the first column, when 'wrap'
is off and there is text preceding the character
visible in the first column.
precedes:c Character to show in the first visible column of the
physical line, when there is text preceding the
character visible in the first column.
*lcs-conceal*
conceal:c Character to show in place of concealed text, when
'conceallevel' is set to 1.
@ -5162,12 +5205,11 @@ A jump table for the options with a short description can be found at |Q_op|.
*'mouse'* *E538*
'mouse' string (default "", "a" for GUI, MS-DOS and Win32,
set to "a" in |defaults.vim|)
set to "a" or "nvi" in |defaults.vim|)
global
Enable the use of the mouse. Only works for certain terminals
(xterm, MS-DOS, Win32 |win32-mouse|, QNX pterm, *BSD console with
sysmouse and Linux console with gpm). For using the mouse in the
GUI, see |gui-mouse|.
Enable the use of the mouse. Works for most terminals (xterm, MS-DOS,
Win32 |win32-mouse|, QNX pterm, *BSD console with sysmouse and Linux
console with gpm). For using the mouse in the GUI, see |gui-mouse|.
The mouse can be enabled for different modes:
n Normal mode and Terminal modes
v Visual mode
@ -5178,7 +5220,15 @@ A jump table for the options with a short description can be found at |Q_op|.
r for |hit-enter| and |more-prompt| prompt
Normally you would enable the mouse in all five modes with: >
:set mouse=a
< When the mouse is not enabled, the GUI will still use the mouse for
< If your terminal can't overrule the mouse events going to the
application, use: >
:set mouse=nvi
< The you can press ":", select text for the system, and press Esc to go
back to Vim using the mouse events.
In |defaults.vim| "nvi" is used if the 'term' option is not matching
"xterm".
When the mouse is not enabled, the GUI will still use the mouse for
modeless selection. This doesn't move the text cursor.
See |mouse-using|. Also see |'clipboard'|.
@ -5197,6 +5247,8 @@ A jump table for the options with a short description can be found at |Q_op|.
mouse pointer is moved to the window with keyboard focus. Off is the
default because it makes using the pull down menus a little goofy, as
a pointer transit may activate a window unintentionally.
MS-Windows: Also see 'scrollfocus' for what window is scrolled when
using the mouse scroll whel.
*'mousehide'* *'mh'* *'nomousehide'* *'nomh'*
'mousehide' 'mh' boolean (default on)
@ -6241,6 +6293,15 @@ A jump table for the options with a short description can be found at |Q_op|.
file. This means that ":split | edit file" results in two windows
with scroll-binding, but ":split file" does not.
*'scrollfocus'* *'scf'* *'noscrollfocus'* *'noscf'*
'scrollfocus' 'scf' boolean (default off)
global
{only for MS-Windows GUI}
When using the scroll wheel and this option is set, the window under
the mouse pointer is scrolled. With this option off the current
window is scrolled.
Systems other than MS-Windows always behave like this option is on.
*'scrolljump'* *'sj'*
'scrolljump' 'sj' number (default 1)
global
@ -6412,8 +6473,8 @@ A jump table for the options with a short description can be found at |Q_op|.
See |option-backslash| about including spaces and backslashes.
Environment variables are expanded |:set_env|.
If the name of the shell contains a space, you might need to enclose
it in quotes or escape the space. Example with quotes: >
If the name of the shell contains a space, you need to enclose it in
quotes and escape the space. Example with quotes: >
:set shell=\"c:\program\ files\unix\sh.exe\"\ -f
< Note the backslash before each quote (to avoid starting a comment) and
each space (to avoid ending the option value). Also note that the
@ -6468,10 +6529,10 @@ A jump table for the options with a short description can be found at |Q_op|.
For Unix the default it "| tee". The stdout of the compiler is saved
in a file and echoed to the screen. If the 'shell' option is "csh" or
"tcsh" after initializations, the default becomes "|& tee". If the
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh" or "bash" the
default becomes "2>&1| tee". This means that stderr is also included.
Before using the 'shell' option a path is removed, thus "/bin/sh" uses
"sh".
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh", "zsh-beta",
"bash" or "fish" the default becomes "2>&1| tee". This means that
stderr is also included. Before using the 'shell' option a path is
removed, thus "/bin/sh" uses "sh".
The initialization of this option is done after reading the ".vimrc"
and the other initializations, so that when the 'shell' option is set
there, the 'shellpipe' option changes automatically, unless it was
@ -6511,13 +6572,14 @@ A jump table for the options with a short description can be found at |Q_op|.
The name of the temporary file can be represented by "%s" if necessary
(the file name is appended automatically if no %s appears in the value
of this option).
The default is ">". For Unix, if the 'shell' option is "csh", "tcsh"
or "zsh" during initializations, the default becomes ">&". If the
'shell' option is "sh", "ksh" or "bash" the default becomes
">%s 2>&1". This means that stderr is also included.
For Win32, the Unix checks are done and additionally "cmd" is checked
for, which makes the default ">%s 2>&1". Also, the same names with
".exe" appended are checked for.
The default is ">". For Unix, if the 'shell' option is "csh" or
"tcsh" during initializations, the default becomes ">&". If the
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh",
"zsh-beta","bash" or "fish", the default becomes ">%s 2>&1". This
means that stderr is also included. For Win32, the Unix checks are
done and additionally "cmd" is checked for, which makes the default
">%s 2>&1". Also, the same names with ".exe" appended are checked
for.
The initialization of this option is done after reading the ".vimrc"
and the other initializations, so that when the 'shell' option is set
there, the 'shellredir' option changes automatically unless it was
@ -6697,7 +6759,7 @@ A jump table for the options with a short description can be found at |Q_op|.
*'showbreak'* *'sbr'* *E595*
'showbreak' 'sbr' string (default "")
global
global or local to window |global-local|
{not available when compiled without the |+linebreak|
feature}
String to put at the start of lines that have been wrapped. Useful
@ -6714,7 +6776,10 @@ A jump table for the options with a short description can be found at |Q_op|.
Note that tabs after the showbreak will be displayed differently.
If you want the 'showbreak' to appear in between line numbers, add the
"n" flag to 'cpoptions'.
A window-local value overrules a global value. If the global value is
set and you want no value in the current window use NONE: >
:setlocal showbreak=NONE
<
*'showcmd'* *'sc'* *'noshowcmd'* *'nosc'*
'showcmd' 'sc' boolean (Vim default: on, off for Unix,
Vi default: off, set in |defaults.vim|)
@ -7352,6 +7417,8 @@ A jump table for the options with a short description can be found at |Q_op|.
vsplit Just like "split" but split vertically.
newtab Like "split", but open a new tab page. Overrules
"split" when both are present.
uselast If included, jump to the previously used window when
jumping to errors with |quickfix| commands.
*'synmaxcol'* *'smc'*
'synmaxcol' 'smc' number (default 3000)
@ -8152,8 +8219,8 @@ A jump table for the options with a short description can be found at |Q_op|.
Win32 and OS/2)
global or local to buffer |global-local|
Maximum number of changes that can be undone. Since undo information
is kept in memory, higher numbers will cause more memory to be used
(nevertheless, a single change can use an unlimited amount of memory).
is kept in memory, higher numbers will cause more memory to be used.
Nevertheless, a single change can already use a large amount of memory.
Set to 0 for Vi compatibility: One level of undo and "u" undoes
itself: >
set ul=0
@ -8540,8 +8607,8 @@ A jump table for the options with a short description can be found at |Q_op|.
":map <BS> X" to make backspace delete the character in front of the
cursor.
When 'l' is included and it is used after an operator at the end of a
line then it will not move to the next line. This makes "dl", "cl",
"yl" etc. work normally.
line (not an empty line) then it will not move to the next line. This
makes "dl", "cl", "yl" etc. work normally.
NOTE: This option is set to the Vi default value when 'compatible' is
set and to the Vim default value when 'compatible' is reset.
@ -8659,6 +8726,8 @@ A jump table for the options with a short description can be found at |Q_op|.
complete first match.
"list:longest" When more than one match, list all matches and
complete till longest common string.
"list:lastused" When more than one buffer matches, sort buffers
by time last used (other than the current buffer).
When there is only a single match, it is fully completed in all cases.
Examples: >

View File

@ -1,4 +1,4 @@
*pi_netrw.txt* For Vim version 8.1. Last change: 2019 Jul 17
*pi_netrw.txt* For Vim version 8.1. Last change: 2019 Nov 14
------------------------------------------------
NETRW REFERENCE MANUAL by Charles E. Campbell
@ -3512,7 +3512,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
- Click "Add..."
- Set External Editor (adjust path as needed, include
the quotes and !.! at the end):
"c:\Program Files\Vim\vim70\gvim.exe" !.!
"c:\Program Files\Vim\vim81\gvim.exe" !.!
- Check that the filetype in the box below is
{asterisk}.{asterisk} (all files), or whatever types
you want (cec: change {asterisk} to * ; I had to
@ -3762,8 +3762,8 @@ by obtaining a copy of the latest (often developmental) netrw at:
The <netrw.vim> script is typically installed on systems as something like:
>
/usr/local/share/vim/vim7x/plugin/netrwPlugin.vim
/usr/local/share/vim/vim7x/autoload/netrw.vim
/usr/local/share/vim/vim8x/plugin/netrwPlugin.vim
/usr/local/share/vim/vim8x/autoload/netrw.vim
(see output of :echo &rtp)
<
which is loaded automatically at startup (assuming :set nocp). If you
@ -3842,6 +3842,8 @@ netrw:
==============================================================================
12. History *netrw-history* {{{1
v166: Nov 06, 2019 * Removed a space from a nmap for "-"
* Numerous debugging statement changes
v163: Dec 05, 2017 * (Cristi Balan) reported that a setting ('sel')
was left changed
* (Holger Mitschke) reported a problem with
@ -3852,6 +3854,8 @@ netrw:
* (Holger Mitschke) amended this help file
with additional |g:netrw_special_syntax|
items
* Prioritized wget over curl for
g:netrw_http_cmd
v162: Sep 19, 2016 * (haya14busa) pointed out two syntax errors
with a patch; these are now fixed.
Oct 26, 2016 * I started using mate-terminal and found that
@ -4285,4 +4289,4 @@ netrw:
==============================================================================
Modelines: {{{1
vim:tw=78:ts=8:noet:ft=help:norl:fdm=marker
vim:tw=78:ts=8:ft=help:norl:fdm=marker

View File

@ -1,4 +1,4 @@
*popup.txt* For Vim version 8.1. Last change: 2019 Sep 04
*popup.txt* For Vim version 8.1. Last change: 2019 Nov 17
VIM REFERENCE MANUAL by Bram Moolenaar
@ -137,9 +137,7 @@ Options can be set on the window with `setwinvar()`, e.g.: >
call setwinvar(winid, '&wrap', 0)
And options can be set on the buffer with `setbufvar()`, e.g.: >
call setbufvar(winbufnr(winid), '&filetype', 'java')
Note that this does not trigger autocommands. Use `win_execute()` if you do
need them.
You can also use `win_execute()` with a ":setlocal" command.
==============================================================================
@ -188,6 +186,8 @@ popup_atcursor({what}, {options}) *popup_atcursor()*
\ moved: 'WORD',
\ })
< Use {options} to change the properties.
If "pos" is passed as "topleft" then the default for "line"
becomes "cursor+1".
Can also be used as a |method|: >
GetText()->popup_atcursor({})
@ -204,7 +204,7 @@ popup_beval({what}, {options}) *popup_beval()*
\ mousemoved: 'WORD',
\ })
< Use {options} to change the properties.
See |popup_beval_example| for an example use.
See |popup_beval_example| for an example.
Can also be used as a |method|: >
GetText()->popup_beval({})
@ -307,8 +307,9 @@ popup_findinfo() *popup_findinfo()*
Get the |window-ID| for the popup info window, as it used by
the popup menu. See |complete-popup|. The info popup is
hidden when not used, it can be deleted with |popup_clear()|
and |popup_close()|.
Return zero if there is none.
and |popup_close()|. Use |popup_show()| to reposition it to
the item in the popup menu.
Returns zero if there is none.
popup_findpreview() *popup_findpreview()*
@ -316,7 +317,6 @@ popup_findpreview() *popup_findpreview()*
Return zero if there is none.
popup_getoptions({id}) *popup_getoptions()*
Return the {options} for popup {id} in a Dict.
A zero value means the option was not set. For "zindex" the
@ -363,7 +363,9 @@ popup_getpos({id}) *popup_getpos()*
core_width width of the text box in screen cells
core_height height of the text box in screen cells
firstline line of the buffer at top (1 unless scrolled)
(not the value of the "firstline" property)
(not the value of the "firstline" property)
lastline line of the buffer at the bottom (updated when
the popup is redrawn)
scrollbar non-zero if a scrollbar is displayed
visible one if the popup is displayed, zero if hidden
Note that these are the actual screen positions. They differ
@ -476,6 +478,8 @@ popup_notification({what}, {options}) *popup_notification()*
popup_show({id}) *popup_show()*
If {id} is a hidden popup, show it now.
For {id} see `popup_hide()`.
If {id} is the info popup it will be positioned next to the
current popup menu item.
popup_setoptions({id}, {options}) *popup_setoptions()*
@ -540,6 +544,10 @@ properties. It is in one of four forms:
dictionary with a "col" entry, see below:
|popup-props|.
If you want to create a new buffer yourself use |bufadd()| and pass the buffer
number to popup_create().
It is not possible to use the buffer of a terminal window. *E278*
The second argument of |popup_create()| is a dictionary with options:
line Screen line where to position the popup. Can use a
number or "cursor", "cursor+1" or "cursor-1" to use
@ -561,6 +569,11 @@ The second argument of |popup_create()| is a dictionary with options:
Alternatively "center" can be used to position the
popup in the center of the Vim window, in which case
"line" and "col" are ignored.
posinvert When FALSE the value of "pos" is always used. When
TRUE (the default) and the popup does not fit
vertically and there is more space on the other side
then the popup is placed on the other side of the
position indicated by "line".
textprop When present the popup is positioned next to a text
property with this name and will move when the text
property moves. Use an empty string to remove. See
@ -678,8 +691,15 @@ The second argument of |popup_create()| is a dictionary with options:
- "expr": if the cursor moved outside |<cexpr>|
- [{start}, {end}]: if the cursor moved before column
{start} or after {end}
- [{lnum}, {start}, {end}]: if the cursor moved away
from line {lnum}, before column {start} or after
{end}
- [0, 0, 0] do not close the popup when the cursor
moves
The popup also closes if the cursor moves to another
line or to another window.
mousemoved Like "moved" but referring to the mouse pointer
position
cursorline non-zero: Highlight the cursor line. Also scrolls the
text to show this line (only works properly
when 'wrap' is off).
@ -742,22 +762,22 @@ is inserted or deleted. The popup functions like a tooltip.
These steps are needed to make this work:
- Define a text property type, it defines the name. >
call prop_type_add('popupMarker', {})
call prop_type_add('popupMarker', {})
- Place a text property at the desired text: >
let lnum = {line of the text}
let col = {start column of the text}
let len = {length of the text}
let propId = {arbitrary but unique number}
call prop_add(lnum, col, #{
call prop_add(lnum, col, #{
\ length: len,
\ type: 'popupMarker',
\ id: propId,
\ })
- Create a popup: >
let winid = popup_create('the text', #{
\ pos: 'botleft',
let winid = popup_create('the text', #{
\ pos: 'botleft',
\ textprop: 'popupMarker',
\ textpropid: propId,
\ border: [],
@ -797,7 +817,7 @@ Some hints:
a click, as in the example above, helps for that.
- If the text property is removed the popup is closed. Use something like
this: >
call prop_remove(#{type: 'popupMarker', id: propId})
call prop_remove(#{type: 'popupMarker', id: propId})
POPUP FILTER *popup-filter*
@ -842,9 +862,8 @@ Some recommended key actions:
cursor keys select another entry
Tab accept current suggestion
A mouse click arrives as <LeftMouse>. The coordinates are in
v:mouse_popup_col and v:mouse_popup_row. The top-left screen cell of the
popup is col 1, row 1 (not counting the border).
A mouse click arrives as <LeftMouse>. The coordinates can be obtained with
|getmousepos()|.
Vim provides standard filters |popup_filter_menu()| and
|popup_filter_yesno()|.

View File

@ -1,4 +1,4 @@
*quickfix.txt* For Vim version 8.1. Last change: 2019 Aug 06
*quickfix.txt* For Vim version 8.1. Last change: 2019 Oct 22
VIM REFERENCE MANUAL by Bram Moolenaar
@ -486,7 +486,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST:
etc.
< When the current file can't be |abandon|ed and the [!]
is not present, the command fails.
When an error is detected execution stops.
When going to the next entry fails execution stops.
The last buffer (or where an error occurred) becomes
the current buffer.
{cmd} can contain '|' to concatenate several commands.

View File

@ -1,4 +1,4 @@
*quickref.txt* For Vim version 8.1. Last change: 2019 Aug 20
*quickref.txt* For Vim version 8.1. Last change: 2019 Nov 07
VIM REFERENCE MANUAL by Bram Moolenaar
@ -47,6 +47,7 @@ N is used to indicate an optional count that can be given before the command.
|g$| N g$ to last character in screen line (differs from "$"
when lines wrap)
|gm| gm to middle of the screen line
|gM| gM to middle of the line
|bar| N | to column N (default: 1)
|f| N f{char} to the Nth occurrence of {char} to the right
|F| N F{char} to the Nth occurrence of {char} to the left
@ -291,7 +292,7 @@ moving around:
|i_CTRL-A| CTRL-A insert previously inserted text
|i_CTRL-@| CTRL-@ insert previously inserted text and stop
Insert mode
|i_CTRL-R| CTRL-R {0-9a-z%#:.-="} insert the contents of a register
|i_CTRL-R| CTRL-R {register} insert the contents of a register
|i_CTRL-N| CTRL-N insert next match of identifier before the
cursor
@ -670,6 +671,7 @@ Short explanation of each option: *option-list*
'cursorbind' 'crb' move cursor in window as it moves in other windows
'cursorcolumn' 'cuc' highlight the screen column of the cursor
'cursorline' 'cul' highlight the screen line of the cursor
'cursorlineopt' 'culopt' settings for 'cursorline'
'debug' set to "msg" to see all error messages
'define' 'def' pattern to be used to find a macro definition
'delcombine' 'deco' delete combining characters on their own
@ -867,6 +869,7 @@ Short explanation of each option: *option-list*
'runtimepath' 'rtp' list of directories used for runtime files
'scroll' 'scr' lines to scroll with CTRL-U and CTRL-D
'scrollbind' 'scb' scroll in window as other windows scroll
'scrollfocus' 'scf' scroll wheel applies to window under pointer
'scrolljump' 'sj' minimum number of lines to scroll
'scrolloff' 'so' minimum nr. of lines above and below cursor
'scrollopt' 'sbo' how 'scrollbind' should behave
@ -1076,8 +1079,7 @@ Short explanation of each option: *option-list*
three digits)
|c_CTRL-K| CTRL-K {char1} {char2}
enter digraph (See |Q_di|)
|c_CTRL-R| CTRL-R {0-9a-z"%#:-=}
insert the contents of a register
|c_CTRL-R| CTRL-R {register} insert the contents of a register
|c_<Left>| <Left>/<Right> cursor left/right
|c_<S-Left>| <S-Left>/<S-Right> cursor one word left/right

View File

@ -1,4 +1,4 @@
*repeat.txt* For Vim version 8.1. Last change: 2019 Jun 14
*repeat.txt* For Vim version 8.1. Last change: 2019 Sep 20
VIM REFERENCE MANUAL by Bram Moolenaar
@ -219,10 +219,10 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
When {file} contains wildcards it is expanded to all
matching files. Example: >
:runtime! plugin/*.vim
:runtime! plugin/**/*.vim
< This is what Vim uses to load the plugin files when
starting up. This similar command: >
:runtime plugin/*.vim
:runtime plugin/**/*.vim
< would source the first file only.
When 'verbose' is one or higher, there is a message

View File

@ -1,4 +1,4 @@
*sign.txt* For Vim version 8.1. Last change: 2019 Sep 06
*sign.txt* For Vim version 8.1. Last change: 2019 Nov 12
VIM REFERENCE MANUAL by Gordon Prieur
@ -48,8 +48,8 @@ When signs are defined for a file, Vim will automatically add a column of two
characters to display them in. When the last sign is unplaced the column
disappears again. This behavior can be changed with the 'signcolumn' option.
The color of the column is set with the SignColumn group |hl-SignColumn|.
Example to set the color: >
The color of the column is set with the SignColumn highlight group
|hl-SignColumn|. Example to set the color: >
:highlight SignColumn guibg=darkgrey
<
@ -71,6 +71,8 @@ placed in the named group. The sign identifier is unique within a group. The
sign group allows Vim plugins to use unique signs without interfering with
other plugins using signs.
The group name "popupmenu" is used by popup windows where 'cursorline' is set.
*sign-priority*
Each placed sign is assigned a priority value. When multiple signs are placed
on the same line, the attributes of the sign with the highest priority is used

View File

@ -1,4 +1,4 @@
*syntax.txt* For Vim version 8.1. Last change: 2019 Jul 15
*syntax.txt* For Vim version 8.1. Last change: 2019 Nov 14
VIM REFERENCE MANUAL by Bram Moolenaar
@ -60,8 +60,8 @@ If the VIM environment variable is not set, Vim will try to find
the path in another way (see |$VIMRUNTIME|). Usually this works just
fine. If it doesn't, try setting the VIM environment variable to the
directory where the Vim stuff is located. For example, if your syntax files
are in the "/usr/vim/vim50/syntax" directory, set $VIMRUNTIME to
"/usr/vim/vim50". You must do this in the shell, before starting Vim.
are in the "/usr/vim/vim81/syntax" directory, set $VIMRUNTIME to
"/usr/vim/vim81". You must do this in the shell, before starting Vim.
This command also sources the |menu.vim| script when the GUI is running or
will start soon. See |'go-M'| about avoiding that.
@ -476,6 +476,16 @@ conversion. See |-E| and |-s-ex| for details. It is probably best to create a
script to replace all the -c commands and use it with the -u flag instead of
specifying each command separately.
*hl-TOhtmlProgress* *TOhtml-progress-color*
When displayed, the progress bar will show colored boxes along the statusline
as the HTML conversion proceeds. By default, the background color as the
current "DiffDelete" highlight group is used. If "DiffDelete" and "StatusLine"
have the same background color, TOhtml will automatically adjust the color to
differ. If you do not like the automatically selected colors, you can define
your own highlight colors for the progress bar. Example: >
hi TOhtmlProgress guifg=#c0ffee ctermbg=7
<
*g:html_number_lines*
Default: current 'number' setting.
When 0, buffer text is displayed in the generated HTML without line numbering.
@ -507,8 +517,8 @@ For example: >
<
*g:html_use_css*
Default: 1.
When 1, generate valid HTML 4.01 markup with CSS1 styling, supported in all
modern browsers and most old browsers.
When 1, generate valid HTML 5 markup with CSS styling, supported in all modern
browsers and many old browsers.
When 0, generate <font> tags and similar outdated markup. This is not
recommended but it may work better in really old browsers, email clients,
forum posts, and similar situations where basic CSS support is unavailable.
@ -580,23 +590,43 @@ affected in this way as follows:
Example, to make the fold column and line numbers uncopyable: >
:let g:html_prevent_copy = "fn"
<
This feature is currently implemented by inserting read-only <input> elements
into the markup to contain the uncopyable areas. This does not work well in
all cases. When pasting to some applications which understand HTML, the
<input> elements also get pasted. But plain-text paste destinations should
always work.
The method used to prevent copying in the generated page depends on the value
of |g:html_use_input_for_pc|.
*g:html_use_input_for_pc*
Default: "fallback"
If |g:html_prevent_copy| is non-empty, then:
When "all", read-only <input> elements are used in place of normal text for
uncopyable regions. In some browsers, especially older browsers, after
selecting an entire page and copying the selection, the <input> tags are not
pasted with the page text. If |g:html_no_invalid| is 0, the <input> tags have
invalid type; this works in more browsers, but the page will not validate.
Note: this method does NOT work in recent versions of Chrome and equivalent
browsers; the <input> tags get pasted with the text.
When "fallback" (default value), the same <input> elements are generated for
older browsers, but newer browsers (detected by CSS feature query) hide the
<input> elements and instead use generated content in an ::before pseudoelement
to display the uncopyable text. This method should work with the largest
number of browsers, both old and new.
When "none", the <input> elements are not generated at all. Only the
generated-content method is used. This means that old browsers, notably
Internet Explorer, will either copy the text intended not to be copyable, or
the non-copyable text may not appear at all. However, this is the most
standards-based method, and there will be much less markup.
*g:html_no_invalid*
Default: 0.
When 0, if |g:html_prevent_copy| is non-empty, an invalid attribute is
intentionally inserted into the <input> element for the uncopyable areas. This
increases the number of applications you can paste to without also pasting the
<input> elements. Specifically, Microsoft Word will not paste the <input>
elements if they contain this invalid attribute.
When 1, no invalid markup is ever intentionally inserted, and the generated
page should validate. However, be careful pasting into Microsoft Word when
|g:html_prevent_copy| is non-empty; it can be hard to get rid of the <input>
elements which get pasted.
When 0, if |g:html_prevent_copy| is non-empty and |g:html_use_input_for_pc| is
not "none", an invalid attribute is intentionally inserted into the <input>
element for the uncopyable areas. This prevents pasting the <input> elements
in some applications. Specifically, some versions of Microsoft Word will not
paste the <input> elements if they contain this invalid attribute. When 1, no
invalid markup is inserted, and the generated page should validate. However,
<input> elements may be pasted into some applications and can be difficult to
remove afterward.
*g:html_hover_unfold*
Default: 0.
@ -1158,6 +1188,26 @@ startup vimrc: >
:let filetype_w = "cweb"
DART *dart.vim* *ft-dart-syntax*
Dart is an object-oriented, typed, class defined, garbage collected language
used for developing mobile, desktop, web, and back-end applications. Dart uses
a C-like syntax derived from C, Java, and JavaScript, with features adopted
from Smalltalk, Python, Ruby, and others.
More information about the language and its development environment at the
official Dart language website at https://dart.dev
dart.vim syntax detects and highlights Dart statements, reserved words,
type declarations, storage classes, conditionals, loops, interpolated values,
and comments. There is no support idioms from Flutter or any other Dart
framework.
Changes, fixes? Submit an issue or pull request via:
https://github.com/pr3d4t0r/dart-vim-syntax/
DESKTOP *desktop.vim* *ft-desktop-syntax*
Primary goal of this syntax file is to highlight .desktop and .directory files
@ -1923,6 +1973,16 @@ displayed line. The default value is 10. The disadvantage of using a larger
number is that redrawing can become slow.
JSON *json.vim* *ft-json-syntax*
The json syntax file provides syntax highlighting with conceal support by
default. To disable concealment: >
let g:vim_json_conceal = 0
To disable syntax highlighting of errors: >
let g:vim_json_warnings = 0
LACE *lace.vim* *ft-lace-syntax*
Lace (Language for Assembly of Classes in Eiffel) is case insensitive, but the
@ -5041,8 +5101,15 @@ IncSearch 'incsearch' highlighting; also used for the text replaced with
*hl-LineNr*
LineNr Line number for ":number" and ":#" commands, and when 'number'
or 'relativenumber' option is set.
*hl-LineNrAbove*
LineNrAbove Line number for when the 'relativenumber'
option is set, above the cursor line.
*hl-LineNrBelow*
LineNrBelow Line number for when the 'relativenumber'
option is set, below the cursor line.
*hl-CursorLineNr*
CursorLineNr Like LineNr when 'cursorline' or 'relativenumber' is set for
CursorLineNr Like LineNr when 'cursorline' is set and 'cursorlineopt' is
set to "number" or "both", or 'relativenumber' is set, for
the cursor line.
*hl-MatchParen*
MatchParen The character under the cursor or just before it, if it

View File

@ -183,9 +183,11 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'csverb' options.txt /*'csverb'*
'cuc' options.txt /*'cuc'*
'cul' options.txt /*'cul'*
'culopt' options.txt /*'culopt'*
'cursorbind' options.txt /*'cursorbind'*
'cursorcolumn' options.txt /*'cursorcolumn'*
'cursorline' options.txt /*'cursorline'*
'cursorlineopt' options.txt /*'cursorlineopt'*
'cwh' options.txt /*'cwh'*
'debug' options.txt /*'debug'*
'deco' options.txt /*'deco'*
@ -310,6 +312,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'go-a' options.txt /*'go-a'*
'go-b' options.txt /*'go-b'*
'go-c' options.txt /*'go-c'*
'go-d' options.txt /*'go-d'*
'go-e' options.txt /*'go-e'*
'go-f' options.txt /*'go-f'*
'go-g' options.txt /*'go-g'*
@ -660,7 +663,9 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'nosb' options.txt /*'nosb'*
'nosc' options.txt /*'nosc'*
'noscb' options.txt /*'noscb'*
'noscf' options.txt /*'noscf'*
'noscrollbind' options.txt /*'noscrollbind'*
'noscrollfocus' options.txt /*'noscrollfocus'*
'noscs' options.txt /*'noscs'*
'nosecure' options.txt /*'nosecure'*
'nosft' options.txt /*'nosft'*
@ -840,10 +845,12 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'sbr' options.txt /*'sbr'*
'sc' options.txt /*'sc'*
'scb' options.txt /*'scb'*
'scf' options.txt /*'scf'*
'scl' options.txt /*'scl'*
'scr' options.txt /*'scr'*
'scroll' options.txt /*'scroll'*
'scrollbind' options.txt /*'scrollbind'*
'scrollfocus' options.txt /*'scrollfocus'*
'scrolljump' options.txt /*'scrolljump'*
'scrolloff' options.txt /*'scrolloff'*
'scrollopt' options.txt /*'scrollopt'*
@ -1013,6 +1020,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
't_Sb' term.txt /*'t_Sb'*
't_Sf' term.txt /*'t_Sf'*
't_Si' term.txt /*'t_Si'*
't_TE' term.txt /*'t_TE'*
't_TI' term.txt /*'t_TI'*
't_Te' term.txt /*'t_Te'*
't_Ts' term.txt /*'t_Ts'*
't_VS' term.txt /*'t_VS'*
@ -4038,6 +4047,8 @@ E274 eval.txt /*E274*
E275 textprop.txt /*E275*
E276 eval.txt /*E276*
E277 remote.txt /*E277*
E278 popup.txt /*E278*
E279 terminal.txt /*E279*
E28 syntax.txt /*E28*
E280 if_tcl.txt /*E280*
E282 starting.txt /*E282*
@ -5001,6 +5012,8 @@ S change.txt /*S*
SHELL starting.txt /*SHELL*
SQLGetType ft_sql.txt /*SQLGetType*
SQLSetType ft_sql.txt /*SQLSetType*
SafeState autocmd.txt /*SafeState*
SafeStateAgain autocmd.txt /*SafeStateAgain*
Select visual.txt /*Select*
Select-mode visual.txt /*Select-mode*
Select-mode-mapping visual.txt /*Select-mode-mapping*
@ -5025,6 +5038,7 @@ TERM starting.txt /*TERM*
TOhtml-encoding syntax.txt /*TOhtml-encoding*
TOhtml-encoding-detect syntax.txt /*TOhtml-encoding-detect*
TOhtml-performance syntax.txt /*TOhtml-performance*
TOhtml-progress-color syntax.txt /*TOhtml-progress-color*
TOhtml-uncopyable-text syntax.txt /*TOhtml-uncopyable-text*
TOhtml-wrap-text syntax.txt /*TOhtml-wrap-text*
TRUE eval.txt /*TRUE*
@ -5042,6 +5056,7 @@ Terminal-Job terminal.txt /*Terminal-Job*
Terminal-Normal terminal.txt /*Terminal-Normal*
Terminal-mode terminal.txt /*Terminal-mode*
TerminalOpen autocmd.txt /*TerminalOpen*
TerminalWinOpen autocmd.txt /*TerminalWinOpen*
TextChanged autocmd.txt /*TextChanged*
TextChangedI autocmd.txt /*TextChangedI*
TextChangedP autocmd.txt /*TextChangedP*
@ -5305,6 +5320,7 @@ arglist-quit usr_07.txt /*arglist-quit*
arglistid() eval.txt /*arglistid()*
argument-list editing.txt /*argument-list*
argv() eval.txt /*argv()*
argv-variable eval.txt /*argv-variable*
as motion.txt /*as*
asin() eval.txt /*asin()*
asm.vim syntax.txt /*asm.vim*
@ -5782,8 +5798,10 @@ compl-vim insert.txt /*compl-vim*
compl-whole-line insert.txt /*compl-whole-line*
complete() eval.txt /*complete()*
complete-functions insert.txt /*complete-functions*
complete-item-kind insert.txt /*complete-item-kind*
complete-items insert.txt /*complete-items*
complete-popup insert.txt /*complete-popup*
complete-popuphidden insert.txt /*complete-popuphidden*
complete_CTRL-E insert.txt /*complete_CTRL-E*
complete_CTRL-Y insert.txt /*complete_CTRL-Y*
complete_add() eval.txt /*complete_add()*
@ -5943,6 +5961,7 @@ daB motion.txt /*daB*
daW motion.txt /*daW*
dab motion.txt /*dab*
dap motion.txt /*dap*
dart.vim syntax.txt /*dart.vim*
das motion.txt /*das*
date-functions usr_41.txt /*date-functions*
dav pi_netrw.txt /*dav*
@ -6394,6 +6413,7 @@ ft-csh-syntax syntax.txt /*ft-csh-syntax*
ft-css-omni insert.txt /*ft-css-omni*
ft-cweb-syntax syntax.txt /*ft-cweb-syntax*
ft-cynlib-syntax syntax.txt /*ft-cynlib-syntax*
ft-dart-syntax syntax.txt /*ft-dart-syntax*
ft-dash-syntax syntax.txt /*ft-dash-syntax*
ft-desktop-syntax syntax.txt /*ft-desktop-syntax*
ft-dircolors-syntax syntax.txt /*ft-dircolors-syntax*
@ -6423,6 +6443,7 @@ ft-ia64-syntax syntax.txt /*ft-ia64-syntax*
ft-inform-syntax syntax.txt /*ft-inform-syntax*
ft-java-syntax syntax.txt /*ft-java-syntax*
ft-javascript-omni insert.txt /*ft-javascript-omni*
ft-json-syntax syntax.txt /*ft-json-syntax*
ft-ksh-syntax syntax.txt /*ft-ksh-syntax*
ft-lace-syntax syntax.txt /*ft-lace-syntax*
ft-lex-syntax syntax.txt /*ft-lex-syntax*
@ -6628,6 +6649,7 @@ g:html_prevent_copy syntax.txt /*g:html_prevent_copy*
g:html_start_line syntax.txt /*g:html_start_line*
g:html_use_css syntax.txt /*g:html_use_css*
g:html_use_encoding syntax.txt /*g:html_use_encoding*
g:html_use_input_for_pc syntax.txt /*g:html_use_input_for_pc*
g:html_use_xhtml syntax.txt /*g:html_use_xhtml*
g:html_whole_filler syntax.txt /*g:html_whole_filler*
g:netrw_altfile pi_netrw.txt /*g:netrw_altfile*
@ -6800,6 +6822,7 @@ gF editing.txt /*gF*
gH visual.txt /*gH*
gI insert.txt /*gI*
gJ change.txt /*gJ*
gM motion.txt /*gM*
gN visual.txt /*gN*
gP change.txt /*gP*
gQ intro.txt /*gQ*
@ -6852,6 +6875,7 @@ getlatestvimscripts-install pi_getscript.txt /*getlatestvimscripts-install*
getline() eval.txt /*getline()*
getloclist() eval.txt /*getloclist()*
getmatches() eval.txt /*getmatches()*
getmousepos() eval.txt /*getmousepos()*
getpid() eval.txt /*getpid()*
getpos() eval.txt /*getpos()*
getqflist() eval.txt /*getqflist()*
@ -7085,6 +7109,8 @@ hl-Folded syntax.txt /*hl-Folded*
hl-Ignore syntax.txt /*hl-Ignore*
hl-IncSearch syntax.txt /*hl-IncSearch*
hl-LineNr syntax.txt /*hl-LineNr*
hl-LineNrAbove syntax.txt /*hl-LineNrAbove*
hl-LineNrBelow syntax.txt /*hl-LineNrBelow*
hl-MatchParen syntax.txt /*hl-MatchParen*
hl-Menu syntax.txt /*hl-Menu*
hl-ModeMsg syntax.txt /*hl-ModeMsg*
@ -7109,6 +7135,7 @@ hl-StatusLine syntax.txt /*hl-StatusLine*
hl-StatusLineNC syntax.txt /*hl-StatusLineNC*
hl-StatusLineTerm syntax.txt /*hl-StatusLineTerm*
hl-StatusLineTermNC syntax.txt /*hl-StatusLineTermNC*
hl-TOhtmlProgress syntax.txt /*hl-TOhtmlProgress*
hl-TabLine syntax.txt /*hl-TabLine*
hl-TabLineFill syntax.txt /*hl-TabLineFill*
hl-TabLineSel syntax.txt /*hl-TabLineSel*
@ -7287,6 +7314,7 @@ if_ruby.txt if_ruby.txt /*if_ruby.txt*
if_sniff.txt if_sniff.txt /*if_sniff.txt*
if_tcl.txt if_tcl.txt /*if_tcl.txt*
ignore-errors eval.txt /*ignore-errors*
ignore-timestamp editing.txt /*ignore-timestamp*
improved-autocmds-5.4 version5.txt /*improved-autocmds-5.4*
improved-quickfix version5.txt /*improved-quickfix*
improved-sessions version5.txt /*improved-sessions*
@ -7409,6 +7437,7 @@ join() eval.txt /*join()*
js_decode() eval.txt /*js_decode()*
js_encode() eval.txt /*js_encode()*
jsbterm-mouse options.txt /*jsbterm-mouse*
json.vim syntax.txt /*json.vim*
json_decode() eval.txt /*json_decode()*
json_encode() eval.txt /*json_encode()*
jtags tagsrch.txt /*jtags*
@ -7683,6 +7712,7 @@ modeless-selection gui.txt /*modeless-selection*
modeline options.txt /*modeline*
modeline-local options.txt /*modeline-local*
modeline-version options.txt /*modeline-version*
modifyOtherKeys map.txt /*modifyOtherKeys*
moo.vim syntax.txt /*moo.vim*
more-compatible version5.txt /*more-compatible*
more-prompt message.txt /*more-prompt*
@ -8078,7 +8108,6 @@ new-vimgrep version7.txt /*new-vimgrep*
new-virtedit version6.txt /*new-virtedit*
news intro.txt /*news*
nextnonblank() eval.txt /*nextnonblank()*
nice todo.txt /*nice*
no-eval-feature eval.txt /*no-eval-feature*
no-type-checking eval.txt /*no-type-checking*
no_buffers_menu gui.txt /*no_buffers_menu*
@ -8644,6 +8673,7 @@ scriptversion eval.txt /*scriptversion*
scriptversion-1 eval.txt /*scriptversion-1*
scriptversion-2 eval.txt /*scriptversion-2*
scriptversion-3 eval.txt /*scriptversion-3*
scriptversion-4 eval.txt /*scriptversion-4*
scroll-binding scroll.txt /*scroll-binding*
scroll-cursor scroll.txt /*scroll-cursor*
scroll-down scroll.txt /*scroll-down*
@ -8923,6 +8953,7 @@ starting.txt starting.txt /*starting.txt*
startup starting.txt /*startup*
startup-options starting.txt /*startup-options*
startup-terminal term.txt /*startup-terminal*
state() eval.txt /*state()*
static-tag tagsrch.txt /*static-tag*
status-line windows.txt /*status-line*
statusmsg-variable eval.txt /*statusmsg-variable*
@ -9093,6 +9124,8 @@ t_ST term.txt /*t_ST*
t_Sb term.txt /*t_Sb*
t_Sf term.txt /*t_Sf*
t_Si term.txt /*t_Si*
t_TE term.txt /*t_TE*
t_TI term.txt /*t_TI*
t_Te term.txt /*t_Te*
t_Ts term.txt /*t_Ts*
t_VS term.txt /*t_VS*
@ -9333,6 +9366,7 @@ term_list() terminal.txt /*term_list()*
term_scrape() terminal.txt /*term_scrape()*
term_sendkeys() terminal.txt /*term_sendkeys()*
term_setansicolors() terminal.txt /*term_setansicolors()*
term_setapi() terminal.txt /*term_setapi()*
term_setkill() terminal.txt /*term_setkill()*
term_setrestore() terminal.txt /*term_setrestore()*
term_setsize() terminal.txt /*term_setsize()*
@ -9360,6 +9394,7 @@ termdebug_wide terminal.txt /*termdebug_wide*
terminal terminal.txt /*terminal*
terminal-api terminal.txt /*terminal-api*
terminal-client-server terminal.txt /*terminal-client-server*
terminal-close terminal.txt /*terminal-close*
terminal-colors os_unix.txt /*terminal-colors*
terminal-communication terminal.txt /*terminal-communication*
terminal-cursor-style terminal.txt /*terminal-cursor-style*
@ -9373,6 +9408,7 @@ terminal-functions usr_41.txt /*terminal-functions*
terminal-info term.txt /*terminal-info*
terminal-job-index index.txt /*terminal-job-index*
terminal-key-codes term.txt /*terminal-key-codes*
terminal-mouse term.txt /*terminal-mouse*
terminal-ms-windows terminal.txt /*terminal-ms-windows*
terminal-options term.txt /*terminal-options*
terminal-output-codes term.txt /*terminal-output-codes*
@ -9566,6 +9602,7 @@ utf-8-typing mbyte.txt /*utf-8-typing*
utf8 mbyte.txt /*utf8*
v visual.txt /*v*
v: eval.txt /*v:*
v:argv eval.txt /*v:argv*
v:beval_bufnr eval.txt /*v:beval_bufnr*
v:beval_col eval.txt /*v:beval_col*
v:beval_lnum eval.txt /*v:beval_lnum*
@ -9968,6 +10005,7 @@ win_gotoid() eval.txt /*win_gotoid()*
win_id2tabwin() eval.txt /*win_id2tabwin()*
win_id2win() eval.txt /*win_id2win()*
win_screenpos() eval.txt /*win_screenpos()*
win_splitmove() eval.txt /*win_splitmove()*
winbufnr() eval.txt /*winbufnr()*
wincol() eval.txt /*wincol()*
window windows.txt /*window*
@ -10153,6 +10191,7 @@ zz scroll.txt /*zz*
{move-around} visual.txt /*{move-around}*
{offset} pattern.txt /*{offset}*
{pat} autocmd.txt /*{pat}*
{register} change.txt /*{register}*
{rhs} map.txt /*{rhs}*
{subject} helphelp.txt /*{subject}*
{} intro.txt /*{}*

View File

@ -1,4 +1,4 @@
*tagsrch.txt* For Vim version 8.1. Last change: 2019 Jun 10
*tagsrch.txt* For Vim version 8.1. Last change: 2019 Nov 07
VIM REFERENCE MANUAL by Bram Moolenaar
@ -436,7 +436,7 @@ files here, it is only supported for backwards compatibility :-).
Lines in Emacs tags files can be very long. Vim only deals with lines of up
to about 510 bytes. To see whether lines are ignored set 'verbose' to 5 or
higher.
higher. Non-Emacs tags file lines can be any length.
*tags-option*
The 'tags' option is a list of file names. Each of these files is searched

View File

@ -1,4 +1,4 @@
*term.txt* For Vim version 8.1. Last change: 2019 May 07
*term.txt* For Vim version 8.1. Last change: 2019 Oct 27
VIM REFERENCE MANUAL by Bram Moolenaar
@ -80,14 +80,19 @@ can do this best in your .vimrc. Example: >
<
*raw-terminal-mode*
For normal editing the terminal will be put into "raw" mode. The strings
defined with 't_ti' and 't_ks' will be sent to the terminal. Normally this
puts the terminal in a state where the termcap codes are valid and activates
the cursor and function keys. When Vim exits the terminal will be put back
into the mode it was before Vim started. The strings defined with 't_te' and
't_ke' will be sent to the terminal. On the Amiga, with commands that execute
an external command (e.g., "!!"), the terminal will be put into Normal mode
for a moment. This means that you can stop the output to the screen by
hitting a printing key. Output resumes when you hit <BS>.
defined with 't_ti', 't_TI' and 't_ks' will be sent to the terminal. Normally
this puts the terminal in a state where the termcap codes are valid and
activates the cursor and function keys.
When Vim exits the terminal will be put back into the mode it was before Vim
started. The strings defined with 't_te', 't_TE' and 't_ke' will be sent to
the terminal. On the Amiga, with commands that execute an external command
(e.g., "!!"), the terminal will be put into Normal mode for a moment. This
means that you can stop the output to the screen by hitting a printing key.
Output resumes when you hit <BS>.
Note: When 't_ti' is not empty, Vim assumes that it causes switching to the
alternate screen. This may slightly change what happens when executing a
shell command or exiting Vim. To avoid this use 't_TI' and 't_TE'.
*xterm-bracketed-paste*
When the 't_BE' option is set then 't_BE' will be sent to the
@ -297,8 +302,8 @@ OUTPUT CODES *terminal-output-codes*
t_se standout end *t_se* *'t_se'*
t_so standout mode *t_so* *'t_so'*
t_sr scroll reverse (backward) *t_sr* *'t_sr'*
t_te out of "termcap" mode *t_te* *'t_te'*
t_ti put terminal in "termcap" mode *t_ti* *'t_ti'*
t_te end of "termcap" mode *t_te* *'t_te'*
t_ti put terminal into "termcap" mode *t_ti* *'t_ti'*
t_ts set window title start (to status line) *t_ts* *'t_ts'*
t_ue underline end *t_ue* *'t_ue'*
t_us underline mode *t_us* *'t_us'*
@ -359,6 +364,8 @@ Added by Vim (there are no standard codes for these):
t_RT restore window title from stack *t_RT* *'t_RT'*
t_Si save icon text to stack *t_Si* *'t_Si'*
t_Ri restore icon text from stack *t_Ri* *'t_Ri'*
t_TE end of "raw" mode *t_TE* *'t_TE'*
t_TI put terminal into "raw" mode *t_TI* *'t_TI'*
Some codes have a start, middle and end part. The start and end are defined
by the termcap option, the middle part is text.
@ -739,12 +746,21 @@ jump to tags).
Whether the selection that is started with the mouse is in Visual mode or
Select mode depends on whether "mouse" is included in the 'selectmode'
option.
*terminal-mouse*
In an xterm, with the currently active mode included in the 'mouse' option,
normal mouse clicks are used by Vim, mouse clicks with the shift or ctrl key
pressed go to the xterm. With the currently active mode not included in
'mouse' all mouse clicks go to the xterm.
For terminals where it is not possible to have the mouse events be used by the
terminal itself by using a modifier, a workaround is to not use mouse events
for Vim in command-line mode: >
:set mouse=nvi
Then to select text with the terminal, use ":" to go to command-line mode,
select and copy the text to the system, then press Esc.
Another way is to temporarily use ":sh" to run a shell, copy the text, then
exit the shell. 'mouse' can remain set to "a" then.
*xterm-clipboard*
In the Athena and Motif GUI versions, when running in a terminal and there is
access to the X-server (DISPLAY is set), the copy and paste will behave like

View File

@ -1,4 +1,4 @@
*terminal.txt* For Vim version 8.1. Last change: 2019 Jul 04
*terminal.txt* For Vim version 8.1. Last change: 2019 Nov 03
VIM REFERENCE MANUAL by Bram Moolenaar
@ -193,6 +193,7 @@ Command syntax ~
Supported [options] are:
++close The terminal window will close
automatically when the job terminates.
|terminal-close|
++noclose The terminal window will NOT close
automatically when the job terminates.
++open When the job terminates and no window
@ -209,6 +210,10 @@ Command syntax ~
no window will be used.
++norestore Do not include this terminal window
in a session file.
++shell Instead of executing {command}
directly, use a shell, like with
`:!command` *E279*
{only works on Unix currently}
++kill={how} When trying to close the terminal
window kill the job with {how}. See
|term_setkill()| for the values.
@ -222,7 +227,7 @@ Command syntax ~
Vim width (no window left or right of
the terminal window) this value is
ignored.
++eof={text} when using [range]: text to send after
++eof={text} When using [range]: text to send after
the last line was written. Cannot
contain white space. A CR is
appended. For MS-Windows the default
@ -234,6 +239,10 @@ Command syntax ~
++type={pty} (MS-Windows only): Use {pty} as the
virtual console. See 'termwintype'
for the values.
++api={expr} Permit the function name starting with
{expr} to be called as |terminal-api|
function. If {expr} is empty then no
function can be called.
If you want to use more options use the |term_start()|
function.
@ -263,6 +272,12 @@ hidden, the job keeps running. The `:buffer` command can be used to turn the
current window into a terminal window. If there are unsaved changes this
fails, use ! to force, as usual.
*terminal-close*
When the terminal window is closed, e.g. when the shell exits and "++close"
argument was used, and this is the last normal Vim window, then Vim will exit.
This is like using |:quit| in a normal window. Help and preview windows are
not counted.
To have a background job run without a window, and open the window when it's
done, use options like this: >
:term ++hidden ++open make
@ -479,6 +494,9 @@ term_dumpdiff({filename}, {filename} [, {options}])
Using the "s" key the top and bottom parts are swapped. This
makes it easy to spot a difference.
Can also be used as a |method|: >
GetFilename()->term_dumpdiff(otherfile)
<
*term_dumpload()*
term_dumpload({filename} [, {options}])
Open a new window displaying the contents of {filename}
@ -488,6 +506,9 @@ term_dumpload({filename} [, {options}])
For {options} see |term_dumpdiff()|.
Can also be used as a |method|: >
GetFilename()->term_dumpload()
<
*term_dumpwrite()*
term_dumpwrite({buf}, {filename} [, {options}])
Dump the contents of the terminal screen of {buf} in the file
@ -502,11 +523,18 @@ term_dumpwrite({buf}, {filename} [, {options}])
"rows" maximum number of rows to dump
"columns" maximum number of columns to dump
Can also be used as a |method|, the base is used for the file
name: >
GetFilename()->term_dumpwrite(bufnr)
term_getaltscreen({buf}) *term_getaltscreen()*
Returns 1 if the terminal of {buf} is using the alternate
screen.
{buf} is used as with |term_getsize()|.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getaltscreen()
term_getansicolors({buf}) *term_getansicolors()*
Get the ANSI color palette in use by terminal {buf}.
@ -517,8 +545,12 @@ term_getansicolors({buf}) *term_getansicolors()*
{buf} is used as with |term_getsize()|. If the buffer does not
exist or is not a terminal window, an empty list is returned.
{only available when compiled with the |+terminal| feature and
with GUI enabled and/or the |+termguicolors| feature}
Can also be used as a |method|: >
GetBufnr()->term_getansicolors()
< {only available when compiled with GUI enabled and/or the
|+termguicolors| feature}
term_getattr({attr}, {what}) *term_getattr()*
Given {attr}, a value returned by term_scrape() in the "attr"
@ -528,7 +560,10 @@ term_getattr({attr}, {what}) *term_getattr()*
underline
strike
reverse
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetAttr()->term_getattr()
term_getcursor({buf}) *term_getcursor()*
Get the cursor position of terminal {buf}. Returns a list with
@ -550,13 +585,18 @@ term_getcursor({buf}) *term_getcursor()*
{buf} must be the buffer number of a terminal window. If the
buffer does not exist or is not a terminal window, an empty
list is returned.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getcursor()
term_getjob({buf}) *term_getjob()*
Get the Job associated with terminal window {buf}.
{buf} is used as with |term_getsize()|.
Returns |v:null| when there is no job.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getjob()
term_getline({buf}, {row}) *term_getline()*
Get a line of text from the terminal window of {buf}.
@ -567,7 +607,10 @@ term_getline({buf}, {row}) *term_getline()*
returned.
To get attributes of each character use |term_scrape()|.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getline(row)
term_getscrolled({buf}) *term_getscrolled()*
Return the number of lines that scrolled to above the top of
@ -579,7 +622,10 @@ term_getscrolled({buf}) *term_getscrolled()*
< (if that line exists).
{buf} is used as with |term_getsize()|.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getscrolled()
term_getsize({buf}) *term_getsize()*
Get the size of terminal {buf}. Returns a list with two
@ -589,7 +635,10 @@ term_getsize({buf}) *term_getsize()*
{buf} must be the buffer number of a terminal window. Use an
empty string for the current buffer. If the buffer does not
exist or is not a terminal window, an empty list is returned.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getsize()
term_getstatus({buf}) *term_getstatus()*
Get the status of terminal {buf}. This returns a comma
@ -602,7 +651,10 @@ term_getstatus({buf}) *term_getstatus()*
{buf} must be the buffer number of a terminal window. If the
buffer does not exist or is not a terminal window, an empty
string is returned.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_getstatus()
term_gettitle({buf}) *term_gettitle()*
Get the title of terminal {buf}. This is the title that the
@ -611,7 +663,10 @@ term_gettitle({buf}) *term_gettitle()*
{buf} must be the buffer number of a terminal window. If the
buffer does not exist or is not a terminal window, an empty
string is returned.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_gettitle()
term_gettty({buf} [, {input}]) *term_gettty()*
Get the name of the controlling terminal associated with
@ -620,12 +675,15 @@ term_gettty({buf} [, {input}]) *term_gettty()*
When {input} is omitted or 0, return the name for writing
(stdout). When {input} is 1 return the name for reading
(stdin). On UNIX, both return same name.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_gettty()
term_list() *term_list()*
Return a list with the buffer numbers of all buffers for
terminal windows.
{only available when compiled with the |+terminal| feature}
term_scrape({buf}, {row}) *term_scrape()*
Get the contents of {row} of terminal screen of {buf}.
@ -642,7 +700,10 @@ term_scrape({buf}, {row}) *term_scrape()*
"attr" attributes of the cell, use |term_getattr()|
to get the individual flags
"width" cell width: 1 or 2
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_scrape(row)
term_sendkeys({buf}, {keys}) *term_sendkeys()*
Send keystrokes {keys} to terminal {buf}.
@ -650,7 +711,19 @@ term_sendkeys({buf}, {keys}) *term_sendkeys()*
{keys} are translated as key sequences. For example, "\<c-x>"
means the character CTRL-X.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_sendkeys(keys)
term_setapi({buf}, {expr}) *term_setapi()*
Set the function name prefix to be used for the |terminal-api|
function in terminal {buf}. For example: >
:call term_setapi(buf, "Myapi_")
:call term_setapi(buf, "")
<
The default is "Tapi_". When {expr} is an empty string then
no |terminal-api| function can be used for {buf}.
term_setansicolors({buf}, {colors}) *term_setansicolors()*
Set the ANSI color palette used by terminal {buf}.
@ -680,8 +753,12 @@ term_setansicolors({buf}, {colors}) *term_setansicolors()*
'termguicolors' is set. When not using GUI colors (GUI mode
or 'termguicolors'), the terminal window always uses the 16
ANSI colors of the underlying terminal.
{only available when compiled with the |+terminal| feature and
with GUI enabled and/or the |+termguicolors| feature}
Can also be used as a |method|: >
GetBufnr()->term_setansicolors(colors)
< {only available with GUI enabled and/or the |+termguicolors|
feature}
term_setkill({buf}, {how}) *term_setkill()*
When exiting Vim or trying to close the terminal window in
@ -695,6 +772,10 @@ term_setkill({buf}, {how}) *term_setkill()*
After sending the signal Vim will wait for up to a second to
check that the job actually stopped.
Can also be used as a |method|: >
GetBufnr()->term_setkill(how)
term_setrestore({buf}, {command}) *term_setrestore()*
Set the command to write in a session file to restore the job
in this terminal. The line written in the session file is: >
@ -703,7 +784,10 @@ term_setrestore({buf}, {command}) *term_setrestore()*
Use an empty {command} to run 'shell'.
Use "NONE" to not restore this window.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_setrestore(command)
term_setsize({buf}, {rows}, {cols}) *term_setsize()* *E955*
Set the size of terminal {buf}. The size of the window
@ -714,7 +798,10 @@ term_setsize({buf}, {rows}, {cols}) *term_setsize()* *E955*
{buf} must be the buffer number of a terminal window. Use an
empty string for the current buffer. If the buffer does not
exist or is not a terminal window, an error is given.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_setsize(rows, cols)
term_start({cmd} [, {options}]) *term_start()*
Open a terminal window and run {cmd} in it.
@ -780,15 +867,22 @@ term_start({cmd} [, {options}]) *term_start()*
color modes. See |g:terminal_ansi_colors|.
"tty_type" (MS-Windows only): Specify which pty to
use. See 'termwintype' for the values.
"term_api" function name prefix for the
|terminal-api| function. See
|term_setapi()|.
Can also be used as a |method|: >
GetCommand()->term_start()
{only available when compiled with the |+terminal| feature}
term_wait({buf} [, {time}]) *term_wait()*
Wait for pending updates of {buf} to be handled.
{buf} is used as with |term_getsize()|.
{time} is how long to wait for updates to arrive in msec. If
not set then 10 msec will be used.
{only available when compiled with the |+terminal| feature}
Can also be used as a |method|: >
GetBufnr()->term_wait()
==============================================================================
3. Terminal communication *terminal-communication*
@ -833,9 +927,9 @@ Currently supported commands:
Call a user defined function with {argument}.
The function is called with two arguments: the buffer number
of the terminal and {argument}, the decoded JSON argument.
The function name must start with "Tapi_" to avoid
By default, the function name must start with "Tapi_" to avoid
accidentally calling a function not meant to be used for the
terminal API.
terminal API. This can be changed with |term_setapi()|.
The user function should sanity check the argument.
The function can use |term_sendkeys()| to send back a reply.
Example in JSON: >
@ -1083,8 +1177,12 @@ Example session ~
*termdebug-example*
Start in the Vim "src" directory and build Vim: >
% make
Make sure that debug symbols are present, usually that means that $CFLAGS
includes "-g".
Start Vim: >
% ./vim
Load the termdebug plugin and start debugging Vim: >
:packadd termdebug
:Termdebug vim
@ -1156,8 +1254,10 @@ gdb:
`:Run` [args] run the program with [args] or the previous arguments
`:Arguments` {args} set arguments for the next `:Run`
*:Break* set a breakpoint at the current line; a sign will be displayed
*:Clear* delete the breakpoint at the current line
*:Break* set a breakpoint at the cursor position
:Break {position}
set a breakpoint at the specified position
*:Clear* delete the breakpoint at the cursor position
*:Step* execute the gdb "step" command
*:Over* execute the gdb "next" command (`:Next` is a Vim command)

View File

@ -1,4 +1,4 @@
*testing.txt* For Vim version 8.1. Last change: 2019 Aug 21
*testing.txt* For Vim version 8.1. Last change: 2019 Sep 08
VIM REFERENCE MANUAL by Bram Moolenaar
@ -44,6 +44,8 @@ test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
let memory allocation fail {repeat} times. When {repeat} is
smaller than one it fails one time.
Can also be used as a |method|: >
GetAllocId()->test_alloc_fail()
test_autochdir() *test_autochdir()*
Set a flag to enable the effect of 'autochdir' before Vim
@ -55,6 +57,8 @@ test_feedinput({string}) *test_feedinput()*
were typed by the user. This uses a low level input buffer.
This function works only when with |+unix| or GUI is running.
Can also be used as a |method|: >
GetText()->test_feedinput()
test_garbagecollect_now() *test_garbagecollect_now()*
Like garbagecollect(), but executed right away. This must
@ -73,6 +77,8 @@ test_getvalue({name}) *test_getvalue()*
{name} are supported:
need_fileinfo
Can also be used as a |method|: >
GetName()->test_getvalue()
test_ignore_error({expr}) *test_ignore_error()*
Ignore any error containing {expr}. A normal message is given
@ -84,6 +90,8 @@ test_ignore_error({expr}) *test_ignore_error()*
When the {expr} is the string "RESET" then the list of ignored
errors is made empty.
Can also be used as a |method|: >
GetErrorText()->test_ignore_error()
test_null_blob() *test_null_blob()*
Return a |Blob| that is null. Only useful for testing.
@ -124,6 +132,9 @@ test_option_not_set({name}) *test_option_not_set()*
even though the value is "double".
Only to be used for testing!
Can also be used as a |method|: >
GetOptionName()->test_option_not_set()
test_override({name}, {val}) *test_override()*
Overrides certain parts of Vim's internal processing to be able
@ -155,12 +166,17 @@ test_override({name}, {val}) *test_override()*
< The value of "starting" is saved. It is restored by: >
call test_override('starting', 0)
< Can also be used as a |method|: >
GetOverrideVal()-> test_override('starting')
test_refcount({expr}) *test_refcount()*
Return the reference count of {expr}. When {expr} is of a
type that does not have a reference count, returns -1. Only
to be used for testing.
Can also be used as a |method|: >
GetVarname()->test_refcount()
test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
Pretend using scrollbar {which} to move it to position
@ -179,6 +195,8 @@ test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
Only works when the {which} scrollbar actually exists,
obviously only when using the GUI.
Can also be used as a |method|: >
GetValue()->test_scrollbar('right', 0)
test_setmouse({row}, {col}) *test_setmouse()*
Set the mouse position to be used for the next mouse action.
@ -197,6 +215,9 @@ test_settime({expr}) *test_settime()*
{expr} must evaluate to a number. When the value is zero the
normal behavior is restored.
Can also be used as a |method|: >
GetTime()->test_settime()
==============================================================================
3. Assert functions *assert-functions-details*

View File

@ -1,4 +1,4 @@
*textprop.txt* For Vim version 8.1. Last change: 2019 Sep 04
*textprop.txt* For Vim version 8.1. Last change: 2019 Nov 12
VIM REFERENCE MANUAL by Bram Moolenaar
@ -6,13 +6,6 @@
Displaying text with properties attached. *textprop* *text-properties*
THIS IS UNDER DEVELOPMENT - ANYTHING MAY STILL CHANGE *E967*
What is not working yet:
- Adjusting column/length when inserting text
- Text properties spanning more than one line
- prop_find()
1. Introduction |text-prop-intro|
2. Functions |text-prop-functions|
@ -55,8 +48,8 @@ Property Types ~
A text property normally has the name of a property type, which defines
how to highlight the text. The property type can have these entries:
"highlight" name of the highlight group to use
"combine" when TRUE the text property highlighting is combined
with any syntax highlighting, when omitted or FALSE the
"combine" when omitted or TRUE the text property highlighting is
combined with any syntax highlighting; when FALSE the
text property highlighting replaces the syntax
highlighting
"priority" when properties overlap, the one with the highest
@ -94,6 +87,12 @@ and/or ends with a specific character, such as the quote surrounding a string.
Nevertheless, when text is inserted or deleted the text may need to be parsed
and the text properties updated. But this can be done asynchronously.
Internal error *E967*
If you see E967, please report the bug. You can do this at Github:
https://github.com/vim/vim/issues/new
==============================================================================
2. Functions *text-prop-functions*

View File

@ -1,4 +1,4 @@
*todo.txt* For Vim version 8.1. Last change: 2019 Sep 07
*todo.txt* For Vim version 8.1. Last change: 2019 Nov 19
VIM REFERENCE MANUAL by Bram Moolenaar
@ -38,11 +38,14 @@ browser use: https://github.com/vim/vim/issues/1234
*known-bugs*
-------------------- Known bugs and current work -----------------------
Patch 2314 for vi' causes a new problem. #5247
Patch from Namsh to allow building with both XIM and hangulin. (2019 Aug 29)
Popup windows:
- Use popup (or popup menu) for command line completion
- Implement flip option
- Why does 'nrformats' leak from the popup window buffer???
Happens in Test_simple_popup() at the second screendump.
- For the "moved" property also include mouse movement?
- Make redrawing more efficient and avoid flicker:
- put popup menu also in popup_mask?
- Any other commands to disable in a popup window?
@ -53,11 +56,14 @@ Popup windows:
- When drawing on top half a double-wide character, display ">" or "<" in the
incomplete cell.
Text properties: See comment at top of src/textprop.c.
Text properties:
- Implement prop_find() issue #4970
- Text properties spanning more than one line
- See remarks at top of src/textprop.c
'incsearch' with :s: (#3321)
'incsearch' with :s:
- Get E20 when using command history to get "'<,'>s/a/b" and no Visual area
was set. (#3837)
was set. (issue #3837)
- :s/foo using CTRL-G moves to another line, should not happen, or use the
correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
- :s@pat/tern@ doesn't include "/" in the pattern. (Takahiro Yoshihara, #3637)
@ -69,7 +75,7 @@ Text properties: See comment at top of src/textprop.c.
Then :%s?foo should take the first match above the cursor line.
Prompt buffer:
- Add a command line history.
- Add a command line history, using up/down keys. issue #5010
- delay next prompt until plugin gives OK?
- add prompt_addtext({buf}, {expr}) none add text to a prompt buffer
@ -82,15 +88,13 @@ Terminal debugger:
- Termdebug does not work when Vim was build with mzscheme: gdb hangs just
after "run". Everything else works, including communication channel. Not
initializing mzscheme avoid the problem, thus it's not some #ifdef.
- Add support for lldb? #3565
- Add support for lldb? issue #3565
- Could we do something similar for debugging Vim scripts? At least see the
script while stepping through it. Simple version would use an extra window.
More complete solution would actually run Vim in a Terminal and control it
with another Vim instance.
Terminal emulator window:
- When typing "exit" in a terminal window with a shell and it's the only
window, should exit Vim instead of editing another buffer. (#4539)
- When the job in the terminal doesn't use mouse events, let the scroll wheel
scroll the scrollback, like a terminal does at the shell prompt. #2490
And use modeless selection. #2962
@ -98,13 +102,10 @@ Terminal emulator window:
be redrawn.
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
(#3327)
- Terminal API: Add more functionality? (Ozaki Kiichi 2018 May 13, #2907)
- GUI: hang until key typed. (#3530)
- Allow for specifying the directory, with ++cwd={dir}.
- With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
#2977)
- Add a way to make ":term cmd" run "cmd" in a shell, instead of executing it
directly. Perhaps ":term ++shell cmd". (#3340)
- When pasting should call vterm_keyboard_start_paste(), e.g. when using
K_MIDDLEMOUSE, calling insert_reg().
- Users expect parsing the :term argument like a shell does, also support
@ -124,26 +125,35 @@ Terminal emulator window:
conversions.
Error numbers available:
E278, E279, E290, E292, E362, E366, E450, E451, E452,
E290, E292, E362, E366, E450, E451, E452,
E453, E454, E460, E489, E491, E565, E578, E610, E611, E653,
E654, E856, E857, E860, E861, E863, E889, E900
Running test_gui and test_gui_init with Motif sometimes kills the window
manager. Problem with Motif? Now test_gui crashes in submenu_change().
Athena is OK.
Motif: Build on Ubuntu can't enter any text in dialog text fields.
Patch to properly break CJK lines: Anton Kochkov, #3875
Flag in 'formatoptions' is not used in the tests.
Remove check for cmd_silent when calling search_stat()? (Gary Johnson)
undo result wrong: Masato Nishihata, #4798
Undo puts cursor in wrong line after "cG<Esc>" undo.
Sound: support on Mac? Or does libcanberra work there?
Patch to add win_splitmove() function. (Andy Massimino, #4561)
Patch for #4733: #4734. Test needs improvements.
Add CmdwinLeavePost (#4762). Also add WinLeavePost then?
Patch to user manual: #5098. Comments by DC Slagel:
- semicolon use should be OK.
- Keep capital after colon.
Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
20)
Also put :argadd commands at the start for all buffers, so that their order
remains equal? Then %argdel to clean it up. Do try this with 'hidden' set.
Also #4994: window-local options not always restored, related to using :badd.
Completion mixes results from the current buffer with tags and other files.
Happens when typing CTRL-N while still search for results. E.g., type "b_" in
@ -151,49 +161,55 @@ terminal.c and then CTRL-N twice.
Should do current file first and not split it up when more results are found.
(Also #1890)
Patch to use timers in matchparen. (Daniel Hahler, #1338)
Ready to include now?
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
(#4087)
Patch to support 'cursorlineopt' - only highlight the line number of the
cursor line: #4693
Let plugins know how much space is available in the last line before
triggering the hit-enter prompt. Internally called "sc_col".
(Daniel Hahler, #4732)
Patch for Template string: #4491 Not ready yet. New pull: #4634
":helptags ALL" should skip directories where "tags" cannot be written.
(Matěj Cepl, #5026)
":bnext" in a help buffer is supposed to go to the next help buffer, but it
goes to any buffer, and then :bnext skips help buffers, since they are
unlisted. (#4478)
Patch to fix using zero sc_sid. (#4877)
Enable 'termbidi' if $VTE_VERSION >= 5703 ?
Make 'showbreak' global-local.
Universal solution to detect if t_RS is working, using cursor position.
Koichi Iwamoto, #2126
The :syntax cchar value can only be a single character. It would be useful to
support combining characters. (Charles Campbell) Also #4687
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
It can replace the BeOS code, which is likely not used anymore.
Now on github: #1856. Updated Oct 2017
Got permission to include this under the Vim license.
Result of synID() sometimes wrong in help files. (#5252)
Problem showing a line if the number column width changes when using "o".
(Mateusz Morusiewicz, #4245)
When using :packadd for a replacement language plugin, it is loaded after the
default one. #4698
Patch from Namsh to allow building with both XIM and hangulin. (2019 Aug 29)
When using :packadd files under "later" are not used, which is inconsistent
with packages under "start". (xtal8, #1994)
Modeless selection doesn't work in gvim. (#4783)
Caused by patch 8.1.1534.
Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
Alternative from Christian Brabandt. (2010 Sep 19)
New one from Yasuhiro Matsumoto, #1277.
Visual highlight not removed when 'dipslay' is "lastline" and line doesn't
fit. (Kevin Lawler, #4457)
Patch to add interrupt(). (Yasuhiro Matsumoto, #2834)
Patch to add per-tabpage and per-window previous directory: "lcd -" and "tcd
-". (Yegappan Lakshmanan, #4362)
Does not build with MinGW out of the box:
- _stat64 is not defined, need to use "struct stat" in vim.h
- WINVER conflict, should use 0x0600 by default?
@ -201,11 +217,48 @@ Does not build with MinGW out of the box:
Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
13, #2910) Can't reproduce?
Patch to configure BUILD_DATE for reproducible builds. (James McCoy, #513)
Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
xterm should be able to pass focus changes to Vim, so that Vim can check for
buffers that changed. Perhaps in misc.c, function selectwindow().
Xterm 224 supports it!
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
Saito, 2013 Apr 24) Update 2016 Aug 12.
Also see issue #609.
We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
Check_external_diff() is used too often. (Daniel Hahler, #4800)
Win32: after "[I" showing matches, scroll wheel messes up screen. (Tsakiridis,
2007 Feb 18)
Patch by Alex Dobrynin, 2007 Jun 3. Also fixes other scroll wheel problems.
Add a WindowScrolled event. Trigger around the same time as CursorMoved.
Can be used to update highlighting. #3127 #5181
Patch for Template string: #4491. New pull: #4634
Have another look at the implementation: Is the code worth it?
Incorrect formatting with autoindent. (Sebastian Gniazdowski, #4909)
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
Updated 2016 Jun 10, #858 Update 2017 Mar 28: use <buffer>
Errors found with random data:
heap-buffer-overflow in alist_add (#2472)
Patch to support CamelCase for spell checking: See a lower-to-upper case
change as a word boundary. (btucker-MPCData, 2016 Nov 6, #1235)
patch for 'spellcamelcase' option: spellcheck each CamelCased word.
(Ben Tucker, 2016 Dec 2)
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
Update 2016 Jun 10, #861
Patch to add "cmdline" completion to getcompletion(). (Shougo, Oct 1, #1140)
Improve fallback for menu translations, to avoid having to create lots of
files that source the actual file. E.g. menu_da_de -> menu_da
Include part of #3242?
@ -213,7 +266,21 @@ Include part of #3242?
When a terminal exit_cb closes the window, a following typed key is lost, if
it's in a mapping. (2018 Oct 6, #2302, #3522)
Patch for Inno Setup: #2739
Patch to have text objects defined by arbitrary single characters. (Daniel
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
Added tests (James McCoy, 2016 Aug 3, #958). Still needs more work.
Patch for multi-byte 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
a copy-buffer, only when langmap is appropriate for the current mode. Then
check for mapping and let gotchars() work on the copy-buffer.
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
covered by the above change.
So that replaying the register doesn't use keymap/langmap and still does the
same thing. Remarks on PR #543 (Roland Puntaier).
Also see #737: langmap not applied to replaying recording.
Would be nice to set tab-local values for 'diffexpr' and 'diffopt'. Use
t:diffexpr_option t:diffopt_option? (#4782)
@ -226,19 +293,35 @@ Williams, 2018 Oct 30)
"exepath('bin/cmd')" does not work while ":!bin/cmd" does work.
(Daniel Hahler, #4710) and executable('bin/cmd') returns 1
Error drawing the number column when 'cursorline' is set. (#3893)
Problem with :tlmenu: Detach item added with all modes? Issue #3563.
Add an argument to expandcmd() to expand like ":next" does.
When both "a" and "l" is in 'formatoptions' then auto-formatting also happens
in a long line. #5189
The quoting of the [command] argument of :terminal is not clearly documented.
Give a few examples. (#4288)
Opening a file with --remote-tab-silent that matches 'wildignore' does not
work, results in (E479: No match". (#4610)
Patch for this (Tristan Konolige, #1011, only adds the option, no implem.):
7 Add an option to add one pixel column to the character width? Lucida
Console italic is wider than the normal font ("d" overlaps with next char).
Opposite of 'linespace': 'columnspace'.
Bug: script written with "-W scriptout" contains Key codes, while the script
read with "-s scriptin" expects escape codes. Probably "scriptout" needs to
be adjusted. (Daniel Steinberg, 2019 Feb 24, #4041)
":registers" should indicate char/block/linewise. (Ayberk Aydin, #4546)
Add a string to the 'display' option ("smoothscroll" ?) to make CTRL-E and
CTRL-Y scroll one screen line, also if this means the first line doesn't start
with the first character (like what happens with a last line that doesn't
fit). Display "<<<" at the start of the first visible line (like "@@@" is
displayed in the last line). (Arseny Nasokin, #5154)
Patch for ambiguous width characters in libvterm on MS-Windows 10.
(Nobuhiro Takasaki, #4411)
@ -311,6 +394,9 @@ Support setting the character displayed below the last line? Neovim uses
Check: __attribute__((format(printf, on semsg() and siemsg(). Where was this
added?
Patch to add a flatten() function. #3676. Check that the doc explains the
maxdepth argument (applies to the input "recursiveness").
Add test for urxvt mouse codes. Also test that mouse coordinates can be
negative. (see #4326)
@ -346,11 +432,6 @@ Not existing directory in CDPATH leads to two shell calls. (#4525)
Use dict_iterate_start() / dict_iterate_next() instead of relying on the
internals of the dict structure.
Running test_gui and test_gui_init with Motif sometimes kills the window
manager. Problem with Motif? Now test_gui crashes in submenu_change().
Athena is OK.
Motif: Build on Ubuntu can't enter any text in dialog text fields.
nvo-mode mapping works on Windows, not on Linux. (#3678)
Missing tests for:
@ -360,9 +441,6 @@ Redo only remembers the last change. Could use "{count}g." to redo an older
change. How does the user know which change? At least have a way to list
them: ":repeats". Add to history, like search history and command line history.
When using exclusive selection and vi" that fails, cursor moves to the left.
Cursor should not move. (#4024)
Incsearch test fails when locale is "C". (Dominique Pelle, #3986)
Also run all tests with C locale?
@ -502,9 +580,6 @@ Further xdiff changes:
Difference between two regexp engines: #3373
Patch to properly break CJK lines: #3875
Requires more tests. dbcs_ functions are not implemented.
Patch to add ch_listen() (Yasuhiro Matsumoto, 2018 Nov 26, #3639)
What is the practical use for this?
@ -512,7 +587,7 @@ When the last line wraps, selecting with the mouse below that line only
includes the first screen line. (2018 Aug 23, #3368)
Refactored HTML indent file. (Michael Lee, #1821)
Ask to write a test first.
Asked to write a test.
MS-Windows: .lnk file not resolved properly when 'encoding' is set.
(lkintact, 2018 Sep 22, #3473)
@ -521,6 +596,9 @@ Merge checking for 'cursorline' and 'concealcursor', see neovim #9492.
Display error when a conceal match uses '\%>1l'. (#4854)
Add a windowID argument to placing a sign, so that it only shows up in one
window for the buffer.
Request to add sign_setlist() to make it faster to add a lot of signs, e.g.
when adding a sign for every quickfix entry. (#4557)
@ -586,9 +664,6 @@ used for git temp files.
Cursor in wrong position when line wraps. (#2540)
Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
#2546) Fixes #1057. Missing a test.
Setting 'columns' in a BufEnter autocommand causes a second tab width to
behave strangely, as if there is a gap and a vertical window separator.
(Michael Soyka, 2018 Sep 23, #3477)
@ -599,9 +674,6 @@ pass an expression to evaluate. Allow passing zero for "never skip".
Add an option similar to 'lazyredraw' to skip redrawing while executing a
script or function.
Universal solution to detect if t_RS is working, using cursor position.
Koichi Iwamoto, #2126
When using a menu item while the "more" prompt is displayed doesn't work well.
E.g. after using help->version. Have a key that ends the "more" prompt and
does nothing otherwise?
@ -772,7 +844,7 @@ Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
MS-Windows: buffer completion doesn't work when using backslash (or slash)
for a path separator. (xtal8, #2201)
Would be nice for insert mode completion to highlight the text that was added
Would be nice for Insert mode completion to highlight the text that was added
(and may change when picking another completion).
Test runtime files.
@ -795,15 +867,8 @@ The ":move" command does not honor closed folds. (Ryan Lue, #2351)
Patch to fix increment/decrement not working properly when 'virtualedit' is
set. (Hirohito Higashi, 2016 Aug 1, #923)
Patch to make gM move to middle of line. (Yasuhiro Matsumoto, Sep 8, #2070)
Cannot copy modeless selection when cursor is inside it. (lkintact, #2300)
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
It can replace the BeOS code, which is likely not used anymore.
Now on github: #1856. Updated Oct 2017
Got permission to include this under the Vim license.
Test_writefile_fails_conversion failure on Solaris because if different iconv
behavior. Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
@ -900,8 +965,6 @@ Memory leak in test97? The string is actually freed. Weird.
assert_fails() can only check for the first error. Make it possible to have
it catch multiple errors and check all of them.
New value "uselast" for 'switchbuf'. (Lemonboy, 2017 Apr 23, #1652)
Add a toolbar in the terminal. Can be global, above all windows, or specific
for one window.
@ -989,10 +1052,6 @@ somewhere else. :{range}copy {dest} !cmd
Patch to fix that empty first tab is not in session.
(Hirohito Higashi, 2016 Nov 25, #1282)
Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
Alternative from Christian Brabandt. (2010 Sep 19)
New one from Yasuhiro Matsumoto, #1277.
Patch to fix escaping of job arguments. (Yasuhiro Matsumoto, 2016 Oct 5)
Update Oct 14: https://gist.github.com/mattn/d47e7d3bfe5ade4be86062b565a4bfca
Update Aug 2017: #1954
@ -1048,10 +1107,6 @@ Patch to make it possible to extend a list with itself.
Patch to add Zstandard compressed file support. (Nick Terrell, 2016 Oct 24)
Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
Patch to change argument of :marks. (LemonBoy, 2017 Jan 29, #1426)
On Windows buffer completion sees backslash as escape char instead of path
separator. (Toffanim, 2016 Nov 24, #1274)
@ -1072,6 +1127,9 @@ sort() is not stable when using numeric/float sort (Nikolay Pavlov, 2016 Sep
+channel:
- Add a in_cb, invoked when the write buffer has become empty. (Matteo Landi)
- Add ch_readlines(): for a channel in NL mode, reads as many lines as are
available. Should be more efficient than looping over ch_read() with
ch_status() to check for more.
- Add a separate timeout for opening a socket. Currently it's fixed at 50
msec, which is too small for a remote connection. (tverniquet, #2130)
- Problem with stderr on Windows? (Vincent Rischmann, 2016 Aug 31, #1026)
@ -1151,8 +1209,6 @@ Regexp problems:
Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*')
(2017 May 15, #1252)
Patch to add "cmdline" completion to getcompletion(). (Shougo, Oct 1, #1140)
Feature request: Complete members of a dictionary. (Luc Hermitte, 2017 Jan 4,
#1350)
@ -1168,11 +1224,6 @@ Include the test.
When 'keywordprg' starts with ":" the argument is still escaped as a shell
command argument. (Romain Lafourcade, 2016 Oct 16, #1175)
Patch to support CamelCase for spell checking: See a lower-to-upper case
change as a word boundary. (btucker-MPCData, 2016 Nov 6, #1235)
patch for 'spellcamelcase' option: spellcheck each CamelCased word.
(Ben Tucker, 2016 Dec 2)
Idea from Sven: record sequence of keys. Useful to show others what they are
doing (look over the shoulder), and also to see what happened.
Probably list of keystrokes, with some annotations for mode changes.
@ -1255,9 +1306,6 @@ Reject the value? #710.
When doing "vi buf.md" a BufNew autocommand for *.md is not triggered.
Because of using the initial buffer? (Dun Peal, 2016 May 12)
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
Updated 2016 Jun 10, #858 Update 2017 Mar 28: use <buffer>
Add redrawtabline command. (Naruhiko Nishino, 2016 Jun 11)
Neovim patch for utfc_ptr2char_len() https://github.com/neovim/neovim/pull/4574
@ -1319,10 +1367,6 @@ Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
Test object i{ and it do not behave the same. #1379
Do not include the linebreak at the start?
Patch to have text objects defined by arbitrary single characters. (Daniel
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
Added tests (James McCoy, 2016 Aug 3). Still needs more work.
Feature request: add the "al" text object, to manipulate a screen line.
Especially useful when using 'linebreak'
@ -1338,9 +1382,6 @@ If ":bd" also closes a Tab page then the " mark is not set. (Harm te Hennepe,
Patch to avoid redrawing tabline when the popup menu is visible.
(Christian Brabandt, 2016 Jan 28)
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
Update 2016 Jun 10, #861
Patch to show search statistics. (Christian Brabandt, 2016 Jul 22)
When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
@ -1459,18 +1500,6 @@ Patch to fix checking global option value when not using it.
When 'showbreak' is set repeating a Visual operation counts the size of the
'showbreak' text as part of the operation. (Axel Bender, 2015 Jul 20)
Patch for multi-byte 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
a copy-buffer, only when langmap is appropriate for the current mode. Then
check for mapping and let gotchars() work on the copy-buffer.
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
covered by the above change.
So that replaying the register doesn't use keymap/langmap and still does the
same thing. Remarks on issue 543 (Roland Puntaier).
Also see #737: langmap not applied to replaying recording.
Patch to add grepfile(). (Scott Prager, 2015 May 26)
Work in progress.
@ -1579,14 +1608,6 @@ compatible with Vim spell files. The old files can no longer be downloaded.
Spell checking: Add a feature to only consider two spaces after a dot to start
a new sentence. Don't give the capitalization error when there is one space.
xterm should be able to pass focus changes to Vim, so that Vim can check for
buffers that changed. Perhaps in misc.c, function selectwindow().
Xterm 224 supports it!
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
Saito, 2013 Apr 24) Update 2016 Aug 12.
Also see issue #609.
We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
Idea: For a window in the middle (has window above and below it), use
right-mouse-drag on the status line to move a window up/down without changing
its height? It's like dragging the status bar above it at the same time.
@ -1887,9 +1908,6 @@ Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
21, Ben Fritz, 2010 Sep 14)
'cursorline' works on a text line only. Add 'cursorscreenline' for
highlighting the screen line. (Christian Brabandt, 2012 Mar 31)
Win32: Patch to use task dialogs when available. (Sergiu Dotenco, 2011 Sep 17)
New feature, requires testing. Made some remarks.
@ -2133,10 +2151,6 @@ Looks like only bash can do it. (Yakov Lerner)
Cscope "cs add" stopped working somewhat before 7.2.438. (Gary Johnson, 2010
Jun 29) Caused by 7.2.433?
I often see pasted text (from Firefox, to Vim in xterm) appear twice.
Also, Vim in xterm sometimes loses copy/paste ability (probably after running
an external command).
Jumplist doesn't work properly in Insert mode? (Jean Johner, 2010 Mar 20)
Problem with transparent cmdline. Also: Terminal title is wrong with
@ -2699,10 +2713,6 @@ patches by Mathias, see mail Feb 22)
Win32: compiling with normal features and OLE fails. Patch by Mathias
Michaelis, 2006 Jun 4.
Win32: after "[I" showing matches, scroll wheel messes up screen. (Tsakiridis,
2007 Feb 18)
Patch by Alex Dobrynin, 2007 Jun 3. Also fixes other scroll wheel problems.
Win32: using CTRL-S in Insert mode doesn't remove the "+" from the tab pages
label. (Tsakiridis, 2007 Feb 18) Patch from Ian Kelling, 2008 Aug 6.
@ -2732,10 +2742,6 @@ If the variable "g:x#y#z" exists completion after ":echo g:x#" doesn't work.
Feature request: Command to go to previous tab, like what CTRL-W p does for
windows. (Adam George)
F1 - F4 in an xterm produce a different escape sequence when used with a
modifier key. Need to catch three different sequences. Use K_ZF1, like
K_ZHOME? (Dickey, 2007 Dec 2)
In debug mode, using CTRL-R = to evaluate a function causes stepping through
the function. (Hari Krishna Dara, 2006 Jun 28)
@ -2870,12 +2876,6 @@ Setting 'background' resets the Normal background color:
This is undesired, 'background' is supposed to tell Vim what the background
color is, not reset it.
Linux distributions:
- Suggest compiling xterm with --enable-tcap-query, so that nr of colors is
known to Vim. 88 colors instead of 16 works better. See ":help
xfree-xterm".
- Suggest including bare "vi" and "vim" with X11, syntax, etc.
Completion menu: For a wrapping line, completing a long file name, only the
start of the path is shown in the menu. Should move the menu to the right to
show more text of the completions. Shorten the items that don't fit in the
@ -2890,12 +2890,6 @@ the buffer is displayed. (Antonios Tsakiridis)
When ":cn" moves to an error in the same line the message isn't shortened.
Only skip shortening for ":cc"?
Write "making vim work better" for the docs (mostly pointers): *nice*
- sourcing $VIMRUNTIME/vimrc_example.vim
- setting 'mouse' to "a"
- getting colors in xterm
- compiling Vim with X11, GUI, etc.
Problem with ":call" and dictionary function. Hari Krishna Dara, Charles
Campbell 2006 Jul 06.
@ -2989,11 +2983,6 @@ When 'encoding' is utf-8 typing text at the end of the line causes previously
typed characters to be redrawn. Caused by patch 7.1.329. (Tyler Spivey, 2008
Sep 3, 11)
When Vim in an xterm owns the selection and the user does ":shell" Vim doesn't
respond to selection requests. Invoking XtDisownSelection() before executing
the shell doesn't help. Would require forking and doing a message loop, like
what happens for the GUI.
":vimgrep" does not recognize a recursive symlink. Is it possible to detect
this, at least for Unix (using device/inode)?
@ -3082,11 +3071,6 @@ Awaiting updated patches:
use the patch that keeps using HLF_8 if HLF_WS has not
been given values.
Add section in help files for these highlight groups?
8 "fg" and "bg" don't work in an xterm. Get default colors from xterm
with an ESC sequence.
xterm can send colors for many things. E.g. for the cursor:
<Esc>]12;?<Bel>
Can use this to get the background color and restore the colors on exit.
7 Add "DefaultFG" and "DefaultBG" for the colors of the menu. (Marcin
Dalecki has a patch for Motif and Carbon)
- Add possibility to highlight specific columns (for Fortran). Or put a
@ -3288,9 +3272,6 @@ Win32 GUI known bugs:
8 When the 'shell' cannot be executed, should give an appropriate error msg.
Esp. for a filter command, currently it only complains the file could not
be read.
7 Add an option to add one pixel column to the character width? Lucida
Console italic is wider than the normal font ("d" overlaps with next char).
Opposite of 'linespace': 'columnspace'.
7 At the hit-enter prompt scrolling now no longer works. Need to use the
keyboard to get around this. Pretend <CR> was hit when the user tries to
scroll?
@ -3683,7 +3664,6 @@ Macintosh:
8 Xterm sends ^[[H for <Home> and ^[[F for <End> in some mode. Also
recognize these keys? Mostly useful for xterm simulators, like gnometerm.
See http://dickey.his.com/xterm/xterm.faq.html#xterm_pc_style.
8 For xterm also recognize keypad up/down/left/right and insert.
8 '[ and '] should be set to start/end of line when using a linewise operator
(e.g., ":w").
8 CTRL-A can't handle big "long" numbers, they become negative. Check for
@ -3698,10 +3678,6 @@ Macintosh:
filesystem, an illegal file name may be created: ".vim".
8 For each buffer that is opened, the viminfo file is opened and read to
check for file marks. This can be slow.
7 In xterm, recognize both vt100 and vt220 cursor keys. Change
add_termcode() to not remove an existing entry for a name, when it's
needed.
Need a generic solution to recognize different codes for the same key.
8 Core dump within signal function: gdb doesn't show stack backtrace! Option
to skip catch_signals()?
9 Repeating a "cw" with "." doesn't work if the text was pasted from the
@ -4633,9 +4609,6 @@ Messages:
Screen updating:
7 Add a string to the 'display' option to make CTRL-E and CTRL-Y scroll one
screen line, also if this means the first line doesn't start with the
first character (like what happens with a single line that doesn't fit).
- screen_line():
- insert/delete character stuff.
- improve delete rest of line (spaces at end of line).

View File

@ -346,12 +346,13 @@ scroll:
g0 to first visible character in this line
g^ to first non-blank visible character in this line
gm to middle of this line
gm to middle of screen line
gM to middle of the text in this line
g$ to last visible character in this line
|<-- window -->|
some long text, part of which is visible ~
g0 g^ gm g$
|<-- window -->|
some long text, part of which is visible in one line ~
g0 g^ gm gM g$
BREAKING AT WORDS *edit-no-break*

View File

@ -1,4 +1,4 @@
*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 06
*usr_41.txt* For Vim version 8.1. Last change: 2019 Nov 17
VIM USER MANUAL - by Bram Moolenaar
@ -796,6 +796,7 @@ Date and Time: *date-functions* *time-functions*
getftime() get last modification time of a file
localtime() get current time in seconds
strftime() convert time to a string
strptime() convert a date/time string to time
reltime() get the current or elapsed time accurately
reltimestr() convert reltime() result to a string
reltimefloat() convert reltime() result to a Float
@ -856,6 +857,7 @@ Insert mode completion: *completion-functions*
complete_check() check if completion should be aborted
complete_info() get current completion information
pumvisible() check if the popup menu is displayed
pum_getpos() position and size of popup menu if visible
Folding: *folding-functions*
foldclosed() check for a closed fold at a specific line
@ -902,6 +904,7 @@ Interactive: *interactive-functions*
confirm() let the user make a choice
getchar() get a character from the user
getcharmod() get modifiers for the last typed character
getmousepos() get last known mouse position
feedkeys() put characters in the typeahead queue
input() get a line from the user
inputlist() let the user pick an entry from a list

View File

@ -480,9 +480,9 @@ probably contains your vimrc file and other runtime files that you created, so
be careful.
Else, if you installed Vim with the zip archives, the preferred way is to use
the "uninstal" program (note the missing l at the end). You can find it in
the same directory as the "install" program, e.g., "c:\vim\vim61". This
should also work from the usual "install/remove software" page.
the "uninstall" program. You can find it in the same directory as the
"install" program, e.g., "c:\vim\vim61". This should also work from the usual
"install/remove software" page.
However, this only removes the registry entries for Vim. You have to
delete the files yourself. Simply select the directory "vim\vim61" and delete
it recursively. There should be no files there that you changed, but you

View File

@ -1,4 +1,4 @@
*various.txt* For Vim version 8.1. Last change: 2019 Sep 04
*various.txt* For Vim version 8.1. Last change: 2019 Oct 17
VIM REFERENCE MANUAL by Bram Moolenaar
@ -337,7 +337,7 @@ N *+clientserver* Unix and Win32: Remote invocation |clientserver|
T *+cmdline_compl* command line completion |cmdline-completion|
S *+cmdline_hist* command line history |cmdline-history|
N *+cmdline_info* |'showcmd'| and |'ruler'|
N *+comments* |'comments'| support
T *+comments* |'comments'| support
B *+conceal* "conceal" support, see |conceal| |:syn-conceal| etc.
N *+cryptv* encryption support |encryption|
B *+cscope* |cscope| support
@ -389,7 +389,7 @@ m *+lua/dyn* |Lua| interface |/dyn|
N *+menu* |:menu|
N *+mksession* |:mksession|
T *+modify_fname* |filename-modifiers|
N *+mouse* Mouse handling |mouse-using|
T *+mouse* Mouse handling |mouse-using|
N *+mouseshape* |'mouseshape'|
B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
N *+mouse_gpm* Unix only: Linux console mouse handling |gpm-mouse|
@ -575,6 +575,8 @@ N *+X11* Unix only: can restore window title |X11|
|:marks| - filter by text in the current file,
or file name for other files
|:oldfiles| - filter by file name
|:registers| - filter by register contents
(does not work multi-line)
|:set| - filter by variable name
Only normal messages are filtered, error messages are

View File

@ -1,4 +1,4 @@
*vi_diff.txt* For Vim version 8.1. Last change: 2019 May 13
*vi_diff.txt* For Vim version 8.1. Last change: 2019 Nov 12
VIM REFERENCE MANUAL by Bram Moolenaar
@ -64,6 +64,9 @@ w300 number (default 23) *'w300'*
w1200 number (default 23) *'w1200'*
w9600 number (default 23) *'w9600'*
Vi did not allow for changing the termcap entries, you would have to exit Vi,
edit the termcap entry and try again. Vim has the |terminal-options|.
==============================================================================
3. Limits *limits*
@ -703,7 +706,7 @@ first character).
CTRL-A works like CTRL-@ but does not leave insert mode.
CTRL-R {0-9a-z..} can be used to insert the contents of a register.
CTRL-R {register} can be used to insert the contents of a register.
When the 'smartindent' option is set, C programs will be better auto-indented.
With 'cindent' even more.
@ -1320,6 +1323,11 @@ Set the $VIM_POSIX environment variable to have 'cpoptions' include the POSIX
flags when Vim starts up. This makes Vim run as POSIX as it can. That's
a bit different from being Vi compatible.
You can find the Posix specification for Vi here:
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/vi.html
And the related Ex specification:
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html
This is where Vim does not behave as POSIX specifies and why:
*posix-screen-size*

View File

@ -1,4 +1,4 @@
*visual.txt* For Vim version 8.1. Last change: 2019 May 05
*visual.txt* For Vim version 8.1. Last change: 2019 Nov 02
VIM REFERENCE MANUAL by Bram Moolenaar
@ -116,6 +116,7 @@ gn Search forward for the last used search pattern, like
E.g., "dgn" deletes the text of the next match.
If Visual mode is active, extends the selection
until the end of the next match.
'wrapscan' applies
Note: Unlike `n` the search direction does not depend
on the previous search command.

View File

@ -1,4 +1,4 @@
*windows.txt* For Vim version 8.1. Last change: 2019 Aug 18
*windows.txt* For Vim version 8.1. Last change: 2019 Oct 27
VIM REFERENCE MANUAL by Bram Moolenaar
@ -312,6 +312,9 @@ CTRL-W CTRL-Q *CTRL-W_CTRL-Q*
:+quit " quit the next window
:+2quit " quit the second next window
<
When closing a help window, Vim will try to restore the
previous window layout |:helpclose|.
:q[uit]!
:{count}q[uit]!
Without {count}: Quit the current window. If {count} is
@ -545,6 +548,10 @@ CTRL-W + Increase current window height by N (default 1).
CTRL-W CTRL-_ *CTRL-W_CTRL-_* *CTRL-W__*
CTRL-W _ Set current window height to N (default: highest possible).
:{winnr}res[ize] [+-]N
Like `:resize` above, but apply the size to window {winnr}
instead of the current window.
z{nr}<CR> Set current window height to {nr}.
*CTRL-W_<*
@ -1087,6 +1094,7 @@ list of buffers. |unlisted-buffer|
R terminal buffers with a running job
F terminal buffers with a finished job
? terminal buffers without a job: `:terminal NONE`
t show time last used and sort buffers
Combining flags means they are "and"ed together, e.g.:
h+ hidden buffers which are modified
a+ active buffers which are modified

View File

@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2019 Aug 26
" Last Change: 2019 Nov 01
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@ -384,8 +384,8 @@ au BufNewFile,BufRead configure.in,configure.ac setf config
" CUDA Cumpute Unified Device Architecture
au BufNewFile,BufRead *.cu,*.cuh setf cuda
" Dockerfile
au BufNewFile,BufRead Dockerfile,*.Dockerfile setf dockerfile
" Dockerfilb; Podman uses the same syntax with name Containerfile
au BufNewFile,BufRead Containerfile,Dockerfile,*.Dockerfile setf dockerfile
" WildPackets EtherPeek Decoder
au BufNewFile,BufRead *.dcd setf dcd
@ -425,6 +425,9 @@ au BufNewFile,BufRead *.csp,*.fdr setf csp
au BufNewFile,BufRead *.pld setf cupl
au BufNewFile,BufRead *.si setf cuplsim
" Dart
au BufRead,BufNewfile *.dart,*.drt setf dart
" Debian Control
au BufNewFile,BufRead */debian/control setf debcontrol
au BufNewFile,BufRead control
@ -979,6 +982,9 @@ au BufNewFile,BufRead hg-editor-*.txt setf hgcommit
" Mercurial config (looks like generic config file)
au BufNewFile,BufRead *.hgrc,*hgrc setf cfg
" Meson Build system config
au BufNewFile,BufRead meson.build,meson_options.txt setf meson
" Messages (logs mostly)
au BufNewFile,BufRead */log/{auth,cron,daemon,debug,kern,lpr,mail,messages,news/news,syslog,user}{,.log,.err,.info,.warn,.crit,.notice}{,.[0-9]*,-[0-9]*} setf messages

View File

@ -11,21 +11,10 @@ if exists("b:did_ftplugin")
finish
endif
unlet! b:is_sh
unlet! b:is_kornshell
let b:is_bash = 1
if exists("b:is_sh")
unlet b:is_sh
endif
if exists("b:is_kornshell")
unlet b:is_kornshell
endif
" Setting 'filetype' here directly won't work, since we are being invoked
" through an autocommand. Do it later, on the BufWinEnter event.
augroup bash_filetype
au BufWinEnter * call SetBashFt()
augroup END
runtime! ftplugin/sh.vim ftplugin/sh_*.vim ftplugin/sh/*.vim
func SetBashFt()
au! bash_filetype
set ft=sh
endfunc
" vim: ts=8

View File

@ -1,8 +1,8 @@
" Vim filetype plugin
" Language: J
" Maintainer: David Bürgin <676c7473@gmail.com>
" URL: https://github.com/glts/vim-j
" Last Change: 2015-09-27
" Maintainer: David Bürgin <dbuergin@gluet.ch>
" URL: https://gitlab.com/glts/vim-j
" Last Change: 2015-10-27
if exists('b:did_ftplugin')
finish
@ -25,7 +25,7 @@ setlocal include=\\v^\\s*(load\|require)\\s*'\\zs\\f+\\ze'
setlocal includeexpr=substitute(substitute(tr(v:fname,'\\','/'),'\\v^[^~][^/.]*(/[^/.]+)$','&\\1',''),'\\v^\\~[^/]+/','','')
setlocal suffixesadd=.ijs
let b:undo_ftplugin = 'setlocal matchpairs< formatoptions< commentstring< comments< iskeyword< path< include< includeexpr< suffixesadd<'
let b:undo_ftplugin = 'setlocal suffixesadd< includeexpr< include< path< matchpairs< formatoptions< commentstring< comments< iskeyword<'
" Section movement with ]] ][ [[ []. The start/end patterns below are amended
" inside the function in order to avoid matching on the current cursor line.

View File

@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: man
" Maintainer: SungHyun Nam <goweol@gmail.com>
" Last Change: 2019 Jul 22
" Last Change: 2019 Sep 26
" (fix by Jason Franklin)
" To make the ":Man" command available before editing a manual page, source
@ -132,11 +132,17 @@ func <SID>GetPage(cmdmods, ...)
let page = expand('<cword>')
endif
if sect != "" && s:FindPage(sect, page) == 0
let sect = ""
if !exists('g:ft_man_no_sect_fallback') || (g:ft_man_no_sect_fallback == 0)
if sect != "" && s:FindPage(sect, page) == 0
let sect = ""
endif
endif
if s:FindPage(sect, page) == 0
echo "\nCannot find a '".page."'."
let msg = "\nNo manual entry for ".page
if sect != ""
let msg .= " in section ".sect
endif
echo msg
return
endif
exec "let s:man_tag_buf_".s:man_tag_depth." = ".bufnr("%")

View File

@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: matlab
" Maintainer: Jake Wasserman <jwasserman at gmail dot com>
" Last Changed: 2014 Dec 30
" Last Change: 2019 Sep 27
" Contributors:
" Charles Campbell
@ -24,8 +24,9 @@ endif
setlocal suffixesadd=.m
setlocal suffixes+=.asv
setlocal commentstring=%\ %s
let b:undo_ftplugin = "setlocal suffixesadd< suffixes< "
let b:undo_ftplugin = "setlocal suffixesadd< suffixes< commentstring< "
\ . "| unlet! b:match_words"
let &cpo = s:save_cpo

View File

@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: meson
" License: VIM License
" Original Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
" Last Change: 2018 Nov 27
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
let s:keepcpo= &cpo
set cpo&vim
setlocal commentstring=#\ %s
setlocal comments=:#
setlocal shiftwidth=2
setlocal softtabstop=2
let &cpo = s:keepcpo
unlet s:keepcpo

View File

@ -1,6 +1,6 @@
" Vim filetype plugin file
" Language: Scheme (R7RS)
" Last Change: 2018-03-05
" Last Change: 2019 Nov 18
" Author: Evan Hanson <evhan@foldling.org>
" Maintainer: Evan Hanson <evhan@foldling.org>
" Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
@ -21,7 +21,7 @@ setl iskeyword=33,35-39,42-43,45-58,60-90,94,95,97-122,126
let b:undo_ftplugin = 'setl lisp< comments< commentstring< define< iskeyword<'
setl lispwords=case
setl lispwords+=case
setl lispwords+=define
setl lispwords+=define-record-type
setl lispwords+=define-syntax

View File

@ -4,16 +4,25 @@
# Translators: This is the Application Name used in the GVim desktop file
Name[de]=GVim
Name[eo]=GVim
Name[ru]=GVim
Name[sr]=GVim
Name[tr]=GVim
Name=GVim
# Translators: This is the Generic Application Name used in the Vim desktop file
GenericName[de]=Texteditor
GenericName[eo]=Tekstoredaktilo
GenericName[ja]=テキストエディタ
GenericName[ru]=Текстовый редактор
GenericName[sr]=Текст Едитор
GenericName[tr]=Metin Düzenleyici
GenericName=Text Editor
# Translators: This is the comment used in the Vim desktop file
Comment[de]=Textdateien bearbeiten
Comment[eo]=Redakti tekstajn dosierojn
Comment[ja]=テキストファイルを編集します
Comment[ru]=Редактирование текстовых файлов
Comment[sr]=Уређивање текст фајлова
Comment[tr]=Metin dosyaları düzenleyin
Comment=Edit text files
# The translations should come from the po file. Leave them here for now, they will
# be overwritten by the po file when generating the desktop.file!
@ -71,17 +80,14 @@ Comment[pl]=Edytuj pliki tekstowe
Comment[pt]=Editar ficheiros de texto
Comment[pt_BR]=Edite arquivos de texto
Comment[ro]=Editare fişiere text
Comment[ru]=Редактор текстовых файлов
Comment[sk]=Úprava textových súborov
Comment[sl]=Urejanje datotek z besedili
Comment[sq]=Përpuno files teksti
Comment[sr]=Измени текстуалне датотеке
Comment[sr@Latn]=Izmeni tekstualne datoteke
Comment[sv]=Redigera textfiler
Comment[ta]=உரை கோப்புகளை தொகுக்கவும்
Comment[th]=แก้ไขแฟ้มข้อความ
Comment[tk]=Metin faýllary editle
Comment[tr]=Metin dosyalarını düzenle
Comment[uk]=Редактор текстових файлів
Comment[vi]=Soạn thảo tập tin văn bản
Comment[wa]=Asspougnî des fitchîs tecses
@ -95,10 +101,15 @@ Type=Application
Keywords[de]=Text;Editor;
Keywords[eo]=Teksto;redaktilo;
Keywords[ja]=テキスト;エディタ;
Keywords[ru]=текст;текстовый редактор;
Keywords[sr]=Текст;едитор;
Keywords[tr]=Metin;düzenleyici;
Keywords=Text;editor;
# Translators: This is the Icon file name. Do NOT translate
Icon[de]=gvim
Icon[eo]=gvim
Icon[ru]=gvim
Icon[sr]=gvim
Icon=gvim
Categories=Utility;TextEditor;
StartupNotify=true

18
runtime/indent/bash.vim Normal file
View File

@ -0,0 +1,18 @@
" Vim indent file
" Language: bash
" Maintainer: Bram
" Last Change: 2019 Sep 27
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
finish
endif
" The actual indenting is in sh.vim and controlled by buffer-local variables.
unlet! b:is_sh
unlet! b:is_kornshell
let b:is_bash = 1
runtime! indent/sh.vim
" vim: ts=8

View File

@ -1,7 +1,7 @@
" Vim indent file
" Language: J
" Maintainer: David Bürgin <676c7473@gmail.com>
" URL: https://github.com/glts/vim-j
" Maintainer: David Bürgin <dbuergin@gluet.ch>
" URL: https://gitlab.com/glts/vim-j
" Last Change: 2015-01-11
if exists('b:did_indent')

180
runtime/indent/meson.vim Normal file
View File

@ -0,0 +1,180 @@
" Vim indent file
" Language: Meson
" License: VIM License
" Maintainer: Nirbheek Chauhan <nirbheek.chauhan@gmail.com>
" Original Authors: David Bustos <bustos@caltech.edu>
" Bram Moolenaar <Bram@vim.org>
" Last Change: 2019 Oct 18
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
finish
endif
let b:did_indent = 1
" Some preliminary settings
setlocal nolisp " Make sure lisp indenting doesn't supersede us
setlocal autoindent " indentexpr isn't much help otherwise
setlocal indentexpr=GetMesonIndent(v:lnum)
setlocal indentkeys+==elif,=else,=endforeach,=endif,0)
" Only define the function once.
if exists("*GetMesonIndent")
finish
endif
let s:keepcpo= &cpo
set cpo&vim
" Come here when loading the script the first time.
let s:maxoff = 50 " maximum number of lines to look backwards for ()
function GetMesonIndent(lnum)
echom getline(line("."))
" If this line is explicitly joined: If the previous line was also joined,
" line it up with that one, otherwise add two 'shiftwidth'
if getline(a:lnum - 1) =~ '\\$'
if a:lnum > 1 && getline(a:lnum - 2) =~ '\\$'
return indent(a:lnum - 1)
endif
return indent(a:lnum - 1) + (exists("g:mesonindent_continue") ? eval(g:mesonindent_continue) : (shiftwidth() * 2))
endif
" If the start of the line is in a string don't change the indent.
if has('syntax_items')
\ && synIDattr(synID(a:lnum, 1, 1), "name") =~ "String$"
return -1
endif
" Search backwards for the previous non-empty line.
let plnum = prevnonblank(v:lnum - 1)
if plnum == 0
" This is the first non-empty line, use zero indent.
return 0
endif
" If the previous line is inside parenthesis, use the indent of the starting
" line.
" Trick: use the non-existing "dummy" variable to break out of the loop when
" going too far back.
call cursor(plnum, 1)
let parlnum = searchpair('(\|{\|\[', '', ')\|}\|\]', 'nbW',
\ "line('.') < " . (plnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|Todo\\|String\\)$'")
if parlnum > 0
let plindent = indent(parlnum)
let plnumstart = parlnum
else
let plindent = indent(plnum)
let plnumstart = plnum
endif
" When inside parenthesis: If at the first line below the parenthesis add
" a 'shiftwidth', otherwise same as previous line.
" i = (a
" + b
" + c)
call cursor(a:lnum, 1)
let p = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW',
\ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|Todo\\|String\\)$'")
if p > 0
if p == plnum
" When the start is inside parenthesis, only indent one 'shiftwidth'.
let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW',
\ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|Todo\\|String\\)$'")
if pp > 0
return indent(plnum) + (exists("g:pyindent_nested_paren") ? eval(g:pyindent_nested_paren) : shiftwidth())
endif
return indent(plnum) + (exists("g:pyindent_open_paren") ? eval(g:pyindent_open_paren) : shiftwidth())
endif
if plnumstart == p
return indent(plnum)
endif
return plindent
endif
" Get the line and remove a trailing comment.
" Use syntax highlighting attributes when possible.
let pline = getline(plnum)
let pline_len = strlen(pline)
if has('syntax_items')
" If the last character in the line is a comment, do a binary search for
" the start of the comment. synID() is slow, a linear search would take
" too long on a long line.
if synIDattr(synID(plnum, pline_len, 1), "name") =~ "\\(Comment\\|Todo\\)$"
let min = 1
let max = pline_len
while min < max
let col = (min + max) / 2
if synIDattr(synID(plnum, col, 1), "name") =~ "\\(Comment\\|Todo\\)$"
let max = col
else
let min = col + 1
endif
endwhile
let pline = strpart(pline, 0, min - 1)
endif
else
let col = 0
while col < pline_len
if pline[col] == '#'
let pline = strpart(pline, 0, col)
break
endif
let col = col + 1
endwhile
endif
" If the previous line ended the conditional/loop
if getline(plnum) =~ '^\s*\(endif\|endforeach\)\>\s*'
" Maintain indent
return -1
endif
" If the previous line ended with a builtin, indent this line
if pline =~ '^\s*\(foreach\|if\|else\|elif\)\>\s*'
return plindent + shiftwidth()
endif
" If the current line begins with a header keyword, deindent
if getline(a:lnum) =~ '^\s*\(else\|elif\|endif\|endforeach\)'
" Unless the previous line was a one-liner
if getline(plnumstart) =~ '^\s*\(foreach\|if\)\>\s*'
return plindent
endif
" Or the user has already dedented
if indent(a:lnum) <= plindent - shiftwidth()
return -1
endif
return plindent - shiftwidth()
endif
" When after a () construct we probably want to go back to the start line.
" a = (b
" + c)
" here
if parlnum > 0
return plindent
endif
return -1
endfunction
let &cpo = s:keepcpo
unlet s:keepcpo
" vim:sw=2

View File

@ -3,7 +3,7 @@
" Maintainer: Christian Brabandt <cb@256bit.org>
" Original Author: Nikolai Weibull <now@bitwi.se>
" Previous Maintainer: Peter Aronoff <telemachus@arpinum.org>
" Latest Revision: 2019-07-26
" Latest Revision: 2019-10-24
" License: Vim (see :h license)
" Repository: https://github.com/chrisbra/vim-sh-indent
" Changelog:
@ -134,7 +134,7 @@ function! GetShIndent()
" TODO: should we do the same for other "end" lines?
if curline =~ '^\s*\%(fi\);\?\s*\%(#.*\)\=$'
let ind = indent(v:lnum)
let previous_line = searchpair('\<if\>', '', '\<fi\>\zs', 'bnW', 'synIDattr(synID(line("."),col("."), 1),"name") =~? "comment"')
let previous_line = searchpair('\<if\>', '', '\<fi\>\zs', 'bnW', 'synIDattr(synID(line("."),col("."), 1),"name") =~? "comment\\|quote"')
if previous_line > 0
let ind = indent(previous_line)
endif
@ -195,7 +195,7 @@ endfunction
function! s:is_function_definition(line)
return a:line =~ '^\s*\<\k\+\>\s*()\s*{' ||
\ a:line =~ '^\s*{' ||
\ a:line =~ '^\s*function\s*\w\S\+\s*\%(()\)\?\s*{'
\ a:line =~ '^\s*function\s*\k\+\s*\%(()\)\?\s*{'
endfunction
function! s:is_array(line)

View File

@ -1,7 +1,7 @@
" Vim indent file
" Language: SystemVerilog
" Maintainer: kocha <kocha.lsifrontend@gmail.com>
" Last Change: 12-Aug-2013.
" Last Change: 05-Feb-2017 by Bilal Wasim
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@ -74,7 +74,7 @@ function SystemVerilogIndent()
" Indent after if/else/for/case/always/initial/specify/fork blocks
elseif last_line =~ '`\@<!\<\(if\|else\)\>' ||
\ last_line =~ '^\s*\<\(for\|case\%[[zx]]\|do\|foreach\|randcase\)\>' ||
\ last_line =~ '^\s*\<\(for\|case\%[[zx]]\|do\|foreach\|forever\|randcase\)\>' ||
\ last_line =~ '^\s*\<\(always\|always_comb\|always_ff\|always_latch\)\>' ||
\ last_line =~ '^\s*\<\(initial\|specify\|fork\|final\)\>'
if last_line !~ '\(;\|\<end\>\)\s*' . sv_comment . '*$' ||
@ -129,9 +129,9 @@ function SystemVerilogIndent()
" De-indent for the end of one-line block
elseif ( last_line !~ '\<begin\>' ||
\ last_line =~ '\(//\|/\*\).*\<begin\>' ) &&
\ last_line2 =~ '\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|final\)\>.*' .
\ last_line2 =~ '\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|forever\|final\)\>.*' .
\ sv_comment . '*$' &&
\ last_line2 !~ '\(//\|/\*\).*\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|final\)\>' &&
\ last_line2 !~ '\(//\|/\*\).*\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|forever\|final\)\>' &&
\ last_line2 !~ sv_openstat . '\s*' . sv_comment . '*$' &&
\ ( last_line2 !~ '\<begin\>' ||
\ last_line2 =~ '\(//\|/\*\).*\<begin\>' )
@ -194,7 +194,7 @@ function SystemVerilogIndent()
\ last_line !~ '^\s*\<\(property\|checker\|program\)\>' &&
\ last_line !~ '^\s*\()*\s*;\|)\+\)\s*' . sv_comment . '*$' &&
\ ( last_line =~
\ '\<\(`\@<!if\|`\@<!else\|for\|case\%[[zx]]\|always\|initial\|do\|foreach\|randcase\|final\)\>' ||
\ '\<\(`\@<!if\|`\@<!else\|for\|case\%[[zx]]\|always\|initial\|do\|foreach\|forever\|randcase\|final\)\>' ||
\ last_line =~ ')\s*' . sv_comment . '*$' ||
\ last_line =~ sv_openstat . '\s*' . sv_comment . '*$' )
let ind = ind - offset
@ -227,4 +227,4 @@ endfunction
let &cpo = s:cpo_save
unlet s:cpo_save
" vim:sw=2
" vim:sw=2

View File

@ -20,6 +20,7 @@ func HandleSwapExists()
endif
endfunc
let failed_count = 0
for fname in glob('testdir/*.in', 1, 1)
let root = substitute(fname, '\.in', '', '')
@ -110,6 +111,7 @@ for fname in glob('testdir/*.in', 1, 1)
endif
if failed
let failed_count += 1
exe 'write ' . root . '.fail'
echoerr 'Test ' . fname . ' FAILED!'
else
@ -123,4 +125,8 @@ endfor
" Matching "if 1" at the start.
endif
if failed_count > 0
" have make report an error
cquit
endif
qall!

View File

@ -44,3 +44,18 @@ let f = x
" prev-line
endfunc
" END_INDENT
" START_INDENT
let a =<< END
nothing
END
" END_INDENT
" START_INDENT
" INDENT_AT this-line
let a=<< trim END
blah
blah
blah this-line
END
" END_INDENT

View File

@ -44,3 +44,18 @@ func Some()
" prev-line
endfunc
" END_INDENT
" START_INDENT
let a =<< END
nothing
END
" END_INDENT
" START_INDENT
" INDENT_AT this-line
let a=<< trim END
blah
blah
blah this-line
END
" END_INDENT

View File

@ -0,0 +1,14 @@
# vim: set ft=yaml sw=2 et :
# START_INDENT
map1:
sub1:
- list item
map2:
- another list
# END_INDENT
# START_INDENT
map: &anchor
map: val
# END_INDENT

View File

@ -0,0 +1,14 @@
# vim: set ft=yaml sw=2 et :
# START_INDENT
map1:
sub1:
- list item
map2:
- another list
# END_INDENT
# START_INDENT
map: &anchor
map: val
# END_INDENT

View File

@ -1,7 +1,7 @@
" Vim indent file
" Language: TypeScript
" Maintainer: See https://github.com/HerringtonDarkholme/yats.vim
" Last Change: 2019 Jun 06
" Last Change: 2019 Oct 18
" Acknowledgement: Based off of vim-ruby maintained by Nikolai Weibull http://vim-ruby.rubyforge.org
" 0. Initialization {{{1
@ -442,7 +442,7 @@ let &cpo = s:cpo_save
unlet s:cpo_save
function! Fixedgq(lnum, count)
let l:tw = &tw ? &tw : 80;
let l:tw = &tw ? &tw : 80
let l:count = a:count
let l:first_char = indent(a:lnum) + 1

View File

@ -1,7 +1,7 @@
" Vim indent file
" Language: Vim script
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2016 Jun 27
" Last Change: 2019 Oct 31
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@ -56,6 +56,31 @@ function GetVimIndentIntern()
" and :else. Add it three times for a line that starts with '\' or '"\ '
" after a line that doesn't (or g:vim_indent_cont if it exists).
let ind = indent(lnum)
" In heredoc indenting works completely differently.
if has('syntax_items')
let syn_here = synIDattr(synID(v:lnum, 1, 1), "name")
if syn_here =~ 'vimLetHereDocStop'
" End of heredoc: use indent of matching start line
let lnum = v:lnum - 1
while lnum > 0
if synIDattr(synID(lnum, 1, 1), "name") !~ 'vimLetHereDoc'
return indent(lnum)
endif
let lnum -= 1
endwhile
return 0
endif
if syn_here =~ 'vimLetHereDoc'
if synIDattr(synID(lnum, 1, 1), "name") !~ 'vimLetHereDoc'
" First line in heredoc: increase indent
return ind + shiftwidth()
endif
" Heredoc continues: no change in indent
return ind
endif
endif
if cur_text =~ s:lineContPat && v:lnum > 1 && prev_text !~ s:lineContPat
if exists("g:vim_indent_cont")
let ind = ind + g:vim_indent_cont

View File

@ -1,8 +1,8 @@
" Language: xml
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
" Last Changed: July 27, 2019
" Maintainer: Christian Brabandt <cb@256bit.org>
" Previous Maintainer: Johannes Zellner <johannes@zellner.org>
" Language: XML
" Maintainer: Christian Brabandt <cb@256bit.org>
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
" Previous Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Changed: 2019 Oct 24
" Last Change:
" 20190726 - Correctly handle non-tagged data
" 20190204 - correctly handle wrap tags

View File

@ -1,7 +1,7 @@
" Vim indent file
" Language: YAML
" Maintainer: Nikolai Pavlov <zyx.vim@gmail.com>
" Last Change: 2017 Jun 13
" Last Change: 2019 Sep 28
" Only load this indent file when no other was loaded.
if exists('b:did_indent')
@ -29,7 +29,7 @@ function s:FindPrevLessIndentedLine(lnum, ...)
let curindent = a:0 ? a:1 : indent(a:lnum)
while prevlnum
\&& indent(prevlnum) >= curindent
\&& getline(prevlnum) =~# '^\s*#'
\&& getline(prevlnum) !~# '^\s*#'
let prevlnum = prevnonblank(prevlnum-1)
endwhile
return prevlnum

View File

@ -1,5 +1,6 @@
" Vim Keymap file for russian characters, layout 'jcuken', MS Windows variant
" (slightly incompatible with XFree86 'ru' keymap - makes use of NUMERO SIGN)
" Vim Keymap file for russian characters, layout 'jcuken', MS Windows
" Typewriter variant (slightly incompatible with XFree86 'ru' keymap -
" makes use of NUMERO SIGN)
" Useful mainly with utf-8 but may work with other encodings
" Derived from russian-jcuken.vim by Artem Chuprina <ran@ran.pp.ru>
@ -15,14 +16,13 @@ scriptencoding utf-8
let b:keymap_name = "ru"
loadkeymap
~ + CYRILLIC CAPITAL LETTER IO
` | CYRILLIC SMALL LETTER IO
F А CYRILLIC CAPITAL LETTER A
< Б CYRILLIC CAPITAL LETTER BE
D В CYRILLIC CAPITAL LETTER VE
U Г CYRILLIC CAPITAL LETTER GHE
L Д CYRILLIC CAPITAL LETTER DE
T Е CYRILLIC CAPITAL LETTER IE
? Ё CYRILLIC CAPITAL LETTER IO
: Ж CYRILLIC CAPITAL LETTER ZHE
P З CYRILLIC CAPITAL LETTER ZE
B И CYRILLIC CAPITAL LETTER I
@ -55,6 +55,7 @@ d в CYRILLIC SMALL LETTER VE
u г CYRILLIC SMALL LETTER GHE
l д CYRILLIC SMALL LETTER DE
t е CYRILLIC SMALL LETTER IE
/ ё CYRILLIC SMALL LETTER IO
; ж CYRILLIC SMALL LETTER ZHE
p з CYRILLIC SMALL LETTER ZE
b и CYRILLIC SMALL LETTER I
@ -81,13 +82,7 @@ m ь CYRILLIC SMALL LETTER SOFT SIGN
' э CYRILLIC SMALL LETTER E
. ю CYRILLIC SMALL LETTER YU
z я CYRILLIC SMALL LETTER YA
@ "
# № NUMERO SIGN
$ ;
^ :
& ?
/ ё
? Ё
` |
1
2 -
3 /
@ -100,5 +95,18 @@ $ ;
0 %
- !
= ;
~ +
! 1
@ 2
# 3
$ 4
% 5
^ 6
& 7
* 8
( 9
) 0
_ =
+ \\
\\ )
\| (

View File

@ -1,270 +1,452 @@
" Menu Translations: Simplified Chinese
" Maintainer: Shun Bai <baishunde@gmail.com>
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
" Last Change: 2014 Oct 15
" vim: ts=8 sw=8 noet
" Last Change: 2019-09-10
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
let s:keepcpo = &cpo
set cpo&vim
scriptencoding cp936
" Help menu
menutrans &Help <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans &Overview<Tab><F1> <09><><EFBFBD><EFBFBD>(&O)<Tab><F1>
menutrans &User\ Manual <09>û<EFBFBD><EFBFBD>ֲ<EFBFBD>(&U)
menutrans &How-to\ links How-to\ ָ<EFBFBD><EFBFBD>(&H)
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
menutrans &Credits <09><>л(&C)
menutrans Co&pying <09><>Ȩ(&P)
menutrans &Sponsor/Register <09><><EFBFBD><EFBFBD>/ע<EFBFBD><EFBFBD>(&S)
menutrans O&rphans <09><EFBFBD>(&R)
menutrans &Version <09>(&V)
menutrans &About <09><><EFBFBD><EFBFBD>(&A)
menutrans &Help <09><><EFBFBD><EFBFBD>(&H)
" Help menuitems and dialog {{{1
menutrans &Overview<Tab><F1> <09><><EFBFBD><EFBFBD>(&O)<Tab><F1>
menutrans &User\ Manual <09>û<EFBFBD><EFBFBD>ֲ<EFBFBD>(&U)
menutrans &How-to\ Links <09><><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD>(&H)
menutrans &Find\.\.\. <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&F)\.\.\.
menutrans &Credits <EFBFBD><EFBFBD>л(&C)
menutrans Co&pying <09><>Ȩ(&P)
menutrans &Sponsor/Register <09><><EFBFBD><EFBFBD>/ע<EFBFBD><EFBFBD>(&S)
menutrans O&rphans <09><><EFBFBD>ȹ<EFBFBD>(&R)
menutrans &Version <09>(&V)
menutrans &About <09><><EFBFBD><EFBFBD>(&A)
" fun! s:Helpfind()
if !exists("g:menutrans_help_dialog")
let g:menutrans_help_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򵥴<EFBFBD><F2B5A5B4>Ի<EFBFBD><D4BB>ð<EFBFBD><C3B0><EFBFBD>:\n\nǰ׺ i_ <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ģʽ<C4A3>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>(<28><>: i_CTRL-X)\nǰ׺ c_ <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µı<C4B1><E0BCAD><EFBFBD><EFBFBD>(<28><>: c_<Del>)\nǰ׺ ' <20><>ʾѡ<CABE><D1A1><EFBFBD><EFBFBD>(<28><>: 'shiftwidth')"
endif
" }}}
" File menu
menutrans &File <09>ļ<EFBFBD>(&F)
menutrans &Open\.\.\.<Tab>:e <09><><EFBFBD><EFBFBD>(&O)\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp <09>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew <09>򿪱<EFBFBD>ǩ\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew <09>½<EFBFBD>(&N)<Tab>:enew
menutrans &Close<Tab>:close <09>ر<EFBFBD>(&C)<Tab>:close
menutrans &Save<Tab>:w <09><EFBFBD><EFBFBD><EFBFBD>(&S)<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav <09><><EFBFBD><EFBFBD>Ϊ(&A)\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. <09>ָ<EFBFBD><EFBFBD>Ƚ<EFBFBD>(Diff)(&D)\.\.\.
menutrans Split\ Patched\ &By\.\.\. <09>ָ<EFBFBD><EFBFBD>򲹶<EFBFBD>(Patch)(&B)\.\.\.
menutrans &Print <09><>ӡ(&P)
menutrans Sa&ve-Exit<Tab>:wqa <09><><EFBFBD><EFBFBD>˳<EFBFBD>(&V)<Tab>:wqa
menutrans E&xit<Tab>:qa <09>˳<EFBFBD>(&X)<Tab>:qa
menutrans &File <09>ļ<EFBFBD>(&F)
" File menuitems {{{1
menutrans &Open\.\.\.<Tab>:e <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp <09>ڲ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD>(&L)\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew <EFBFBD>ڱ<EFBFBD>ǩҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew <09>½<EFBFBD>(&N)<Tab>:enew
menutrans &Close<Tab>:close <09>ر<EFBFBD>(&C)<Tab>:close
menutrans &Save<Tab>:w <09><><EFBFBD><EFBFBD>(&S)<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav <09><><EFBFBD><EFBFBD>Ϊ(&A)\.\.\.<Tab>:sav
menutrans Split\ &Diff\ With\.\.\. <09><><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԶԱȲ<EFBFBD><EFBFBD><EFBFBD>(Diff)(&D)\.\.\.
menutrans Split\ Patched\ &By\.\.\. <09><><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>޲<EFBFBD>(Patch)(&B)\.\.\.
menutrans &Print <09><>ӡ(&P)
menutrans Sa&ve-Exit<Tab>:wqa <09><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>(&V)<Tab>:wqa
menutrans E&xit<Tab>:qa <09>˳<EFBFBD>(&X)<Tab>:qa
" }}}
" Edit menu
menutrans &Edit <09>(&E)
menutrans &Undo<Tab>u <09><><EFBFBD><EFBFBD>(&U)<Tab>u
menutrans &Redo<Tab>^R <09><><EFBFBD><EFBFBD>(&R)<Tab>^R
menutrans Rep&eat<Tab>\. <09>ظ<EFBFBD><EFBFBD>ϴβ<EFBFBD><EFBFBD><EFBFBD>(&E)<Tab>\.
menutrans Cu&t<Tab>"+x <09><><EFBFBD><EFBFBD>(&T)<Tab>"+x
menutrans &Copy<Tab>"+y <09><><EFBFBD><EFBFBD>(&C)<Tab>"+y
menutrans &Paste<Tab>"+gP ճ<EFBFBD><EFBFBD>(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ(&B)<Tab>[p
menutrans Put\ &After<Tab>]p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>]p
menutrans &Delete<Tab>x ɾ<EFBFBD><EFBFBD>(&D)<Tab>x
menutrans &Select\ All<Tab>ggVG ȫѡ(&S)<Tab>ggVG
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. <09><><EFBFBD>Һ<EFBFBD><EFBFBD>(&L)\.\.\.
menutrans &Find<Tab>/ <09><><EFBFBD><EFBFBD>(&F)<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s <09><><EFBFBD>Һ<EFBFBD><EFBFBD>(&L)<Tab>:%s
menutrans Settings\ &Window <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
menutrans Startup\ &Settings <09><><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Global\ Settings ȫ<EFBFBD><EFBFBD><EFBFBD>(&G)
menutrans &Edit <09>(&E)
" Edit menuitems {{{1
menutrans &Undo<Tab>u <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&U)<Tab>u
menutrans &Redo<Tab>^R <09>ָ<EFBFBD>(&R)<Tab>^R
menutrans Rep&eat<Tab>\. <09>ظ<EFBFBD>(&E)<Tab>\.
menutrans Cu&t<Tab>"+x <09><><EFBFBD><EFBFBD>(&T)<Tab>"+x
menutrans &Copy<Tab>"+y <09><><EFBFBD><EFBFBD>(&C)<Tab>"+y
menutrans &Paste<Tab>"+gP ճ<><D5B3>(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ(&B)<Tab>[p
menutrans Put\ &After<Tab>]p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>]p
menutrans &Delete<Tab>x ɾ<EFBFBD><EFBFBD>(&D)<Tab>x
menutrans &Select\ All<Tab>ggVG ȫѡ(&S)<Tab>ggVG
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. <09><><EFBFBD>Һ<EFBFBD><EFBFBD>(&L)\.\.\.
menutrans &Find<Tab>/ <09><><EFBFBD><EFBFBD>(&F)<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s <09><><EFBFBD>Һ<EFBFBD><EFBFBD>(&L)<Tab>:%s
menutrans Settings\ &Window <09><><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD>(&W)
menutrans Startup\ &Settings <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
" Edit/Global Settings
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! <09><>/<2F><>ģʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! <09><>/<2F>غ<EFBFBD><EFBFBD>Դ<EFBFBD>Сд(&I)<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)<Tab>:set\ sm!
menutrans &Context\ lines <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
menutrans &Virtual\ Edit <09><><EFBFBD><EFBFBD><EFBFBD>(&V)
menutrans &Global\ Settings ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&G)
" Edit.Global Settings menuitems and dialogs {{{2
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! <09><>/<2F>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>:set\ hls!
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! <09><>/<2F>غ<EFBFBD><EFBFBD>Դ<EFBFBD>Сд(&I)<Tab>:set\ ic!
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD>(&S)<Tab>:set\ sm!
menutrans &Context\ Lines <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
menutrans &Virtual\ Edit <09><><EFBFBD><EFBFBD><EFBFBD>(&V)
" Edit.Global Settings.Virtual Edit menuitems {{{3
menutrans Never <09>Ӳ<EFBFBD>
menutrans Block\ Selection <EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
menutrans Insert\ mode <09><EFBFBD><EFBFBD><EFBFBD>ģʽ
menutrans Block\ and\ Insert <09><>ѡ<EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>ģʽ
menutrans Always <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! <09><>/<2F>ز<EFBFBD><EFBFBD><EFBFBD>ģʽ(&M)<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! <09><>/<2F><>\ Vi\ <20><><EFBFBD><EFBFBD><Tab>:set\ cp!
menutrans Search\ &Path\.\.\. <09><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>(&P)\.\.\.
menutrans Ta&g\ Files\.\.\. Tag\ <20>ļ<EFBFBD>(&T)\.\.\.
menutrans Block\ Selection ֻ<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>ʱ
menutrans Insert\ Mode ֻ<EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD>ģʽʱ
menutrans Block\ and\ Insert <09><>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>ģʽʱ
menutrans Always ʼ<EFBFBD><EFBFBD>
" }}}
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! <09><>/<2F>ز<EFBFBD><EFBFBD><EFBFBD>ģʽ(&M)<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! <09><>/<2F><>\ Vi\ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. <09><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>(&P)\.\.\.
menutrans Ta&g\ Files\.\.\. <09><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)(&G)\.\.\.
" GUI options
menutrans Toggle\ &Toolbar <09><>/<2F>ع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans Toggle\ &Bottom\ Scrollbar <09><>/<2F>صײ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans Toggle\ &Left\ Scrollbar <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans Toggle\ &Right\ Scrollbar <09><>/<2F><><EFBFBD>Ҷ˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
menutrans Toggle\ &Toolbar <09><>/<2F>ع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans Toggle\ &Bottom\ Scrollbar <09><>/<2F>صײ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans Toggle\ &Left\ Scrollbar <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans Toggle\ &Right\ Scrollbar <09><>/<2F><><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
" fun! s:SearchP()
if !exists("g:menutrans_path_dialog")
let g:menutrans_path_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>\n<>ö<EFBFBD><C3B6>ŷָ<C5B7>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>"
endif
" fun! s:TagFiles()
if !exists("g:menutrans_tags_dialog")
let g:menutrans_tags_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)<29><><EFBFBD>ơ<EFBFBD>\n<>ö<EFBFBD><C3B6>ŷָ<C5B7><D6B8>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>"
endif
" }}}
" Edit/File Settings
menutrans F&ile\ Settings <09>ļ<EFBFBD><EFBFBD>(&I)
menutrans F&ile\ Settings <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&I)
" Edit.File Settings menuitems and dialogs {{{2
" Boolean options
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
menutrans Toggle\ &expand-tab<Tab>:set\ et! <09><>/<2F><><EFBFBD><EFBFBD>չ\ tab(&E)<Tab>:set\ et!
menutrans Toggle\ &auto-indent<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
menutrans Toggle\ &C-indenting<Tab>:set\ cin! <EFBFBD><EFBFBD>/<2F><>\ C\ <20><><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <EFBFBD><EFBFBD>/<2F><><EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <EFBFBD><EFBFBD>/<2F><><EFBFBD>б<EFBFBD>ģʽ(&L)<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap! <09><>/<2F>ػ<EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
menutrans Toggle\ W&rapping\ at\ Word<Tab>:set\ lbr! <09><>/<2F>ش<EFBFBD>β<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et! <EFBFBD><EFBFBD>/<2F><><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ(&E)<Tab>:set\ et!
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin! <09><>/<2F><>\ C\ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
" other options
menutrans &Shiftwidth <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Soft\ &Tabstop Soft\ Tab\ <20><><EFBFBD><EFBFBD>(&T)
menutrans Te&xt\ Width\.\.\. <09>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)\.\.\.
menutrans &File\ Format\.\.\. <09>ļ<EFBFBD><EFBFBD><EFBFBD>ʽ(&F)\.\.\.
menutrans C&olor\ Scheme <09><>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans Select\ Fo&nt\.\.\. ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)\.\.\.
menutrans &Keymap <09><><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
menutrans &Shiftwidth <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Soft\ &Tabstop <09><><EFBFBD>Ʊ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Soft Tabstop)(&T)
menutrans Te&xt\ Width\.\.\. <09>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)\.\.\.
menutrans &File\ Format\.\.\. <09>ļ<EFBFBD><EFBFBD><EFBFBD>ʽ(&F)\.\.\.
" fun! s:TextWidth()
if !exists("g:menutrans_textwidth_dialog")
let g:menutrans_textwidth_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>(ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>0 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>):"
endif
" fun! s:FileFormat()
if !exists("g:menutrans_fileformat_dialog")
let g:menutrans_fileformat_dialog = "ѡ<><D1A1><EFBFBD>ļ<EFBFBD><C4BC>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ʽ:"
endif
if !exists("g:menutrans_fileformat_choices")
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nȡ<6E><C8A1>(&C)"
endif
" }}}
menutrans Show\ C&olor\ Schemes\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans C&olor\ Scheme <09><>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans Show\ &Keymaps\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
menutrans &Keymap <09><><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
menutrans Select\ Fo&nt\.\.\. ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)\.\.\.
" }}}
" Programming menu
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ tag(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)<Tab>^T
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD>\ Tags\ <20>ļ<EFBFBD>(&T)
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
" Tools menuitems {{{1
menutrans &Jump\ to\ This\ Tag<Tab>g^] <EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Tag)(&J)<Tab>g^]
menutrans Jump\ &Back<Tab>^T <09><>ת<EFBFBD><EFBFBD>(&B)<Tab>^T
menutrans Build\ &Tags\ File <09><><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)(&T)
" Tools.Spelling Menu
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Spell\ Check\ On <09><><EFBFBD><EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Spell\ Check\ &Off <09>ر<EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans To\ &Next\ error<Tab>]s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>]s
menutrans To\ &Previous\ error<Tab>[s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall <09>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:spellrepall
menutrans Set\ language\ to\ "en" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en"
menutrans Set\ language\ to\ "en_au" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_au"
menutrans Set\ language\ to\ "en_ca" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_ca"
menutrans Set\ language\ to\ "en_gb" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_gb"
menutrans Set\ language\ to\ "en_nz" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_nz"
menutrans Set\ language\ to\ "en_us" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_us"
menutrans &Find\ More\ Languages <09><><EFBFBD>Ҹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&F)
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
" Tools.Spelling menuitems and dialog {{{2
menutrans &Spell\ Check\ On <09><EFBFBD><EFBFBD><EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Spell\ Check\ &Off <09>ر<EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans To\ &Next\ Error<Tab>]s <EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>]s
menutrans To\ &Previous\ Error<Tab>[s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>z=
menutrans &Repeat\ Correction<Tab>:spellrepall <09><><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:spellrepall
menutrans Set\ Language\ to\ "en" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en"
menutrans Set\ Language\ to\ "en_au" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_au"
menutrans Set\ Language\ to\ "en_ca" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_ca"
menutrans Set\ Language\ to\ "en_gb" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_gb"
menutrans Set\ Language\ to\ "en_nz" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_nz"
menutrans Set\ Language\ to\ "en_us" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_us"
menutrans &Find\ More\ Languages <09><><EFBFBD>Ҹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&F)
" func! s:SpellLang()
if !exists("g:menutrans_set_lang_to")
let g:menutrans_set_lang_to = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ"
endif
" }}}
" Tools.Fold Menu
menutrans &Folding <09>۵<EFBFBD>(&F)
" Tools.Fold menuitems {{{2
" open close folds
menutrans &Folding <EFBFBD>۵<EFBFBD>(&F)
menutrans &Enable/Disable\ folds<Tab>zi <EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&E)<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm <EFBFBD>رո<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&L)<Tab>zm
menutrans &Close\ all\ folds<Tab>zM <EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&C)<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr <EFBFBD>򿪸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&P)<Tab>zr
menutrans &Open\ all\ folds<Tab>zR <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&O)<Tab>zR
menutrans &Enable/Disable\ Folds<Tab>zi <09><><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&E)<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv չ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>zv
menutrans Vie&w\ Cursor\ Line\ Only<Tab>zMzx ֻչ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>zMzx
menutrans C&lose\ More\ Folds<Tab>zm <09>۵<EFBFBD>һ<EFBFBD><EFBFBD>(&L)<Tab>zm
menutrans &Close\ All\ Folds<Tab>zM <09>۵<EFBFBD>ȫ<EFBFBD><EFBFBD>(&C)<Tab>zM
menutrans O&pen\ More\ Folds<Tab>zr չ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>(&P)<Tab>zr
menutrans &Open\ All\ Folds<Tab>zR չ<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>(&O)<Tab>zR
" fold method
menutrans Fold\ Met&hod <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans M&anual <09>ֹ<EFBFBD>(&A)
menutrans I&ndent <09><><EFBFBD><EFBFBD>(&N)
menutrans E&xpression <09><><EFBFBD><EFBFBD>ʽ(&X)
menutrans S&yntax <09>(&Y)
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
menutrans Ma&rker <09><><EFBFBD><EFBFBD>(&R)
menutrans Fold\ Met&hod <09>۵<EFBFBD><EFBFBD><EFBFBD>ʽ(&H)
" Tools.Fold.Fold Method menuitems {{{3
menutrans M&anual <09>ֶ<EFBFBD>(&A)
menutrans I&ndent <09><><EFBFBD><EFBFBD>(&N)
menutrans E&xpression <09><><EFBFBD><EFBFBD>ʽ(&X)
menutrans S&yntax <09>(&Y)
menutrans &Diff <09><><EFBFBD><EFBFBD>(Diff)(&D)
menutrans Ma&rker <09>Ǻ<EFBFBD>(Marker)(&R)
" }}}
" create and delete folds
menutrans Create\ &Fold<Tab>zf <09><><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd ɾ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&A)<Tab>zD
menutrans Create\ &Fold<Tab>zf <09><><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd ɾ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD ɾ<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&A)<Tab>zD
" moving around in folds
menutrans Fold\ column\ &width <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
menutrans Fold\ Col&umn\ Width <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
" }}}
" Tools.Diff Menu
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
menutrans &Update <09><><EFBFBD><EFBFBD>(&U)
menutrans &Get\ Block <09>õ<EFBFBD><EFBFBD><EFBFBD>(&G)
menutrans &Put\ Block <09><><EFBFBD>ÿ<EFBFBD>(&P)
menutrans &Diff <09><><EFBFBD><EFBFBD>(Diff)(&D)
" Tools.Diff menuitems {{{2
menutrans &Update ˢ<EFBFBD><EFBFBD>(&U)
menutrans &Get\ Block <09><><EFBFBD>öԲ<EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>(&G)
menutrans &Put\ Block <09><><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>(&P)
" }}}
menutrans &Make<Tab>:make Make(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl <09>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! <09>г<EFBFBD><EFBFBD><EFBFBD>Ϣ(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold <EFBFBD><EFBFBD><EFBFBD>ɵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew <09><><EFBFBD>µĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&E)<Tab>:cnew
menutrans Error\ &Window <09><><EFBFBD>󴰿<EFBFBD>(&W)
menutrans &Update<Tab>:cwin <09><><EFBFBD><EFBFBD>(&U)<Tab>:cwin
menutrans &Make<Tab>:make <09><><EFBFBD><EFBFBD>(Make)(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl <09>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! <09>г<EFBFBD><EFBFBD><EFBFBD>Ϣ(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold <EFBFBD>ϾɵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew <09><><EFBFBD>µĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&E)<Tab>:cnew
menutrans Error\ &Window <09><><EFBFBD>󴰿<EFBFBD>(&W)
" Tools.Error Window menuitems {{{2
menutrans &Update<Tab>:cwin ˢ<EFBFBD><EFBFBD>(&U)<Tab>:cwin
menutrans &Open<Tab>:copen <09><><EFBFBD><EFBFBD>(&O)<Tab>:copen
menutrans &Close<Tab>:cclose <09>ر<EFBFBD>(&C)<Tab>:cclose
menutrans &Convert\ to\ HEX<Tab>:%!xxd ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd\ -r
menutrans Se&T\ Compiler <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Close<Tab>:cclose <09>ر<EFBFBD>(&C)<Tab>:cclose
" }}}
menutrans Show\ Compiler\ Se&ttings\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans Se&t\ Compiler <09><><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Convert\ to\ HEX<Tab>:%!xxd ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>:%!xxd
menutrans Conve&rt\ Back<Tab>:%!xxd\ -r ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:%!xxd\ -r
" }}}
" Names for buffer menu.
menutrans &Buffers <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans &Refresh\ menu <09><><EFBFBD>²˵<C2B2>(&R)
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
menutrans &Alternate <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)
menutrans &Next <09><>һ<EFBFBD><EFBFBD>(&N)
menutrans &Previous <09><>һ<EFBFBD><EFBFBD>(&P)
" Buffer menu
menutrans &Buffers <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
" Buffer menuitems and dialog {{{1
menutrans &Refresh\ Menu ˢ<EFBFBD>±<EFBFBD><EFBFBD>˵<EFBFBD>(&R)
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
menutrans &Alternate <09>л<EFBFBD>(&A)
menutrans &Next <09><>һ<EFBFBD><EFBFBD>(&N)
menutrans &Previous <09><>һ<EFBFBD><EFBFBD>(&P)
" func! s:BMMunge(fname, bnum)
if !exists("g:menutrans_no_file")
let g:menutrans_no_file = "[<5B><><EFBFBD>ļ<EFBFBD>]"
endif
" }}}
" Window menu
menutrans &Window <09><><EFBFBD><EFBFBD>(&W)
menutrans &New<Tab>^Wn <09>½<EFBFBD>(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws <EFBFBD>ָ<EFBFBD>(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ <09>ָ\ #(&L)<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv <09><>ֱ<EFBFBD>ָ<EFBFBD>(&V)<Tab>^Wv
menutrans Split\ File\ E&xplorer <09>ָ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)
menutrans &Close<Tab>^Wc <09>ر<EFBFBD>(&C)<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)<Tab>^Wo
menutrans Move\ &To <EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Top<Tab>^WK <09><><EFBFBD><EFBFBD>(&T)<Tab>^WK
menutrans &Bottom<Tab>^WJ <09>׶<EFBFBD>(&B)<Tab>^WJ
menutrans &Left\ side<Tab>^WH <09><><EFBFBD><EFBFBD>(&L)<Tab>^WH
menutrans &Right\ side<Tab>^WL <09>ұ<EFBFBD>(&R)<Tab>^WL
" menutrans Ne&xt<Tab>^Ww <09><>һ<EFBFBD><D2BB>(&X)<Tab>^Ww
" menutrans P&revious<Tab>^WW <EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>(&R)<Tab>^WW
menutrans Rotate\ &Up<Tab>^WR <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= <09>ȴ<EFBFBD>(&E)<Tab>^W=
menutrans &Max\ Height<Tab>^W_ <09><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>(&M)<Tab>^W
menutrans M&in\ Height<Tab>^W1_ <09><>С<EFBFBD>߶<EFBFBD>(&I)<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| <09><>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>^W1\|
"
" The popup menu
menutrans &Undo <09><><EFBFBD><EFBFBD>(&U)
menutrans Cu&t <09><><EFBFBD><EFBFBD>(&T)
menutrans &Copy <09><><EFBFBD><EFBFBD>(&C)
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
menutrans Select\ Blockwise ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
menutrans Select\ &Word ѡ<EFBFBD>񵥴<EFBFBD>(&W)
menutrans Select\ &Sentence ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Select\ Pa&ragraph ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
menutrans Select\ &Line ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans Select\ &Block ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans Select\ &All ȫѡ(&A)
"
" The GUI toolbar
menutrans &Window <09><><EFBFBD><EFBFBD>(&W)
" Window menuitems {{{1
menutrans &New<Tab>^Wn <09>½<EFBFBD>(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws <09><><EFBFBD><EFBFBD>(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ <09><><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ #(&L)<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv <09><>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>^Wv
menutrans Split\ File\ E&xplorer <09><><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)
menutrans &Close<Tab>^Wc <09>ر<EFBFBD>(&C)<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo <09><><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>(&O)<Tab>^Wo
menutrans Move\ &To <09>ƶ<EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Top<Tab>^WK <09><><EFBFBD><EFBFBD>(&T)<Tab>^WK
menutrans &Bottom<Tab>^WJ <09>׶<EFBFBD>(&B)<Tab>^WJ
menutrans &Left\ Side<Tab>^WH <09><><EFBFBD><EFBFBD>(&L)<Tab>^WH
menutrans &Right\ Side<Tab>^WL <09>ұ<EFBFBD>(&R)<Tab>^WL
menutrans Rotate\ &Up<Tab>^WR <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= ƽ<EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD>(&E)<Tab>^W=
menutrans &Max\ Height<Tab>^W_ <09><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>(&M)<Tab>^W
menutrans M&in\ Height<Tab>^W1_ <09><>С<EFBFBD>߶<EFBFBD>(&I)<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| <09><>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>^W1\|
" }}}
" The popup menu {{{1
menutrans &Undo <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&U)
menutrans Cu&t <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Copy <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
menutrans Select\ Blockwise <09><>Ϊѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>
menutrans Select\ &Word ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
menutrans Select\ &Sentence ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Select\ Pa&ragraph ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
menutrans Select\ &Line ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans Select\ &Block ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>(&B)
menutrans Select\ &All ȫѡ(&A)
" func! <SID>SpellPopup()
if !exists("g:menutrans_spell_change_ARG_to")
let g:menutrans_spell_change_ARG_to = '<27><>\ "%s"\ <20><><EFBFBD><EFBFBD>Ϊ'
endif
if !exists("g:menutrans_spell_add_ARG_to_word_list")
let g:menutrans_spell_add_ARG_to_word_list = '<27><>\ "%s"\ <20><><EFBFBD>ӵ<EFBFBD><D3B5>ʵ<EFBFBD>'
endif
if !exists("g:menutrans_spell_ignore_ARG")
let g:menutrans_spell_ignore_ARG = '<27><><EFBFBD><EFBFBD>\ "%s"'
endif
" }}}
" The GUI toolbar {{{1
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open <09><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
tmenu ToolBar.Save <09><><EFBFBD>浱ǰ<EFBFBD>ļ<EFBFBD>
tmenu ToolBar.SaveAll <09><><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
tmenu ToolBar.Print <09><>ӡ
tmenu ToolBar.Undo <09><><EFBFBD><EFBFBD>
tmenu ToolBar.Redo <09><><EFBFBD><EFBFBD>
tmenu ToolBar.Cut <EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Paste <EFBFBD>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
tmenu ToolBar.Find <09><><EFBFBD><EFBFBD>...
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
tmenu ToolBar.Replace <09><><EFBFBD>Һ<EFBFBD><EFBFBD>...
tmenu ToolBar.LoadSesn <09><><EFBFBD>ػỰ
tmenu ToolBar.SaveSesn <09><><EFBFBD>浱ǰ<EFBFBD>
tmenu ToolBar.RunScript <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim <20>ű<EFBFBD>
tmenu ToolBar.Make ִ<EFBFBD><EFBFBD> Make (:make)
tmenu ToolBar.RunCtags <09>ڵ<EFBFBD>ǰĿ¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD> tags (!ctags -R .)
tmenu ToolBar.TagJump <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>õ<EFBFBD> tag
tmenu ToolBar.Help Vim <20><><EFBFBD><EFBFBD>
tmenu ToolBar.FindHelp <09><><EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD>
let did_toolbar_tmenu = 1
tmenu ToolBar.Open <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
tmenu ToolBar.Save <09><><EFBFBD>浱ǰ<EFBFBD>ļ<EFBFBD>
tmenu ToolBar.SaveAll ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Print <09><>ӡ
tmenu ToolBar.Undo <09><><EFBFBD><EFBFBD>
tmenu ToolBar.Redo <EFBFBD>ָ<EFBFBD>
tmenu ToolBar.Cut <09><><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
if !has("gui_athena")
tmenu ToolBar.Replace <09><><EFBFBD>Һ<EFBFBD><EFBFBD>...
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
endif
tmenu ToolBar.LoadSesn <EFBFBD><EFBFBD><EFBFBD>ػỰ
tmenu ToolBar.SaveSesn <09><><EFBFBD>浱ǰ<EFBFBD>
tmenu ToolBar.RunScript <09><><EFBFBD><EFBFBD> Vim <20>ű<EFBFBD>
tmenu ToolBar.Make <09><><EFBFBD>ɵ<EFBFBD>ǰ<EFBFBD><EFBFBD>Ŀ (:make)
tmenu ToolBar.RunCtags <09>ڵ<EFBFBD>ǰĿ¼<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>(Tags) (!ctags -R .)
tmenu ToolBar.TagJump <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><EFBFBD><EFBFBD>(Tag)
tmenu ToolBar.Help Vim <20><><EFBFBD><EFBFBD>
tmenu ToolBar.FindHelp <09><> Vim <20><><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD>
endfun
endif
" }}}
" Syntax menu
menutrans &Syntax <09>(&S)
menutrans &Show\ filetypes\ in\ menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Off <09>ر<EFBFBD>(&O)
menutrans &Manual <09>ֹ<EFBFBD>(&M)
menutrans A&utomatic <09>Զ<EFBFBD>(&U)
menutrans on/off\ for\ &This\ file <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>/<EFBFBD><EFBFBD>(&T)
menutrans Co&lor\ test ɫ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans &Highlight\ test <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans &Convert\ to\ HTML ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ HTML(&C)
menutrans Set\ '&syntax'\ only <09><><EFBFBD>\ 'syntax'(&S)
menutrans Set\ '&filetype'\ too Ҳ<EFBFBD>\ 'filetype'(&F)
menutrans &Syntax <09>(&S)
" Syntax menuitems {{{1
menutrans &Show\ File\ Types\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Off <09>ر<EFBFBD>(&O)
menutrans &Manual <EFBFBD>ֶ<EFBFBD>(&M)
menutrans A&utomatic <09>Զ<EFBFBD>(&U)
menutrans On/Off\ for\ &This\ File ֻ<><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>/<EFBFBD><EFBFBD>(&T)
menutrans Co&lor\ Test ɫ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans &Highlight\ Test <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans &Convert\ to\ HTML ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ HTML(&C)
" From synmenu.vim
menutrans Set\ '&syntax'\ Only ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ 'syntax'(&S)
menutrans Set\ '&filetype'\ Too Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ 'filetype'(&F)
" }}}
" Netrw menu {{{1
" Plugin loading may be after menu translation
" So giveup testing if Netrw Plugin is loaded
" if exists("g:loaded_netrwPlugin")
menutrans Help<tab><F1> <09><><EFBFBD><EFBFBD><tab><F1>
menutrans Bookmarks <09><>ǩ
menutrans History <09><>ʷ<EFBFBD><EFBFBD>¼
menutrans Go\ Up\ Directory<tab>- <09><><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><tab>-
menutrans Apply\ Special\ Viewer<tab>x <09><>Ĭ<EFBFBD>ϳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>x
menutrans Bookmarks\ and\ History <09><>ǩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD>¼
" Netrw.Bookmarks and History menuitems {{{2
menutrans Bookmark\ Current\ Directory<tab>mb <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǩ<tab>mb
menutrans Bookmark\ Delete <09>Ƴ<EFBFBD><EFBFBD><EFBFBD>ǩ
menutrans Goto\ Prev\ Dir\ (History)<tab>u <09><><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD>¼)<tab>u
menutrans Goto\ Next\ Dir\ (History)<tab>U ǰ<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD>¼)<tab>U
menutrans List<tab>qb <09><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><tab>qb
" }}}
menutrans Browsing\ Control <09><><EFBFBD><EFBFBD>
" Netrw.Browsing Control menuitems {{{2
menutrans Horizontal\ Split<tab>o <09>ڲ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><tab>o
menutrans Vertical\ Split<tab>v <09>ڴ<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><tab>v
menutrans New\ Tab<tab>t <09>ڱ<EFBFBD>ǩҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>t
menutrans Preview<tab>p Ԥ<EFBFBD><EFBFBD><tab>p
menutrans Edit\ File\ Hiding\ List<tab><ctrl-h> <09><EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Hiding\ List)<tab><ctrl-h>
menutrans Edit\ Sorting\ Sequence<tab>S <09><EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Sorting\ Sequence)<tab>S
menutrans Quick\ Hide/Unhide\ Dot\ Files<tab>gh <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>\.<2E><>ͷ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><tab>gh
menutrans Refresh\ Listing<tab><ctrl-l> ˢ<EFBFBD><EFBFBD><tab><ctrl-l>
menutrans Settings/Options<tab>:NetrwSettings <09><><EFBFBD><EFBFBD>/ѡ<EFBFBD><EFBFBD><tab>:NetrwSettings
" }}}
menutrans Delete\ File/Directory<tab>D ɾ<><C9BE><EFBFBD>ļ<EFBFBD>/Ŀ¼<tab>D
menutrans Edit\ File/Dir <09><EFBFBD>ļ<EFBFBD>/Ŀ¼
" Netrw.Edit File menuitems {{{2
menutrans Create\ New\ File<tab>% <09>½<EFBFBD><C2BD>ļ<EFBFBD><tab>%
menutrans In\ Current\ Window<tab><cr> <09>ڵ<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab><cr>
menutrans Preview\ File/Directory<tab>p Ԥ<><D4A4><EFBFBD>ļ<EFBFBD>/Ŀ¼<tab>p
menutrans In\ Previous\ Window<tab>P <09><><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>P
menutrans In\ New\ Window<tab>o <09><><EFBFBD>´<EFBFBD><C2B4><EFBFBD><tab>o
menutrans In\ New\ Tab<tab>t <09><><EFBFBD>±<EFBFBD>ǩҳ<tab>t
menutrans In\ New\ Vertical\ Window<tab>v <09><><EFBFBD>´<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>v
" }}}
menutrans Explore <09><><EFBFBD><EFBFBD>
" Netrw.Explore menuitems {{{2
menutrans Directory\ Name ָ<EFBFBD><EFBFBD>Ŀ¼<EFBFBD><EFBFBD>
menutrans Filenames\ Matching\ Pattern\ (curdir\ only)<tab>:Explore\ */ ƥ<><C6A5>ָ<EFBFBD><D6B8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ģʽ(<28><>ǰĿ¼)<tab>:Explore\ */
menutrans Filenames\ Matching\ Pattern\ (+subdirs)<tab>:Explore\ **/ ƥ<><C6A5>ָ<EFBFBD><D6B8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ģʽ(<28><><EFBFBD><EFBFBD>Ŀ¼)<tab>:Explore\ **/
menutrans Files\ Containing\ String\ Pattern\ (curdir\ only)<tab>:Explore\ *// <09><><EFBFBD>ݰ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>ģʽ(<EFBFBD><EFBFBD>ǰĿ¼)<tab>:Explore\ *//
menutrans Files\ Containing\ String\ Pattern\ (+subdirs)<tab>:Explore\ **// <09><><EFBFBD>ݰ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>ģʽ(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ¼)<tab>:Explore\ **//
menutrans Next\ Match<tab>:Nexplore <09><>һ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>:Nexplore
menutrans Prev\ Match<tab>:Pexplore <09><>һ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>:Pexplore
" }}}
menutrans Make\ Subdirectory<tab>d <09>½<EFBFBD><C2BD><EFBFBD>Ŀ¼<tab>d
menutrans Marked\ Files ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Marked)<EFBFBD>ļ<EFBFBD>
" Netrw.Marked Files menuitems {{{2
menutrans Mark\ File<tab>mf ѡ<EFBFBD><EFBFBD>(Mark)/ȡ<EFBFBD><EFBFBD><tab>mf
menutrans Mark\ Files\ by\ Regexp<tab>mr <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ(Regexp)ѡ<EFBFBD><EFBFBD><tab>mr
menutrans Hide-Show-List\ Control<tab>a <09><><EFBFBD><EFBFBD>/<2F><>ʾ<tab>a
menutrans Copy\ To\ Target<tab>mc <09><><EFBFBD>Ƶ<EFBFBD>Ŀ<EFBFBD><EFBFBD><tab>mc
menutrans Delete<tab>D ɾ<EFBFBD><EFBFBD><tab>D
menutrans Diff<tab>md <09><><EFBFBD><EFBFBD>(Diff)<tab>md
menutrans Edit<tab>me <09><tab>me
menutrans Exe\ Cmd<tab>mx <09><>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>mx
menutrans Move\ To\ Target<tab>mm <09>ƶ<EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><tab>mm
menutrans Obtain<tab>O <09><>ȡ<tab>O
menutrans Print<tab>mp <09><>ӡ<tab>mp
menutrans Replace<tab>R <09><tab>R
menutrans Set\ Target<tab>mt <09><><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><tab>mt
menutrans Tag<tab>mT <09><><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)<tab>mT
menutrans Zip/Unzip/Compress/Uncompress<tab>mz ѹ<><D1B9>/<EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><tab>mz
" }}}
menutrans Obtain\ File<tab>O <09><>ȡ<EFBFBD>ļ<EFBFBD><tab>O
menutrans Style <09><>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
" Netrw.Style menuitems {{{2
menutrans Listing <09>б<EFBFBD><EFBFBD><EFBFBD>ʽ
" Netrw.Style.Listing menuitems {{{3
menutrans thin<tab>i <09><><EFBFBD><EFBFBD><thin)<tab>i
menutrans long<tab>i <09><>ϸ(long)<tab>i
menutrans wide<tab>i <09><><EFBFBD><EFBFBD>(wide)<tab>i
menutrans tree<tab>i <09><>״(tree)<tab>i
" }}}
menutrans Normal-Hide-Show <09><>ʾ/<2F><><EFBFBD><EFBFBD>
" Netrw.Style.Normal-Hide_show menuitems {{{3
menutrans Show\ All<tab>a <09><>ʾȫ<EFBFBD><EFBFBD>
menutrans Normal<tab>a <09><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
menutrans Hidden\ Only<tab>a ֻ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
" }}}
menutrans Reverse\ Sorting\ Order<tab>r <09><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><tab>r
menutrans Sorting\ Method <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
" Netrw.Style.Sorting Method menuitems {{{3
menutrans Name<tab>s <09>ļ<EFBFBD><EFBFBD><EFBFBD><tab>s
menutrans Time<tab>s <09>޸<EFBFBD>ʱ<EFBFBD><EFBFBD><tab>s
menutrans Size<tab>s <09><>С<tab>s
menutrans Exten<tab>s <09><>չ<EFBFBD><EFBFBD><tab>s
" }}}
" }}}
menutrans Rename\ File/Directory<tab>R <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>/Ŀ¼<tab>R
menutrans Set\ Current\ Directory<tab>c <09><><EFBFBD><EFBFBD>\ Vim\ <20><><EFBFBD><EFBFBD>Ŀ¼<tab>c
menutrans Targets Ŀ<EFBFBD><EFBFBD>
" endif
" }}}
let &cpo = s:keepcpo
unlet s:keepcpo
" vim: set nu ts=4 sw=4 noet fdm=marker fdc=4 :

View File

@ -0,0 +1,3 @@
" Menu Translations: Turkish
source <sfile>:p:h/menu_tr_tr.iso_8859-9.vim

View File

@ -0,0 +1,3 @@
" Menu Translations: Turkish
source <sfile>:p:h/menu_tr_tr.iso_8859-9.vim

View File

@ -0,0 +1,3 @@
" Menu Translations: Turkish
source <sfile>:p:h/menu_tr_tr.utf-8.vim

View File

@ -0,0 +1,3 @@
" Menu Translations: Turkish
source <sfile>:p:h/menu_tr_tr.iso_8859-9.vim

View File

@ -0,0 +1,331 @@
" Menu Translations: Turkish
" Maintainer: Emir SARI <bitigchi@me.com>
if exists("did_menu_trans")
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
scriptencoding iso-8859-9
" Top
menutrans &File &Dosya
menutrans &Edit ¼&zen
menutrans &Tools &Araçlar
menutrans &Syntax &zdizim
menutrans &Buffers A&rabellekler
menutrans &Window &Pencere
menutrans &Help &Yardım
" Help menu
menutrans &Overview<Tab><F1> &Genel\ Bakış<Tab><F1>
menutrans &User\ Manual &Kullanım\ ±lavuzu
menutrans &How-To\ Links &Nasıl\ Yapı±r?
menutrans &Find\.\.\. &Bul\.\.\.
"--------------------
menutrans &Credits &Teşekkürler
menutrans Co&pying &Dağı±m
menutrans &Sponsor/Register &Sponsorluk/Kayıt
menutrans O&rphans &Yetimler
"--------------------
menutrans &Version ¼¼m\ &Bilgisi
menutrans &About &Hakkında
" File menu
menutrans &Open\.\.\.<Tab>:e &§\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp &Yeni\ ¼mde\ §\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew S&ekme\ §\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew Yeni\ &Sekme<Tab>:enew
menutrans &Close<Tab>:close Ka&pat<Tab>:close
"--------------------
menutrans &Save<Tab>:w Ka&ydet<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav &Farklı Kaydet\.\.\.<Tab>:sav
"--------------------
menutrans Split\ &Diff\ With\.\.\. Ka&ŸÄ±laş±r\.\.\.
menutrans Split\ Patched\ &By\.\.\. Ya&malar\ Dahil\ Karşılaş±r\.\.\.
"--------------------
menutrans &Print Ya&zdır
menutrans Sa&ve-Exit<Tab>:wqa Kaydet\ &ve Çık<Tab>:wqa
menutrans E&xit<Tab>:qa Çı&k<Tab>:qa
" Edit menu
menutrans &Undo<Tab>u &Geri\ Al<Tab>u
menutrans &Redo<Tab>^R &Yinele<Tab>^R
menutrans Rep&eat<Tab>\. Son\ Komutu\ Y&inele<Tab>\.
"--------------------
menutrans Cu&t<Tab>"+x &Kes<Tab>"+x
menutrans &Copy<Tab>"+y K&opyala<Tab>"+y
menutrans &Paste<Tab>"+gP Ya&pıştır<Tab>"+gP
menutrans Put\ &Before<Tab>[p Ö&¼ne Koy<Tab>[p
menutrans Put\ &After<Tab>]p A&rkasına Koy<Tab>]p
menutrans &Delete<Tab>x Si&l<Tab>x
menutrans &Select\ All<Tab>ggVG ¼&¼¼\ Seç<Tab>ggVG
"--------------------
" Athena GUI only
menutrans &Find<Tab>/ &Bul<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s Bul\ &ve\ DeğŸtir<Tab>:%s
" End Athena GUI only
menutrans &Find\.\.\.<Tab>/ &Bul\.\.\.<Tab>/
menutrans Find\ and\ Rep&lace\.\.\. Bul\ ve\ &DeğŸtir\.\.\.
menutrans Find\ and\ Rep&lace\.\.\.<Tab>:%s Bul\ ve\ &DeğŸtir\.\.\.<Tab>:%s
menutrans Find\ and\ Rep&lace\.\.\.<Tab>:s Bul\ ve\ &DeğŸtir\.\.\.<Tab>:s
"--------------------
menutrans Settings\ &Window &Ayarlar\ Penceresi
menutrans Startup\ &Settings Başlan&±Ã§\ Ayarları
menutrans &Global\ Settings Ge&nel\ Ayarlar
menutrans F&ile\ Settings &Dosya\ Ayarları
menutrans C&olor\ Scheme &Renk\ ¼zeni
menutrans &Keymap ¼ÄŸme\ &Ÿlem
menutrans Select\ Fo&nt\.\.\. Ya&±tipi Seç\.\.\.
">>>----------------- Edit/Global settings
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Dizgi\ &Vurgulaması±\ §/Kapat<Tab>:set\ hls!
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! œœK/küçük\ Harf\ &Duyarsız\ Aç/Kapat<Tab>:set\ ic!
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! Ÿ&leşen\ İkilileri\ §/Kapat<Tab>:set\ sm!
menutrans &Context\ Lines İ&mleçle\ Oynayan\ Satırlar
menutrans &Virtual\ Edit &Sanal\ ¼zenleme
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Ekleme\ &Kipini\ §/Kapat<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! &Vi\ Uyumlu\ Kipi\ §/Kapat<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. &Arama\ Yolu\.\.\.
menutrans Ta&g\ Files\.\.\. &Etiket\ Dosyaları\.\.\.
"
menutrans Toggle\ &Toolbar &Araç\ Çubuğunu\ §/Kapat
menutrans Toggle\ &Bottom\ Scrollbar A&lt\ Kaydırma\ Çubuğunu\ §/Kapat
menutrans Toggle\ &Left\ Scrollbar &Sol\ Kaydırma\ Çubuğunu\ §/Kapat
menutrans Toggle\ &Right\ Scrollbar S&Ÿ\ Kaydırma\ Çubuğunu\ §/Kapat
">>>->>>------------- Edit/Global settings/Virtual edit
menutrans Never Kapalı
menutrans Block\ Selection Blok\ Seçimi
menutrans Insert\ Mode Ekleme\ Kipi
menutrans Block\ and\ Insert Blok\ Seçiminde\ ve\ Ekleme\ Kipinde
menutrans Always Her\ Zaman\ §Ä±k
">>>----------------- Edit/File settings
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &Satır\ Numaralandırmayı\ §/Kapat<Tab>:set\ nu!
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu! &receli\ Satır\ Numaralandırmayı\ §/Kapat<Tab>:set\ nru!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! ¶&¼nmeyen\ Karakterleri\ §/Kapat<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap! Sa&±r\ Kaydırmayı\ §/Kapat<Tab>:set\ wrap!
menutrans Toggle\ W&rapping\ at\ Word<Tab>:set\ lbr! ¶&zcük\ Kaydırmayı\ §/Kapat<Tab>:set\ lbr!
menutrans Toggle\ Tab\ &Expanding-tab<Tab>:set\ et! S&ekmeleri\ Boşluklara\ ¼ÅŸ¼rmeyi\ §/Kapat<Tab>:set\ et!
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai! &Otomatik\ Girintilemeyi\ §/Kapat<Tab>:set\ ai!
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin! &C\ Tarzı\ Girintilemeyi\ §/Kapat<Tab>:set\ cin!
">>>---
menutrans &Shiftwidth &Girinti\ ¼zeyi
menutrans Soft\ &Tabstop &Sekme\ Genişliği
menutrans Te&xt\ Width\.\.\. &Metin\ Genişliği\.\.\.
menutrans &File\ Format\.\.\. &Dosya\ Biçimi\.\.\.
"
"
"
" Tools menu
menutrans &Jump\ to\ This\ Tag<Tab>g^] Ş&u\ Etikete\ Atla<Tab>g^]
menutrans Jump\ &Back<Tab>^T &Geri\ n<Tab>^T
menutrans Build\ &Tags\ File &Etiket\ Dosyası\ Oluştur
"-------------------
menutrans &Folding &±±rmalar
menutrans &Spelling &Yazım\ Denetimi
menutrans &Diff &Ayrımlar\ (diff)
"-------------------
menutrans &Make<Tab>:make &Derle<Tab>:make
menutrans &List\ Errors<Tab>:cl &Hataları\ Listele<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! İ&letileri\ Listele<Tab>:cl!
menutrans &Next\ Error<Tab>:cn Bir\ &Sonraki\ Hata<Tab>:cn
menutrans &Previous\ Error<Tab>:cp Bir\ Ö&nceki\ Hata<Tab>:cp
menutrans &Older\ List<Tab>:cold Daha\ &Eski\ Hatalar<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew Daha\ &Yeni\ Hatalar<Tab>:cnew
menutrans Error\ &Window Hatalar\ &Penceresi
menutrans Se&t\ Compiler De&rleyici\ Seç
menutrans Show\ Compiler\ Se&ttings\ in\ Menu Derleyici\ Ayarları±\ Menüde\ &ster
"-------------------
menutrans &Convert\ to\ HEX<Tab>:%!xxd HEX'e\ ¶&¼ÅŸ¼r<Tab>:%!xxd
menutrans Conve&rt\ Back<Tab>:%!xxd\ -r HEX'&ten\ ¼ÅŸ¼r<Tab>:%!xxd\ -r
">>>---------------- Tools/Spelling
menutrans &Spell\ Check\ On Yazım\ Denetimini\ &§
menutrans Spell\ Check\ &Off Yazım\ Denetimini\ &Kapat
menutrans To\ &Next\ Error<Tab>]s Bir\ &Sonraki\ Hata<Tab>]s
menutrans To\ &Previous\ Error<Tab>[s Bir\ Ö&nceki\ Hata<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= ¼&zeltme\ Öner<Tab>z=
menutrans &Repeat\ Correction<Tab>:spellrepall ¼zeltmeyi\ &Yinele<Tab>spellrepall
"-------------------
menutrans Set\ Language\ to\ "en" Dili\ "en"\ yap
menutrans Set\ Language\ to\ "en_au" Dili\ "en_au"\ yap
menutrans Set\ Language\ to\ "en_ca" Dili\ "en_ca"\ yap
menutrans Set\ Language\ to\ "en_gb" Dili\ "en_gb"\ yap
menutrans Set\ Language\ to\ "en_nz" Dili\ "en_nz"\ yap
menutrans Set\ Language\ to\ "en_us" Dili\ "en_us"\ yap
menutrans &Find\ More\ Languages &Başka\ Diller\ Bul
let g:menutrans_set_lang_to = 'Dil Yükle'
"
"
" The Spelling popup menu
"
"
let g:menutrans_spell_change_ARG_to = 'Düzeltilecek:\ "%s"\ ->'
let g:menutrans_spell_add_ARG_to_word_list = '"%s"\ sözcüğünü\ sözlüğe\ ekle'
let g:menutrans_spell_ignore_ARG = '"%s"\ sözcüğünü\ yoksay'
">>>---------------- Folds
menutrans &Enable/Disable\ Folds<Tab>zi &Kıvırmaları\ Aç/Kapat<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv İ&mlecin\ Olduğu\ Satı±\ ¼ntüle<Tab>zv
menutrans Vie&w\ Cursor\ Line\ Only<Tab>zMzx Ya&lnızca\ İmlecin\ Olduğu\ Satı±\ ¼ntüle<Tab>zMzx
menutrans C&lose\ More\ Folds<Tab>zm &Daha\ Fazla\ ±±rma\ Kapat<Tab>zm
menutrans &Close\ All\ Folds<Tab>zM ¼¼n\ ±&±rmaları\ Kapat<Tab>zM
menutrans &Open\ All\ Folds<Tab>zR ¼&¼n\ ±±rmaları\ §<Tab>zR
menutrans O&pen\ More\ Folds<Tab>zr D&aha\ Fazla\ ±±rma\ §<Tab>zr
menutrans Fold\ Met&hod ±±&rma\ ntemi
menutrans Create\ &Fold<Tab>zf ±±rma\ &Oluştur<Tab>zf
menutrans &Delete\ Fold<Tab>zd ±±rma\ &Sil<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD ¼&m\ ±±rmaları\ Sil<Tab>zD
menutrans Fold\ col&umn\ Width ±±rma\ ¼tunu\ &Genişliği
">>>->>>----------- Tools/Folds/Fold Method
menutrans M&anual &El\ İle
menutrans I&ndent &Girinti
menutrans E&xpression İ&fade
menutrans S&yntax &zdizim
menutrans Ma&rker İ&mleyici
">>>--------------- Tools/Diff
menutrans &Update &¼ncelle
menutrans &Get\ Block Bloğu\ &Al
menutrans &Put\ Block Bloğu\ &Koy
">>>--------------- Tools/Diff/Error window
menutrans &Update<Tab>:cwin &¼ncelle<Tab>:cwin
menutrans &Close<Tab>:cclose &Kapat<Tab>:cclose
menutrans &Open<Tab>:copen &§<Tab>:copen
"
"
" Syntax menu
"
menutrans &Show\ File\ Types\ in\ Menu Dosya\ ¼rlerini\ Menüde\ &ster
menutrans Set\ '&syntax'\ only Yalnızca\ 'syntax'\ &Ayarla
menutrans Set\ '&filetype'\ too 'filetype'\ İçin\ &de\ Ayarla
menutrans &Off &Kapat
menutrans &Manual &El\ İle
menutrans A&utomatic &Otomatik
menutrans On/Off\ for\ &This\ File &Bu\ Dosya\ İçin\ Aç/Kapat
menutrans Co&lor\ Test &Renk\ Testi
menutrans &Highlight\ Test &Vurgulama\ Testi
menutrans &Convert\ to\ HTML &HTML'ye\ ¼ÅŸ¼r
"
"
" Buffers menu
"
menutrans &Refresh\ menu &Menü¼\ ¼ncelle
menutrans Delete &Sil
menutrans &Alternate Ö&teki
menutrans &Next So&nraki
menutrans &Previous Ön&ceki
menutrans [No\ File] [Dosya\ Yok]
"
"
" Window menu
"
menutrans &New<Tab>^Wn Yeni\ &Pencere<Tab>^Wn
menutrans S&plit<Tab>^Ws Pencereyi\ &l<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ Pencereyi\ Başkasına\ ¶&l<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv Pencereyi\ &Dikey\ Olarak\ l<Tab>^Wv
menutrans Split\ File\ E&xplorer Yeni\ ¼&mde\ Dosya\ Gezginini\ §
"
menutrans &Close<Tab>^Wc Pen&cereyi\ Kapat<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo Diğer\ Pencerele&ri\ Kapat<Tab>^Wo
"
menutrans Move\ &To &Taşı
menutrans Rotate\ &Up<Tab>^WR &Yukarı\ Taşı<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr &ŸŸÄ±\ Taşı<Tab>^Wr
"
menutrans &Equal\ Size<Tab>^W= &Ÿit\ Boyut<Tab>^W=
menutrans &Max\ Height<Tab>^W_ E&n\ ¼¼k\ ¼kseklik<Tab>^W_
menutrans M&in\ Height<Tab>^W1_ En\ ¼Ã§Ã¼k\ ¼ksekl&ik<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| En\ ¼¼k\ Gen&Ÿlik<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| En\ ¼Ã§Ã¼k\ Geniş&lik<Tab>^W1\|
">>>----------------- Window/Move To
menutrans &Top<Tab>^WK &Yukarı<Tab>^WK
menutrans &Bottom<Tab>^WJ &ŸŸÄ±<Tab>^WJ
menutrans &Left\ Side<Tab>^WH So&la<Tab>^WH
menutrans &Right\ Side<Tab>^WL &Sağa<Tab>^WL
"
"
" The popup menu
"
"
menutrans &Undo &Geri\ Al
menutrans Cu&t &Kes
menutrans &Copy K&opyala
menutrans &Paste &Yapış±r
menutrans &Delete &Sil
menutrans Select\ Blockwise &Blok\ Biçiminde\ Seç
menutrans Select\ &Word ¶&zcük\ Seç
menutrans Select\ &Sentence &¼mce\ Seç
menutrans Select\ Pa&ragraph &Paragraf\ Seç
menutrans Select\ &Line S&atır\ Seç
menutrans Select\ &Block Bl&ok\ Seç
menutrans Select\ &All ¼¼&¼\ Seç
"
" The GUI toolbar
"
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Dosya §
tmenu ToolBar.Save Dosya Kaydet
tmenu ToolBar.SaveAll ¼m Dosyaları Kaydet
tmenu ToolBar.Print Yazdır
tmenu ToolBar.Undo Geri Al
tmenu ToolBar.Redo Yinele
tmenu ToolBar.Cut Kes
tmenu ToolBar.Copy Kopyala
tmenu ToolBar.Paste Yapış±r
tmenu ToolBar.Find Bul...
tmenu ToolBar.FindNext Sonrakini Bul
tmenu ToolBar.FindPrev Öncekini Bul
tmenu ToolBar.Replace Bul ve DeğŸtir...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Yeni Pencere
tmenu ToolBar.WinSplit Pencereyi l
tmenu ToolBar.WinMax En ¼¼k Pencere ¼ksekliği
tmenu ToolBar.WinMin En ¼Ã§Ã¼k Pencere ¼ksekliği
tmenu ToolBar.WinClose Pencereyi Kapat
endif
tmenu ToolBar.LoadSesn Oturum ¼kle
tmenu ToolBar.SaveSesn Oturum Kaydet
tmenu ToolBar.RunScript Betik Çalış±r
tmenu ToolBar.Make Derle
tmenu ToolBar.Shell Kabuk
tmenu ToolBar.RunCtags Etiket Dosyası Oluştur
tmenu ToolBar.TagJump Etikete Atla
tmenu ToolBar.Help Yardım
tmenu ToolBar.FindHelp Yardım Bul
endfun
endif
"
"
" Dialog texts
"
" Find in help dialog
"
let g:menutrans_help_dialog = "Yardım için komut veya sözcük girin:\n\nEkleme Kipi komutlarını aramak için i_ ekleyin (örneğin i_CTRL-X)\nNormal Kip komutlarını aramak için _c ekleyin (örneğin с_<Del>)\nSeçenekler hakkında yardım almak için ' ekleyin (örneğin 'shiftwidth')"
"
" Searh path dialog
"
let g:menutrans_path_dialog = "Dosya araması için yol belirtin.\nDizin adları virgüllerle ayrılır."
"
" Tag files dialog
"
let g:menutrans_tags_dialog = "Etiket dosyası adları belirtin (virgülle ayırarak).\n"
"
" Text width dialog
"
let g:menutrans_textwidth_dialog = "Biçimlendirme için metin genişliğini belirtin.\nBiçimlendirme iptali için 0 girin."
"
" File format dialog
"
let g:menutrans_fileformat_dialog = "Dosya biçimi seçin"
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nİ&ptal"
"
let menutrans_no_file = "[Dosya Yok]"
let &cpo = s:keepcpo
unlet s:keepcpo

View File

@ -0,0 +1,331 @@
" Menu Translations: Turkish
" Maintainer: Emir SARI <bitigchi@me.com>
if exists("did_menu_trans")
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
scriptencoding utf-8
" Top
menutrans &File &Dosya
menutrans &Edit &zen
menutrans &Tools &Araçlar
menutrans &Syntax &Sözdizim
menutrans &Buffers A&rabellekler
menutrans &Window &Pencere
menutrans &Help &Yardım
" Help menu
menutrans &Overview<Tab><F1> &Genel\ Bakış<Tab><F1>
menutrans &User\ Manual &Kullanım\ Kılavuzu
menutrans &How-To\ Links &Nasıl\ Yapılır?
menutrans &Find\.\.\. &Bul\.\.\.
"--------------------
menutrans &Credits &Teşekkürler
menutrans Co&pying &Dağıtım
menutrans &Sponsor/Register &Sponsorluk/Kayıt
menutrans O&rphans &Yetimler
"--------------------
menutrans &Version Sürüm\ &Bilgisi
menutrans &About &Hakkında
" File menu
menutrans &Open\.\.\.<Tab>:e &\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp &Yeni\ Bölümde\ \.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew S&ekme\ \.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew Yeni\ &Sekme<Tab>:enew
menutrans &Close<Tab>:close Ka&pat<Tab>:close
"--------------------
menutrans &Save<Tab>:w Kayde&t<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav &Farklı Kaydet\.\.\.<Tab>:sav
"--------------------
menutrans Split\ &Diff\ With\.\.\. Ka&ılaştır\.\.\.
menutrans Split\ Patched\ &By\.\.\. Ya&malar\ Dahil\ Karşılaştır\.\.\.
"--------------------
menutrans &Print Ya&zdır
menutrans Sa&ve-Exit<Tab>:wqa Kaydet\ &ve Çık<Tab>:wqa
menutrans E&xit<Tab>:qa Çı&k<Tab>:qa
" Edit menu
menutrans &Undo<Tab>u &Geri\ Al<Tab>u
menutrans &Redo<Tab>^R &Yinele<Tab>^R
menutrans Rep&eat<Tab>\. Son\ Komutu\ Y&inele<Tab>\.
"--------------------
menutrans Cu&t<Tab>"+x &Kes<Tab>"+x
menutrans &Copy<Tab>"+y K&opyala<Tab>"+y
menutrans &Paste<Tab>"+gP Ya&pıştır<Tab>"+gP
menutrans Put\ &Before<Tab>[p Ö&nüne Koy<Tab>[p
menutrans Put\ &After<Tab>]p A&rkasına Koy<Tab>]p
menutrans &Delete<Tab>x Si&l<Tab>x
menutrans &Select\ All<Tab>ggVG &münü\ Seç<Tab>ggVG
"--------------------
" Athena GUI only
menutrans &Find<Tab>/ &Bul<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s Bul\ &ve\ Değiştir<Tab>:%s
" End Athena GUI only
menutrans &Find\.\.\.<Tab>/ &Bul\.\.\.<Tab>/
menutrans Find\ and\ Rep&lace\.\.\. Bul\ ve\ &Değiştir\.\.\.
menutrans Find\ and\ Rep&lace\.\.\.<Tab>:%s Bul\ ve\ &Değiştir\.\.\.<Tab>:%s
menutrans Find\ and\ Rep&lace\.\.\.<Tab>:s Bul\ ve\ &Değiştir\.\.\.<Tab>:s
"--------------------
menutrans Settings\ &Window &Ayarlar\ Penceresi
menutrans Startup\ &Settings Başlan&gıç\ Ayarları
menutrans &Global\ Settings Ge&nel\ Ayarlar
menutrans F&ile\ Settings &Dosya\ Ayarları
menutrans C&olor\ Scheme &Renk\ Düzeni
menutrans &Keymap Düğme\ &Eşlem
menutrans Select\ Fo&nt\.\.\. Ya&zıtipi Seç\.\.\.
">>>----------------- Edit/Global settings
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Dizgi\ &Vurgulamasını\ /Kapat<Tab>:set\ hls!
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! BÜYÜK/küçük\ Harf\ &Duyarlı\ Aç/Kapat<Tab>:set\ ic!
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! &leşen\ İkilileri\ /Kapat<Tab>:set\ sm!
menutrans &Context\ Lines İ&mleçle\ Oynayan\ Satırlar
menutrans &Virtual\ Edit &Sanal\ Düzenleme
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Ekleme\ &Kipini\ /Kapat<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! &Vi\ Uyumlu\ Kipi\ /Kapat<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. &Arama\ Yolu\.\.\.
menutrans Ta&g\ Files\.\.\. &Etiket\ Dosyaları\.\.\.
"
menutrans Toggle\ &Toolbar &Araç\ Çubuğunu\ /Kapat
menutrans Toggle\ &Bottom\ Scrollbar A&lt\ Kaydırma\ Çubuğunu\ /Kapat
menutrans Toggle\ &Left\ Scrollbar &Sol\ Kaydırma\ Çubuğunu\ /Kapat
menutrans Toggle\ &Right\ Scrollbar S&\ Kaydırma\ Çubuğunu\ /Kapat
">>>->>>------------- Edit/Global settings/Virtual edit
menutrans Never Kapalı
menutrans Block\ Selection Blok\ Seçimi
menutrans Insert\ Mode Ekleme\ Kipi
menutrans Block\ and\ Insert Blok\ Seçiminde\ ve\ Ekleme\ Kipinde
menutrans Always Her\ Zaman\ ık
">>>----------------- Edit/File settings
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &Satır\ Numaralandırmayı\ /Kapat<Tab>:set\ nu!
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu! &Göreceli\ Satır\ Numaralandırmayı\ /Kapat<Tab>:set\ nru!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! &rünmeyen\ Karakterleri\ /Kapat<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap! Sa&tır\ Kaydırmayı\ /Kapat<Tab>:set\ wrap!
menutrans Toggle\ W&rapping\ at\ Word<Tab>:set\ lbr! &zcük\ Kaydırmayı\ /Kapat<Tab>:set\ lbr!
menutrans Toggle\ Tab\ &Expanding-tab<Tab>:set\ et! S&ekmeleri\ Boşluklara\ Dönüştürmeyi\ /Kapat<Tab>:set\ et!
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai! &Otomatik\ Girintilemeyi\ /Kapat<Tab>:set\ ai!
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin! &C\ Tarzı\ Girintilemeyi\ /Kapat<Tab>:set\ cin!
">>>---
menutrans &Shiftwidth &Girinti\ Düzeyi
menutrans Soft\ &Tabstop &Sekme\ Genişliği
menutrans Te&xt\ Width\.\.\. &Metin\ Genişliği\.\.\.
menutrans &File\ Format\.\.\. &Dosya\ Biçimi\.\.\.
"
"
"
" Tools menu
menutrans &Jump\ to\ This\ Tag<Tab>g^] Ş&u\ Etikete\ Atla<Tab>g^]
menutrans Jump\ &Back<Tab>^T &Geri\ Dön<Tab>^T
menutrans Build\ &Tags\ File &Etiket\ Dosyası\ Oluştur
"-------------------
menutrans &Folding &Kıvırmalar
menutrans &Spelling &Yazım\ Denetimi
menutrans &Diff &Ayrımlar\ (diff)
"-------------------
menutrans &Make<Tab>:make &Derle<Tab>:make
menutrans &List\ Errors<Tab>:cl &Hataları\ Listele<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! İ&letileri\ Listele<Tab>:cl!
menutrans &Next\ Error<Tab>:cn Bir\ &Sonraki\ Hata<Tab>:cn
menutrans &Previous\ Error<Tab>:cp Bir\ Ö&nceki\ Hata<Tab>:cp
menutrans &Older\ List<Tab>:cold Daha\ &Eski\ Hatalar<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew Daha\ &Yeni\ Hatalar<Tab>:cnew
menutrans Error\ &Window Hatalar\ &Penceresi
menutrans Se&t\ Compiler De&rleyici\ Seç
menutrans Show\ Compiler\ Se&ttings\ in\ Menu Derleyici\ Ayarlarını\ Menüde\ &Göster
"-------------------
menutrans &Convert\ to\ HEX<Tab>:%!xxd HEX'e\ &nüştür<Tab>:%!xxd
menutrans Conve&rt\ Back<Tab>:%!xxd\ -r HEX'&ten\ Dönüştür<Tab>:%!xxd\ -r
">>>---------------- Tools/Spelling
menutrans &Spell\ Check\ On Yazım\ Denetimini\ &
menutrans Spell\ Check\ &Off Yazım\ Denetimini\ &Kapat
menutrans To\ &Next\ Error<Tab>]s Bir\ &Sonraki\ Hata<Tab>]s
menutrans To\ &Previous\ Error<Tab>[s Bir\ Ö&nceki\ Hata<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= &zeltme\ Öner<Tab>z=
menutrans &Repeat\ Correction<Tab>:spellrepall Düzeltmeyi\ &Yinele<Tab>spellrepall
"-------------------
menutrans Set\ Language\ to\ "en" Dili\ "en"\ yap
menutrans Set\ Language\ to\ "en_au" Dili\ "en_au"\ yap
menutrans Set\ Language\ to\ "en_ca" Dili\ "en_ca"\ yap
menutrans Set\ Language\ to\ "en_gb" Dili\ "en_gb"\ yap
menutrans Set\ Language\ to\ "en_nz" Dili\ "en_nz"\ yap
menutrans Set\ Language\ to\ "en_us" Dili\ "en_us"\ yap
menutrans &Find\ More\ Languages &Başka\ Diller\ Bul
let g:menutrans_set_lang_to = 'Dil Yükle'
"
"
" The Spelling popup menu
"
"
let g:menutrans_spell_change_ARG_to = 'Düzeltilecek:\ "%s"\ ->'
let g:menutrans_spell_add_ARG_to_word_list = '"%s"\ sözcüğünü\ sözlüğe\ ekle'
let g:menutrans_spell_ignore_ARG = '"%s"\ sözcüğünü\ yoksay'
">>>---------------- Folds
menutrans &Enable/Disable\ Folds<Tab>zi &Kıvırmaları\ Aç/Kapat<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv İ&mlecin\ Olduğu\ Satırı\ Görüntüle<Tab>zv
menutrans Vie&w\ Cursor\ Line\ Only<Tab>zMzx Ya&lnızca\ İmlecin\ Olduğu\ Satırı\ Görüntüle<Tab>zMzx
menutrans C&lose\ More\ Folds<Tab>zm &Daha\ Fazla\ Kıvırma\ Kapat<Tab>zm
menutrans &Close\ All\ Folds<Tab>zM Bütün\ Kı&vırmaları\ Kapat<Tab>zM
menutrans &Open\ All\ Folds<Tab>zR &tün\ Kıvırmaları\ <Tab>zR
menutrans O&pen\ More\ Folds<Tab>zr D&aha\ Fazla\ Kıvırma\ <Tab>zr
menutrans Fold\ Met&hod Kıvı&rma\ Yöntemi
menutrans Create\ &Fold<Tab>zf Kıvırma\ &Oluştur<Tab>zf
menutrans &Delete\ Fold<Tab>zd Kıvırma\ &Sil<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD &m\ Kıvırmaları\ Sil<Tab>zD
menutrans Fold\ col&umn\ Width Kıvırma\ Sütunu\ &Genişliği
">>>->>>----------- Tools/Folds/Fold Method
menutrans M&anual &El\ İle
menutrans I&ndent &Girinti
menutrans E&xpression İ&fade
menutrans S&yntax &Sözdizim
menutrans Ma&rker İ&mleyici
">>>--------------- Tools/Diff
menutrans &Update &Güncelle
menutrans &Get\ Block Bloğu\ &Al
menutrans &Put\ Block Bloğu\ &Koy
">>>--------------- Tools/Diff/Error window
menutrans &Update<Tab>:cwin &Güncelle<Tab>:cwin
menutrans &Close<Tab>:cclose &Kapat<Tab>:cclose
menutrans &Open<Tab>:copen &<Tab>:copen
"
"
" Syntax menu
"
menutrans &Show\ File\ Types\ in\ Menu Dosya\ Türlerini\ Menüde\ &Göster
menutrans Set\ '&syntax'\ only Yalnızca\ 'syntax'\ &Ayarla
menutrans Set\ '&filetype'\ too 'filetype'\ İçin\ &de\ Ayarla
menutrans &Off &Kapat
menutrans &Manual &El\ İle
menutrans A&utomatic &Otomatik
menutrans On/Off\ for\ &This\ File &Bu\ Dosya\ İçin\ Aç/Kapat
menutrans Co&lor\ Test &Renk\ Testi
menutrans &Highlight\ Test &Vurgulama\ Testi
menutrans &Convert\ to\ HTML &HTML'ye\ Dönüştür
"
"
" Buffers menu
"
menutrans &Refresh\ menu &Menüyü\ Güncelle
menutrans Delete &Sil
menutrans &Alternate Ö&teki
menutrans &Next So&nraki
menutrans &Previous Ön&ceki
menutrans [No\ File] [Dosya\ Yok]
"
"
" Window menu
"
menutrans &New<Tab>^Wn Yeni\ &Pencere<Tab>^Wn
menutrans S&plit<Tab>^Ws Pencereyi\ &Böl<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ Pencereyi\ Başkasına\ &l<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv Pencereyi\ &Dikey\ Olarak\ Böl<Tab>^Wv
menutrans Split\ File\ E&xplorer Yeni\ Bölü&mde\ Dosya\ Gezginini\
"
menutrans &Close<Tab>^Wc Pen&cereyi\ Kapat<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo Diğer\ Pencerele&ri\ Kapat<Tab>^Wo
"
menutrans Move\ &To &Taşı
menutrans Rotate\ &Up<Tab>^WR &Yukarı\ Taşı<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr &Aşağı\ Taşı<Tab>^Wr
"
menutrans &Equal\ Size<Tab>^W= &Eşit\ Boyut<Tab>^W=
menutrans &Max\ Height<Tab>^W_ E&n\ Büyük\ Yükseklik<Tab>^W_
menutrans M&in\ Height<Tab>^W1_ En\ Küçük\ Yüksekl&ik<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| En\ Büyük\ Gen&işlik<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| En\ Küçük\ Genişli&k<Tab>^W1\|
">>>----------------- Window/Move To
menutrans &Top<Tab>^WK &Yukarı<Tab>^WK
menutrans &Bottom<Tab>^WJ &Aşağı<Tab>^WJ
menutrans &Left\ Side<Tab>^WH So&la<Tab>^WH
menutrans &Right\ Side<Tab>^WL &Sağa<Tab>^WL
"
"
" The popup menu
"
"
menutrans &Undo &Geri\ Al
menutrans Cu&t &Kes
menutrans &Copy K&opyala
menutrans &Paste &Yapıştır
menutrans &Delete &Sil
menutrans Select\ Blockwise &Blok\ Biçiminde\ Seç
menutrans Select\ &Word &zcük\ Seç
menutrans Select\ &Sentence &Tümce\ Seç
menutrans Select\ Pa&ragraph &Paragraf\ Seç
menutrans Select\ &Line S&atır\ Seç
menutrans Select\ &Block Bl&ok\ Seç
menutrans Select\ &All Tümü&\ Seç
"
" The GUI toolbar
"
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Dosya
tmenu ToolBar.Save Dosya Kaydet
tmenu ToolBar.SaveAll Tüm Dosyaları Kaydet
tmenu ToolBar.Print Yazdır
tmenu ToolBar.Undo Geri Al
tmenu ToolBar.Redo Yinele
tmenu ToolBar.Cut Kes
tmenu ToolBar.Copy Kopyala
tmenu ToolBar.Paste Yapıştır
tmenu ToolBar.Find Bul...
tmenu ToolBar.FindNext Sonrakini Bul
tmenu ToolBar.FindPrev Öncekini Bul
tmenu ToolBar.Replace Bul ve Değiştir...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Yeni Pencere
tmenu ToolBar.WinSplit Pencereyi Böl
tmenu ToolBar.WinMax En Büyük Pencere Yüksekliği
tmenu ToolBar.WinMin En Küçük Pencere Yüksekliği
tmenu ToolBar.WinClose Pencereyi Kapat
endif
tmenu ToolBar.LoadSesn Oturum Yükle
tmenu ToolBar.SaveSesn Oturum Kaydet
tmenu ToolBar.RunScript Betik Çalıştır
tmenu ToolBar.Make Derle
tmenu ToolBar.Shell Kabuk
tmenu ToolBar.RunCtags Etiket Dosyası Oluştur
tmenu ToolBar.TagJump Etikete Atla
tmenu ToolBar.Help Yardım
tmenu ToolBar.FindHelp Yardım Bul
endfun
endif
"
"
" Dialog texts
"
" Find in help dialog
"
let g:menutrans_help_dialog = "Yardım için komut veya sözcük girin:\n\nEkleme Kipi komutlarını aramak için i_ ekleyin (örneğin i_CTRL-X)\nNormal Kip komutlarını aramak için _c ekleyin (örneğin с_<Del>)\nSeçenekler hakkında yardım almak için ' ekleyin (örneğin 'shiftwidth')"
"
" Searh path dialog
"
let g:menutrans_path_dialog = "Dosya araması için yol belirtin.\nDizin adları virgüllerle ayrılır."
"
" Tag files dialog
"
let g:menutrans_tags_dialog = "Etiket dosyası adları belirtin (virgülle ayırarak).\n"
"
" Text width dialog
"
let g:menutrans_textwidth_dialog = "Biçimlendirme için metin genişliğini belirtin.\nBiçimlendirme iptali için 0 girin."
"
" File format dialog
"
let g:menutrans_fileformat_dialog = "Dosya biçimi seçin"
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nİ&ptal"
"
let menutrans_no_file = "[Dosya Yok]"
let &cpo = s:keepcpo
unlet s:keepcpo

View File

@ -1,273 +1,13 @@
" Menu Translations: Simplified Chinese
" Maintainer: Shun Bai <baishunde@gmail.com>
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
" Last Change: 2014 Oct 15
" vim: ts=8 sw=8 noet
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
" Last Change: 2019-09-09
" This causes trouble for a broken iconv (symptom: last character is always
" ??). Without this it works fine anyway, because gbk/cp936 is a superset of
" gb2312. (suggested by Edward L. Fox)
" scriptencoding gb2312
" Help menu
menutrans &Help <09><><EFBFBD><EFBFBD>(&H)
menutrans &Overview<Tab><F1> <09><><EFBFBD><EFBFBD>(&O)<Tab><F1>
menutrans &User\ Manual <09>û<EFBFBD><EFBFBD>ֲ<EFBFBD>(&U)
menutrans &How-to\ links How-to\ ָ<EFBFBD><EFBFBD>(&H)
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
menutrans &Credits <09><>л(&C)
menutrans Co&pying <09><>Ȩ(&P)
menutrans &Sponsor/Register <09><><EFBFBD><EFBFBD>/ע<EFBFBD><EFBFBD>(&S)
menutrans O&rphans <09><EFBFBD>(&R)
menutrans &Version <09>(&V)
menutrans &About <09><><EFBFBD><EFBFBD>(&A)
" File menu
menutrans &File <09>ļ<EFBFBD>(&F)
menutrans &Open\.\.\.<Tab>:e <09><><EFBFBD><EFBFBD>(&O)\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp <09>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew <09>򿪱<EFBFBD>ǩ\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew <09>½<EFBFBD>(&N)<Tab>:enew
menutrans &Close<Tab>:close <09>ر<EFBFBD>(&C)<Tab>:close
menutrans &Save<Tab>:w <09><><EFBFBD><EFBFBD>(&S)<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav <09><><EFBFBD><EFBFBD>Ϊ(&A)\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. <09>ָ<EFBFBD><EFBFBD>Ƚ<EFBFBD>(Diff)(&D)\.\.\.
menutrans Split\ Patched\ &By\.\.\. <09>ָ<EFBFBD><EFBFBD>򲹶<EFBFBD>(Patch)(&B)\.\.\.
menutrans &Print <09><>ӡ(&P)
menutrans Sa&ve-Exit<Tab>:wqa <09><><EFBFBD><EFBFBD>˳<EFBFBD>(&V)<Tab>:wqa
menutrans E&xit<Tab>:qa <09>˳<EFBFBD>(&X)<Tab>:qa
" Edit menu
menutrans &Edit <09>(&E)
menutrans &Undo<Tab>u <09><><EFBFBD><EFBFBD>(&U)<Tab>u
menutrans &Redo<Tab>^R <09><><EFBFBD><EFBFBD>(&R)<Tab>^R
menutrans Rep&eat<Tab>\. <09>ظ<EFBFBD><EFBFBD>ϴβ<EFBFBD><EFBFBD><EFBFBD>(&E)<Tab>\.
menutrans Cu&t<Tab>"+x <09><><EFBFBD><EFBFBD>(&T)<Tab>"+x
menutrans &Copy<Tab>"+y <09><><EFBFBD><EFBFBD>(&C)<Tab>"+y
menutrans &Paste<Tab>"+gP ճ<><D5B3>(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ(&B)<Tab>[p
menutrans Put\ &After<Tab>]p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>]p
menutrans &Delete<Tab>x ɾ<EFBFBD><EFBFBD>(&D)<Tab>x
menutrans &Select\ All<Tab>ggVG ȫѡ(&S)<Tab>ggVG
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. <09><><EFBFBD>Һ<EFBFBD><EFBFBD>(&L)\.\.\.
menutrans &Find<Tab>/ <09><><EFBFBD><EFBFBD>(&F)<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s <09><><EFBFBD>Һ<EFBFBD><EFBFBD>(&L)<Tab>:%s
menutrans Settings\ &Window <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
menutrans Startup\ &Settings <09><><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Global\ Settings ȫ<EFBFBD><EFBFBD><EFBFBD>(&G)
" Edit/Global Settings
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! <09><>/<2F><>ģʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! <09><>/<2F>غ<EFBFBD><EFBFBD>Դ<EFBFBD>Сд(&I)<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)<Tab>:set\ sm!
menutrans &Context\ lines <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
menutrans &Virtual\ Edit <09><><EFBFBD><EFBFBD><EFBFBD>(&V)
menutrans Never <09>Ӳ<EFBFBD>
menutrans Block\ Selection <09><>ѡ<EFBFBD><EFBFBD>
menutrans Insert\ mode <09><><EFBFBD><EFBFBD>ģʽ
menutrans Block\ and\ Insert <09><>ѡ<EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>ģʽ
menutrans Always <09><><EFBFBD><EFBFBD>
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! <09><>/<2F>ز<EFBFBD><EFBFBD><EFBFBD>ģʽ(&M)<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! <09><>/<2F><>\ Vi\ <20><><EFBFBD><EFBFBD><Tab>:set\ cp!
menutrans Search\ &Path\.\.\. <09><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>(&P)\.\.\.
menutrans Ta&g\ Files\.\.\. Tag\ <20>ļ<EFBFBD>(&T)\.\.\.
" GUI options
menutrans Toggle\ &Toolbar <09><>/<2F>ع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans Toggle\ &Bottom\ Scrollbar <09><>/<2F>صײ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans Toggle\ &Left\ Scrollbar <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD><CBB9><EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans Toggle\ &Right\ Scrollbar <09><>/<2F><><EFBFBD>Ҷ˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
" Edit/File Settings
menutrans F&ile\ Settings <09>ļ<EFBFBD><EFBFBD>(&I)
" Boolean options
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! <20><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
menutrans Toggle\ &expand-tab<Tab>:set\ et! <09><>/<2F><><EFBFBD><EFBFBD>չ\ tab(&E)<Tab>:set\ et!
menutrans Toggle\ &auto-indent<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
menutrans Toggle\ &C-indenting<Tab>:set\ cin! <09><>/<2F><>\ C\ <20><><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
" other options
menutrans &Shiftwidth <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Soft\ &Tabstop Soft\ Tab\ <20><><EFBFBD><EFBFBD>(&T)
menutrans Te&xt\ Width\.\.\. <09>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)\.\.\.
menutrans &File\ Format\.\.\. <09>ļ<EFBFBD><EFBFBD><EFBFBD>ʽ(&F)\.\.\.
menutrans C&olor\ Scheme <09><>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans Select\ Fo&nt\.\.\. ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)\.\.\.
menutrans &Keymap <09><><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
" Programming menu
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ tag(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)<Tab>^T
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD>\ Tags\ <20>ļ<EFBFBD>(&T)
" Tools.Spelling Menu
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Spell\ Check\ On <09><><EFBFBD><EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Spell\ Check\ &Off <09>ر<EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
menutrans To\ &Next\ error<Tab>]s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>]s
menutrans To\ &Previous\ error<Tab>[s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall <09>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:spellrepall
menutrans Set\ language\ to\ "en" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en"
menutrans Set\ language\ to\ "en_au" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_au"
menutrans Set\ language\ to\ "en_ca" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_ca"
menutrans Set\ language\ to\ "en_gb" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_gb"
menutrans Set\ language\ to\ "en_nz" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_nz"
menutrans Set\ language\ to\ "en_us" <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_us"
menutrans &Find\ More\ Languages <09><><EFBFBD>Ҹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&F)
" Tools.Fold Menu
" open close folds
menutrans &Folding <09>۵<EFBFBD>(&F)
menutrans &Enable/Disable\ folds<Tab>zi <09><><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&E)<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm <09>رո<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&L)<Tab>zm
menutrans &Close\ all\ folds<Tab>zM <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&C)<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr <09>򿪸<EFBFBD><F2BFAAB8><EFBFBD><EFBFBD>۵<EFBFBD>(&P)<Tab>zr
menutrans &Open\ all\ folds<Tab>zR <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&O)<Tab>zR
" fold method
menutrans Fold\ Met&hod <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans M&anual <09>ֹ<EFBFBD>(&A)
menutrans I&ndent <09><><EFBFBD><EFBFBD>(&N)
menutrans E&xpression <09><><EFBFBD><EFBFBD>ʽ(&X)
menutrans S&yntax <09>(&Y)
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
menutrans Ma&rker <09><><EFBFBD><EFBFBD>(&R)
" create and delete folds
menutrans Create\ &Fold<Tab>zf <09><><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd ɾ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&A)<Tab>zD
" moving around in folds
menutrans Fold\ column\ &width <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
" Tools.Diff Menu
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
menutrans &Update <09><><EFBFBD><EFBFBD>(&U)
menutrans &Get\ Block <09>õ<EFBFBD><EFBFBD><EFBFBD>(&G)
menutrans &Put\ Block <09><><EFBFBD>ÿ<EFBFBD>(&P)
menutrans &Make<Tab>:make Make(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl <09>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! <09>г<EFBFBD><EFBFBD><EFBFBD>Ϣ(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold <09><><EFBFBD>ɵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew <09><><EFBFBD>µĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&E)<Tab>:cnew
menutrans Error\ &Window <09><><EFBFBD>󴰿<EFBFBD>(&W)
menutrans &Update<Tab>:cwin <09><><EFBFBD><EFBFBD>(&U)<Tab>:cwin
menutrans &Open<Tab>:copen <09><><EFBFBD><EFBFBD>(&O)<Tab>:copen
menutrans &Close<Tab>:cclose <09>ر<EFBFBD>(&C)<Tab>:cclose
menutrans &Convert\ to\ HEX<Tab>:%!xxd ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd\ -r
menutrans Se&T\ Compiler <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
" Names for buffer menu.
menutrans &Buffers <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans &Refresh\ menu <09><><EFBFBD>²˵<C2B2>(&R)
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
menutrans &Alternate <09><><EFBFBD><EFBFBD>(&A)
menutrans &Next <09><>һ<EFBFBD><EFBFBD>(&N)
menutrans &Previous <09><>һ<EFBFBD><EFBFBD>(&P)
" Window menu
menutrans &Window <09><><EFBFBD><EFBFBD>(&W)
menutrans &New<Tab>^Wn <09>½<EFBFBD>(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws <09>ָ<EFBFBD>(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ <09>ָ\ #(&L)<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv <09><>ֱ<EFBFBD>ָ<EFBFBD>(&V)<Tab>^Wv
menutrans Split\ File\ E&xplorer <09>ָ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)
menutrans &Close<Tab>^Wc <09>ر<EFBFBD>(&C)<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)<Tab>^Wo
menutrans Move\ &To <09>ƶ<EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Top<Tab>^WK <09><><EFBFBD><EFBFBD>(&T)<Tab>^WK
menutrans &Bottom<Tab>^WJ <09>׶<EFBFBD>(&B)<Tab>^WJ
menutrans &Left\ side<Tab>^WH <09><><EFBFBD><EFBFBD>(&L)<Tab>^WH
menutrans &Right\ side<Tab>^WL <09>ұ<EFBFBD>(&R)<Tab>^WL
" menutrans Ne&xt<Tab>^Ww <09><>һ<EFBFBD><D2BB>(&X)<Tab>^Ww
" menutrans P&revious<Tab>^WW <09><>һ<EFBFBD><D2BB>(&R)<Tab>^WW
menutrans Rotate\ &Up<Tab>^WR <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= <09>ȴ<EFBFBD>(&E)<Tab>^W=
menutrans &Max\ Height<Tab>^W_ <09><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>(&M)<Tab>^W
menutrans M&in\ Height<Tab>^W1_ <09><>С<EFBFBD>߶<EFBFBD>(&I)<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| <09><>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>^W1\|
"
" The popup menu
menutrans &Undo <09><><EFBFBD><EFBFBD>(&U)
menutrans Cu&t <09><><EFBFBD><EFBFBD>(&T)
menutrans &Copy <09><><EFBFBD><EFBFBD>(&C)
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
menutrans Select\ Blockwise ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
menutrans Select\ &Word ѡ<EFBFBD>񵥴<EFBFBD>(&W)
menutrans Select\ &Sentence ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans Select\ Pa&ragraph ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
menutrans Select\ &Line ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans Select\ &Block ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
menutrans Select\ &All ȫѡ(&A)
"
" The GUI toolbar
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open <09><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
tmenu ToolBar.Save <09><><EFBFBD>浱ǰ<EFBFBD>ļ<EFBFBD>
tmenu ToolBar.SaveAll <09><><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
tmenu ToolBar.Print <09><>ӡ
tmenu ToolBar.Undo <09><><EFBFBD><EFBFBD>
tmenu ToolBar.Redo <09><><EFBFBD><EFBFBD>
tmenu ToolBar.Cut <09><><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
tmenu ToolBar.Find <09><><EFBFBD><EFBFBD>...
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
tmenu ToolBar.Replace <09><><EFBFBD>Һ<EFBFBD><EFBFBD>...
tmenu ToolBar.LoadSesn <09><><EFBFBD>ػỰ
tmenu ToolBar.SaveSesn <09><><EFBFBD>浱ǰ<EFBFBD>
tmenu ToolBar.RunScript <09><><EFBFBD><EFBFBD> Vim <20>ű<EFBFBD>
tmenu ToolBar.Make ִ<EFBFBD><EFBFBD> Make (:make)
tmenu ToolBar.RunCtags <09>ڵ<EFBFBD>ǰĿ¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD> tags (!ctags -R .)
tmenu ToolBar.TagJump <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>õ<EFBFBD> tag
tmenu ToolBar.Help Vim <20><><EFBFBD><EFBFBD>
tmenu ToolBar.FindHelp <09><><EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD>
endfun
endif
" Syntax menu
menutrans &Syntax <09>(&S)
menutrans &Show\ filetypes\ in\ menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
menutrans &Off <09>ر<EFBFBD>(&O)
menutrans &Manual <09>ֹ<EFBFBD>(&M)
menutrans A&utomatic <09>Զ<EFBFBD>(&U)
menutrans on/off\ for\ &This\ file <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>/<EFBFBD><EFBFBD>(&T)
menutrans Co&lor\ test ɫ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>(&L)
menutrans &Highlight\ test <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans &Convert\ to\ HTML ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ HTML(&C)
menutrans Set\ '&syntax'\ only <09><><EFBFBD>\ 'syntax'(&S)
menutrans Set\ '&filetype'\ too Ҳ<EFBFBD>\ 'filetype'(&F)
let &cpo = s:keepcpo
unlet s:keepcpo
" As mentioned above, gbk/cp936 is a superset of (and backward compatible with)
" gb2312, then source the translation encoded in cp936 should be ok. -- Shun
source <sfile>:p:h/menu_zh_cn.cp936.vim

View File

@ -1,270 +1,452 @@
" Menu Translations: Simplified Chinese
" Maintainer: Shun Bai <baishunde@gmail.com>
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
" Last Change: 2014 Oct 15
" vim: ts=8 sw=8 noet
" Last Change: 2019 Sep 11
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
let s:keepcpo = &cpo
set cpo&vim
scriptencoding utf-8
" Help menu
menutrans &Help 帮助(&H)
menutrans &Overview<Tab><F1> 纵览(&O)<Tab><F1>
menutrans &User\ Manual 用户手册(&U)
menutrans &How-to\ links How-to\ 指引(&H)
menutrans &Find\.\.\. 查找(&F)\.\.\.
menutrans &Credits 致谢(&C)
menutrans Co&pying 版权(&P)
menutrans &Sponsor/Register 赞助/注册(&S)
menutrans O&rphans 孤儿(&R)
menutrans &Version 版本(&V)
menutrans &About 关于(&A)
menutrans &Help 帮助(&H)
" Help menuitems and dialog {{{1
menutrans &Overview<Tab><F1> 概述(&O)<Tab><F1>
menutrans &User\ Manual 用户手册(&U)
menutrans &How-to\ Links 如何使用(&H)
menutrans &Find\.\.\. 查找(&F)\.\.\.
menutrans &Credits 致谢(&C)
menutrans Co&pying 版权(&P)
menutrans &Sponsor/Register 赞助/注册(&S)
menutrans O&rphans 拯救孤儿(&R)
menutrans &Version 版本(&V)
menutrans &About 关于(&A)
" fun! s:Helpfind()
if !exists("g:menutrans_help_dialog")
let g:menutrans_help_dialog = "输入命令或单词以获得帮助:\n\n前缀 i_ 表示输入模式下的命令(如: i_CTRL-X)\n前缀 c_ 表示命令行下的编辑命令(如: c_<Del>)\n前缀 ' 表示选项名(如: 'shiftwidth')"
endif
" }}}
" File menu
menutrans &File 文件(&F)
menutrans &Open\.\.\.<Tab>:e 打开(&O)\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp 分割并打开(&L)\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew 打开标签\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew 新建(&N)<Tab>:enew
menutrans &Close<Tab>:close 关闭(&C)<Tab>:close
menutrans &Save<Tab>:w 保存(&S)<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav 另存为(&A)\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. 分割比较(Diff)(&D)\.\.\.
menutrans Split\ Patched\ &By\.\.\. 分割打补丁(Patch)(&B)\.\.\.
menutrans &Print 打印(&P)
menutrans Sa&ve-Exit<Tab>:wqa 保存并退出(&V)<Tab>:wqa
menutrans E&xit<Tab>:qa 退出(&X)<Tab>:qa
menutrans &File 文件(&F)
" File menuitems {{{1
menutrans &Open\.\.\.<Tab>:e 打开(&O)\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp 在拆分窗口打开(&L)\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew 在标签页打开\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew 新建(&N)<Tab>:enew
menutrans &Close<Tab>:close 关闭(&C)<Tab>:close
menutrans &Save<Tab>:w 保存(&S)<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav 另存为(&A)\.\.\.<Tab>:sav
menutrans Split\ &Diff\ With\.\.\. 拆分窗口以对比差异(Diff)(&D)\.\.\.
menutrans Split\ Patched\ &By\.\.\. 拆分窗口以进行修补(Patch)(&B)\.\.\.
menutrans &Print 打印(&P)
menutrans Sa&ve-Exit<Tab>:wqa 保存并退出(&V)<Tab>:wqa
menutrans E&xit<Tab>:qa 退出(&X)<Tab>:qa
" }}}
" Edit menu
menutrans &Edit 编辑(&E)
menutrans &Undo<Tab>u 撤销(&U)<Tab>u
menutrans &Redo<Tab>^R 重做(&R)<Tab>^R
menutrans Rep&eat<Tab>\. 重复上次操作(&E)<Tab>\.
menutrans Cu&t<Tab>"+x 剪切(&T)<Tab>"+x
menutrans &Copy<Tab>"+y 复制(&C)<Tab>"+y
menutrans &Paste<Tab>"+gP 粘贴(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p 粘贴到光标前(&B)<Tab>[p
menutrans Put\ &After<Tab>]p 粘贴到光标(&A)<Tab>]p
menutrans &Delete<Tab>x 删除(&D)<Tab>x
menutrans &Select\ All<Tab>ggVG 全选(&S)<Tab>ggVG
menutrans &Find\.\.\. 查找(&F)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. 查找和替换(&L)\.\.\.
menutrans &Find<Tab>/ 查找(&F)<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s 查找和替换(&L)<Tab>:%s
menutrans Settings\ &Window 设定窗口(&W)
menutrans Startup\ &Settings 启动设定(&S)
menutrans &Global\ Settings 全局设定(&G)
menutrans &Edit 编辑(&E)
" Edit menuitems {{{1
menutrans &Undo<Tab>u 撤销(&U)<Tab>u
menutrans &Redo<Tab>^R 恢复(&R)<Tab>^R
menutrans Rep&eat<Tab>\. 重复(&E)<Tab>\.
menutrans Cu&t<Tab>"+x 剪切(&T)<Tab>"+x
menutrans &Copy<Tab>"+y 复制(&C)<Tab>"+y
menutrans &Paste<Tab>"+gP 粘贴(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p 粘贴到光标(&B)<Tab>[p
menutrans Put\ &After<Tab>]p 粘贴到光标后(&A)<Tab>]p
menutrans &Delete<Tab>x 删除(&D)<Tab>x
menutrans &Select\ All<Tab>ggVG 全选(&S)<Tab>ggVG
menutrans &Find\.\.\. 查找(&F)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. 查找和替换(&L)\.\.\.
menutrans &Find<Tab>/ 查找(&F)<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s 查找和替换(&L)<Tab>:%s
menutrans Settings\ &Window 设置窗口(&W)
menutrans Startup\ &Settings 启动设置(&S)
" Edit/Global Settings
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! /关模式高亮(&H)<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! /关忽略大小写(&I)<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! /显示配对(&S)<Tab>:set\ sm!
menutrans &Context\ lines 上下文行数(&C)
menutrans &Virtual\ Edit 虚拟编辑(&V)
menutrans &Global\ Settings 全局设置(&G)
" Edit.Global Settings menuitems and dialogs {{{2
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! /高亮查找内容(&H)<Tab>:set\ hls!
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! /关忽略大小写(&I)<Tab>:set\ ic!
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! /关显示括号匹配(&S)<Tab>:set\ sm!
menutrans &Context\ Lines 上下文行数(&C)
menutrans &Virtual\ Edit 虚拟编辑(&V)
" Edit.Global Settings.Virtual Edit menuitems {{{3
menutrans Never 从不
menutrans Block\ Selection 块选择
menutrans Insert\ mode 插入模式
menutrans Block\ and\ Insert 块选择和插入模式
menutrans Always 总是
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! /关插入模式(&M)<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! /\ Vi\ 兼容<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. 查找路径(&P)\.\.\.
menutrans Ta&g\ Files\.\.\. Tag\ 文件(&T)\.\.\.
menutrans Block\ Selection 只在选定矩形块时
menutrans Insert\ Mode 只在插入模式
menutrans Block\ and\ Insert 在选定矩形块和插入模式
menutrans Always 始终
" }}}
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! /关插入模式(&M)<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! /\ Vi\ 兼容(&O)<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. 搜索路径(&P)\.\.\.
menutrans Ta&g\ Files\.\.\. 标记文件(Tags)(&G)\.\.\.
" GUI options
menutrans Toggle\ &Toolbar /关工具栏(&T)
menutrans Toggle\ &Bottom\ Scrollbar /关底部滚动条(&B)
menutrans Toggle\ &Left\ Scrollbar /关左滚动条(&L)
menutrans Toggle\ &Right\ Scrollbar /关右滚动条(&R)
menutrans Toggle\ &Toolbar /关工具栏(&T)
menutrans Toggle\ &Bottom\ Scrollbar /关底部滚动条(&B)
menutrans Toggle\ &Left\ Scrollbar /关左滚动条(&L)
menutrans Toggle\ &Right\ Scrollbar /关右滚动条(&R)
" fun! s:SearchP()
if !exists("g:menutrans_path_dialog")
let g:menutrans_path_dialog = "输入搜索路径。\n用逗号分隔目录名。"
endif
" fun! s:TagFiles()
if !exists("g:menutrans_tags_dialog")
let g:menutrans_tags_dialog = "输入标记文件(Tags)名称。\n用逗号分隔文件名。"
endif
" }}}
" Edit/File Settings
menutrans F&ile\ Settings 文件设(&I)
menutrans F&ile\ Settings 文件设(&I)
" Edit.File Settings menuitems and dialogs {{{2
" Boolean options
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! /显示行号(&N)<Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! /关相对行号(&V)<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! /\ list\ 模式(&L)<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! /(&W)<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! /整词折(&R)<Tab>:set\ lbr!
menutrans Toggle\ &expand-tab<Tab>:set\ et! /关扩展\ tab(&E)<Tab>:set\ et!
menutrans Toggle\ &auto-indent<Tab>:set\ ai! /关自动缩进(&A)<Tab>:set\ ai!
menutrans Toggle\ &C-indenting<Tab>:set\ cin! /\ C\ 缩进(&C)<Tab>:set\ cin!
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! /关行号(&N)<Tab>:set\ nu!
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu! /关相对行号(&V)<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! /列表模式(&L)<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap! /(&W)<Tab>:set\ wrap!
menutrans Toggle\ W&rapping\ at\ Word<Tab>:set\ lbr! /词尾换(&R)<Tab>:set\ lbr!
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et! /制表符扩展(&E)<Tab>:set\ et!
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai! /关自动缩进(&A)<Tab>:set\ ai!
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin! /\ C\ 语言式缩进(&C)<Tab>:set\ cin!
" other options
menutrans &Shiftwidth 缩进宽度(&S)
menutrans Soft\ &Tabstop Soft\ Tab\ 宽度(&T)
menutrans Te&xt\ Width\.\.\. 文本宽度(&X)\.\.\.
menutrans &File\ Format\.\.\. 文件格式(&F)\.\.\.
menutrans C&olor\ Scheme 配色方案(&O)
menutrans Select\ Fo&nt\.\.\. 选择字体(&N)\.\.\.
menutrans &Keymap 键盘映射(&K)
menutrans &Shiftwidth 缩进宽度(&S)
menutrans Soft\ &Tabstop 软制表位宽度(Soft Tabstop)(&T)
menutrans Te&xt\ Width\.\.\. 文本宽度(&X)\.\.\.
menutrans &File\ Format\.\.\. 文件格式(&F)\.\.\.
" fun! s:TextWidth()
if !exists("g:menutrans_textwidth_dialog")
let g:menutrans_textwidth_dialog = "输入文本宽度(每行最大字符数0 表示禁用):"
endif
" fun! s:FileFormat()
if !exists("g:menutrans_fileformat_dialog")
let g:menutrans_fileformat_dialog = "选择文件的保存格式:"
endif
if !exists("g:menutrans_fileformat_choices")
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\n取消(&C)"
endif
" }}}
menutrans Show\ C&olor\ Schemes\ in\ Menu 在菜单中显示配色方案(&O)
menutrans C&olor\ Scheme 配色方案(&O)
menutrans Show\ &Keymaps\ in\ Menu 在菜单中显示键盘映射(&K)
menutrans &Keymap 键盘映射(&K)
menutrans Select\ Fo&nt\.\.\. 选择字体(&N)\.\.\.
" }}}
" Programming menu
menutrans &Tools 工具(&T)
menutrans &Jump\ to\ this\ tag<Tab>g^] 跳转到这个\ tag(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T 跳转返回(&B)<Tab>^T
menutrans Build\ &Tags\ File 建立\ Tags\ 文件(&T)
menutrans &Tools 工具(&T)
" Tools menuitems {{{1
menutrans &Jump\ to\ This\ Tag<Tab>g^] 跳转到这个标记(Tag)(&J)<Tab>g^]
menutrans Jump\ &Back<Tab>^T 跳转回(&B)<Tab>^T
menutrans Build\ &Tags\ File 生成标记文件(Tags)(&T)
" Tools.Spelling Menu
menutrans &Spelling 拼写检查(&S)
menutrans &Spell\ Check\ On 打开拼写检查(&S)
menutrans Spell\ Check\ &Off 关闭拼写检查(&O)
menutrans To\ &Next\ error<Tab>]s 上一个错误(&N)<Tab>]s
menutrans To\ &Previous\ error<Tab>[s 一个错误(&P)<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= 修正建议(&C)<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall 重复修正(&R)<Tab>:spellrepall
menutrans Set\ language\ to\ "en" 设定语言为\ "en"
menutrans Set\ language\ to\ "en_au" 语言为\ "en_au"
menutrans Set\ language\ to\ "en_ca" 语言为\ "en_ca"
menutrans Set\ language\ to\ "en_gb" 语言为\ "en_gb"
menutrans Set\ language\ to\ "en_nz" 语言为\ "en_nz"
menutrans Set\ language\ to\ "en_us" 语言为\ "en_us"
menutrans &Find\ More\ Languages 查找更多语言(&F)
menutrans &Spelling 拼写检查(&S)
" Tools.Spelling menuitems and dialog {{{2
menutrans &Spell\ Check\ On 打开拼写检查(&S)
menutrans Spell\ Check\ &Off 关闭拼写检查(&O)
menutrans To\ &Next\ Error<Tab>]s 一个错误(&N)<Tab>]s
menutrans To\ &Previous\ Error<Tab>[s 下一个错误(&P)<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= 更正建议(&C)<Tab>z=
menutrans &Repeat\ Correction<Tab>:spellrepall 更正全部同类错误(&R)<Tab>:spellrepall
menutrans Set\ Language\ to\ "en" 语言为\ "en"
menutrans Set\ Language\ to\ "en_au" 语言为\ "en_au"
menutrans Set\ Language\ to\ "en_ca" 语言为\ "en_ca"
menutrans Set\ Language\ to\ "en_gb" 语言为\ "en_gb"
menutrans Set\ Language\ to\ "en_nz" 语言为\ "en_nz"
menutrans Set\ Language\ to\ "en_us" 设置语言为\ "en_us"
menutrans &Find\ More\ Languages 查找更多语言(&F)
" func! s:SpellLang()
if !exists("g:menutrans_set_lang_to")
let g:menutrans_set_lang_to = "设置语言为"
endif
" }}}
" Tools.Fold Menu
menutrans &Folding 折叠(&F)
" Tools.Fold menuitems {{{2
" open close folds
menutrans &Folding 折叠(&F)
menutrans &Enable/Disable\ folds<Tab>zi 启用/禁用折叠(&E)<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv 查看此(&V)<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx 仅查看此行(&W)<Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm 关闭更多折叠(&L)<Tab>zm
menutrans &Close\ all\ folds<Tab>zM 关闭所有折叠(&C)<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr 打开更多折叠(&P)<Tab>zr
menutrans &Open\ all\ folds<Tab>zR 打开所有折叠(&O)<Tab>zR
menutrans &Enable/Disable\ Folds<Tab>zi 启用/禁用折叠(&E)<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv 展开光标所在行(&V)<Tab>zv
menutrans Vie&w\ Cursor\ Line\ Only<Tab>zMzx 只展开光标所在(&W)<Tab>zMzx
menutrans C&lose\ More\ Folds<Tab>zm 折叠一级(&L)<Tab>zm
menutrans &Close\ All\ Folds<Tab>zM 折叠全部(&C)<Tab>zM
menutrans O&pen\ More\ Folds<Tab>zr 展开一级(&P)<Tab>zr
menutrans &Open\ All\ Folds<Tab>zR 展开全部(&O)<Tab>zR
" fold method
menutrans Fold\ Met&hod 折叠方(&H)
menutrans M&anual 手工(&A)
menutrans I&ndent 缩进(&N)
menutrans E&xpression 表达式(&X)
menutrans S&yntax 语法(&Y)
menutrans &Diff 比较(Diff)(&D)
menutrans Ma&rker 标记(&R)
menutrans Fold\ Met&hod 折叠方(&H)
" Tools.Fold.Fold Method menuitems {{{3
menutrans M&anual 手动(&A)
menutrans I&ndent 缩进(&N)
menutrans E&xpression 表达式(&X)
menutrans S&yntax 语法(&Y)
menutrans &Diff 差异(Diff)(&D)
menutrans Ma&rker 记号(Marker)(&R)
" }}}
" create and delete folds
menutrans Create\ &Fold<Tab>zf 创建折叠(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd 删除折叠(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD 删除所有折叠(&A)<Tab>zD
menutrans Create\ &Fold<Tab>zf 创建折叠(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd 删除折叠(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD 删除全部折叠(&A)<Tab>zD
" moving around in folds
menutrans Fold\ column\ &width 折叠栏宽度(&W)
menutrans Fold\ Col&umn\ Width 折叠操作栏宽度(&W)
" }}}
" Tools.Diff Menu
menutrans &Diff 比较(Diff)(&D)
menutrans &Update 更新(&U)
menutrans &Get\ Block 得到块(&G)
menutrans &Put\ Block 放置(&P)
menutrans &Diff 差异(Diff)(&D)
" Tools.Diff menuitems {{{2
menutrans &Update 刷新(&U)
menutrans &Get\ Block 采用对侧文本(&G)
menutrans &Put\ Block 采用本侧文本块(&P)
" }}}
menutrans &Make<Tab>:make Make(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl 列出错误(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! 列出消息(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn 下一个错误(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp 上一个错误(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold 旧的错误列表(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew 新的错误列表(&E)<Tab>:cnew
menutrans Error\ &Window 错误窗口(&W)
menutrans &Update<Tab>:cwin 更新(&U)<Tab>:cwin
menutrans &Make<Tab>:make 生成(Make)(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl 列出错误(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! 列出消息(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn 下一个错误(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp 上一个错误(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold 旧的错误列表(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew 新的错误列表(&E)<Tab>:cnew
menutrans Error\ &Window 错误窗口(&W)
" Tools.Error Window menuitems {{{2
menutrans &Update<Tab>:cwin 刷新(&U)<Tab>:cwin
menutrans &Open<Tab>:copen 打开(&O)<Tab>:copen
menutrans &Close<Tab>:cclose 关闭(&C)<Tab>:cclose
menutrans &Convert\ to\ HEX<Tab>:%!xxd 转换成十六进制<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r 转换返回<Tab>:%!xxd\ -r
menutrans Se&T\ Compiler 编译器(&T)
menutrans &Close<Tab>:cclose 关闭(&C)<Tab>:cclose
" }}}
menutrans Show\ Compiler\ Se&ttings\ in\ Menu 在菜单中显示编译器设置(&T)
menutrans Se&t\ Compiler 编译器(&T)
menutrans &Convert\ to\ HEX<Tab>:%!xxd 转换成十六进制(&C)<Tab>:%!xxd
menutrans Conve&rt\ Back<Tab>:%!xxd\ -r 转换回(&R)<Tab>:%!xxd\ -r
" }}}
" Names for buffer menu.
menutrans &Buffers 缓冲区(&B)
menutrans &Refresh\ menu 更新菜单(&R)
menutrans &Delete 删除(&D)
menutrans &Alternate 交替(&A)
menutrans &Next 下一个(&N)
menutrans &Previous 一个(&P)
" Buffer menu
menutrans &Buffers 缓冲区(&B)
" Buffer menuitems and dialog {{{1
menutrans &Refresh\ Menu 刷新本菜单(&R)
menutrans &Delete 删除(&D)
menutrans &Alternate 切换(&A)
menutrans &Next 一个(&N)
menutrans &Previous 上一个(&P)
" func! s:BMMunge(fname, bnum)
if !exists("g:menutrans_no_file")
let g:menutrans_no_file = "[无文件]"
endif
" }}}
" Window menu
menutrans &Window 窗口(&W)
menutrans &New<Tab>^Wn 新建(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws 分割(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ 分割到\ #(&L)<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv 垂直分割(&V)<Tab>^Wv
menutrans Split\ File\ E&xplorer 分割文件浏览器(&X)
menutrans &Close<Tab>^Wc 关闭(&C)<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo 关闭其它窗口(&O)<Tab>^Wo
menutrans Move\ &To 移动到(&T)
menutrans &Top<Tab>^WK 顶端(&T)<Tab>^WK
menutrans &Bottom<Tab>^WJ (&B)<Tab>^WJ
menutrans &Left\ side<Tab>^WH 左边(&L)<Tab>^WH
menutrans &Right\ side<Tab>^WL (&R)<Tab>^WL
" menutrans Ne&xt<Tab>^Ww 下一个(&X)<Tab>^Ww
" menutrans P&revious<Tab>^WW 上一个(&R)<Tab>^WW
menutrans Rotate\ &Up<Tab>^WR 轮换(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr 向下轮换(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= 等大(&E)<Tab>^W=
menutrans &Max\ Height<Tab>^W_ 高度(&M)<Tab>^W
menutrans M&in\ Height<Tab>^W1_ 小高(&I)<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| 宽度(&W)<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| 最小宽度(&H)<Tab>^W1\|
"
" The popup menu
menutrans &Undo 撤销(&U)
menutrans Cu&t 剪切(&T)
menutrans &Copy 复制(&C)
menutrans &Paste 粘贴(&P)
menutrans &Delete 删除(&D)
menutrans Select\ Blockwise 选择
menutrans Select\ &Word 单词(&W)
menutrans Select\ &Sentence 择句子(&S)
menutrans Select\ Pa&ragraph 段落(&R)
menutrans Select\ &Line (&L)
menutrans Select\ &Block (&B)
menutrans Select\ &All 全选(&A)
"
" The GUI toolbar
menutrans &Window 窗口(&W)
" Window menuitems {{{1
menutrans &New<Tab>^Wn 新建(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws 拆分(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ 拆分并显示缓冲区\ #(&L)<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv 垂直拆分(&V)<Tab>^Wv
menutrans Split\ File\ E&xplorer 拆分并打开文件浏览器(&X)
menutrans &Close<Tab>^Wc 关闭(&C)<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo 除此之外全部关闭(&O)<Tab>^Wo
menutrans Move\ &To 移动到(&T)
menutrans &Top<Tab>^WK (&T)<Tab>^WK
menutrans &Bottom<Tab>^WJ 底端(&B)<Tab>^WJ
menutrans &Left\ Side<Tab>^WH (&L)<Tab>^WH
menutrans &Right\ Side<Tab>^WL 右边(&R)<Tab>^WL
menutrans Rotate\ &Up<Tab>^WR 向上轮换(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr 轮换(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= 平均分布(&E)<Tab>^W=
menutrans &Max\ Height<Tab>^W_ 最大高度(&M)<Tab>^W
menutrans M&in\ Height<Tab>^W1_ 高度(&I)<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| 大宽(&W)<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| 宽度(&H)<Tab>^W1\|
" }}}
" The popup menu {{{1
menutrans &Undo 撤销(&U)
menutrans Cu&t 剪切(&T)
menutrans &Copy 复制(&C)
menutrans &Paste 粘贴(&P)
menutrans &Delete 删除(&D)
menutrans Select\ Blockwise 改为选定矩形
menutrans Select\ &Word 单词(&W)
menutrans Select\ &Sentence 定句(&S)
menutrans Select\ Pa&ragraph 段落(&R)
menutrans Select\ &Line (&L)
menutrans Select\ &Block 定矩形(&B)
menutrans Select\ &All 全选(&A)
" func! <SID>SpellPopup()
if !exists("g:menutrans_spell_change_ARG_to")
let g:menutrans_spell_change_ARG_to = '将\ "%s"\ 更改为'
endif
if !exists("g:menutrans_spell_add_ARG_to_word_list")
let g:menutrans_spell_add_ARG_to_word_list = '将\ "%s"\ 添加到词典'
endif
if !exists("g:menutrans_spell_ignore_ARG")
let g:menutrans_spell_ignore_ARG = '忽略\ "%s"'
endif
" }}}
" The GUI toolbar {{{1
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open 打开文件
tmenu ToolBar.Save 保存当前文件
tmenu ToolBar.SaveAll 保存全部文件
tmenu ToolBar.Print 打印
tmenu ToolBar.Undo 撤销
tmenu ToolBar.Redo 重做
tmenu ToolBar.Cut 剪切到剪贴板
tmenu ToolBar.Copy 复制到剪贴板
tmenu ToolBar.Paste 剪贴板粘贴
tmenu ToolBar.Find 查找...
tmenu ToolBar.FindNext 查找下一个
tmenu ToolBar.FindPrev 查找上一个
tmenu ToolBar.Replace 查找和替换...
tmenu ToolBar.LoadSesn 加载会话
tmenu ToolBar.SaveSesn 保存当前会话
tmenu ToolBar.RunScript 运行 Vim 脚本
tmenu ToolBar.Make 执行 Make (:make)
tmenu ToolBar.RunCtags 在当前目录建立 tags (!ctags -R .)
tmenu ToolBar.TagJump 跳转到光标位置的 tag
tmenu ToolBar.Help Vim 帮助
tmenu ToolBar.FindHelp 查找 Vim 帮助
let did_toolbar_tmenu = 1
tmenu ToolBar.Open 打开文件
tmenu ToolBar.Save 保存当前文件
tmenu ToolBar.SaveAll 全部保存
tmenu ToolBar.Print 打印
tmenu ToolBar.Undo 撤销
tmenu ToolBar.Redo 恢复
tmenu ToolBar.Cut 剪切到剪贴板
tmenu ToolBar.Copy 复制到剪贴板
tmenu ToolBar.Paste 从剪贴板粘贴
if !has("gui_athena")
tmenu ToolBar.Replace 查找和替换...
tmenu ToolBar.FindNext 查找下一个
tmenu ToolBar.FindPrev 查找上一个
endif
tmenu ToolBar.LoadSesn 加载会话
tmenu ToolBar.SaveSesn 保存当前会话
tmenu ToolBar.RunScript 运行 Vim 脚本
tmenu ToolBar.Make 生成当前项目 (:make)
tmenu ToolBar.RunCtags 在当前目录生成标记(Tags) (!ctags -R .)
tmenu ToolBar.TagJump 跳转到光标所在标记(Tag)
tmenu ToolBar.Help Vim 帮助
tmenu ToolBar.FindHelp Vim 帮助中查找
endfun
endif
" }}}
" Syntax menu
menutrans &Syntax 语法(&S)
menutrans &Show\ filetypes\ in\ menu 在菜单中显示文件类型(&S)
menutrans &Off 关闭(&O)
menutrans &Manual 手工(&M)
menutrans A&utomatic (&U)
menutrans on/off\ for\ &This\ file 仅对这个文件开/(&T)
menutrans Co&lor\ test 色彩测试(&L)
menutrans &Highlight\ test 高亮测试(&H)
menutrans &Convert\ to\ HTML 转换成\ HTML(&C)
menutrans Set\ '&syntax'\ only 仅设定\ 'syntax'(&S)
menutrans Set\ '&filetype'\ too 也设定\ 'filetype'(&F)
menutrans &Syntax 语法(&S)
" Syntax menuitems {{{1
menutrans &Show\ File\ Types\ in\ Menu 在菜单中显示文件类型(&S)
menutrans &Off 关闭(&O)
menutrans &Manual (&M)
menutrans A&utomatic 自动(&U)
menutrans On/Off\ for\ &This\ File 只对这个文件开/(&T)
menutrans Co&lor\ Test 色彩测试(&L)
menutrans &Highlight\ Test 高亮测试(&H)
menutrans &Convert\ to\ HTML 转换成\ HTML(&C)
" From synmenu.vim
menutrans Set\ '&syntax'\ Only 只设置\ 'syntax'(&S)
menutrans Set\ '&filetype'\ Too 也设置\ 'filetype'(&F)
" }}}
" Netrw menu {{{1
" Plugin loading may be after menu translation
" So giveup testing if Netrw Plugin is loaded
" if exists("g:loaded_netrwPlugin")
menutrans Help<tab><F1> 帮助<tab><F1>
menutrans Bookmarks 书签
menutrans History 历史记录
menutrans Go\ Up\ Directory<tab>- 向上一级<tab>-
menutrans Apply\ Special\ Viewer<tab>x 用默认程序打开<tab>x
menutrans Bookmarks\ and\ History 书签和历史记录
" Netrw.Bookmarks and History menuitems {{{2
menutrans Bookmark\ Current\ Directory<tab>mb 添加书签<tab>mb
menutrans Bookmark\ Delete 移除书签
menutrans Goto\ Prev\ Dir\ (History)<tab>u 后退(历史记录)<tab>u
menutrans Goto\ Next\ Dir\ (History)<tab>U 前进(历史记录)<tab>U
menutrans List<tab>qb 完整列表<tab>qb
" }}}
menutrans Browsing\ Control 控制
" Netrw.Browsing Control menuitems {{{2
menutrans Horizontal\ Split<tab>o 在拆分窗口打开<tab>o
menutrans Vertical\ Split<tab>v 在垂直拆分窗口打开<tab>v
menutrans New\ Tab<tab>t 在标签页打开<tab>t
menutrans Preview<tab>p 预览<tab>p
menutrans Edit\ File\ Hiding\ List<tab><ctrl-h> 编辑隐藏条件(Hiding\ List)<tab><ctrl-h>
menutrans Edit\ Sorting\ Sequence<tab>S 编辑排序条件(Sorting\ Sequence)<tab>S
menutrans Quick\ Hide/Unhide\ Dot\ Files<tab>gh 快速隐藏/显示以\.开头的文件<tab>gh
menutrans Refresh\ Listing<tab><ctrl-l> 刷新<tab><ctrl-l>
menutrans Settings/Options<tab>:NetrwSettings 设置/选项<tab>:NetrwSettings
" }}}
menutrans Delete\ File/Directory<tab>D 删除文件/目录<tab>D
menutrans Edit\ File/Dir 编辑文件/目录
" Netrw.Edit File menuitems {{{2
menutrans Create\ New\ File<tab>% 新建文件<tab>%
menutrans In\ Current\ Window<tab><cr> 在当前窗口<tab><cr>
menutrans Preview\ File/Directory<tab>p 预览文件/目录<tab>p
menutrans In\ Previous\ Window<tab>P 在上一个窗口<tab>P
menutrans In\ New\ Window<tab>o 在新窗口<tab>o
menutrans In\ New\ Tab<tab>t 在新标签页<tab>t
menutrans In\ New\ Vertical\ Window<tab>v 在新垂直窗口<tab>v
" }}}
menutrans Explore 浏览
" Netrw.Explore menuitems {{{2
menutrans Directory\ Name 指定目录名
menutrans Filenames\ Matching\ Pattern\ (curdir\ only)<tab>:Explore\ */ 匹配指定文件名模式(当前目录)<tab>:Explore\ */
menutrans Filenames\ Matching\ Pattern\ (+subdirs)<tab>:Explore\ **/ 匹配指定文件名模式(含子目录)<tab>:Explore\ **/
menutrans Files\ Containing\ String\ Pattern\ (curdir\ only)<tab>:Explore\ *// 内容包含指定字符串模式(当前目录)<tab>:Explore\ *//
menutrans Files\ Containing\ String\ Pattern\ (+subdirs)<tab>:Explore\ **// 内容包含指定字符串模式(含子目录)<tab>:Explore\ **//
menutrans Next\ Match<tab>:Nexplore 下一个匹配项<tab>:Nexplore
menutrans Prev\ Match<tab>:Pexplore 上一个匹配项<tab>:Pexplore
" }}}
menutrans Make\ Subdirectory<tab>d 新建子目录<tab>d
menutrans Marked\ Files 选定的(Marked)文件
" Netrw.Marked Files menuitems {{{2
menutrans Mark\ File<tab>mf 选定(Mark)/取消<tab>mf
menutrans Mark\ Files\ by\ Regexp<tab>mr 用正则表达式(Regexp)选定<tab>mr
menutrans Hide-Show-List\ Control<tab>a 隐藏/显示<tab>a
menutrans Copy\ To\ Target<tab>mc 复制到目标<tab>mc
menutrans Delete<tab>D 删除<tab>D
menutrans Diff<tab>md 差异(Diff)<tab>md
menutrans Edit<tab>me 编辑<tab>me
menutrans Exe\ Cmd<tab>mx 作为参数运行命令<tab>mx
menutrans Move\ To\ Target<tab>mm 移动到目标<tab>mm
menutrans Obtain<tab>O 获取<tab>O
menutrans Print<tab>mp 打印<tab>mp
menutrans Replace<tab>R 替换<tab>R
menutrans Set\ Target<tab>mt 设置目标<tab>mt
menutrans Tag<tab>mT 生成标记文件(Tags)<tab>mT
menutrans Zip/Unzip/Compress/Uncompress<tab>mz 压缩/解压缩<tab>mz
" }}}
menutrans Obtain\ File<tab>O 获取文件<tab>O
menutrans Style 显示风格
" Netrw.Style menuitems {{{2
menutrans Listing 列表形式
" Netrw.Style.Listing menuitems {{{3
menutrans thin<tab>i 紧凑<thin)<tab>i
menutrans long<tab>i 详细(long)<tab>i
menutrans wide<tab>i 多列(wide)<tab>i
menutrans tree<tab>i 树状(tree)<tab>i
" }}}
menutrans Normal-Hide-Show 显示/隐藏
" Netrw.Style.Normal-Hide_show menuitems {{{3
menutrans Show\ All<tab>a 显示全部
menutrans Normal<tab>a 不显示隐藏文件
menutrans Hidden\ Only<tab>a 只显示隐藏文件
" }}}
menutrans Reverse\ Sorting\ Order<tab>r 升序/降序<tab>r
menutrans Sorting\ Method 排序方式
" Netrw.Style.Sorting Method menuitems {{{3
menutrans Name<tab>s 文件名<tab>s
menutrans Time<tab>s 修改时间<tab>s
menutrans Size<tab>s 大小<tab>s
menutrans Exten<tab>s 扩展名<tab>s
" }}}
" }}}
menutrans Rename\ File/Directory<tab>R 重命名文件/目录<tab>R
menutrans Set\ Current\ Directory<tab>c 设置\ Vim\ 工作目录<tab>c
menutrans Targets 目标
" endif
" }}}
let &cpo = s:keepcpo
unlet s:keepcpo
" vim: set ts=4 sw=4 noet fdm=marker fdc=4 :

View File

@ -2,7 +2,7 @@
" You can also use this as a start for your own set of menus.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2019 Jan 27
" Last Change: 2019 Nov 10
" Note that ":an" (short for ":anoremenu") is often used to make a menu work
" in all modes and avoid side effects from mappings defined by the user.
@ -29,7 +29,8 @@ if exists("v:lang") || &langmenu != ""
let s:lang = v:lang
endif
" A language name must be at least two characters, don't accept "C"
if strlen(s:lang) > 1
" Also skip "en_US" to avoid picking up "en_gb" translations.
if strlen(s:lang) > 1 && s:lang !~? '^en_us'
" When the language does not include the charset add 'encoding'
if s:lang =~ '^\a\a$\|^\a\a_\a\a$'
let s:lang = s:lang . '.' . &enc
@ -158,6 +159,9 @@ an 20.335 &Edit.-SEP1- <Nop>
vnoremenu 20.340 &Edit.Cu&t<Tab>"+x "+x
vnoremenu 20.350 &Edit.&Copy<Tab>"+y "+y
cnoremenu 20.350 &Edit.&Copy<Tab>"+y <C-Y>
if exists(':tlmenu')
tlnoremenu 20.350 &Edit.&Copy<Tab>"+y <C-W>:<C-Y><CR>
endif
nnoremenu 20.360 &Edit.&Paste<Tab>"+gP "+gP
cnoremenu &Edit.&Paste<Tab>"+gP <C-R>+
if exists(':tlmenu')
@ -568,7 +572,7 @@ func! s:XxdConv()
%!mc vim:xxd
else
call s:XxdFind()
exe '%!"' . g:xxdprogram . '"'
exe '%!' . g:xxdprogram
endif
if getline(1) =~ "^0000000:" " only if it worked
set ft=xxd
@ -582,7 +586,7 @@ func! s:XxdBack()
%!mc vim:xxd -r
else
call s:XxdFind()
exe '%!"' . g:xxdprogram . '" -r'
exe '%!' . g:xxdprogram . ' -r'
endif
set ft=
doautocmd filetypedetect BufReadPost
@ -594,6 +598,9 @@ func! s:XxdFind()
" On the PC xxd may not be in the path but in the install directory
if has("win32") && !executable("xxd")
let g:xxdprogram = $VIMRUNTIME . (&shellslash ? '/' : '\') . "xxd.exe"
if g:xxdprogram =~ ' '
let g:xxdprogram = '"' .. g:xxdprogram .. '"'
endif
else
let g:xxdprogram = "xxd"
endif

View File

@ -1,7 +1,7 @@
" These commands create the option window.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2019 Aug 20
" Last Change: 2019 Nov 07
" If there already is an option window, jump to that one.
let buf = bufnr('option-window')
@ -429,6 +429,9 @@ if has("syntax")
call append("$", "cursorline\thighlight the screen line of the cursor")
call append("$", "\t(local to window)")
call <SID>BinOptionL("cul")
call append("$", "cursorlineopt\tspecifies which area 'cursorline' highlights")
call append("$", "\t(local to window)")
call <SID>OptionL("culopt")
call append("$", "colorcolumn\tcolumns to highlight")
call append("$", "\t(local to window)")
call <SID>OptionL("cc")
@ -591,6 +594,10 @@ call <SID>OptionG("mouse", &mouse)
if has("gui")
call append("$", "mousefocus\tthe window with the mouse pointer becomes the current one")
call <SID>BinOptionG("mousef", &mousef)
endif
call append("$", "scrollfocus\tthe window with the mouse pointer scrolls with the mouse wheel")
call <SID>BinOptionG("scf", &scf)
if has("gui")
call append("$", "mousehide\thide the mouse pointer while typing")
call <SID>BinOptionG("mh", &mh)
endif

Some files were not shown because too many files have changed in this diff Show More