Compare commits

...

1367 Commits

Author SHA1 Message Date
Yee Cheng Chin 644ca93c76 MacVim Snapshot 154
Vim patch 8.1.873

Targets macOS 10.8+

General:

- MacVim binary is now signed by a Developer ID (#517). This makes it
  easier to download and run the app without security warnings.
    - This also fixes an issue where invoking external programs via
      `:!open` was slow in Mojave. #763
- Ruby version has been updated from 2.5 to 2.6.

Fixes:

- Scrollbars are no longer misplaced when resizing window #827
- Fix rendering performance issues for commands (e.g. `:version`,
  `:echo`, or `:!`) that echo text in Mojave #840
- MacVim now properly asks for permission to use AppleEvent (ODB Editor
  Suite requires that to work) #822
- Fix borderless window mode in pre-Mojave versions #828

Script interfaces have compatibility with these versions:

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.7
- Ruby 2.6
2019-02-03 21:30:26 -08:00
Yee Cheng Chin b87cb34cde Merge remote-tracking branch 'vim/master' 2019-02-03 21:05:54 -08:00
Bram Moolenaar 970076468e patch 8.1.0873: list if distributed files does not include matchit autoload
Problem:    List if distributed files does not include the matchit autoload
            directory.
Solution:   Add the directory.
2019-02-03 23:45:30 +01:00
Bram Moolenaar 34a587457f patch 8.1.0872: confusing condition
Problem:    Confusing condition.
Solution:   Use "==" instead of "<=".
2019-02-03 15:28:28 +01:00
Bram Moolenaar 314dd79cac Update runtime files. 2019-02-03 15:27:20 +01:00
Bram Moolenaar 63d1fea814 patch 8.1.0871: build error when building with Ruby 2.6.0
Problem:    Build error when building with Ruby 2.6.0.
Solution:   Change argument of rb_int2big_stub(). (Android Baumann,
            closes #3899)
2019-02-03 15:18:35 +01:00
Bram Moolenaar aa5df7e312 patch 8.1.0870: Vim doesn't use the new ConPTY support in Windows 10
Problem:    Vim doesn't use the new ConPTY support in Windows 10.
Solution:   Use ConPTY support, if available. (Nobuhiro Takasaki, closes #3794)
2019-02-03 14:53:10 +01:00
Bram Moolenaar 01a6c21691 patch 8.1.0869: Travis CI script is too complicated
Problem:    Travis CI script is too complicated.
Solution:   Add names to environments.  Move appveyor script outside of src
            directory. (Ozaki Kiichi, closes #3890)
2019-02-03 13:13:18 +01:00
Yee Cheng Chin a7b708b6ce Merge pull request #840 from ychin/cmd-echo-perf-fix
Fix rendering performance issue when using :version or echo commands
2019-02-03 03:06:30 -08:00
Yee Cheng Chin b4014c8cb1 Fix rendering performance issue when using :version or echo commands
This fixes 10.14 Mojave's CoreText renderer taking a long time to render
:version / :ls / :! / :echo or similar commands.

This issue happened because the way Vim echos the output of those
commands is by issuing a draw calls in the pattern of "delete 1 line,
draw some text, delete another line...". Each line delete causes the
renderer to do a scroll. The pre-Mojave renderer relies on calling
scrollRect: but this doesn't work in Mojave anymore since that function
is deprecated and doesn't work in layer-backed views (which are now
mandatory). The new renderer's scroll implementation is a lot slower
since it's doing image blits on CPU.

The fix is to implement a draw command optimizer that pre-processes the
draw calls first. It works by batching together all the "delete 1 line"
calls and combine into a single "delete N lines" call and put that in
the beginning, and fixing up all the other draw string command so they
draw to the right line instead of needing to be scrolled up. This makes
:version or the other calls feel instaneous now.

This fix is ultimately a hack and an intermediary solution before the
renderer can be replaced (since the slow CPU scrolling causes normal
usage to feel sluggish as well) by a GPU-based renderer and/or a
glyph-based one that caches the state of the texts so repeated scrolling
can be done by shuffling the glpyh data around instead of an actualy image
blit.

Fix #815
2019-02-03 01:40:36 -08:00
Yee Cheng Chin a461cb6530 Merge remote-tracking branch 'vim/master' 2019-02-03 00:50:06 -08:00
Bram Moolenaar 889da2f243 patch 8.1.0868: crash if triggering garbage collector after a function call
Problem:    Crash if triggering garbage collector after a function call.
            (Michael Henry)
Solution:   Don't call the garbage collector right away, do it later.
            (closes #3894)
2019-02-02 14:02:30 +01:00
Bram Moolenaar 65951258d6 patch 8.1.0867: cannot build Python interface with Python 2.4
Problem:    Cannot build Python interface with Python 2.4. (Tom G. Christensen)
Solution:   Define PyBytes_FromStringAndSize. (Ken Takata, closes #3888)
2019-02-01 22:10:16 +01:00
Bram Moolenaar 1c321dcee9 patch 8.1.0866: build file dependencies are outdated
Problem:    Build file dependencies are outdated. (John Little)
Solution:   Run "make proto" and "make depend".
2019-02-01 20:42:22 +01:00
Bram Moolenaar 895d966e34 patch 8.1.0865: when 'listchars' only contains "nbsp:X" it does not work
Problem:    When 'listchars' only contains "nbsp:X" it does not work.
Solution:   Set extra_check when lcs_nbsp is set. (Ralf Schandl, closes #3889)
2019-01-31 21:57:21 +01:00
Bram Moolenaar 375e339007 patch 8.1.0864: cannot have a local value for 'scrolloff' and 'sidescrolloff'
Problem:    Cannot have a local value for 'scrolloff' and 'sidescrolloff'.
            (Gary Holloway)
Solution:   Make 'scrolloff' and 'sidescrolloff' global-local. (mostly by
            Aron Widforss, closes #3539)
2019-01-31 18:26:10 +01:00
Bram Moolenaar b3051ce82f patch 8.1.0863: cannot see what signal caused a job to end
Problem:    Cannot see what signal caused a job to end.
Solution:   Add "termsig" to job_info(). (Ozaki Kiichi, closes #3786)
2019-01-31 15:52:11 +01:00
Bram Moolenaar 221cd9f4dd patch 8.1.0862: no verbose version of character classes
Problem:    No verbose version of character classes.
Solution:   Add [:ident:], [:keyword:] and [:fname:]. (Ozaki Kiichi,
            closes #1373)
2019-01-31 15:34:40 +01:00
Bram Moolenaar 60f807b3f7 patch 8.1.0861: building with MinGW and static libc doesn't work
Problem:    Building with MinGW and static libc doesn't work.
Solution:   Change the LIB argument. (Ken Takata)
2019-01-31 14:43:19 +01:00
Bram Moolenaar 77255cab74 patch 8.1.0860: debug lines left in the code
Problem:    Debug lines left in the code.
Solution:   Delete the lines.
2019-01-31 14:29:42 +01:00
Bram Moolenaar c45eb770a5 patch 8.1.0859: "%v" in 'errorformat' does handle multi-byte characters
Problem:    "%v" in 'errorformat' does handle multi-byte characters.
Solution:   Handle multi-byte characters. (Yegappan Lakshmanan, closes #3700)
2019-01-31 14:27:04 +01:00
Bram Moolenaar ce655743ba patch 8.1.0858: 'indentkeys' and 'cinkeys' defaults are different
Problem:    'indentkeys' and 'cinkeys' defaults are different.
Solution:   Make them the same, update docs. (close #3882)
2019-01-31 14:12:57 +01:00
Bram Moolenaar 4b47162cce patch 8.1.0857: indent functionality is not separated
Problem:    Ignore functionality is not separated.
Solution:   Move indent functionality into a new file. (Yegappan Lakshmanan,
            closes #3886)
2019-01-31 13:48:09 +01:00
Bram Moolenaar bbb5f8d4c2 patch 8.1.0856: when scrolling a window the cursorline is not always updated
Problem:    When scrolling a window other than the current one the cursorline
            highlighting is not always updated. (Jason Franklin)
Solution:   Call redraw_for_cursorline() after scrolling.  Only set
            w_last_cursorline when drawing the cursor line.  Reset the lines
            to be redrawn also when redrawing the whole window.
2019-01-31 13:22:32 +01:00
Bram Moolenaar af703585a3 patch 8.1.0855: cannot build xxd with MSVC 10
Problem:    Cannot build xxd with MSVC 10.
Solution:   Move declaration to start of block.
2019-01-31 11:00:42 +01:00
Bram Moolenaar d8c56a0d29 patch 8.1.0854: xxd does not work with more than 32 bit addresses
Problem:    xxd does not work with more than 32 bit addresses.
Solution:   Add support for 64 bit addresses. (Christer Jensen, closes #3791)
2019-01-30 23:02:25 +01:00
Bram Moolenaar cbbd0f6578 patch 8.1.0853: options test fails on Mac
Problem:    Options test fails on Mac.
Solution:   Remove a trailing slash from $TMPDIR.
2019-01-30 22:36:18 +01:00
Bram Moolenaar ed71ed37bc patch 8.1.0852: findfile() and finddir() are not properly tested
Problem:    findfile() and finddir() are not properly tested.
Solution:   Extend the test and add more. (Dominique Pelle, closes #3880)
2019-01-30 22:13:35 +01:00
Bram Moolenaar 8d4ce56a19 patch 8.1.0851: feedkeys() with "L" does not work properly
Problem:    feedkeys() with "L" does not work properly.
Solution:   Do not set typebuf_was_filled when using "L". (Ozaki Kiichi,
            closes #3885)
2019-01-30 22:01:40 +01:00
Bram Moolenaar 98ad1e17c3 patch 8.1.0850: test for 'backupskip' is not correct
Problem:    Test for 'backupskip' is not correct.
Solution:   Split the option in parts and use expand(). (Michael Soyka)
2019-01-30 21:51:27 +01:00
Bram Moolenaar c07ff5c60a patch 8.1.0849: cursorline highlight is not always updated
Problem:    Cursorline highlight is not always updated.
Solution:   Set w_last_cursorline when redrawing.  Fix resetting cursor flags
            when using the popup menu.
2019-01-30 21:41:14 +01:00
Bram Moolenaar b191be2f00 patch 8.1.0848: cannot build with Ruby 1.8
Problem:    Cannot build with Ruby 1.8. (Tom G. Christensen)
Solution:   Use rb-str_new2(). (Yasuhiro Matsumoto, closes #3883,
            closes #3884)
2019-01-30 21:00:12 +01:00
Yee Cheng Chin b4bd0d3ff9 Merge remote-tracking branch 'vim/master' 2019-01-30 02:05:28 -08:00
Bram Moolenaar 9172d23d05 patch 8.1.0847: may use terminal after it was cleaned up
Problem:    May use terminal after it was cleaned up.
Solution:   Use the job pointer.
2019-01-29 23:06:54 +01:00
Bram Moolenaar 39536dd557 patch 8.1.0846: not easy to recognize the system Vim runs on
Problem:    Not easy to recognize the system Vim runs on.
Solution:   Add more items to the features list. (Ozaki Kiichi, closes #3855)
2019-01-29 22:58:21 +01:00
Bram Moolenaar 2a4857a1fc patch 8.1.0845: having job_status() free the job causes problems
Problem:    Having job_status() free the job causes problems.
Solution:   Do not actually free the job or terminal yet, put it in a list and
            free it a bit later. Do not use a terminal after checking the job
            status.  (closes #3873)
2019-01-29 22:29:07 +01:00
Bram Moolenaar 50948e4ac2 patch 8.1.0844: when timer fails test will hang forever
Problem:    When timer fails test will hang forever.
Solution:   Use reltime() to limit waiting time. (Ozaki Kiichi, closes #3878)
2019-01-29 20:36:56 +01:00
Bram Moolenaar e0de2164f6 patch 8.1.0843: memory leak when running "make test_cd"
Problem:    Memory leak when running "make test_cd".
Solution:   Free the stack element when failing. (Dominique Pelle,
            closes #3877)
2019-01-29 20:17:28 +01:00
Bram Moolenaar cb908a813c patch 8.1.0842: getchar_zero test fails on MS-Windows
Problem:    getchar_zero test fails on MS-Windows.
Solution:   Disable the test for now.
2019-01-28 23:20:04 +01:00
Bram Moolenaar 2339fa335f patch 8.1.0841: travis config to get Lua on MacOS is too complicated
Problem:    Travis config to get Lua on MacOS is too complicated.
Solution:   Use an addons entry. (Ozaki Kiichi, closes 3876)
2019-01-28 22:59:36 +01:00
Bram Moolenaar 12dfc9eef1 patch 8.1.0840: getchar(0) never returns a character in the terminal
Problem:    getchar(0) never returns a character in the terminal.
Solution:   Call wait_func() at least once.
2019-01-28 22:32:58 +01:00
Bram Moolenaar f58d81a187 patch 8.1.0839: when using VTP wrong colors after a color scheme change
Problem:    When using VTP wrong colors after a color scheme change.
Solution:   When VTP is active always clear after a color scheme change.
            (Nobuhiro Takasaki, closes #3872)
2019-01-28 20:19:05 +01:00
Bram Moolenaar dec01206b2 patch 8.1.0838: compiler warning for type conversion
Problem:    Compiler warning for type conversion.
Solution:   Add a type cast. (Mike Williams)
2019-01-28 20:04:24 +01:00
Bram Moolenaar 26d982185e patch 8.1.0837: timer interrupting cursorhold and mapping not tested
Problem:    Timer interrupting cursorhold and mapping not tested.
Solution:   Add tests with timers. (Ozaki Kiichi, closes #3871)
2019-01-27 22:32:55 +01:00
Bram Moolenaar 346d2a359a patch 8.1.0836: user completion test can fail on MS-Windows
Problem:    User completion test can fail on MS-Windows.
Solution:   Allow for other names befor "Administrator".
2019-01-27 20:43:41 +01:00
Bram Moolenaar 3e9d4d85c4 patch 8.1.0835: GUI build fails on MS-Windows
Problem:    GUI build fails on MS-Windows.
Solution:   Adjust #ifdef.
2019-01-27 17:08:40 +01:00
Bram Moolenaar e40b9d47bf patch 8.1.0834: GUI may wait too long before dealing with messages
Problem:    GUI may wait too long before dealing with messages.  Returning
            early may cause a mapping to time out.
Solution:   Use the waiting loop from Unix also for the GUI.
            (closes #3817, closes #3824)
2019-01-27 16:55:47 +01:00
Bram Moolenaar d93090f41f patch 8.1.0833: memory leak when jumps output is filtered
Problem:    Memory leak when jumps output is filtered.
Solution:   Free the filtered name. (Dominique Pelle, closes #3869)
2019-01-27 15:07:39 +01:00
Bram Moolenaar 2e05009218 patch 8.1.0832: confirm() is not tested
Problem:    confirm() is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3868)
2019-01-27 15:00:36 +01:00
Bram Moolenaar 0eb220c030 patch 8.1.0831: xxd test fails if man page has dos fileformat
Problem:    Xxd test fails if man page has dos fileformat.
Solution:   Make a copy with unix fileformat.
2019-01-27 14:41:43 +01:00
Bram Moolenaar e3d0654544 patch 8.1.0830: test leaves directory behind on MS-Windows
Problem:    Test leaves directory behind on MS-Windows.
Solution:   Close buffer before deleting directory.
2019-01-27 14:29:24 +01:00
Yee Cheng Chin 0ed1f47d44 Merge pull request #838 from ichizok/fix/tests
Mark flaky tests as pending when they failed
2019-01-27 02:42:51 -08:00
Bram Moolenaar d39e275b57 patch 8.1.0829: when 'hidden' is set session creates extra buffers
Problem:    When 'hidden' is set session creates extra buffers.
Solution:   Move :badd commands to the end. (Jason Franklin)
2019-01-26 20:07:38 +01:00
Bram Moolenaar 6aba96dd57 patch 8.1.0828: still using FEAT_VIRTUALEDIT
Problem:    Still using FEAT_VIRTUALEDIT.
Solution:   Remove last use of FEAT_VIRTUALEDIT.
2019-01-26 17:43:21 +01:00
Bram Moolenaar 2a953fcf10 Updated runtime files. 2019-01-26 17:41:47 +01:00
Bram Moolenaar 8e59a1e127 patch 8.1.0827: missing dependency in Makefile
Problem:    Missing dependency in Makefile.
Solution:   Add dependency from autocmd.o on auto/osdef.h
2019-01-26 17:36:51 +01:00
Bram Moolenaar 29ddebef40 patch 8.1.0826: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_VIRTUALEDIT.  Adds about 10Kbyte to the code.
2019-01-26 17:28:26 +01:00
Bram Moolenaar 3e460fd8b7 patch 8.1.0825: code for autocommands is mixed with file I/O code
Problem:    Code for autocommands is mixed with file I/O code.
Solution:   Move autocommand code to a separate file. (Yegappan Lakshmanan,
            closes #3863)
2019-01-26 16:21:07 +01:00
Bram Moolenaar 1ecc5e4a99 patch 8.1.0824: SunOS/Solaris has a problem with ttys
Problem:    SunOS/Solaris has a problem with ttys.
Solution:   Add mch_isatty() with extra handling for SunOS. (Ozaki Kiichi,
            closes #3865)
2019-01-26 15:12:55 +01:00
Bram Moolenaar 203651b9b2 patch 8.1.0823: not sufficient testing of xxd
Problem:    Not sufficient testing of xxd.
Solution:   Add some more test coverage.
2019-01-26 14:11:19 +01:00
Yee Cheng Chin ff4bb6f830 Merge pull request #834 from dennisjbell/master
Fix `Class MMBackend` duplication bug on launch
2019-01-26 00:45:44 -08:00
ichizok 79932f9aab Fix and re-enable some tests 2019-01-26 15:53:48 +09:00
ichizok 333ea1c76f Mark flaky tests as pending when they failed 2019-01-26 15:53:48 +09:00
Yee Cheng Chin 803f090d6e Removed the MacVim checks for test_filechanged.vim
The GUI dialog bug has been fixed in Vim by not running
Test_file_changed_dialog() when GUI is running, so no need to put
MacVim-specific check for that.
2019-01-25 21:30:45 -08:00
Yee Cheng Chin 38d94f183c Merge remote-tracking branch 'vim/master' 2019-01-25 21:30:00 -08:00
Bram Moolenaar cb574f4154 patch 8.1.0822: peeking and flushing output slows down execution
Problem:    Peeking and flushing output slows down execution.
Solution:   Do not update the mode message when global_busy is set.  Do not
            flush when only peeking for a character. (Ken Takata)
2019-01-25 22:29:57 +01:00
Bram Moolenaar 970f5d39f2 patch 8.1.0821: xxd "usage" output and other arguments not tested
Problem:    Xxd "usage" output and other arguments not tested.
Solution:   Add a test to trigger the usage output in various ways.  Fix
            uncovered problem.
2019-01-25 21:52:17 +01:00
Bram Moolenaar e295609be2 patch 8.1.0820: test for sending large data over channel sometimes fails
Problem:    Test for sending large data over channel sometimes fails.
Solution:   Handle that the job may have finished early.  Also fix that file
            changed test doesn't work in the GUI and reduce flakyness. (Ozaki
            Kiichi, closes #3861)
2019-01-25 21:01:17 +01:00
Bram Moolenaar 865767126e patch 8.1.0819: a failed assert with a long string is hard to read
Problem:    A failed assert with a long string is hard to read.
Solution:   Shorten the assert message.
2019-01-25 20:48:33 +01:00
Yee Cheng Chin 650b5a94a6 Disable new Vim unit tests that are breaking MacVim CI
The new tests are behaving flakily or just broken in GUI. Disable them
for now and will need to investigate why the test isn't working in
MacVim later.

Affected tests are Test_terminal_no_cmd and the file test_filechanged.
2019-01-25 04:23:45 -08:00
Yee Cheng Chin 4ce14df0af Remove FEAT_MBYTE from MacVim code as Vim is deprecating them 2019-01-25 00:49:17 -08:00
Yee Cheng Chin a8aac48764 Merge remote-tracking branch 'vim/master' 2019-01-25 00:48:51 -08:00
Bram Moolenaar 240583869a patch 8.1.0818: MS-Windows: cannot send large data with ch_sendraw()
Problem:    MS-Windows: cannot send large data with ch_sendraw().
Solution:   Split write into several WriteFile() calls. (Yasuhiro Matsumoto,
            closes #3823)
2019-01-24 23:11:49 +01:00
Bram Moolenaar 99531a7604 patch 8.1.0817: ":=" command is not tested
Problem:    ":=" command is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3859)
2019-01-24 22:42:37 +01:00
Bram Moolenaar 681b6bc86c patch 8.1.0816: test for 'runtimepath' in session fails on MS-Windows
Problem:    Test for 'runtimepath' in session fails on MS-Windows.
Solution:   Skip the test for now.
2019-01-24 22:23:58 +01:00
Bram Moolenaar 5e66b42aae patch 8.1.0815: dialog for file changed outside of Vim not tested
Problem:    Dialog for file changed outside of Vim not tested.
Solution:   Add a test.  Move FileChangedShell test.  Add 'L' flag to
            feedkeys().
2019-01-24 21:58:10 +01:00
Bram Moolenaar ed18f2c03a patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Problem:    :mksession cannot handle a very long 'runtimepath'. (Timothy
            Madden)
Solution:   Expand each part separately, instead of the whole option at once.
            (Christian Brabandt, closes #3466)
2019-01-24 20:30:52 +01:00
Bram Moolenaar 0566e891f7 patch 8.1.0813: FileChangedShell not sufficiently tested
Problem:    FileChangedShell not sufficiently tested.
Solution:   Add a more comprehensive test case.
2019-01-24 19:37:40 +01:00
Bram Moolenaar 9ba6117de6 patch 8.1.0812: Unicode 16 feature is not useful
Problem:    Unicode 16 feature is not useful and cannot be detected.
Solution:   Remove UNICODE16.
2019-01-24 18:20:17 +01:00
Bram Moolenaar 30276f2beb patch 8.1.0811: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, the final chapter.
2019-01-24 17:59:39 +01:00
Bram Moolenaar 264b74fa54 patch 8.1.0810: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 4.
2019-01-24 17:18:42 +01:00
Bram Moolenaar a12a161b8c patch 8.1.0809: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 3.
2019-01-24 16:39:02 +01:00
Bram Moolenaar 091806d6f0 patch 8.1.0808: MS-Windows: build error with GUI
Problem:    MS-Windows: build error with GUI.
Solution:   Remove "static".
2019-01-24 16:27:46 +01:00
Bram Moolenaar 9e79ccbe9c patch 8.1.0807: session test fails on MS-Windows
Problem:    Session test fails on MS-Windows.
Solution:   Don't try creating file with illegal name.
2019-01-24 15:57:30 +01:00
Bram Moolenaar fc3abf47fb patch 8.1.0806: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 2.
2019-01-24 15:54:21 +01:00
Bram Moolenaar 135059724f patch 8.1.0805: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 1.
2019-01-24 15:04:48 +01:00
Bram Moolenaar 4b9e91f0ba patch 8.1.0804: crash when setting v:errmsg to empty list
Problem:    Crash when setting v:errmsg to empty list. (Jaon Franklin)
Solution:   Separate getting value and assigning result.
2019-01-24 13:58:11 +01:00
Bram Moolenaar ad36a3588d patch 8.1.0803: session file has problem with single quote in file name
Problem:    Session file has problem with single quote in file name. (Jon
            Crowe)
Solution:   Use a double quoted string.  Add a test.
2019-01-24 13:34:42 +01:00
Bram Moolenaar a5be9b6248 patch 8.1.0802: negative index doesn't work for Blob
Problem:    Negative index doesn't work for Blob.
Solution:   Make it work, add a test. (closes #3856)
2019-01-24 12:31:44 +01:00
Bram Moolenaar fb1199d934 patch 8.1.0801: MinGW: no hint that tests fail because of small terminal
Problem:    MinGW: no hint that tests fail because of small terminal.
Solution:   Add a rule for test1 that checks for "wrongtermsize".
            (msoyka-of-wharton)
2019-01-24 12:18:46 +01:00
Bram Moolenaar 4456ab527a patch 8.1.0800: may use a lot of memory when a function refers itself
Problem:    May use a lot of memory when a function creates a cyclic
            reference.
Solution:   After saving a funccal many times, invoke the garbage collector.
            (closes #3835)
2019-01-23 23:00:30 +01:00
Bram Moolenaar cfc15237ab patch 8.1.0799: calling deleted function; test doesn't work on Mac
Problem:    Calling deleted function; test doesn't work on Mac.
Solution:   Wait for the function to be called before deleting it. Use a job
            to write to the pty, unless in the GUI. (Ozaki Kiichi,
            closes #3854)
2019-01-23 22:33:18 +01:00
Bram Moolenaar dd29ea1805 patch 8.1.0798: changing a blob while iterating over it works strangely
Problem:    Changing a blob while iterating over it works strangely.
Solution:   Make a copy of the Blob before iterating.
2019-01-23 21:56:21 +01:00
Bram Moolenaar bf821bccf1 patch 8.1.0797: error E898 is used twice
Problem:    Error E898 is used twice.
Solution:   Rename the Blob error to E899. (closes #3853)
2019-01-23 21:15:02 +01:00
Bram Moolenaar 31faed60bf patch 8.1.0796: MS-Windows 7: problem with named pipe on channel
Problem:    MS-Windows 7: problem with named pipe on channel.
Solution:   Put back the disconnect/connect calls. (Yasuhiro Matsumoto,
            closes #3833)
2019-01-22 23:01:40 +01:00
Bram Moolenaar f88af6e675 patch 8.1.0795: cannot build without popup menu
Problem:    Cannot build without popup menu.
Solution:   Add #ifdef
2019-01-22 22:55:00 +01:00
Bram Moolenaar 82a12468bd patch 8.1.0794: white space before " -Ntabmove" causes problems
Problem:    White space before " -Ntabmove" causes problems.
Solution:   Skip whitespace. (Ozaki Kiichi, closes #3841)
2019-01-22 22:41:42 +01:00
Bram Moolenaar 0d17f0d1c0 patch 8.1.0793: incorrect error messages for functions that take a Blob
Problem:    Incorrect error messages for functions that now take a Blob
            argument.
Solution:   Adjust the error messages. (Dominique Pelle, closes #3846)
2019-01-22 22:20:38 +01:00
Bram Moolenaar 9e26f7d31f patch 8.1.0792: bad display if opening cmdline window from Insert completion
Problem:    Popup menu is displayed on top of the cmdline window if it is
            opened from Insert completion. (Bjorn Linse)
Solution:   Remove the popup menu.  Restore the cursor position.
            (closes #3838)
2019-01-22 22:08:09 +01:00
Bram Moolenaar 563bbeabcc patch 8.1.0791: a few compiler warnings on VMS
Problem:    A few compiler warnings on VMS.
Solution:   Remove type cast.  Adjust #ifdef. (Zoltan Arpadffy)
2019-01-22 21:45:40 +01:00
Bram Moolenaar 57a6bf0567 patch 8.1.0790: code for creating tabpages in session is too complex
Problem:    Code for creating tabpages in session is too complex.
Solution:   Simplify the code. (Jason Franklin)
2019-01-22 21:27:13 +01:00
Yee Cheng Chin abb115b460 Fix MacVim source code to not use the removed EMSG macros in Vim 2019-01-22 03:12:50 -08:00
Yee Cheng Chin 0d15f19f87 Merge remote-tracking branch 'vim/master' 2019-01-22 03:12:08 -08:00
Bram Moolenaar 555de4e3b2 patch 8.1.0789: sourcing a session sets v:errmsg
Problem:    Sourcing a session sets v:errmsg.
Solution:   Use "%argdel" instead of "argdel *". (Jason Franklin)
2019-01-21 23:03:49 +01:00
Bram Moolenaar b2148f5864 patch 8.1.0788: cannot build with tiny features
Problem:    Cannot build with tiny features.
Solution:   Adjust #ifdefs.
2019-01-20 23:43:57 +01:00
Bram Moolenaar edce7420d0 patch 8.1.0787: compiler warning for unused function
Problem:    Compiler warning for unused function. (Tony Mechelynck)
Solution:   Tune #ifdef around setjmp functions.
2019-01-20 18:39:30 +01:00
Bram Moolenaar 10772307c4 patch 8.1.0786: ml_get error when updating the status line
Problem:    ml_get error when updating the status line and a terminal had its
            scrollback cleared.  (Chris Patuzzo)
Solution:   Check the cursor position when drawing the status line.
            (closes #3830)
2019-01-20 18:25:54 +01:00
Bram Moolenaar 113e10721f patch 8.1.0785: depending on the configuration some functions are unused
Problem:    Depending on the configuration some functions are unused.
Solution:   Add more #ifdefs, remove unused functions. (Dominique Pelle,
            closes #3822)
2019-01-20 15:30:40 +01:00
Bram Moolenaar 1f20daa1d7 patch 8.1.0784: messy indent in if statement
Problem:    Messy indent in if statement.
Solution:   Improve structure of if statement. (Ozaki Kiichi, closes #3826)
2019-01-19 21:12:24 +01:00
Bram Moolenaar 63c0ccd2b6 patch 8.1.0783: compiler warning for signed/unsigned
Problem:    Compiler warning for signed/unsigned.
Solution:   Add type cast.  Change type of buffer. (Ozaki Kiichi, closes #3827)
2019-01-19 21:06:58 +01:00
Bram Moolenaar 2d951a486e patch 8.1.0782: Win32: cursor blinks when Vim is not active
Problem:    Win32: cursor blinks when Vim is not active.
Solution:   Remove call to setActiveWindow(). (Yasuhiro Matsumoto,
            closes #3778)
2019-01-19 19:54:20 +01:00
Bram Moolenaar a502caab8b patch 8.1.0781: build error when using if_xcmdsrv.c
Problem:    Build error when using if_xcmdsrv.c.
Solution:   Add missing part of 8.1.0779.
2019-01-19 18:23:41 +01:00
Bram Moolenaar e25bbc3b2b patch 8.1.0780: terminal test fails on Mac
Problem:    Terminal test fails on Mac.
Solution:   Skip the test on Mac.
2019-01-19 18:20:45 +01:00
Bram Moolenaar 32526b3c18 patch 8.1.0779: argument for message functions is inconsistent
Problem:    Argument for message functions is inconsistent.
Solution:   Make first argument to msg() "char *".
2019-01-19 17:43:09 +01:00
Bram Moolenaar d383c92ec1 patch 8.1.0778: terminal test fails on MS-Windows
Problem:    Terminal test fails on MS-Windows.
Solution:   Temporarily skip the test on MS-Windows.  Do run it both in
            terminal and GUI on other systems.
2019-01-19 15:27:08 +01:00
Bram Moolenaar b091f30bf3 patch 8.1.0777: Win32: using pipes for channel does not work well
Problem:    Win32: using pipes for channel does not work well.
Solution:   Use a larger buffer and handle overlaps. (Yasuhiro Matsumoto,
            closes #3782)
2019-01-19 14:37:00 +01:00
Bram Moolenaar b2e54b0092 patch 8.1.0776: Travis does not build a version without GUI on Linux
Problem:    Travis does not build a version without GUI on Linux.
Solution:   Add an environment for tiny features without GUI.
2019-01-19 13:46:50 +01:00
Bram Moolenaar 2bf60b3001 patch 8.1.0775: matching too many files as zsh
Problem:    Matching too many files as zsh. (Danek Duvall)
Solution:   Be more specific with zsh filetype patterns.
2019-01-18 23:14:43 +01:00
Bram Moolenaar 05a2907cde patch 8.1.0774: VMS build is missing the blob file
Problem:    VMS build is missing the blob file.
Solution:   Add the blob file to the build rules. (Zoltan Arpadffy)
2019-01-18 22:59:53 +01:00
Bram Moolenaar 987411db9e patch 8.1.0773: not all crypt code is tested
Problem:    Not all crypt code is tested.
Solution:   Disable unused crypt code.  Add more test coverage.
2019-01-18 22:48:34 +01:00
Bram Moolenaar 0314236aab patch 8.1.0772: the sign_define_by_name() function is too long
Problem:    The sign_define_by_name() function is too long.
Solution:   Split it into smaller functions. (Yegappan Lakshmanan,
            closes #3819)
2019-01-18 22:01:42 +01:00
Bram Moolenaar 147e7d0cab patch 8.1.0771: some shell filetype patterns end in a star
Problem:    Some shell filetype patterns end in a star.
Solution:   Make sure that patterns not ending in a star are preferred.
2019-01-18 21:46:47 +01:00
Bram Moolenaar 1ac56c2d11 patch 8.1.0770: inconsistent use of ELAPSED_FUNC
Problem:    Inconsistent use of ELAPSED_FUNC.
Solution:   Consistently use ELAPSED_FUNC.  Also turn ELAPSED_TYPE into a
            typedef. (Ozaki Kiichi, closes #3815)
2019-01-17 22:28:22 +01:00
Bram Moolenaar 3020ccb113 patch 8.1.0769: :stop is covered in two tests
Problem:    :stop is covered in two tests.
Solution:   Remove Test_stop_in_terminal().  Make other test exit Vim cleanly.
            (Ozaki Kiichi, closes #3814)
2019-01-17 22:13:54 +01:00
Bram Moolenaar ae654385df patch 8.1.0768: updating completions may cause the popup menu to flicker
Problem:    Updating completions may cause the popup menu to flicker.
Solution:   Avoid updating the text below the popup menu before drawing the
            popup menu.
2019-01-17 21:09:05 +01:00
Bram Moolenaar c771bf9016 patch 8.1.0767: when deleting lines at the bottom signs are misplaced
Problem:    When deleting lines at the bottom signs are misplaced.
Solution:   Properly update the line number of signs at the end of a buffer
            after a delete/undo operation. (Yegappan Lakshmanan, closes #3798)
2019-01-17 17:36:45 +01:00
Bram Moolenaar 88c86eb751 patch 8.1.0766: various problems when using Vim on VMS
Problem:    Various problems when using Vim on VMS.
Solution:   Various fixes. Define long_long_T. (Zoltan Arpadffy)
2019-01-17 17:13:30 +01:00
Bram Moolenaar 4131fd5509 patch 8.1.0765: string format of a Blob can't be parsed back
Problem:    String format of a Blob can't be parsed back.
Solution:   Use 0z format.
2019-01-17 16:32:53 +01:00
Bram Moolenaar 6e0b6a0bec patch 8.1.0764: list of distributed files is outdated
Problem:    List of distributed files is outdated.
Solution:   Remove workshop files.  Add blob files.
2019-01-17 16:11:06 +01:00
Bram Moolenaar d09091d495 Update runtime files. 2019-01-17 16:07:22 +01:00
Bram Moolenaar bb1969b6ab patch 8.1.0763: nobody is using the Sun Workshop support
Problem:    Nobody is using the Sun Workshop support.
Solution:   Remove the Workshop support.
2019-01-17 15:45:25 +01:00
Bram Moolenaar e40742526e patch 8.1.0762: compiler warning
Problem:    Compiler warning.
Solution:   Add type cast. (Mike Williams)
2019-01-17 14:31:14 +01:00
Bram Moolenaar e299bbdf6e patch 8.1.0761: default value for brief_wait is wrong
Problem:    Default value for brief_wait is wrong.
Solution:   Make the default FALSE. (Ozaki Kiichi, closes #3812, closes #3799)
2019-01-17 14:12:02 +01:00
Bram Moolenaar 617d7ef046 patch 8.1.0760: no proper test for using 'termencoding'
Problem:    No proper test for using 'termencoding'.
Solution:   Add a screendump test.  Fix using double width characters in a
            screendump.
2019-01-17 13:04:30 +01:00
Bram Moolenaar 83a52171ba patch 8.1.0759: showing two characters for tab is limited
Problem:    Showing two characters for tab is limited.
Solution:   Allow for a third character for "tab:" in 'listchars'. (Nathaniel
            Braun, Ken Takata, closes #3810)
2019-01-16 22:41:54 +01:00
Bram Moolenaar 500f361080 patch 8.1.0758: font number is always one instead of the actual
Problem:    Font number is always one instead of the actual.
Solution:   Use "%d" instead of "1". (Ken Takata)
2019-01-16 22:15:11 +01:00
Bram Moolenaar d89682477c patch 8.1.0757: not enough documentation for Blobs
Problem:    Not enough documentation for Blobs.
Solution:   Add a section about Blobs.
2019-01-15 22:51:57 +01:00
Bram Moolenaar 3d28b58c51 patch 8.1.0756: copy() does not make a copy of a Blob
Problem:    copy() does not make a copy of a Blob.
Solution:   Make a copy.
2019-01-15 22:44:17 +01:00
Bram Moolenaar 2ea773b468 patch 8.1.0755: error message for get() on a Blob with invalid index
Problem:    Error message for get() on a Blob with invalid index.
Solution:   Return an empty Blob, like get() on a List does.
2019-01-15 22:16:42 +01:00
Bram Moolenaar 177ab9e026 patch 8.1.0754: preferred column is lost when setting 'cursorcolumn'
Problem:    Preferred column is lost when setting 'cursorcolumn'.
Solution:   Change option flag to P_RWINONLY. (Takayuki Kurosawa,
            closes #3806)
2019-01-15 21:12:57 +01:00
Bram Moolenaar b5443cc46d patch 8.1.0753: printf format not checked for semsg()
Problem:    printf format not checked for semsg().
Solution:   Add GNUC attribute and fix reported problems. (Dominique Pelle,
            closes #3805)
2019-01-15 20:19:40 +01:00
Bram Moolenaar 8e481e8dfe patch 8.1.0752: one more compiler warning for signed/unsigned string
Problem:    One more compiler warning for signed/unsigned string. (Tony
            Mechelynck)
Solution:   Remove type cast.
2019-01-15 20:07:48 +01:00
Bram Moolenaar 6057ed4720 patch 8.1.0751: some regexp errors are not tested
Problem:    Some regexp errors are not tested.
Solution:   Add a test function.
2019-01-14 23:19:29 +01:00
Bram Moolenaar 8144acbec3 patch 8.1.0750: when the last sign is deleted the signcolumn may remain
Problem:    When the last sign is deleted the signcolumn may not be removed
            even though 'signcolumn' is "auto".
Solution:   When deleting the last sign redraw the buffer. (Dominique Pelle,
            closes #3803, closes #3804)
2019-01-14 23:08:18 +01:00
Dennis Bell 256ce633b4 Fix Class MMBackend duplication bug on launch
This issue was detected on both Homebrew and Github released MacVim for
v8.1 on a fresh install of OS High Sierra with no .vim or .vimrc configuration

Basically, when starting vim from the command line, it produces the
following error:

```
objc[4513]: Class MMBackend is implemented in both /usr/local/Cellar/macvim/8.1-153/MacVim.app/Contents/bin/../MacOS/Vim (0x10b303f38) and /usr/local/Cellar/macvim/8.1-153/MacVim.app/Contents/MacOS/Vim (0x217f5bf38). One of the two will be used. Which one is undefined.
```

If launching graphical interface, the error shows up twice.

The issue was traced to the use of '/../' in the binary path for
launching the application which somehow pollutes the library path for
the executable, finding copies of the MMBackend class in both the
absolute path and the quazi-relative path.

To resolve this, the relative component was removed from the path
resolution of the actual Vim binary by actually dropping down a
directory from the script location.  It also simplifies the
dereferencing of any link chains to that script.
2019-01-14 14:07:16 -08:00
Bram Moolenaar 6acc79f5d4 patch 8.1.0749: error message contains garbage
Problem:    Error message contains garbage. (Dominique Pelle)
Solution:   Use correct pointer to failed expression.
2019-01-14 22:53:31 +01:00
Bram Moolenaar 1be45b2ea7 patch 8.1.0748: using sprintf() instead of semsg()
Problem:    Using sprintf() instead of semsg().
Solution:   Use semsg().  Fix bug with E888. (Ozaki Kiichi, closes #3801)
2019-01-14 22:46:15 +01:00
Bram Moolenaar ce9d50df07 patch 8.1.0747: map() with a bad expression doesn't give an error
Problem:    map() with a bad expression doesn't give an error. (Ingo Karkat)
Solution:   Check for giving an error message. (closes #3800)
2019-01-14 22:22:29 +01:00
Bram Moolenaar bbee8d5122 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Problem:    Highlighting not updated with conceal and 'cursorline'. (Jason
            Franklin)
Solution:   Do not use a zero line number.  Check if 'conceallevel' is set for
            the current window.
2019-01-14 21:51:40 +01:00
Bram Moolenaar 99b1272f88 patch 8.1.0745: compiler warnings for signed/unsigned string
Problem:    Compiler warnings for signed/unsigned string.
Solution:   Remove type casts. (John Marriott)
2019-01-14 20:16:40 +01:00
Bram Moolenaar b1443b480f patch 8.1.0744: compiler warnings for signed/unsigned strings
Problem:    Compiler warnings for signed/unsigned strings.
Solution:   A few more type cast fixes.
2019-01-13 23:51:14 +01:00
Bram Moolenaar f9e3e09fdc patch 8.1.0743: giving error messages is not flexible
Problem:    Giving error messages is not flexible.
Solution:   Add semsg().  Change argument from "char_u *" to "char *", also
            for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes
            #3302)  Also make emsg() accept a "char *" argument.  Get rid of
            an enormous number of type casts.
2019-01-13 23:38:42 +01:00
Bram Moolenaar 05500ece62 patch 8.1.0742: not all Blob operations are tested
Problem:    Not all Blob operations are tested.
Solution:   Add more testing for Blob.
2019-01-13 19:10:33 +01:00
Bram Moolenaar 8c8b8bb56c patch 8.1.0741: viminfo with Blob is not tested
Problem:    Viminfo with Blob is not tested.
Solution:   Extend the viminfo test.  Fix reading a blob.  Fixed storing a
            special variable value.
2019-01-13 17:48:04 +01:00
Bram Moolenaar 8309b0559d patch 8.1.0740: Tcl test fails
Problem:    Tcl test fails.
Solution:   When the argument is empty don't give an error, instead rely on
            the error reporting higher up.
2019-01-13 16:46:22 +01:00
Bram Moolenaar 81b1ba4be5 patch 8.1.0739: text objects in not sufficiently tested
Problem:    Text objects in not sufficiently tested.
Solution:   Add a few more test cases. (Dominique Pelle, closes #3795)
2019-01-13 16:12:40 +01:00
Bram Moolenaar ecc8bc482b patch 8.1.0738: using freed memory, for loop over blob leaks memory
Problem:    Using freed memory, for loop over blob leaks memory.
Solution:   Clear pointer after freeing memory.  Decrement reference count
            after for loop over blob.
2019-01-13 16:07:21 +01:00
Bram Moolenaar e519dfd713 patch 8.1.0737: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable.
Solution:   Add initialization. (John Marriott)
2019-01-13 15:42:02 +01:00
Bram Moolenaar c0f5a78c15 patch 8.1.0736: code for Blob not sufficiently tested
Problem:    Code for Blob not sufficiently tested.
Solution:   Add more tests.  Fix uncovered crash.  Add test_null_blob().
2019-01-13 15:16:13 +01:00
Bram Moolenaar 6e5ea8d2a9 patch 8.1.0735: cannot handle binary data
Problem:    Cannot handle binary data.
Solution:   Add the Blob type. (Yasuhiro Matsumoto, closes #3638)
2019-01-12 22:47:31 +01:00
Bram Moolenaar e3c74d249a patch 8.1.0734: the hlsearch state is not stored in a session file
Problem:    The hlsearch state is not stored in a session file.
Solution:   Add "nohlsearch" if appropriate. (Jason Franklin)
2019-01-12 16:29:30 +01:00
Bram Moolenaar 2be7cb73f6 patch 8.1.0733: too many #ifdefs for the multi-byte feature
Problem:    Too many #ifdefs for the multi-byte feature.
Solution:   Tentatively always enable the multi-byte feature.  If you have a
            problem with this, please discuss on the Vim maillist.
2019-01-12 16:10:51 +01:00
Bram Moolenaar ea56e167c8 patch 8.1.0732: cannot build without the eval feature
Problem:    Cannot build without the eval feature.
Solution:   Make a copy of the sourced file name.
2019-01-12 15:15:38 +01:00
Bram Moolenaar 5f6b379ff3 patch 8.1.0731: JS encoding does not handle negative infinity
Problem:    JS encoding does not handle negative infinity.
Solution:   Add support for negative infinity for JS encoding. (Dominique
            Pelle, closes #3792)
2019-01-12 14:24:27 +01:00
Bram Moolenaar ec9d3001cf patch 8.1.0730: compiler warning for get_buf_arg() unused
Problem:    Compiler warning for get_buf_arg() unused.
Solution:   Add #ifdef. (John Marriott)
2019-01-12 13:50:31 +01:00
Bram Moolenaar 2b6185287a patch 8.1.0729: there is a SourcePre autocommand event but not a SourcePost
Problem:    There is a SourcePre autocommand event but not a SourcePost.
Solution:   Add the SourcePost autocommand event. (closes #3739)
2019-01-12 13:26:03 +01:00
Bram Moolenaar c3c3158756 patch 8.1.0728: cannot avoid breaking after a single space.
Problem:    Cannot avoid breaking after a single space.
Solution:   Add the 'p' flag to 'formatoptions'. (Tom Ryder)
2019-01-11 22:15:05 +01:00
Bram Moolenaar 44a7db4ffd patch 8.1.0727: compiler warning for sprintf() argument
Problem:    Compiler warning for sprintf() argument.
Solution:   Add type cast.
2019-01-11 20:47:31 +01:00
Bram Moolenaar 535d5b653a patch 8.1.0726: redrawing specifically for conceal feature
Problem:    Redrawing specifically for conceal feature.
Solution:   Use generic redrawing methods.
2019-01-11 20:45:36 +01:00
Bram Moolenaar 465e8b5985 patch 8.1.0725: conceal mode is not completely tested
Problem:    Conceal mode is not completely tested.
Solution:   Add tests for moving the cursor in Insert mode.
2019-01-11 20:42:28 +01:00
Bram Moolenaar 46fd6bf2b6 patch 8.1.0724: build for MinGW fails
Problem:    Build for MinGW fails.
Solution:   Avoid specifying dependencies in included makefile.
2019-01-11 19:19:44 +01:00
Bram Moolenaar ec50401e1e patch 8.1.0723: cannot easily run specific test when in src/testdir
Problem:    Cannot run specific test when in src/testdir the same was as in
            the src directory.
Solution:   Move build rule to src/testdir/Makefile.
2019-01-11 17:30:16 +01:00
Bram Moolenaar 977239ef52 patch 8.1.0722: cannot build without the virtualedit feature
Problem:    Cannot build without the virtualedit feature.
Solution:   Make getviscol2() always available.
2019-01-11 16:16:01 +01:00
Bram Moolenaar 429ab1761e patch 8.1.0721: conceal mode is not sufficiently tested
Problem:    Conceal mode is not sufficiently tested.
Solution:   Add screendump tests.  Check all 'concealcursor' values.
2019-01-11 15:54:45 +01:00
Bram Moolenaar 5b69c22fd2 patch 8.1.0720: cannot easily change the current quickfx list index
Problem:    Cannot easily change the current quickfx list index.
Solution:   Add the "idx" argument to setqflist(). (Yegappan Lakshmanan,
            closes #3701)
2019-01-11 14:50:06 +01:00
Bram Moolenaar 870ba5f6dc patch 8.1.0719: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Always build with the +visualextra feature.
2019-01-11 14:37:20 +01:00
Bram Moolenaar 402385a7f2 patch 8.1.0718: a couple compiler warnings
Problem:    A couple compiler warnings.
Solution:   Rename shadowed variables.  Add UNUSED.
2019-01-11 14:10:03 +01:00
Bram Moolenaar 6b7b7190aa patch 8.1.0717: there is no function for the ":sign jump" command
Problem:    There is no function for the ":sign jump" command.
Solution:   Add the sign_jump() function. (Yegappan Lakshmanan, closes #3780)
2019-01-11 13:42:41 +01:00
Bram Moolenaar cee9bc2e3d patch 8.1.0716: get warning message when 'completefunc' returns nothing
Problem:    Get warning message when 'completefunc' returns nothing.
Solution:   Allow for returning v:none to suppress the warning message.
            (Yasuhiro Matsumoto, closes #3789)
2019-01-11 13:02:23 +01:00
Bram Moolenaar 6f7e555f74 patch 8.1.0715: superfluous call to redraw_win_later()
Problem:    Superfluous call to redraw_win_later().
Solution:   Remove the call.
2019-01-11 11:55:16 +01:00
Bram Moolenaar c951522943 patch 8.1.0714: unessesary #if lines in GTK code
Problem:    Unessesary #if lines in GTK code.
Solution:   Remove the #if. (Ken Takata, closes #3785)
2019-01-10 22:56:30 +01:00
Bram Moolenaar 24877cf22c patch 8.1.0713: images for NSIS take up too much space
Problem:    Images for NSIS take up too much space.
Solution:   Put the images in a zip file.
2019-01-10 21:51:48 +01:00
Yee Cheng Chin 75ee1a5452 Merge pull request #832 from ichizok/fix/ci
Fix CI for ruby on Xcode 8 / Sierra
2019-01-10 03:22:35 -08:00
ichizok c06fa585b7 Fix CI
build error in if_ruby.c:

```
if_ruby.c:1069:9: error: use of unknown builtin '__builtin_alloca_with_align' [-Wimplicit-function-declaration]
        buff = ALLOCA_N(char, RSTRING_LEN(str) + 1);
               ^
/usr/local/Cellar/ruby/2.6.0/include/ruby-2.6.0/ruby/ruby.h:1666:12: note: expanded from macro 'ALLOCA_N'
    (type*)__builtin_alloca_with_align((sizeof(type)*(n)), \
           ^
if_ruby.c:1069:9: warning: cast to 'char *' from smaller integer type 'int' [-Wint-to-pointer-cast]
/usr/local/Cellar/ruby/2.6.0/include/ruby-2.6.0/ruby/ruby.h:1666:5: note: expanded from macro 'ALLOCA_N'
    (type*)__builtin_alloca_with_align((sizeof(type)*(n)), \
    ^
```

Homebrew's ruby bottle for sierra has built by Xcode 9.x, which supports
'__builtin_alloca_with_align' so 'ALLOCA_N' macro in ruby.h uses it, but
Xcode 8.x doesn't support it then causes the above error.

For workaround, should reinstall ruby from source in xcode8.3.
2019-01-10 19:48:54 +09:00
Bram Moolenaar ba7e1865b3 patch 8.1.0712: MS-Windows build instructions are a bit outdated
Problem:    MS-Windows build instructions are a bit outdated.
Solution:   Update the instructions. (Ken Takata)
2019-01-09 23:02:43 +01:00
Bram Moolenaar 1e1153600c patch 8.1.0711: test files still use function!
Problem:    Test files still use function!.
Solution:   Remove the exclamation mark.  Fix overwriting a function.
2019-01-09 23:01:02 +01:00
Bram Moolenaar c46af53410 patch 8.1.0710: when using timers may wait for job exit quite long
Problem:    When using timers may wait for job exit quite long.
Solution:   Return from ui_wait_for_chars_or_timer() when a job or channel
            needs to be handled. (Ozaki Kiichi, closes #3783)
2019-01-09 22:24:49 +01:00
Bram Moolenaar 27a472c32e patch 8.1.0709: windows are updated for every added/deleted sign
Problem:    Windows are updated for every added/deleted sign.
Solution:   Do not call update_debug_sign().  Only redraw when the line with
            the sign is visible.  (idea from neovim #9479)
2019-01-09 21:47:30 +01:00
Bram Moolenaar ae12f4bad3 patch 8.1.0708: third argument for redrawWinline() is always FALSE
Problem:    Third argument for redrawWinline() is always FALSE.
Solution:   Drop the argument. (neovim #9479)
2019-01-09 20:51:04 +01:00
Bram Moolenaar 663bc89bbb patch 8.1.0707: text property columns are not adjusted for changed indent
Problem:    Text property columns are not adjusted for changed indent.
Solution:   Adjust text properties.
2019-01-08 23:07:24 +01:00
Bram Moolenaar e12bab3144 patch 8.1.0706: tabline is not always redrawn
Problem:    Tabline is not always redrawn when something that is used in
            'tabline' changes.
Solution:   Add ":redrawtabline" so that a plugin can at least cause the
            redraw when needed.
2019-01-08 22:02:56 +01:00
Bram Moolenaar 6d4470b0e9 patch 8.1.0705: :colorscheme isn't tested enough
Problem:    :colorscheme isn't tested enough
Solution:   Improve test coverage of :colorscheme. (Dominique Pelle, closes
            #3777)  Remove unnecessary sleep.
2019-01-08 21:05:51 +01:00
Bram Moolenaar f62fc316a2 patch 8.1.0704: building with Ruby 2.6 gives compiler warnings
Problem:    Building with Ruby 2.6 gives compiler warnings.
Solution:   Define a stub for rb_ary_detransient. (Ozaki Kiichi, closes #3779)
2019-01-08 20:29:32 +01:00
Bram Moolenaar 8aef43b66c patch 8.1.0703: compiler warnings with 64-bit compiler
Problem:    Compiler warnings with 64-bit compiler.
Solution:   Change types, add type casts. (Mike Williams)
2019-01-08 20:14:35 +01:00
Bram Moolenaar b589f95b38 patch 8.1.0702: ":sign place" only uses the current buffer
Problem:    ":sign place" only uses the current buffer.
Solution:   List signs for all buffers when there is no buffer argument.
            Fix error message for invalid buffer name in sign_place().
            (Yegappan Lakshmanan, closes #3774)
2019-01-07 22:10:00 +01:00
Bram Moolenaar d730c8e297 patch 8.1.0701: sign message not translated and inconsistent spacing
Problem:    Sign message not translated and inconsistent spacing.
Solution:   Add _() for translation.  Add a space. (Ken Takata)  Also use
            MSG_BUF_LEN instead of BUFSIZ.
2019-01-07 21:16:53 +01:00
Yee Cheng Chin ddef47160a Merge remote-tracking branch 'vim/master' 2019-01-06 23:51:00 -08:00
Bram Moolenaar 04b4e1a424 patch 8.1.0700: using "gt" sometimes does not redraw a tab
Problem:    Using "gt" sometimes does not redraw a tab. (Jason Franklin)
Solution:   Always set must_redraw in redraw_all_later().
2019-01-06 22:22:07 +01:00
Bram Moolenaar 6d11f3b891 patch 8.1.0699: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable. (Tony Mechelynck)
Solution:   Add a dummy init.
2019-01-06 17:44:38 +01:00
Bram Moolenaar bf3250a8ad patch 8.1.0698: clearing the window is used too often
Problem:    Clearing the window is used too often, causing the command line
            to be cleared when opening a tab. (Miroslav Koškár)
Solution:   Use NOT_VALID instead of CLEAR.  (suggested by Jason Franklin,
            closes #630)  Also do this for a few other places where clearing
            the screen isn't really needed.
2019-01-06 17:25:29 +01:00
Bram Moolenaar b328cca254 patch 8.1.0697: ":sign place" requires the buffer argument
Problem:    ":sign place" requires the buffer argument.
Solution:   Make the argument optional.  Also update the help and clean up the
            sign test. (Yegappan Lakshmanan, closes #3767)
2019-01-06 16:24:01 +01:00
Bram Moolenaar 8ad16da729 patch 8.1.0696: when test_edit fails 'insertmode' may not be reset
Problem:    When test_edit fails 'insertmode' may not be reset and the next
            test may get stuck. (James McCoy)
Solution:   Always reset 'insertmode' after executing a test.  Avoid that an
            InsertCharPre autocommand or a 'complete' function can change the
            state. (closes #3768)
2019-01-06 15:29:57 +01:00
Bram Moolenaar f42b45d719 patch 8.1.0695: internal error when using :popup
Problem:    Internal error when using :popup.
Solution:   When a menu only exists in Terminal mode give an error. (Naruhiko
            Nishino, closes #3765)
2019-01-06 13:11:05 +01:00
Bram Moolenaar 4614f53e0f patch 8.1.0694: when using text props may free memory that is not allocated
Problem:    When using text props may free memory that is not allocated.
            (Andy Massimino)
Solution:   Allocate the line when adjusting text props. (closes #3766)
2019-01-06 12:54:55 +01:00
Bram Moolenaar f780b8a1c1 patch 8.1.0693: channel test fails sometimes
Problem:    Channel test fails sometimes.
Solution:   Avoid race condition.
2019-01-05 00:35:22 +01:00
Bram Moolenaar 8b62d87e42 patch 8.1.0692: if a buffer was deleted a channel can't write to it
Problem:    If a buffer was deleted a channel can't write to it.
Solution:   When the buffer exists but was unloaded, prepare it for writing.
            (closes #3764)
2019-01-05 00:02:57 +01:00
Bram Moolenaar 4164bb204e patch 8.1.0691: text properties are not adjusted for :substitute
Problem:    Text properties are not adjusted for :substitute.
Solution:   Adjust text properties as well as possible.
2019-01-04 23:09:49 +01:00
Bram Moolenaar 21b5038e02 patch 8.1.0690: setline() and setbufline() do not clear text properties
Problem:    setline() and setbufline() do not clear text properties.
Solution:   Clear text properties when setting the text.
2019-01-04 18:07:24 +01:00
Bram Moolenaar 7f1664e392 patch 8.1.0689: undo with text properties not tested
Problem:    Undo with text properties not tested.
Solution:   Add a test function.
2019-01-04 17:21:24 +01:00
Bram Moolenaar ccae4672fd patch 8.1.0688: text properties are not restored by undo
Problem:    Text properties are not restored by undo.
Solution:   Also save text properties for undo.
2019-01-04 15:09:57 +01:00
Bram Moolenaar 6d3a1940be patch 8.1.0687: sentence text object in Visual mode is not tested
Problem:    Sentence text object in Visual mode is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3758)
2019-01-03 23:10:32 +01:00
Bram Moolenaar 5823f84dd0 patch 8.1.0686: when 'y' is in 'cpoptions' yanking for the clipboard changes redo
Problem:    When 'y' is in 'cpoptions' yanking for the clipboard changes redo.
Solution:   Do not use the 'y' flag when "gui_yank" is TRUE. (Andy Massimino,
            closes #3760)
2019-01-03 22:58:08 +01:00
Bram Moolenaar f2d79fa92d patch 8.1.0685: get_buf_tv() is named inconsistently
Problem:    get_buf_tv() is named inconsistently.
Solution:   Rename it to tv_get_buf(). (Yegappan Lakshmanan, closes #3759)
2019-01-03 22:19:27 +01:00
Bram Moolenaar 4b7214ea78 patch 8.1.0684: warnings from 64-bit compiler
Problem:    Warnings from 64-bit compiler.
Solution:   Add type casts. (Mike Williams)
2019-01-03 21:55:32 +01:00
Bram Moolenaar 637532b3c0 patch 8.1.0683: spell highlighting does not always end
Problem:    Spell highlighting does not always end. (Gary Johnson)
Solution:   Also reset char_attr when spell errors are highlighted.
2019-01-03 21:44:40 +01:00
Bram Moolenaar 196d157f12 patch 8.1.0682: text properties not adjusted when backspacing replaced text
Problem:    Text properties are not adjusted when backspacing replaced text.
Solution:   Keep text properties on text restored in replace mode.
2019-01-02 23:47:18 +01:00
Bram Moolenaar 33c8ca923e patch 8.1.0681: text properties as not adjusted for deleted text
Problem:    Text properties as not adjusted for deleted text.
Solution:   Adjust text properties when backspacing to delete text.
2019-01-02 18:00:27 +01:00
Bram Moolenaar c85ffc9dab patch 8.1.0680: not easy to see what features are unavailable
Problem:    Not easy to see what features are unavailable.
Solution:   Highlight disabled features in the :version output. (Nazri Ramliy,
            closes #3756)
2019-01-02 17:26:35 +01:00
Bram Moolenaar 2cbc1a02cb patch 8.1.0679: sign functions do not take buffer argument as documented
Problem:    Sign functions do not take buffer argument as documented.
Solution:   Use get_buf_tv(). (Yegappan Lakshmanan, closes #3755)
2019-01-02 13:40:31 +01:00
Bram Moolenaar 44746aa1eb patch 8.1.0678: text properties as not adjusted for inserted text
Problem:    Text properties as not adjusted for inserted text.
Solution:   Adjust text properties when inserting text.
2019-01-02 00:02:11 +01:00
Bram Moolenaar 866f355814 patch 8.1.0677: look-behind match may use the wrong line number
Problem:    Look-behind match may use the wrong line number. (Dominique Pelle)
Solution:   Use the line number in regsave instead of the one in behind_pos,
            we may be looking at the previous line. (closes #3749)
2019-01-01 22:19:08 +01:00
Bram Moolenaar 5e53ac00a2 patch 8.1.0676: textprop screendump test fails
Problem:    Textprop screendump test fails.
Solution:   Add missing changes.
2019-01-01 20:31:31 +01:00
Bram Moolenaar b9c67a51c1 patch 8.1.0675: text property column in screen columns is not practical
Problem:    Text property column is screen columns is not practical.
Solution:   Use byte values for the column.
2019-01-01 19:49:20 +01:00
Bram Moolenaar 4c05fa08c9 Update runtime files 2019-01-01 15:32:17 +01:00
Bram Moolenaar 6d5b4f566a patch 8.1.0674: leaking memory when updating a single line
Problem:    Leaking memory when updating a single line.
Solution:   Do not call start_search_hl() twice.
2019-01-01 15:15:47 +01:00
Bram Moolenaar bbea47075c patch 8.1.0673: functionality for signs is spread out over several files
Problem:    Functionality for signs is spread out over several files.
Solution:   Move most of the sign functionality into sign.c. (Yegappan
            Lakshmanan, closes #3751)
2019-01-01 13:20:31 +01:00
Bram Moolenaar 9067cd6cdf patch 8.1.0672: the Lua interface doesn't know about v:null
Problem:    The Lua interface doesn't know about v:null.
Solution:   Add Lua support for v:null. (Uji, closes #3744)
2019-01-01 00:41:54 +01:00
Bram Moolenaar e1e714ef0d patch 8.1.0671: cursor in the wrong column after auto-formatting
Problem:    Cursor in the wrong column after auto-formatting.
Solution:   Check for deleting more spaces than adding. (closes #3748)
2018-12-31 23:58:24 +01:00
Bram Moolenaar 3d631cb0b3 patch 8.1.0670: macro for popup menu width is unused
Problem:    Macro for popup menu width is unused.
Solution:   Remove it. (Hirohito Higashi)
2018-12-31 22:09:56 +01:00
Bram Moolenaar a355652ea5 patch 8.1.0669: the ex_sign() function is too long
Problem:    The ex_sign() function is too long.
Solution:   Refactor the function.  Add a bit more testing. (Yegappan
            Lakshmanan, closes #3745)
2018-12-31 22:02:29 +01:00
Bram Moolenaar c0676bab92 patch 8.1.0668: no test for overstrike mode in the command line
Problem:    No test for overstrike mode in the command line.
Solution:   Add a test. (Dominique Pelle, closes #3742)
2018-12-31 21:03:02 +01:00
Bram Moolenaar 2f21fa8743 patch 8.1.0667: textprop test leaves file behind
Problem:    Textprop test leaves file behind.
Solution:   Delete the file. (Dominique Pelle, closes #3743)
2018-12-31 20:05:56 +01:00
Bram Moolenaar fb2f7aa982 patch 8.1.0666: text property test fails
Problem:    Text property test fails.
Solution:   Update screenshot.
2018-12-31 14:34:05 +01:00
Bram Moolenaar c6d86dccc4 patch 8.1.0665: text property display wrong when 'spell' is set
Problem:    Text property display wrong when 'spell' is set. (Dominique Pelle)
Solution:   Remove unnecessary assignment to char_attr.  Combine attributes if
            needed.  Add a screenshot test.
2018-12-31 13:57:36 +01:00
Bram Moolenaar af0839acec patch 8.1.0664: configure "fail-if-missing" does not apply to enable-gui
Problem:    Configure "fail-if-missing" does not apply to the enable-gui
            argument. (Rhialto)
Solution:   Make configure fail if a GUI was specifified and "fail-if-missing"
            is enabled and the GUI test fails.
2018-12-30 22:55:47 +01:00
Bram Moolenaar 8caa10a8ec patch 8.1.0663: text property display wrong when 'number' is set
Problem:    Text property display wrong when 'number' is set. (Dominique
            Pelle)
Solution:   Compare with "vcol"  instead of "col".
2018-12-30 22:07:40 +01:00
Bram Moolenaar ef0a1d5ed3 patch 8.1.0662: needlessly searching for tilde in string
Problem:    Needlessly searching for tilde in string.
Solution:   Only check the first character. (James McCoy, closes #3734)
2018-12-30 11:38:57 +01:00
Bram Moolenaar a8bfa1727a patch 8.1.0661: clipboard regexp might be used recursively
Problem:    Clipboard regexp might be used recursively.
Solution:   Check for recursive use and bail out.
2018-12-29 22:28:46 +01:00
Bram Moolenaar 1ea88a3e12 patch 8.1.0660: sign_cleanup() may leak memory
Problem:    sign_cleanup() may leak memory.
Solution:   Free the group name before returning.  Add a few more tests.
            (Yegappan Lakshmanan)
2018-12-29 21:00:27 +01:00
Bram Moolenaar ced198d4b4 patch 8.1.0659: build failure without the sign feature
Problem:    Build failure without the sign feature.
Solution:   Put the sign struct declarations outside of the #ifdef.
2018-12-29 20:04:40 +01:00
Bram Moolenaar 7d83bf4f2b patch 8.1.0658: deleting signs and completion for :sign is insufficient
Problem:    Deleting signs and completion for :sign is insufficient.
Solution:   Add deleting signs in a specified or any group from the current
            cursor location.  Add group and priority to sign command
            completion. Add tests for different sign unplace commands. Update
            help text.  Add tests for sign jump with group. Update help for
            sign jump. (Yegappan Lakshmanan, closes #3731)
2018-12-29 18:53:55 +01:00
Bram Moolenaar 01e51e5b30 patch 8.1.0657: get error for using regexp recursively
Problem:    Get error for using regexp recursively. (Dominique Pelle)
Solution:   Do no check if connection is desired.
2018-12-29 13:09:46 +01:00
Bram Moolenaar c0c7549687 patch 8.1.0656: trying to reconnect to X server may cause problems
Problem:    Trying to reconnect to X server may cause problems.
Solution:   Do no try reconnecting when exiting. (James McCoy)
2018-12-29 11:03:23 +01:00
Bram Moolenaar b56ac049ea patch 8.1.0655: when appending a line text property flags are not added
Problem:    When appending a line text property flags are not added.
Solution:   Add text properties to a newly added line.
2018-12-28 23:22:40 +01:00
Bram Moolenaar c1a9bc1a72 patch 8.1.0654: when deleting a line text property flags are not adjusted
Problem:    When deleting a line text property flags are not adjusted.
Solution:   Adjust text property flags in preceding and following lines.
2018-12-28 21:59:29 +01:00
Bram Moolenaar 3de8c2d1f0 patch 8.1.0653: arglist test fails on MS-windows
Problem:    Arglist test fails on MS-windows.
Solution:   Only use a file name with a double quote on Unix.
2018-12-28 19:29:35 +01:00
Bram Moolenaar 6d9e71ad99 patch 8.1.0652: freeing memory for balloon eval too early
Problem:    Freeing memory for balloon eval too early.
Solution:   Store the pointer in BalloonEval and free it later. (Yasuhiro
            Matsumoto, closes #3725)
2018-12-28 19:13:34 +01:00
Bram Moolenaar 2ac372ccee patch 8.1.0651: :args \"foo works like :args without argument
Problem:    :args \"foo works like :args without argument.
Solution:   Fix check for empty argument. (closes #3728)
2018-12-28 19:06:47 +01:00
Bram Moolenaar 54948183d2 patch 8.1.0650: command line argument -q [errorfile] is not tested
Problem:    Command line argument -q [errorfile] is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3730)
2018-12-28 18:32:56 +01:00
Bram Moolenaar b7a7e039b4 patch 8.1.0649: setjmp() variables defined globally are used in one file
Problem:    setjmp() variables defined globally are used in one file.
Solution:   Move the declarations to that file.
2018-12-28 17:01:59 +01:00
Bram Moolenaar c8c8849267 Update runtime files. 2018-12-27 23:59:26 +01:00
Bram Moolenaar 5976f8ff00 patch 8.1.0648: custom operators can't act upon a forced motion
Problem:    Custom operators can't act upon a forced motion. (Christian
            Wellenbrock)
Solution:   Add the forced motion to the mode() result. (Christian Brabandt,
            closes #3490)
2018-12-27 23:44:44 +01:00
Bram Moolenaar d385b5d329 patch 8.1.0647: MS-Windows: balloon_show() does not handle wide characters
Problem:    MS-Windows: balloon_show() does not handle wide characters.
Solution:   Use CreateWindowExW(). (Yasuhiro Matsumoto, closes #3708)
2018-12-27 22:43:08 +01:00
Bram Moolenaar b09c684195 patch 8.1.0646: cannot build with Ruby 2.6.0
Problem:    Cannot build with Ruby 2.6.0.
Solution:   Add rb_ary_detransient(). (Ozaki Kiichi, closes #3724)
2018-12-27 22:11:01 +01:00
Bram Moolenaar 06d6260323 patch 8.1.0645: Coverity warns for possible use of NULL pointer
Problem:    Coverity warns for possible use of NULL pointer.
Solution:   Check return value of vterm_obtain_screen().
2018-12-27 21:27:03 +01:00
Yee Cheng Chin 3dddaa4ac2 Merge pull request #828 from ychin/fix_pre_mojave_notitlebar
Fix borderless (MMNoTitleBarWindow) mode in pre-Mojave renderers
2018-12-27 15:06:02 +08:00
Yee Cheng Chin 559a247d34 Fix borderless (MMNoTitleBarWindow) mode in pre-Mojave renderers
In the legacy renderer, the view gets invalidated frequently in both
non-native fullscreen and no-titlebar modes. Fix no-titlebar mode to
auto-set CGLayer similar to non-native fullscreen so it would work
properly.

This doesn't affect 10.14 Mojave or above as it uses a newer renderer
that doesn't have this issue.

Fix #490
2018-12-27 12:53:46 +08:00
Yee Cheng Chin ff5cec63ad Merge pull request #827 from ychin/scrollbar_update_fixes
Fix scrollbar to update properly when switching Vim windows
2018-12-27 10:53:06 +08:00
Yee Cheng Chin bbc6060ece Fix scrollbar to update properly when switching Vim windows
Previously, showing/hiding scrollbars didn't call placeScrollbars which
was why sometimes when certain Vim commands that would show/hide Vim
scrollbars get called, the scrollbar positions/sizes were not updated
properly, leaving them with the wrong size.

Fix this by adding a new pending flag so placeScrollbars only gets
called once per update, and make sure showing/hiding scrollbars call it.

Fix #802
2018-12-27 10:24:16 +08:00
Bram Moolenaar 6436cd83f9 patch 8.1.0644: finding next sign ID is inefficient
Problem:    Finding next sign ID is inefficient.
Solution:   Add next_sign_id. (Yegappan Lakshmanan, closes #3717)
2018-12-27 00:28:33 +01:00
Bram Moolenaar 00b1e04165 patch 8.1.0643: computing byte offset wrong
Problem:    Computing byte offset wrong. (Bjorn Linse)
Solution:   Use the right variable for array index.
2018-12-26 23:42:10 +01:00
Bram Moolenaar e6fdf79980 patch 8.1.0642: swapinfo() leaks memory
Problem:    swapinfo() leaks memory.
Solution:   Avoid allocating the strings twice.
2018-12-26 22:57:42 +01:00
Bram Moolenaar c57463c9c6 patch 8.1.0641: no check for out-of-memory when converting regexp
Problem:    No check for out-of-memory when converting regexp.
Solution:   Bail out when lalloc() returns NULL. (John Marriott)
2018-12-26 22:04:41 +01:00
Bram Moolenaar 548e598573 patch 8.1.0640: get E14 while typing command :tab with 'incsearch' set
Problem:    Get E14 while typing command :tab with 'incsearch' set.
Solution:   Do not give an error when looking for the command. (Yasuhiro
            Higashi)
2018-12-26 21:45:00 +01:00
Yee Cheng Chin d8bc23f9c6 Merge pull request #826 from ychin/fix_vim_guioption-k
Fix Vim breaking guioption 'k' initialization for non-GTK
2018-12-26 19:28:23 +08:00
Yee Cheng Chin ad0e4f993b Fix Vim breaking guioption 'k' initialization for non-GTK
Recent Vim change (8.1.0626) broke Vim GUI initialization if guioption
'k' is set, by passing the wrong value to the mustset parameter. Patch
around it by making it initialize with the right one in MacVim.
2018-12-26 19:10:06 +08:00
Yee Cheng Chin 1a344ac41f Merge remote-tracking branch 'vim/master' 2018-12-26 19:04:45 +08:00
Bram Moolenaar 8cf734e024 patch 8.1.0639: text properties test fails on MS-Windows
Problem:    text properties test fails on MS-Windows
Solution:   Set fileformat to "unix".
2018-12-26 01:09:00 +01:00
Bram Moolenaar 48f88ac85b patch 8.1.0638: text property highlighting is off by one column
Problem:    Text property highlighting is off by one column. (Bjorn Linse)
Solution:   Update text property highlighting earlier.  Let it overrule syntax
            highlighting.
2018-12-26 00:25:20 +01:00
Bram Moolenaar 4604fbbbff patch 8.1.0637: nsis file no longer used
Problem:    Nsis file no longer used.
Solution:   Remove the file. (Ken Takata)
2018-12-25 23:37:02 +01:00
Bram Moolenaar b413d2e6a8 patch 8.1.0636: line2byte() gives wrong values with text properties
Problem:    line2byte() gives wrong values with text properties. (Bjorn Linse)
Solution:   Compute byte offsets differently when text properties were added.
            (closes #3718)
2018-12-25 23:15:46 +01:00
Bram Moolenaar e38197d50f patch 8.1.0635: Coverity complains about null pointer use
Problem:    Coverity complains about null pointer use.
Solution:   Avoid using a null pointer.
2018-12-24 23:35:13 +01:00
Bram Moolenaar e3d31b02a5 patch 8.1.0634: text properties cannot cross line boundaries
Problem:    Text properties cannot cross line boundaries.
Solution:   Support multi-line text properties.
2018-12-24 23:07:04 +01:00
Bram Moolenaar cd929f7ba8 patch 8.1.0633: crash when out of memory while opening a terminal window
Problem:    Crash when out of memory while opening a terminal window.
Solution:   Handle out-of-memory more gracefully.
2018-12-24 21:38:45 +01:00
Bram Moolenaar 7a2d9892b7 patch 8.1.0632: using sign group names is inefficient
Problem:    Using sign group names is inefficient.
Solution:   Store group names in a hash table and use a reference to them.
            Also remove unnecessary use of ":exe" from the tests.  (Yegappan
            Lakshmanan, closes #3715)
2018-12-24 20:23:49 +01:00
Bram Moolenaar d6024e2dd4 patch 8.1.0631: test for :stop fails on Arch
Problem:    Test for :stop fails on Arch.
Solution:   Check five lines for the expected output. (closes #3714)
2018-12-24 19:15:20 +01:00
Bram Moolenaar a42df5934b patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Problem:   "wincmd p" does not work after using an autocmd window.
Solution:   Store "prevwin" in aco_save_T. (Christian Brabandt, closes #3690)
2018-12-24 00:22:39 +01:00
Bram Moolenaar 5d24a2257e patch 8.1.0629: "gn" selects the wrong text with a multi-line match
Problem:    "gn" selects the wrong text with a multi-line match.
Solution:   Get the end position from searchit() directly. (closes #3695)
2018-12-23 19:10:09 +01:00
Bram Moolenaar c33181c44c Ignore output files from indent tests. 2018-12-23 15:43:28 +01:00
Bram Moolenaar 80dae04d69 patch 8.1.0628: Compiler warning on MS-Windows.
Problem:    Compiler warning on MS-Windows.
Solution:   Add type cast. (Mike Williams)
2018-12-23 13:36:40 +01:00
Bram Moolenaar 9123c0b31a patch 8.1.0627: Python cannot handle function name of script-local function
Problem:    Python cannot handle function name of script-local function.
Solution:   Use <SNR> instead of the special byte code. (Ozaki Kiichi, closes
            #3681)
2018-12-22 18:59:06 +01:00
Bram Moolenaar 4814ccbdf0 patch 8.1.0626: MS-Windows: no resize to fit parent when using --windowid
Problem:    MS-Windows: no resize to fit parent when using --windowid.
Solution:   Pass FALSE for "mustset" in gui_set_shellsize(). (Agorgianitis
            Loukas, closes #3616)
2018-12-22 18:44:53 +01:00
Bram Moolenaar 81df63537e patch 8.1.0625: MS-Windows: terminal test fails in white console
Problem:    MS-Windows: terminal test fails in white console.
Solution:   Accept both white and black background colors.
2018-12-22 18:25:30 +01:00
Bram Moolenaar 39b5d8b514 patch 8.1.0624: overuling CONF_ARGS from the environment still does not work
Problem:    Overuling CONF_ARGS from the environment still does not work. (Tony
            Mechelynck)
Solution:   Add back CONF_ARGS next to the new numbered ones.
2018-12-22 17:27:15 +01:00
Bram Moolenaar 3d1491ed23 patch 8.1.0623: iterating through window frames is repeated
Problem:    Iterating through window frames is repeated.
Solution:   Define FOR_ALL_FRAMES. (Yegappan Lakshmanan)
2018-12-22 17:07:50 +01:00
Bram Moolenaar 9752c72f49 patch 8.1.0622: adding quickfix items marks items as valid errors
Problem:    Adding quickfix items marks items as valid errors. (Daniel Hahler)
Solution:   Check when items are valid. (Yegappan Lakshmanan, closes #3683,
            closes #3633)
2018-12-22 16:49:34 +01:00
Bram Moolenaar ef3c6a5b02 patch 8.1.0621: terminal debugger does not handle unexpected debugger exit
Problem:    Terminal debugger does not handle unexpected debugger exit.
Solution:   Check for debugger job ended and close unused buffers. (Damien)
2018-12-22 15:14:49 +01:00
Bram Moolenaar 3ac55c8644 patch 8.1.0620: overuling CONF_ARGS from the environment no longer works
Problem:    Overuling CONF_ARGS from the environment no longer works. (Tony
            Mechelynck)
Solution:   Do not define any CONF_ARGS by default.
2018-12-22 14:59:03 +01:00
Bram Moolenaar 461a7fcfce patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Problem:    :echomsg and :echoerr do not handle List and Dict like :echo does.
            (Daniel Hahler)
Solution:   Be more tolerant about the expression result type.
2018-12-22 13:28:07 +01:00
Yee Cheng Chin 6ae2e37d00 Merge remote-tracking branch 'vim/master' 2018-12-22 00:41:01 -08:00
Bram Moolenaar 528ccfbaa1 patch 8.1.0618: term_getjob() does not return v:null as documented
Problem:    term_getjob() does not return v:null as documented.
Solution:   Do return v:null. (Damien)  Add a test.
2018-12-21 20:55:22 +01:00
Bram Moolenaar 1916673a16 patch 8.1.0617: NSIS installer gets two files from the wrong directory
Problem:    NSIS installer gets two files from the wrong directory.
Solution:   Change ${VIMRT} to "..\".
2018-12-21 17:59:33 +01:00
Bram Moolenaar af610b8e66 patch 8.1.0616: NSIS installer is outdated
Problem:    NSIS installer is outdated.
Solution:   Use modern syntax, MUI2 and make it work better. Add translations.
            (Ken Takata, closes #3501)
2018-12-21 16:22:50 +01:00
Bram Moolenaar d155d7a851 patch 8.1.0615: get_tv function names are not consistent
Problem:    Get_tv function names are not consistent.
Solution:   Rename to tv_get.
2018-12-21 16:04:21 +01:00
Bram Moolenaar 162b71479b patch 8.1.0614: placing signs can be complicated
Problem:    Placing signs can be complicated.
Solution:   Add functions for defining and placing signs.  Introduce a group
            name to avoid different plugins using the same signs. (Yegappan
            Lakshmanan, closes #3652)
2018-12-21 15:17:36 +01:00
Bram Moolenaar 48f377a476 patch 8.1.0613: when executing an insecure function the secure flag is stuck
Problem:    When executing an insecure function the secure flag is stuck.
            (Gabriel Barta)
Solution:   Restore "secure" instead of decrementing it. (closes #3705)
2018-12-21 13:03:28 +01:00
Bram Moolenaar 9d302ad4e3 patch 8.1.0612: cannot use two global runtime dirs with configure
Problem:    Cannot use two global runtime dirs with configure.
Solution:   Support a comma in --with-global-runtime. (James McCoy,
            closes #3704)
2018-12-21 11:48:51 +01:00
Bram Moolenaar a79fd56923 patch 8.1.0611: crash when using terminal with long composing characters
Problem:    Crash when using terminal with long composing characters.
Solution:   Make space for all characters. (Yasuhiro Matsumoto, closes #3619,
            closes #3703)
2018-12-20 20:47:32 +01:00
Yee Cheng Chin 3a352a1e75 Merge pull request #822 from shayneholmes/fix/interprocess-communication-in-mojave
Add AppleEvents usage description to manifest
2018-12-19 14:35:50 -08:00
Bram Moolenaar 6dc6703295 patch 8.1.0610: MS-Windows ctags file list differs from Unix
Problem:    MS-Windows ctags file list differs from Unix.
Solution:   Define TAGS_FILES in the common makefile. (partly by Ken Takata)
2018-12-19 21:05:57 +01:00
Bram Moolenaar 9d5c84a08f patch 8.1.0609: MS-Windows: unused variable, depending on the Ruby version
Problem:    MS-Windows: unused variable, depending on the Ruby version.
Solution:   Put ruby_sysinit and NtInitialize inside #ifdef and make them
            consistent. (Ken Takata)
2018-12-19 20:48:46 +01:00
Shayne Holmes b778645e6b Clarify AppleEvents permission message
State _why_ the permission is needed, instead of defining the
permission.
2018-12-19 07:32:35 -08:00
Yee Cheng Chin f35d4bd58f Merge pull request #823 from ychin/runtime-author-cleanup
Clean up runtime files documentation, author, maintainer, dates
2018-12-18 23:12:01 -08:00
Bram Moolenaar e667779013 patch 8.1.0608: coverals is not updating
Problem:    Coverals is not updating.
Solution:   Adjust path in Travis config.
2018-12-18 22:04:05 +01:00
Bram Moolenaar c447d8d33f patch 8.1.0607: proto files are not in sync with the source code
Problem:    Proto files are not in sync with the source code.
Solution:   Update the proto files.
2018-12-18 21:56:28 +01:00
Bram Moolenaar 9d87a37ee9 Update runtime files. 2018-12-18 21:41:50 +01:00
Yee Cheng Chin b3584bfc8d Clean up runtime files documentation, author, maintainer, dates
Clean up some of the runtime files' outdated documentation and comments.
2018-12-17 22:54:29 -08:00
Shayne Holmes 8818286aaa Add AppleEvents usage description to manifest
MacOS Mojave requires that applications provide the
NSAppleEventsUsageDescription key in their manifest to communicate with
other applications via AppleEvents.

Fixes #821.
2018-12-17 12:09:00 -08:00
Bram Moolenaar a86187b9cd patch 8.1.0606: 'cryptmethod' defaults to a very old method
Problem:    'cryptmethod' defaults to a very old method.
Solution:   Default to "blowfish2", it is now widely available.
2018-12-16 18:20:00 +01:00
Bram Moolenaar 6403bcdaf4 patch 8.1.0605: running make in the top directory echoes a comment
Problem:    Running make in the top directory echoes a comment.
Solution:   Prefix with @. (closes #3698)
2018-12-16 16:48:47 +01:00
Bram Moolenaar 9eb76af451 patch 8.1.0604: autocommand test fails on MS-Windows
Problem:    Autocommand test fails on MS-Windows.
Solution:   Use pathcmp() instead of strcmp() to check if a directory differs.
2018-12-16 16:30:21 +01:00
Bram Moolenaar e751a5f531 patch 8.1.0603: the :stop command is not tested
Problem:    The :stop command is not tested.
Solution:   Test :stop using a terminal window.
2018-12-16 16:16:10 +01:00
Bram Moolenaar 2caad3fbbd patch 8.1.0602: DirChanged is also triggered when directory didn't change
Problem:    DirChanged is also triggered when the directory didn't change.
            (Daniel Hahler)
Solution:   Compare the current with the new directory. (closes #3697)
2018-12-16 15:38:02 +01:00
Bram Moolenaar 4efe73b478 patch 8.1.0601: a few compiler warnings
Problem:    A few compiler warnings.
Solution:   Add type casts. (Mike Williams)
2018-12-16 14:37:39 +01:00
Yee Cheng Chin ce1f2c3f35 Merge pull request #820 from benjifisher/master
mvim: update credits
2018-12-15 13:54:40 -08:00
Bram Moolenaar d80232be54 patch 8.1.0600: channel test is flaky
Problem:    Channel test is flaky.
Solution:   Add test to list of flaky tests.
2018-12-15 17:46:23 +01:00
Bram Moolenaar eeed665b0e patch 8.1.0599: without the +eval feature the indent tests don't work
Problem:    Without the +eval feature the indent tests don't work.
Solution:   Skip the body of the tests.
2018-12-15 17:43:42 +01:00
Bram Moolenaar 72846cfa76 patch 8.1.0598: indent tests may use the wrong Vim binary
Problem:    Indent tests may use the wrong Vim binary.
Solution:   Pass in the just built Vim binary.
2018-12-15 17:23:18 +01:00
Benji Fisher 92168a59cf mvim: update credits
Do not credit/blame me for the current version.
2018-12-15 11:05:36 -05:00
Bram Moolenaar acecb3b935 patch 8.1.0597: cannot run test_libvterm from the top directory
Problem:    Cannot run test_libvterm from the top directory.
Solution:   Add test target in toplevel Makefile.
2018-12-15 16:19:50 +01:00
Bram Moolenaar 21e551cce2 patch 8.1.0596: not all parts of printf() are tested
Problem:    Not all parts of printf() are tested.
Solution:   Add a few more test cases. (Dominique Pelle, closes #3691)
2018-12-15 16:08:56 +01:00
Bram Moolenaar a9659e0da4 patch 8.1.0595: libvterm tests are not run with coverage
Problem:    Libvterm tests are not run with coverage.
Solution:   Adjust the Travis config.  Show the actually run commands.
2018-12-15 15:59:32 +01:00
Bram Moolenaar 8b321d6a52 patch 8.1.0594: libvterm tests fail to run on Mac
Problem:    Libvterm tests fail to run on Mac.
Solution:   Only run libvterm tests on Linux.
2018-12-15 15:39:28 +01:00
Bram Moolenaar 37e3edce20 patch 8.1.0593: illegal memory access in libvterm test
Problem:    Illegal memory access in libvterm test.
Solution:   Fix off-by-one error.
2018-12-15 14:49:34 +01:00
Bram Moolenaar 471f658135 patch 8.1.0592: the libvterm tests are not run as part of Vim tests
Problem:    The libvterm tests are not run as part of Vim tests.
Solution:   Add testing libvterm.
2018-12-15 14:24:39 +01:00
Bram Moolenaar 6c8dd39df9 patch 8.1.0591: channel sort test is flaky
Problem:    Channel sort test is flaky.
Solution:   Do not check if the job is running, it may have be done very fast.
2018-12-14 22:42:13 +01:00
Bram Moolenaar cd1a62d468 patch 8.1.0590: when a job ends the closed channels are not handled
Problem:    When a job ends the closed channels are not handled.
Solution:   When a job is detected to have ended, check the channels again.
            (closes #3530)
2018-12-14 21:32:02 +01:00
Bram Moolenaar 142a975815 patch 8.1.0589: compilation error in gvimext.cpp
Problem:    Compilation error in gvimext.cpp.
Solution:   Return a value.  Also fix using uninitialized variable.
2018-12-14 19:54:39 +01:00
Bram Moolenaar 06b056e110 patch 8.1.0588: cannot define a sign with space in the text
Problem:    Cannot define a sign with space in the text.
Solution:   Allow for escaping characters. (Ben Jackson, closes #2967)
2018-12-14 19:37:08 +01:00
Bram Moolenaar 06d4c4c818 patch 8.1.0587: GvimExt: realloc() failing is not handled properly
Problem:    GvimExt: realloc() failing is not handled properly.
Solution:   Check for NULL return. (Jan-Jaap Korpershoek, closes #3689)
2018-12-14 19:20:02 +01:00
Bram Moolenaar eae8ae1b2b patch 8.1.0586: :digraph output is not easy to read
Problem:    :digraph output is not easy to read.
Solution:   Add highlighting for :digraphs. (Marcin Szamotulski, closes #3572)
            Also add section headers for :digraphs!.
2018-12-14 18:53:02 +01:00
Bram Moolenaar 56242f2b08 patch 8.1.0585: undo test may fail on MS-Windows
Problem:    Undo test may fail on MS-Windows.
Solution:   Also handle lower case drive letters.
2018-12-14 15:48:48 +01:00
Bram Moolenaar 5f5e203c92 patch 8.1.0584: with search CTRL-L does not pick up composing characters
Problem:    With search CTRL-L does not pick up composing characters.
Solution:   Check for composing characters. (Christian Brabandt, closes #3682)
            [code change was accidentally included in 8.1.0579]
2018-12-14 15:47:03 +01:00
Bram Moolenaar 8f66717a1f patch 8.1.0583: using illogical name for get_dict_number()/get_dict_string()
Problem:    Using illogical name for get_dict_number()/get_dict_string().
Solution:   Rename to start with dict_.
2018-12-14 15:38:31 +01:00
Bram Moolenaar fb95e212a2 patch 8.1.0582: text properties are not enabled
Problem:    Text properties are not enabled.
Solution:   Fix sizeof argument and re-enable the text properties feature.
            Fix memory leak.
2018-12-14 12:18:11 +01:00
Bram Moolenaar ca79a5fc3b patch 8.1.0581: double free without the text properties feature
Problem:    Double free without the text properties feature.
Solution:   Reset the dirty flag.
2018-12-13 23:16:36 +01:00
Bram Moolenaar 2fa7fad831 patch 8.1.0580: invalid memory access when using text properties
Problem:    Invalid memory access when using text properties.
Solution:   Disable text properties for now.
2018-12-13 23:05:56 +01:00
Bram Moolenaar 98aefe7c32 patch 8.1.0579: cannot attach properties to text
Problem:    Cannot attach properties to text.
Solution:   First part of adding text properties.
2018-12-13 22:20:09 +01:00
Bram Moolenaar 5c5697f298 patch 8.1.0578: cannot disable arabic, rightleft and farsi in configure
Problem:    Cannot disable arabic, rightleft and farsi in configure.
Solution:   Add configur flags. (Diego Fernando Carrión, closes #1867)
2018-12-12 20:34:09 +01:00
Yee Cheng Chin 5cd759d24e MacVim Snapshot 153
Vim patch 8.1.577

Targets macOS 10.8+

Features:

- The option to automatically download and install updates is now
  exposed in the preference panel. This gives you a way to uncheck it,
  as previously there was no user-visible way to do so once it's
  checked. #816

Fixes:

- Title bar is no longer transparent in 10.12 Sierra #805
- Fixed 'transparency' setting not working properly in Mojave #805
- Fixed setting 'fullscreen' in vimrc leading to black screen in 10.14
  Mojave if non-native fullscreen is used #811
- Fixed showing all black if MMUseCGLayerAlways is set in 10.14 Mojave
  #811
- Fixed misconfigured Python paths in default vimrc #812

Script interfaces have compatibility with these versions:

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.7
- Ruby 2.5
2018-12-12 03:45:19 -08:00
Yee Cheng Chin e6977ce6b1 Merge remote-tracking branch 'vim/master' 2018-12-12 03:32:01 -08:00
Yee Cheng Chin 5af4e395b3 Merge pull request #816 from ychin/auto-update-preference-pane
Expose "automatically install updates" option in preference pane
2018-12-12 01:14:39 -08:00
Yee Cheng Chin 03e13e7354 Expose "automatically install updates" option in preference pane
Currently the updater (Sparkle) supports an option to automatically
download and install updates in the background. The only user-visible
way to turn it on/off is by checking the checkbox in the new update
dialog box but that dialog box only shows up if auto-update is off,
meaning that there's no way to undo setting that setting. Fix this by
exposing the setting in user preference panel.

Also, previously auto-update would even still keep on working even if
"check for updates" is off, since it has precedence. Make the preference
pane un-check auto-update if "check for updates" is turned off.

Fix #808
2018-12-12 00:38:45 -08:00
Bram Moolenaar 295471920d patch 8.1.0577: tabpage right-click menu never shows "Close tab"
Problem:    Tabpage right-click menu never shows "Close tab".
Solution:   Always create the "Close tab" item but ignore the event if there
            is only one tab.
2018-12-11 20:39:19 +01:00
Bram Moolenaar 30700cd5ff patch 8.1.0576: indent script tests pick up installed scripts
Problem:    Indent script tests pick up installed scripts.
Solution:   Use current runtime indent scripts.
2018-12-10 21:36:56 +01:00
Yee Cheng Chin b39705238b Merge pull request #811 from ychin/startup-nonnative-fullscreen-fix
Fix starting up in non-native fullscreen resulting in black screen
2018-12-10 04:40:51 -08:00
Yee Cheng Chin d6f259e6be Merge pull request #812 from ychin/fix-homebrew-python2
Fix misconfigured Python paths in default vimrc
2018-12-10 03:03:22 -08:00
Yee Cheng Chin 7c26ef0ab9 Fix misconfigured Python paths in default vimrc
Homebrew Python 2.7 was misconfigured to use the wrong path, and
official Python 2.7 install was configured to set "pythonthreedll"
instead of "pythondll". Fix them.

Fix #803
2018-12-10 02:28:36 -08:00
Yee Cheng Chin a3a7a5a577 Merge pull request #810 from ychin/yosemite-tab-close-button-on-hover
Make pre-Mojave tabs also show the close button on hover over tab
2018-12-10 01:45:00 -08:00
Yee Cheng Chin b6bc72b09d Fix starting up in non-native fullscreen resulting in black screen
Fix issues related to starting up in fullscreen mode (by setting
`set fullscreen` in gvimrc).

Fix black screen when starting in non-native fullscreen:
- Fix #804
- Non-native fullscreen has an old behavior where it sets CGLayer mode
  on core text renderer to address rendering artifacts in pre-Mojave,
  and we have an insufficient block against it (by checking cgContext).
  In Mojave, we use buffered draws instead and prevent setting CGLayer
  by checking cgContext, but it is not yet initialized yet in this
  situation (since it's lazily initialized). Block against
  cgBufferDrawEnabled instead.
- The CGLayer renderer is really deprecated at this point so ideally we
  could clean up the code a little bit in the future.

Setting MMUseCGLayerAlways no longer results in black screen:
- Fix #801
- CGLayer renderer is basically deprecated doesn't actually work in
  Mojave. Make sure setting MMUseCGLayerAlways won't trigger it if we
  are already using buffered draw (which is automatically the case in
  Mojave).

Fix starting up in fullscreen resulting in a small Vim window:
- When starting MacVim in fullscreen mode, the presentation is delayed
  until the window is made. need to make sure to set shouldResizeVimView
  in this code path too. Before the guioption-k fixes, there were a lot
  of random calls to recalculate sizes which was why this happened
  implicitly. Now need to make sure we do the right thing and call it.
2018-12-10 01:01:27 -08:00
Yee Cheng Chin 67754cb23f Merge pull request #805 from ychin/fix-sierra-transparent-titlebar
Fix 10.12 transparent title bar, and 10.14 'transparency' issues
2018-12-09 20:53:56 -08:00
Yee Cheng Chin 8fce3735aa Make pre-Mojave tabs also show the close button on hover over tab
This makes them show up on tab hover, so you don't have to hover over
the exact location of the close button to see it.
2018-12-09 20:51:20 -08:00
Yee Cheng Chin 55197bd4c4 Fix 10.12 transparent title bar, and 10.14 'transparency' issues
Change the code that sets window's backgroundColor to Mojave (10.14)
only. Right now, we are creating windows with the flag
NSWindowStyleMaskTexturedBackground which is actually deprecated, and it
had the annoying effect of auto-setting transparent title bars in Sierra
SDKs. When the previous change set the background color of the window it
also made the title bar color change as well. Now, the background color
is only set for Mojave so those earlier platforms won't be affected.

Also fix the 'transparency' setting in Mojave. Since in Mojave the
rendering is done through layers now, we need to make sure the layers
are all transparent other than the text view that's trying to blend on
top of the desktop (this is why we needed to set the window background
color to begin with). There *is* one hack where we have to set the
window background with 0.001 alpha because if you set to 0, the whole
border disappears the the window behaves sluggishly.

In the future, consider removing NSWindowStyleMaskTexturedBackground
since it's been deprecated for a while. One issue is that without it the
system title bar has this annoying gray/black line and it doesn't look
as neat. It's a minor aesthetics issue though and if in the future it
gets completely deprecated it's not a big deal. Alternatively, consider
using a transparent title bar and use customized theming.

Also, fix a regression where zoom button was not working properly in
pre-Mojave, due to [NSAnimationContext beginGrouping] being improperly
called.

Fix #799.
2018-12-09 20:39:24 -08:00
Bram Moolenaar d47d52232b Update runtime files. 2018-12-09 20:43:55 +01:00
Bram Moolenaar 37402ed534 patch 8.1.0575: Termdebug: clearing multi-breakpoint does not work
Problem:    Termdebug: clearing multi-breakpoint does not work.
Solution:   Delete all X.Y breakpoints.  Keep more information about placed
            breakpoints. (Ozaki Kiichi, closes #3641)
2018-12-09 15:53:01 +01:00
Bram Moolenaar 4af7259b2b patch 8.1.0574: 'commentstring' not used when adding fold marker in C
Problem:    'commentstring' not used when adding fold marker in C.
Solution:   Require white space before middle comment part. (mostly by
            Hirohito Higashi)
2018-12-09 15:00:52 +01:00
Bram Moolenaar 55d4691308 patch 8.1.0573: cannot redefine user command without ! in same script
Problem:    Cannot redefine user command without ! in same script
Solution:   Allow redefining user command without ! in same script, like with
            functions.
2018-12-08 16:03:28 +01:00
Bram Moolenaar 76ab4fd619 patch 8.1.0572: stopping a job does not work properly on OpenBSD
Problem:    Stopping a job does not work properly on OpenBSD.
Solution:   Do not use getpgid() to check the process group of the job
            processs ID, always pass the negative process ID to kill().
            (George Koehler, closes #3656)
2018-12-08 14:39:05 +01:00
Bram Moolenaar 446e7a3cd3 patch 8.1.0571: non-silent execute() resets display column to zero
Problem:    Non-silent execute() resets display column to zero.
Solution:   Keep the display column as-is.
2018-12-08 13:57:42 +01:00
Bram Moolenaar 539328197c patch 8.1.0570: 'commentstring' not used when adding fold marker
Problem:    'commentstring' not used when adding fold marker. (Maxim Kim)
Solution:   Only use empty 'comments' middle when leader is empty. (Christian
            Brabandt, closes #3670)
2018-12-07 21:08:49 +01:00
Bram Moolenaar 10ccaa17ec patch 8.1.0569: execute() always resets display column to zero
Problem:    Execute() always resets display column to zero. (Sha Liu)
Solution:   Don't reset it to zero, restore the previous value. (closes #3669)
2018-12-07 16:38:23 +01:00
Bram Moolenaar 9a8534673a patch 8.1.0568: error message for NUL byte in ScreenLines breaks Travis CI
Problem:    Error message for NUL byte in ScreenLines breaks Travis CI.
Solution:   Use a normal message fornow.
2018-12-07 14:10:37 +01:00
Bram Moolenaar 4087bfd96d patch 8.1.0567: error for NUL byte in ScreenLines goes unnoticed
Problem:    Error for NUL byte in ScreenLines goes unnoticed.
Solution:   Add an internal error message.
2018-12-07 13:26:39 +01:00
Bram Moolenaar 20091c18c4 patch 8.1.0566: SGR not enabled for mintty because $TERM is "xterm"
Problem:    SGR not enabled for mintty because $TERM is "xterm".
Solution:   Detect mintty by the termresponse. (Ken Takata, closes #3667)
2018-12-07 13:18:19 +01:00
Bram Moolenaar 10600db772 patch 8.1.0565: asan complains about reading before allocated block
Problem:    Asan complains about reading before allocated block.
Solution:   Workaround: Avoid offset from becoming negative.
2018-12-05 19:46:07 +01:00
Bram Moolenaar 88b53fd052 patch 8.1.0564: setting v:errors to wrong type still possible
Problem:    Setting v:errors to wrong type still possible.
Solution:   Return after giving an error message. (Christian Brabandt)
2018-12-05 18:43:28 +01:00
Yee Cheng Chin f7ff60b4f2 MacVim Snapshot 152
Vim patch 8.1.560

Targets macOS 10.8+

Features:
- macOS Mojave (10.14) is now supported.
    - MacVim's UI now works with Dark Mode.
    - Fixed broken rendering and flickering under Mojave when using the
      default Core Text renderer. #757
- guioption 'k' is supported again. #731
    - This option prevents window from resizing when UI elements such as
      toolbars or tabs show or hide themselves.

Fixes:
- Fixed misc fullscreen and window resizing bugs and artifacts #745
- Dragging tabs to reorder now works properly #789
- Fixed timer callback handling in GUI #749
- Fixed native tabs (10.12+) interring with Vim tabs #788
- Fixed Japanese IME Ctrl-U/Ctrl-O handling #742
- Fixed MMShareFindPboard and Cmd-E/Cmd-G interactions #780
- Better handling of guifontwide font size #737
- Better python discovery in default vimrc #739

Known Issues:
- Scrolling performance is slightly worse under Mojave #796

Script interfaces have compatibility with these versions:
- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.7
- Ruby 2.5
2018-12-05 03:14:15 -08:00
Yee Cheng Chin 0a444c1956 Merge pull request #797 from ychin/travis-deploy-mojave
Switch Travis CI to deploy MacVim in Xcode 10 / Mojave SDK
2018-12-05 02:58:19 -08:00
Yee Cheng Chin cf80560781 Switch Travis CI to build MacVim in Xcode 10 / Mojave 10.14 SDK
The previous Mojave rendering artifacts have now been fixed, so we can
deploy MacVim for Mojave / Xcode 10 now.
2018-12-05 01:23:52 -08:00
Yee Cheng Chin 41adbabe54 Merge remote-tracking branch 'vim/master' 2018-12-05 00:53:42 -08:00
Bram Moolenaar 74ea88c170 patch 8.1.0563: setting v:errors to a string give confusing error
Problem:    Setting v:errors to a string give confusing error. (Christian
            Brabandt)
Solution:   Change internal error into normal error message.
2018-12-04 22:37:49 +01:00
Bram Moolenaar b6fc72851c patch 8.1.0562: parsing of 'diffopt' is slightly wrong
Problem:    Parsing of 'diffopt' is slightly wrong.
Solution:   Fix the parsing and add a test. (Jason Franklin, Christian
            Brabandt)
2018-12-04 22:24:16 +01:00
Yee Cheng Chin 79541d2844 Merge pull request #795 from ychin/fix-fullscreen-mojave-tabs
Fix Mojave-style tabs not triggering in fullscreen
2018-12-04 04:27:39 -08:00
Yee Cheng Chin 7d8b5890c1 Fix Mojave-style tabs not triggering in fullscreen 2018-12-04 04:14:06 -08:00
Yee Cheng Chin bbad3edf5a Merge pull request #757 from s4y/fix-the-flicker
Fix rendering issues when built against the 10.14 SDK.
2018-12-04 00:11:12 -08:00
Yee Cheng Chin ab71bd8d69 Fix resizing issues with the flicker fix and hide the tabline
Fix the misc resizing issues with the previous CoreText renderer commit,
in particular cases where zoom button was clicked, Vim initiated
resizing (e.g. ":set lines+=10"), font size changes (Cmd-+/-),
fullscreen toggles, etc.

- The core issue is that the order of operation for those are not
  consistent. Sometimes, MacVim changes window size first before letting
  Vim knows, but other times it lets Vim handle it before resizing (e.g.
  zoom).

- The new CoreText renderer's buffer needs to know when the size
  change in order to resize the buffer, and it wasn't doing it in the
  right spot. Fix it so that it's delayed until updateLayer: is called.
  By that time both MacVim and Vim should have already come to an
  agreement on the new size.

- Also, when using the new 10.14 buffer renderer, don't use
  [NSAnimationContext beginGrouping] to block the system from resizing
  the window, because it also suffers from the order of operation issue
  and sometimes endGrouping could get called before beginGrouping,
  causing the UI to appear frozen. Instead, just have updateLayer make a
  new image and copy over the old one to avoid the black flickering when
  resizing (which was what the begin/endGrouping was trying to solve to
  begin with), and the UI now works smoother as well (e.g. double
  clicking the border now works smoothly).

The previous change also set the window background color to whatever
default background color is which is fine but it affects the tabline
separator as well and makes it look jarring. The tabline separator is
mostly a relic of the older macOS versions, so disable it on new-ish
macOS verisons.

Also, update docs in the known issues section to make it clear there's
currently an issue in performance under Mojave. That will be removed
when the performance is fixed in the future.
2018-12-04 00:09:53 -08:00
Bram Moolenaar 9719568533 patch 8.1.0561: MSCV error format has changed
Problem:    MSCV error format has changed.
Solution:   Make the space between the line number and colon optional.
2018-12-03 20:50:02 +01:00
Bram Moolenaar 51a7454cd2 patch 8.1.0560: cannot use address type "other" with with user command
Problem:    Cannot use address type "other" with with user command.
Solution:   Add "other" to the list. (Daniel Hahler, closes #3655)  Also
            reject "%" for commands with "other".  Add some more tests.
2018-12-02 18:21:49 +01:00
Bram Moolenaar b513d3079b patch 8.1.0559: command line completion not sufficiently tested
Problem:    Command line completion not sufficiently tested.
Solution:   Add more tests. (Dominique Pelle, closes #3622)
2018-12-02 14:55:08 +01:00
Bram Moolenaar d2ec51f399 patch 8.1.0558: some MS-Windows instructions are outdated
Problem:    Some MS-Windows instructions are outdated.
Solution:   Update the uninstall instructions and the NSIS README. (Ken
            Takata, closes #3614)  Also update remark about diff.exe.
2018-12-02 13:58:00 +01:00
Bram Moolenaar 5378e1cf0a patch 8.1.0557: Termdebug: gdb may use X.Y for breakpoint number
Problem:    Termdebug: gdb may use X.Y for breakpoint number.
Solution:   Handle X.Y breakpoint numbers. (Yasuhiro Matsumoto, close #3641)
2018-12-02 13:47:03 +01:00
Sidney San Martín 0db547d459 Fix rendering issues with the 10.14 SDK.
Before this commit, the Core Text renderer relied on a legacy behavior
of NSView to keep its content across draws. setNeedsDisplayInRect: drew
over parts of the existing content as drawing commands were received,
without ever redrawing old content.

Layer backed views don't preserve content between draws and may be asked
to redraw at any time, and layer backing is default on in the 10.14 SDK.

This change adds a way to draw to a CGBitmapContext and then display
that in the view's layer. It's similar to the CGLayer path, but I wasn't
able to get the CGLayer path to work without hanging or crashing when I
scrolled. My best guess from looking at stack traces is that using
CGContextDrawLayerInRect to draw a layer into itself doesn't actually
copy pixels, but adds the self-draw as an action to be performed when
the CGLayer is drawn into a bitmap context. Scrolling stacks these
actions, which either hangs or overflows the stack when drawn.

The new code is controlled by the MMBufferedDrawing user default, which
is on by default on macOS >= 10.14 with this change. Fixes #751.
2018-12-02 00:18:44 -05:00
Yee Cheng Chin 63dbd5838d Merge pull request #793 from ychin/scrollbar_dark_mode_fix
Fix scrollbars in Mojave dark mode not rendering properly
2018-12-01 18:11:35 -08:00
Yee Cheng Chin 4ba02a87ed Fix scrollbars in Mojave dark mode not rendering properly
Dark mode scrollbars's background are rendered in a translucent color so
that it would overlay on top of the background nearly, even though we
are using legacy scrollbars with a dedicated space. This is unlike light
mode scrollbars which render with a concrete color. This means if the
background has uncleared rendering it would result in some oddities.
Just fix it by making sure we first render the scroll track with the
current background color before drawing the system overlay.

Known issues:
- The scroll knob will look quite light and hard to see if the
  background color is bright. Consider this OK for now as users who use
  dark mode will likely have a dark-ish background color in Vim.
- If both vertical and horizontal scrollbars are enabled, the corners
  will look black or sometimes filled with rendering artifacts. Will fix
  this later. One way to fix is to always fill the Vim view with a
  background color but that seems to slow things down a little bit
  because setNeedsDisplay seems to be called too much without a rect, so
  need to fix that first.
- Vertical scrollbars' positions are sometimes set incorrectly. That's a
  separate bug and will be addressed later.
- MacVim currently doesn't support overlay scrollbars which have been
  introduced in macOS since 10.7. Investigate that option too.
2018-12-01 17:31:09 -08:00
Bram Moolenaar ed8bc78d23 patch 8.1.0556: saving/restoring search patterns share saved last_idx
Problem:    Saving/restoring search patterns share saved last_idx.
Solution:   Use a separate saved last_idx for saving search patterns for
            functions and incremental search.
2018-12-01 21:08:21 +01:00
Bram Moolenaar 2fb8f684d8 patch 8.1.0555: crash when last search pat is set but not last substitute pat
Problem:    Crash when last search pat is set but not last substitute pat.
Solution:   Do not mix up last search pattern and last subtitute pattern.
            (closes #3647)
2018-12-01 13:14:45 +01:00
Bram Moolenaar 614ab8aa00 patch 8.1.0554: popup menu overlaps with preview window
Problem:    Popup menu overlaps with preview window.
Solution:   Adjust the height computation. (Hirohito Higashi, closes #3414)
2018-12-01 11:59:00 +01:00
Bram Moolenaar 07dc18ffa4 patch 8.1.0553: it is not easy to edit a script that was sourced
Problem:    It is not easy to edit a script that was sourced.
Solution:   Add a count to ":scriptnames", so that ":script 40" edits the
            script with script ID 40.
2018-11-30 22:48:32 +01:00
Bram Moolenaar 01a060da74 patch 8.1.0552: saved last search pattern may not be restored
Problem:    Saved last search pattern may not be restored.
Solution:   Call restore_last_search_pattern().  Add a check for balancing
            saving and restoring the last search pattern.
2018-11-30 21:57:55 +01:00
Bram Moolenaar 8ff5af9544 patch 8.1.0551: expression evaluation may repeat an error message
Problem:    Expression evaluation may repeat an error message. (Jason
            Franklin)
Solution:   Check for the value of did_emsg when giving an error
            for the :execute command.
2018-11-28 21:20:38 +01:00
Bram Moolenaar 76a6345433 patch 8.1.0550: expression evaluation may repeat an error message
Problem:    Expression evaluation may repeat an error message. (Jason
            Franklin)
Solution:   Increment did_emsg and check for the value when giving an error
            for the echo command.
2018-11-28 20:38:37 +01:00
Yee Cheng Chin dabe5a224a Merge remote-tracking branch 'vim/master' 2018-11-27 03:53:27 -08:00
Bram Moolenaar 10efcd5b02 patch 8.1.0549: netbeans test depends on README.txt contents
Problem:    Netbeans test depends on README.txt contents.
Solution:   Use a generated file instead.
2018-11-26 21:22:07 +01:00
Bram Moolenaar 1341024e08 patch 8.1.0548: crash when job callback unloads a buffer
Problem:    Crash when job callback unloads a buffer. (James McCoy)
Solution:   Don't round up the wait time to 10 msec in ui_inchar().
2018-11-26 21:19:11 +01:00
Yee Cheng Chin bbbdc4731a Merge pull request #791 from ychin/tabs_dark_mode_and_fixes
Add Mojave-style tabs, which also supports Dark Mode
2018-11-26 10:54:14 -08:00
Yee Cheng Chin 6e1489e531 Add Mojave-style tabs, which also supports Dark Mode
Add a new tab style "Mojave". The files were copied from Yosemite-style
tabs but with additional improvements. It now reads the colors from an
asset catalog with colors for both dark and light modes. The colors and
style are also retuned to look more like native Mojave tabs. The new tab
and close tab buttons are now using a style much more similar to what
native macOS are like, with the close tab button showing up when mouse
is hovering over a particular tab.

Reason for cloning PSMYosemiteTabStyle is to avoid having too many
special cases in a single file and to avoid breaking its behaviors on
older systems. Also, PSMTabBarControl is mostly a dead project, so it's
wise to modify existing code as little as possible.

MacVim will only use this style if it's compiled with Mojave SDKs and
it's actually being run in Mojave (10.14) or higher.

Fix #775
2018-11-26 03:41:29 -08:00
Yee Cheng Chin 007de995cb Copy Yosemite tab style files to "Mojave" files before modifying them 2018-11-26 02:31:44 -08:00
Yee Cheng Chin acb1c07777 Docs update to mention Github in addition to mailing list 2018-11-26 02:31:44 -08:00
Yee Cheng Chin b1e26a6b4c Merge pull request #786 from ichizok/fix/ctrl-6
Fix the working of Ctrl-6
2018-11-25 02:53:45 -08:00
Yee Cheng Chin af6bd98de1 Merge pull request #789 from ychin/fix_tabs_dragging
Fix dragging tabs not working properly
2018-11-25 01:56:08 -08:00
Yee Cheng Chin d8606ce022 Refactor Ctrl-6 fix to be clearer and only trigger under Japanese IME
Only limiting this condition to be under Japanese IME helps prevents
unintended effects on other IMEs as well, as this bug is only known to
happen under Japanese IME with Windows shortcuts.

Also update comments to be clear that most of the time you do want to go
through the interpretKeyEvents: path.
2018-11-25 01:51:04 -08:00
Yee Cheng Chin 7e1b43e6c2 Fix tab dragging not working when dragging a tab to the right
Vim's tabmove has two positions where it doesn't do anything, so need to
add 1 to index when moving tab to the right.

Fix #257
2018-11-25 01:25:12 -08:00
Yee Cheng Chin e126fa9652 Fix tab dragging crashing under 10.14 due to deprecated API
Use the newer `cacheDisplayInRect:toBitmapImageRep:` API instead to work
around this.
2018-11-25 01:25:12 -08:00
Bram Moolenaar 3067a4dd0d patch 8.1.0547: modeline test with keymap still fails
Problem:    Modeline test with keymap still fails.
Solution:   Check that the keymap feature is available for the failure assert.
2018-11-25 05:06:48 +01:00
Bram Moolenaar 4ace6ab7e7 patch 8.1.0546: modeline test with keymap fails
Problem:    Modeline test with keymap fails.
Solution:   Check that the keymap feature is available.
2018-11-25 04:25:58 +01:00
Bram Moolenaar dc2f73a698 patch 8.1.0545: when executing indent tests user preferences interfere
Problem:    When executing indent tests user preferences interfere.
Solution:   Add "--clean".
2018-11-25 04:03:09 +01:00
Bram Moolenaar b730f0c7ba Update runtime files 2018-11-25 03:56:26 +01:00
Bram Moolenaar 916a818cea patch 8.1.0544: setting 'filetype' in a modeline causes an error
Problem:    Setting 'filetype' in a modeline causes an error (Hirohito
            Higashi).
Solution:   Don't add the P_INSECURE flag when setting 'filetype' from a
            modeline.  Also for 'syntax'.
2018-11-25 02:18:29 +01:00
Bram Moolenaar 4e303c8ba8 patch 8.1.0543: Coverity warns for leaking memory and using wrong struct
Problem:    Coverity warns for leaking memory and using wrong struct.
Solution:   Free pointer when allocation fails. Change "boff" to "loff".
            (closes #3634)
2018-11-24 14:27:44 +01:00
Yee Cheng Chin e5d11768a2 Merge pull request #788 from ychin/disable_native_tabs
Disable macOS native tabs (introduced in 10.12)
2018-11-23 17:58:11 -08:00
Yee Cheng Chin 1a0d5034a6 Disable macOS native tabs (introduced in 10.12)
MacVim already has its own tabbing interface and native tabs
(configurable in System Preferences) introduce a second layer of tabs
which is confusing. MacVim also doesn't behave properly under such
circumstances such as rendering artifacts, lacking proper native menu
items (e.g. "Move Tab to New Window"), and keyboard shortcuts like Cmd-W
don't work.

Note that it's currently not a good idea to implement Vim tabs using
native tabs since they assume multiple NSWindow instances and assume
they can be split off into multiple windows, which Vim doesn't support.
2018-11-23 17:32:25 -08:00
Yee Cheng Chin 8e5b2b51bd Merge pull request #787 from ychin/macvim_xcodeproj_askpass
Add macvim-askpass to project.pbxproj to avoid it always show up modified
2018-11-22 00:59:33 -08:00
Yee Cheng Chin 5ad7ee8107 Add macvim-askpass to project.pbxproj to avoid it always show up modified
Since the file macvim-askpass is copied in the build steps, Xcode keeps
trying to add this file as a "recovered reference". Just fix this by
adding it to the xcodeproj properly.
2018-11-22 00:15:03 -08:00
Bram Moolenaar f951416a83 patch 8.1.0542: shiftwidth() does not take 'vartabstop' into account
Problem:    shiftwidth() does not take 'vartabstop' into account.
Solution:   Use the cursor position or a position explicitly passed.
            Also make >> and << work better with 'vartabstop'. (Christian
            Brabandt)
2018-11-22 03:08:29 +01:00
ichizok 7c6b2b0e86 Fix the working of Ctrl-6
Call interpretKeyEvents: with except Ctrl-O and Ctrl-U since should
translate key-input by doCommandBySelector:.
2018-11-22 03:24:48 +09:00
Bram Moolenaar 2b84949ad8 patch 8.1.0541: help message in dosinst.c is outdated
Problem:    Help message in dosinst.c is outdated.
Solution:   Update the comment. (Ken Takata, closes #3626)
2018-11-21 13:58:35 +01:00
Bram Moolenaar 247bb7e43b patch 8.1.0540: may evaluate insecure value when appending to option
Problem:    May evaluate insecure value when appending to option.
Solution:   Set the secure flag when changing an option that was previously
            set insecurely.  Also allow numbers for the characters from
            'spelllang' that are used for LANG.vim.
2018-11-20 14:27:07 +01:00
Bram Moolenaar 82e8c92ebe patch 8.1.0539: cannot build without the sandbox
Problem:    Cannot build without the sandbox.
Solution:   Set the secure option instead of using the sandbox.  Also restrict
            the characters from 'spelllang' that are used for LANG.vim.
            (suggested by Yasuhiro Matsumoto)
2018-11-20 13:32:36 +01:00
Yee Cheng Chin 8fbb254859 Merge pull request #784 from ychin/macos-ci-more-versions
Add more Xcode / macOS versions to test in Travis CI
2018-11-20 01:09:32 -08:00
Yee Cheng Chin 199fa1f766 Add more Xcode / macOS versions to test in Travis CI
This helps make sure changes utilizing newer OS features won't break old
OS versions. CI now tests from Xcode 7.3 to 10.1.
2018-11-20 00:43:07 -08:00
Yee Cheng Chin dd1d7f6c3c Merge pull request #783 from ychin/temp_disable_bad_unit_tests_2
Disable test_timers also in non-GUI mode as well
2018-11-20 00:08:52 -08:00
Yee Cheng Chin 2aa9b8f2c5 Disable test_timers also in non-GUI mode as well 2018-11-20 00:07:22 -08:00
Yee Cheng Chin dc42fa339e Merge pull request #782 from ychin/temp_disable_bad_unit_tests
Disable timer & channel unit tests since they have been breaking CI
2018-11-19 23:19:57 -08:00
Yee Cheng Chin 1447ebfdfb Disable timer & channel unit tests since they have been breaking CI
MacVim seems to have some timing issues with test_channel and
test_timers and they frequently fail in Travis CI. Disable them for now
to avoid build break red herring.

https://github.com/macvim-dev/macvim/issues/778 will track fixing this.
2018-11-19 22:55:58 -08:00
Yee Cheng Chin ea5fe03309 Merge pull request #780 from ychin/find-pasteboard-fixes
Fix MMShareFindPboard and Cmd-E/Cmd-G
2018-11-19 21:18:59 -08:00
Bram Moolenaar 5958f95a40 patch 8.1.0538: evaluating a modeline might invoke using a shell command
Problem:    Evaluating a modeline might invoke using a shell command. (Paul
            Huber)
Solution:   Set the sandbox flag when setting options from a modeline.
2018-11-20 04:25:21 +01:00
Bram Moolenaar 48d23bb4de patch 8.1.0537: ui_breakcheck() may be called recursively
Problem:    ui_breakcheck() may be called recursively, which doesn't work.
Solution:   When called recursively, just return. (James McCoy, closes #3617)
2018-11-20 02:42:43 +01:00
Yee Cheng Chin b3907e6722 Make Cmd-E work and always share to OS Find Pasteboard
Cmd-E (Edit -> Use Selection for Find") in most macOS apps follow the
convention that it shares to the system Find Pasteboard, while Cmd-G
uses the Find Pasteboard to find the next item. Make Cmd-E always do
that even if MMShareFindPboard is set to NO. This way, normal searches
in Vim wouldn't pollute the system find pasteboard, but could still have
a way to share to it by using this action.
2018-11-18 21:04:41 -08:00
Yee Cheng Chin 3df190c296 Fix MMShareFindPboard not working properly and update docs
MMShareFindPboard is supposed to prevent MacVim from updating the system
find pasteboard when searching, but the previous behavior was that it
would only set the Vim-specific format to the find pasteboard so you
could still share search patterns across Vim windows but it has the
effect of clearing the global find pasteboard. Just fix that by making
MacVim not touch the system find pasteboard at all when
MMShareFindPboard is set to NO to respect user's wish. Cmd-G will still
use the system find pasteboard to make it easy to search in another
macOS program and jump to Vim. The user can always use `n` instead if
that's not desired.

Also update docs to make this clear, and rename all "OS X" to "macOS" to
keep up with the times.

Close #773
2018-11-18 21:03:05 -08:00
Bram Moolenaar addc156c38 patch 8.1.0536: file time test fails when using NFS
Problem:    File time test fails when using NFS.
Solution:   Use three file times instead of localtim(). (James McCoy,
            closes #3618)
2018-11-18 12:25:09 +01:00
Bram Moolenaar 6b731886ca patch 8.1.0535: increment/decrement might get interrupted by updating folds
Problem:    Increment/decrement might get interrupted by updating folds.
Solution:   Disable fold updating for a moment. (Christian Brabandt,
            closes #3599)
2018-11-16 20:54:47 +01:00
Bram Moolenaar 25a494ce60 patch 8.1.0534: MS-Windows installer uses different $HOME than Vim
Problem:    MS-Windows installer uses different $HOME than Vim.
Solution:   Use the Vim logic also in the MS-Windows installer. (Ken Takata,
            closes #3564)
2018-11-16 19:39:50 +01:00
Bram Moolenaar 447f6ce8bd patch 8.1.0533: screendump tests can be flaky
Problem:    Screendump tests can be flaky.
Solution:   Add VerifyScreenDump to the pattern of flaky tests.
2018-11-16 18:50:19 +01:00
Bram Moolenaar 2d67d307ee patch 8.1.0532: cannot distinguish between quickfix and location list
Problem:    Cannot distinguish between quickfix and location list.
Solution:   Add an explicit type variable. (Yegappan Lakshmanan)
2018-11-16 18:46:02 +01:00
Bram Moolenaar dbc0d2163a patch 8.1.0531: flaky tests often fail with a common error message
Problem:    Flaky tests often fail with a common error message.
Solution:   Add a pattern to match an error message indicating a flaky test.
2018-11-16 18:22:45 +01:00
Bram Moolenaar c0f05d0bd1 patch 8.1.0530: channel and terminal tests that start a server can be flaky
Problem:    Channel and terminal tests that start a server can be flaky.
Solution:   Add all channel and terminal tests that start a server to the list
            of flaky tests.
2018-11-16 17:44:48 +01:00
Bram Moolenaar f77af0e613 patch 8.1.0529: flaky test sometimes fails in different ways
Problem:    Flaky test sometimes fails in different ways.
Solution:   When the second run gives a different error, try running the test
            again, up to five times.
2018-11-16 16:52:16 +01:00
Bram Moolenaar c4568ab37e patch 8.1.0528: various typos in comments
Problem:    Various typos in comments.
Solution:   Fix the typos.
2018-11-16 16:21:05 +01:00
Bram Moolenaar f0d58efc9d Update runtime files. 2018-11-16 16:13:44 +01:00
Bram Moolenaar 0c27cbcacf patch 8.1.0527: using 'shiftwidth' from wrong buffer for folding
Problem:    Using 'shiftwidth' from wrong buffer for folding.
Solution:   Use "buf" instead of "curbuf". (Christian Brabandt)
2018-11-14 21:45:32 +01:00
Bram Moolenaar 61fb8d8c67 patch 8.1.0526: running out of signal stack in RealWaitForChar
Problem:    Running out of signal stack in RealWaitForChar. (Vladimir Marek)
Solution:   Make the fd_set variables static.
2018-11-12 21:45:08 +01:00
Bram Moolenaar d3471e5785 patch 8.1.0525: terminal test skips part on Windows
Problem:    Terminal test skips part on Windows.
Solution:   Fix Test_terminal_does_not_truncate_last_newlines(). (Hirohito
            Higashi, closes #3606)
2018-11-12 21:42:24 +01:00
Bram Moolenaar c2c02574ec patch 8.1.0524: terminal test fails on Windows
Problem:    Terminal test fails on Windows.
Solution:   Skip Test_terminal_does_not_truncate_last_newlines() for now.
2018-11-11 23:14:54 +01:00
Bram Moolenaar b244373bec patch 8.1.0523: opening window from quickfix leaves empty buffer behind
Problem:    Opening window from quickfix leaves empty buffer behind.
Solution:   Add qf_jump_newwin(). (Yegappan Lakshmanan, closes #2574)
2018-11-11 22:50:27 +01:00
Bram Moolenaar f3aea59afa patch 8.1.0522: :terminal does not show trailing empty lines
Problem:    :terminal does not show trailing empty lines.
Solution:   Add empty lines. (Hirohito Higashi, closes #3605)
2018-11-11 22:18:21 +01:00
Bram Moolenaar 883ba68cda patch 8.1.0521: cannot build with +eval but without +quickfix
Problem:    Cannot build with +eval but without +quickfix.
Solution:   Remove #ifdef for e_stringreq. (John Marriott)
2018-11-11 21:22:57 +01:00
Bram Moolenaar 218959bc91 patch 8.1.0520: screen diff test sometimes fails
Problem:    Screen diff test sometimes fails.
Solution:   Add to list of flaky tests.
2018-11-11 18:51:42 +01:00
Bram Moolenaar f49cc60aa8 patch 8.1.0519: cannot save and restore the tag stack
Problem:    Cannot save and restore the tag stack.
Solution:   Add gettagstack() and settagstack(). (Yegappan Lakshmanan,
            closes #3604)
2018-11-11 15:21:05 +01:00
Kazuki Sakamoto 2c43cd672d Merge remote-tracking branch 'vim/master' 2018-11-10 19:50:19 -08:00
Bram Moolenaar 8617b40159 patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Problem:    Test_window_split_edit_bufnr() fails on AppVeyor.
Solution:   Disable the failing part for now.
2018-11-10 20:47:48 +01:00
Bram Moolenaar d42333d8e9 patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Problem:    Test_window_split_edit_alternate() fails on AppVeyor.
Solution:   Disable the failing part for now.
2018-11-10 20:28:19 +01:00
Bram Moolenaar ddd1f9183b patch 8.1.0516: :move command marks buffer modified when nothing changed
Problem:    :move command marks buffer modified when nothing changed.
Solution:   Do not set 'modified'.  Add a test. (Jason Franklin)
2018-11-10 19:19:36 +01:00
Bram Moolenaar ded5f1bed7 patch 8.1.0515: reloading a script gives errors for existing functions
Problem:    Reloading a script gives errors for existing functions.
Solution:   Allow redefining a function once when reloading a script.
2018-11-10 17:33:29 +01:00
Bram Moolenaar 1bbb619483 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Problem:    CTRL-W ^ does not work when alternate buffer has no name.
Solution:   Use another method to split and edit the alternate buffer. (Jason
            Franklin)
2018-11-10 16:02:01 +01:00
Yee Cheng Chin 98fed9dfc9 Make Travis CI logs easier to read by using travis_fold tags (#774) 2018-11-09 04:11:15 -08:00
Yee Cheng Chin 49b33ba08a Merge pull request #772 from ychin/fix_travis_ci_build_ruby
Fix Travis CI build break and ruby configuration error
2018-11-07 05:01:10 -08:00
Yee Cheng Chin c5e9d1f5b4 Fix Travis CI build break and ruby configuration error
Homebrew's Ruby formula seems to have switched to be keg-only, which
breaks the normal paths in /usr/local/bin and /usr/local/lib. Fix this
by switching to the explicit paths (e.g.  /usr/local/opt/ruby/bin) for
Ruby.

Use the new Travis CI native Homebrew addon to manage packages instead
of explicit brew commands.

Update to Xcode 9.4, and leave a comment why we are not going to Xcode
10 / macOS 10.14 yet.

Use "set -e" to make sure we fail fast.
2018-11-07 01:38:43 -08:00
Yee Cheng Chin eda162cdbb Merge pull request #765 from phillmv/patch-1
Proposal for LICENSE file
2018-11-06 22:58:39 -08:00
Phill MV 0b95deff83 Deleted Summary preamble from LICENSE 2018-11-06 16:16:39 -05:00
Bram Moolenaar d0721058f4 patch 8.1.0513: no error for set diffopt+=algorithm:
Problem:    No error for set diffopt+=algorithm:.
Solution:   Check for missing argument. (Hirohito Higashi, closes #3598)
2018-11-05 21:21:33 +01:00
Bram Moolenaar 389ab7122b patch 8.1.0512: 'helplang' default is inconsistent for C and C.UTF-8
Problem:    'helplang' default is inconsistent for C and C.UTF-8.
Solution:   Don't accept a value unless it starts with two letters.
2018-11-05 20:25:52 +01:00
Bram Moolenaar 9e353b5265 patch 8.1.0511: ml_get error when calling a function with a range
Problem:    ml_get error when calling a function with a range.
Solution:   Don't position the cursor after the last line.
2018-11-04 23:39:38 +01:00
Bram Moolenaar ba3ff53930 Update runtime files 2018-11-04 14:45:49 +01:00
Bram Moolenaar dcd71cbaed patch 8.1.0510: filter test fails when $LANG is C.UTF-8
Problem:    Filter test fails when $LANG is C.UTF-8.
Solution:   Set 'helplang' to "en" for any C language. (Christian Brabandt,
            closes #3577)
2018-11-04 14:40:47 +01:00
Kazuki Sakamoto fdb10af4c1 Merge remote-tracking branch 'vim/master' 2018-11-03 21:04:14 -07:00
Bram Moolenaar 0b38f54730 patch 8.1.0509: checking cwd not accessible fails for root
Problem:    Checking cwd not accessible fails for root. (James McCoy)
Solution:   Skip this part of the test for root. (closes #3595)
2018-11-03 21:47:16 +01:00
Bram Moolenaar 0f62cf5b33 patch 8.1.0508: suspend test fails when run by root
Problem:    Suspend test fails when run by root.
Solution:   Accept both '$' and '#' for the prompt. (James McCoy, closes #3590)
2018-11-03 21:09:15 +01:00
Bram Moolenaar da1c11c641 patch 8.1.0507: .raml files not properly detected
Problem:    .raml files not properly detected.
Solution:   Recognize .raml as raml instead of yaml. (closes #3594)
2018-11-03 19:52:15 +01:00
Bram Moolenaar 9691f82f86 patch 8.1.0506: modeline test fails when run by root
Problem:    Modeline test fails when run by root.
Solution:   Set 'modeline' for the test. (James McCoy, closes #3592)
2018-11-03 19:06:25 +01:00
Bram Moolenaar bd9a0c611c patch 8.1.0505: filter command test may fail if helplang is not set
Problem:    Filter command test may fail if helplang is not set.
Solution:   Set 'helplang' for the test. (James McCoy, closes #3591)
2018-11-03 19:00:14 +01:00
Bram Moolenaar 4dbc262764 patch 8.1.0504: when CTRL-C is mapped it triggers InsertLeave
Problem:    When CTRL-C is mapped it triggers InsertLeave.
Solution:   Make CTRL-C behave the same way when typed or used in a mapping.
2018-11-02 11:59:15 +01:00
Yee Cheng Chin 91aa372a22 Merge pull request #745 from ychin/rendering_fixes
Fix native fullscreen rendering and resizing bugs
2018-11-01 22:33:34 -07:00
Yee Cheng Chin 8400c5301d Update homepage link on README.md to use HTTPS 2018-11-01 22:00:43 -07:00
Kazuki Sakamoto 57dd4c6884 Merge remote-tracking branch 'vim/master' 2018-11-01 20:46:13 -07:00
Bram Moolenaar f7acf2b63c patch 8.1.0503: missing change to diff test
Problem:    Missing change to diff test. (Hirohito Higashi)
Solution:   Add the missing test function.
2018-11-01 21:14:53 +01:00
Yee Cheng Chin fa0fad6d73 Fixed double-clicking on border resulting in bad resize
Fix issue where if the user double-clicks on the window border or corner
to resize MacVim (the macOS behavior is to resize the window all the way
to the screen's border), it results in an incomplete resize and also
takes a long time.

The code was spamming the Vim instance with live resize messages,
leading to slowdown and dropped messages. Fix it by rate limiting the
messages to one at a time, which speeds things up, and clean up when
live resize finishes to make sure things look right.
2018-11-01 01:06:18 -07:00
Yee Cheng Chin ad821e46d9 Fix toggling native fullscreen on/off to restore window to correct size
Previously when using native fullscreen mode, if you toggle fullscreen
off, the window will end up taking up the whole screen rather than
restoring back to the original size. Fix that.

The real issue is because when you resize MacVim's window (which the
fullscreen restore code does), then callback (windowDidResize) triggered
a complicated set of callbacks by calling setFrameSize:, which in turn
resizes Vim, which in turn calls windowDidResize again, which usually
does the right thing, but not always. Fix the window resize handler code
to always respect the new window size by calling
setFrameSizeKeepGUISize: instead which doesn't resize the window.
2018-11-01 01:06:18 -07:00
Yee Cheng Chin 5502bbf9ff Fixed native fullscreen rendering corruption bug
Fix the issue where MacVim would occasionally draws corrupted image in
fullscreen (it would draw mostly black).

The easiest way to reproduce this is as follows:

1. Make a new MacVim window, enter fullscreen
2. Open a new tab or hit Cmd-= a few times
3. Switch to another fullscreen app or desktop, click around, then
   switch back
4. Observe most of the screen is black.

The reason this happens is that the MacVim resize code always tries to
resize the window to fit the content size (calculated from how many
lines / columns we have and whether other elements like tab bar are
visible).  This means the resize code
(resizeWindowToFitContentSize:keepOnScreen:) would make the window
smaller than the full size of screen. For some reason, when you switch
away from the space, macOS decides to resize the window back to screen
size again, causing a window resize event to happen. The resize event
invalidates the NSView, causing it to draw black.

This is also why fullscreen mode has black bars on top / bottom, which
is especially jarring when font size is large of `linespace` is high.

The fix is to treat guioptions 'k' to be on when in full screen mode,
since the option means we will always try to fit the Vim content inside
the window, rather than resize the window to fit the Vim content. This
way the fullscreen Vim window will take up the whole screen and won't
keep getting resized. This is also more similar to how native Gvim works
when maximized.

Close #496 (black bars)

Close #557, close #674 (full screen rendering issues)

A related issue is that MacVim (without CGLayer backing) doesn't
actually know how to redraw itself properly when invalidated, which is
the root cause of this bug. It receives Vim draw calls incrementally and
doesn't actually cache the rendered content, so it relies on the fact
that MacVim's NSWindow doesn't usually invalidates all the content which
allows it to draw incrementally without needing to perform a full
redraw. This is why non-native fullscreen requires CGLayer backing mode
as macOS's behavior in this mode (basically a borderless window) is that
it does clear the NSWindow's content when setWantsDisplay: is called.
This is also why Vim live window resizing is limited to cell size
instead of allowing smooth resize (to avoid having to trigger redraws).
These are issues that should be fixed later.
2018-11-01 01:06:18 -07:00
Bram Moolenaar f080d70a82 patch 8.1.0502: internal diff fails when diffing a context diff
Problem:    Internal diff fails when diffing a context diff. (Hirohito Higashi)
Solution:   Only use callback calls with one line. (closes #3581)
2018-10-31 22:57:26 +01:00
Kazuki Sakamoto 324ff06148 Merge remote-tracking branch 'vim/master' 2018-10-30 19:45:14 -07:00
Bram Moolenaar a9a8e04eab patch 8.1.0501: cppcheck warns for using array index before bounds check
Problem:    Cppcheck warns for using array index before bounds check.
Solution:   Swap the conditions. (Dominique Pelle)
2018-10-30 22:15:55 +01:00
Kazuki Sakamoto 0e473839d0 Merge remote-tracking branch 'vim/master' 2018-10-28 19:21:49 -07:00
Bram Moolenaar 833e5dab14 patch 8.1.0500: cleaning up in src/tee may not always work
Problem:    Cleaning up in src/tee may not always work.
Solution:   Use "rm" when appropriate. (Michael Soyka, closes #3571)
2018-10-28 15:43:58 +01:00
Phill MV 7dd6ce67e2 Proposal for LICENSE file 2018-10-28 10:00:21 -04:00
Bram Moolenaar 1c29943416 patch 8.1.0499: :2vimgrep causes an ml_get error
Problem:    :2vimgrep causes an ml_get error
Solution:   Pass tomatch pointer instead of value. (Yegappan Lakshmanan)
2018-10-28 14:36:09 +01:00
Bram Moolenaar d474686a09 patch 8.1.0498: /etc/gitconfig not recognized at a gitconfig file
Problem:    /etc/gitconfig not recognized at a gitconfig file.
Solution:   Add pattern to filetype detection. (closes #3568)
2018-10-27 14:27:20 +02:00
Bram Moolenaar 5f57bdcab7 patch 8.1.0497: :%diffput changes order of lines
Problem:    :%diffput changes order of lines. (Markus Braun)
Solution:   Do adjust marks when using internal diff.
2018-10-25 17:52:23 +02:00
Bram Moolenaar c0fe4978f2 patch 8.1.0496: no tests for indent files
Problem:    No tests for indent files.
Solution:   Add a mechanism for running indent file tests.  Add a first test
            for Vim indenting.
2018-10-25 16:53:19 +02:00
Bram Moolenaar f86db78fed patch 8.1.0495: :filter only supports some commands
Problem:    :filter only supports some commands.
Solution:   Add :filter support for more commands. (Marcin Szamotulski,
            closes #2856)
2018-10-25 13:31:37 +02:00
Bram Moolenaar babfcf54ae patch 8.1.0494: functions do not check for a window ID in other tabs
Problem:    Functions do not check for a window ID in other tabs.
Solution:   Also find the window ID in other than the current tab.
2018-10-25 13:11:16 +02:00
Bram Moolenaar e6e3989c1b patch 8.1.0493: argv() and argc() only work on the current argument list
Problem:    argv() and argc() only work on the current argument list.
Solution:   Add a window ID argument. (Yegappan Lakshmanan, closes #832)
2018-10-25 12:32:11 +02:00
Bram Moolenaar bf9679ae46 patch 8.1.0492: "Edit with existing Vim" list can get long
Problem:    "Edit with existing Vim" list can get long.
Solution:   Move the list to a submenu. (Ken Takata, closes #3561)
2018-10-25 11:25:53 +02:00
Kazuki Sakamoto 93d7fe4bd5 Merge remote-tracking branch 'vim/master' 2018-10-23 21:32:59 -07:00
Bram Moolenaar 0fd6be77de patch 8.1.0491: if a terminal dump has CR it is considered corrupt
Problem:    If a terminal dump has CR it is considered corrupt.
Solution:   Ignore CR characters. (Nobuhiro Takasaki, closes #3558)
2018-10-23 21:42:59 +02:00
Bram Moolenaar eda9e9c2fe patch 8.1.0490: MS-Windows: doesn't handle missing glibwinpthread-1.dll
Problem:    MS-Windows: doesn't handle missing glibwinpthread-1.dll.
Solution:   Adjust Cygwin/MinGW build file. (Ken Takata, closes #2827)
2018-10-21 22:45:43 +02:00
Bram Moolenaar b6f1480a6a patch 8.1.0489: crash when autocmd clears vimpgrep location list
Problem:    Crash when autocmd clears vimpgrep location list.
Solution:   Return from qf_jump_edit_buffer() early. (Yegappan Lakshmanan)
2018-10-21 18:47:43 +02:00
Bram Moolenaar 9f84ded38b patch 8.1.0488: using freed memory in quickfix code
Problem:    Using freed memory in quickfix code. (Dominique Pelle)
Solution:   Add the quickfix_busy() flag to postpone deleting quickfix lists
            until it is safe. (Yegappan Lakshmanan, closes #3538)
2018-10-20 20:54:02 +02:00
Bram Moolenaar 4c5d815256 patch 8.1.0487: no menus specifically for the terminal window
Problem:    No menus specifically for the terminal window.
Solution:   Add :tlmenu. (Yee Cheng Chin, closes #3439) Add a menu test.
2018-10-19 22:36:53 +02:00
Bram Moolenaar 42a4ea10af patch 8.1.0486: can't build in MS-Windows
Problem:    Can't build in MS-Windows.
Solution:   Put mch_access() call inside #ifdef
2018-10-19 17:36:01 +02:00
Bram Moolenaar 839e81e12d patch 8.1.0485: term_start() does not check if directory is accessible
Problem:    term_start() does not check if directory is accessible.
Solution:   Add mch_access() call. (Jason Franklin)
2018-10-19 16:53:39 +02:00
Bram Moolenaar 38654503b0 patch 8.1.0484: some file types are not recognized
Problem:    Some file types are not recognized.
Solution:   Update the file type detection.
2018-10-19 16:27:31 +02:00
Bram Moolenaar 2c64ca1802 Update runtime files 2018-10-19 16:22:31 +02:00
Bram Moolenaar 04c86d27fe patch 8.1.0483: MinGW does not build tee.exe
Problem:    MinGW does not build tee.exe.
Solution:   Add build instructions. (Yasuhiro Matsumoto, closes #3548)
2018-10-17 22:45:54 +02:00
Bram Moolenaar 115510f0bd patch 8.1.0482: MinGW "make clean" deletes all .exe files
Problem:    MinGW "make clean" deletes all .exe files.
Solution:   Only delete .exe files that it builds. (Ken takata)
2018-10-17 22:12:14 +02:00
Bram Moolenaar 29e7fe55be patch 8.1.0481: when "Terminal" highlight is reverted cursor doesn't show
Problem:    When "Terminal" highlight is reverted cursor doesn't show.
Solution:   Get the colors of the "Terminal" group. (closes #3546)
2018-10-16 22:13:00 +02:00
Bram Moolenaar b361db077f patch 8.1.0480: MinGW build file uses different -I flags than MVC
Problem:    MinGW build file uses different -I flags than MVC.
Solution:   Add -I to $CFLAGS. (Ken takata)
2018-10-16 21:13:14 +02:00
Bram Moolenaar 64f410742f patch 8.1.0479: failure when setting 'varsofttabstop' to end in a comma
Problem:    Failure when setting 'varsofttabstop' to end in a comma. (Ralf
            Schandl)
Solution:   Reject value with trailing command.  Add test for invalid values
            (closes #3544)
2018-10-15 22:51:50 +02:00
Bram Moolenaar 65dc12143a patch 8.1.0478: cannot build with perl using MinGW
Problem:    Cannot build with perl using MinGW.
Solution:   Add -I. (Ken takata, Cesar Romani)
2018-10-15 20:11:18 +02:00
Bram Moolenaar d95c3c253c patch 8.1.0477: tiny build fails
Problem:    Tiny build fails.
Solution:   Add a dummy declaration for funccal_entry_T.
2018-10-14 22:38:09 +02:00
Bram Moolenaar a2aad02830 patch 8.1.0476: memory leaks in test_escaped_glob
Problem:    Memory leaks in test_escaped_glob.
Solution:   Avoid failure when running the shell, use the sandbox.
2018-10-14 22:03:56 +02:00
Bram Moolenaar 27e80c885b patch 8.1.0475: memory not freed on exit when quit in autocmd
Problem:    Memory not freed on exit when quit in autocmd.
Solution:   Remember funccal stack when executing autocmd.
2018-10-14 21:41:01 +02:00
Bram Moolenaar a16bc54503 patch 8.1.0474: directory where if_perl.c is written is inconsistent
Problem:    Directory where if_perl.c is written is inconsistent.
Solution:   use auto/if_perl.c for MS-Windows. (Ken Takata, closes #3540)
2018-10-14 16:25:10 +02:00
Bram Moolenaar d6105cb408 patch 8.1.0473: user doesn't notice file does not exist when swap file does
Problem:    User doesn't notice file does not exist when swap file does.
Solution:   Add a note that the file cannot be found.  Make the "still
            running" notice stand out.
2018-10-13 19:06:27 +02:00
Bram Moolenaar 6cdb2c9811 patch 8.1.0472: dosinst command has a few flaws
Problem:    Dosinst command has a few flaws.
Solution:   Register DisplayIcon, DisplayVersion and Publisher for the
            uninstaller. (closes #3485)  Don't set 'diffexpr' if internal diff
            is supported. Allow for using Vi compatible from the command line.
            Remove needless sleeps.  Add comments in the generated _vimrc.
            (Ken Takata, closes #3525)
2018-10-13 17:25:27 +02:00
Bram Moolenaar 453ce7c16b patch 8.1.0471: some tests are flaky or fail on some systems
Problem:    Some tests are flaky or fail on some systems.
Solution:   Increase waiting time for port number. Use "cmd /c" to execute
            "echo" on win32. (Ken Takata, closes #3534)
2018-10-12 22:15:12 +02:00
Bram Moolenaar 3d6014f033 patch 8.1.0470: pointer ownership around fname_expand() is unclear
Problem:    Pointer ownership around fname_expand() is unclear.
Solution:   Allow b_ffname and b_sfname to point to the same allocated memory,
            only free one.  Update comments.
2018-10-11 19:27:47 +02:00
Bram Moolenaar 108e7b422b patch 8.1.0469: too often indexing in qf_lists[]
Problem:    Too often indexing in qf_lists[].
Solution:   Use a qf_list_T pointer. (Yegappan Lakshmanan)
2018-10-11 17:39:12 +02:00
Kazuki Sakamoto 4be190ebe6 Merge remote-tracking branch 'vim/master' 2018-10-10 20:53:21 -07:00
Bram Moolenaar 0664089ecc patch 8.1.0468: MS-Windows: filter command with pipe character fails
Problem:    MS-Windows: Filter command with pipe character fails. (Johannes
            Riecken)
Solution:   Find the pipe character outside of quotes. (Yasuhiro Matsumoto,
            closes #1743, closes #3523)
2018-10-09 21:49:33 +02:00
Bram Moolenaar 1d3dbcf743 patch 8.1.0467: cannot build with Mac OS X 10.5
Problem:    Cannot build with Mac OS X 10.5.
Solution:   Change #ifdef into #if. (Akshay Hegde, closes #3022)
2018-10-08 20:07:39 +02:00
Bram Moolenaar 6a2633b00b patch 8.1.0466: autocmd test fails
Problem:    Autocmd test fails.
Solution:   Do call inchar() when flushing typeahead.
2018-10-07 23:16:36 +02:00
Bram Moolenaar 95ba5c364f patch 8.1.0465: client-server test fails
Problem:    Client-server test fails.
Solution:   Change logic in EnumWindows().
2018-10-07 22:47:07 +02:00
Bram Moolenaar 1df2fa47b4 patch 8.1.0464: MS-Windows: job_info() has cmd without backslashes
Problem:    MS-Windows: job_info() has cmd without backslashes. (Daniel
            Hahler)
Solution:   Use rem_backslash(). (closes #3517, closes #3404)
2018-10-07 21:36:11 +02:00
Bram Moolenaar 798184cc67 patch 8.1.0463: "simalt ~x" in .vimrc blocks swap file prompt
Problem:    "simalt ~x" in .vimrc blocks swap file prompt.
Solution:   Flush buffers before prompting. (Yasuhiro Matsumoto,
            closes #3518, closes #2192)
2018-10-07 20:48:39 +02:00
Bram Moolenaar c0543e145f patch 8.1.0462: when using ConPTY Vim can be a child process
Problem:    When using ConPTY Vim can be a child process.
Solution:   To find a Vim window use both EnumWindows() and
            EnumChildWindows(). (Nobuhiro Takasaki, closes #3521)
2018-10-07 20:35:12 +02:00
Bram Moolenaar 00bf8cd211 patch 8.1.0461: quickfix code uses too many /* */ comments
Problem:    Quickfix code uses too many /* */ comments.
Solution:   Change to // comments. (Yegappan Lakshmanan)
2018-10-07 20:26:20 +02:00
Bram Moolenaar 1307d1c003 patch 8.1.0460: assert_fails() does not take a message argument
Problem:    assert_fails() does not take a message argument
Solution:   Add the argument.
2018-10-07 20:16:49 +02:00
Bram Moolenaar a05a0d325c patch 8.1.0459: Test_executable fails when there is a dog in the system
Problem:    Test_executable fails when there is a dog in the system.
Solution:   Rename the dog. (Hirohito Higashi)
2018-10-07 18:43:05 +02:00
Bram Moolenaar df77cef92e patch 8.1.0458: ml_get error and crash when using "do"
Problem:    Ml_get error and crash when using "do".
Solution:   Adjust cursor position also when diffupdate is not needed.
            (Hirohito Higashi)
2018-10-07 17:46:42 +02:00
Bram Moolenaar 0cc7b2d6cc patch 8.1.0457: win32 console: key mappings don't work
Problem:    Win32 console: key mappings don't work.
Solution:   Use another solution for the keypad keys that doesn't break
            mappings. Some values will be negative. (Mike Williams)
2018-10-07 15:49:56 +02:00
Bram Moolenaar d8f27b30d6 patch 8.1.0456: running test hangs when the input file is being edited
Problem:    Running test hangs when the input file is being edited.
Solution:   Use a SwapExists autocommand to ignore editing the test script.
2018-10-07 15:42:07 +02:00
Bram Moolenaar 019dfe6855 patch 8.1.0455: checking for empty quickfix stack is not consistent
Problem:    Checking for empty quickfix stack is not consistent.
Solution:   Use qf_stack_empty(). (Yegappan Lakshmanan)
2018-10-07 14:38:49 +02:00
Bram Moolenaar 2610990709 patch 8.1.0454: resolve() was not tested with a symlink cycle
Problem:    resolve() was not tested with a symlink cycle.
Solution:   Add a test. (Dominique Pelle, closes #3513)
2018-10-06 15:43:17 +02:00
Bram Moolenaar 8295666dc2 patch 8.1.0453: MS-Windows: executable() is not reliable
Problem:    MS-Windows: executable() is not reliable.
Solution:   Use $PATHEXT properly. (Yasuhiro Matsumoto, closes #3412)
2018-10-06 15:18:45 +02:00
Bram Moolenaar 7554c548a4 patch 8.1.0452: MS-Windows: not finding intl.dll
Problem:    MS-Windows: not finding intl.dll.
Solution:   Also find intl.dll next to libintl.dll. (Ken Takata)
2018-10-06 15:03:15 +02:00
Kazuki Sakamoto 8b2dcf4d6e Merge remote-tracking branch 'vim/master' 2018-10-03 22:29:11 -07:00
Bram Moolenaar 2bc152ab53 patch 8.1.0451: Win32 console: keypad keys don't work
Problem:    Win32 console: keypad keys don't work.
Solution:   Use numbers instead of characters to avoid the value becoming
            negative. (Mike Williams)
2018-10-03 20:44:20 +02:00
Bram Moolenaar 0e9deefb4f patch 8.1.0450: build failure without the +fold feature
Problem:    Build failure without the +fold feature.
Solution:   Add #ifdef.
2018-10-02 21:48:34 +02:00
Bram Moolenaar 7701f30856 patch 8.1.0449: when 'rnu' is set folded lines are not displayed correctly
Problem:    When 'rnu' is set folded lines are not displayed correctly.
            (Vitaly Yashin)
Solution:   When only redrawing line numbers do draw folded lines.
            (closes #3484)
2018-10-02 21:20:32 +02:00
Bram Moolenaar 4a5abbd613 patch 8.1.0448: cursorline not removed when using 'cursorbind'
Problem:    Cursorline not removed when using 'cursorbind'. (Justin Keyes)
Solution:   Store the last cursor line per window. (closes #3488)
2018-10-02 18:26:10 +02:00
Bram Moolenaar 586c70cdfe patch 8.1.0447: GUI scrollbar test fails with Athena and Motif
Problem:    GUI scrollbar test fails with Athena and Motif.
Solution:   When not using on-the-fly scrolling call normal_cmd().
2018-10-02 16:23:58 +02:00
Bram Moolenaar 4f88875725 patch 8.1.0446: options test fails in the GUI
Problem:    Options test fails in the GUI.
Solution:   Don't try changing 'term' in the GUI.
2018-10-02 15:06:40 +02:00
Bram Moolenaar 35bc7d6c52 patch 8.1.0445: setting 'term' does not store location for termcap options
Problem:    Setting 'term' does not store location for termcap options.
Solution:   Set the script context for termcap options that are changed when
            'term' is set.
2018-10-02 14:45:10 +02:00
Bram Moolenaar 54ade9f7e3 patch 8.1.0444: unnecessary check for NULL pointer
Problem:    Unnecessary check for NULL pointer.
Solution:   Remove check and call vim_free() directly.
2018-10-02 14:15:12 +02:00
Bram Moolenaar 95bafa296a Update runtime files. 2018-10-02 13:26:25 +02:00
Kazuki Sakamoto 6bfafd9d5f Merge remote-tracking branch 'vim/master' 2018-09-30 16:28:11 -07:00
Bram Moolenaar 6dff58f15c patch 8.1.0443: unnecessary static function prototypes
Problem:    Unnecessary static function prototypes.
Solution:   Remove unnecessary prototypes.
2018-09-30 21:43:26 +02:00
Bram Moolenaar f45d747ebf patch 8.1.0442: GUI: cursor not drawn after ":redraw | sleep"
Problem:    GUI: Cursor not drawn after ":redraw | sleep".
Solution:   Flush the output. (closes #3496)
2018-09-30 18:22:26 +02:00
Bram Moolenaar d3dc062160 patch 8.1.0441: build failure without command line history
Problem:    Build failure without command line history.
Solution:   Move cmdline_init() outside of #ifdef.
2018-09-30 17:45:30 +02:00
Bram Moolenaar 2bfddfc508 patch 8.1.0440: remove() with a range not sufficiently tested
Problem:    remove() with a range not sufficiently tested.
Solution:   Add a test. (Dominique Pelle, closes #3497)
2018-09-30 17:16:25 +02:00
Bram Moolenaar 438d176e35 patch 8.1.0439: recursive use of getcmdline() still not protected
Problem:    Recursive use of getcmdline() still not protected.
Solution:   Instead of saving the command buffer when making a call which may
            cause recursiveness, save the buffer when actually being called
            recursively.
2018-09-30 17:11:48 +02:00
Bram Moolenaar b434ae2a1f patch 8.1.0438: the ex_make() function is too long
Problem:    The ex_make() function is too long.
Solution:   Split it into several functions. (Yegappan Lakshmanan)
2018-09-28 23:09:55 +02:00
Bram Moolenaar 95892c27b2 patch 8.1.0437: may access freed memory when syntax HL times out
Problem:    May access freed memory when syntax HL times out. (Philipp Gesang)
Solution:   Clear b_sst_first when clearing b_sst_array.
2018-09-28 22:26:54 +02:00
Kazuki Sakamoto dfe72b890a Merge remote-tracking branch 'vim/master' 2018-09-25 22:20:15 -07:00
Bram Moolenaar ee91c33570 patch 8.1.0436: can get the text of inputsecret() with getcmdline()
Problem:    Can get the text of inputsecret() with getcmdline(). (Tommy Allen)
Solution:   Don't return the text.
2018-09-25 22:27:35 +02:00
Bram Moolenaar 8c63e0ec31 patch 8.1.0435: cursorline highlight not removed in some situation
Problem:    Cursorline highlight not removed in some situation. (Vitaly
            Yashin)
Solution:   Reset last_cursorline when resetting 'cursorline'. (Christian
            Brabandt, closes #3481)
2018-09-25 22:17:54 +02:00
Bram Moolenaar 09037503ea patch 8.1.0434: copy_loclist() is too long
Problem:    copy_loclist() is too long.
Solution:   Split in multiple functions. (Yegappan Lakshmanan)
2018-09-25 22:08:14 +02:00
Bram Moolenaar 31cbadf74b patch 8.1.0433: mapping can obtain text from inputsecret()
Problem:    Mapping can obtain text from inputsecret(). (Tommy Allen)
Solution:   Disallow CTRL-R = and CTRL-\ e when using inputsecret().
2018-09-25 20:48:57 +02:00
Bram Moolenaar 45c5c86e63 patch 8.1.0432: compiler warning for signed/unsigned
Problem:    Compiler warning for signed/unsigned.
Solution:   Add type cast. (Mike Williams)
2018-09-25 18:59:21 +02:00
Bram Moolenaar 6dae96ef7a patch 8.1.0431: the qf_jump() function is too long
Problem:    The qf_jump() function is too long.
Solution:   Refactor to split it into several functions. (Yegappan Lakshmanan)
2018-09-24 21:50:12 +02:00
Bram Moolenaar d339828b4b patch 8.1.0430: Xargadd file left behind after running test
Problem:    Xargadd file left behind after running test.
Solution:   Delete the file. (Dominique Pelle)
2018-09-24 21:32:11 +02:00
Bram Moolenaar c75878c923 patch 8.1.0429: no test for :lcd with 'shellslash'
Problem:    No test for :lcd with 'shellslash'.
Solution:   Add a test. (Daniel Hahler, closes #3475)
2018-09-23 19:36:15 +02:00
Bram Moolenaar 3b30168f04 patch 8.1.0428: the :suspend command is not tested
Problem:    The :suspend command is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3472)
2018-09-22 21:37:39 +02:00
Bram Moolenaar 7ff8a3cfb6 patch 8.1.0427: MS-Windows GUI: using invalid encoded file name
Problem:    MS-Windows GUI: using invalid encoded file name.
Solution:   Drop the file name and return NULL. (Ken Takata, closes #3467)
2018-09-22 14:39:15 +02:00
Bram Moolenaar 4841a7ccae patch 8.1.0426: accessing invalid memory in SmcOpenConnection()
Problem:    Accessing invalid memory in SmcOpenConnection().
Solution:   Reduce size of errorstring by one. (Dominique Pelle, closes #3469)
2018-09-22 14:08:49 +02:00
Kazuki Sakamoto 7b3e0ab5a8 Merge remote-tracking branch 'vim/master' 2018-09-22 00:59:19 -07:00
Kazuki Sakamoto 3616c83b36 Merge pull request #737 from cwlin/fix_guifontwide_size
Respect the font size setting of guifontwide.
2018-09-22 00:59:00 -07:00
Arseny Nasokin 592e3c7823 Vimrc python37 (#739)
* Use Python 3.7 from python.org if installed

* Use Python from MacPorts after Homebrew if installed

* Added requested comments and Python2.7 from python.org detection
2018-09-22 00:58:29 -07:00
Kazuki Sakamoto a968ddf5a4 Merge pull request #742 from ichizok/fix/windows-like-shortcuts
<C-U> and <C-O> don't work when using Japanese IM with "Windows-like shortcuts" turned on
2018-09-22 00:57:57 -07:00
Kazuki Sakamoto d716ad7ff8 Merge pull request #749 from ichizok/fix/timer-check
Fix timer handling
2018-09-22 00:56:03 -07:00
Bram Moolenaar 9cea87c577 patch 8.1.0425: ml_get error and crash with appendbufline()
Problem:    ml_get error and crash with appendbufline(). (Masashi Iizuka)
Solution:   Set per-window buffer info. (Hirohito Higashi, closes #3455)
2018-09-21 16:59:45 +02:00
Bram Moolenaar e76d7a63df patch 8.1.0424: test output is very verbose, loading CI log is slow
Problem:    Test output is very verbose, loading CI log is slow.
Solution:   Redirect output to /dev/null. (Ken Takata, closes #3456)
2018-09-21 16:37:25 +02:00
Bram Moolenaar 0bd4051732 patch 8.1.0423: MS-Windows: using dup-close for flushing a file
Problem:    MS-Windows: using dup-close for flushing a file.
Solution:   Use _commit(). (Ken Takata, closes #3463)
2018-09-21 14:48:53 +02:00
Bram Moolenaar 4ff4290de1 patch 8.1.0422: cannot create map file with MinGW
Problem:    Cannot create map file with MinGW.
Solution:   Add support for $MAP. (Ken Takata, closes #3460)
2018-09-21 14:43:10 +02:00
Bram Moolenaar 76c612a166 patch 8.1.0421: MS-Windows: Ruby path is wrong for Ruby 1.9 and later
Problem:    MS-Windows: Ruby path is wrong for Ruby 1.9 and later.
Solution:   Let -I argument depend on Ruby version. (Ken Takata, closes #3461)
2018-09-21 14:31:51 +02:00
Bram Moolenaar 1f402806b8 patch 8.1.0420: generating vim.lib when using ActivePerl 5.20.3 or later
Problem:    Generating vim.lib when using ActivePerl 5.20.3 or later.
Solution:   Redefine XS_EXTERNAL(). (Ken Takata, closes #3462)
2018-09-21 14:01:27 +02:00
Bram Moolenaar de2bd37bec patch 8.1.0419: Cygwin: running cproto fails with -O2
Problem:    Cygwin: running cproto fails with -O2.
Solution:   Strip -O2 for cproto. (Ken Takata, closes #3465)
2018-09-21 13:56:25 +02:00
Bram Moolenaar b872e63fc6 patch 8.1.0418: MS-Windows: cannot separate Lua include and library dirs
Problem:    MS-Windows: cannot separate Lua include and library directories.
Solution:   Add LUA_LIBDIR and LUA_INCDIR. (Ken Takata, closes #3464)
2018-09-21 13:44:09 +02:00
Bram Moolenaar 036b09ca78 patch 8.1.0417: several command line arguments are not tested
Problem:    Several command line arguments are not tested.
Solution:   Add tests for -m, -M, -R and -Vfile. (Dominique Pelle,
            closes #3458)
2018-09-21 12:54:06 +02:00
Bram Moolenaar b0e982bf05 patch 8.1.0416: sort doesn't report deleted lines
Problem:    Sort doesn't report deleted lines.
Solution:   Call msgmore(). (Christian Brabandt, closes #3454)
2018-09-21 12:46:22 +02:00
Bram Moolenaar d4f73438bb patch 8.1.0415: not actually using 16 colors with vtp
Problem:    Not actually using 16 colors with vtp.
Solution:   Always use 256 colors when vtp is used. (Nobuhiro Takasaki,
            closes #3432)
2018-09-21 12:24:12 +02:00
Bram Moolenaar 3f3fb0b147 patch 8.1.0414: v:option_old is cleared when using :set in OptionSet autocmd
Problem:    v:option_old and v:option_new are cleared when using :set in
            OptionSet autocmd. (Gary Johnson)
Solution:   Don't trigger OptionSet recursively.
2018-09-21 11:59:32 +02:00
Bram Moolenaar 933bef779a patch 8.1.0413: test output is duplicated or missing
Problem:    Test output is duplicated or missing.
Solution:   Adjust the MS-Windows and Unix test makefiles. (Ken Takata,
            closes #3452)
2018-09-20 21:39:33 +02:00
ichizok d9c3c62eaf Add the condition for calling interpretKeyEvents 2018-09-20 16:25:48 +09:00
ichizok 92fcfe15a5 Check new timer before [MMBackend waitForInput:] 2018-09-20 16:23:19 +09:00
Kazuki Sakamoto 1f7e0c9ec1 Merge remote-tracking branch 'vim/master' 2018-09-19 19:04:51 -07:00
Bram Moolenaar 92cbf62b87 patch 8.1.0412: cannot build with GTK 2.4
Problem:    Cannot build with GTK 2.4.
Solution:   Add back a few #ifdefs. (Ken Takata, closes #3447)
            Also support older GTK. (Tom Christensen)
2018-09-19 22:40:03 +02:00
Bram Moolenaar cec12cd661 patch 8.1.0411: renamed file missing from distribution
Problem:    Renamed file missing from distribution.
Solution:   Rename screen.c to termscreen.c (Zdenek Dohnal, closes #3449)
2018-09-19 22:00:30 +02:00
Bram Moolenaar 476c0db002 patch 8.1.0410: the ex_copen() function is too long
Problem:    The ex_copen() function is too long.
Solution:   Refactor to split off two functions. (Yegappan Lakshmanan)
2018-09-19 21:56:02 +02:00
Bram Moolenaar 4b1c9a91b5 patch 8.1.0409: startup test fails on MS-Windows
Problem:    Startup test fails on MS-Windows.
Solution:   Do the Arabic test in silent Ex mode.  Loosen the check for -V2.
2018-09-19 21:06:31 +02:00
Kazuki Sakamoto 365fede8af Merge remote-tracking branch 'vim/master' 2018-09-18 19:45:10 -07:00
Bram Moolenaar a87f8fd3fe patch 8.1.0408: MSVC: cannot use the "x64" native compiler option
Problem:    MSVC: cannot use the "x64" native compiler option.
Solution:   Ignore case for %Platform%.  Improve documentation. (Ken Takata)
2018-09-18 22:58:41 +02:00
Bram Moolenaar fe15b7dfa6 patch 8.1.0407: quickfix code mixes using the stack and a list pointer
Problem:    Quickfix code mixes using the stack and a list pointer.
Solution:   Use a list pointer in more places. (Yegappan Lakshmanan,
            closes #3443)
2018-09-18 22:50:06 +02:00
Bram Moolenaar 9e81db9742 patch 8.1.0406: several command line arguments are not tested
Problem:    Several command line arguments are not tested.
Solution:   Add tests for -A, -F, -H, -p and -V. (Dominique Pelle,
            closes #3446)
2018-09-18 22:37:31 +02:00
Bram Moolenaar 664323e7c8 patch 8.1.0405: too many #ifdefs for GTK
Problem:    Too many #ifdefs for GTK.
Solution:   Define macros instead of using #ifdef. (Ken Takata, closes #3436)
2018-09-18 22:30:07 +02:00
Bram Moolenaar e961cba3cb patch 8.1.0404: accessing invalid memory with long argument name
Problem:    Accessing invalid memory with long argument name.
Solution:   Use item_count instead of checking for a terminating NULL.
            (Dominique Pelle, closes #3444)
2018-09-18 21:51:47 +02:00
Bram Moolenaar cc3a997746 patch 8.1.0403: header file missing from distribution
Problem:    Header file missing from distribution.
Solution:   Add src/protodef.h.
2018-09-18 21:41:47 +02:00
Bram Moolenaar 198fa066b2 patch 8.1.0402: the DiffUpdate event isn't triggered for :diffput
Problem:    The DiffUpdate event isn't triggered for :diffput.
Solution:   Also trigger DiffUpdate for :diffget and :diffput.
2018-09-18 21:20:26 +02:00
Kazuki Sakamoto acf95bfed2 Merge remote-tracking branch 'vim/master' 2018-09-17 21:51:27 -07:00
Bram Moolenaar 110bd60985 patch 8.1.0401: can't get swap name of another buffer
Problem:    Can't get swap name of another buffer.
Solution:   Add swapname(). (Ozaki Kiichi, closes #3441)
2018-09-16 18:46:59 +02:00
Bram Moolenaar d2b58c0a2c patch 8.1.0400: using freed memory with :diffget
Problem:    Using freed memory with :diffget.
Solution:   Skip ex_diffupdate() while updating diffs. (closes #3442)
2018-09-16 18:10:48 +02:00
Bram Moolenaar 65985ac998 patch 8.1.0399: 'hlsearch' highlight remains in other window
Problem:    'hlsearch' highlight remains in other window after cancelling
            command.
Solution:   Redraw all windows. Also remove unnecessary delays. (closes #3437)
2018-09-16 17:08:04 +02:00
Bram Moolenaar 8f4499b816 patch 8.1.0398: no test for -o and -O command line arguments
Problem:    No test for -o and -O command line arguments.
Solution:   Add a test. (Dominique Pelle, closes #3438)
2018-09-16 16:28:11 +02:00
Bram Moolenaar e8fa05b5bc patch 8.1.0397: no event triggered after updating diffs
Problem:    No event triggered after updating diffs.
Solution:   Add the DiffUpdated event.
2018-09-16 15:48:06 +02:00
Bram Moolenaar 42c63356d7 patch 8.1.0396: another compiler warning on 64-bit MS-Windows
Problem:    Another compiler warning on 64-bit MS-Windows.
Solution:   Add type cast. (Mike Williams)
2018-09-16 15:14:18 +02:00
Bram Moolenaar 6e272acc82 patch 8.1.0395: compiler warning on 64-bit MS-Windows
Problem:    Compiler warning on 64-bit MS-Windows.
Solution:   Add type cast. (Mike Williams)
2018-09-16 14:51:36 +02:00
Bram Moolenaar e3521d9cbb patch 8.1.0394: diffs are not always updated correctly
Problem:    Diffs are not always updated correctly.
Solution:   When using internal diff update for any changes properly.
2018-09-16 14:10:31 +02:00
Bram Moolenaar 785fc6567f patch 8.1.0393: not all white space difference options available
Problem:    Not all white space difference options available.
Solution:   Add "iblank", "iwhiteall" and "iwhiteeol" to 'diffopt'.
2018-09-15 19:17:38 +02:00
Bram Moolenaar 50eb16c3b2 patch 8.1.0392: error while typing :/foo/s// with 'incsearch' enabled
Problem:    Error while typing :/foo/s// with 'incsearch' enabled.
Solution:   Do not give search errors when highlighting matches.
2018-09-15 15:42:40 +02:00
Bram Moolenaar ac49f61a20 patch 8.1.0391: building in a shadow directory fails
Problem:    Building in a shadow directory fails.
Solution:   Don't link the xdiff directory but what's in it. (closes #3428)
2018-09-15 15:08:52 +02:00
Bram Moolenaar ab18673731 patch 8.1.0390: scrollbars are not tested
Problem:    Scrollbars are not tested.
Solution:   Add test_scrollbar() and a test.
2018-09-14 21:27:06 +02:00
Bram Moolenaar da1f71d75f patch 8.1.0389: :behave command is not tested
Problem:    :behave command is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3429)
2018-09-14 20:10:32 +02:00
Josh Petrie d02a1945e3 Merge pull request #731 from ychin/guioptions-k-2
Support guioptions 'k' flag in MacVim (2nd attempt)
2018-09-14 07:13:02 -07:00
Kazuki Sakamoto 33c20214bc Merge remote-tracking branch 'vim/master' 2018-09-13 20:47:20 -07:00
Bram Moolenaar bf1c1b8513 patch 8.1.0388: Coverity complains about possible NULL pointer use
Problem:    Coverity complains about possible NULL pointer use.
Solution:   Use get_tv_string() instead of get_tv_string_chk().
2018-09-13 21:30:05 +02:00
Bram Moolenaar 24839edc54 patch 8.1.0387: no test for 'ambiwidth' detection
Problem:    No test for 'ambiwidth' detection.
Solution:   Add a test.
2018-09-13 20:46:52 +02:00
Bram Moolenaar fe8ef98dd1 patch 8.1.0386: cannot test with non-default option value
Problem:    Cannot test with non-default option value.
Solution:   Add test_option_not_set().
2018-09-13 20:31:54 +02:00
Bram Moolenaar c91c500348 patch 8.1.0385: Coveralls badge doesn't update
Problem:    Coveralls badge doesn't update.
Solution:   Update the URL
2018-09-13 19:04:48 +02:00
Bram Moolenaar 8aeb504fc6 patch 8.1.0384: sign ordering depends on +netbeans feature
Problem:    Sign ordering depends on +netbeans feature.
Solution:   Also order signs without +netbeans. (Christian Brabandt,
            closes #3224)
2018-09-13 18:33:05 +02:00
Bram Moolenaar a214079008 patch 8.1.0383: missing source file rename
Problem:    Missing source file rename.
Solution:   Update the dependency.
2018-09-13 18:05:48 +02:00
Bram Moolenaar 0f7683f973 patch 8.1.0382: some make programs can't handle "xdiff/../"
Problem:    Some make programs can't handle dependency on "xdiff/../".
Solution:   Strip it out.
2018-09-13 18:01:31 +02:00
Bram Moolenaar 5c6f574bd1 patch 8.1.0381: variable declaration not at start of block
Problem:    Variable declaration not at start of block.
Solution:   Fix line ordering.
2018-09-13 17:32:07 +02:00
Bram Moolenaar 32d19c1820 patch 8.1.0380: "make proto" doesn't work well
Problem:    "make proto" doesn't work well.
Solution:   Define a few more types for cproto.  Update proto files.  Fix that
            workshop didn't build.
2018-09-13 17:26:54 +02:00
Bram Moolenaar 78dcd4f002 patch 8.1.0379: build dependencies are incomplete
Problem:    Build dependencies are incomplete.
Solution:   Update the build dependencies, mainly for xdiff.  Adjust object
            directory for libvterm and xdiff.
2018-09-13 17:23:28 +02:00
Bram Moolenaar 0d5f21c3df patch 8.1.0378: CI build failure
Problem:    CI build failure.
Solution:   Include vim.h as ../vim.h.  Fix compiler warning.
2018-09-13 15:58:58 +02:00
Bram Moolenaar 42335f50bc patch 8.1.0377: xdiff doesn't use the Vim memory allocation functions
Problem:    Xdiff doesn't use the Vim memory allocation functions.
Solution:   Change the xdl_ defines.  Check for out-of-memory.  Rename
            "ignored" to "vim_ignored".
2018-09-13 15:33:43 +02:00
Bram Moolenaar c787539747 patch 8.1.0376: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable. (Tony Mechelynck)
Solution:   Initialize the variable.
2018-09-13 14:57:41 +02:00
Bram Moolenaar 3b8defd0a5 patch 8.1.0375: cannot use diff mode with Cygwin diff.exe
Problem:    Cannot use diff mode with Cygwin diff.exe. (Igor Forca)
Solution:   Skip over unrecognized lines in the diff output.
2018-09-13 13:03:11 +02:00
Kazuki Sakamoto cfcb2d4ffe Merge remote-tracking branch 'vim/master' 2018-09-12 21:29:45 -07:00
Bram Moolenaar bd9a53c06c patch 8.1.0374: moving the cursor is slow when 'relativenumber' is set
Problem:    Moving the cursor is slow when 'relativenumber' is set.
Solution:   Only redraw the number column, not all lines.
2018-09-12 23:15:48 +02:00
Bram Moolenaar 1b7fefcbce patch 8.1.0373: screen updating still slow when 'cursorline' is set
Problem:    Screen updating still slow when 'cursorline' is set.
Solution:   Fix setting last_cursorline.
2018-09-12 22:27:15 +02:00
Bram Moolenaar 90a997987d patch 8.1.0372: screen updating slow when 'cursorline' is set
Problem:    Screen updating slow when 'cursorline' is set.
Solution:   Only redraw the old and new cursor line, not all lines.
2018-09-12 21:52:18 +02:00
Bram Moolenaar 643b614087 patch 8.1.0371: argument types for select() may be wrong
Problem:    Argument types for select() may be wrong.
Solution:   Use a configure macro. (Tobias Ulmer)
2018-09-12 20:29:09 +02:00
Bram Moolenaar 274cea35c6 patch 8.1.0370: not using internal diff if 'diffopt' is not changed
Problem:    Not using internal diff if 'diffopt' is not changed.
Solution:   Correct initialization of diff_flags. (Christian Brabandt)
2018-09-12 18:00:12 +02:00
Kazuki Sakamoto 3f1f9b0f9d Merge remote-tracking branch 'vim/master' 2018-09-11 19:55:13 -07:00
Bram Moolenaar 67f8ab8299 patch 8.1.0369: continuation lines cannot contain comments
Problem:    Continuation lines cannot contain comments.
Solution:   Support using "\ .
2018-09-11 22:37:29 +02:00
Bram Moolenaar 25328e39d2 patch 8.1.0368: GTK code has too many #ifdefs and GTK 2.10 building fails
Problem:    GTK code has too many #ifdefs and building fails with GTK 2.10.
Solution:   Always use gtk_widget_get_window() and define it for older GTK
            versions. (Ken Takata, closes #3421)
2018-09-11 21:30:09 +02:00
Bram Moolenaar 84d9390480 patch 8.1.0367: getchar(1) no longer processes pending messages
Problem:    getchar(1) no longer processes pending messages. (Yasuhiro
            Matsumoto)
Solution:   Call parse_queued_messages().
2018-09-11 20:10:20 +02:00
Kazuki Sakamoto be7053b6bd Merge remote-tracking branch 'vim/master' 2018-09-10 22:49:48 -07:00
Bram Moolenaar 007921611b patch 8.1.0366: pieces of the xdiff code are not used
Problem:    Pieces of the xdiff code are not used.
Solution:   Add "#if 0" to omit unused code.
2018-09-10 22:18:52 +02:00
Bram Moolenaar 4c7b08f640 patch 8.1.0365: function profile doesn't specify where it was defined
Problem:    Function profile doesn't specify where it was defined.
Solution:   Show the script name and line number.
2018-09-10 22:03:40 +02:00
Bram Moolenaar e797abf3c7 patch 8.1.0364: compiler warning in xdiff code
Problem:    Compiler warning in xdiff code. (Yegappan Lakshmanan)
Solution:   Initialize directly.
2018-09-10 21:22:15 +02:00
Bram Moolenaar c93262b2e3 patch 8.1.0363: internal diff isn't used by default as advertised
Problem:    Internal diff isn't used by default as advertised.
Solution:   Add "internal" to the default value of 'diffopt'.
            Also add couple of files missing from the distribution.
2018-09-10 21:15:40 +02:00
Bram Moolenaar f29c1c6aa3 patch 8.1.0362: cannot get the script line number when executing a function
Problem:    Cannot get the script line number when executing a function.
Solution:   Store the line number besides the script ID. (Ozaki Kiichi,
            closes #3362)  Also display the line number with ":verbose set".
2018-09-10 21:05:02 +02:00
Bram Moolenaar 6b0b83f768 patch 8.1.0361: remote user not used for completion
Problem:    Remote user not used for completion. (Stucki)
Solution:   Use $USER too. (Dominique Pelle, closes #3407)
2018-09-10 19:03:05 +02:00
Bram Moolenaar e828b7621c patch 8.1.0360: using an external diff program is slow and inflexible
Problem:    Using an external diff program is slow and inflexible.
Solution:   Include the xdiff library. (Christian Brabandt, closes #2732)
            Use it by default.
2018-09-10 17:51:58 +02:00
Josh Petrie 84f1c3dbe4 Merge pull request #736 from cwlin/add_10_12_2_def
Add MAC_OS_X_VERSION_10_12_2 definition.
2018-09-10 08:33:39 -07:00
Bram Moolenaar 93a1df2c20 Update runtime files. 2018-09-10 11:51:50 +02:00
Bram Moolenaar 6f8bdab8e2 patch 8.1.0359: no clue what test failed when using a screendump twice
Problem:    No clue what test failed when using a screendump twice.
Solution:   Add an extra argument to VerifyScreenDump().
2018-09-09 22:02:24 +02:00
Bram Moolenaar a5c48c2698 patch 8.1.0358: crash when using term_dumpwrite() after the job finished
Problem:    Crash when using term_dumpwrite() after the job finished.
Solution:   Check for a finished job and give an error message.
2018-09-09 19:56:07 +02:00
Bram Moolenaar 02c972153d patch 8.1.0357: instructions for tests are outdated
Problem:    Instructions for tests are outdated. (Jason Franklin)
Solution:   Update the text.
2018-09-09 15:56:06 +02:00
Bram Moolenaar 99f043a57d patch 8.1.0356: using :s with 'incsearch' prevents CTRL-R CTRL-W
Problem:    Using :s with 'incsearch' prevents CTRL-R CTRL-W. (Boris Staletic)
Solution:   When past the pattern put cursor back in the start position.
            (closes #3413)
2018-09-09 15:54:14 +02:00
Bram Moolenaar a750ac2288 patch 8.1.0355: incorrect adjusting the popup menu for the preview window
Problem:    Incorrect adjusting the popup menu for the preview window.
Solution:   Compute position and height properl. (Ronan Pigott)  Also show at
            least ten items. (closes #3414)
2018-09-09 15:27:59 +02:00
Bram Moolenaar 53c8a478cc patch 8.1.0354: packadd test fails on MS-Windows
Problem:    Packadd test fails on MS-Windows.
Solution:   Ignore difference between forward and backward slashes.
2018-09-08 19:12:12 +02:00
Bram Moolenaar 99396d4cbf patch 8.1.0353: an "after" directory of a package is appended to 'rtp'
Problem:    An "after" directory of a package is appended to 'rtp', which
            will be after the user's "after" directory. ()
Solution:   Insert the package "after" directory before any other "after"
            directory in 'rtp'. (closes #3409)
2018-09-08 18:21:16 +02:00
Bram Moolenaar d4a1aabe37 patch 8.1.0352: browsing compressed tar files does not always work
Problem:    Browsing compressed tar files does not always work.
Solution:   Use the "file" command to get the compression type.
2018-09-08 15:10:34 +02:00
Kazuki Sakamoto ea5d7e71c0 Merge remote-tracking branch 'vim/master' 2018-09-06 22:51:52 -07:00
Bram Moolenaar 198cb66d65 patch 8.1.0351: 'incsearch' for :/foo/s//<Esc> changes last search pattern
Problem:    'incsearch' for :/foo/s//<Esc> changes last search pattern.
Solution:   Save the last search pattern earlier.
2018-09-06 21:44:17 +02:00
Bram Moolenaar 0b1468884a patch 8.1.0350: Vim may block on ch_sendraw()
Problem:    Vim may block on ch_sendraw() when the job is sending data back to
            Vim, which isn't read yet. (Nate Bosch)
Solution:   Add the "noblock" option to job_start(). (closes #2548)
2018-09-06 16:27:24 +02:00
Bram Moolenaar ed5a9d6612 patch 8.1.0349: crash when wiping buffer in a callback
Problem:    Crash when wiping buffer in a callback.
Solution:   Do not handle messages when only peeking for a character.
            (closes #2107)  Add "redraw_flag" to test_override().
2018-09-06 13:14:43 +02:00
Kazuki Sakamoto f29a0fcb35 Merge remote-tracking branch 'vim/master' 2018-09-05 23:01:43 -07:00
Bram Moolenaar e67a7d690a patch 8.1.0348: on Travis the slowest build is run last
Problem:    On Travis the slowest build is run last. (Dominique Pelle)
Solution:   Reorder the build entries.
2018-09-05 22:25:50 +02:00
Kazuki Sakamoto 800c4f7cc1 Merge remote-tracking branch 'vim/master' 2018-09-03 21:29:37 -07:00
Bram Moolenaar f1c118be93 patch 8.1.0347: some tests fail on Solaris
Problem:    Some tests fail on Solaris.
Solution:   Skip writefile test. Fix path to libc.so. Improve test for Turkish
            case change. (Libor Bukata, Bjorn Linse, closes #3403)
2018-09-03 22:08:10 +02:00
Bram Moolenaar 20aac6c112 Update runtime files. 2018-09-02 21:07:30 +02:00
Bram Moolenaar acca8df9d4 patch 8.1.0346: building with Aap is outdated and unused
Problem:    Building with Aap is outdated and unused.
Solution:   Remove the Aap build files.
2018-09-02 15:27:07 +02:00
Bram Moolenaar c9cc9c78f2 patch 8.1.0345: cannot get the window id associated with the location list
Problem:    Cannot get the window id associated with the location list.
Solution:   Add the "filewinid" argument to getloclist(). (Yegappan
            Lakshmanan, closes #3202)
2018-09-02 15:18:42 +02:00
Bram Moolenaar 7ee3f15b21 patch 8.1.0344: 'hlsearch' highlighting has a gap after /$
Problem:    'hlsearch' highlighting has a gap after /$.
Solution:   Remove suspicious code. (Ricky Zhou, closes #3400)
2018-09-02 15:07:28 +02:00
Bram Moolenaar 3c5b8cd254 patch 8.1.0343: 'shellslash' is not used for getcwd() with local directory
Problem:    'shellslash' is not used for getcwd() with local directory.
            (Daniel Hahler)
Solution:   Call slash_adjust() later. (closes #3399)
2018-09-02 14:25:05 +02:00
Bram Moolenaar 94f01956a5 patch 8.1.0342: crash when a callback deletes a window that is being used
Problem:    Crash when a callback deletes a window that is being used.
Solution:   Do not unload a buffer that is being displayed while redrawing the
            screen. Also avoid invoking callbacks while redrawing.
            (closes #2107)
2018-09-01 15:30:03 +02:00
Kazuki Sakamoto b3c2a8c3b3 Merge remote-tracking branch 'vim/master' 2018-08-31 21:29:46 -07:00
Bram Moolenaar 32bbd00949 patch 8.1.0341: :argadd in empty buffer changes the buffer name
Problem:    :argadd in empty buffer changes the buffer name. (Pavol Juhas)
Solution:   Don't re-use the current buffer when not going to edit the file.
            (closes #3397)  Do re-use the current buffer for :next.
2018-08-31 23:06:22 +02:00
Bram Moolenaar 9049b68612 patch 8.1.0340: no test for :spellinfo
Problem:    No test for :spellinfo.
Solution:   Add a test. (Dominique Pelle, closes #3394)
2018-08-31 22:26:53 +02:00
Bram Moolenaar f13daa46da patch 8.1.0339: wrong highlight when 'incsearch' set and cancelling :s
Problem:    Wrong highlight when 'incsearch' set and cancelling :s.
Solution:   Reset search line range. (Hirohito Higashi, Masamichi Abe)
2018-08-31 22:09:54 +02:00
Bram Moolenaar f6ceaf1e05 patch 8.1.0338: MS-Windows: VTP doesn't work properly with Powershell
Problem:    MS-Windows: VTP doesn't work properly with Powershell.
Solution:   Adjust the color index. (Nobuhiro Takasaki, closes #3347)
2018-08-30 17:47:05 +02:00
Bram Moolenaar 379fb76b08 patch 8.1.0337: :file fails in quickfix command
Problem:    :file fails in quickfix command.
Solution:   Allow :file without argument when curbuf_lock is set. (Jason
            Franklin)
2018-08-30 15:58:28 +02:00
Bram Moolenaar dd5d18eadf patch 8.1.0336: mkview test still fails on CI
Problem:    mkview test still fails on CI.
Solution:   Ignore curswant, don't see another solution.
2018-08-30 14:16:06 +02:00
Bram Moolenaar 2bf4fe07b6 patch 8.1.0335: mkview test fails on CI
Problem:    mkview test fails on CI.
Solution:   Attempt to force recomputing curswant after folding.
2018-08-30 14:04:25 +02:00
Bram Moolenaar 8c9e7b00f6 patch 8.1.0334: 'autowrite' takes effect when buffer is not to be written
Problem:    'autowrite' takes effect when buffer is not to be written.
Solution:   Don't write buffers that are not supposed to be written. (Even Q
            Jones, closes #3391)  Add tests for 'autowrite'.
2018-08-30 13:07:17 +02:00
Bram Moolenaar 92c1b69641 patch 8.1.0333: :mkview does not restore cursor properly after "$"
Problem:    :mkview does not restore cursor properly after "$". (Dominique
            Pelle)
Solution:   Position the cursor with "normal! $".
2018-08-29 21:42:42 +02:00
Kazuki Sakamoto ba7f8db26d Merge remote-tracking branch 'vim/master' 2018-08-28 19:38:47 -07:00
Bram Moolenaar a449a7c6b9 patch 8.1.0332: get Gdk-Critical error on first balloon show
Problem:    Get Gdk-Critical error on first balloon show.
Solution:   Get screen geometry using the draw area widget. (Davit Samvelyan,
            closes #3386)
2018-08-28 23:09:07 +02:00
Bram Moolenaar fc65cabb15 Update runtime files. 2018-08-28 22:58:02 +02:00
Bram Moolenaar 627cb6a6b3 patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Problem:    Insufficient test coverage for :mkview and :loadview.
Solution:   Add tests. (Dominique Pelle, closes #3385)
2018-08-28 22:19:31 +02:00
Bram Moolenaar 6f6ef7c195 patch 8.1.0330: the qf_add_entries() function is too long
Problem:    The qf_add_entries() function is too long.
Solution:   Split in two parts. (Yegappan Lakshmanan)
2018-08-28 22:07:44 +02:00
Bram Moolenaar a06afc7f5e patch 8.1.0329: using inputlist() during startup results in garbage
Problem:    Using inputlist() during startup results in garbage. (Dominique
            Pelle)
Solution:   Make sure the xterm tracing is stopped when disabling the mouse.
2018-08-27 23:24:16 +02:00
Bram Moolenaar 4cbdf155ca patch 8.1.0328: inputlist() doesn't work with a timer
Problem:    inputlist() doesn't work with a timer. (Dominique Pelle)
Solution:   Don't redraw when cmdline_row is zero. (Hirohito Higashi,
            closes #3239)
2018-08-26 21:23:07 +02:00
cwlin 490169b266 Respect the font size setting of guifontwide.
Some of the fonts e.g., ProggyCleanTT expands the font height for
clearer view.
However, if the users set the customized guifontwide for CJK characters,
these CJK characters will be higher than the column height, and the top
of these characters will be cut.
This fix checks the pointSize of guifontwide, if it is bigger than the
guifont, then the font size will be fallback'd to guifont.
It provides an option to CJK users to set a smaller font size for guifontwide
to avoid the cut problem of CJK characters.
2018-08-25 14:40:19 +08:00
Bram Moolenaar 0529583ff1 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Problem:    The "g CTRL-G" command isn't tested much.
Solution:   Add more tests. (Dominique Pelle, closes #3369)
2018-08-24 22:07:58 +02:00
Bram Moolenaar 98fc8d7b6c patch 8.1.0326: screen dump does not consider NUL and space equal
Problem:    Screen dump does not consider NUL and space equal.
Solution:   Use temp variables instead of character from cell.
2018-08-24 21:30:28 +02:00
cwlin ef51eff309 Add MAC_OS_X_VERSION_10_12_2 definition.
Some build environments don't have MAC_OS_X_VERSION_10_12_2 definition.
It could cause the build error on macOS prior to 10.12.
This fix adds the MAC_OS_X_VERSION_10_12_2 based on Apple's header:
https://opensource.apple.com/source/xnu/xnu-3789.60.24/EXTERNAL_HEADERS/AvailabilityMacros.h.auto.html
2018-08-24 14:25:43 +08:00
Bram Moolenaar 7c60505e10 patch 8.1.0325: strings in swap file may not be NUL terminated
Problem:    Strings in swap file may not be NUL terminated. (Coverity)
Solution:   Limit the length of the used string.
2018-08-23 23:01:27 +02:00
Bram Moolenaar 74c8be2c68 patch 8.1.0324: off-by-one error in cmdidx check
Problem:    Off-by-one error in cmdidx check. (Coverity)
Solution:   Use ">=" instead of ">".
2018-08-23 22:51:40 +02:00
Bram Moolenaar 2551c037e4 patch 8.1.0323: reverse order of VTP calls only needed the first time
Problem:    Reverse order of VTP calls only needed the first time.
Solution:   Add a flag to remember the state. (Nobuhiro Takasaki, closes #3366)
2018-08-23 22:38:31 +02:00
Bram Moolenaar 7cb33a14c9 patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Problem:    Test_copy_winopt() does not restore 'hidden'.
Solution:   Restore the option, fix indent. (Ozaki Kiichi, closes #3367)
2018-08-23 22:20:35 +02:00
Bram Moolenaar 4edfe2d2a2 patch 8.1.0321: 'incsearch' regression: /\v highlights everything
Problem:    'incsearch' regression: /\v highlights everything.
Solution:   Put back the empty_pattern() check.
2018-08-23 20:55:45 +02:00
Kazuki Sakamoto bdfb631f49 Merge pull request #734 from ichizok/fix/opt_test
Fix CI failure
2018-08-23 08:53:43 -07:00
ichizok c206733e6f Fix gen_opt_test.vim
* Remove duplicate dict-key ('guifont')
* Fix option values for GUI MacVim
2018-08-23 17:26:59 +09:00
Bram Moolenaar 8b0d5ce881 patch 8.1.0320: too much 'incsearch' highlight for pat matching everything
Problem:    Too much 'incsearch' highlight for pattern matching everything.
Solution:   Add the skiplen to the command and remove the line range.
            (Christian Brabandt)  Check for empty pattern earlier.
2018-08-22 23:05:44 +02:00
Bram Moolenaar 8e7218c459 patch 8.1.0319: bzero() function prototype doesn't work for Android
Problem:    bzero() function prototype doesn't work for Android.
Solution:   Add an #ifdef. (Elliott Hughes, closes #3365)
2018-08-22 21:56:57 +02:00
Bram Moolenaar 3b3a506f57 patch 8.1.0318: the getftype() test may fail for char devices
Problem:    The getftype() test may fail for char devices if the file
            disappeared in between the listing and the getftype() call.
Solution:   Ignore empty result. (Ozaki Kiichi, closes #3360)
2018-08-22 20:16:16 +02:00
Bram Moolenaar 320bf2d85e patch 8.1.0317: Cscope test fails when using shadow directory
Problem:    Cscope test fails when using shadow directory.
Solution:   Resolve symlink in Vim. (James McCoy, closes #3364)
2018-08-22 20:06:26 +02:00
Bram Moolenaar 4c5765bc47 patch 8.1.0316: swapinfo() test fails on Travis
Problem:    swapinfo() test fails on Travis.
Solution:   Handle a long host name. (Ozaki Kiichi, closes #3361)
            Also make the version check flexible. (James McCoy)
2018-08-22 11:28:01 +02:00
Kazuki Sakamoto 5178dd4390 Merge remote-tracking branch 'vim/master' 2018-08-21 23:20:37 -07:00
Bram Moolenaar c631f2df62 patch 8.1.0315: helpgrep with language doesn't work properly
Problem:    Helpgrep with language doesn't work properly. (Takuya Fujiwara)
Solution:   Check for the language earlier. (Hirohito Higashi)
2018-08-21 21:58:13 +02:00
Bram Moolenaar 47ad5656e1 patch 8.1.0314: build failure without the +eval feature
Problem:    Build failure without the +eval feature. (Brenton Horne)
Solution:   Add #ifdef.  Also add the "dirty" item.
2018-08-21 21:09:07 +02:00
Bram Moolenaar 00f123a565 patch 8.1.0313: information about a swap file is unavailable
Problem:    Information about a swap file is unavailable.
Solution:   Add swapinfo(). (Enzo Ferber)
2018-08-21 20:28:54 +02:00
Bram Moolenaar 8e82c057ff patch 8.1.0312: wrong type for flags used in signal handlers
Problem:    Wrong type for flags used in signal handlers.
Solution:   Use sig_atomic_t. (Dominique Pelle, closes #3356)
2018-08-21 19:47:48 +02:00
Bram Moolenaar 8c5e0093c9 patch 8.1.0311: filtering entries in a quickfix list is not easy
Problem:    Filtering entries in a quickfix list is not easy.
Solution:   Add the cfilter plugin. (Yegappan Lakshmanan)
2018-08-21 19:22:23 +02:00
Bram Moolenaar 2f0f871159 patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Problem:    File info message not always suppressed with 'F' in 'shortmess'.
            (Asheq Imran)
Solution:   Save and restore msg_silent. (Christian Brabandt, closes #3221)
2018-08-21 18:50:18 +02:00
Bram Moolenaar 7feb35e778 patch 8.1.0309: profiling does not show a count for condition lines
Problem:    Profiling does not show a count for condition lines. (Daniel
            Hahler)
Solution:   Count lines when not skipping. (Ozaki Kiichi, closes #2499)
2018-08-21 17:49:54 +02:00
Bram Moolenaar fd6100b2aa patch 8.1.0308: a quick undo shows "1 seconds ago"
Problem:    A quick undo shows "1 seconds ago". (Tony Mechelynck)
Solution:   Add singular/plural message.
2018-08-21 17:07:45 +02:00
Bram Moolenaar 0f6b4f06de patch 8.1.0307: there is no good way to get the window layout
Problem:    There is no good way to get the window layout.
Solution:   Add the winlayout() function. (Yegappan Lakshmanan)
2018-08-21 16:56:34 +02:00
Bram Moolenaar da6e8919e7 patch 8.1.0306: plural messages are not translated properly
Problem:    Plural messages are not translated properly.
Solution:   Add more usage of NGETTEXT(). (Sergey Alyoshin)
2018-08-21 15:12:14 +02:00
Bram Moolenaar 830e3583da patch 8.1.0305: missing support for Lua 5.4 32 bits on Unix
Problem:    Missing support for Lua 5.4 32 bits on Unix.
Solution:   Define lua_newuserdatauv. (Kazunobu Kuriyama)
2018-08-21 14:23:35 +02:00
Bram Moolenaar 2e31048c30 patch 8.1.0304: no redraw when using a STOP signal on Vim and then CONT
Problem:    No redraw when using a STOP signal on Vim and then a CONT signal.
Solution:   Catch the CONT signal and set the terminal to raw mode.  This is
            like 8.1.0244 but without the screen redraw and a fix for
            multi-threading suggested by Dominique Pelle.
2018-08-21 13:09:10 +02:00
Bram Moolenaar c26f7c6053 patch 8.1.0303: line2byte() is wrong for last line with 'noeol'
Problem:    line2byte() is wrong for last line with 'noeol' and 'nofixeol'.
Solution:   Fix off-by-one error. (Shane Harper, closes #3351)
2018-08-20 22:53:04 +02:00
Bram Moolenaar f1883479be patch 8.1.0302: crash when using :suspend and "fg"
Problem:    Crash when using :suspend and "fg".
Solution:   Undo patch 8.1.244.
2018-08-20 21:58:57 +02:00
Bram Moolenaar 3f6a16f022 patch 8.1.0301: GTK: input method popup displayed on wrong screen.
Problem:    GTK: Input method popup displayed on wrong screen.
Solution:   Add the screen position offset. (Ken Takata, closes #3268)
2018-08-19 22:58:45 +02:00
Bram Moolenaar d8f0cef2bd patch 8.1.0300: the old window title might be freed twice
Problem:    The old window title might be freed twice. (Dominique Pelle)
Solution:   Do not free "oldtitle" in a signal handler but set a flag to have
            it freed later.
2018-08-19 22:20:16 +02:00
Bram Moolenaar 142ae736d9 patch 8.1.0299: misplaced comment
Problem:    misplaced comment
Solution:   Remove comment
2018-08-19 17:04:01 +02:00
Bram Moolenaar 46fad2ef0b patch 8.1.0298: window resize test sometimes fails on Mac
Problem:    Window resize test sometimes fails on Mac.
Solution:   Add Test_popup_and_window_resize() to flaky tests.
2018-08-19 16:09:27 +02:00
Bram Moolenaar cea1f9ec52 patch 8.1.0297: MS-Windows: tests fail, Vim crashes
Problem:    MS-Windows: tests fail, Vim crashes.
Solution:   Fix long file name handling.
2018-08-19 14:38:42 +02:00
Yee Cheng Chin e35b0a69a7 Fix opening window in another screen resulting in broken rendering
Fix the issue that MacVim's window will have broken rendering (wrong Vim
size) if the window was opened in another monitor. This was introduced
as part of the implementation for guioptions 'k',

The issue was that the function `moveWindowAcrossScreens` was buggy. It
sets a flag "resizingDueToMove" but doesn't unset it after the
`setFrameTopLeftPoint`, which may or may not call the resize function
that is responsible in unsetting "resizeDueToMove". Fix the function to
always unset it so that the flag doesn't leak till the next resize.
Previously it "worked" due to MacVim's excessive resize messages masking
the issue.
2018-08-18 22:37:20 -07:00
Bram Moolenaar 111bbd61e9 patch 8.1.0296: command parsing for 'incsearch' is a bit ugly
Problem:    Command parsing for 'incsearch' is a bit ugly.
Solution:   Return when there is no pattern.  Put common checks together.
2018-08-18 21:23:05 +02:00
Bram Moolenaar 264cf5cfaf patch 8.1.0295: no 'incsearch' highlighting for :vimgrep and similar
Problem:    No 'incsearch' highlighting for :vimgrep and similar commands.
Solution:   Parse the :vimgrep command and similar ones to locate the search
            pattern. (Hirohito Higashi, closes #3344)
2018-08-18 21:05:31 +02:00
Bram Moolenaar 3b9fcfcffa patch 8.1.0294: MS-Windows: sometimes uses short directory name
Problem:    MS-Windows: sometimes uses short directory name.
Solution:   Expand to long file name with correct caps. (Nobuhiro Takasaki,
            closes #3334)
2018-08-18 20:20:27 +02:00
Bram Moolenaar 4d77c65a9e patch 8.1.0293: checks for type of stack is cryptic
Problem:    Checks for type of stack is cryptic.
Solution:   Define IS_QF_STACK() and IS_LL_STACK(). (Yegappan Lakshmanan)
2018-08-18 19:59:54 +02:00
Bram Moolenaar 9bc1eac2c7 patch 8.1.0292: MS-Windows: the text "self-installing" confuses some users
Problem:    MS-Windows: the text "self-installing" confuses some users.
Solution:   Remove the text from the uninstall entry. (closes #3337)
2018-08-18 19:04:37 +02:00
Bram Moolenaar 81f56536b1 patch 8.1.0291: 'incsearch' highlighting not used for :sort
Problem:    'incsearch' highlighting not used for :sort.
Solution:   Handle pattern in :sort command.
2018-08-18 16:19:42 +02:00
Bram Moolenaar b476cb7d8d patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Problem:    "cit" on an empty HTML tag changes the whole tag.
Solution:   Only adjust the area in Visual mode. (Andy Massimino,
            closes #3332)
2018-08-16 21:37:50 +02:00
Bram Moolenaar 2dfcef4c08 patch 8.1.0289: cursor moves to wrong column after quickfix jump
Problem:    Cursor moves to wrong column after quickfix jump.
Solution:   Set the curswant flag. (Andy Massimino, closes #3331)
2018-08-15 22:29:51 +02:00
Bram Moolenaar 396659592f patch 8.1.0288: quickfix code uses cmdidx too often
Problem:    Quickfix code uses cmdidx too often.
Solution:   Add is_loclist_cmd(). (Yegappan Lakshmanan)
2018-08-15 20:59:48 +02:00
Bram Moolenaar 37b15568c2 patch 8.1.0287: MAX is not defined everywhere
Problem:    MAX is not defined everywhere.
Solution:   Define MAX where needed.
2018-08-14 22:08:25 +02:00
Bram Moolenaar 167ae42685 patch 8.1.0286: 'incsearch' does not apply to :smagic and :snomagic
Problem:    'incsearch' does not apply to :smagic and :snomagic.
Solution:   Add support. (Hirohito Higashi)
2018-08-14 21:32:21 +02:00
Bram Moolenaar d7cc163570 patch 8.1.0285: compiler warning for conversion
Problem:    Compiler warning for conversion.
Solution:   Add a type cast. (Mike Williams)
2018-08-14 20:18:26 +02:00
Bram Moolenaar 2f6a346a4c patch 8.1.0284: 'cursorline' highlighting wrong with 'incsearch'
Problem:    'cursorline' highlighting wrong with 'incsearch'.
Solution:   Move the cursor back if the match is outside the range.
2018-08-14 18:16:52 +02:00
Bram Moolenaar 80d83c094d patch 8.1.0283: missing test dump
Problem:    Missing test dump.
Solution:   Add the dump file
2018-08-14 17:28:56 +02:00
Bram Moolenaar 33c4dbb74b patch 8.1.0282: 'incsearch' does not work with command modifiers
Problem:    'incsearch' does not work with command modifiers.
Solution:   Skip command modifiers.
2018-08-14 16:06:16 +02:00
Bram Moolenaar effed9315c patch 8.1.0281: parsing command modifiers is not separated
Problem:    Parsing command modifiers is not separated.
Solution:   Move command modifier parsing to a separate function.
2018-08-14 13:38:17 +02:00
Kazuki Sakamoto 6a9348a1b9 MacVim Snapshot 151
Binary targets macOS 10.8+

- Vim patch 8.1.0280
- Reverted guioption 'k' #727

Script interfaces have compatibility with these versions

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.7
- Ruby 2.5
2018-08-13 22:13:05 -07:00
Kazuki Sakamoto 4d9b1a2c01 Workaround fix for Travis-CI
Skip cdev test which fails on Travis-CI.
2018-08-13 21:51:47 -07:00
Kazuki Sakamoto 1a8a544a61 Merge pull request #730 from ychin/macvim_doc_noet
Add 'noet' to MacVim docs' modeline to keep it consistent with Vim
2018-08-13 18:55:36 -07:00
Kazuki Sakamoto 5d9c7ebdfc Merge remote-tracking branch 'vim/master' 2018-08-13 17:26:45 -07:00
Bram Moolenaar def7b1dc61 patch 8.1.0280: 'incsearch' highlighting does not work for ":g!/"
Problem:    'incsearch' highlighting does not work for ":g!/".
Solution:   Skip the exclamation mark. (Hirohito Higashi)
2018-08-13 22:54:35 +02:00
Bram Moolenaar 2b926fcb3c patch 8.1.0279: 'incsearch' highlighting does not skip white space
Problem:    'incsearch' highlighting does not skip white space.
Solution:   Skip white space after the command. (issue #3321)
2018-08-13 11:07:57 +02:00
Bram Moolenaar 60d0871000 patch 8.1.0278: 'incsearch' highlighting does not accept reverse range
Problem:    'incsearch' highlighting does not accept reverse range.
Solution:   Swap the range when needed. (issue #3321)
2018-08-12 21:53:15 +02:00
Bram Moolenaar c7f08b7ee1 patch 8.1.0277: 'incsearch' highlighting wrong in a few cases
Problem:    'incsearch' highlighting wrong in a few cases.
Solution:   Fix using last search pattern.  Restore highlighting when changing
            command. (issue #3321)
2018-08-12 17:39:14 +02:00
Bram Moolenaar 164251ff80 patch 8.1.0276: no test for 'incsearch' highlighting with :s
Problem:    No test for 'incsearch' highlighting with :s.
Solution:   Add a screendump test.
2018-08-12 16:26:58 +02:00
Bram Moolenaar 976b847f43 patch 8.1.0275: 'incsearch' with :s doesn't start at cursor line
Problem:    'incsearch' with :s doesn't start at cursor line.
Solution:   Set cursor before parsing address. (closes #3318)
            Also accept a match at the start of the first line.
2018-08-12 15:49:47 +02:00
Yee Cheng Chin 0065c3fd3b Fix up the previous MacVim's guioptions 'k' implementation
Fix the following:

* Zoom button: There was an error in refactoring leading to the handler
  calling the wrong function.

* Toolbar addition/removal: This now respects the 'k' option. Toolbar is
  different from scrollbar and tabs because when you add/remove a
  toolbar in Cocoa it automatically resizes the window for you, so the
  implementation needs to manually un-resize the window and
  re-calculates the Vim view's 'lines' and 'columns' to fit.
2018-08-12 00:14:19 -07:00
Yee Cheng Chin 0e4db3d79e Support guioptions 'k' flag in MacVim, prevents unnecessary window resize
Adds support for native GVim's 'k' flag. Adding/removing tabs/scrollbars
and setting 'linespace'/'columnspace' would now cause the number of
lines and columns in the buffer change to keep the window size constant,
instead of the other way round of resizing the window to keep the view
size constant. This helps prevent the window from resizing itself
unncessarily, which could be especially annoying when the window is
pinned/maximized.

Manually setting 'lines'/'columns', going to full screen, dragging the
window corner to resize would still resize the window.

Also removed misc calls within MMWindowController.m that were setting
shouldResizeVimView. Those calls were already handled by native Vim's
gui.c's gui_set_shellsize so it's redundant.

rebased from 1333bc6c2
2018-08-11 21:34:26 -07:00
Yee Cheng Chin e85c90d810 Add 'noet' to MacVim docs' modeline to keep it consistent with Vim 2018-08-11 13:29:24 -07:00
Bram Moolenaar 21f990e1c2 patch 8.1.0274: 'incsearch' triggers on ":source"
Problem:    'incsearch' triggers on ":source".
Solution:   Check for the whole command name.
2018-08-11 19:20:49 +02:00
Bram Moolenaar ef73a28401 patch 8.1.0273: invalid memory access when using 'incsearch'
Problem:    Invalid memory access when using 'incsearch'.
Solution:   Reset "patlen" when using previous search pattern.
2018-08-11 19:02:22 +02:00
Bram Moolenaar d473c8c101 Update runtime files. 2018-08-11 18:00:22 +02:00
Bram Moolenaar f53c692240 patch 8.1.0272: options test fails if temp var ends in slash
Problem:    Options test fails if temp var ends in slash. (Tom Briden)
Solution:   Check for optional slash. (closes #3308)
2018-08-11 17:53:04 +02:00
Bram Moolenaar b0acacd767 patch 8.1.0271: 'incsearch' doesn't work for :s, :g or :v
Problem:    'incsearch' doesn't work for :s, :g or :v.
Solution:   Also use 'incsearch' for other commands that use a pattern.
2018-08-11 16:40:43 +02:00
Bram Moolenaar b31a3acce1 patch 8.1.0270: checking for a Tab in a line could be faster
Problem:    Checking for a Tab in a line could be faster.
Solution:   Use strchr() instead of strrchr(). (closes #3312)
2018-08-11 14:41:55 +02:00
Bram Moolenaar 51e9fbf1c7 patch 8.1.0269: Ruby Kernel.#p method always returns nil
Problem:    Ruby Kernel.#p method always returns nil.
Solution:   Copy p method implementation from Ruby code. (Masataka Pocke
            Kuwabara, closes #3315)
2018-08-11 14:24:11 +02:00
Bram Moolenaar d569bb0299 patch 8.1.0268: file type checking has too many #ifdef
Problem:    File type checking has too many #ifdef.
Solution:   Always define the S_IF macros. (Ken Takata, closes #3306)
2018-08-11 13:57:20 +02:00
Bram Moolenaar 90f1e2b7bc patch 8.1.0267: no good check if restoring quickfix list worked
Problem:    No good check if restoring quickfix list worked.
Solution:   Let qf_restore_list() return OK/FAIL. (Yegappan Lakshmanan)
2018-08-11 13:36:56 +02:00
Kazuki Sakamoto dae7a8964c Dump src/auto/config.h on Travis CI 2018-08-10 18:44:59 -07:00
Kazuki Sakamoto f66ad538c3 Merge remote-tracking branch 'vim/master' 2018-08-10 18:00:43 -07:00
Kazuki Sakamoto 027327ab58 Merge pull request #727 from ychin/revert-guioptions-k
Revert "Support guioptions 'k' flag in MacVim, prevents unnecessary w…
2018-08-10 17:59:19 -07:00
Bram Moolenaar ee8415bc59 patch 8.1.0266: parsing Ex address range is not a separate function
Problem:    Parsing Ex address range is not a separate function.
Solution:   Refactor do_one_cmd() to separate address parsing.
2018-08-10 23:13:12 +02:00
Bram Moolenaar 0ee81cb638 patch 8.1.0265: the getcmdline() function is way too big
Problem:    The getcmdline() function is way too big.
Solution:   Factor out the incremental search highlighting.
2018-08-10 22:07:32 +02:00
Yee Cheng Chin 02ae96681a Revert "Support guioptions 'k' flag in MacVim, prevents unnecessary window resize"
This reverts commit 1333bc6c20.

The previous change broke external monitors and zoom button. Revert the
change before a proper fix can be implemented.
2018-08-10 02:57:01 -07:00
Kazuki Sakamoto d0807a4aff Merge remote-tracking branch 'vim/master' 2018-08-09 20:38:52 -07:00
Bram Moolenaar efe03738f6 patch 8.1.0264: backup tests fail when CWD is in /tmp
Problem:    Backup tests fail when CWD is in /tmp.
Solution:   Make 'backupskip' empty. (Christian Brabandt, closes #3301)
2018-08-09 22:26:38 +02:00
Bram Moolenaar 4b16ee743e patch 8.1.0263: channel log doesn't show part of channel
Problem:    Channel log doesn't show part of channel.
Solution:   Add "sock", "out", "err" or "in". (Ozaki Kiichi, closes #3303)
2018-08-09 22:15:34 +02:00
Bram Moolenaar 1598f9937a patch 8.1.0262: not enough testing for getftype()
Problem:    Not enough testing for getftype().
Solution:   Add a test. (Dominique Pelle, closes #3300)
2018-08-09 22:08:57 +02:00
Bram Moolenaar 38efd1d17a patch 8.1.0261: Coverity complains about a negative array index
Problem:    Coverity complains about a negative array index.
Solution:   When qf_id2nr() cannot find the list then don't set qf_curlist.
2018-08-09 21:52:24 +02:00
Bram Moolenaar 4d37557ac6 patch 8.1.0260: no LGTM logo in README file
Problem:    No LGTM logo in README file.
Solution:   Add one. (Bas van Schaik, closes #3305)
2018-08-09 21:33:38 +02:00
Bram Moolenaar 3f347e4716 patch 8.1.0259: no test for fixed quickfix issue
Problem:    No test for fixed quickfix issue.
Solution:   Add a test.  Clean up the code a bit. (Yegappan Lakshmanan)
2018-08-09 21:19:20 +02:00
Bram Moolenaar af559d2c9f patch 8.1.0258: not enough testing for the CompleteDone event
Problem:    Not enough testing for the CompleteDone event.
Solution:   Add a test. (closes #3297)
2018-08-08 22:55:41 +02:00
Bram Moolenaar bfde0b482d patch 8.1.0257: no test for pathshorten()
Problem:    No test for pathshorten().
Solution:   Add a test. (Dominique Pelle, closes #3295)
2018-08-08 22:27:31 +02:00
Bram Moolenaar 9fa9506853 patch 8.1.0256: using setline() in TextChangedI splits undo
Problem:    Using setline() in TextChangedI splits undo.
Solution:   Use another solution for undo not working properly.
2018-08-08 22:08:32 +02:00
Bram Moolenaar f8f88f89e1 patch 8.1.0255: backup test fails when using shadow directory
Problem:    Backup test fails when using shadow directory.
Solution:   Remove check for "src".
2018-08-08 11:02:32 +02:00
Bram Moolenaar 980bab457e patch 8.1.0254: cannot build on MS-Windows; unused macro HAVE_HANDLE_DROP
Problem:    Cannot build on MS-Windows; Unused macro HAVE_HANDLE_DROP.
Solution:   Adjust #ifdef. Delete the macro.
2018-08-07 22:42:53 +02:00
Bram Moolenaar 40385dbcdf patch 8.1.0253: saving and restoring window title does not always work
Problem:    Saving and restoring window title does not always work.
Solution:   Use the stack push and pop commands. (Kouichi Iwamoto,
            closes #3059)
2018-08-07 22:31:44 +02:00
Bram Moolenaar de3b3677f7 patch 8.1.0252: quickfix functions are too long
Problem:    Quickfix functions are too long.
Solution:   Refactor. (Yegappan Lakshmanan, closes #2950)
2018-08-07 21:54:41 +02:00
Bram Moolenaar b782ba475a patch 8.1.0251: using full path is not supported for 'backupdir'
Problem:    Using a full path is supported for 'directory' but not for
            'backupdir'. (Mikolaj Machowski)
Solution:   Support 'backupdir' as well. (Christian Brabandt, closes #179)
2018-08-07 21:39:28 +02:00
Bram Moolenaar b1cf16113f patch 8.1.0250: MS-Windows using VTP: windows size change incorrect
Problem:    MS-Windows using VTP: windows size change incorrect.
Solution:   Call SetConsoleScreenBufferSize() first. (Nobuhiro Takasaki,
            closes #3164)
2018-08-07 20:47:16 +02:00
Bram Moolenaar 7ebf4e1c34 patch 8.1.0249: GTK: when screen DPI changes Vim does not handle it
Problem:    GTK: when screen DPI changes Vim does not handle it.
Solution:   Handle the gtk-xft-dpi signal. (Roel van de Kraats,
            closes #2357)
2018-08-07 20:01:40 +02:00
Bram Moolenaar 8d8a65e389 patch 8.1.0248: duplicated quickfix code
Problem:    duplicated quickfix code.
Solution:   Move the code to a function.
2018-08-07 19:48:08 +02:00
Bram Moolenaar 447bd5a346 patch 8.1.0247: Python: error message for failing import is incorrect
Problem:    Python: error message for failing import is incorrect.
Solution:   Adjust how modules are loaded. (Ozaki Kiichi, closes #3162)
2018-08-07 19:45:27 +02:00
Bram Moolenaar ee380ae376 patch 8.1.0246: build failure without the +eval feature
Problem:    Build failure without the +eval feature.
Solution:   Add #ifdef
2018-08-07 19:32:52 +02:00
Bram Moolenaar 91d2e783b4 patch 8.1.0245: calling setline() in TextChangedI autocmd breaks undo
Problem:    Calling setline() in TextChangedI autocmd breaks undo. (Jason
            Felice)
Solution:   Don't save lines for undo when already saved. (closes #3291)
2018-08-07 19:05:01 +02:00
Bram Moolenaar 917e32bda5 patch 8.1.0244: no redraw when using a STOP signal on Vim and then CONT
Problem:    No redraw when using a STOP signal on Vim and then a CONT signal.
Solution:   Catch the CONT signal and force a redraw. (closes #3285)
2018-08-07 17:38:41 +02:00
Bram Moolenaar 5db7eec423 patch 8.1.0243: using :term ++close ++hidden closes a window
Problem:    Using :term ++close ++hidden closes a window. (Marcin Szamotulski)
Solution:   Don't close the window if only using it temporarily for unloading
            the terminal buffer. (closes #3287)
2018-08-07 16:33:18 +02:00
Bram Moolenaar 02ab97709d patch 8.1.0242: Insert mode completion may use an invalid buffer pointer
Problem:    Insert mode completion may use an invalid buffer pointer.
Solution:   Check for ins_buf to be valid. (closes #3290)
2018-08-07 14:55:09 +02:00
Bram Moolenaar 7cc596547a patch 8.1.0241: effect of ":tabmove N" is not clear
Problem:    Effect of ":tabmove N" is not clear.
Solution:   Add a test that shows the behavior. (Christian Brabandt,
            closes #3288)
2018-08-07 13:14:46 +02:00
Kazuki Sakamoto 60c26e028a Merge remote-tracking branch 'vim/master' 2018-08-05 18:57:58 -07:00
Bram Moolenaar 3cb4448b8a patch 8.1.0240: g:actual_curbuf set in wrong scope
Problem:    g:actual_curbuf set in wrong scope. (Daniel Hahler)
Solution:   Prepend the "g:" name space. (closes #3279)
2018-08-05 13:22:26 +02:00
Bram Moolenaar 218beb3e96 patch 8.1.0239: now Ruby build fails on other systems
Problem:    Now Ruby build fails on other systems.
Solution:   Always define rb_intern. (Ken Takata, closes #3275)
2018-08-04 17:24:44 +02:00
Bram Moolenaar 7da1fb5532 patch 8.1.0238: 'buftype' is cleared when using ":term ++hidden cat"
Problem:    'buftype' is cleared when using ":term ++hidden cat". (Marcin
            Szamotulski)
Solution:   Set the "options initialized" flag earlier. (closes #3278)
2018-08-04 16:54:11 +02:00
Bram Moolenaar 87ea64ca96 patch 8.1.0237: Ruby on Cygwin doesn't always work
Problem:    Ruby on Cygwin doesn't always work.
Solution:   Use LIBRUBY_SO if LIBRUBY_ALIASES isn't set. (Ken Takata)
2018-08-04 15:13:34 +02:00
Bram Moolenaar 82593c1a3a patch 8.1.0236: Ruby build fails when ruby_intern is missing
Problem:    Ruby build fails when ruby_intern is missing.
Solution:   Do not use ruby_intern2. (Ken Takata)
2018-08-03 22:03:17 +02:00
Kazuki Sakamoto c7d7373896 MacVim Snapshot 150
Binary targets macOS 10.8+

- Vim patch 8.1.0235
- Touch Bar support #715
- Force click support #716
- New guioption 'k' #708
- Fix CoreText renderer

Script interfaces have compatibility with these versions

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.7
- Ruby 2.5
2018-08-02 21:58:32 -07:00
Kazuki Sakamoto 1027227742 Workaround for test87 2018-08-02 21:44:16 -07:00
Kazuki Sakamoto d1e492c567 Merge remote-tracking branch 'vim/master' 2018-08-02 21:28:40 -07:00
Bram Moolenaar 3bf5e6a4c8 patch 8.1.0235: more help tags that jump to the wrong location
Problem:    More help tags that jump to the wrong location.
Solution:   Add more exceptions and a table for "expr-" tags. (Hirohito
            Higashi)
2018-08-02 22:23:57 +02:00
Bram Moolenaar 41c363a315 patch 8.1.0234: incorrect reference counting in Perl interface
Problem:    Incorrect reference counting in Perl interface.
Solution:   Call SvREFCNT_inc more often, add a test. (Damien)
2018-08-02 21:46:51 +02:00
Kazuki Sakamoto 47e77c3f43 Merge remote-tracking branch 'vim/master' 2018-08-01 22:33:23 -07:00
Bram Moolenaar ded27a1feb patch 8.1.0233: "safe" argument of call_vim_function() is always FALSE
Problem:    "safe" argument of call_vim_function() is always FALSE.
Solution:   Remove the argument.
2018-08-01 19:06:03 +02:00
Bram Moolenaar f711cb2f12 patch 8.1.0232: Ruby error does not include backtrace
Problem:    Ruby error does not include backtrace.
Solution:   Add an error backtrace. (Masataka Pocke Kuwabara, closes #3267)
2018-08-01 18:42:13 +02:00
Bram Moolenaar a5bc38b8c1 patch 8.1.0231: :help -? goes to help for -+
Problem:    :help -? goes to help for -+.
Solution:   Add -? to list of special cases. (Hirohito Higashi)
2018-08-01 18:03:02 +02:00
Bram Moolenaar 91335e5a67 patch 8.1.0230: directly checking 'buftype' value
Problem:    Directly checking 'buftype' value.
Solution:   Add the bt_normal() function. (Yegappan Lakshmanan)
2018-08-01 17:53:12 +02:00
Bram Moolenaar d2855f5454 Update runtime files. 2018-07-31 22:23:58 +02:00
Josh Petrie ab1e570cf0 Merge pull request #715 from ychin/touchbar
MBP Touchbar Support (take 2)
2018-07-30 08:33:16 -07:00
Yee Cheng Chin 515ef9f65f Make Touch Bar support robust against older macOS versions
Make sure to check MAC_OS_X_VERSION_10_12_2 so older Xcode / SDK
versions will still be able to build MacVim, albeit without Touch Bar.

Also make sure to use `NSClassFromString(@"NSTouchBar")` to check during
runtime to avoid MacVim crashing for users using older versions of macOS
when they by mistake bind a menu item with TouchBar as main menu
(nothing will show up instead).
2018-07-29 23:09:21 -07:00
Kazuki Sakamoto ea812c1f94 Merge pull request #718 from macvim-dev/fix-updates-casing
Fix casing of the "Check for Updates" command.
2018-07-29 23:00:19 -07:00
Josh Petrie 6841c28e47 Use the correct casing; fixes #697. 2018-07-29 22:58:06 -07:00
Kazuki Sakamoto dc1cfa916e Merge remote-tracking branch 'vim/master' 2018-07-29 13:55:38 -07:00
Josh Petrie 916ac4a311 Merge pull request #716 from ychin/force_click
Support Force click gesture. Can now map <ForceClick> gesture in MacVim
2018-07-29 10:21:26 -07:00
Bram Moolenaar 79c2ad50b8 patch 8.1.0229: crash when dumping profiling data
Problem:    Crash when dumping profiling data.
Solution:   Reset flag indicating that initialization was done.
2018-07-29 17:40:43 +02:00
Bram Moolenaar 92d147be95 patch 8.1.0228: dropping files is ignored while Vim is busy
Problem:    Dropping files is ignored while Vim is busy.
Solution:   Postpone the effect of dropping files until it's safe.
2018-07-29 17:35:23 +02:00
Bram Moolenaar fda95e7572 patch 8.1.0227: spaces instead of tabs in makefile
Problem:    Spaces instead of tabs in makefile.
Solution:   Use tabs and fix sorting. (Ken Takata)
2018-07-29 16:13:17 +02:00
Bram Moolenaar 1f0bfe5617 patch 8.1.0226: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate the +vreplace feature, it's not much code and quite a few
            #ifdefs.
2018-07-29 16:09:22 +02:00
Yee Cheng Chin 4f518b1996 Support Force click gesture. Can now map <ForceClick> gesture in MacVim
Can now map "<ForceClick>" similar to "<SwipeLeft/Right/Up/Down>"
gestures. Require a Mac that has a touchpad that supports Force Touch to
work.

Close #672
2018-07-29 06:55:59 -07:00
Bram Moolenaar 612cc3888b patch 8.1.0225: mode() does not indicate using CTRL-O from Insert mode
Problem:    Mode() does not indicate using CTRL-O from Insert mode.
Solution:   Add "niI", "niR" and "niV" to mode() result. (closes #3000)
2018-07-29 15:34:26 +02:00
Bram Moolenaar 91f84f6e11 Update runtime files. 2018-07-29 15:07:52 +02:00
Yee Cheng Chin e1bc03b773 Touch Bar add documentation, support enabled states, and system icons
Enabled states now work. E.g. a mapped Touch Bar button using "vmenu
TouchBar.DoStuff <nop>" will not show up in normal mode.

Also support specifying default Apple template icons. E.g. "an
icon=NSTouchBarListViewTemplate TouchBar.ShowList <Nop>"

Remove default TouchBar buttons as there were too many of them and most
of them are unlikely to be heavily used as there are direct Vim command
equivalent. Instead just add a single fullscreen toggle button. This can
be changed later.
2018-07-29 01:02:11 -07:00
Yee Cheng Chin 0d621891f0 MacVim Touch Bar
- addressed review feedbacks
- documentations
2018-07-28 18:21:21 -07:00
Bram Moolenaar fdd7155fab patch 8.1.0224: hang in bracketed paste mode when t_PE not encountered
Problem:    Hang in bracketed paste mode when t_PE not encountered.
Solution:   Break out of the loop when got_int is set. (suggested by Christian
            Brabandt, closes #3146)
2018-07-28 23:12:05 +02:00
Bram Moolenaar 6ab9e429da patch 8.1.0223: completing shell command finds sub-directories in $PATH
Problem:    Completing shell command finds sub-directories in $PATH.
Solution:   Remove EW_DIR when completing an item in $PATH. (Jason Franklin)
2018-07-28 19:20:13 +02:00
Bram Moolenaar 73b4abae5d patch 8.1.0222: errors are reported for "make install"
Problem:    Errors are reported for "make install".
Solution:   Skip missing language files. (Christian Brabandt, closes #3254)
2018-07-28 18:16:48 +02:00
Bram Moolenaar edd6aacb01 patch 8.1.0221: not enough testing for the Ruby interface
Problem:    Not enough testing for the Ruby interface.
Solution:   Add more tests. (Dominique Pelle, closes #3252)
2018-07-28 17:29:19 +02:00
Bram Moolenaar d84b26a03b patch 8.1.0220: Ruby converts v:true and v:false to a number
Problem:    Ruby converts v:true and v:false to a number.
Solution:   Use Qtrue and Qfalse instead. (Masataka Pocke Kuwabara,
            closes #3259)
2018-07-28 17:18:09 +02:00
Bram Moolenaar 2c8c681bfc patch 8.1.0219: expanding ## fails to escape backtick
Problem:    Expanding ## fails to escape backtick.
Solution:   Escape a backtick in a file name. (closes #3257)
2018-07-28 17:07:52 +02:00
Bram Moolenaar 95e51470f1 patch 8.1.0218: cannot add matches to another window
Problem:    Cannot add matches to another window. (Qiming Zhao)
Solution:   Add the "window" argument to matchadd() and matchaddpos().
            (closes #3260)
2018-07-28 16:55:56 +02:00
Bram Moolenaar fd249460fe patch 8.1.0217: compiler warning for variable set but not used
Problem:    Compiler warning for variable set but not used.
Solution:   Move tilde_file inside #ifdef. (Hirohito Higashi, closes #3255)
2018-07-28 16:14:30 +02:00
Bram Moolenaar 8e85db0376 patch 8.1.0216: part of file not indented properly
Problem:    Part of file not indented properly.
Solution:   Adjust the indent. (Ken Takata)
2018-07-27 23:16:51 +02:00
Bram Moolenaar d2a054910b patch 8.1.0215: no error if configure --with-x cannot configure X
Problem:    No error if configure --with-x cannot configure X.
Solution:   Check that when --with-x is used X can be configured.
2018-07-27 22:35:15 +02:00
Bram Moolenaar 83ec2a7f5f patch 8.1.0214: +autochdir feature not reported by has() or :version
Problem:    +autochdir feature not reported by has() or :version.
Solution:   Add the feature in the list.
2018-07-27 22:08:59 +02:00
Christoph Walcher 8fc72761a5 basic touchbarsupport 2018-07-26 22:05:04 -07:00
Kazuki Sakamoto 1868c4cdac Merge remote-tracking branch 'vim/master' 2018-07-26 20:49:34 -07:00
Bram Moolenaar 0a08c63da1 patch 8.1.0213: CTRL-W CR does not work properly in a quickfix window
Problem:    CTRL-W CR does not work properly in a quickfix window.
Solution:   Split the window if needed. (Jason Franklin)
2018-07-25 22:36:52 +02:00
Bram Moolenaar 53901442f3 patch 8.1.0212: preferred cursor column not set in interfaces
Problem:    Preferred cursor column not set in interfaces.
Solution:   Set w_set_curswant when setting the cursor. (David Hotham,
            closes #3060)
2018-07-25 22:02:36 +02:00
Bram Moolenaar 00136dc321 patch 8.1.0211: expanding a file name "~" results in $HOME
Problem:    Expanding a file name "~" results in $HOME. (Aidan Shafran)
Solution:   Change "~" to "./~" before expanding. (closes #3072)
2018-07-25 21:19:13 +02:00
Bram Moolenaar 6f8d2ac6f1 patch 8.1.0210: still a few K&R function declarations
Problem:    Still a few K&R function declarations.
Solution:   Use ANSI function declarations (Hirohito Higashi)
2018-07-25 19:49:45 +02:00
Kazuki Sakamoto 0c9f4fd439 Merge remote-tracking branch 'vim/master' 2018-07-24 20:27:43 -07:00
Bram Moolenaar b6c8cd8dc3 patch 8.1.0209: stderr output from Ruby messes up display
Problem:    Stderr output from Ruby messes up display.
Solution:   Turn the stderr output into a Vim message. (Masataka Pocke
            Kuwabara, closes #3238)
2018-07-24 05:41:30 +02:00
Kazuki Sakamoto 6800549d14 Merge pull request #713 from ichizok/fix/display-glyphs
Fix a display of some non-composing glyphs
2018-07-23 20:03:51 -07:00
Kazuki Sakamoto 89d1d93448 Merge remote-tracking branch 'vim/master' 2018-07-23 19:56:55 -07:00
Bram Moolenaar 7624af0294 patch 8.1.0208: file left behind after running individual test
Problem:    File left behind after running individual test.
Solution:   Delete the file.
2018-07-24 04:51:20 +02:00
Kazuki Sakamoto 2aea7468fe Merge remote-tracking branch 'vim/master' 2018-07-23 17:35:04 -07:00
Bram Moolenaar 68f1b1b37f patch 8.1.0207: need many menu translation files to cover regions
Problem:    Need many menu translation files to cover regions.
Solution:   When there is no region match, try without. (Christian Brabandt)
2018-07-23 05:10:14 +02:00
Bram Moolenaar cd96eef3a8 patch 8.1.0206: duplicate test function name
Problem:    Duplicate test function name.
Solution:   Rename both functions.
2018-07-23 04:49:23 +02:00
Bram Moolenaar 9cf4b5005f patch 8.1.0205: invalid memory access with invalid modeline
Problem:    Invalid memory access with invalid modeline.
Solution:   Pass pointer limit. Add a test. (closes #3241)
2018-07-23 04:12:03 +02:00
Bram Moolenaar 947b39e761 patch 8.1.0204: inputlist() is not tested
Problem:    inputlist() is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3240)
2018-07-22 19:36:37 +02:00
Bram Moolenaar 578333b2ec patch 8.1.0203: building with Perl 5.28 fails on Windows
Problem:    Building with Perl 5.28 fails on Windows.
Solution:   Define Perl_mg_get. (closes #3196)
2018-07-22 07:31:09 +02:00
Bram Moolenaar 6183ccbd67 patch 8.1.0202: :version always shows +packages
Problem:    :version always shows +packages. (Takuya Fujiwara)
Solution:   Add #ifdef (closes #3198) Also for has().
2018-07-22 05:08:11 +02:00
Bram Moolenaar 79a494d5e2 patch 8.1.0201: newer Python uses "importlib" instead of "imp"
Problem:    Newer Python uses "importlib" instead of "imp".
Solution:   Use "importlib" for newer Python versions. (closes #3163)
2018-07-22 04:30:21 +02:00
Bram Moolenaar a9604e6145 Update runtime files. 2018-07-21 05:56:22 +02:00
Bram Moolenaar 872e451e8c patch 8.1.0200: spellbadword() not tested
Problem:    spellbadword() not tested.
Solution:   Add a test. (Dominique Pelle, closes #3235)
2018-07-20 23:36:26 +02:00
Bram Moolenaar 66ab916935 patch 8.1.0199: spellbadword() does not check for caps error
Problem:    spellbadword() does not check for caps error. (Dominique Pelle)
Solution:   Adjust capcol when advancing.
2018-07-20 20:28:48 +02:00
Bram Moolenaar 0a6efcd27d patch 8.1.0198: there is no hint that syntax is disabled for 'redrawtime'
Problem:    There is no hint that syntax is disabled for 'redrawtime'.
Solution:   Add a message.
2018-07-20 19:56:10 +02:00
Bram Moolenaar 9e42c86648 patch 8.1.0197: Windows GUI: title for search/replace is wrong
Problem:    Windows GUI: title for search/replace is wrong.
Solution:   Remove remark about doubling backslash. (closes #3230)
2018-07-20 05:03:16 +02:00
Bram Moolenaar f63db65b24 patch 8.1.0196: terminal debugger error with .gdbinit file
Problem:    Terminal debugger error with .gdbinit file.
Solution:   Check two lines for the "new ui" response. (hint from Hirohito
            Higashi)
2018-07-19 04:13:36 +02:00
Bram Moolenaar 963c1ad5d0 patch 8.1.0195: terminal debugger commands don't always work
Problem:    Terminal debugger commands don't always work. (Dominique Pelle)
Solution:   Set 'cpo' to its default value when defining commands. (Christian
            Brabandt)
2018-07-19 02:55:01 +02:00
Bram Moolenaar 414998023f patch 8.1.0194: possibly use of NULL pointer
Problem:    Possibly use of NULL pointer. (Coverity)
Solution:   Reset the re_in_use flag earlier.
2018-07-18 06:02:09 +02:00
ichizok 17a8a7f3c0 Fix a display of some non-composing glyphs
e.g. ligatures, arabic
2018-07-17 18:25:42 +09:00
Bram Moolenaar ca4cc018ad patch 8.1.0193: terminal debugger buttons don't always work
Problem:    Terminal debugger buttons don't always work. (Dominique Pelle)
Solution:   Set 'cpo' to its default value.
2018-07-17 05:55:12 +02:00
Bram Moolenaar 0270f38e1a patch 8.1.0192: executing regexp recursively fails with a crash
Problem:    Executing regexp recursively fails with a crash.
Solution:   Move global variables into "rex".
2018-07-17 05:43:58 +02:00
Bram Moolenaar 3166afd945 patch 8.1.0191: Perl test fails in 24 line terminal
Problem:    Perl test fails in 24 line terminal.
Solution:   Create fewer windows.
2018-07-16 18:09:14 +02:00
Bram Moolenaar 18c4f1badb patch 8.1.0190: Perl refcounts are wrong
Problem:    Perl refcounts are wrong.
Solution:   Improve refcounting.  Add a test. (Damien)
2018-07-16 17:45:38 +02:00
Bram Moolenaar d90a144eda patch 8.1.0189: function defined in sandbox not tested
Problem:    Function defined in sandbox not tested.
Solution:   Add a text.
2018-07-15 20:24:31 +02:00
Bram Moolenaar b477af2260 Update runtime files. 2018-07-15 20:20:18 +02:00
Bram Moolenaar 2196bca737 patch 8.1.0188: no test for ":cscope add"
Problem:    No test for ":cscope add".
Solution:   Add a test. (Dominique Pelle, closes #3212)
2018-07-15 17:36:32 +02:00
Bram Moolenaar 7132ddc101 patch 8.1.0187: getwininfo() and win_screenpos() return different numbers
Problem:    getwininfo() and win_screenpos() return different numbers.
Solution:   Add one to "wincol" and "winrow" from getwininfo().
2018-07-15 17:01:11 +02:00
Bram Moolenaar 44a693a1bd patch 8.1.0186: test for getwininfo() fails in GUI
Problem:    Test for getwininfo() fails in GUI.
Solution:   Account for missing tabline.
2018-07-14 22:23:47 +02:00
Bram Moolenaar 1ce9a1515b patch 8.1.0185: running tests writes lua.vim even though it is not used
Problem:    Running tests writes lua.vim even though it is not used.
Solution:   Stop writing lua.vim.
2018-07-14 21:48:46 +02:00
Bram Moolenaar b6959a8e06 patch 8.1.0184: not easy to figure out the window layout
Problem:    Not easy to figure out the window layout.
Solution:   Add "wincol" and "winrow" to what getwininfo() returns.
2018-07-14 21:41:44 +02:00
Bram Moolenaar 1741367131 patch 8.1.0183: Lua API changed, breaking the build
Problem:    Lua API changed, breaking the build.
Solution:   Adjust prototype of lua_rawgeti(). (Ken Takata,
            closes #3157, closes #3144)
2018-07-14 20:49:42 +02:00
Bram Moolenaar 4fc85003c5 patch 8.1.0182: Unicode standard was updated
Problem:    Unicode standard was updated.
Solution:   Include the changes. (Christian Brabandt)
2018-07-14 19:30:36 +02:00
Bram Moolenaar a43ebe9454 patch 8.1.0181: memory leak with trailing characters in skip expression
Problem:    Memory leak with trailing characters in skip expression.
Solution:   Free the return value.
2018-07-14 17:25:01 +02:00
Bram Moolenaar d6ef5f9b3d patch 8.1.0180: static analysis errors in Lua interface
Problem:    Static analysis errors in Lua interface. (Coverity)
Solution:   Check for NULL pointers.
2018-07-13 22:08:23 +02:00
Bram Moolenaar efc81331e7 patch 8.1.0179: redundant condition for boundary check
Problem:    Redundant condition for boundary check.
Solution:   Remove the condition. (Dominique Pelle). Change FALSE to FAIL.
2018-07-13 16:31:19 +02:00
Kazuki Sakamoto 6688ed2290 Merge remote-tracking branch 'vim/master' 2018-07-12 21:29:04 -07:00
Bram Moolenaar e76c4b237d patch 8.1.0178: warning for passing pointer to non-pointer argument
Problem:    Warning for passing pointer to non-pointer argument.
Solution:   Use zero instead of NULL.
2018-07-11 22:57:54 +02:00
Bram Moolenaar 93343725b5 patch 8.1.0177: defining function in sandbox is inconsistent
Problem:    Defining function in sandbox is inconsistent, cannot use :function
            but can define a lambda.
Solution:   Allow defining a function in the sandbox, but also use the sandbox
            when executing it. (closes #3182)
2018-07-10 19:39:18 +02:00
Bram Moolenaar 18085fae74 patch 8.1.0176: overlapping string argument for strcpy()
Problem:    Overlapping string argument for strcpy(). (Coverity)
Solution:   Use STRMOVE() instead of STRCPY(). (Dominique Pelle, closes #3187)
2018-07-10 17:33:45 +02:00
Bram Moolenaar bde14d8e24 patch 8.1.0175: marks test fails in very wide window
Problem:    Marks test fails in very wide window. (Vladimir Lomov)
Solution:   Extend the text to match 'columns'. (closes #3180, closes #3181)
2018-07-10 15:22:32 +02:00
Bram Moolenaar 907dad72ef patch 8.1.0174: after paging up and down fold line is wrong
Problem:    After paging up and down fold line is wrong.
Solution:   Correct the computation of w_topline and w_botline. (Hirohito
            Higashi)
2018-07-10 15:07:15 +02:00
Kazuki Sakamoto 3ad944b0b7 Python 3.7 for Travis CI build 2018-07-09 23:44:09 -07:00
Kazuki Sakamoto 1426e4f7dc Merge remote-tracking branch 'vim/master' 2018-07-09 23:42:30 -07:00
Bram Moolenaar 6259e5769d patch 8.1.0173: compiler warning on MS-Windows
Problem:    Compiler warning on MS-Windows.
Solution:   Add type cast. (Mike Williams)
2018-07-09 20:39:17 +02:00
Kazuki Sakamoto 378032d85e Merge pull request #708 from ychin/guioptions-k
Support guioptions 'k' flag in MacVim, prevents unnecessary window re…
2018-07-08 19:15:39 -07:00
Kazuki Sakamoto 91dcb1fa63 Merge remote-tracking branch 'vim/master' 2018-07-08 19:12:27 -07:00
Bram Moolenaar c229e54a69 patch 8.1.0172: 'viminfofile' option does not behave like a file name
Problem:    'viminfofile' option does not behave like a file name.
Solution:   Add the P_EXPAND flag. (closes #3178)
2018-07-08 21:46:56 +02:00
Bram Moolenaar 875cf87894 patch 8.1.0171: typing CTRL-W n in a terminal window causes ml_get error
Problem:    Typing CTRL-W n in a terminal window causes ml_get error.
Solution:   When resizing the terminal outside of terminal_loop() make sure
            the snapshot is complete.
2018-07-08 20:49:07 +02:00
Bram Moolenaar 2338c32b53 patch 8.1.0170: invalid memory use with complicated pattern
Problem:    Invalid memory use with complicated pattern. (Andy Massimino)
Solution:   Reallocate the list of listids when needed. (closes #3175)
            Remove unnecessary function prototypes.
2018-07-08 19:07:19 +02:00
Bram Moolenaar a9defadb8f patch 8.1.0169: calling message_filtered() a bit too often
Problem:    Calling message_filtered() a bit too often.
Solution:   Only call message_filtered() when filtering is already false.
2018-07-08 18:20:24 +02:00
Bram Moolenaar 9d5185bf9d patch 8.1.0168: output of :marks is too short with multi-byte chars
Problem:    Output of :marks is too short with multi-byte chars. (Tony
            Mechelynck)
Solution:   Get more bytes from the text line.
2018-07-08 17:57:34 +02:00
Bram Moolenaar c89d4b3530 patch 8.1.0167: lock flag in new dictitem is reset in many places
Problem:    Lock flag in new dictitem is reset in many places.
Solution:   Always reset the lock flag.
2018-07-08 17:19:02 +02:00
Bram Moolenaar e0be167a80 patch 8.1.0166: using dict_add_nr_str() is clumsy
Problem:    Using dict_add_nr_str() is clumsy.
Solution:   Split into two functions. (Ozaki Kiichi, closes #3154)
2018-07-08 16:50:37 +02:00
Bram Moolenaar 4cde86c2ef patch 8.1.0165: :clist output can be very long
Problem:    :clist output can be very long.
Solution:   Support filtering :clist entries. (Yegappan Lakshmanan)
2018-07-08 16:01:08 +02:00
Yee Cheng Chin 1333bc6c20 Support guioptions 'k' flag in MacVim, prevents unnecessary window resize
Adds support for native GVim's 'k' flag. Adding/removing tabs/scrollbars
and setting 'linespace'/'columnspace' would now cause the number of
lines and columns in the buffer change to keep the window size constant,
instead of the other way round of resizing the window to keep the view
size constant. This helps prevent the window from resizing itself
unncessarily, which could be especially annoying when the window is
pinned/maximized.

Manually setting 'lines'/'columns', going to full screen, dragging the
window corner to resize would still resize the window.

Also removed misc calls within MMWindowController.m that were setting
shouldResizeVimView. Those calls were already handled by native Vim's
gui.c's gui_set_shellsize so it's redundant.

Close #617
2018-07-08 03:27:55 -07:00
Bram Moolenaar fd35811ca5 Update runtime files, add Danish translations. 2018-07-07 23:21:31 +02:00
Bram Moolenaar fe08df452a patch 8.1.0164: luaeval('vim.buffer().name') returns an error
Problem:    luaeval('vim.buffer().name') returns an error.
Solution:   Return an empty string. (Dominique Pelle, closes #3167)
2018-07-07 23:07:41 +02:00
Bram Moolenaar 2549acf794 patch 8.1.0163: insufficient testing for Tcl
Problem:    Insufficient testing for Tcl.
Solution:   Add a few more tests. (Dominique Pelle, closes #3166)
2018-07-07 22:42:01 +02:00
Bram Moolenaar 08505312fe patch 8.1.0162: Danish and German man pages are not installed
Problem:    Danish and German man pages are not installed. (Tony Mechelynck)
Solution:   Adjust the makefile
2018-07-07 22:26:54 +02:00
Bram Moolenaar 386bc82a3f patch 8.1.0161: buffer not updated with 'autoread' set if file was deleted
Problem:    Buffer not updated with 'autoread' set if file was deleted.
            (Michael Naumann)
Solution:   Don't set the timestamp to zero. (closes #3165)
2018-07-07 18:34:12 +02:00
Bram Moolenaar cbbe4ab4b2 patch 8.1.0160: no Danish manual translations
Problem:    No Danish manual translations.
Solution:   Add the Danish manual translations to the file list.
2018-07-07 17:21:55 +02:00
Bram Moolenaar 6c5d104302 patch 8.1.0159: completion for user names does not work for a prefix.
Problem:    Completion for user names does not work if a prefix is also a full
            matching name. (Nazri Ramliy)
Solution:   Accept both full and partial matches. (Dominique Pelle)
2018-07-07 16:41:13 +02:00
Bram Moolenaar 1ebff3dc93 patch 8.1.0158: GUI: input() fails if CTRL-C was pressed before
Problem:    GUI: input() fails if CTRL-C was pressed before. (Michael Naumann)
Solution:   call vpeekc() to drop the CTRL-C from the input stream.
2018-07-07 16:18:13 +02:00
Bram Moolenaar e330ef42f2 patch 8.1.0157: old iTerm2 is not recognized, resulting in stray output
Problem:    Old iTerm2 is not recognized, resulting in stray output.
Solution:   Recognize the termresponse.
2018-07-06 23:11:40 +02:00
Bram Moolenaar 5d2f40792e patch 8.1.0156: MS-Windows compiler warning
Problem:    MS-Windows compiler warning.
Solution:   Add a type cast. (Mike Williams)
2018-07-06 22:52:02 +02:00
Bram Moolenaar ae728edc93 patch 8.1.0155: evim.man missing from the distribution
Problem:    Evim.man missing from the distribution.
Solution:   Add it to the list.
2018-07-05 22:58:17 +02:00
Bram Moolenaar c9fe5ab3b0 patch 8.1.0154: crash with "set smarttab shiftwidth=0 softtabstop=-1"
Problem:    Crash with "set smarttab shiftwidth=0 softtabstop=-1".
Solution:   Fall back to using 'tabstop'. (closes #3155)
2018-07-05 22:27:08 +02:00
Bram Moolenaar e85ce6ea2e patch 8.1.0153: build with SHADOWDIR fails
Problem:    Build with SHADOWDIR fails. (Elimar Riesebieter)
Solution:   Create a link for Make_all.mak. (Tony Mechelynck)
2018-07-05 17:11:24 +02:00
Bram Moolenaar f3dc235576 patch 8.1.0152: cannot easily run individual tests on MS-Windows
Problem:    Cannot easily run individual tests on MS-Windows.
Solution:   Move the list of tests to a separate file.  Add a build rule in
            the MSVC makefile.
2018-07-04 23:05:34 +02:00
Bram Moolenaar 81e2ac7bb6 patch 8.1.0151: mksession test fails on MS-Windows
Problem:    Mksession test fails on MS-Windows.
Solution:   Always use an argument for :lcd.
2018-07-04 22:44:08 +02:00
Bram Moolenaar fd34cebe9a patch 8.1.0150: insufficient test coverage for Tcl
Problem:    Insufficient test coverage for Tcl.
Solution:   Add more tests. (Dominique Pelle, closes #3140)
2018-07-04 22:36:46 +02:00
Bram Moolenaar 26d4b896a7 patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Problem:    The generated sessions file does not restore tabs properly if :lcd
            was used in one of them.
Solution:   Create the tab pages before setting the directory. (Yee Cheng
            Chin, closes #3152)
2018-07-04 22:26:28 +02:00
Bram Moolenaar 92959fa46d patch 8.1.0148: memory leak when using :tcl expr command
Problem:    Memory leak when using :tcl expr command.
Solution:   Free the result of expression evaluation. (Dominique Pelle,
            closes #3150)
2018-07-04 22:12:25 +02:00
Bram Moolenaar 3b48b11c07 patch 8.1.0147: compiler warning when building with Python 3.7
Problem:    Compiler warning when building with Python 3.7.
Solution:   #undef PySlice_GetIndicesEx before redefining it. (Ozaki Kiichi,
            closes #3153)
2018-07-04 22:03:25 +02:00
Bram Moolenaar f0447e89a5 patch 8.1.0146: when $LANG is set the compiler test may fail
Problem:    When $LANG is set the compiler test may fail.
Solution:   Unset $LANG.
2018-07-03 21:26:38 +02:00
Bram Moolenaar 851332ea9c patch 8.1.0145: test with grep is failing on MS-Windows
Problem:    Test with grep is failing on MS-Windows.
Solution:   Skip the test.
2018-07-03 19:16:00 +02:00
Bram Moolenaar b2e0c94a4d patch 8.1.0144: the :cd command does not have good test coverage
Problem:    The :cd command does not have good test coverage.
Solution:   Add more tests. (Dominique Pelle, closes #2972)
2018-07-03 18:36:27 +02:00
Bram Moolenaar 3d1d6475f9 patch 8.1.0143: matchit and matchparen don't handle E363
Problem:    Matchit and matchparen don't handle E363.
Solution:   Catch the E363 error. (Christian Brabandt)
2018-07-03 18:18:23 +02:00
Bram Moolenaar e6882bdc44 patch 8.1.0142: xterm and vt320 builtin termcap missing keypad keys
Problem:    Xterm and vt320 builtin termcap missing keypad keys.
Solution:   Add the escape sequences. (Kouichi Iwamoto, closes #2973)
2018-07-03 17:16:59 +02:00
Bram Moolenaar 531b9a3a63 patch 8.1.0141: :cexpr no longer jumps to the first error
Problem:    :cexpr no longer jumps to the first error.
Solution:   Use the quickfix list identifier. (Yegappan Lakshmanan,
            closes #3092)
2018-07-03 16:54:23 +02:00
Bram Moolenaar 6dc819b129 Updated runtime and language files. 2018-07-03 16:42:19 +02:00
Bram Moolenaar 972bfddc6b patch 8.1.0140: recording into a register has focus events
Problem:    Recording into a register has focus events. (Michael Naumann)
Solution:   Don't record K_FOCUSGAINED and K_FOCUSLOST. (closes #3143)
2018-07-03 14:48:15 +02:00
Kazuki Sakamoto 351faf929e Merge remote-tracking branch 'vim/master' 2018-07-02 23:15:52 -07:00
Kazuki Sakamoto 7956ed5684 Merge pull request #703 from Giemsa/fix/invalid_font_on_high_sierra
Fix: failed to select some fonts on high sierra
2018-07-02 23:15:19 -07:00
Kazuki Sakamoto 585d52cd01 Merge pull request #704 from tranngocthachs/fix_xcode_10b_build
Fix build on Xcode 10 beta
2018-07-02 23:13:38 -07:00
Bram Moolenaar a8a60d0c6b patch 8.1.0139: Lua tests fail on some platforms
Problem:    Lua tests fail on some platforms.
Solution:   Accept a hex number with and without "0x". (Ken Takata,
            closes #3137)
2018-07-02 22:54:36 +02:00
Bram Moolenaar 33d5ab3795 patch 8.1.0138: negative value of 'softtabstop' not used correctly
Problem:    Negative value of 'softtabstop' not used correctly.
Solution:   Use get_sts_value(). (Tom Ryder)
2018-07-02 20:51:24 +02:00
Bram Moolenaar ade5578797 patch 8.1.0137: CI does not run with TCL
Problem:    CI does not run with TCL.
Solution:   Add TCL to the travis config. (Dominique Pelle, closes #3133)
2018-07-01 21:12:55 +02:00
Bram Moolenaar 2f362bf7f9 patch 8.1.0136: Lua tests don't cover new features
Problem:    Lua tests don't cover new features.
Solution:   Add more tests. (Dominique Pelle, closes #3130)
2018-07-01 19:49:27 +02:00
Bram Moolenaar e0429681ae patch 8.1.0135: undo message delays screen update for CTRL-O u
Problem:    Undo message delays screen update for CTRL-O u.
Solution:   Add smsg_attr_keep(). (closes #3125)
2018-07-01 16:44:03 +02:00
Bram Moolenaar ca06da9243 patch 8.1.0134: Lua interface does not support funcref
Problem:    Lua interface does not support funcref.
Solution:   Add funcref support. (Luis Carvalho)
2018-07-01 15:12:05 +02:00
Bram Moolenaar ffd112edc6 Fix missing patch number. 2018-07-01 14:22:31 +02:00
Bram Moolenaar 46577b5e54 patch 8.1.0133: tagfiles() can have duplicate entries
Problem:    tagfiles() can have duplicate entries.
Solution:   Simplify the filename to make checking for duplicates work better.
            Add a test. (Dominique Pelle, closes #2979)
2018-06-30 22:40:42 +02:00
Bram Moolenaar 4ff4814b38 patch 8.1.0132: lua tests are old style
Problem:    Lua tests are old style.
Solution:   Convert to new style tests.  Improve coverage. (Dominique Pelle,
            closes #3091)
2018-06-30 21:50:25 +02:00
Bram Moolenaar 1fbfe7c48c patch 8.1.0131: :profdel is not tested
Problem:    :profdel is not tested.
Solution:   Add a test. (Dominique Pelle, closes #3123)
2018-06-30 21:18:13 +02:00
Bram Moolenaar ad64809610 patch 8.1.0130: ":profdel func" does not work if func was called already
Problem:    ":profdel func" does not work if func was called already.
            (Dominique Pelle)
Solution:   Reset uf_profiling and add a flag to indicate initialization was
            done.
2018-06-30 18:28:03 +02:00
Bram Moolenaar 668324ef4f patch 8.1.0129: still some xterm-like terminals get a stray "p"
Problem:    Still some xterm-like terminals get a stray "p" on startup.
Solution:   Consider all terminals that reply with a version smaller than 95
            as not an xterm. (James McCoy)
2018-06-30 17:09:26 +02:00
Bram Moolenaar 304925e750 patch 8.1.0128: building with MinGW does not work out-of-the-box
Problem:    Building with MinGW does not work out-of-the-box.
Solution:   Add instructions for MSYS2.  Set default WINVER.  Add batch files
            to set $PATH for MSYS2.
2018-06-30 16:27:02 +02:00
Thach Tran 14ccd63f90 Fix #690 build on Xcode 10 beta 2018-06-29 16:25:20 -07:00
Bram Moolenaar 7c365fb190 patch 8.1.0127: build failure when disabling the session feature
Problem:    Build failure when disabling the session feature. (Pawel Slowik)
Solution:   Adjust #ifdef for vim_chdirfile().
2018-06-29 20:28:31 +02:00
Bram Moolenaar 307ac5c68e patch 8.1.0126: various problems with 'vartabstop'
Problem:    Various problems with 'vartabstop'.
Solution:   Fix memory leak.  Fix crash. Add a few more tests. (Christian
            Brabandt, closes #3076)
2018-06-28 22:23:00 +02:00
Giemsa 1a7ed927f0 Fix: failed to select some fonts on high sierra 2018-06-29 04:31:04 +09:00
Bram Moolenaar 630afe889a patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Problem:    Virtual edit replace with multi-byte fails at end of line. (Lukas
            Werling)
Solution:   use ins_char() to add the character. (Christian Brabandt,
            closes #3114)  Rename PCHAR() to PBYTE() to avoid mistakes like
            this.
2018-06-28 19:26:28 +02:00
Bram Moolenaar d8b37a53bd patch 8.1.0124: has('vcon') returns true even for non-win32 terminal
Problem:    has('vcon') returns true even for non-win32 terminal.
Solution:   Check the terminal type. (Nobuhiro Takasaki, closes #3106)
2018-06-28 15:50:28 +02:00
Bram Moolenaar b0eb14f939 patch 8.1.0123: MS-Windows: colors are wrong after setting 'notgc'
Problem:    MS-Windows: colors are wrong after setting 'notgc'.
Solution:   Only call control_console_color_rgb() for the win32 terminal.
            (Nobuhiro Takasaki, closes #3107)
2018-06-28 15:29:52 +02:00
Bram Moolenaar 0c18319872 patch 8.1.0122: translators don't always understand the maintainer message
Problem:    Translators don't always understand the maintainer message.
Solution:   Add a comment that ends up in the generated po file. (Christian
            Brabandt, closes #3037)
2018-06-28 14:54:43 +02:00
Bram Moolenaar ca4b613c69 patch 8.1.0121: crash when using ballooneval related to 'vartabstop'
Problem:    Crash when using ballooneval related to 'vartabstop'.
Solution:   Initialize balloonEval->vts to NULL. (Markus Braun)
2018-06-28 12:05:11 +02:00
Bram Moolenaar dc9e955fb0 patch 8.1.0120: buffer 'modified' set even when :sort has no changes
Problem:    Buffer 'modified' set even when :sort has no changes.
Solution:   Only set 'modified' when lines are moved. (Jason Franklin)
2018-06-28 11:28:08 +02:00
Bram Moolenaar ec12d64909 patch 8.1.0119: failing test goes unnoticed because messages is not written
Problem:    Failing test goes unnoticed because testdir/messages is not
            written.
Solution:   Set 'nomodifiable' only local to the buffer.
2018-06-27 23:12:36 +02:00
Bram Moolenaar f52f9ea8f5 patch 8.1.0118: duplicate error message for put command
Problem:    Duplicate error message for put command.
Solution:   Check return value of u_save(). (Jason Franklin)
2018-06-27 20:49:44 +02:00
Kazuki Sakamoto ea32277f0e Merge remote-tracking branch 'vim/master' 2018-06-26 21:34:02 -07:00
Bram Moolenaar bd87eb38c5 patch 8.1.0117: URL in install program still points to SourceForge
Problem:    URL in install program still points to SourceForge.
Solution:   Change it to www.vim.org. (closes #3100)
2018-06-26 23:18:45 +02:00
Kazuki Sakamoto a454795bd1 Merge remote-tracking branch 'vim/master' 2018-06-25 23:56:47 -07:00
Kazuki Sakamoto 6ff781f67e Merge pull request #700 from ichizok/fix/fetch-glyphs
Fix fetchGlyphsAndAdvances() in CoreText renderer
2018-06-25 23:56:34 -07:00
Bram Moolenaar a87b72cc31 patch 8.1.0116: display problem with 'vartabstop' and 'linebreak'
Problem:    Display problem with 'vartabstop' and 'linebreak'. (Chauca
            Fuentes)
Solution:   Call tabstop_padding(). (Christian Brabandt, closes #3076)
2018-06-25 21:24:51 +02:00
ichizok eec7910d54 Fix fetchGlyphsAndAdvances() in CoreText renderer 2018-06-25 19:21:03 +09:00
Bram Moolenaar b7a5ab112a patch 8.1.0115: the matchparen plugin may throw an error
Problem:    The matchparen plugin may throw an error.
Solution:   Change the skip argument from zero to "0".
2018-06-25 00:05:59 +02:00
Bram Moolenaar 0119a59ffd patch 8.1.0114: confusing variable name
Problem:    Confusing variable name.
Solution:   Rename new_ts to new_vts_array.  Change zero to NULL.
2018-06-24 23:53:28 +02:00
Bram Moolenaar 675e8d6adb Update runtime files. 2018-06-24 20:42:01 +02:00
Bram Moolenaar 829adb7460 patch 8.1.0113: compiler warning for unused variable
Problem:    Compiler warning for unused variable. (Yegappan Lakshmanan)
Solution:   Add UNUSED. (Christian Brabandt)
2018-06-24 19:24:03 +02:00
Bram Moolenaar 3dddb09c98 patch 8.1.0112: no error when using bad arguments with searchpair()
Problem:    No error when using bad arguments with searchpair().
Solution:   Add error messages.
2018-06-24 19:01:59 +02:00
Bram Moolenaar d1d037e901 patch 8.1.0111: .po files do not use recommended names
Problem:    .po files do not use recommended names.
Solution:   Give a warning if the recommended name is not used.  Accept the
            recommended name for conversion. (Christian Brabandt, Ken Takata)
2018-06-24 18:04:50 +02:00
Bram Moolenaar fc0896093c patch 8.1.0110: file name not displayed with ":file"
Problem:    File name not displayed with ":file" when 'F' is in 'shortmess'.
Solution:   Always display the file name when there is no argument (Christian
            Brabandt, closes #3070)
2018-06-24 16:53:35 +02:00
Bram Moolenaar 7cb6eecd32 patch 8.1.0109: new po makefile missing from distribution
Problem:    New po makefile missing from distribution.
Solution:   Add it to the file list.
2018-06-24 15:56:24 +02:00
Bram Moolenaar a4a2934e59 patch 8.1.0108: no Danish translations
Problem:    No Danish translations.
Solution:   Add Danish message translations. (closes #3073)  Move list of
            languages to a common makefile.
2018-06-24 15:52:56 +02:00
Bram Moolenaar defe6424ae patch 8.1.0107: Python: getting buffer option clears message
Problem:    Python: getting buffer option clears message. (Jacob Niehus)
Solution:   Don't use aucmd_prepbuf(). (closes #3079)
2018-06-24 15:14:07 +02:00
Bram Moolenaar eee3e94669 patch 8.1.0106: build fails when HAVE_DATE_TIME is undefined
Problem:    Build fails when HAVE_DATE_TIME is undefined.
Solution:   Always define init_longVersion(). (Christian Brabandt,
            closes #3075)
2018-06-24 14:44:46 +02:00
Bram Moolenaar 04958cbaf2 patch 8.1.0105: all tab stops are the same
Problem:    All tab stops are the same.
Solution:   Add the variable tabstop feature. (Christian Brabandt,
            closes #2711)
2018-06-23 19:23:02 +02:00
Bram Moolenaar 5ec7414a1c patch 8.1.0104: can't build without the +eval feature
Problem:    Can't build without the +eval feature.
Solution:   Add #ifdef.
2018-06-23 17:14:41 +02:00
Bram Moolenaar 35fb6fbf72 patch 8.1.0103: long version string cannot be translated
Problem:    Long version string cannot be translated.
Solution:   Build the string in init_longVersion().
2018-06-23 16:12:21 +02:00
Bram Moolenaar 1f8c469fe2 patch 8.1.0102: cannot build without syntax highlighting
Problem:    Cannot build without syntax highlighting.
Solution:   Add #ifdef around using reg_do_extmatch.
2018-06-23 15:09:10 +02:00
Bram Moolenaar 81612b7a7d patch 8.1.0101: no test for getcmdwintype()
Problem:    No test for getcmdwintype().
Solution:   Add a test. (Dominique Pelle, closes #3068)
2018-06-23 14:55:03 +02:00
Bram Moolenaar 6dccc962f3 patch 8.1.0100: terminal debugger: error when setting a watch point
Problem:    Terminal debugger: error when setting a watch point.
Solution:   Don't try defining a sign for a watch point.
2018-06-23 14:36:17 +02:00
Bram Moolenaar 3c867daaf0 patch 8.1.0099: exclamation mark in error message not needed
Problem:    Exclamation mark in error message not needed.
Solution:   Remove the exclamation mark.
2018-06-23 14:34:28 +02:00
Bram Moolenaar bcf9442307 patch 8.1.0098: segfault when pattern with \z() is very slow
Problem:    Segfault when pattern with \z() is very slow.
Solution:   Check for NULL regprog.  Add "nfa_fail" to test_override() to be
            able to test this.  Fix that 'searchhl' resets called_emsg.
2018-06-23 14:21:42 +02:00
Bram Moolenaar 5efa0102de patch 8.1.0097: superfluous space before exclamation mark
Problem:    Superfluous space before exclamation mark.
Solution:   Remove the space.  Don't translate debug message.
2018-06-22 21:42:30 +02:00
Bram Moolenaar 8c55533c6f patch 8.1.0096: inconsistent use of the word autocommands
Problem:    Inconsistent use of the word autocommands.
Solution:   Don't use auto-commands or "auto commands".
2018-06-22 21:30:31 +02:00
Kazuki Sakamoto 21f99c1562 Merge remote-tracking branch 'vim/master' 2018-06-21 20:49:30 -07:00
Bram Moolenaar 39902a06d9 patch 8.1.0095: dialog for ":browse tabnew" says "new window"
Problem:    Dialog for ":browse tabnew" says "new window".
Solution:   Use "new tab page". (closes #3053)
2018-06-21 22:10:08 +02:00
Bram Moolenaar 32aaf5ae07 patch 8.1.0094: help text "usage:" is not capatalized
Problem:    Help text "usage:" is not capatalized.
Solution:   Make it "Usage:". (closes #3044)
2018-06-21 21:38:33 +02:00
Bram Moolenaar 2ed890f1f8 patch 8.1.0093: non-MS-Windows: Cannot interrupt gdb when program is running
Problem:    non-MS-Windows: Cannot interrupt gdb when program is running.
Solution:   Only use debugbreak() on MS-Windows.
2018-06-21 20:31:14 +02:00
Bram Moolenaar 71ef1ba5e9 patch 8.1.0092: prompt buffer test fails
Problem:    Prompt buffer test fails.
Solution:   Set 'nomodified' before closing the window. (Ozaki Kiichi,
            closes #3051
2018-06-21 12:07:04 +02:00
Bram Moolenaar 4551c0a9fc patch 8.1.0091: MS-Windows: Cannot interrupt gdb when program is running
Problem:    MS-Windows: Cannot interrupt gdb when program is running.
Solution:   Add debugbreak() and use it in the terminal debugger.
            Respect 'modified' in a prompt buffer.
2018-06-20 22:38:21 +02:00
Bram Moolenaar 9b0c5c23bd patch 8.1.0090: "..." used inconsistently in a message
Problem:    "..." used inconsistently in a message.
Solution:   Define the message with " ..." once. (hint by Ken Takata)
2018-06-20 20:37:36 +02:00
Bram Moolenaar a15b0a936d patch 8.1.0089: error when ending the terminal debugger
Problem:    error when ending the terminal debugger
Solution:   Fix deleting defined signs for breakpoints.  Make the debugger
            work better on MS-Windows.
2018-06-19 22:34:46 +02:00
Bram Moolenaar 5319191a2a patch 8.1.0088: terminal test for stdout and stderr is a bit flaky
Problem:    Terminal test for stdout and stderr is a bit flaky.
Solution:   Wait for both stdout and stderr to have been processed. (Ozaki
            Kiichi, closes #2991)
2018-06-19 20:08:14 +02:00
Bram Moolenaar f9c3883b11 patch 8.1.0087: v:shell_error is always zero when using terminal for "!cmd"
Problem:    v:shell_error is always zero when using terminal for "!cmd".
Solution:   Use "exitval" of terminal-job. (Ozaki Kiichi, closes #2994)
2018-06-19 19:59:20 +02:00
Bram Moolenaar 1ceebb4efc patch 8.1.0086: no tests for libcall() and libcallnr()
Problem:    No tests for libcall() and libcallnr().
Solution:   Add tests. (Dominique Pelle, closes #2982)
2018-06-19 19:46:06 +02:00
Bram Moolenaar 5f8f2d378a patch 8.1.0085: no test for completing user name and language
Problem:    No test for completing user name and language.
Solution:   Add tests. (Dominique Pelle, closes #2978)
2018-06-19 19:09:09 +02:00
Bram Moolenaar 828c3d7083 patch 8.1.0084: user name completion does not work on MS-Windows
Problem:    User name completion does not work on MS-Windows.
Solution:   Use NetUserEnum() to get user names. (Yasuhiro Matsumoto)
2018-06-19 18:58:07 +02:00
Bram Moolenaar 8516071124 patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Problem:    "is" and "as" have trouble with quoted punctuation.
Solution:   Check for punctuation before a quote. (Jason Franklin)
2018-06-19 18:27:41 +02:00
Bram Moolenaar 1d4754f96f patch 8.1.0082: in terminal window, typing : at more prompt, inserts ':'
Problem:    In terminal window, typing : at more prompt, inserts ':' instead
            of starting another Ex command.
Solution:   Add skip_term_loop and set it when putting ':' in the typeahead
            buffer.
2018-06-19 17:49:24 +02:00
Bram Moolenaar f07f9e731e patch 8.1.0081: the terminal debugger doesn't adjust to changed 'background'
Problem:    The terminal debugger doesn't adjust to changed 'background'.
Solution:   Add an OptionSet autocommand. (Christian Brabandt)
2018-06-19 17:27:53 +02:00
Bram Moolenaar de1a83147a patch 8.1.0080: can't see the breakpoint number in the terminal debugger
Problem:    Can't see the breakpoint number in the terminal debugger.
Solution:   Use the breakpoint number for the sign. (Christian Brabandt)
2018-06-19 16:59:54 +02:00
Bram Moolenaar 8df6e5d467 patch 8.1.0079: superfluous space in messages
Problem:    Superfluous space in messages.
Solution:   Remove the spaces. (closes #3030)
2018-06-19 14:45:37 +02:00
Bram Moolenaar d2f3a8b878 Update runtime files. 2018-06-19 14:35:59 +02:00
Bram Moolenaar c166927a32 patch 8.1.0078: "..." used inconsistently in messages
Problem:    "..." used inconsistently in messages.
Solution:   Drop the space before " ...".
2018-06-19 14:23:53 +02:00
Bram Moolenaar 5c3670718b patch 8.1.0077: header of README file is not nice
Problem:    Header of README file is not nice.
Solution:   Move text to the bottom.
2018-06-18 22:31:11 +02:00
Bram Moolenaar 0ce7413a83 patch 8.1.0076: command getting cleared with CTRL-W : in a terminal window
Problem:    Command getting cleared with CTRL-W : in a terminal window. (Jason
            Franklin)
Solution:   Call redraw_after_callback() when editing the command line.
2018-06-18 22:15:50 +02:00
Bram Moolenaar 252b7ee823 patch 8.1.0075: no Vim logo in README file
Problem:    No Vim logo in README file.
Solution:   Add one. (Árni Dagur, closes #3024)
2018-06-18 22:00:22 +02:00
Bram Moolenaar d6b01a2d38 patch 8.1.0074: crash when running quickfix tests
Problem:    Crash when running quickfix tests.
Solution:   Do not alloc a new location list when checking for the reference
            to be still valid.
2018-06-18 21:53:28 +02:00
Bram Moolenaar 0366c0161e patch 8.1.0073: crash when autocommands call setloclist()
Problem:    Crash when autocommands call setloclist(). (Dominique Pelle)
Solution:   If the quickfix list changes then don't jump to the error.
2018-06-18 20:52:13 +02:00
Kazuki Sakamoto ed3fd67cfc MacVim Snapshot 149
Binary targets macOS 10.8+

- Vim patch 8.1.0072

Script interfaces have compatibility with these versions

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.6
- Ruby 2.5
2018-06-17 15:52:28 -07:00
Kazuki Sakamoto 678963c2b8 Merge remote-tracking branch 'vim/master' 2018-06-17 15:38:13 -07:00
Bram Moolenaar dcdeaaf150 patch 8.1.0072: use of 'termwinkey' is inconsistent
Problem:    Use of 'termwinkey' is inconsistent.
Solution:   Change the documentation and the behavior. (Ken Takata)
2018-06-17 22:19:12 +02:00
Bram Moolenaar b3307b5e7e patch 8.1.0071: terminal debugger only works with the terminal feature
Problem:    Terminal debugger only works with the terminal feature.
Solution:   Make it also work with a prompt buffer.  Makes it possible to use
            on MS-Windows. Various other improvements. (closes #3012)
2018-06-17 21:34:11 +02:00
Bram Moolenaar 222cd20e26 patch 8.1.0070: missing part of the changes for prompt_setinterrupt()
Problem:    Missing part of the changes for prompt_setinterrupt().
Solution:   Add the missing changes.
2018-06-17 20:10:39 +02:00
Bram Moolenaar 0e5979a6d4 patch 8.1.0069: cannot handle pressing CTRL-C in a prompt buffer
Problem:    Cannot handle pressing CTRL-C in a prompt buffer.
Solution:   Add prompt_setinterrupt().
2018-06-17 19:36:33 +02:00
Bram Moolenaar 2f82ca7d79 patch 8.1.0068: nasty autocommands can still cause using freed memory
Problem:    Nasty autocommands can still cause using freed memory.
Solution:   Disallow using setloclist() and setqflist() recursively.
2018-06-17 19:22:52 +02:00
Bram Moolenaar a5616b0136 patch 8.1.0067: syntax highlighting not working when re-entering a buffer
Problem:    Syntax highlighting not working when re-entering a buffer.
Solution:   Do force executing autocommands when not called recursively.
2018-06-17 19:08:30 +02:00
Bram Moolenaar c3ffc9b8d3 patch 8.1.0066: nasty autocommand causes using freed memory
Problem:    Nasty autocommand causes using freed memory. (Dominique Pelle)
Solution:   Do not force executing autocommands if the value of 'syntax' or
            'filetype' did not change.
2018-06-17 17:32:58 +02:00
Bram Moolenaar 0e6e179f55 patch 8.1.0065: balloon displayed at the wrong position
Problem:    Balloon displayed at the wrong position.
Solution:   Do not reposition the popup menu at the cursor position.
2018-06-17 17:10:59 +02:00
Bram Moolenaar 942b4541a2 patch 8.1.0064: typing CTRL-W in a prompt buffer shows mode "-- --"
Problem:    Typing CTRL-W in a prompt buffer shows mode "-- --".
Solution:   Set restart_edit to 'A' and check for it.
2018-06-17 16:23:34 +02:00
Bram Moolenaar d595a1910c patch 8.1.0063: Mac: NSStringPboardType is deprecated
Problem:    Mac: NSStringPboardType is deprecated.
Solution:   Use NSPasteboardTypeString. (Akshay Hegde, closes #3022)
2018-06-17 15:01:04 +02:00
Bram Moolenaar 491ac28d5f patch 8.1.0062: popup menu broken if a callback changes the window layout
Problem:    Popup menu broken if a callback changes the window layout. (Qiming
            Zhao)
Solution:   Recompute the popup menu position if needed.  Redraw the ruler
            even when the popup menu is displayed.
2018-06-17 14:47:55 +02:00
Bram Moolenaar 84a9308511 patch 8.1.0061: window title is wrong after resetting and setting 'title'
Problem:    Window title is wrong after resetting and setting 'title'.
Solution:   Move resetting the title into maketitle(). (Jason Franklin)
2018-06-16 22:58:15 +02:00
Bram Moolenaar 600323b4ef patch 8.1.0060: crash when autocommands delete the current buffer
Problem:    Crash when autocommands delete the current buffer. (Dominique
            Pelle)
Solution:   Check that autocommands don't change the buffer.
2018-06-16 22:16:47 +02:00
Bram Moolenaar bc5020aa4d patch 8.1.0059: displayed digraph for "ga" wrong with 'encoding' "cp1251"
Problem:    Displayed digraph for "ga" wrong with 'encoding' "cp1251".
Solution:   Convert from 'encoding' to "utf-8" if needed. (closes #3015)
2018-06-16 17:25:22 +02:00
Bram Moolenaar bfa4246768 patch 8.1.0058: display problem with margins and scrolling
Problem:    Display problem with margins and scrolling.
Solution:   Place the cursor in the right column. (Kouichi Iwamoto,
            closes #3016)
2018-06-16 16:20:52 +02:00
Bram Moolenaar 6ba3ec1bac patch 8.1.0057: popup menu displayed wrong when using autocmd
Problem:    Popup menu displayed wrong when using autocmd.
Solution:   Use aucmd_prepbuf().  Force updating status line if the popup menu
            is going to be redrawn anyway. (Christian Brabandt, closes #3009)
2018-06-16 15:32:38 +02:00
Bram Moolenaar 43dee181f5 patch 8.1.0056: crash when using :hardcopy with illegal byte
Problem:    Crash when using :hardcopy with illegal byte.
Solution:   Check for string_convert() returning NULL. (Dominique Pelle)
2018-06-16 14:44:11 +02:00
Bram Moolenaar 52d3aaeea4 patch 8.1.0055: complete test has wrong order of arguments
Problem:    Complete test has wrong order of arguments. Wrong type for
            sentinel variable.
Solution:   Swap arguments, use VAR_UNKNOWN. (Ozaki Kiichi)
2018-06-13 21:27:24 +02:00
Bram Moolenaar 5ecdf96422 patch 8.1.0054: compiler warning for using %ld for "long long"
Problem:    Compiler warning for using %ld for "long long".
Solution:   Add a type cast. (closes #3002)
2018-06-13 20:49:50 +02:00
Kazuki Sakamoto cf915c85f7 Merge remote-tracking branch 'vim/master' 2018-06-12 20:28:23 -07:00
Bram Moolenaar ffa9684150 patch 8.1.0053: first argument of 'completefunc' has inconsistent type
Problem:    The first argument given to 'completefunc' can be Number or
            String, depending on the value.
Solution:   Avoid guessing the type of an argument, use typval_T in the
            callers of call_vim_function(). (Ozaki Kiichi, closes #2993)
2018-06-12 22:05:14 +02:00
Bram Moolenaar 83f4cbd973 patch 8.1.0052: when mapping to <Nop> times out the next mapping is skipped
Problem:    When a mapping to <Nop> times out the next mapping is skipped.
Solution:   Reset "timedout" when waiting for a character. (Christian
            Brabandt, closes #2921)
2018-06-12 21:35:40 +02:00
Bram Moolenaar 79c6b51e40 patch 8.1.0051: MS-Windows: missing #endif
Problem:    MS-Windows: missing #endif.
Solution:   Add the #endif.
2018-06-12 21:11:12 +02:00
Bram Moolenaar 493359eb3b patch 8.1.0050: $VIM_TERMINAL is also set when not in a terminal window
Problem:    $VIM_TERMINAL is also set when not in a terminal window.
Solution:   Pass a flag to indicate whether the job runs in a terminal.
2018-06-12 20:25:52 +02:00
Bram Moolenaar d7a137fb0d patch 8.1.0049: shell cannot tell running in a terminal window
Problem:    Shell cannot tell running in a terminal window.
Solution:   Add the VIM_TERMINAL environment variable. (Christian Brabandt)
2018-06-12 18:05:24 +02:00
Bram Moolenaar 07ccf7ce7f patch 8.1.0048: vim_str2nr() does not handle numbers close to the maximum
Problem:    vim_str2nr() does not handle numbers close to the maximum.
Solution:   Check for overflow more precisely. (Ken Takata, closes #2746)
2018-06-12 17:25:36 +02:00
Bram Moolenaar 1983401088 patch 8.1.0047: no completion for :unlet $VAR
Problem:    No completion for :unlet $VAR.
Solution:   Add completion. (Jason Franklin)
2018-06-12 17:03:39 +02:00
Bram Moolenaar 1c3c10492a patch 8.1.0046: loading a session file fails if 'winheight' is big
Problem:    Loading a session file fails if 'winheight' is a big number.
Solution:   Set 'minwinheight' to zero at first.  Don't give an error when
            setting 'minwinheight' while 'winheight' is a big number.
            Fix using vertical splits. Fix setting 'minwinwidth'.
            (closes #2970)
2018-06-12 16:49:30 +02:00
Bram Moolenaar ae0f30b761 patch 8.1.0045: popup test isn't run completely
Problem:    Popup test isn't run completely.
Solution:   Remove "finish".  Clean up function definitions.
2018-06-12 15:22:43 +02:00
Bram Moolenaar 8903676d3d patch 8.1.0044: if a test function exists Vim this may go unnoticed
Problem:    If a test function exists Vim this may go unnoticed.
Solution:   Check for a test funtion quitting Vim.  Fix tests that did exit
            Vim.
2018-06-12 14:58:39 +02:00
Bram Moolenaar 7580849df9 patch 8.1.0043: ++bad argument of :edit does not work properly
Problem:    ++bad argument of :edit does not work properly.
Solution:   Return FAIL from get_bad_opt() only when there is no valid
            argument. (Dominique Pelle, Christian Brabandt, closes #2966,
            closes #2947)
2018-06-12 12:39:41 +02:00
Bram Moolenaar f98b845dd1 patch 8.1.0042: if omni completion opens a window Insert mode is stopped
Problem:    If omni completion opens a window Insert mode is stopped.
            (Hirohito Higashi)
Solution:   Only set stop_insert_mode in a prompt buffer window.
2018-06-10 14:39:52 +02:00
Bram Moolenaar e950f9992b patch 8.1.0041: attribute "width" missing from python window attribute list
Problem:    Attribute "width" missing from python window attribute list.
Solution:   Add the item. (Ken Takata) Order the list like the items are used
            in the WindowAttr() function.
2018-06-10 13:55:55 +02:00
Bram Moolenaar e31e256ba1 patch 8.1.0040: warnings from 64-bit compiler
Problem:    Warnings from 64-bit compiler.
Solution:   Add type casts. (Mike Williams)
2018-06-10 13:12:55 +02:00
Kazuki Sakamoto 04ee357319 MacVim Snapshot 148
Binary targets macOS 10.8+

- Vim patch 8.1.0039

Script interfaces have compatibility with these versions

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.6
- Ruby 2.5
2018-06-07 21:57:29 -07:00
Kazuki Sakamoto a30133de19 Use XCODEFLAGS in order to set MACOSX_DEPLOYMENT_TARGET 2018-06-07 21:56:35 -07:00
Kazuki Sakamoto e95b546b3e Merge remote-tracking branch 'vim/master' 2018-06-07 21:26:10 -07:00
Bram Moolenaar d79a26219d patch 8.1.0039: cannot easily delete lines in another buffer
Problem:    Cannot easily delete lines in another buffer.
Solution:   Add deletebufline().
2018-06-07 18:17:46 +02:00
Bram Moolenaar 680c99b2ef patch 8.1.0038: popup test causes Vim to exit
Problem:    Popup test causes Vim to exit.
Solution:   Disable the broken part of the test for now.
2018-06-07 15:18:41 +02:00
Bram Moolenaar ca851593a6 patch 8.1.0037: cannot easily append lines to another buffer
Problem:    Cannot easily append lines to another buffer.
Solution:   Add appendbufline().
2018-06-06 21:04:07 +02:00
Bram Moolenaar 891e1fd894 patch 8.1.0036: not restoring Insert mode if leaving prompt buffer with mouse
Problem:    Not restoring Insert mode if leaving a prompt buffer by using a
            mouse click.
Solution:   Set b_prompt_insert appropriately. Also correct cursor position
            when moving cursor to last line.
2018-06-06 18:02:39 +02:00
Bram Moolenaar 6d41c78e35 patch 8.1.0035: not easy to switch between prompt buffer and other windows
Problem:    Not easy to switch between prompt buffer and other windows.
Solution:   Accept CTRL-W commands in Insert mode.  Start and stop Insert mode
            as one would expect.
2018-06-06 09:11:12 +02:00
Kazuki Sakamoto 703ff6133b Merge remote-tracking branch 'vim/master' 2018-06-05 21:53:59 -07:00
Kazuki Sakamoto 2a9f2b5bac Merge pull request #689 from ichizok/fix/redraw_after_callback
Fix: redraw_after_callback should force flush
2018-06-05 21:39:55 -07:00
ichizok 5838d3ff38 Fix: redraw_after_callback should force flush 2018-06-05 17:27:04 +09:00
Bram Moolenaar adb8fbec4f patch 8.1.0034: cursor not restored with ":edit #"
Problem:    Cursor not restored with ":edit #".
Solution:   Don't assume autocommands moved the cursor when it was moved to
            the first non-blank.
2018-06-04 20:34:23 +02:00
Bram Moolenaar acb9effecc patch 8.1.0033: keys to stop Vim in terminal are wrong
Problem:    Keys to stop Vim in terminal are wrong. (Marius Gedminas)
Solution:   Move ":" to before CTRL-U.
2018-06-04 19:11:11 +02:00
Bram Moolenaar 6b810d92a9 patch 8.1.0032: BS in prompt buffer starts new line
Problem:    BS in prompt buffer starts new line.
Solution:   Do not allows BS over the prompt.  Make term_sendkeys() handle
            special keys. Add a test.
2018-06-04 17:28:44 +02:00
Bram Moolenaar c8523e2e6c patch 8.1.0031: terminal test aucmd_on_close if flaky
Problem:    Terminal test aucmd_on_close if flaky.
Solution:   Wait a bit longer.
2018-06-03 18:22:02 +02:00
Bram Moolenaar 3339d3dad9 patch 8.1.0030: stoping Vim running in a terminal may not work
Problem:    Stoping Vim running in a terminal may not work.
Solution:   Instead of sending <Esc> send CTRL-O.
2018-06-03 17:10:40 +02:00
Bram Moolenaar 1580f755c9 patch 8.1.0029: terminal test fails on MS-Windows when "wc" exists
Problem:    Terminal test fails on MS-Windows when "wc" exists.
Solution:   Skip test with redirection on MS-Windows.
2018-06-03 15:26:36 +02:00
Bram Moolenaar 1149382d21 patch 8.1.0028: prompt buffer test fails on MS-Windows
Problem:    Prompt buffer test fails on MS-Windows.
Solution:   Disable the test for now. Remove stray assert.
2018-06-03 15:08:09 +02:00
Bram Moolenaar f273245f64 patch 8.1.0027: difficult to make a plugin that feeds a line to a job
Problem:    Difficult to make a plugin that feeds a line to a job.
Solution:   Add the nitial code for the "prompt" buftype.
2018-06-03 14:47:35 +02:00
Kazuki Sakamoto 9289901c59 Merge remote-tracking branch 'vim/master' 2018-05-28 22:36:00 -07:00
Bram Moolenaar 33c5e9fa7a patch 8.1.0026: terminal test fails with very tall terminal
Problem:    Terminal test fails with very tall terminal. (Tom)
Solution:   Fix the terminal window size in the test.
2018-05-26 18:58:51 +02:00
Bram Moolenaar e5fa11186f patch 8.1.0025: no test for the undofile() function
Problem:    No test for the undofile() function.
Solution:   Add test. (Dominique Pelle, closes #2958)
2018-05-26 18:46:30 +02:00
Bram Moolenaar 6b69e5c646 patch 8.1.0024: % command not testded on #ifdef and comment
Problem:    % command not testded on #ifdef and comment.
Solution:   Add tests. (Dominique Pelle, closes #2956)
2018-05-26 18:39:32 +02:00
Bram Moolenaar 22c105640c patch 8.1.0023: gcc 8.1 warns for use of strncpy()
Problem:    gcc 8.1 warns for use of strncpy(). (John Marriott)
Solution:   Use mch_memmove() instead of STRNCPY().
2018-05-26 17:35:27 +02:00
Kazuki Sakamoto ae0b599620 MacVim Snapshot 147
Binary targets macOS 10.8+

- Vim patch 8.1.0022

Script interfaces have compatibility with these versions

- Lua 5.3
- Perl 5.18
- Python2 2.7
- Python3 3.6
- Ruby 2.5
2018-05-23 21:33:54 -07:00
Kazuki Sakamoto 1e5a940ceb Merge remote-tracking branch 'vim/master' 2018-05-23 20:48:44 -07:00
Bram Moolenaar 833093bfb0 patch 8.1.0022: repeating put from expression register fails
Problem:    Repeating put from expression register fails.
Solution:   Re-evaluate the expression register. (Andy Massimino,
            closes #2945)
2018-05-23 21:53:52 +02:00
Bram Moolenaar d315cf551f patch 8.1.0021: clang warns for undefined behavior
Problem:    Clang warns for undefined behavior.
Solution:   Move #ifdef outside of sprintf() call.(suggestion by Michael
            Jarvis, closes #2956)
2018-05-23 20:30:56 +02:00
Kazuki Sakamoto 8bb4835558 Merge remote-tracking branch 'vim/master' 2018-05-22 22:07:43 -07:00
Bram Moolenaar 0b0f0992d4 Update runtime files. 2018-05-22 21:41:30 +02:00
Bram Moolenaar 0b6d911e5d patch 8.1.0020: cannot tell whether a register is executing or recording
Problem:    Cannot tell whether a register is being used for executing or
            recording.
Solution:   Add reg_executing() and reg_recording(). (Hirohito Higashi,
            closes #2745)  Rename the global variables for consistency.  Store
            the register name in reg_executing.
2018-05-22 20:35:17 +02:00
Bram Moolenaar b4518563c7 patch 8.1.0019: error when defining a Lambda with index of a function result
Problem:    Error when defining a Lambda with index of a function result.
Solution:   When not evaluating an expression and skipping a function call,
            set the return value to VAR_UNKNOWN.
2018-05-22 18:31:35 +02:00
Bram Moolenaar bdb657924d patch 8.1.0018: using "gn" may select wrong text when wrapping
Problem:    Using "gn" may select wrong text when wrapping.
Solution:   Avoid wrapping when searching forward. (Christian Brabandt)
2018-05-22 17:50:42 +02:00
Bram Moolenaar 62fe66f251 patch 8.1.0017: shell command completion has duplicates
Problem:    Shell command completion has duplicates. (Yegappan Lakshmanan)
Solution:   Use a hash table to avoid duplicates. (Ozaki Kiichi, closes #539,
            closes #2733)
2018-05-22 16:58:47 +02:00
Bram Moolenaar d45aa55d42 patch 8.1.0016: possible crash in term_wait()
Problem:    Possible crash in term_wait(). (Dominique Pelle)
Solution:   Check for a valid buffer after ui_delay(). (closes #2944)
2018-05-21 22:50:29 +02:00
Bram Moolenaar 05af9a4191 patch 8.1.0015: cursor color wrong when closing a terminal window
Problem:    Cursor color wrong when closing a terminal window, ending up in
            another terminal window. (Dominique Pelle)
Solution:   Bail out of terminal_loop() when the buffer changes.
            (closes #2942)
2018-05-21 18:48:12 +02:00
Bram Moolenaar 6053f2d29a patch 8.1.0014: qf_init_ext() is too long
Problem:    qf_init_ext() is too long.
Solution:   Split it into multiple functions. (Yegappan Lakshmanan,
            closes #2939)
2018-05-21 16:56:38 +02:00
Bram Moolenaar 4f7fd56b42 patch 8.1.0013: using freed memory when changing terminal cursor color
Problem:    Using freed memory when changing terminal cursor color.
Solution:   Make a copy of the color. (Dominique Pelle, closes #2938,
            closes #2941)
2018-05-21 14:55:28 +02:00
Bram Moolenaar 1f131aee0e patch 8.1.0012: misplaced #endif
Problem:    Misplaced #endif.
Solution:   Move the #endif to after the expression. (David Binderman)
2018-05-21 13:39:40 +02:00
Bram Moolenaar f88a5bc102 patch 8.1.0011: maparg() and mapcheck() confuse empty and non-existing
Problem:    maparg() and mapcheck() confuse empty and non-existing.
Solution:   Return <Nop> for an existing non-empty mapping. (closes #2940)
2018-05-21 13:28:44 +02:00
Kazuki Sakamoto 4feec4b702 Merge remote-tracking branch 'vim/master' 2018-05-20 20:30:35 -07:00
Bram Moolenaar 6bff719f7e patch 8.1.0010: efm_to_regpat() is too long
Problem:    efm_to_regpat() is too long.
Solution:   Split off three functions. (Yegappan Lakshmanan, closes #2924)
2018-05-20 15:41:17 +02:00
Bram Moolenaar dbe8869c41 patch 8.1.0009: tabpages insufficiently tested
Problem:    Tabpages insufficiently tested.
Solution:   Add more test coverage. (Dominique Pelle, closes #2934)
2018-05-20 14:57:22 +02:00
Bram Moolenaar 42ab17b8e3 patch 8.1.0008: no test for strwidth()
Problem:    No test for strwidth().
Solution:   Add a test. (Dominique Pelle, closes #2931)
2018-05-20 14:11:10 +02:00
Bram Moolenaar 2e94976abd patch 8.1.0007: no test for "o" and "O" in Visual block mode
Problem:    No test for "o" and "O" in Visual block mode.
Solution:   Add a test. (Dominique Pelle, closes #2932)
2018-05-20 14:06:38 +02:00
Bram Moolenaar a772baf85a patch 8.1.0006: syn_id2cterm_bg() may be undefined
Problem:    syn_id2cterm_bg() may be undefined. (Axel Bender)
Solution:   Adjust #ifdef.
2018-05-20 13:35:44 +02:00
Bram Moolenaar d19b234154 patch 8.1.0005: test for :compiler command fails on MS-Windows
Problem:    Test for :compiler command fails on MS-Windows.
Solution:   Ignore difference in path.
2018-05-19 16:45:15 +02:00
Bram Moolenaar 54651f7494 patch 8.1.0004: test for :compiler command sometimes fails
Problem:    Test for :compiler command sometimes fails.
Solution:   Be less strict about the error message. (Dominique Pelle)
2018-05-19 15:52:11 +02:00
Bram Moolenaar 10561fe0a3 patch 8.1.0003: the :compiler command is not tested
Problem:    The :compiler command is not tested.
Solution:   Add a test. (Dominique Pelle, closes #2930)
2018-05-19 15:01:10 +02:00
Bram Moolenaar 2abad54ced patch 8.1.0002: :stopinsert changes the message position
Problem:    :stopinsert changes the message position.
Solution:   Save and restore msg_col and msg_row in clearmode(). (Jason
            Franklin)
2018-05-19 14:43:45 +02:00
Bram Moolenaar 2f01889055 Runtime file and translation updates. 2018-05-18 18:12:06 +02:00
Kazuki Sakamoto 0db36ff4a2 Merge remote-tracking branch 'vim/master' 2018-05-17 19:17:47 -07:00
Bram Moolenaar 00e4556338 patch 8.1.0001: the netrw plugin does not work
Problem:    The netrw plugin does not work.
Solution:   Make it accept version 8.x.
2018-05-17 23:40:05 +02:00
Bram Moolenaar b1c9198afb Vim 8.1 release
Update version number and information.  Fix a couple of tests.
2018-05-17 17:04:55 +02:00
Bram Moolenaar 03998f606a patch 8.0.1850: todo items in source code not visible for users
Problem:    Todo items in source code not visible for users.
Solution:   Move the todo items to the help file.
2018-05-17 13:20:45 +02:00
Bram Moolenaar 7c63fbc46e Updated runtime files. 2018-05-17 13:15:23 +02:00
Bram Moolenaar 0b39464f69 patch 8.0.1849: compiler warning for unused arguments, missing prototype
Problem:    compiler warning for unused arguments and missing prototype
Solution:   Add UNUSED.  Add static.
2018-05-17 13:11:46 +02:00
Kazuki Sakamoto 2f9e467124 Merge pull request #684 from ichizok/fix/termwin
Fix: terminal-window does not update immediately
2018-05-16 22:04:40 -07:00
ichizok aed702fb46 Fix a wait for channel I/O 2018-05-16 15:48:57 +09:00
ichizok 1710983eca Revert missing code 2018-05-16 15:46:52 +09:00
Kazuki Sakamoto 8c9b7210ac Merge remote-tracking branch 'vim/master' 2018-05-15 21:36:41 -07:00
Bram Moolenaar 4d6cd291ce patch 8.0.1848: 'termwinscroll' does not work properly
Problem:    'termwinscroll' does not work properly. (Dominique Pelle)
Solution:   Subtract removed scrollback from the scrollback count.  Add a test
            for 'termwinscroll'. (closes #2909)
2018-05-15 23:53:26 +02:00
Bram Moolenaar 825ccf4039 patch 8.0.1847: some build options don't have an example
Problem:    Some build options don't have an example.
Solution:   Add a couple more examples and compiler flags.
2018-05-15 22:34:58 +02:00
Bram Moolenaar d4a8c98ef6 patch 8.0.1846: Python interface is incompatible with lldb
Problem:    Python interface is incompatible with lldb.
Solution:   For OutputType set the base to be PyFile_Type. (Boxu Zhang)
            Partly disabled to avoid a crash.
2018-05-15 22:31:18 +02:00
Bram Moolenaar 259f26ac2d patch 8.0.1845: various comment updates needed, missing white space
Problem:    Various comment updates needed, missing white space.
Solution:   Update comments, add white space.
2018-05-15 22:25:40 +02:00
Bram Moolenaar 78ddc06bdd patch 8.0.1844: superfluous quickfix code, missing examples
Problem:    Superfluous quickfix code, missing examples.
Solution:   Remove unneeded code.  Add a few examples.  Add a bit more
            testing. (Yegappan Lakshmanan, closes #2916)
2018-05-15 21:56:34 +02:00
Bram Moolenaar 8776889b5b patch 8.0.1843: entry for 'wrap' in options window is wrong
Problem:    Entry for 'wrap' in options window is wrong. (John Little)
Solution:   Make the change apply locally.
2018-05-15 21:42:51 +02:00
Bram Moolenaar 0b565e5da5 patch 8.0.1842: popup menu inside terminal window isn't cleared
Problem:    Popup menu inside terminal window isn't cleared.
Solution:   Use NOT_VALID in pum_undisplay(). (suggested by Christian
            Brabandt, closes #2908)
2018-05-14 23:08:32 +02:00
Bram Moolenaar 1af6a4b891 patch 8.0.1841: HP-UX does not have setenv()
Problem:    HP-UX does not have setenv().
Solution:   Use vim_setenv(). (John Marriott)
2018-05-14 22:58:34 +02:00
Bram Moolenaar 027df2a7d9 patch 8.0.1840: getwinpos() is not tested
Problem:    getwinpos() is not tested.
Solution:   Add a test. (Dominique Pelle, closes #2911)
2018-05-14 21:31:08 +02:00
Kazuki Sakamoto 30bd0e1861 Merge remote-tracking branch 'vim/master' 2018-05-13 15:22:01 -07:00
Bram Moolenaar 9cfc7d885c patch 8.0.1839: script to check .po file doesn't check for plural header
Problem:    Script to check .po file doesn't check for plural header.
Solution:   Add a check that the plural header is present when needed.
2018-05-13 22:37:03 +02:00
Bram Moolenaar eb3dc87f01 Updated runtime files 2018-05-13 22:34:24 +02:00
Bram Moolenaar 620020eb1d patch 8.0.1838: cursor in wrong pos when switching to Terminal-Normal mode
Problem:    Cursor in wrong position when switching to Terminal-Normal mode.
            (Dominique Pelle)
Solution:   Move to the end of the line if coladvance() fails.  Do not take a
            snapshot a second time.
2018-05-13 19:06:12 +02:00
Bram Moolenaar 5e3423d192 patch 8.0.1837: one character cmdline abbreviation not triggered after '<,'>
Problem:    One character cmdline abbreviation not triggered after '<,'>.
Solution:   Skip over the special range. (Christian Brabandt, closes #2320)
2018-05-13 18:36:27 +02:00
Bram Moolenaar 25782a7ff4 patch 8.0.1836: buffer-local window options may not be recent
Problem:    Buffer-local window options may not be recent if the buffer is
            still open in another window.
Solution:   Copy the options from the window instead of the outdated window
            options. (Bjorn Linse, closes #2336)
2018-05-13 18:05:33 +02:00
Bram Moolenaar 2290b1f8aa patch 8.0.1835: print document name does not support multi-byte
Problem:    Print document name does not support multi-byte.
Solution:   Use StartDocW() if needed. (Yasuhiro Matsumoto, closes #2478)
2018-05-13 17:30:45 +02:00
Bram Moolenaar 518bc174ed patch 8.0.1834: GUI: find/replace dialog does not handle some chars
Problem:    GUI: find/replace dialog does not handle some chars properly.
Solution:   Escape '?' when needed.  Always escape backslash. (closes #2418,
            closes #2435)
2018-05-13 17:05:30 +02:00
Bram Moolenaar 889fe2c2b9 patch 8.0.1833: X11: ":echo 3.14" gives E806
Problem:    X11: ":echo 3.14" gives E806.
Solution:   set LC_NUMERIC to "C". (Dominique Pelle, closes #2368)
2018-05-13 16:23:40 +02:00
Bram Moolenaar 137374fd65 patch 8.0.1832: cannot use :unlet for an environment variable
Problem:    Cannot use :unlet for an environment variable.
Solution:   Make it work.  Use unsetenv() if available. (Ken Takata,
            closes #2855)
2018-05-13 15:59:50 +02:00
Bram Moolenaar 8b62e31003 patch 8.0.1831: sometimes the quickfix title is incorrectly prefixed with ':'
Problem:    Sometimes the quickfix title is incorrectly prefixed with ':'.
Solution:   Prepend the colon in another way. (Yegappan Lakshmanan, closes
            #2905)
2018-05-13 15:29:04 +02:00
Bram Moolenaar 05c4a471d2 patch 8.0.1830: switching to Terminal-Normal mode does not redraw
Problem:    Switching to Terminal-Normal mode does not redraw. (Dominique
            Pelle)
Solution:   Also redraw when not updating the snapshot. (closes #2904)
2018-05-13 15:15:43 +02:00
Bram Moolenaar 12365ce49f patch 8.0.1829: MS-Windows: script for vimdiff can't handle ! chars
Problem:    MS-Windows: script for vimdiff can't handle ! chars.
Solution:   Escape the ! chars. (Hans Ginzel, closes #2896)
2018-05-13 14:45:25 +02:00
Bram Moolenaar e65fffd9b4 patch 8.0.1828: get no clue why :gui does not fork
Problem:    Get no clue why :gui does not fork.
Solution:   Add a channel log message.
2018-05-13 14:40:15 +02:00
Bram Moolenaar b2ed680ba7 patch 8.0.1827: compiler warning for signed/unsigned char pointers
Problem:    Compiler warning for signed/unsigned char pointers. (Cesar Romani)
Solution:   Change the type of jv_argv.
2018-05-13 14:05:18 +02:00
Bram Moolenaar 7db25fed5d Update runtime files. 2018-05-13 00:02:36 +02:00
Bram Moolenaar 52ecaaa63d patch 8.0.1826: configure uses old compiler flag
Problem:    Configure uses old compiler flag.
Solution:   Remove _DARWIN_C_SOURCE. (Kazunobu Kuriyama)
2018-05-12 21:38:13 +02:00
Bram Moolenaar dd1d7be4e6 patch 8.0.1825: might use NULL pointer when out of memory
Problem:    Might use NULL pointer when out of memory. (Coverity)
Solution:   Handle NULL pointer better.
2018-05-12 21:34:58 +02:00
Bram Moolenaar 73dd1bd54e patch 8.0.1824: Coverity warns for variable that may be uninitialized
Problem:    Coverity warns for variable that may be uninitialized.
Solution:   Initialize the variable.
2018-05-12 21:16:25 +02:00
Bram Moolenaar 54c6bafa16 patch 8.0.1823: test for terminal stdout redirection is flaky
Problem:    Test for terminal stdout redirection is flaky.
Solution:   Wait for the job to finish.
2018-05-12 21:12:12 +02:00
Bram Moolenaar ee62f9fa74 patch 8.0.1822: make uninstall does not remove colors/tools
Problem:    Make uninstall does not remove colors/tools.
Solution:   Add a line to delete the tools directory. (Kazunobu Kuriyama)
2018-05-12 21:05:45 +02:00
Bram Moolenaar 2bc799579d patch 8.0.1821: cursor in terminal window moves when pressing CTRL-W
Problem:    Cursor in terminal window moves when pressing CTRL-W. (Dominique
            Pelle)
Solution:   Do not more the cursor or redraw when not in Terminal-Normal mode.
            (closes #2904)
2018-05-12 20:36:24 +02:00
Bram Moolenaar cd8fb449d6 patch 8.0.1820: terminal window redirecting stdout does not show stderr
Problem:    Terminal window redirecting stdout does not show stderr. (Matéo
            Zanibelli)
Solution:   When stdout is not connected to pty_master_fd then use it for
            stderr. (closes #2903)
2018-05-12 17:42:42 +02:00
Bram Moolenaar 8c3169c58e patch 8.0.1819: swap file warning for file with non-existing directory
Problem:    Swap file warning for a file in a non-existing directory, if there
            is another with the same file name. (Juergen Weigert)
Solution:   When expanding the file name fails compare the file names.
2018-05-12 17:04:12 +02:00
Bram Moolenaar 3f1a53c434 patch 8.0.1818: lines remove from wrong buffer when using terminal window
Problem:    Lines remove from wrong buffer when using terminal window.
Solution:   Make sure to use tl_buffer.
2018-05-12 16:55:14 +02:00
Bram Moolenaar b0f42ba60d patch 8.0.1817: a timer may change v:count unexpectedly
Problem:    A timer may change v:count unexpectedly.
Solution:   Save and restore v:count and similar variables when a timer
            callback is invoked. (closes #2897)
2018-05-12 15:38:26 +02:00
Bram Moolenaar ff3be4fe1e patch 8.0.1816: no test for setcmdpos()
Problem:    No test for setcmdpos().
Solution:   Add a test. (Dominique Pelle, closes #2901)
2018-05-12 13:18:46 +02:00
Kazuki Sakamoto 3214b9ea71 Merge pull request #681 from ichizok/fix/coretext-renderer
Fix Core Text renderer
2018-05-11 20:49:33 -07:00
Kazuki Sakamoto 7569a35f18 Merge remote-tracking branch 'vim/master' 2018-05-11 20:48:49 -07:00
Bram Moolenaar 0cb8ac71ae patch 8.0.1815: crash with terminal window and with 'lazyredraw' set
Problem:    Still a crash with terminal window and with 'lazyredraw' set.
            (Antoine)
Solution:   Do not wipe out the buffer when updating the screen.
2018-05-11 22:01:51 +02:00
Bram Moolenaar a10ae5e323 patch 8.0.1814: crash with terminal window and with 'lazyredraw' set
Problem:    Crash with terminal window and with 'lazyredraw' set. (Antoine)
Solution:   Check the terminal still exists after update_screen().
2018-05-11 20:48:29 +02:00
ichizok d06867040b Fix display of 2-cells emoji 2018-05-11 13:32:50 +09:00
ichizok 7dcdb0e458 Fix Core Text rendering 2018-05-11 13:32:50 +09:00
Kazuki Sakamoto 292d598603 Merge remote-tracking branch 'vim/master' 2018-05-10 20:51:07 -07:00
Bram Moolenaar 38623c8512 patch 8.0.1813: Windows installer doesn't install terminal debugger
Problem:    Windows installer doesn't install terminal debugger.
Solution:   Add the package to the list of files to install.
2018-05-10 21:24:35 +02:00
Bram Moolenaar 7a2b0e55e9 patch 8.0.1812: the qf_jump_to_usable_window() function is too long
Problem:    The qf_jump_to_usable_window() function is too long.
Solution:   Split it in parts. (Yegappan Lakshmanan, closes #2891)
2018-05-10 18:55:28 +02:00
Bram Moolenaar 72cf47a279 patch 8.0.1811: no test for winrestcmd()
Problem:    No test for winrestcmd().
Solution:   Add a test. (Dominique Pelle, closes #2894)
2018-05-10 18:23:29 +02:00
Bram Moolenaar 56bc8e299c patch 8.0.1810: buffer of a terminal only updated in Terminal-Normal mode
Problem:    Buffer of a terminal only updated in Terminal-Normal mode.
Solution:   Copy the terminal window content to the buffer when in
            Terminal-Job mode.
2018-05-10 18:05:56 +02:00
Bram Moolenaar b946482190 patch 8.0.1809: various typos
Problem:    Various typos.
Solution:   Correct the mistakes, change "cursur" to "cursor". (closes #2887)
2018-05-10 15:09:49 +02:00
Bram Moolenaar 9289df5ca9 patch 8.0.1808: can't build without TGETENT
Problem:    Can't build without TGETENT.
Solution:   Add #ifdef
2018-05-10 14:40:57 +02:00
Bram Moolenaar 69e056915c patch 8.0.1807: function to set terminal name is too long
Problem:    Function to set terminal name is too long.
Solution:   Refactor the function.  Fix typo in test.
2018-05-10 14:11:52 +02:00
Kazuki Sakamoto e3bfd2ba47 Merge remote-tracking branch 'vim/master' 2018-05-09 21:42:32 -07:00
Bram Moolenaar 39de952577 patch 8.0.1806: InsertCharPre causes problems for autocomplete
Problem:    InsertCharPre causes problems for autocomplete. (Lifepillar)
Solution:   Check for InsertCharPre before calling vpeekc(). (Christian
            Brabandt, closes #2876)
2018-05-08 22:48:00 +02:00
Bram Moolenaar 18cebf4417 patch 8.0.1805: qf_parse_line() is too long
Problem:    qf_parse_line() is too long.
Solution:   Split it in parts.  Properly handle vim_realloc() failing.
            (Yegappan Lakshmanan, closes #2881)
2018-05-08 22:31:37 +02:00
Bram Moolenaar 655a82a8d3 patch 8.0.1804: using :normal in terminal window causes problems
Problem:    Using :normal in terminal window causes problems. (Dominique
            Pelle)
Solution:   Don't call terminal_loop() for :normal. (closes #2886)
2018-05-08 22:01:07 +02:00
Kazuki Sakamoto 25d758af52 Merge remote-tracking branch 'vim/master' 2018-05-07 21:36:04 -07:00
Bram Moolenaar 9b50f36e40 patch 8.0.1803: warning for uninitialized variable
Problem:    Warning for uninitialized variable. (Tony Mechelynck)
Solution:   Initialize it.
2018-05-07 20:10:17 +02:00
Bram Moolenaar 402c83921e patch 8.0.1802: MS-Windows: terminal test fails
Problem:    MS-Windows: terminal test fails.
Solution:   Close redirected output file earlier.
2018-05-06 22:01:42 +02:00
Bram Moolenaar f25329cb94 patch 8.0.1801: MS-Windows: redirecting terminal output does not work
Problem:    MS-Windows: redirecting terminal output does not work.
Solution:   Intercept the text written to the terminal and write it to the
            file.
2018-05-06 21:49:32 +02:00
Bram Moolenaar 778df2a3cb patch 8.0.1800: X11: getting color is slow
Problem:    X11: getting color is slow.
Solution:   Avoid using sprintf() and XParseColor(), put the RGB values in
            XColor directly.
2018-05-06 19:19:36 +02:00
Bram Moolenaar 85eee130f4 Update runtime files. 2018-05-06 17:57:30 +02:00
Bram Moolenaar 7ce551f317 patch 8.0.1799: no test for :registers command
Problem:    No test for :registers command.
Solution:   Add a test. (Dominique Pelle, closes #2880)
2018-05-06 17:32:19 +02:00
Bram Moolenaar 5aa9896b2e patch 8.0.1798: MS-Windows: file considered read-only too often
Problem:    MS-Windows: file considered read-only when another program has
            opened it.
Solution:   Pass file sharing flag to CreateFile(). (Linwei, closes #2860)
2018-05-06 17:09:38 +02:00
Bram Moolenaar 6eddadff13 patch 8.0.1797: terminal window is redrawn too often
Problem:    Terminal window is redrawn too often and scrolling is repeated.
Solution:   Don't scroll immediately but only when redrawing.  Avoid redrawing
            the whole terminal window on every change.
2018-05-06 16:40:16 +02:00
Bram Moolenaar 231a2db1b3 patch 8.0.1796: GUI: click on tab fails when the focus is in a terminal
Problem:    GUI: click on tab fails when the focus is in a terminal window.
Solution:   Handle K_TABLINE.
2018-05-06 13:53:50 +02:00
Bram Moolenaar b0b98d5230 patch 8.0.1795: lose contact with jobs when :gui forks
Problem:    Lose contact with jobs when :gui forks.
Solution:   Don't fork when there is a running job. Make log message for a
            died job clearer.  Also close the terminal when stderr and stdout
            are the same FD.
2018-05-05 21:01:00 +02:00
Bram Moolenaar b833c1ef7b patch 8.0.1794: duplicate term options after renaming
Problem:    Duplicate term options after renaming.
Solution:   Remove the old names 'termkey', 'termsize' and 'terminalscroll'.
2018-05-05 16:36:06 +02:00
Bram Moolenaar 248be5c5de patch 8.0.1793: no test for "vim -g"
Problem:    No test for "vim -g".
Solution:   Add a test for "-g" and "-y".
2018-05-05 15:47:19 +02:00
Bram Moolenaar c3e81694fc patch 8.0.1792: MS-Windows users expect -? to work like --help
Problem:    MS-Windows users expect -? to work like --help.
Solution:   Add -?. (Christian Brabandt, closes #2867)
2018-05-05 15:09:51 +02:00
Bram Moolenaar 9894e394b2 patch 8.0.1791: using uint8_t does not work everywhere
Problem:    Using uint8_t does not work everywhere.
Solution:   Use char_u instead.
2018-05-05 14:29:06 +02:00
Bram Moolenaar c136af29c0 patch 8.0.1790: 'winfixwidth' is not always respected by :close
Problem:    'winfixwidth' is not always respected by :close.
Solution:   Prefer a frame without 'winfixwidth' or 'winfixheight'. (Jason
            Franklin)
2018-05-04 20:15:38 +02:00
Bram Moolenaar 606cb8b08e patch 8.0.1789: BufWinEnter does not work well for a terminal window
Problem:    BufWinEnter does not work well for a terminal window.
Solution:   Do not trigger BufWinEnter when opening a terminal window.
2018-05-03 20:40:20 +02:00
Kazuki Sakamoto 1496167590 Merge pull request #680 from ichizok/fix/unicode-composing
Fix: A display of unicode composing characters by CoreText renderer
2018-05-02 21:28:03 -07:00
Kazuki Sakamoto 3af91bd927 Merge remote-tracking branch 'vim/master' 2018-05-02 21:26:34 -07:00
Bram Moolenaar dddab90d22 patch 8.0.1788: tool to check a color scheme is not installed
Problem:    Tool to check a color scheme is not installed.
Solution:   Update the install rule. (Christian Brabandt)
2018-05-02 22:00:17 +02:00
Kazuki Sakamoto b111b79dd5 Merge remote-tracking branch 'vim/master' 2018-05-01 22:09:01 -07:00
Bram Moolenaar e2c8d83926 patch 8.0.1787: cannot insert the whole cursor line
Problem:    Cannot insert the whole cursor line.
Solution:   Make CTRL-R CTRL-L work. (Andy Massimino, closes #2857)
2018-05-01 19:24:03 +02:00
Bram Moolenaar b2ac14c0b5 patch 8.0.1786: no test for 'termwinkey'
Problem:    No test for 'termwinkey'.
Solution:   Add a test.  Make feedkeys() handle terminal_loop() returning
            before characters are consumed.
2018-05-01 18:47:59 +02:00
Bram Moolenaar 8a938af6dd patch 8.0.1785: missing symbol in Win32 small build
Problem:    Missing symbol in Win32 small build.
Solution:   Define VTERM_ANSI_INDEX_NONE without the terminal feature. Also
            fix unused function with #ifdef.
2018-05-01 17:30:41 +02:00
Bram Moolenaar bc7845da93 patch 8.0.1784: gvim test gets stuck in dialog
Problem:    Gvim test gets stuck in dialog.
Solution:   Rename the file used.
2018-05-01 16:26:48 +02:00
Bram Moolenaar c5cd88554f patch 8.0.1783: cannot use 256 colors in a MS-Windows console
Problem:    Cannot use 256 colors in a MS-Windows console.
Solution:   Add 256 color support. (Nobuhiro Takasaki, closes #2821)
2018-05-01 15:47:38 +02:00
Bram Moolenaar d76ce85266 patch 8.0.1782: no simple way to label quickfix entries
Problem:    No simple way to label quickfix entries.
Solution:   Add the "module" item, to be used instead of the file name for
            display purposes. (Martin Szamotulski, closes #1757)
2018-05-01 15:02:04 +02:00
Bram Moolenaar a796d46f29 patch 8.0.1781: file names in quickfix window are not shortened
Problem:    File names in quickfix window are not always shortened.
Solution:   Shorten the file name when opening the quickfix window. (Yegappan
            Lakshmanan, closes #2851, closes #2846)
2018-05-01 14:30:36 +02:00
Bram Moolenaar 15142e27aa Update runtime files and translations 2018-04-30 22:19:58 +02:00
Bram Moolenaar 77bfd756a0 patch 8.0.1780: test fails because Vim in a terminal uses wrong 'encoding'
Problem:    Test fails because Vim in a terminal uses wrong 'encoding'.
Solution:   Set encoding in the test where it matters. (James McCoy,
            closes #2847)
2018-04-30 18:03:10 +02:00
Bram Moolenaar 35e802e713 patch 8.0.1779: deleting in a block selection causes problems
Problem:    Deleting in a block selection causes problems.
Solution:   Check the length of the line before adding bd.textcol and
            bd.textlen. (Christian Brabandt, closes #2825)
2018-04-30 17:21:03 +02:00
Bram Moolenaar b07bbb0d29 patch 8.0.1778: script to check translations does not always work
Problem:    Script to check translations does not always work.
Solution:   Go to first line before searching for MIME.
2018-04-30 15:45:17 +02:00
Bram Moolenaar 60a68362aa patch 8.0.1777: cannot cleanup before loading another colorscheme
Problem:    Cannot cleanup before loading another colorscheme.
Solution:   Add the ColorSchemePre autocommand event.
2018-04-30 15:40:48 +02:00
Bram Moolenaar 0e9d1ae321 patch 8.0.1776: in tests, when WaitFor() fails it doesn't say why
Problem:    In tests, when WaitFor() fails it doesn't say why.
Solution:   Turn a few more WaitFor() into WaitForAssert().
2018-04-30 14:28:24 +02:00
Bram Moolenaar 850d427f07 patch 8.0.1775: MS-Windows: warning for unused variable
Problem:    MS-Windows: warning for unused variable.
Solution:   Move declaration inside #ifdef. (Mike Williams)
2018-04-30 10:38:40 +02:00
Bram Moolenaar 13d3b05ed2 patch 8.0.1774: reading very long lines can be slow
Problem:    Reading very long lines can be slow.
Solution:   Read up to 1 Mbyte at a time to avoid a lot of copying.  Add a
            check for going over the column limit.
2018-04-29 13:34:47 +02:00
Bram Moolenaar c36651b4b9 patch 8.0.1773: dialog messages are not translated
Problem:    Dialog messages are not translated.
Solution:   Add N_() and _() where needed. (Sergey Alyoshin)
2018-04-29 12:22:56 +02:00
Bram Moolenaar 29ce409bfc patch 8.0.1772: quickfix: mixup of FALSE and FAIL, returning -1
Problem:    Quickfix: mixup of FALSE and FAIL, returning -1.
Solution:   Use FAIL and INVALID_QFIDX. (Yegappan Lakshmanan)
2018-04-28 21:56:44 +02:00
Bram Moolenaar 50182fa84e patch 8.0.1771: in tests, when WaitFor() fails it doesn't say why
Problem:    In tests, when WaitFor() fails it doesn't say why. (James McCoy)
Solution:   Add WaitForAssert(), which produces an assert error when it fails.
2018-04-28 21:34:40 +02:00
Bram Moolenaar 65a5464985 patch 8.0.1770: assert functions don't return anything
Problem:    Assert functions don't return anything.
Solution:   Return non-zero when the assertion fails.
2018-04-28 16:56:53 +02:00
Bram Moolenaar 9b25af3620 patch 8.0.1769: repeated saving and restoring viewstate for 'incsearch'
Problem:    Repeated saving and restoring viewstate for 'incsearch'.
Solution:   Use a structure.
2018-04-28 13:56:09 +02:00
Kazuki Sakamoto 27bdb64a26 Merge remote-tracking branch 'vim/master' 2018-04-28 00:24:21 -07:00
ichizok ee668a459a Fix a display of unicode composing characters
Reconstruct and use 'gui_macvim_draw_string' for CoreText renderer
2018-04-28 12:27:51 +09:00
Bram Moolenaar 451fc7b954 patch 8.0.1768: SET_NO_HLSEARCH() used in a wrong way
Problem:    SET_NO_HLSEARCH() used in a wrong way.
Solution:   Make it a function. (suggested by Dominique Pelle,
            closes #2850)
2018-04-27 22:53:07 +02:00
Bram Moolenaar 9d34d90210 patch 8.0.1767: with 'incsearch' text may jump up and down
Problem:    With 'incsearch' text may jump up and down. ()
Solution:   Besides w_botline also save and restore w_empty_rows.
            (closes # 2530)
2018-04-27 22:18:12 +02:00
Kazuki Sakamoto 763f5e3806 Merge pull request #679 from ichizok/fix/got_int
Fix: Ctrl-C doesn't work during a wait for input
2018-04-27 08:55:59 -07:00
ichizok 9993bfdbaf Fix: Ctrl-C doesn't work during a wait for input
[MMBackend waitForInput:] must be interrupted also by 'got_int'
2018-04-27 17:35:33 +09:00
Kazuki Sakamoto de97ff8ac8 Merge remote-tracking branch 'vim/master' 2018-04-26 21:27:12 -07:00
Bram Moolenaar c3c3e69896 patch 8.0.1766: expanding abbreviation doesn't work
Problem:    Expanding abbreviation doesn't work. (Tooth Pik)
Solution:   Return OK instead of FALSE and FAIL instead of TRUE. (Christian
            Brabandt)
2018-04-26 22:30:33 +02:00
Kazuki Sakamoto 5af41c75be Merge remote-tracking branch 'vim/master' 2018-04-25 21:28:37 -07:00
Bram Moolenaar db0eedec16 patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Problem:    CTRL-G j in Insert mode is incorrect when 'virtualedit' is set.
Solution:   Take coladd into account. (Christian Brabandt, closes #2743)
2018-04-25 22:38:17 +02:00
Bram Moolenaar 856905bd83 patch 8.0.1764: lgtm considers tutor.es to be EcmaScript
Problem:    Lgtm considers tutor.es to be EcmaScript.
Solution:   Add a config file for lgtm. (Bas van Schaik, closes #2844)
2018-04-25 21:36:47 +02:00
Jordan W f53f99012c Fix Double Wide Glyph Rendering (#664)
* Fix Double Wide Glyph Rendering

Applying the suggestions mentioned in this diff and tested locally.

https://github.com/macvim-dev/macvim/pull/648

* Fix style suggestion

* fixup another suggestion
2018-04-25 09:53:09 -07:00
Kazuki Sakamoto 1b4f57d1dd Merge pull request #678 from ichizok/fix/wait-for-input
Fix a wait for input-event
2018-04-25 09:49:58 -07:00
ichizok ad397d2dfc Fix a wait for input-event
Should not return from waitForInput by channel-I/O event since it
interrupts a wait for mapped-key sequence.
2018-04-25 13:36:17 +09:00
Bram Moolenaar 46a53dfc29 patch 8.0.1763: :argedit does not reuse an empty unnamed buffer
Problem:    :argedit does not reuse an empty unnamed buffer.
Solution:   Add the BLN_CURBUF flag and fix all the side effects. (Christian
            Brabandt, closes #2713)
2018-04-24 21:58:51 +02:00
Bram Moolenaar b255b90503 patch 8.0.1762: terminal debug logging is a bit complicated
Problem:    Terminal debug logging is a bit complicated.
Solution:   Make log_tr() use variable arguments (Ozaki Kiichi, closes #2730)
2018-04-24 21:40:10 +02:00
Bram Moolenaar 4e9d443a25 patch 8.0.1761: job in terminal window with no output channel is killed
Problem:    Job in terminal window with no output channel is killed.
Solution:   Keep the job running when the input is a tty. (Ozaki Kiichi,
            closes #2734)
2018-04-24 20:54:07 +02:00
Bram Moolenaar 4994373c5d patch 8.0.1760: wrong number of arguments to vms_read()
Problem:    Wrong number of arguments to vms_read().
Solution:   Drop the first argument. (Ozaki Kiichi)
2018-04-24 20:27:26 +02:00
Bram Moolenaar 09d1d51df5 patch 8.0.1759: memory leak from duplicate options
Problem:    Memory leak from duplicate options. (Yegappan Lakshmanan)
Solution:   Don't set the default value twice.
2018-04-24 20:23:56 +02:00
Bram Moolenaar 24a2d7264f patch 8.0.1758: open_line() returns TRUE/FALSE for success/failure
Problem:    open_line() returns TRUE/FALSE for success/failure.
Solution:   Return OK or FAIL.
2018-04-24 19:36:43 +02:00
Bram Moolenaar b691de05f6 patch 8.0.1757: unnecessary changes in libvterm
Problem:    Unnecessary changes in libvterm.
Solution:   Bring back // comments and trailing comma in enums.
2018-04-24 18:39:14 +02:00
Bram Moolenaar 73658317ba patch 8.0.1756: GUI: after prompting for a number the mouse shape is wrong
Problem:    GUI: after prompting for a number the mouse shape is sometimes
            wrong.
Solution:   Call setmouse() after setting "State". (Hirohito Higashi,
            closes #2709)
2018-04-24 17:41:57 +02:00
Bram Moolenaar f1f2f837bc patch 8.0.1755: MS-Windows: high unicode char received as two utf-16 words
Problem:    MS-Windows GUI: high unicode char received as two utf-16 words.
Solution:   Keep the first word until the second word is received. (Chris
            Morgan, closes #2800)
2018-04-24 16:04:57 +02:00
Bram Moolenaar 2225ebb486 patch 8.0.1754: ex_helpgrep() is too long
Problem:    ex_helpgrep() is too long.
Solution:   Refactor the function. (Yegappan Lakshmanan, closes #2766)
2018-04-24 15:48:11 +02:00
Bram Moolenaar 1c17ffa461 patch 8.0.1753: various warnings from a static analyser
Problem:    Various warnings from a static analyser
Solution:   Add type casts, remove unneeded conditions. (Christian Brabandt,
            closes #2770)
2018-04-24 15:19:04 +02:00
Bram Moolenaar a2aa8a2b22 patch 8.0.1752: qf_set_properties() is to long
Problem:    qf_set_properties() is to long.
Solution:   Refactor the function.  Define INVALID_QFIDX. (Yegappan
            Lakshmanan, closes #2812)
2018-04-24 13:55:00 +02:00
Bram Moolenaar 4e601e3c82 patch 8.0.1751: #ifdef causes bad highlighting
Problem:    #ifdef causes bad highlighting.
Solution:   Move code around. (Ozaki Kiichi, closes #2731)
2018-04-24 13:29:51 +02:00
Kazuki Sakamoto ac9e1d71bc Merge remote-tracking branch 'vim/master' 2018-04-23 21:26:00 -07:00
Bram Moolenaar 3b9474b4ad patch 8.0.1750: crash when clearing loccation list in autocommand
Problem:    Crash when clearing loccation list in autocommand.
Solution:   Check if "qi" equals "ql_info". (Yegappan Lakshmanan)
2018-04-23 21:29:48 +02:00
Bram Moolenaar 6537c421bb patch 8.0.1749: VMS: 100% CPU use, redefining mch_open() fails
Problem:    VMS: 100% CPU use, redefining mch_open() and mch_fopen() fails.
Solution:   Do not wait indefinitely in RealWaitForChar(). (Neil Rieck)
            Do not redefine mch_open() and mch_fopen() on VMS. (Zoltan
            Arpadffy)
2018-04-23 20:46:16 +02:00
Kazuki Sakamoto d51edc691c Merge remote-tracking branch 'vim/master' 2018-04-22 10:20:01 -07:00
Bram Moolenaar a4baf5b325 patch 8.0.1748: CmdlineEnter command uses backslash instead of slash
Problem:    CmdlineEnter command uses backslash instead of slash.
Solution:   Don't treat the character as a file name. (closes #2837)
2018-04-22 13:27:44 +02:00
Bram Moolenaar ebe74b7367 patch 8.0.1747: MS-Windows: term_start() does not set job_info() cmd
Problem:    MS-Windows: term_start() does not set job_info() cmd.
Solution:   Share the code from job_start() to set jv_argv.
2018-04-21 23:34:43 +02:00
Bram Moolenaar a69b39511d patch 8.0.1746: MS-Windows: channel tests fail
Problem:    MS-Windows: channel tests fail.
Solution:   Make a copy of the command before splitting it.
2018-04-21 23:00:27 +02:00
Bram Moolenaar 2060892028 patch 8.0.1745: build failure on MS-Windows
Problem:    Build failure on MS-Windows.
Solution:   Build job arguments for MS-Windows. Fix allocating job twice.
2018-04-21 22:30:08 +02:00
Bram Moolenaar 9980b37a80 patch 8.0.1744: on some systems /dev/stdout isn't writable
Problem:    On some systems /dev/stdout isn't writable.
Solution:   Skip test if writing is not possible. (James McCoy, closes #2830)
2018-04-21 20:12:35 +02:00
Bram Moolenaar 6d150f783d patch 8.0.1743: terminal window options are named inconsistently
Problem:    Terminal window options are named inconsistently.
Solution:   prefix terminal window options with "termwin".  Keep the old names
            for now as an alias.
2018-04-21 20:03:20 +02:00
Bram Moolenaar e1fc51558d patch 8.0.1742: cannot get a list of all the jobs
Problem:    Cannot get a list of all the jobs.  Cannot get the command of
            the job.
Solution:   When job_info() is called without an argument return a list of
            jobs.  Otherwise, include the command that the job is running.
            (Yegappan Lakshmanan)
2018-04-21 19:49:08 +02:00
Bram Moolenaar 259a90f7ce patch 8.0.1741: MS-Windows with msys2 cannot build Ruby statically
Problem:    MS-Windows with msys2 cannot build Ruby statically.
Solution:   Add RUBY_VERSION to CFLAGS later. (Gray Wolf, closes #2833)
2018-04-21 19:08:55 +02:00
Bram Moolenaar 405dadb63e patch 8.0.1740: warning for signed-unsigned incompatibility
Problem:    Warning for signed-unsigned incompatibility.
Solution:   Change type from "char *" to "char_u *". (John Marriott)
2018-04-20 22:48:58 +02:00
Bram Moolenaar 7dda86f2ff Update runtime files. 2018-04-20 22:36:41 +02:00
Bram Moolenaar 6176697203 patch 8.0.1739: MS-Windows with msys2 cannot build Ruby statically
Problem:    MS-Windows with msys2 cannot build Ruby statically.
Solution:   Define RUBY_VERSION. (Gray Wolf, closes #2826)
2018-04-20 22:31:41 +02:00
Bram Moolenaar 5d69da462f patch 8.0.1738: ":args" output is hard to read
Problem:    ":args" output is hard to read.
Solution:   Make columns with the names if the output is more than one line.
2018-04-20 22:01:41 +02:00
Kazuki Sakamoto 5d0bb55e5d Use Xcode 9.3 and OS X 10.13 image on Travis-CI 2018-04-20 00:14:38 -07:00
Kazuki Sakamoto ea3c7a97e2 Merge remote-tracking branch 'vim/master' 2018-04-19 20:43:42 -07:00
Bram Moolenaar 02e802b2da patch 8.0.1737: fchown() used when it is not supported
Problem:    fchown() used when it is not supported.
Solution:   Add #ifdef.
2018-04-19 21:15:27 +02:00
Bram Moolenaar 226400830b patch 8.0.1736: check for C99 features is incomplete
Problem:    Check for C99 features is incomplete.
Solution:   Use AC_PROG_CC_C99 and when C99 isn't fully supported check the
            features we need. (James McCoy, closes #2820)
2018-04-19 20:39:41 +02:00
Kazuki Sakamoto 696a33e1e2 Merge pull request #662 from ichizok/fix/version-check
Fix the way to check OS version
2018-04-18 23:53:40 -07:00
ichizok dd4c394b89 Fix code formatting 2018-04-19 15:37:43 +09:00
ichizok fd96fb4c06 Fix the way to check OS version 2018-04-19 15:37:43 +09:00
Kazuki Sakamoto 0db1190fb7 Merge remote-tracking branch 'vim/master' 2018-04-18 20:58:21 -07:00
Bram Moolenaar 285e335869 patch 8.0.1735: flexible array member feature not supported by HP-UX
Problem:    Flexible array member feature not supported by HP-UX. (John
            Marriott)
Solution:   Do not use the flexible array member feature of C99.
2018-04-18 23:01:13 +02:00
Bram Moolenaar f98a39ca57 patch 8.0.1734: package directory not added to 'rtp' if prefix matches
Problem:    Package directory not added to 'rtp' if prefix matches.
Solution:   Check the match is a full match. (Ozaki Kiichi, closes #2817)
            Also handle different ways of spelling a path.
2018-04-18 22:18:23 +02:00
Bram Moolenaar bad0ce7b26 patch 8.0.1733: incomplete testing for completion fix
Problem:    Incomplete testing for completion fix. (Lifepillar)
Solution:   Add a test with CTRL-P.
2018-04-17 23:31:05 +02:00
Bram Moolenaar a997b45c7e patch 8.0.1732: crash when terminal API call deletes the buffer
Problem:    Crash when terminal API call deletes the buffer.
Solution:   Lock the buffer while calling a function. (closes #2813)
2018-04-17 23:24:06 +02:00
Bram Moolenaar e87edf3b85 patch 8.0.1731: characters deleted on completion
Problem:    Characters deleted on completion. (Adrià Farrés)
Solution:   Also check the last item for the ORIGINAL_TEXT flag. (Christian
            Brabandt, closes #1645)
2018-04-17 22:14:32 +02:00
Bram Moolenaar 561f8a5a46 patch 8.0.1730: no configure check for the used C99 features
Problem:    No configure check for the used C99 features.
Solution:   Add a compilation check.  Tentatively document C99 features.
2018-04-17 22:02:45 +02:00
Bram Moolenaar ea3ece405a patch 8.0.1729: no comma after last enum item
Problem:    No comma after last enum item.
Solution:   Add a few commas to check if this works for all compilers.  Also
            add a few // comments.
2018-04-17 20:14:39 +02:00
Bram Moolenaar 1feab2b9cc patch 8.0.1728: condition always false, useless code
Problem:    Condition always false, useless code.
Solution:   Remove the code. (Nikolai Pavlov, closes #2808)
2018-04-17 20:12:08 +02:00
Bram Moolenaar 353eeeaca2 patch 8.0.1727: qf_get_properties() function is too long
Problem:    qf_get_properties() function is too long.
Solution:   Refactor the code. (Yegappan Lakshmanan, closes #2807)
2018-04-16 18:04:57 +02:00
Bram Moolenaar df2c774ded patch 8.0.1726: older MSVC doesn't support declarations halfway a block
Problem:    Older MSVC doesn't support declarations halfway a block.
Solution:   Move the declaration back to the start of the block.
2018-04-16 17:06:09 +02:00
Bram Moolenaar 32c67ba733 patch 8.0.1725: terminal debugger doesn't handle command arguments
Problem:    Terminal debugger doesn't handle command arguments.
Solution:   Add the :TermdebugCommand command.  Use a ! to execute right away.
            (Christian Brabandt)
2018-04-16 16:21:49 +02:00
Bram Moolenaar 06965b838f patch 8.0.1724: declarations cannot be halfway a block
Problem:    Declarations cannot be halfway a block.
Solution:   Move one declaration to check if this works for all compilers.
2018-04-16 15:40:50 +02:00
Bram Moolenaar f3a411783c patch 8.0.1723: using one item array size declaration is misleading
Problem:    Using one item array size declaration is misleading.
Solution:   Instead of using "[1]" and actually using a larger array, use
            "[]".  This is to verify that this C99 feature works for all
            compilers.
2018-04-16 14:45:45 +02:00
Bram Moolenaar 498c2562e1 patch 8.0.1722: cannot specify a minimal size for a terminal window
Problem:    Cannot specify a minimal size for a terminal window.
Solution:   Support the "rows*cols" format for 'winsize'.
2018-04-15 23:45:15 +02:00
Bram Moolenaar a7eef3d87f patch 8.0.1721: no test for using the 'termsize' option
Problem:    No test for using the 'termsize' option.
Solution:   Add a test.
2018-04-15 22:25:54 +02:00
Kazuki Sakamoto e1a615da90 Merge remote-tracking branch 'vim/master' 2018-04-15 09:37:51 -07:00
Bram Moolenaar 802bfb1463 patch 8.0.1720: when a timer is running a terminal window may not close
Problem:    When a timer is running a terminal window may not close after a
            shell has exited.
Solution:   Call job_status() more often.
2018-04-15 17:28:13 +02:00
Bram Moolenaar e1a32310d5 patch 8.0.1719: cannot specify which Python executable configure should use
Problem:    Cannot specify which Python executable configure should use.
Solution:   Add --with-python-command and --with-python3-command.
2018-04-15 16:03:25 +02:00
Bram Moolenaar 6c672194cd patch 8.0.1718: terminal scrollback test fails on MS-Windows
Problem:    Terminal scrollback test fails on MS-Windows.
Solution:   Check for the last line of output anticipating there might be an
            empty line below it.
2018-04-15 13:28:42 +02:00
Bram Moolenaar 3cba73423e patch 8.0.1717: C89 check causes too much trouble
Problem:    C89 check causes too much trouble.
Solution:   Remove enforcing C89 for now.
2018-04-15 13:12:46 +02:00
Bram Moolenaar ac3e830065 patch 8.0.1716: test for term_setsize() does not give a good error message
Problem:    Test for term_setsize() does not give a good error message.
Solution:   use assert_inrange().
2018-04-15 13:10:44 +02:00
Bram Moolenaar 8c94a54905 patch 8.0.1715: terminal buffer can be 1 more than 'terminalscroll' lines
Problem:    Terminal buffer can be 1 more than 'terminalscroll' lines.
Solution:   Change > to >=.
2018-04-15 12:55:13 +02:00
Kazuki Sakamoto a76c9968a9 Merge remote-tracking branch 'vim/master' 2018-04-14 15:32:03 -07:00
Bram Moolenaar 6e72cd0d72 patch 8.0.1714: term_setsize() does not give an error in a normal buffer
Problem:    Term_setsize() does not give an error in a normal buffer.
Solution:   Add an error message.
2018-04-14 21:31:35 +02:00
Bram Moolenaar b3623a382a patch 8.0.1713: terminal debugger doesn't handle arguments
Problem:    Terminal debugger doesn't handle arguments.
Solution:   Use <f-args> and pass all the arguments to gdb, e.g. the core file
            or process number. (suggested by Christian Brabandt) Disallow
            starting the debugger twice.
2018-04-14 18:59:50 +02:00
Bram Moolenaar 8c041b6b95 patch 8.0.1712: terminal scrollback is not limited
Problem:    Terminal scrollback is not limited.
Solution:   Add the 'terminalscroll' option.
2018-04-14 18:14:06 +02:00
Bram Moolenaar a42d363bac patch 8.0.1711: term_setsize() is not implemented yet
Problem:    Term_setsize() is not implemented yet.
Solution:   Implement it.
2018-04-14 17:05:38 +02:00
Bram Moolenaar 2a43230ce3 patch 8.0.1710: building with Ruby fails
Problem:    Building with Ruby fails.
Solution:   Don't add -ansi when building with Ruby.
2018-04-14 16:12:30 +02:00
Bram Moolenaar 2e324950b8 patch 8.0.1709: some non-C89 code may slip through
Problem:    Some non-C89 code may slip through.
Solution:   Enforce C89 in configure. Fix detected problems. (James McCoy,
            closes #2735)
2018-04-14 14:37:07 +02:00
Bram Moolenaar 78a16b0f2a patch 8.0.1708: mkdir with 'p' flag fails on existing directory
Problem:    Mkdir with 'p' flag fails on existing directory, which is
            different from the mkdir shell command.
Solution:   Don't fail if the directory already exists. (James McCoy,
            closes #2775)
2018-04-14 13:51:55 +02:00
Bram Moolenaar 98da6ecab9 patch 8.0.1707: when 'wfh' is set ":bel 10new" scrolls window
Problem:    When 'wfh' is set ":bel 10new" scrolls window. (Andrew Pyatkov)
Solution:   Set the fraction before changing the window height. (closes #2798)
2018-04-13 22:15:46 +02:00
Bram Moolenaar b59118d501 patch 8.0.1706: cannot sent CTRL-\ to a terminal window
Problem:    Cannot sent CTRL-\ to a terminal window.
Solution:   Make CTRL-W CTRL-\ send CTRL-\ to a terminal window.
2018-04-13 22:11:56 +02:00
Bram Moolenaar 5bab555c2f patch 8.0.1705: when making a vertical split the mode message isn't updated
Problem:    When making a vertical split the mode message isn't always
            updated, "VISUAL" remains. (Alexei Averchenko)
Solution:   Only reset clear_cmdline when filling all columns of the last
            screen line. (Tom M. closes #2611)
2018-04-13 20:41:29 +02:00
Kazuki Sakamoto 0d658f8d29 Merge remote-tracking branch 'vim/master' 2018-04-12 19:34:02 -07:00
Bram Moolenaar b8e22a053b patch 8.0.1704: 'backupskip' default doesn't work for Mac
Problem:    'backupskip' default doesn't work for Mac.
Solution:   Use "/private/tmp". (Rainer Müller, closes #2793)
2018-04-12 21:37:34 +02:00
Bram Moolenaar 527dec3f94 patch 8.0.1703: in the tutor 'showcmd' is not set
Problem:    In the tutor 'showcmd' is not set.
Solution:   Set 'showcmd' in the vimtutor script. (Ken Takata, closes #2792)
2018-04-12 20:36:43 +02:00
Bram Moolenaar ee5b94a8ec patch 8.0.1702: leaking memory when autocommands make quickfix list invalid
Problem:    Leaking memory when autocommands make a quickfix list invalid.
Solution:   Call FreeWild(). (Yegappan Lakshmanan)
2018-04-12 20:35:05 +02:00
Bram Moolenaar cccd62d435 patch 8.0.1701: can disable COLOR_EMOJI with MSVC but not MinGW
Problem:    Can disable COLOR_EMOJI with MSVC but not MinGW.
Solution:   Add COLOR_EMOJI flag.  Also add some empty lines for readability.
2018-04-12 20:23:48 +02:00
Bram Moolenaar 56f9955044 patch 8.0.1700: coverage statistics still don't work on coveralls
Problem:    Coverate statistics still don't work on coveralls.
Solution:   Exclude the xxd directory again.
2018-04-12 20:06:05 +02:00
Kazuki Sakamoto e00dd0b259 Merge remote-tracking branch 'vim/master' 2018-04-11 20:33:49 -07:00
Bram Moolenaar 9ce4213b03 patch 8.0.1699: leftover stuff for Python 1.4
Problem:    Leftover stuff for Python 1.4.
Solution:   Remove outdated Python 1.4 stuff. (Naoki Inada, closes #2794)
2018-04-11 22:19:36 +02:00
Bram Moolenaar 1ed00330bc patch 8.0.1698: coverage statistics don't work on coveralls
Problem:    Coverate statistics don't work on coveralls.
Solution:   Use curly braces for $SRCDIR.
2018-04-11 21:03:08 +02:00
Bram Moolenaar 769e9d21ac patch 8.0.1697: various tests are still a bit flaky
Problem:    Various tests are still a bit flaky.
Solution:   Increase the default wait time to five seconds.
2018-04-11 20:53:49 +02:00
Bram Moolenaar d60e0a1d20 patch 8.0.1696: coverage statistics don't work
Problem:    Coverate statistics don't work.
Solution:   Include the xxd directory. (Christian Brabandt)
2018-04-11 10:06:04 +02:00
Kazuki Sakamoto 7b2d2c3cb7 Merge remote-tracking branch 'vim/master' 2018-04-10 20:51:55 -07:00
Bram Moolenaar 6995c0a7a9 patch 8.0.1695: xxd test not run on MS-Windows
Problem:    Xxd test not run on MS-Windows.
Solution:   Use xxd.exe if it exists.
2018-04-10 21:46:10 +02:00
Bram Moolenaar b377457e69 patch 8.0.1694: terminal API test is a bit flaky
Problem:    Terminal API test is a bit flaky.
Solution:   Wait longer for Vim to stop.
2018-04-10 21:43:26 +02:00
Bram Moolenaar 1acdb3f301 patch 8.0.1693: xxd is excluded from coverage statistics
Problem:    Xxd is excluded from coverage statistics.
Solution:   Don't skip the xxd directory. (Christian Brabandt)
2018-04-10 21:16:32 +02:00
Bram Moolenaar 3a21d9c7bb patch 8.0.1692: Python may not work when using statically linked library
Problem:    Python may not work when using statically linked library .
Solution:   Do not define PYTHON_HOME and PYTHON3_HOME in configure if the
            Python library is linked statically.
2018-04-10 20:26:20 +02:00
Bram Moolenaar 164268d4cf patch 8.0.1691: xxd test sometimes fails
Problem:    Xxd test sometimes fails.
Solution:   Wipe out the XXDfile buffer.
2018-04-10 20:06:17 +02:00
Bram Moolenaar 8dd1761e69 patch 8.0.1690: not easy to run one test with gvim instead of vim
Problem:    Not easy to run one test with gvim instead of vim.
Solution:   Add VIMTESTTARGET in Makefile.
2018-04-10 19:24:04 +02:00
Bram Moolenaar 29f9ed20b4 patch 8.0.1689: no tests for xxd
Problem:    No tests for xxd.
Solution:   Add a test. (Christian Brabandt)
2018-04-10 19:20:31 +02:00
Bram Moolenaar 6f4700233f patch 8.0.1688: some macros are used without a semicolon
Problem:    Some macros are used without a semicolon, causing auto-indent to be
            wrong.
Solution:   Use the do-while(0) trick. (Ozaki Kiichi, closes #2729)
2018-04-10 18:47:20 +02:00
Bram Moolenaar d6b4f2dd76 patch 8.0.1687: 64 bit compiler warnings
Problem:    64 bit compiler warnings.
Solution:   change type, add type cast. (Mike Williams)
2018-04-10 18:26:27 +02:00
Bram Moolenaar d088240b96 patch 8.0.1686: Python does not work when configuring with specific dir
Problem:    Python does not work when configuring with specific dir. (Rajdeep)
Solution:   Do define PYTHON_HOME and PYTHON3_HOME in configure if the Python
            config dir was specified.
2018-04-10 18:13:05 +02:00
Bram Moolenaar f59c6e8cee patch 8.0.1685: can't set ANSI colors of a terminal window
Problem:    Can't set ANSI colors of a terminal window.
Solution:   Add term_setansicolors(), term_getansicolors() and
            g:term_ansi_colors. (Andy Massimino, closes #2747)
2018-04-10 15:59:11 +02:00
Bram Moolenaar 07b46af645 patch 8.0.1684: ml_get errors when using terminal window for shell command
Problem:    ml_get errors when using terminal window for shell command.
            (Blay263)
Solution:   Do not change the size of the current window.
2018-04-10 14:56:18 +02:00
Bram Moolenaar 0424958bde patch 8.0.1683: Python upgrade breaks Vim when defining PYTHON_HOME
Problem:    Python upgrade breaks Vim when defining PYTHON_HOME.
Solution:   Do not define PYTHON_HOME and PYTHON3_HOME in configure. (Naoki
            Inada, closes #2787)
2018-04-10 13:29:34 +02:00
Bram Moolenaar 8c87a2b1fe patch 8.0.1682: auto indenting breaks inserting a block
Problem:    Auto indenting breaks inserting a block.
Solution:   Do not check for cursor movement if indent was changed. (Christian
            Brabandt, closes #2778)
2018-04-10 13:15:47 +02:00
Bram Moolenaar e80757c154 patch 8.0.1681: the format attribute fails with MinGW
Problem:    The format attribute fails with MinGW. (John Marriott)
Solution:   Don't use the format attribute with MinGW.
2018-04-10 12:42:44 +02:00
Bram Moolenaar 756ef113d1 patch 8.0.1680: memory allocated by libvterm is not profiled
Problem:    Memory allocated by libvterm does not show up in profile.
Solution:   Pass allocater functions to vterm_new().
2018-04-10 12:04:27 +02:00
Kazuki Sakamoto 54928cd173 Merge remote-tracking branch 'vim/master' 2018-04-08 20:41:21 -07:00
Bram Moolenaar 672afb9f66 patch 8.0.1679: compiler warning for printf format
Problem:    Compiler warning for printf format. (Chdiza)
Solution:   Change type to "long long". (closes #2791)
2018-04-08 16:34:22 +02:00
Bram Moolenaar e333e79f9b patch 8.0.1678: errorformat "%r" implies "%>"
Problem:    Errorformat "%r" implies "%>". (Jan Gosmann)
Solution:   Jump to before setting fmt_ptr. (Yegappan Lakshmanan,
            closes #2785)
2018-04-08 13:27:39 +02:00
Bram Moolenaar ea39176baa patch 8.0.1677: no compiler warning for wrong format in vim_snprintf()
Problem:    No compiler warning for wrong format in vim_snprintf().
Solution:   Add printf attribute for gcc.  Fix reported problems.
2018-04-08 13:07:22 +02:00
Bram Moolenaar 4ac2e8d8e6 patch 8.0.1676: no compiler warning for wrong printf format
Problem:    No compiler warning for wrong printf format.
Solution:   Add a printf attribute for gcc. Fix reported problems. (Dominique
            Pelle, closes #2789)
2018-04-08 12:38:26 +02:00
Bram Moolenaar 8200829141 patch 8.0.1675: unused macro argument in libvterm
Problem:    Unused macro argument in libvterm. (Randall W. Morris)
Solution:   Remove the argument.
2018-04-08 12:17:04 +02:00
Bram Moolenaar 77557a7ae6 patch 8.0.1674: libvterm can't handle an OSC string split
Problem:    Libvterm can't handle a long OSC string that is split.
Solution:   When an incomplete OSC string is received copy it to the parser
            buffer. Increase the size of the parser buffer to be able to
            handle longer strings.
2018-04-07 21:42:56 +02:00
Bram Moolenaar 4791015e6f patch 8.0.1673: terminal window tests are still a bit flaky
Problem:    Terminal window tests are still a bit flaky.
Solution:   Increase the waiting time even more. (Elimar Riesebieter)
2018-04-07 19:27:16 +02:00
Bram Moolenaar 72532d354e patch 8.0.1672: error during completion causes command to be cancelled
Problem:    Error during completion causes command to be cancelled.
Solution:   Reset did_emsg before waiting for another character. (Tom M.)
2018-04-07 19:09:09 +02:00
Bram Moolenaar 22efba47de patch 8.0.1671: crash when passing non-dict argument as env to job_start()
Problem:    Crash when passing non-dict argument as env to job_start().
Solution:   Check for valid argument. (Ozaki Kiichi, closes #2765)
2018-04-07 13:22:21 +02:00
Bram Moolenaar b6ed74fef8 patch 8.0.1670: terminal window tests are still a bit flaky
Problem:    Terminal window tests are still a bit flaky.
Solution:   Increase the waiting time for the buffer to be created.
2018-04-07 10:42:14 +02:00
Bram Moolenaar e1bb879f49 patch 8.0.1669: :vimgrep may add entries to the wrong quickfix list
Problem:    :vimgrep may add entries to the wrong quickfix list.
Solution:   Use the list identifier. (Yegappan Lakshmanan)
2018-04-06 22:58:23 +02:00
Bram Moolenaar c4b533e1e9 patch 8.0.1668: terminal debugger: can't re-open source code window
Problem:    Terminal debugger: can't re-open source code window.
Solution:   Add the :Source command.  Also create the window if needed when
            gdb stops at a source line.
2018-04-06 22:26:25 +02:00
Bram Moolenaar 3680bab7e7 patch 8.0.1667: terminal window tests are flaky
Problem:    Terminal window tests are flaky.
Solution:   Increase the waiting time for Vim to start.
2018-04-06 20:22:06 +02:00
Bram Moolenaar 51ad4eaa22 Update runtime files 2018-04-06 11:14:11 +02:00
Bram Moolenaar d5359b24ce patch 8.0.1666: % argument in ch_log() causes trouble
Problem:    % argument in ch_log() causes trouble.
Solution:   Use string as third argument in internal ch_log(). (Dominique
            Pelle, closes #2784)
2018-04-05 22:44:39 +02:00
Bram Moolenaar 9a993e3c09 patch 8.0.1665: when running a terminal from the GUI 'term' is not useful
Problem:    When running a terminal from the GUI 'term' is not useful.
Solution:   Use $TERM in the GUI if it starts with "xterm". (closes #2776)
2018-04-05 22:15:22 +02:00
Bram Moolenaar 3aa67fb453 patch 8.0.1664: test failure because of not allocating enough space
Problem:    Test failure because of not allocating enough space.
Solution:   Allocate more bytes.
2018-04-05 21:04:15 +02:00
Bram Moolenaar 86676c949f patch 8.0.1663: cannot build without multi-byte feature
Problem:    Cannot build without multi-byte feature.
Solution:   Add #ifdef.
2018-04-05 18:56:48 +02:00
Bram Moolenaar 4a69634b1b patch 8.0.1662: showing dump diff doesn't mention both file names
Problem:    Showing dump diff doesn't mention both file names.
Solution:   Add the file name in the separator line.
2018-04-05 18:45:26 +02:00
Bram Moolenaar 878c96d5b9 patch 8.0.1661: warnings from 64 bit compiler
Problem:    Warnings from 64 bit compiler.
Solution:   Add type casts. (Mike Williams)
2018-04-04 23:00:06 +02:00
Bram Moolenaar 333b80acf3 patch 8.0.1660: the terminal API "drop" command doesn't support options
Problem:    The terminal API "drop" command doesn't support options.
Solution:   Implement the options.
2018-04-04 22:57:29 +02:00
Bram Moolenaar 1f8495cf48 patch 8.0.1659: scroll events not recognized for some xterm emulators
Problem:    Scroll events not recognized for some xterm emulators.
Solution:   Recognize mouse codes 0x40 and 0x41 as scroll events.
2018-04-04 21:53:11 +02:00
Bram Moolenaar 79cf7c0d45 patch 8.0.1658: capitalize argument not available in long form
Problem:    Capitalize argument not available in long form.
Solution:   Recognize -capitalize.  Update man page.
2018-04-03 14:21:16 +02:00
Bram Moolenaar 9af9778209 patch 8.0.1657: crash when reading a channel
Problem:    Crash when reading a channel.
Solution:   Clear the write flag before writing. (idea by Shinya Ohyanagi,
            closes #2769).
2018-04-03 12:51:01 +02:00
Bram Moolenaar 8b31a6ff7a patch 8.0.1656: no option to have xxd produce upper case variable names
Problem:    No option to have xxd produce upper case variable names.
Solution:   Add the -C argument. (Matt Panaro closes #2772)
2018-04-03 12:17:25 +02:00
Bram Moolenaar 25a6e8a769 Small runtime update 2018-03-30 12:27:32 +02:00
Kazuki Sakamoto 186e72ea10 Merge remote-tracking branch 'vim/master' 2018-03-29 20:56:48 -07:00
Bram Moolenaar f3ba14ffd3 patch 8.0.1655: outdated gdb message in terminal debugger unclear
Problem:    Outdated gdb message in terminal debugger unclear.
Solution:   Specifically mention the required gdb version.  Avoid getting
            stuck on pagination.
2018-03-29 18:29:51 +02:00
Bram Moolenaar ab943431d8 Update runtime files 2018-03-29 18:27:07 +02:00
Bram Moolenaar 7b24ce08fe patch 8.0.1654: warnings for conversion of void to function pointer
Problem:    Warnings for conversion of void to function pointer.
Solution:   Use a temp variable that is a function pointer.
2018-03-29 18:15:26 +02:00
Bram Moolenaar 1834d37396 patch 8.0.1653: screen dump is made too soon
Problem:    Screen dump is made too soon.
Solution:   Wait until the ruler is displayed. (Ozaki Kiichi, closes #2755)
2018-03-29 17:40:46 +02:00
Bram Moolenaar f06b0b6c8f patch 8.0.1652: term_dumpwrite() does not output composing characters
Problem:    term_dumpwrite() does not output composing characters.
Solution:   Use the cell index.
2018-03-29 17:22:24 +02:00
Bram Moolenaar 0751f51a5b patch 8.0.1651: cannot filter :ls output for terminal buffers
Problem:    Cannot filter :ls output for terminal buffers.
Solution:   Add flags for terminal buffers. (Marcin Szamotulski, closes #2751)
2018-03-29 16:37:16 +02:00
Bram Moolenaar 0c72fe4ed8 patch 8.0.1650: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_LISTCMDS, no reason to leave out buffer commands.
2018-03-29 16:04:08 +02:00
Bram Moolenaar cd43effeca patch 8.0.1649: no completion for argument list commands
Problem:    No completion for argument list commands.
Solution:   Add arglist completion. (Yegappan Lakshmanan, closes #2706)
2018-03-29 15:55:38 +02:00
Bram Moolenaar 1b2f61e732 patch 8.0.1648: resource fork tool doesn't work on Python 3
Problem:    Resource fork tool doesn't work on Python 3.
Solution:   Use "print()" instead of "print". (Marius Gedminas)
2018-03-27 21:12:01 +02:00
Kazuki Sakamoto b6f623fccd Merge pull request #660 from macvim-dev/revert-659-fix/version-check
Revert "Fix version-check code"
2018-03-26 20:39:12 -07:00
Kazuki Sakamoto c2e6e71a48 Revert "Fix version-check code" 2018-03-26 20:38:53 -07:00
Kazuki Sakamoto 7856986a51 Merge remote-tracking branch 'vim/master' 2018-03-26 19:04:46 -07:00
Kazuki Sakamoto 3b3b6b394c Merge pull request #659 from ichizok/fix/version-check
Fix version-check code
2018-03-26 18:48:51 -07:00
Bram Moolenaar 2a77d21f78 patch 8.0.1647: terminal API may call any user function
Problem:    Terminal API may call a function not meant to be called by this
            API.
Solution:   Require the function to start with Tapi_.
2018-03-26 21:38:52 +02:00
Bram Moolenaar 4368d5ce8a patch 8.0.1646: MS-Windows: executable contains unreferenced functions
Problem:    MS-Windows: executable contains unreferenced functions and data.
Solution:   Add /opt:ref to the compiler command. (Ken Takata)
2018-03-26 20:55:10 +02:00
ichizok d7760807dd Check if method exists, not using macro condition
macro condition depends on MACOSX_DEPLOYMENT_TARGET variable
2018-03-26 21:43:58 +09:00
Bram Moolenaar 086eb87695 patch 8.0.1645: test for terminal response to escape sequence may fail
Problem:    Test for terminal response to escape sequence fails for some
            people. (toothpik)
Solution:   Run "cat" and let it echo the characters.
2018-03-25 21:24:12 +02:00
Bram Moolenaar cf67a509e9 patch 8.0.1644: terminal API tests still fail
Problem:    Terminal API tests still fail.
Solution:   Explicitly set 'title' in the terminal job. (Ozaki Kiichi,
            closes #2750)
2018-03-25 20:31:32 +02:00
Bram Moolenaar 2de50f8762 patch 8.0.1643: terminal API tests fail
Problem:    Terminal API tests fail.
Solution:   Explicitly set 'title'.
2018-03-25 19:09:56 +02:00
Bram Moolenaar 15a1c3fdc1 patch 8.0.1642: running Vim in terminal fails with two windows
Problem:    Running Vim in terminal fails with two windows.
Solution:   Pass the number of rows to RunVimInTerminal().
2018-03-25 18:56:25 +02:00
Bram Moolenaar 8fbaeb195d patch 8.0.1641: job in terminal can't communicate with Vim
Problem:    Job in terminal can't communicate with Vim.
Solution:   Add the terminal API.
2018-03-25 18:20:17 +02:00
Bram Moolenaar 65873846e0 patch 8.0.1640: Test_cwd() is flaky
Problem:    Test_cwd() is flaky.
Solution:   Add to list of flaky tests.
2018-03-25 17:12:58 +02:00
Bram Moolenaar b5b49a3b43 patch 8.0.1639: libvterm code lags behind master
Problem:    Libvterm code lags behind master.
Solution:   Sync to head, solve merge problems.
2018-03-25 16:20:37 +02:00
Bram Moolenaar e7499ddc33 patch 8.0.1638: popup test fails depending on environment variable
Problem:    Popup test fails depending on environment variable.
Solution:   Reset $COLORFGBG when running Vim in a terminal. (closes #2693)
2018-03-24 17:56:13 +01:00
Bram Moolenaar 897e63c4c0 patch 8.0.1637: no test for term_dumpdiff() options argument
Problem:    No test for term_dumpdiff() options argument.
Solution:   Add a test.
2018-03-24 17:16:33 +01:00
Bram Moolenaar 45d2a64f96 patch 8.0.1636: no test for term_dumpload() and term_dumpdiff()
Problem:    No test for term_dumpload() and term_dumpdiff().
Solution:   Add tests.
2018-03-24 14:30:32 +01:00
Bram Moolenaar 16d7eced1a patch 8.0.1635: undefining _POSIX_THREADS causes problems with Python 3
Problem:    Undefining _POSIX_THREADS causes problems with Python 3. (Micah
            Bucy, closes #2748)
Solution:   Remove the lines.
2018-03-24 14:06:15 +01:00
Bram Moolenaar 75b0a888e4 patch 8.0.1634: the ex_vimgrep() function is too long
Problem:    The ex_vimgrep() function is too long.
Solution:   Split it in smaller functions. (Yegappan Lakshmanan)
2018-03-24 14:01:56 +01:00
1017 changed files with 111480 additions and 55422 deletions
+1
View File
@@ -80,6 +80,7 @@ src/testdir/dostmp/*
src/testdir/messages
src/testdir/viminfo
src/testdir/opt_test.vim
runtime/indent/testdir/*.out
src/memfile_test
src/json_test
src/message_test
+4
View File
@@ -0,0 +1,4 @@
# Format of this file: https://lgtm.com/help/lgtm/lgtm.yml-configuration-file
path_classifiers:
documentation:
- runtime/tutor/tutor*
+32 -11
View File
@@ -4,48 +4,68 @@ dist: trusty
os:
- osx
osx_image: xcode9.2
osx_image:
- xcode7.3
- xcode8.3
- xcode9.4
- xcode10.1
compiler:
- clang
addons:
homebrew:
packages:
- lua
- ruby
- python3
update: true
env:
- MACOSX_DEPLOYMENT_TARGET=10.8
VERSIONER_PERL_VERSION=5.16
XCODEFLAGS="MACOSX_DEPLOYMENT_TARGET=10.8"
VERSIONER_PERL_VERSION=5.18
VERSIONER_PYTHON_VERSION=2.7
vi_cv_path_python=/usr/bin/python
vi_cv_path_python3=/usr/local/bin/python3
vi_cv_path_plain_lua=/usr/local/bin/lua
vi_cv_dll_name_perl=/System/Library/Perl/5.16/darwin-thread-multi-2level/CORE/libperl.dylib
vi_cv_dll_name_perl=/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/libperl.dylib
vi_cv_dll_name_python=/System/Library/Frameworks/Python.framework/Versions/2.7/Python
vi_cv_dll_name_python3=/usr/local/Frameworks/Python.framework/Versions/3.6/Python
vi_cv_dll_name_python3=/usr/local/Frameworks/Python.framework/Versions/3.7/Python
VIMCMD=src/MacVim/build/Release/MacVim.app/Contents/MacOS/Vim
"CONFOPT='--with-features=huge --enable-multibyte --enable-terminal --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-python3interp=dynamic --enable-rubyinterp=dynamic --with-ruby-command=/usr/local/bin/ruby --enable-luainterp=dynamic --with-lua-prefix=/usr/local --enable-gui=macvim'"
"CONFOPT='--with-features=huge --enable-multibyte --enable-terminal --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-python3interp=dynamic --enable-rubyinterp=dynamic --with-ruby-command=/usr/local/opt/ruby/bin/ruby --enable-luainterp=dynamic --with-lua-prefix=/usr/local --enable-gui=macvim'"
DYLD_LIBRARY_PATH=/usr/local/opt/ruby/lib:$DYLD_LIBRARY_PATH # Ruby is keg-only in Homebrew, so need to manually link in the path so Vim will know where to look for the binaries.
sudo: false
before_install:
- brew update || brew update
- brew upgrade python
- brew install lua
- brew install ruby
script:
- set -e
- if [ "$TRAVIS_OSX_IMAGE" = "xcode8.3" ]; then brew reinstall --build-from-source ruby; fi
- echo "Configuring MacVim" && echo -en "travis_fold:start:config\\r"
- NPROC=$(getconf _NPROCESSORS_ONLN)
- ./configure $CONFOPT --enable-fail-if-missing
- cat src/auto/config.mk
- cat src/auto/config.h
- grep -q -- "-DDYNAMIC_PERL_DLL=\\\\\"$vi_cv_dll_name_perl\\\\\"" src/auto/config.mk
- grep -q -- "-DDYNAMIC_PYTHON_DLL=\\\\\"$vi_cv_dll_name_python\\\\\"" src/auto/config.mk
- grep -q -- "-DDYNAMIC_PYTHON3_DLL=\\\\\"$vi_cv_dll_name_python3\\\\\"" src/auto/config.mk
- echo -en "travis_fold:end:config\\r"
- echo "Building MacVim" && echo -en "travis_fold:start:build\\r"
- make -j$NPROC
- echo -en "travis_fold:end:build\\r"
- echo "Testing MacVim" && echo -en "travis_fold:start:test\\r"
- rm -f result; $VIMCMD -g -f -c "redir>result" -c "lua print(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result
- rm -f result; $VIMCMD -g -f -c "redir>result" -c "perl VIM::Msg(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result
- rm -f result; $VIMCMD -g -f -c "redir>result" -c "py import sys; print(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result
- rm -f result; $VIMCMD -g -f -c "redir>result" -c "py3 import sys; print(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result
- rm -f result; $VIMCMD -g -f -c "redir>result" -c "ruby puts(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result
- rm -f result;
- make test
- echo -en "travis_fold:end:test\\r"
- echo "Testing MacVim (GUI)" && echo -en "travis_fold:start:test_gui\\r"
- make -C src/testdir clean
- make -C src testgui
- echo -en "travis_fold:end:test_gui\\r"
before_deploy:
- make -C src macvim-dmg
@@ -56,6 +76,7 @@ deploy:
file: src/MacVim/build/Release/MacVim.dmg
skip_cleanup: true
on:
condition: $TRAVIS_OSX_IMAGE = xcode10.1
all_branches: true
tags: true
repo: macvim-dev/macvim
+21 -1
View File
@@ -51,4 +51,24 @@ Look in the header of the file for the name and email address.
The maintainer will take care of issues and send updates to Bram for
distribution with Vim.
If the maintainer does not react, contact the vim-dev maillist.
If the maintainer does not respond, contact the vim-dev maillist.
# Translations
Translating messages and runtime files is very much appreciated! These things can be translated:
* Messages in Vim, see [src/po/README.txt][1]
* Menus, see [runtime/lang/README.txt][2]
* Vim tutor, see [runtime/tutor/README.txt][3]
* Manual pages, see [runtime/doc/\*.1][4] for examples
* Desktop icon, see [runtime/vim.desktop][5] and [runtime/gvim.desktop][6]
The help files can be translated and made available separately.
See https://www.vim.org/translations.php for examples.
[1]: https://github.com/vim/vim/blob/master/src/po/README.txt
[2]: https://github.com/vim/vim/blob/master/runtime/lang/README.txt
[3]: https://github.com/vim/vim/blob/master/runtime/tutor/README.txt
[4]: https://github.com/vim/vim/blob/master/runtime/doc/vim.1
[5]: https://github.com/vim/vim/blob/master/runtime/vim.desktop
[6]: https://github.com/vim/vim/blob/master/runtime/gvim.desktop
+48 -18
View File
@@ -1,19 +1,23 @@
# List of distributed Vim files.
# Used by Makefile and upload.aap.
# Used by Makefile.
# source files for all source archives
SRC_ALL = \
.hgignore \
.lgtm.yml \
.travis.yml \
appveyor.yml \
src/appveyor.bat \
ci/appveyor.bat \
src/Make_all.mak \
src/README.txt \
src/alloc.h \
src/arabic.c \
src/arabic.h \
src/ascii.h \
src/autocmd.c \
src/beval.c \
src/beval.h \
src/blob.c \
src/blowfish.c \
src/buffer.c \
src/channel.c \
@@ -45,6 +49,7 @@ SRC_ALL = \
src/gui_beval.c \
src/hardcopy.c \
src/hashtab.c \
src/indent.c \
src/json.c \
src/json_test.c \
src/kword_test.c \
@@ -79,16 +84,18 @@ SRC_ALL = \
src/screen.c \
src/search.c \
src/sha256.c \
src/structs.h \
src/sign.c \
src/spell.c \
src/spell.h \
src/spellfile.c \
src/structs.h \
src/syntax.c \
src/tag.c \
src/term.c \
src/terminal.c \
src/term.h \
src/termlib.c \
src/textprop.c \
src/ui.c \
src/undo.c \
src/userfunc.c \
@@ -99,9 +106,7 @@ SRC_ALL = \
src/window.c \
src/tee/tee.c \
src/xxd/xxd.c \
src/main.aap \
src/testdir/gen_opt_test.vim \
src/testdir/main.aap \
src/testdir/README.txt \
src/testdir/Make_all.mak \
src/testdir/*.in \
@@ -141,8 +146,11 @@ SRC_ALL = \
src/testdir/if_ver*.vim \
src/testdir/color_ramp.vim \
src/proto.h \
src/protodef.h \
src/proto/arabic.pro \
src/proto/autocmd.pro \
src/proto/beval.pro \
src/proto/blob.pro \
src/proto/blowfish.pro \
src/proto/buffer.pro \
src/proto/channel.pro \
@@ -168,6 +176,7 @@ SRC_ALL = \
src/proto/gui_beval.pro \
src/proto/hardcopy.pro \
src/proto/hashtab.pro \
src/proto/indent.pro \
src/proto/json.pro \
src/proto/list.pro \
src/proto/main.pro \
@@ -190,6 +199,7 @@ SRC_ALL = \
src/proto/screen.pro \
src/proto/search.pro \
src/proto/sha256.pro \
src/proto/sign.pro \
src/proto/spell.pro \
src/proto/spellfile.pro \
src/proto/syntax.pro \
@@ -197,6 +207,7 @@ SRC_ALL = \
src/proto/term.pro \
src/proto/terminal.pro \
src/proto/termlib.pro \
src/proto/textprop.pro \
src/proto/ui.pro \
src/proto/undo.pro \
src/proto/userfunc.pro \
@@ -227,7 +238,7 @@ SRC_ALL = \
src/libvterm/src/parser.c \
src/libvterm/src/pen.c \
src/libvterm/src/rect.h \
src/libvterm/src/screen.c \
src/libvterm/src/termscreen.c \
src/libvterm/src/state.c \
src/libvterm/src/unicode.c \
src/libvterm/src/utf8.h \
@@ -273,6 +284,22 @@ SRC_ALL = \
src/libvterm/t/92lp1640917.test \
src/libvterm/t/harness.c \
src/libvterm/t/run-test.pl \
src/xdiff/COPYING \
src/xdiff/README.txt \
src/xdiff/xdiff.h \
src/xdiff/xdiffi.c \
src/xdiff/xdiffi.h \
src/xdiff/xemit.c \
src/xdiff/xemit.h \
src/xdiff/xhistogram.c \
src/xdiff/xinclude.h \
src/xdiff/xmacros.h \
src/xdiff/xpatience.c \
src/xdiff/xprepare.c \
src/xdiff/xprepare.h \
src/xdiff/xtypes.h \
src/xdiff/xutils.c \
src/xdiff/xutils.h \
# source files for Unix only
@@ -289,7 +316,6 @@ SRC_UNIX = \
src/INSTALLx.txt \
src/Makefile \
src/auto/configure \
src/config.aap.in \
src/config.h.in \
src/config.mk.dist \
src/config.mk.in \
@@ -314,8 +340,6 @@ SRC_UNIX = \
src/gui_x11_pm.h \
src/hangulin.c \
src/if_xcmdsrv.c \
src/integration.c \
src/integration.h \
src/link.sh \
src/installman.sh \
src/installml.sh \
@@ -338,7 +362,6 @@ SRC_UNIX = \
src/proto/if_xcmdsrv.pro \
src/proto/os_unix.pro \
src/proto/pty.pro \
src/proto/workshop.pro \
src/pty.c \
src/testdir/Makefile \
src/testdir/unix.vim \
@@ -348,10 +371,6 @@ SRC_UNIX = \
src/vimtutor \
src/gvimtutor \
src/which.sh \
src/workshop.c \
src/workshop.h \
src/wsdebug.c \
src/wsdebug.h \
src/tee/Makefile \
src/xxd/Makefile \
@@ -411,6 +430,8 @@ SRC_DOS = \
src/msvc2008.bat \
src/msvc2010.bat \
src/msvc2015.bat \
src/msys32.bat \
src/msys64.bat \
src/dimm.idl \
src/dlldata.c \
src/dosinst.c \
@@ -455,8 +476,8 @@ SRC_DOS = \
src/xxd/Make_mvc.mak \
nsis/gvim.nsi \
nsis/gvim_version.nsh \
nsis/vimrc.ini \
nsis/README.txt \
nsis/lang/*.nsi \
uninstal.txt \
src/VisVim/Commands.cpp \
src/VisVim/Commands.h \
@@ -495,8 +516,7 @@ SRC_DOS_BIN = \
src/xpm/x86/lib/libXpm.a \
src/xpm/x86/lib/libXpm.lib \
src/xpm/x86/lib-vc14/libXpm.lib \
nsis/icons/*.bmp \
nsis/icons/*.ico \
nsis/icons.zip \
# source files for Amiga, DOS, etc. (also in the extra archive)
SRC_AMI_DOS = \
@@ -608,7 +628,6 @@ RT_ALL = \
runtime/macros/matchit.vim \
runtime/macros/maze/README.txt \
runtime/macros/maze/[mM]akefile \
runtime/macros/maze/main.aap \
runtime/macros/maze/maze.c \
runtime/macros/maze/maze_5.78 \
runtime/macros/maze/maze_mac \
@@ -636,6 +655,7 @@ RT_ALL = \
runtime/tutor/tutor \
runtime/tutor/tutor.vim \
runtime/vimrc_example.vim \
runtime/pack/dist/opt/cfilter/plugin/cfilter.vim \
runtime/pack/dist/opt/dvorak/plugin/dvorak.vim \
runtime/pack/dist/opt/dvorak/dvorak/enable.vim \
runtime/pack/dist/opt/dvorak/dvorak/disable.vim \
@@ -644,6 +664,7 @@ RT_ALL = \
runtime/pack/dist/opt/matchit/plugin/matchit.vim \
runtime/pack/dist/opt/matchit/doc/matchit.txt \
runtime/pack/dist/opt/matchit/doc/tags \
runtime/pack/dist/opt/matchit/autoload/*.vim \
runtime/pack/dist/opt/shellmenu/plugin/shellmenu.vim \
runtime/pack/dist/opt/swapmouse/plugin/swapmouse.vim \
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim \
@@ -673,6 +694,11 @@ RT_SCRIPTS = \
runtime/compiler/README.txt \
runtime/indent/*.vim \
runtime/indent/README.txt \
runtime/indent/Makefile \
runtime/indent/testdir/README.txt \
runtime/indent/testdir/*.vim \
runtime/indent/testdir/*.in \
runtime/indent/testdir/*.ok \
runtime/ftplugin/*.vim \
runtime/ftplugin/logtalk.dict \
runtime/ftplugin/README.txt \
@@ -706,6 +732,7 @@ RT_NO_UNIX = \
# runtime for Amiga (also in the extra archive)
RT_AMI_DOS = \
runtime/doc/evim.man \
runtime/doc/vim.man \
runtime/doc/vimdiff.man \
runtime/doc/vimtutor.man \
@@ -846,6 +873,8 @@ IN_README_DIR = \
# generic language files
LANG_GEN = \
runtime/doc/*-da.1 \
runtime/doc/*-da.UTF-8.1 \
runtime/doc/*-de.1 \
runtime/doc/*-de.UTF-8.1 \
runtime/doc/*-fr.1 \
@@ -906,6 +935,7 @@ LANG_SRC = \
src/po/check.vim \
src/po/cleanup.vim \
src/po/Makefile \
src/po/Make_all.mak \
src/po/Make_cyg.mak \
src/po/Make_ming.mak \
src/po/Make_mvc.mak \
+78
View File
@@ -0,0 +1,78 @@
VIM LICENSE
I) There are no restrictions on distributing unmodified copies of Vim except
that they must include this license text. You can also distribute
unmodified parts of Vim, likewise unrestricted except that they must
include this license text. You are also allowed to include executables
that you made from the unmodified Vim sources, plus your own usage
examples and Vim scripts.
II) It is allowed to distribute a modified (or extended) version of Vim,
including executables and/or source code, when the following four
conditions are met:
1) This license text must be included unmodified.
2) The modified Vim must be distributed in one of the following five ways:
a) If you make changes to Vim yourself, you must clearly describe in
the distribution how to contact you. When the maintainer asks you
(in any way) for a copy of the modified Vim you distributed, you
must make your changes, including source code, available to the
maintainer without fee. The maintainer reserves the right to
include your changes in the official version of Vim. What the
maintainer will do with your changes and under what license they
will be distributed is negotiable. If there has been no negotiation
then this license, or a later version, also applies to your changes.
The current maintainer is Bram Moolenaar <Bram@vim.org>. If this
changes it will be announced in appropriate places (most likely
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
impossible to contact the maintainer, the obligation to send him
your changes ceases. Once the maintainer has confirmed that he has
received your changes they will not have to be sent again.
b) If you have received a modified Vim that was distributed as
mentioned under a) you are allowed to further distribute it
unmodified, as mentioned at I). If you make additional changes the
text under a) applies to those changes.
c) Provide all the changes, including source code, with every copy of
the modified Vim you distribute. This may be done in the form of a
context diff. You can choose what license to use for new code you
add. The changes and their license must not restrict others from
making their own changes to the official version of Vim.
d) When you have a modified Vim which includes changes as mentioned
under c), you can distribute it without the source code for the
changes if the following three conditions are met:
- The license that applies to the changes permits you to distribute
the changes to the Vim maintainer without fee or restriction, and
permits the Vim maintainer to include the changes in the official
version of Vim without fee or restriction.
- You keep the changes for at least three years after last
distributing the corresponding modified Vim. When the maintainer
or someone who you distributed the modified Vim to asks you (in
any way) for the changes within this period, you must make them
available to him.
- You clearly describe in the distribution how to contact you. This
contact information must remain valid for at least three years
after last distributing the corresponding modified Vim, or as long
as possible.
e) When the GNU General Public License (GPL) applies to the changes,
you can distribute the modified Vim under the GNU GPL version 2 or
any later version.
3) A message must be added, at least in the output of the ":version"
command and in the intro screen, such that the user of the modified Vim
is able to see that it was modified. When distributing as mentioned
under 2)e) adding the message is only required for as far as this does
not conflict with the license used for the changes.
4) The contact information as required under 2)a) and 2)d) must not be
removed or changed, except that the person himself can make
corrections.
III) If you distribute a modified version of Vim, you are encouraged to use
the Vim license for your changes and make them available to the
maintainer, including the source code. The preferred way to do this is
by e-mail or by uploading the files to a server and e-mailing the URL.
If the number of changes is small (e.g., a modified Makefile) e-mailing a
context diff will do. The e-mail address to be used is
<maintainer@vim.org>
IV) It is not allowed to remove this license from the distribution of the Vim
sources, parts of it or from a modified version. You may use this
license for previous Vim releases instead of the license that they came
with, at your option.
+21 -7
View File
@@ -32,14 +32,26 @@ first:
# Some make programs use the last target for the $@ default; put the other
# targets separately to always let $@ expand to "first" by default.
all install uninstall tools config configure reconfig proto depend lint tags types test scripttests unittests testclean clean distclean:
all install uninstall tools config configure reconfig proto depend lint tags types test scripttests test_libvterm unittests testclean clean distclean:
@if test ! -f src/auto/config.mk; then \
cp src/config.mk.dist src/auto/config.mk; \
fi
@echo "Starting make in the src directory."
@echo "If there are problems, cd to the src directory and run make there"
cd src && $(MAKE) $@
@# When the target is "test" also run the indent tests.
@if test "$@" = "test"; then \
$(MAKE) indenttest; \
fi
# Executable used for running the indent tests.
VIM_FOR_INDENTTEST = ../../src/vim
indenttest:
cd runtime/indent && \
$(MAKE) clean VIM="$(VIM_FOR_INDENTTEST)" && \
$(MAKE) test VIM="$(VIM_FOR_INDENTTEST)"
#########################################################################
# 2. Creating the various distribution files.
@@ -68,7 +80,7 @@ all install uninstall tools config configure reconfig proto depend lint tags typ
# Before creating an archive first delete all backup files, *.orig, etc.
MAJOR = 8
MINOR = 0
MINOR = 1
# CHECKLIST for creating a new version:
#
@@ -131,7 +143,7 @@ MINOR = 0
# - > make dossrc
# > make dosrt
# Unpack dist/vim##rt.zip and dist/vim##src.zip on an MS-Windows PC.
# This creates the directory vim/vim80 and puts all files in there.
# This creates the directory vim/vim81 and puts all files in there.
# Win32 console version build:
# - See src/INSTALLpc.txt for installing the compiler and SDK.
# - Set environment for Visual C++ 2015:
@@ -193,6 +205,7 @@ MINOR = 0
# - Make sure there is a diff.exe two levels up (get it from a previous Vim
# version). Also put winpty32.dll and winpty-agent.exe there.
# - go to ../nsis and do:
# > unzip icons.zip
# > makensis gvim.nsi (takes a few minutes).
# ignore warning for libwinpthread-1.dll
# - Copy gvim##.exe to the dist directory.
@@ -456,11 +469,12 @@ dosrt_files: dist prepare no_title.vim
-rm $(IN_README_DIR)
mv dist/vim/$(VIMRTDIR)/runtime/* dist/vim/$(VIMRTDIR)
rmdir dist/vim/$(VIMRTDIR)/runtime
# Add the message translations. Trick: skip ja.mo and use ja.sjis.mo instead.
# Same for cs.mo / cs.cp1250.mo, pl.mo / pl.cp1250.mo, sk.mo / sk.cp1250.mo,
# zh_CN.mo / zh_CN.cp936.mo, uk.mo / uk.cp1251.mo and ru.mo / ru.cp1251.mo.
# Add the message translations. Trick: skip ja.mo/ja.euc-jp.mo and use
# ja.sjis.mo instead. Same for cs.mo / cs.cp1250.mo, pl.mo / pl.cp1250.mo,
# sk.mo / sk.cp1250.mo, zh_CN.mo / zh_CN.cp936.mo, uk.mo / uk.cp1251.mo and
# ru.mo / ru.cp1251.mo.
for i in $(LANG_DOS); do \
if test "$$i" != "src/po/ja.mo" -a "$$i" != "src/po/pl.mo" -a "$$i" != "src/po/cs.mo" -a "$$i" != "src/po/sk.mo" -a "$$i" != "src/po/zh_CN.mo" -a "$$i" != "src/po/ru.mo" -a "$$i" != "src/po/uk.mo"; then \
if test "$$i" != "src/po/ja.mo" -a "$$i" != "src/po/ja.euc-jp.mo" -a "$$i" != "src/po/pl.mo" -a "$$i" != "src/po/cs.mo" -a "$$i" != "src/po/sk.mo" -a "$$i" != "src/po/zh_CN.mo" -a "$$i" != "src/po/ru.mo" -a "$$i" != "src/po/uk.mo"; then \
n=`echo $$i | sed -e "s+src/po/\([-a-zA-Z0-9_]*\(.UTF-8\)*\)\(.sjis\)*\(.cp1250\)*\(.cp1251\)*\(.cp936\)*.mo+\1+"`; \
mkdir dist/vim/$(VIMRTDIR)/lang/$$n; \
mkdir dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES; \
+1 -4
View File
@@ -1,10 +1,7 @@
Vim - the text editor - for Mac OS X
This is the official GitHub repository for MacVim, the macOS port of [vim](https://github.com/vim/vim). It is based on
[Björn Winckler's repository](https://github.com/b4winckler/macvim), which was official until he stepped down as the
maintainer of the port.
- MacVim homepage http://macvim-dev.github.io/macvim
- MacVim homepage https://macvim-dev.github.io/macvim
- Vim README https://github.com/macvim-dev/macvim/blob/master/README_vim.md
+1 -1
View File
@@ -1,4 +1,4 @@
README.txt for version 8.0 of Vim: Vi IMproved.
README.txt for version 8.1 of Vim: Vi IMproved.
WHAT IS VIM?
+4 -4
View File
@@ -9,10 +9,10 @@ Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful
messages, shows current file name in window title, on-line
help, rectangular cut/paste, etc., etc., etc...
Version 8.0. Also runs under UNIX, MS-Windows, Mac, etc.
vim80rt.tgz contains the documentation and syntax files.
vim80bin.tgz contains the binaries.
vim80src.tgz contains the sources.
Version 8.1. Also runs under UNIX, MS-Windows, Mac, etc.
vim81rt.tgz contains the documentation and syntax files.
vim81bin.tgz contains the binaries.
vim81src.tgz contains the sources.
Author: Bram Moolenaar et al.
+3 -3
View File
@@ -1,4 +1,4 @@
README_ami.txt for version 8.0 of Vim: Vi IMproved.
README_ami.txt for version 8.1 of Vim: Vi IMproved.
This file explains the installation of Vim on Amiga systems.
See README.txt for general information about Vim.
@@ -16,8 +16,8 @@ easily upgrade to a new version. For example:
You would then unpack the archives like this:
cd dh0:editors
tar xf t:vim80bin.tar
tar xf t:vim80rt.tar
tar xf t:vim81bin.tar
tar xf t:vim81rt.tar
Set the $VIM environment variable to point to the top directory of your Vim
files. For the above example:
+2 -2
View File
@@ -1,8 +1,8 @@
README_amibin.txt for version 8.0 of Vim: Vi IMproved.
README_amibin.txt for version 8.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_ami.txt" for installation instructions for the Amiga.
These files are in the runtime archive (vim80rt.tgz).
These files are in the runtime archive (vim81rt.tgz).
The Amiga "bin" archive contains the Vim executable for the Amiga. It was
+2 -2
View File
@@ -1,8 +1,8 @@
README_amisrc.txt for version 8.0 of Vim: Vi IMproved.
README_amisrc.txt for version 8.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_ami.txt" for installation instructions for the Amiga.
These files are in the runtime archive (vim80rt.tgz).
These files are in the runtime archive (vim81rt.tgz).
The Amiga source archive contains the files needed to compile Vim on the
+7 -7
View File
@@ -1,16 +1,16 @@
README_bindos.txt for version 8.0 of Vim: Vi IMproved.
README_bindos.txt for version 8.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows.
These files are in the runtime archive (vim80rt.zip).
These files are in the runtime archive (vim81rt.zip).
There are several binary distributions of Vim for the PC. You would normally
pick only one of them, but it's also possible to install several.
These ones are available (the version number may differ):
vim80w32.zip Windows 95/98/NT/etc. console version
gvim80.zip Windows 95/98/NT/etc. GUI version
gvim80ole.zip Windows 95/98/NT/etc. GUI version with OLE
vim81w32.zip Windows 95/98/NT/etc. console version
gvim81.zip Windows 95/98/NT/etc. GUI version
gvim81ole.zip Windows 95/98/NT/etc. GUI version with OLE
You MUST also get the runtime archive (vim80rt.zip).
The sources are also available (vim80src.zip).
You MUST also get the runtime archive (vim81rt.zip).
The sources are also available (vim81src.zip).
+18 -18
View File
@@ -1,4 +1,4 @@
README_dos.txt for version 8.0 of Vim: Vi IMproved.
README_dos.txt for version 8.1 of Vim: Vi IMproved.
This file explains the installation of Vim on MS-DOS and MS-Windows systems.
See "README.txt" for general information about Vim.
@@ -41,19 +41,19 @@ These are the normal steps to install Vim from the .zip archives:
located. Check the $VIM setting to see where it points to:
set VIM
For example, if you have
C:\vim\vim80
C:\vim\vim81
do
cd C:\
Binary and runtime Vim archives are normally unpacked in the same location,
on top of each other.
2. Unpack the zip archives. This will create a new directory "vim\vim80",
2. Unpack the zip archives. This will create a new directory "vim\vim81",
in which all the distributed Vim files are placed. Since the directory
name includes the version number, it is unlikely that you overwrite
existing files.
Examples:
pkunzip -d gvim80.zip
unzip vim80w32.zip
pkunzip -d gvim81.zip
unzip vim81w32.zip
You need to unpack the runtime archive and at least one of the binary
archives. When using more than one binary version, be careful not to
@@ -69,7 +69,7 @@ These are the normal steps to install Vim from the .zip archives:
archive and follow the instructions in the documentation.
3. Change to the new directory:
cd vim\vim80
cd vim\vim81
Run the "install.exe" program. It will ask you a number of questions about
how you would like to have your Vim setup. Among these are:
- You can tell it to write a "_vimrc" file with your preferences in the
@@ -80,8 +80,8 @@ These are the normal steps to install Vim from the .zip archives:
console or in a shell. You can select one of the directories in your
$PATH. If you skip this, you can add Vim to the search path manually:
The simplest is to add a line to your autoexec.bat. Examples:
set path=%path%;C:\vim\vim80
set path=%path%;D:\editors\vim\vim80
set path=%path%;C:\vim\vim81
set path=%path%;D:\editors\vim\vim81
- Create entries for Vim on the desktop and in the Start menu.
That's it!
@@ -93,8 +93,8 @@ Remarks:
won't show a menubar. Then you need to set the $VIM environment variable to
point to the top directory of your Vim files. Example:
set VIM=C:\editors\vim
Vim version 8.0 will look for your vimrc file in $VIM, and for the runtime
files in $VIM/vim80. See ":help $VIM" for more information.
Vim version 8.1 will look for your vimrc file in $VIM, and for the runtime
files in $VIM/vim81. See ":help $VIM" for more information.
- To avoid confusion between distributed files of different versions and your
own modified vim scripts, it is recommended to use this directory layout:
@@ -105,14 +105,14 @@ Remarks:
C:\vim\vimfiles\ftplugin\*.vim Filetype plugins
C:\vim\... Other files you made.
Distributed files:
C:\vim\vim80\vim.exe The Vim version 8.0 executable.
C:\vim\vim80\doc\*.txt The version 8.0 documentation files.
C:\vim\vim80\bugreport.vim A Vim version 8.0 script.
C:\vim\vim80\... Other version 8.0 distributed files.
C:\vim\vim81\vim.exe The Vim version 8.1 executable.
C:\vim\vim81\doc\*.txt The version 8.1 documentation files.
C:\vim\vim81\bugreport.vim A Vim version 8.1 script.
C:\vim\vim81\... Other version 8.1 distributed files.
In this case the $VIM environment variable would be set like this:
set VIM=C:\vim
Then $VIMRUNTIME will automatically be set to "$VIM\vim80". Don't add
"vim80" to $VIM, that won't work.
Then $VIMRUNTIME will automatically be set to "$VIM\vim81". Don't add
"vim81" to $VIM, that won't work.
- You can put your Vim executable anywhere else. If the executable is not
with the other Vim files, you should set $VIM. The simplest is to add a line
@@ -136,8 +136,8 @@ Remarks:
Select Properties.
5. In the Program tab, change the "Cmdline" to add "/c" and the name of the
Vim executable. Examples:
C:\command.com /c C:\vim\vim80\vim.exe
C:\command.com /c D:\editors\vim\vim80\vim.exe
C:\command.com /c C:\vim\vim81\vim.exe
C:\command.com /c D:\editors\vim\vim81\vim.exe
6. Select the font, window size, etc. that you like. If this isn't
possible, select "Advanced" in the Program tab, and deselect "MS-DOS
mode".
+1 -1
View File
@@ -1,4 +1,4 @@
README_extra.txt for version 8.0 of Vim: Vi IMproved.
README_extra.txt for version 8.1 of Vim: Vi IMproved.
These extra files of Vim are for special purposes. This README explains what
the files are for. For general information about Vim, see the "README.txt"
+1 -1
View File
@@ -1,4 +1,4 @@
README_mac.txt for version 8.0 of Vim: Vi IMproved.
README_mac.txt for version 8.1 of Vim: Vi IMproved.
How to install MacVim?
========================
+1 -1
View File
@@ -1,4 +1,4 @@
README_ole.txt for version 8.0 of Vim: Vi IMproved.
README_ole.txt for version 8.1 of Vim: Vi IMproved.
This archive contains gvim.exe with OLE interface and VisVim.
This version of gvim.exe can also load a number of interface dynamically (you
+1 -1
View File
@@ -1,4 +1,4 @@
README_os2.txt for version 8.0 of Vim: Vi IMproved.
README_os2.txt for version 8.1 of Vim: Vi IMproved.
This file used to explain the installation of Vim on OS/2 systems.
However, support for OS/2 has been removed in patch 7.4.1008.
+1 -1
View File
@@ -1,4 +1,4 @@
README_zOS.txt for version 8.0 of Vim: Vi IMproved.
README_os390.txt for version 8.1 of Vim: Vi IMproved.
This readme explains how to build Vim on z/OS. Formerly called OS/390.
See "README.txt" for general information about Vim.
+2 -2
View File
@@ -1,8 +1,8 @@
README_src.txt for version 8.0 of Vim: Vi IMproved.
README_src.txt for version 8.1 of Vim: Vi IMproved.
The source archive contains the files needed to compile Vim on Unix systems.
It is packed for Unix systems (NL line separator).
For more information, see the README.txt file that comes with the runtime
archive (vim-8.0-rt.tar.gz). To be able to run Vim you MUST get the runtime
archive (vim-8.1-rt.tar.gz). To be able to run Vim you MUST get the runtime
archive too!
+2 -2
View File
@@ -1,8 +1,8 @@
README_srcdos.txt for version 8.0 of Vim: Vi IMproved.
README_srcdos.txt for version 8.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows.
These files are in the runtime archive (vim80rt.zip).
These files are in the runtime archive (vim81rt.zip).
The DOS source archive contains the files needed to compile Vim on MS-DOS or
+1 -1
View File
@@ -1,4 +1,4 @@
README_unix.txt for version 8.0 of Vim: Vi IMproved.
README_unix.txt for version 8.1 of Vim: Vi IMproved.
This file explains the installation of Vim on Unix systems.
See "README.txt" for general information about Vim.
+1 -1
View File
@@ -1,4 +1,4 @@
README_vms.txt for version 8.0 of Vim: Vi IMproved.
README_vms.txt for version 8.1 of Vim: Vi IMproved.
This file explains the installation of Vim on VMS systems.
See "README.txt" in the runtime archive for information about Vim.
+1 -1
View File
@@ -1,4 +1,4 @@
README_w32s.txt for version 8.0 of Vim: Vi IMproved.
README_w32s.txt for version 8.1 of Vim: Vi IMproved.
This archive contains the gvim.exe that was specifically compiled for use in
the Win32s subsystem in MS-Windows 3.1 and 3.11.
+1 -1
View File
@@ -19,7 +19,7 @@ before_build:
- 'set INCLUDE=%INCLUDE%C:\Program Files (x86)\Windows Kits\8.1\Include\um'
build_script:
- src/appveyor.bat
- ci/appveyor.bat
test_script:
- cd src/testdir
+6 -6
View File
@@ -7,7 +7,7 @@ cd %APPVEYOR_BUILD_FOLDER%
cd src
echo "Building MinGW 32bit console version"
set PATH=c:\msys64\mingw32\bin;%PATH%
mingw32-make.exe -f Make_ming.mak GUI=no OPTIMIZE=speed IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
mingw32-make.exe -f Make_ming.mak GUI=no OPTIMIZE=speed IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
:: Save vim.exe before Make clean, moved back below.
copy vim.exe testdir
mingw32-make.exe -f Make_ming.mak clean
@@ -16,24 +16,24 @@ mingw32-make.exe -f Make_ming.mak clean
:: with specified features without python.
echo "Building MinGW 32bit GUI version"
if "%FEATURE%" == "HUGE" (
mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed CHANNEL=yes GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27 PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35 FEATURES=%FEATURE% || exit 1
mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed CHANNEL=yes GUI=yes IME=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27 PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35 FEATURES=%FEATURE% || exit 1
) ELSE (
mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed GUI=yes IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
)
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_ming.txt
echo "Building MSVC 64bit console Version"
sed -e "s/\$(LINKARGS2)/\$(LINKARGS2) | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=no IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=no IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
nmake -f Make_mvc2.mak clean
:: build MSVC huge version with python and channel support
:: GUI needs to be last, so that testing works
echo "Building MSVC 64bit GUI Version"
if "%FEATURE%" == "HUGE" (
nmake -f Make_mvc2.mak DIRECTX=yes CPU=AMD64 CHANNEL=yes OLE=no GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 FEATURES=%FEATURE% || exit 1
nmake -f Make_mvc2.mak DIRECTX=yes CPU=AMD64 CHANNEL=yes OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 FEATURES=%FEATURE% || exit 1
) ELSE (
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
)
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt
+13 -6
View File
@@ -15,6 +15,7 @@ To build the installable .exe:
vimrun.exe,
install.exe,
uninstal.exe,
tee/tee.exe,
xxd/xxd.exe,
Then execute tools/rename.bat to rename the executables. (mv command is
@@ -29,14 +30,15 @@ To build the installable .exe:
4. Go to the VisVim directory and build VisVim.dll (or get it from a binary
archive).
5. Go to the OleVim directory and build OpenWithVim.exe and SendToVim.exe (or
get them from a binary archive).
6. Get a "diff.exe" program and put it in the "../.." directory (above the
"vim80" directory, it's the same for all Vim versions).
5. Get a "diff.exe" program. If you skip this the built-in diff will always
be used (which is fine for most users). If you do have your own
"diff.exe" put it in the "../.." directory (above the "vim81" directory,
it's the same for all Vim versions).
You can find one in previous Vim versions or in this archive:
http://www.mossbayeng.com/~ron/vim/diffutils.tar.gz
Also put winpty32.dll and winpty-agent.exe there.
6 Also put winpty32.dll and winpty-agent.exe in "../.." (above the "vim81"
directory). This is required for the terminal window.
7. Do "make uganda.nsis.txt" in runtime/doc. This requires sed, you may have
to do this on Unix. Make sure the file is in DOS file format!
@@ -65,6 +67,11 @@ To build the installable .exe:
Install NSIS if you didn't do that already.
Also install UPX, if you want a compressed file.
Unpack the images:
cd nsis
unzip icons.zip
To build then, enter:
cd nsis
makensis gvim.nsi
+852 -319
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,5 +2,5 @@
!ifndef __GVIM_VER__NSH__
!define __GVIM_VER__NSH__
!define VER_MAJOR 8
!define VER_MINOR 0
!define VER_MINOR 1
!endif
BIN
View File
Binary file not shown.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 766 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 766 B

+175
View File
@@ -0,0 +1,175 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# danish.nsi: Danish language strings for gvim NSIS installer.
#
# Locale ID : 1030
# fileencoding : UTF-8
# Author : scootergrisen
!insertmacro MUI_LANGUAGE "Danish"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_DANISH} "$(^Name) Setup"
LangString ^UninstallCaption ${LANG_DANISH} "$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_DANISH} "Destinationsmappe (skal slutte med $\"vim$\")"
LangString str_show_readme ${LANG_DANISH} "Vis README efter installationen er gennemført"
# Install types:
LangString str_type_typical ${LANG_DANISH} "Typisk"
LangString str_type_minimal ${LANG_DANISH} "Minimal"
LangString str_type_full ${LANG_DANISH} "Fuld"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_DANISH} "Afinstaller eksisterende version(er)"
LangString str_desc_old_ver ${LANG_DANISH} "Afinstaller eksisterende Vim-version(er) fra dit system."
LangString str_section_exe ${LANG_DANISH} "Vim GUI og afviklingsfiler"
LangString str_desc_exe ${LANG_DANISH} "Vim GUI-eksekverbare- og afviklingsfiler. Komponenten kræves."
LangString str_section_console ${LANG_DANISH} "Vim-konsolprogram"
LangString str_desc_console ${LANG_DANISH} "Konsolversion af Vim (vim.exe)."
LangString str_section_batch ${LANG_DANISH} "Opret .bat-filer"
LangString str_desc_batch ${LANG_DANISH} "Opret .bat-filer til Vim-varianter i Windows-mappen til brug fra kommandolinjen."
LangString str_group_icons ${LANG_DANISH} "Opret ikoner til Vim"
LangString str_desc_icons ${LANG_DANISH} "Opret ikoner til Vim diverse steder for at hjælpe med at gøre adgangen let."
LangString str_section_desktop ${LANG_DANISH} "På skrivebordet"
LangString str_desc_desktop ${LANG_DANISH} "Opret ikoner til gVim-eksekverbare på skrivebordet."
LangString str_section_start_menu ${LANG_DANISH} "I Programmer-mappen i menuen Start"
LangString str_desc_start_menu ${LANG_DANISH} "Tilføj Vim i Programmer-mappen i menuen Start."
#LangString str_section_quick_launch ${LANG_DANISH} "I værktøjslinjen Hurtig start"
#LangString str_desc_quick_launch ${LANG_DANISH} "Tilføj Vim-genvej i værktøjslinjen Hurtig start."
LangString str_section_edit_with ${LANG_DANISH} "Tilføj Vim-genvejsmenu"
LangString str_desc_edit_with ${LANG_DANISH} "Tilføj Vim til listen i $\"Åbn med...$\"-genvejsmenuen."
#LangString str_section_edit_with32 ${LANG_DANISH} "32-bit-version"
#LangString str_desc_edit_with32 ${LANG_DANISH} "Tilføj Vim til listen i $\"Åbn med...$\"-genvejsmenuen for 32-bit-programmer."
#LangString str_section_edit_with64 ${LANG_DANISH} "64-bit-version"
#LangString str_desc_edit_with64 ${LANG_DANISH} "Tilføj Vim til listen i $\"Åbn med...$\"-genvejsmenuen for 64-bit-programmer."
LangString str_section_vim_rc ${LANG_DANISH} "Opret standardkonfiguration"
LangString str_desc_vim_rc ${LANG_DANISH} "Opret en standardkonfigurationsfil (_vimrc) hvis der ikke allerede findes en."
LangString str_group_plugin ${LANG_DANISH} "Opret plugin-mapper"
LangString str_desc_plugin ${LANG_DANISH} "Opret plugin-mapper. Plugin-mapper giver mulighed for at udvide Vim ved at slippe en fil i en mappen."
LangString str_section_plugin_home ${LANG_DANISH} "Private"
LangString str_desc_plugin_home ${LANG_DANISH} "Opret plugin-mapper i HOME-mappen."
LangString str_section_plugin_vim ${LANG_DANISH} "Delte"
LangString str_desc_plugin_vim ${LANG_DANISH} "Opret plugin-mapper i Vim-installationsmappe, det bruges af alle på systemet."
LangString str_section_vis_vim ${LANG_DANISH} "VisVim-udvidelser"
LangString str_desc_vis_vim ${LANG_DANISH} "VisVim-udvidelser til integrering i Microsoft Visual Studio."
LangString str_section_nls ${LANG_DANISH} "Understøttelse af modersmål"
LangString str_desc_nls ${LANG_DANISH} "Installer filer til understøttelse af modersmål."
LangString str_unsection_register ${LANG_DANISH} "Afregistrer Vim"
LangString str_desc_unregister ${LANG_DANISH} "Afregistrer Vim fra systemet."
LangString str_unsection_exe ${LANG_DANISH} "Fjern Vim-eksekverbare-/afviklingsfiler"
LangString str_desc_rm_exe ${LANG_DANISH} "Fjern alle Vim-eksekverbare- og afviklingsfiler."
LangString str_ungroup_plugin ${LANG_DANISH} "Fjern plugin-mapper"
LangString str_desc_rm_plugin ${LANG_DANISH} "Fjern plugin-mapperne hvis de er tomme."
LangString str_unsection_plugin_home ${LANG_DANISH} "Privat"
LangString str_desc_rm_plugin_home ${LANG_DANISH} "Fjern plugin-mapperne fra HOME-mappen."
LangString str_unsection_plugin_vim ${LANG_DANISH} "Delte"
LangString str_desc_rm_plugin_vim ${LANG_DANISH} "Fjern plugin-mapperne fra Vim-installationsmappen."
LangString str_unsection_rootdir ${LANG_DANISH} "Fjern Vim-rodmappen"
LangString str_desc_rm_rootdir ${LANG_DANISH} "Fjern Vim-rodmappen. Den indeholder dine Vim-konfigurationsfiler!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_DANISH} "Fandt $vim_old_ver_count Vim-versioner på dit system.$\r$\nInstallationsguiden kan højst håndtere ${VIM_MAX_OLD_VER}-versioner.$\r$\nFjern venligst nogle versioner og start igen."
#LangString str_msg_invalid_root ${LANG_DANISH} "Ugyldig installationssti: $vim_install_root!$\r$\nDen skal slutte med $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_DANISH} "Uoverensstemmelse i binære sti!$\r$\n$\r$\nForventede at den binære sti var $\"$vim_bin_path$\",$\r$\nmen systemet indikerer at den binære sti er $\"$INSTDIR$\"."
#LangString str_msg_vim_running ${LANG_DANISH} "Vim kører stadig på dit system.$\r$\nLuk venligst alle instanser af Vim inden du fortsætter."
#LangString str_msg_register_ole ${LANG_DANISH} "Forsøger at registrere Vim med OLE. Der er ingen meddelelse til at indikere om det virker eller ej."
#LangString str_msg_unreg_ole ${LANG_DANISH} "Forsøger at afregistrere Vim med OLE. Der er ingen meddelelse til at indikere om det virker eller ej."
#LangString str_msg_rm_start ${LANG_DANISH} "Afinstallerer følgende version:"
#LangString str_msg_rm_fail ${LANG_DANISH} "Kunne ikke afinstallere følgende version:"
#LangString str_msg_no_rm_key ${LANG_DANISH} "Kan ikke finde registreringsdatabasenøgle for afinstallationsguiden."
#LangString str_msg_no_rm_reg ${LANG_DANISH} "Kan ikke finde afinstallationsguiden fra registreringsdatabasen."
#LangString str_msg_no_rm_exe ${LANG_DANISH} "Kan ikke tilgå afinstallationsguide."
#LangString str_msg_rm_copy_fail ${LANG_DANISH} "Kunne ikke kopiere afinstallationsguide til midlertidig mappe."
#LangString str_msg_rm_run_fail ${LANG_DANISH} "Kunne ikke køre afinstallationsguide."
#LangString str_msg_abort_install ${LANG_DANISH} "Installationsguiden vil afbryde."
LangString str_msg_install_fail ${LANG_DANISH} "Installationen mislykkedes. Bedre held næste gang."
LangString str_msg_rm_exe_fail ${LANG_DANISH} "Nogle filer i $0 er ikke blevet slettet!$\r$\nDu skal gøre det manuelt."
#LangString str_msg_rm_root_fail ${LANG_DANISH} "ADVARSEL: Kan ikke fjerne $\"$vim_install_root$\", den er ikke tom!"
LangString str_msg_uninstalling ${LANG_DANISH} "Afinstallerer den gamle version..."
LangString str_msg_registering ${LANG_DANISH} "Registrerer..."
LangString str_msg_unregistering ${LANG_DANISH} "Afregistrerer..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_DANISH} "Vælg _vimrc-indstillinger"
LangString str_vimrc_page_subtitle ${LANG_DANISH} "Vælg indstillingerne til forbedring, tastatur og mus."
LangString str_msg_compat_title ${LANG_DANISH} " Vi- / Vim-opførsel "
LangString str_msg_compat_desc ${LANG_DANISH} "&Kompatibilitet og forbedringer"
LangString str_msg_compat_vi ${LANG_DANISH} "Vi-kompatibel"
LangString str_msg_compat_vim ${LANG_DANISH} "Vim original"
LangString str_msg_compat_defaults ${LANG_DANISH} "Vim med nogle forbedringer (indlæs defaults.vim)"
LangString str_msg_compat_all ${LANG_DANISH} "Vim med alle forbedringer (indlæs vimrc_example.vim) (standard)"
LangString str_msg_keymap_title ${LANG_DANISH} " Tilknytninger "
LangString str_msg_keymap_desc ${LANG_DANISH} "&Gentilknyt nogle få taster (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F osv.)"
LangString str_msg_keymap_default ${LANG_DANISH} "Gentilknyt ikke taster (standard)"
LangString str_msg_keymap_windows ${LANG_DANISH} "Gentilknyt nogle få taster til Windows"
LangString str_msg_mouse_title ${LANG_DANISH} " Mus "
LangString str_msg_mouse_desc ${LANG_DANISH} "&Opførsel af højre og venstre knapper"
LangString str_msg_mouse_default ${LANG_DANISH} "Højre: genvejsmenu, venstre: visuel tilstand (standard)"
LangString str_msg_mouse_windows ${LANG_DANISH} "Højre: genvejsmenu, venstre: vælg-tilstand (Windows)"
LangString str_msg_mouse_unix ${LANG_DANISH} "Højre: udvider markering, venstre: visuel tilstand (Unix)"
+281
View File
@@ -0,0 +1,281 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# dutch.nsi : Dutch language strings for gvim NSIS installer.
#
# Locale ID : 1043
# Locale Name : nl
# fileencoding : UTF-8
# Author : Peter Odding <peter@peterodding.com>
!insertmacro MUI_LANGUAGE "Dutch"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_DUTCH} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_DUTCH} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_DUTCH} \
# "Doelmap (moet eindigen op $\"vim$\")"
LangString str_show_readme ${LANG_DUTCH} \
"README weergeven na installatie"
# Install types:
LangString str_type_typical ${LANG_DUTCH} \
"Gebruikelijk"
LangString str_type_minimal ${LANG_DUTCH} \
"Minimaal"
LangString str_type_full ${LANG_DUTCH} \
"Volledig"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_DUTCH} \
"Bestaande versie(s) de-installeren"
LangString str_desc_old_ver ${LANG_DUTCH} \
"Bestaande Vim versie(s) van je systeem verwijderen."
LangString str_section_exe ${LANG_DUTCH} \
"Vim GUI"
LangString str_desc_exe ${LANG_DUTCH} \
"Vim GUI uitvoerbare bestanden en runtime bestanden. Dit component is vereist."
LangString str_section_console ${LANG_DUTCH} \
"Vim console programma"
LangString str_desc_console ${LANG_DUTCH} \
"Console versie van Vim (vim.exe)."
LangString str_section_batch ${LANG_DUTCH} \
"Creëer .bat bestanden"
LangString str_desc_batch ${LANG_DUTCH} \
"Creëer .bat bestanden voor Vim varianten in de Windows map voor \
commando regel gebruik."
LangString str_group_icons ${LANG_DUTCH} \
"Creëer pictogrammen for Vim"
LangString str_desc_icons ${LANG_DUTCH} \
"Creëer pictogrammen voor Vim op verschillende locaties voor gemakkelijke toegang."
LangString str_section_desktop ${LANG_DUTCH} \
"Op het bureaublad"
LangString str_desc_desktop ${LANG_DUTCH} \
"Creëer pictogrammen voor Vim uitvoerbare bestanden op het bureaublad."
LangString str_section_start_menu ${LANG_DUTCH} \
"In de Programma's map in het start menu"
LangString str_desc_start_menu ${LANG_DUTCH} \
"Voeg Vim toe aan de programma's map in het start menu. \
Van toepassing op Windows 95 en later."
#LangString str_section_quick_launch ${LANG_DUTCH} \
# "In de snel starten balk"
#LangString str_desc_quick_launch ${LANG_DUTCH} \
# "Voeg Vim snelkoppeling toe aan de snel starten balk."
LangString str_section_edit_with ${LANG_DUTCH} \
"Voeg Vim contextmenu toe"
LangString str_desc_edit_with ${LANG_DUTCH} \
"Voeg Vim toe aan de $\"Openen met...$\" contextmenu lijst."
#LangString str_section_edit_with32 ${LANG_DUTCH} \
# "32-bit versie"
#LangString str_desc_edit_with32 ${LANG_DUTCH} \
# "Voeg Vim toe aan de $\"Openen met...$\" contextmenu lijst \
# voor 32-bit toepassingen."
#LangString str_section_edit_with64 ${LANG_DUTCH} \
# "64-bit versie"
#LangString str_desc_edit_with64 ${LANG_DUTCH} \
# "Voeg Vim toe aan de $\"Openen met...$\" contextmenu lijst \
# voor 64-bit toepassingen."
LangString str_section_vim_rc ${LANG_DUTCH} \
"Creëer standaard configuratie"
LangString str_desc_vim_rc ${LANG_DUTCH} \
"Creëer een standaard configuratie bestand (_vimrc) als er nog geen bestaat."
LangString str_group_plugin ${LANG_DUTCH} \
"Creëer Plugin mappen"
LangString str_desc_plugin ${LANG_DUTCH} \
"Creëer plugin mappen. Plugin mappen maken het mogelijk om \
Vim uit te breiden door een bestand in een map te plaatsen."
LangString str_section_plugin_home ${LANG_DUTCH} \
"Privé"
LangString str_desc_plugin_home ${LANG_DUTCH} \
"Create plugin directories in HOME directory."
LangString str_section_plugin_vim ${LANG_DUTCH} \
"Gedeeld"
LangString str_desc_plugin_vim ${LANG_DUTCH} \
"Creëer plugin mappen in Vim installatie map, deze worden gebruikt \
voor iedereen op het systeem."
LangString str_section_vis_vim ${LANG_DUTCH} \
"VisVim extensie"
LangString str_desc_vis_vim ${LANG_DUTCH} \
"VisVim extensie voor Microsoft Visual Studio integratie."
LangString str_section_nls ${LANG_DUTCH} \
"Ondersteuning voor andere talen"
LangString str_desc_nls ${LANG_DUTCH} \
"Bestanden voor ondersteuning van andere talen dan Engels installeren."
LangString str_unsection_register ${LANG_DUTCH} \
"Vim afmelden"
LangString str_desc_unregister ${LANG_DUTCH} \
"Registratie van Vim in het systeem ongedaan maken."
LangString str_unsection_exe ${LANG_DUTCH} \
"Vim uitvoerbare/runtime bestanden verwijderen"
LangString str_desc_rm_exe ${LANG_DUTCH} \
"Verwijder alle Vim uitvoerbare bestanden en runtime bestanden."
LangString str_ungroup_plugin ${LANG_DUTCH} \
"Remove plugin directories"
LangString str_desc_rm_plugin ${LANG_DUTCH} \
"Remove the plugin directories if they are empty."
LangString str_unsection_plugin_home ${LANG_DUTCH} \
"Privé"
LangString str_desc_rm_plugin_home ${LANG_DUTCH} \
"Remove the plugin directories from HOME directory."
LangString str_unsection_plugin_vim ${LANG_DUTCH} \
"Gedeeld"
LangString str_desc_rm_plugin_vim ${LANG_DUTCH} \
"Remove the plugin directories from Vim install directory."
LangString str_unsection_rootdir ${LANG_DUTCH} \
"Remove the Vim root directory"
LangString str_desc_rm_rootdir ${LANG_DUTCH} \
"Remove the Vim root directory. It contains your Vim configuration files!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_DUTCH} \
# "Er zijn $vim_old_ver_count Vim versies op je systeem gevonden.$\r$\n\
# Deze installatie kan omgaan met maximaal ${VIM_MAX_OLD_VER} versies.$\r$\n\
# Verwijder a.u.b. wat versies en probeer het dan opnieuw."
#LangString str_msg_invalid_root ${LANG_DUTCH} \
# "Ongeldig installatiepad: $vim_install_root!$\r$\n\
# Het moet eindelijk op $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_DUTCH} \
# "Binair pad onjuist!$\r$\n$\r$\n\
# Het binaire pad zou $\"$vim_bin_path$\" moeten zijn,$\r$\n\
# maar het systeem geeft aan dat het binaire pad $\"$INSTDIR$\" is."
#LangString str_msg_vim_running ${LANG_DUTCH} \
# "Vim is nog actief op je systeem.$\r$\n\
# Sluit a.u.b. alle instanties van Vim voordat je verder gaat."
#LangString str_msg_register_ole ${LANG_DUTCH} \
# "Bezig met proberen om Vim te registreren met OLE. \
# Er is geen bericht dat aangeeft of deze operatie slaagt."
#LangString str_msg_unreg_ole ${LANG_DUTCH} \
# "Bezig met proberen om Vim te de-registreren met OLE. \
# Er is geen bericht dat aangeeft of deze operatie slaagt."
#LangString str_msg_rm_start ${LANG_DUTCH} \
# "De volgende versies worden verwijderd:"
#LangString str_msg_rm_fail ${LANG_DUTCH} \
# "De volgende versies konden niet worden verwijderd:"
#LangString str_msg_no_rm_key ${LANG_DUTCH} \
# "Kan de uninstaller register sleutel niet vinden."
#LangString str_msg_no_rm_reg ${LANG_DUTCH} \
# "Kan de uninstaller niet vinden via het register."
#LangString str_msg_no_rm_exe ${LANG_DUTCH} \
# "Kan geen toegang krijgen tot de uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_DUTCH} \
# "Kon de uninstaller niet naar een tijdelijke map kopiëren."
#LangString str_msg_rm_run_fail ${LANG_DUTCH} \
# "Kon de uninstaller niet uitvoeren."
#LangString str_msg_abort_install ${LANG_DUTCH} \
# "Installatie wordt gestopt."
LangString str_msg_install_fail ${LANG_DUTCH} \
"Installatie is mislukt."
LangString str_msg_rm_exe_fail ${LANG_DUTCH} \
"Sommige bestanden in $0 zijn niet verwijderd!$\r$\n\
Dit moet je handmatig doen."
#LangString str_msg_rm_root_fail ${LANG_DUTCH} \
# "WAARSCHUWING: Kan $\"$vim_install_root$\" niet verwijderen omdat het niet leeg is!"
LangString str_msg_uninstalling ${LANG_DUTCH} \
"Uninstalling the old version..."
LangString str_msg_registering ${LANG_DUTCH} \
"Registering..."
LangString str_msg_unregistering ${LANG_DUTCH} \
"Unregistering..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_DUTCH} \
"Choose _vimrc settings"
LangString str_vimrc_page_subtitle ${LANG_DUTCH} \
"Choose the settings for enhancement, keyboard and mouse."
LangString str_msg_compat_title ${LANG_DUTCH} \
" Vi / Vim behavior "
LangString str_msg_compat_desc ${LANG_DUTCH} \
"&Compatibility and enhancements"
LangString str_msg_compat_vi ${LANG_DUTCH} \
"Vi compatible"
LangString str_msg_compat_vim ${LANG_DUTCH} \
"Vim original"
LangString str_msg_compat_defaults ${LANG_DUTCH} \
"Vim with some enhancements (load defaults.vim)"
LangString str_msg_compat_all ${LANG_DUTCH} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_DUTCH} \
" Mappings "
LangString str_msg_keymap_desc ${LANG_DUTCH} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_DUTCH} \
"Do not remap keys (Default)"
LangString str_msg_keymap_windows ${LANG_DUTCH} \
"Remap a few keys"
LangString str_msg_mouse_title ${LANG_DUTCH} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_DUTCH} \
"&Behavior of right and left buttons"
LangString str_msg_mouse_default ${LANG_DUTCH} \
"Right: popup menu, Left: visual mode (Default)"
LangString str_msg_mouse_windows ${LANG_DUTCH} \
"Right: popup menu, Left: select mode (Windows)"
LangString str_msg_mouse_unix ${LANG_DUTCH} \
"Right: extends selection, Left: visual mode (Unix)"
+280
View File
@@ -0,0 +1,280 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# english.nsi: English language strings for gvim NSIS installer.
#
# Locale ID : 1033
# fileencoding : UTF-8
# Author : Guopeng Wen, Ken Takata
!insertmacro MUI_LANGUAGE "English"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_ENGLISH} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_ENGLISH} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_ENGLISH} \
# "Destination Folder (Must end with $\"vim$\")"
LangString str_show_readme ${LANG_ENGLISH} \
"Show README after installation finish"
# Install types:
LangString str_type_typical ${LANG_ENGLISH} \
"Typical"
LangString str_type_minimal ${LANG_ENGLISH} \
"Minimal"
LangString str_type_full ${LANG_ENGLISH} \
"Full"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_ENGLISH} \
"Uninstall Existing Version(s)"
LangString str_desc_old_ver ${LANG_ENGLISH} \
"Uninstall existing Vim version(s) from your system."
LangString str_section_exe ${LANG_ENGLISH} \
"Vim GUI and runtime files"
LangString str_desc_exe ${LANG_ENGLISH} \
"Vim GUI executables and runtime files. This component is required."
LangString str_section_console ${LANG_ENGLISH} \
"Vim console program"
LangString str_desc_console ${LANG_ENGLISH} \
"Console version of Vim (vim.exe)."
LangString str_section_batch ${LANG_ENGLISH} \
"Create .bat files"
LangString str_desc_batch ${LANG_ENGLISH} \
"Create .bat files for Vim variants in the Windows directory for \
command line use."
LangString str_group_icons ${LANG_ENGLISH} \
"Create icons for Vim"
LangString str_desc_icons ${LANG_ENGLISH} \
"Create icons for Vim at various locations to facilitate easy access."
LangString str_section_desktop ${LANG_ENGLISH} \
"On the Desktop"
LangString str_desc_desktop ${LANG_ENGLISH} \
"Create icons for gVim executables on the desktop."
LangString str_section_start_menu ${LANG_ENGLISH} \
"In the Start Menu Programs Folder"
LangString str_desc_start_menu ${LANG_ENGLISH} \
"Add Vim in the programs folder of the start menu."
#LangString str_section_quick_launch ${LANG_ENGLISH} \
# "In the Quick Launch Bar"
#LangString str_desc_quick_launch ${LANG_ENGLISH} \
# "Add Vim shortcut in the quick launch bar."
LangString str_section_edit_with ${LANG_ENGLISH} \
"Add Vim Context Menu"
LangString str_desc_edit_with ${LANG_ENGLISH} \
"Add Vim to the $\"Open With...$\" context menu list."
#LangString str_section_edit_with32 ${LANG_ENGLISH} \
# "32-bit Version"
#LangString str_desc_edit_with32 ${LANG_ENGLISH} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 32-bit applications."
#LangString str_section_edit_with64 ${LANG_ENGLISH} \
# "64-bit Version"
#LangString str_desc_edit_with64 ${LANG_ENGLISH} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 64-bit applications."
LangString str_section_vim_rc ${LANG_ENGLISH} \
"Create Default Config"
LangString str_desc_vim_rc ${LANG_ENGLISH} \
"Create a default config file (_vimrc) if one does not already exist."
LangString str_group_plugin ${LANG_ENGLISH} \
"Create Plugin Directories"
LangString str_desc_plugin ${LANG_ENGLISH} \
"Create plugin directories. Plugin directories allow extending Vim \
by dropping a file into a directory."
LangString str_section_plugin_home ${LANG_ENGLISH} \
"Private"
LangString str_desc_plugin_home ${LANG_ENGLISH} \
"Create plugin directories in HOME directory."
LangString str_section_plugin_vim ${LANG_ENGLISH} \
"Shared"
LangString str_desc_plugin_vim ${LANG_ENGLISH} \
"Create plugin directories in Vim install directory, it is used for \
everybody on the system."
LangString str_section_vis_vim ${LANG_ENGLISH} \
"VisVim Extension"
LangString str_desc_vis_vim ${LANG_ENGLISH} \
"VisVim Extension for Microsoft Visual Studio integration."
LangString str_section_nls ${LANG_ENGLISH} \
"Native Language Support"
LangString str_desc_nls ${LANG_ENGLISH} \
"Install files for native language support."
LangString str_unsection_register ${LANG_ENGLISH} \
"Unregister Vim"
LangString str_desc_unregister ${LANG_ENGLISH} \
"Unregister Vim from the system."
LangString str_unsection_exe ${LANG_ENGLISH} \
"Remove Vim Executables/Runtime Files"
LangString str_desc_rm_exe ${LANG_ENGLISH} \
"Remove all Vim executables and runtime files."
LangString str_ungroup_plugin ${LANG_ENGLISH} \
"Remove plugin directories"
LangString str_desc_rm_plugin ${LANG_ENGLISH} \
"Remove the plugin directories if they are empty."
LangString str_unsection_plugin_home ${LANG_ENGLISH} \
"Private"
LangString str_desc_rm_plugin_home ${LANG_ENGLISH} \
"Remove the plugin directories from HOME directory."
LangString str_unsection_plugin_vim ${LANG_ENGLISH} \
"Shared"
LangString str_desc_rm_plugin_vim ${LANG_ENGLISH} \
"Remove the plugin directories from Vim install directory."
LangString str_unsection_rootdir ${LANG_ENGLISH} \
"Remove the Vim root directory"
LangString str_desc_rm_rootdir ${LANG_ENGLISH} \
"Remove the Vim root directory. It contains your Vim configuration files!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_ENGLISH} \
# "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_ENGLISH} \
# "Invalid install path: $vim_install_root!$\r$\n\
# It should end with $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_ENGLISH} \
# "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_ENGLISH} \
# "Vim is still running on your system.$\r$\n\
# Please close all instances of Vim before you continue."
#LangString str_msg_register_ole ${LANG_ENGLISH} \
# "Attempting to register Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_unreg_ole ${LANG_ENGLISH} \
# "Attempting to unregister Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_rm_start ${LANG_ENGLISH} \
# "Uninstalling the following version:"
#LangString str_msg_rm_fail ${LANG_ENGLISH} \
# "Fail to uninstall the following version:"
#LangString str_msg_no_rm_key ${LANG_ENGLISH} \
# "Cannot find uninstaller registry key."
#LangString str_msg_no_rm_reg ${LANG_ENGLISH} \
# "Cannot find uninstaller from registry."
#LangString str_msg_no_rm_exe ${LANG_ENGLISH} \
# "Cannot access uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_ENGLISH} \
# "Fail to copy uninstaller to temporary directory."
#LangString str_msg_rm_run_fail ${LANG_ENGLISH} \
# "Fail to run uninstaller."
#LangString str_msg_abort_install ${LANG_ENGLISH} \
# "Installer will abort."
LangString str_msg_install_fail ${LANG_ENGLISH} \
"Installation failed. Better luck next time."
LangString str_msg_rm_exe_fail ${LANG_ENGLISH} \
"Some files in $0 have not been deleted!$\r$\n\
You must do it manually."
#LangString str_msg_rm_root_fail ${LANG_ENGLISH} \
# "WARNING: Cannot remove $\"$vim_install_root$\", it is not empty!"
LangString str_msg_uninstalling ${LANG_ENGLISH} \
"Uninstalling the old version..."
LangString str_msg_registering ${LANG_ENGLISH} \
"Registering..."
LangString str_msg_unregistering ${LANG_ENGLISH} \
"Unregistering..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_ENGLISH} \
"Choose _vimrc settings"
LangString str_vimrc_page_subtitle ${LANG_ENGLISH} \
"Choose the settings for enhancement, keyboard and mouse."
LangString str_msg_compat_title ${LANG_ENGLISH} \
" Vi / Vim behavior "
LangString str_msg_compat_desc ${LANG_ENGLISH} \
"&Compatibility and enhancements"
LangString str_msg_compat_vi ${LANG_ENGLISH} \
"Vi compatible"
LangString str_msg_compat_vim ${LANG_ENGLISH} \
"Vim original"
LangString str_msg_compat_defaults ${LANG_ENGLISH} \
"Vim with some enhancements (load defaults.vim)"
LangString str_msg_compat_all ${LANG_ENGLISH} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_ENGLISH} \
" Mappings "
LangString str_msg_keymap_desc ${LANG_ENGLISH} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_ENGLISH} \
"Do not remap keys (Default)"
LangString str_msg_keymap_windows ${LANG_ENGLISH} \
"Remap a few keys"
LangString str_msg_mouse_title ${LANG_ENGLISH} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_ENGLISH} \
"&Behavior of right and left buttons"
LangString str_msg_mouse_default ${LANG_ENGLISH} \
"Right: popup menu, Left: visual mode (Default)"
LangString str_msg_mouse_windows ${LANG_ENGLISH} \
"Right: popup menu, Left: select mode (Windows)"
LangString str_msg_mouse_unix ${LANG_ENGLISH} \
"Right: extends selection, Left: visual mode (Unix)"
+280
View File
@@ -0,0 +1,280 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# german.nsi : German language strings for gvim NSIS installer.
#
# Locale ID : 1031
# fileencoding : UTF-8
# Author : Christian Brabandt, tux
!insertmacro MUI_LANGUAGE "German"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_GERMAN} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_GERMAN} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_GERMAN} \
# "Zielverzeichnis auswählen (muss auf $\"vim$\" enden)"
LangString str_show_readme ${LANG_GERMAN} \
"README-Datei nach der Installation anzeigen"
# Install types:
LangString str_type_typical ${LANG_GERMAN} \
"Typisch"
LangString str_type_minimal ${LANG_GERMAN} \
"Minimal"
LangString str_type_full ${LANG_GERMAN} \
"Vollständig"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_GERMAN} \
"Vorherige Version deinstallieren"
LangString str_desc_old_ver ${LANG_GERMAN} \
"Vorherige installierte Versionen auf diesem System deinstallieren."
LangString str_section_exe ${LANG_GERMAN} \
"Vim GUI"
LangString str_desc_exe ${LANG_GERMAN} \
"Vim (Anwendung) und Laufzeitdateien (Dieser Teil ist zwingend \
erforderlich)."
LangString str_section_console ${LANG_GERMAN} \
"Vim Konsolenanwendung"
LangString str_desc_console ${LANG_GERMAN} \
"Konsolenversion von Vim."
LangString str_section_batch ${LANG_GERMAN} \
".bat-Dateien erstellen"
LangString str_desc_batch ${LANG_GERMAN} \
".bat-Dateien erstellen, um Vim in der Konsole auszuführen."
LangString str_group_icons ${LANG_GERMAN} \
"Vim-Verknüpfungen erstellen"
LangString str_desc_icons ${LANG_GERMAN} \
"Verknüpfungen mit Vim für einfachen Aufruf erstellen."
LangString str_section_desktop ${LANG_GERMAN} \
"Auf dem Desktop"
LangString str_desc_desktop ${LANG_GERMAN} \
"Icons für GVim auf dem Desktop erstellen."
LangString str_section_start_menu ${LANG_GERMAN} \
"Im Startmenü"
LangString str_desc_start_menu ${LANG_GERMAN} \
"Vim im Programmverzeichnis des Startmenüs hinzufügen."
#LangString str_section_quick_launch ${LANG_GERMAN} \
# "In der Schnellstartleiste"
#LangString str_desc_quick_launch ${LANG_GERMAN} \
# "Verknüpfung zu Vim in der Schnellstartleiste ablegen."
LangString str_section_edit_with ${LANG_GERMAN} \
"Vim zum Kontextmenü hinzufügen"
LangString str_desc_edit_with ${LANG_GERMAN} \
"Vim in das $\"Öffnen mit...$\"-Kontextmenü einfügen."
#LangString str_section_edit_with32 ${LANG_GERMAN} \
# "32-Bit-Version"
#LangString str_desc_edit_with32 ${LANG_GERMAN} \
# "Vim in das $\"Öffnen mit...$\"-Kontextmenü \
# für 32-Bit-Anwendungen integrieren."
#LangString str_section_edit_with64 ${LANG_GERMAN} \
# "64-Bit-Version"
#LangString str_desc_edit_with64 ${LANG_GERMAN} \
# "Vim in das $\"Öffnen mit...$\"-Kontextmenü \
# für 64-Bit-Anwendungen integrieren."
LangString str_section_vim_rc ${LANG_GERMAN} \
"Standard-Konfigurationsdatei erstellen"
LangString str_desc_vim_rc ${LANG_GERMAN} \
"Eine Standard-Konfigurationsdatei (_vimrc) erstellen, \
falls noch keine existiert."
LangString str_group_plugin ${LANG_GERMAN} \
"Plugin-Verzeichnisse anlegen"
LangString str_desc_plugin ${LANG_GERMAN} \
"Plugin-Verzeichnisse anlegen. Plugins erlauben es, Vim \
um zusätzliche Funktionen zu erweitern."
LangString str_section_plugin_home ${LANG_GERMAN} \
"Privat"
LangString str_desc_plugin_home ${LANG_GERMAN} \
"Erstelle Plugin-Verzeichnis im HOME Benutzerverzeichnis."
LangString str_section_plugin_vim ${LANG_GERMAN} \
"Freigegeben"
LangString str_desc_plugin_vim ${LANG_GERMAN} \
"Plugin-Verzeichnisse im Vim-Installationsverzeichnis erstellen. Diese werden \
für alle Benutzer dieses Systems genutzt."
LangString str_section_vis_vim ${LANG_GERMAN} \
"VisVim-Erweiterung"
LangString str_desc_vis_vim ${LANG_GERMAN} \
"VisVim-Erweiterung zur Integration in Microsoft Visual Studio."
LangString str_section_nls ${LANG_GERMAN} \
"Unterstützung für andere Sprachen"
LangString str_desc_nls ${LANG_GERMAN} \
"Dateien zur Unterstützung anderer Sprachen als Englisch installieren."
LangString str_unsection_register ${LANG_GERMAN} \
"Vim deinstallieren"
LangString str_desc_unregister ${LANG_GERMAN} \
"Vim vom System entfernen."
LangString str_unsection_exe ${LANG_GERMAN} \
"Vim-Anwendung und Laufzeitdateien entfernen"
LangString str_desc_rm_exe ${LANG_GERMAN} \
"Alle Vim-Anwendungen und Laufzeitdateien von diesem System entfernen."
LangString str_ungroup_plugin ${LANG_GERMAN} \
"Entferne Plugin-Verzeichnisse"
LangString str_desc_rm_plugin ${LANG_GERMAN} \
"Entferne Plugin-Verzeichnisse, falls sie leer sind."
LangString str_unsection_plugin_home ${LANG_GERMAN} \
"Privat"
LangString str_desc_rm_plugin_home ${LANG_GERMAN} \
"Entfernt die Plugin-Verzeichnisse aus dem HOME Benutzerverzeichnis."
LangString str_unsection_plugin_vim ${LANG_GERMAN} \
"Freigegeben"
LangString str_desc_rm_plugin_vim ${LANG_GERMAN} \
"Entfernt das Plugin-Verzeichnis aus dem Vim-Installationsverzeichnis."
LangString str_unsection_rootdir ${LANG_GERMAN} \
"Entferne Vim Installationsverzeichnis"
LangString str_desc_rm_rootdir ${LANG_GERMAN} \
"Entfernt das Vim Installationsverzeichnis. Es enthält die Vim Konfigurationsdateien!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_GERMAN} \
# "$vim_old_ver_count Vim-Versionen auf diesem System gefunden..$\r$\n\
# Dieser Installer kann maximal ${VIM_MAX_OLD_VER} Versionen \
# handhaben.$\r$\n\
# Bitte alte Versionen entfernen und noch einmal probieren."
#LangString str_msg_invalid_root ${LANG_GERMAN} \
# "Nicht gültiges Installationsverzeichnis: $vim_install_root!$\r$\n\
# Der Pfad muss auf $\"vim$\" enden."
#LangString str_msg_bin_mismatch ${LANG_GERMAN} \
# "Pfaddiskrepanz!$\r$\n$\r$\n\
# Erwarte Anwendungsverzeichnis $\"$vim_bin_path$\",$\r$\n\
# aber fand Anwendungspfad $\"$INSTDIR$\" vor."
#LangString str_msg_vim_running ${LANG_GERMAN} \
# "Laufender Vim-Prozess erkannt.$\r$\n\
# Bitte alle laufenden Vim-Prozesse vor dem Fortfahren beenden."
#LangString str_msg_register_ole ${LANG_GERMAN} \
# "Versuche OLE-Registrierung durchzuführen."
#LangString str_msg_unreg_ole ${LANG_GERMAN} \
# "Versuche OLE-Registrierung zu löschen."
#LangString str_msg_rm_start ${LANG_GERMAN} \
# "Deinstalliere die folgende Version:"
#LangString str_msg_rm_fail ${LANG_GERMAN} \
# "Deinstallation der Version fehlgeschlagen:"
#LangString str_msg_no_rm_key ${LANG_GERMAN} \
# "Deinstallationsschlüssel in der Registrierungsdatenbank nicht gefunden."
#LangString str_msg_no_rm_reg ${LANG_GERMAN} \
# "Kein Uninstaller in der Registrierungsdatenbank gefunden."
#LangString str_msg_no_rm_exe ${LANG_GERMAN} \
# "Kein Zugriff auf den Uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_GERMAN} \
# "Fehler beim Kopieren des Uninstallers in ein temporäres Verzeichnis."
#LangString str_msg_rm_run_fail ${LANG_GERMAN} \
# "Fehler beim Aufruf des Uninstallers."
#LangString str_msg_abort_install ${LANG_GERMAN} \
# "Installation wird abgebrochen."
LangString str_msg_install_fail ${LANG_GERMAN} \
"Installation fehlerhaft beendet."
LangString str_msg_rm_exe_fail ${LANG_GERMAN} \
"Einige Dateien im Pfad $0 konnten nicht gelöscht werden!$\r$\n\
Diese Dateien müssen manuell gelöscht werden."
#LangString str_msg_rm_root_fail ${LANG_GERMAN} \
# "Achtung: Kann Verzeichnis $\"$vim_install_root$\" nicht entfernen, \
# weil es nicht leer ist!"
LangString str_msg_uninstalling ${LANG_GERMAN} \
"Deinstalliere alte Version..."
LangString str_msg_registering ${LANG_GERMAN} \
"Registriere..."
LangString str_msg_unregistering ${LANG_GERMAN} \
"Entferne Registrierung..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_GERMAN} \
"Wähle _vimrc Konfigurationsoptionen"
LangString str_vimrc_page_subtitle ${LANG_GERMAN} \
"Wähle Einstellungen zur Kompatibilität, Tastatur und Maus."
LangString str_msg_compat_title ${LANG_GERMAN} \
" Vi / Vim Verhalten "
LangString str_msg_compat_desc ${LANG_GERMAN} \
"&Kompatibilität und Erweiterungen"
LangString str_msg_compat_vi ${LANG_GERMAN} \
"Vi-kompatibel"
LangString str_msg_compat_vim ${LANG_GERMAN} \
"Vim Original"
LangString str_msg_compat_defaults ${LANG_GERMAN} \
"Vim mit einigen Erweiterungen (Lädt defaults.vim)"
LangString str_msg_compat_all ${LANG_GERMAN} \
"Vim mit allen Erweiterungen (Lädt vimrc_example.vim) (Standard)"
LangString str_msg_keymap_title ${LANG_GERMAN} \
" Mappings für Windows Standard Tastenkombinationen "
LangString str_msg_keymap_desc ${LANG_GERMAN} \
"&Einige Tasten umkonfigurieren (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_GERMAN} \
"Keine Tasten umkonfigurieren (Standard)"
LangString str_msg_keymap_windows ${LANG_GERMAN} \
"Einige Tasten umkonfigurieren"
LangString str_msg_mouse_title ${LANG_GERMAN} \
" Maus "
LangString str_msg_mouse_desc ${LANG_GERMAN} \
"&Verhalten der linken und rechten Buttons"
LangString str_msg_mouse_default ${LANG_GERMAN} \
"Rechts: Popup Menü, Links: Visueller Modus (Standard)"
LangString str_msg_mouse_windows ${LANG_GERMAN} \
"Rechts: Popup Menü, Links: Auswahl Modus (Windows)"
LangString str_msg_mouse_unix ${LANG_GERMAN} \
"Rechts: Auswahl erweitern, Links: Visueller Modus (Unix)"
+283
View File
@@ -0,0 +1,283 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# italian.nsi : Italian language strings for gvim NSIS installer.
#
# Locale ID : 1040
# Locale Name : it
# fileencoding : UTF-8
# Author : Antonio Colombo
!insertmacro MUI_LANGUAGE "Italian"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_ITALIAN} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_ITALIAN} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_ITALIAN} \
# "Cartella d'installazione (il nome deve finire con $\"vim$\")"
LangString str_show_readme ${LANG_ITALIAN} \
"Visualizza README al termine dell'installazione"
# Install types:
LangString str_type_typical ${LANG_ITALIAN} \
"Tipica"
LangString str_type_minimal ${LANG_ITALIAN} \
"Minima"
LangString str_type_full ${LANG_ITALIAN} \
"Completa"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_ITALIAN} \
"Disinstalla versione/i esistente/i"
LangString str_desc_old_ver ${LANG_ITALIAN} \
"Disinstalla versione/i esistente/i di Vim dal vostro sistema."
LangString str_section_exe ${LANG_ITALIAN} \
"Vim GUI e file di supporto"
LangString str_desc_exe ${LANG_ITALIAN} \
"Vim GUI programmi e file di supporto. Questa componente è indispensabile."
LangString str_section_console ${LANG_ITALIAN} \
"Vim console (vim.exe per MS-DOS)"
LangString str_desc_console ${LANG_ITALIAN} \
"Versione console di Vim (vim.exe)."
LangString str_section_batch ${LANG_ITALIAN} \
"Crea file di invocazione (MS-DOS) .bat"
LangString str_desc_batch ${LANG_ITALIAN} \
"Crea file di invocazione .bat per varianti di Vim nella directory \
di Windows, per utilizzo da linea di comando (MS-DOS)."
LangString str_group_icons ${LANG_ITALIAN} \
"Crea icone per Vim"
LangString str_desc_icons ${LANG_ITALIAN} \
"Crea icone per Vim in vari posti, per rendere facile l'accesso."
LangString str_section_desktop ${LANG_ITALIAN} \
"Sul Desktop"
LangString str_desc_desktop ${LANG_ITALIAN} \
"Crea icone per programma gVim sul desktop."
LangString str_section_start_menu ${LANG_ITALIAN} \
"Nella cartella del menù START"
LangString str_desc_start_menu ${LANG_ITALIAN} \
"Aggiungi Vim alle cartelle del menù START."
#LangString str_section_quick_launch ${LANG_ITALIAN} \
# "Nella barra di Avvio Veloce"
#LangString str_desc_quick_launch ${LANG_ITALIAN} \
# "Aggiungi un puntatore a Vim nella barra di Avvio Veloce."
LangString str_section_edit_with ${LANG_ITALIAN} \
"Aggiungi Vim al Menù Contestuale"
LangString str_desc_edit_with ${LANG_ITALIAN} \
"Aggiungi Vim alla lista contestuale $\"Apri con...$\"."
#LangString str_section_edit_with32 ${LANG_ITALIAN} \
# "Versione a 32-bit"
#LangString str_desc_edit_with32 ${LANG_ITALIAN} \
# "Aggiungi Vim alla lista contestuale $\"Apri con...$\" \
# per applicazioni a 32-bit."
#LangString str_section_edit_with64 ${LANG_ITALIAN} \
# "Versione a 64-bit"
#LangString str_desc_edit_with64 ${LANG_ITALIAN} \
# "Aggiungi Vim alla lista contestuale $\"Apri con...$\" \
# per applicazioni a 64-bit."
LangString str_section_vim_rc ${LANG_ITALIAN} \
"Crea configurazione di default"
LangString str_desc_vim_rc ${LANG_ITALIAN} \
"Crea un file configurazione di default (_vimrc) se non \
ne esiste già uno."
LangString str_group_plugin ${LANG_ITALIAN} \
"Crea directory per plugin"
LangString str_desc_plugin ${LANG_ITALIAN} \
"Crea directory per plugin. Consentono di aggiungere funzionalità \
a Vim mettendo file in una di queste directory."
LangString str_section_plugin_home ${LANG_ITALIAN} \
"Private"
LangString str_desc_plugin_home ${LANG_ITALIAN} \
"Crea directory per plugin nella directory HOME."
LangString str_section_plugin_vim ${LANG_ITALIAN} \
"Condivise"
LangString str_desc_plugin_vim ${LANG_ITALIAN} \
"Crea directory per plugin nella directory di installazione di Vim \
per uso da parte di tutti gli utenti di questo sistema."
LangString str_section_vis_vim ${LANG_ITALIAN} \
"Estensione VisVim"
LangString str_desc_vis_vim ${LANG_ITALIAN} \
"Estensione VisVim per integrazione con Microsoft Visual Studio."
LangString str_section_nls ${LANG_ITALIAN} \
"Supporto Multilingue (NLS)"
LangString str_desc_nls ${LANG_ITALIAN} \
"Installa file per supportare messaggi in diverse lingue."
LangString str_unsection_register ${LANG_ITALIAN} \
"Togli Vim dal Registry"
LangString str_desc_unregister ${LANG_ITALIAN} \
"Togli Vim dal Registry di configurazione sistema."
LangString str_unsection_exe ${LANG_ITALIAN} \
"Cancella programmi/file di supporto Vim"
LangString str_desc_rm_exe ${LANG_ITALIAN} \
"Cancella tutti i programmi/file di supporto di Vim."
LangString str_ungroup_plugin ${LANG_ITALIAN} \
"Cancella le directory per plugin"
LangString str_desc_rm_plugin ${LANG_ITALIAN} \
"Cancella le directory per plugin se sono vuote."
LangString str_unsection_plugin_home ${LANG_ITALIAN} \
"Private"
LangString str_desc_rm_plugin_home ${LANG_ITALIAN} \
"Cancella le directory per plugin dalla directory HOME."
LangString str_unsection_plugin_vim ${LANG_ITALIAN} \
"Condivise"
LangString str_desc_rm_plugin_vim ${LANG_ITALIAN} \
"Cancella le directory per plugin dalla directory di installazione di Vim."
LangString str_unsection_rootdir ${LANG_ITALIAN} \
"Cancella la directory di installazione di Vim"
LangString str_desc_rm_rootdir ${LANG_ITALIAN} \
"Cancella la directory di installazione di Vim. Contiene i vostri file di configurazione!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_ITALIAN} \
# "Trovate $vim_old_ver_count versioni di Vim sul vostro sistema.$\r$\n\
# Questo programma di installazione può gestire solo \
# ${VIM_MAX_OLD_VER} versioni.$\r$\n\
# Disinstallate qualche versione precedente e ricominciate."
#LangString str_msg_invalid_root ${LANG_ITALIAN} \
# "Nome di directory di installazione non valida: $vim_install_root!$\r$\n\
# Dovrebbe terminare con $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_ITALIAN} \
# "Conflitto nella directory di installazione!$\r$\n$\r$\n\
# Cartella di installazione dev'essere $\"$vim_bin_path$\",$\r$\n\
# ma il sistema segnala invece $\"$INSTDIR$\"."
#LangString str_msg_vim_running ${LANG_ITALIAN} \
# "Vim ancora in esecuzione sul vostro sistema.$\r$\n\
# Chiudete tutte le sessioni attive di Vim per continuare."
#LangString str_msg_register_ole ${LANG_ITALIAN} \
# "Tentativo di registrazione di Vim con OLE. \
# Non c'è messaggio che indica se è riuscito o no."
#LangString str_msg_unreg_ole ${LANG_ITALIAN} \
# "Tentativo di togliere dal Registry Vim con OLE. \
# Non c'è messaggio che indica se è riuscito o no."
#LangString str_msg_rm_start ${LANG_ITALIAN} \
# "Disinstallazione della seguente versione:"
#LangString str_msg_rm_fail ${LANG_ITALIAN} \
# "Disinstallazione non riuscita per la seguente versione:"
#LangString str_msg_no_rm_key ${LANG_ITALIAN} \
# "Non riesco a trovare chiave di disinstallazione nel Registry."
#LangString str_msg_no_rm_reg ${LANG_ITALIAN} \
# "Non riesco a trovare programma disinstallazione nel Registry."
#LangString str_msg_no_rm_exe ${LANG_ITALIAN} \
# "Non riesco a trovare programma disinstallazione."
#LangString str_msg_rm_copy_fail ${LANG_ITALIAN} \
# "Non riesco a copiare programma disinstallazione a una \
# directory temporanea."
#LangString str_msg_rm_run_fail ${LANG_ITALIAN} \
# "Non riesco a eseguire programma disinstallazione."
#LangString str_msg_abort_install ${LANG_ITALIAN} \
# "Il programma di disinstallazione verrà chiuso senza aver fatto nulla."
LangString str_msg_install_fail ${LANG_ITALIAN} \
"Installazione non riuscita. Miglior fortuna alla prossima!"
LangString str_msg_rm_exe_fail ${LANG_ITALIAN} \
"Alcuni file in $0 non sono stati cancellati!$\r$\n\
Dovreste cancellarli voi stessi."
#LangString str_msg_rm_root_fail ${LANG_ITALIAN} \
# "AVVISO: Non posso cancellare $\"$vim_install_root$\", non è vuota!"
LangString str_msg_uninstalling ${LANG_ITALIAN} \
"Sto disinstallando la vecchia versione..."
LangString str_msg_registering ${LANG_ITALIAN} \
"Sto aggiungendo Vim al Registry..."
LangString str_msg_unregistering ${LANG_ITALIAN} \
"Sto togliendo Vim dal Registry..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_ITALIAN} \
"Scelta impostazioni _vimrc"
LangString str_vimrc_page_subtitle ${LANG_ITALIAN} \
"Scelta impostazioni per funzionalità ulteriori, tastiera e mouse."
LangString str_msg_compat_title ${LANG_ITALIAN} \
" comportamento come Vi / Vim "
LangString str_msg_compat_desc ${LANG_ITALIAN} \
"&Compatibilità e funzionalità ulteriori"
LangString str_msg_compat_vi ${LANG_ITALIAN} \
"Compatibile con Vi"
LangString str_msg_compat_vim ${LANG_ITALIAN} \
"Vim originale"
LangString str_msg_compat_defaults ${LANG_ITALIAN} \
"Vim con alcune funzionalità ulteriori (esecuzione defaults.vim)"
LangString str_msg_compat_all ${LANG_ITALIAN} \
"Vim con tutte le funzionalità ulteriori (esecuzione vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_ITALIAN} \
" Mappature "
LangString str_msg_keymap_desc ${LANG_ITALIAN} \
"&Rimappatura di alcuni tasti per Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc.)"
LangString str_msg_keymap_default ${LANG_ITALIAN} \
"Non effettuare rimappature di tasti (Default)"
LangString str_msg_keymap_windows ${LANG_ITALIAN} \
"Rimappare solo alcuni tasti"
LangString str_msg_mouse_title ${LANG_ITALIAN} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_ITALIAN} \
"&Comportamento dei pulsanti destro e sinistro"
LangString str_msg_mouse_default ${LANG_ITALIAN} \
"Destro: popup menu, Sinistro: modalità visuale (Default)"
LangString str_msg_mouse_windows ${LANG_ITALIAN} \
"Destro: popup menu, Sinistro: seleziona modalità (Windows)"
LangString str_msg_mouse_unix ${LANG_ITALIAN} \
"Destro: estende selezione, Sinistro: modalità visuale (Unix)"
+287
View File
@@ -0,0 +1,287 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# japanese.nsi: Japanese language strings for gvim NSIS installer.
#
# Locale ID : 1041
# fileencoding : UTF-8
# Author : Ken Takata
!insertmacro MUI_LANGUAGE "Japanese"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_JAPANESE} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_JAPANESE} \
"$(^Name) Uninstall"
# Workarounds for NSIS Japanese translation. The messages are too long.
# These should be better to be fixed by the NSIS upstream.
LangString ^SpaceAvailable ${LANG_JAPANESE} \
"利用可能なディスク容量:"
LangString ^SpaceRequired ${LANG_JAPANESE} \
"必要なディスク容量:"
# Fix another NSIS Japanese translation. The access key was missing.
LangString ^InstallBtn ${LANG_JAPANESE} \
"インストール(&I)"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_JAPANESE} \
# "Destination Folder (Must end with $\"vim$\")"
LangString str_show_readme ${LANG_JAPANESE} \
"インストール完了後に README を表示する"
# Install types:
LangString str_type_typical ${LANG_JAPANESE} \
"通常"
LangString str_type_minimal ${LANG_JAPANESE} \
"最小"
LangString str_type_full ${LANG_JAPANESE} \
"全て"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_JAPANESE} \
"既存のバージョンをアンインストール"
LangString str_desc_old_ver ${LANG_JAPANESE} \
"すでにインストールされている Vim をシステムから削除します。"
LangString str_section_exe ${LANG_JAPANESE} \
"Vim GUI とランタイムファイル"
LangString str_desc_exe ${LANG_JAPANESE} \
"Vim GUI 実行ファイルとラインタイムファイル。このコンポーネントは必須です。"
LangString str_section_console ${LANG_JAPANESE} \
"Vim コンソールプログラム"
LangString str_desc_console ${LANG_JAPANESE} \
"コンソール版の Vim (vim.exe)。"
LangString str_section_batch ${LANG_JAPANESE} \
".bat ファイルを作成"
LangString str_desc_batch ${LANG_JAPANESE} \
"コマンドラインから Vim と関連コマンドを実行できるように、.bat ファイルを Windows ディレクトリに作成します。"
LangString str_group_icons ${LANG_JAPANESE} \
"Vim のアイコンを作成"
LangString str_desc_icons ${LANG_JAPANESE} \
"Vim を簡単に実行できるように、いくつかの場所にアイコンを作成します。"
LangString str_section_desktop ${LANG_JAPANESE} \
"デスクトップ上"
LangString str_desc_desktop ${LANG_JAPANESE} \
"gVim 実行ファイルのアイコンをデスクトップ上に作成します。"
LangString str_section_start_menu ${LANG_JAPANESE} \
"スタートメニューのプログラムフォルダー上"
LangString str_desc_start_menu ${LANG_JAPANESE} \
"Vim のアイコンをスタートメニューのプログラムフォルダー上に作成します。"
#LangString str_section_quick_launch ${LANG_JAPANESE} \
# "In the Quick Launch Bar"
#LangString str_desc_quick_launch ${LANG_JAPANESE} \
# "Add Vim shortcut in the quick launch bar."
LangString str_section_edit_with ${LANG_JAPANESE} \
"Vim のコンテキストメニューを追加"
LangString str_desc_edit_with ${LANG_JAPANESE} \
"$\"Vimで編集する$\" をコンテキストメニューに追加します"
#LangString str_section_edit_with32 ${LANG_JAPANESE} \
# "32-bit Version"
#LangString str_desc_edit_with32 ${LANG_JAPANESE} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 32-bit applications."
#LangString str_section_edit_with64 ${LANG_JAPANESE} \
# "64-bit Version"
#LangString str_desc_edit_with64 ${LANG_JAPANESE} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 64-bit applications."
LangString str_section_vim_rc ${LANG_JAPANESE} \
"既定のコンフィグを作成"
LangString str_desc_vim_rc ${LANG_JAPANESE} \
"もし無ければ、既定のコンフィグファイル (_vimrc) を作成します。"
LangString str_group_plugin ${LANG_JAPANESE} \
"プラグインディレクトリを作成"
LangString str_desc_plugin ${LANG_JAPANESE} \
"プラグインディレクトリを作成します。そこにプラグインファイルを置くことで Vim を拡張することができます。"
LangString str_section_plugin_home ${LANG_JAPANESE} \
"個人用"
LangString str_desc_plugin_home ${LANG_JAPANESE} \
"プラグインディレクトリをホームディレクトリに作成します。"
LangString str_section_plugin_vim ${LANG_JAPANESE} \
"共用"
LangString str_desc_plugin_vim ${LANG_JAPANESE} \
"プラグインディレクトリを Vim のインストールディレクトリに作成します。システムの全員で共有されます。"
LangString str_section_vis_vim ${LANG_JAPANESE} \
"VisVim 拡張"
LangString str_desc_vis_vim ${LANG_JAPANESE} \
"Microsoft Visual Studio 統合用の VisVim 拡張。"
LangString str_section_nls ${LANG_JAPANESE} \
"多言語サポート"
LangString str_desc_nls ${LANG_JAPANESE} \
"多言語サポート用のファイルをインストールします。"
LangString str_unsection_register ${LANG_JAPANESE} \
"Vim を登録解除"
LangString str_desc_unregister ${LANG_JAPANESE} \
"Vim をシステムから登録解除します。"
LangString str_unsection_exe ${LANG_JAPANESE} \
"Vim の実行ファイル/ランタイムファイルを削除"
LangString str_desc_rm_exe ${LANG_JAPANESE} \
"全ての Vim の実行ファイルとランタイムファイルを削除します。"
LangString str_ungroup_plugin ${LANG_JAPANESE} \
"プラグインディレクトリを削除"
LangString str_desc_rm_plugin ${LANG_JAPANESE} \
"プラグインディレクトリが空であればそれを削除します。"
LangString str_unsection_plugin_home ${LANG_JAPANESE} \
"個人用"
LangString str_desc_rm_plugin_home ${LANG_JAPANESE} \
"プラグインディレクトリをホームディレクトリから削除します。"
LangString str_unsection_plugin_vim ${LANG_JAPANESE} \
"共用"
LangString str_desc_rm_plugin_vim ${LANG_JAPANESE} \
"プラグインディレクトリを Vim のインストールディレクトリから削除します。"
LangString str_unsection_rootdir ${LANG_JAPANESE} \
"Vim のトップディレクトリを削除"
LangString str_desc_rm_rootdir ${LANG_JAPANESE} \
"Vim のトップディレクトリを削除します。あなたの Vim の設定ファイルも含まれていることに注意してください!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_JAPANESE} \
# "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_JAPANESE} \
# "Invalid install path: $vim_install_root!$\r$\n\
# It should end with $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_JAPANESE} \
# "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_JAPANESE} \
# "Vim is still running on your system.$\r$\n\
# Please close all instances of Vim before you continue."
#LangString str_msg_register_ole ${LANG_JAPANESE} \
# "Attempting to register Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_unreg_ole ${LANG_JAPANESE} \
# "Attempting to unregister Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_rm_start ${LANG_JAPANESE} \
# "Uninstalling the following version:"
#LangString str_msg_rm_fail ${LANG_JAPANESE} \
# "Fail to uninstall the following version:"
#LangString str_msg_no_rm_key ${LANG_JAPANESE} \
# "Cannot find uninstaller registry key."
#LangString str_msg_no_rm_reg ${LANG_JAPANESE} \
# "Cannot find uninstaller from registry."
#LangString str_msg_no_rm_exe ${LANG_JAPANESE} \
# "Cannot access uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_JAPANESE} \
# "Fail to copy uninstaller to temporary directory."
#LangString str_msg_rm_run_fail ${LANG_JAPANESE} \
# "Fail to run uninstaller."
#LangString str_msg_abort_install ${LANG_JAPANESE} \
# "Installer will abort."
LangString str_msg_install_fail ${LANG_JAPANESE} \
"インストールに失敗しました。次はうまくいくことを祈ります。"
LangString str_msg_rm_exe_fail ${LANG_JAPANESE} \
"$0 内の一部のファイルは削除できませんでした!$\r$\n\
手動で削除する必要があります。"
#LangString str_msg_rm_root_fail ${LANG_JAPANESE} \
# "WARNING: Cannot remove $\"$vim_install_root$\", it is not empty!"
LangString str_msg_uninstalling ${LANG_JAPANESE} \
"古いバージョンをアンインストールしています..."
LangString str_msg_registering ${LANG_JAPANESE} \
"登録中..."
LangString str_msg_unregistering ${LANG_JAPANESE} \
"登録解除中..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_JAPANESE} \
"_vimrc の設定を選んでください"
LangString str_vimrc_page_subtitle ${LANG_JAPANESE} \
"拡張やキーボード、マウスの設定を選んでください。"
LangString str_msg_compat_title ${LANG_JAPANESE} \
" Vi / Vim の動作 "
LangString str_msg_compat_desc ${LANG_JAPANESE} \
"互換性と拡張(&C)"
LangString str_msg_compat_vi ${LANG_JAPANESE} \
"Vi 互換"
LangString str_msg_compat_vim ${LANG_JAPANESE} \
"Vim 独自"
LangString str_msg_compat_defaults ${LANG_JAPANESE} \
"Vim 独自と多少の拡張 (defaults.vim を読み込み)"
LangString str_msg_compat_all ${LANG_JAPANESE} \
"Vim 独自と全ての拡張 (vimrc_example.vim を読み込み) (既定)"
LangString str_msg_keymap_title ${LANG_JAPANESE} \
" マッピング "
LangString str_msg_keymap_desc ${LANG_JAPANESE} \
"Windows用に一部のキーをリマップする(&R) (例: Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F など)"
LangString str_msg_keymap_default ${LANG_JAPANESE} \
"リマップしない (既定)"
LangString str_msg_keymap_windows ${LANG_JAPANESE} \
"リマップする"
LangString str_msg_mouse_title ${LANG_JAPANESE} \
" マウス "
LangString str_msg_mouse_desc ${LANG_JAPANESE} \
"右ボタンと左ボタンの動作(&B)"
LangString str_msg_mouse_default ${LANG_JAPANESE} \
"右:ポップアップメニュー、左:ビジュアルモード (既定)"
LangString str_msg_mouse_windows ${LANG_JAPANESE} \
"右:ポップアップメニュー、左:選択モード (Windows)"
LangString str_msg_mouse_unix ${LANG_JAPANESE} \
"右:選択を拡張、左:ビジュアルモード (Unix)"
+277
View File
@@ -0,0 +1,277 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# simpchinese.nsi: Simplified Chinese language strings for gvim NSIS
# installer.
#
# Locale ID : 2052
# fileencoding : UTF-8
# Author : Guopeng Wen
!insertmacro MUI_LANGUAGE "SimpChinese"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_SIMPCHINESE} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_SIMPCHINESE} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_SIMPCHINESE} \
# "安装路径 (必须以 vim 结尾)"
LangString str_show_readme ${LANG_SIMPCHINESE} \
"安装完成后显示 README 文件"
# Install types:
LangString str_type_typical ${LANG_SIMPCHINESE} \
"典型安装"
LangString str_type_minimal ${LANG_SIMPCHINESE} \
"最小安装"
LangString str_type_full ${LANG_SIMPCHINESE} \
"完全安装"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_SIMPCHINESE} \
"卸载旧版本"
LangString str_desc_old_ver ${LANG_SIMPCHINESE} \
"卸载系统上旧版本的 Vim。"
LangString str_section_exe ${LANG_SIMPCHINESE} \
"安装 Vim 图形界面"
LangString str_desc_exe ${LANG_SIMPCHINESE} \
"安装 Vim 图形界面及脚本。此为必选安装。"
LangString str_section_console ${LANG_SIMPCHINESE} \
"安装 Vim 命令行程序"
LangString str_desc_console ${LANG_SIMPCHINESE} \
"安装 Vim 命令行程序 (vim.exe)。该程序在命令行窗口中运行。"
LangString str_section_batch ${LANG_SIMPCHINESE} \
"安装批处理文件"
LangString str_desc_batch ${LANG_SIMPCHINESE} \
"为 Vim 的各种变体创建批处理程序,以便在命令行下运行 Vim。"
LangString str_group_icons ${LANG_SIMPCHINESE} \
"创建 Vim 图标"
LangString str_desc_icons ${LANG_SIMPCHINESE} \
"为 Vim 创建若干图标,以方便使用 Vim。"
LangString str_section_desktop ${LANG_SIMPCHINESE} \
"在桌面上"
LangString str_desc_desktop ${LANG_SIMPCHINESE} \
"在桌面上为 Vim 创建若干图标,以方便启动 Vim。"
LangString str_section_start_menu ${LANG_SIMPCHINESE} \
"在启动菜单的程序菜单下"
LangString str_desc_start_menu ${LANG_SIMPCHINESE} \
"在启动菜单的程序菜单下添加 Vim 组。适用于 Windows 95 及以上版本。"
#LangString str_section_quick_launch ${LANG_SIMPCHINESE} \
# "在快速启动启动栏中"
#LangString str_desc_quick_launch ${LANG_SIMPCHINESE} \
# "在快速启动栏中添加 Vim 图标。"
LangString str_section_edit_with ${LANG_SIMPCHINESE} \
"安装快捷菜单"
LangString str_desc_edit_with ${LANG_SIMPCHINESE} \
"将 Vim 添加到“打开方式”快捷菜单中。"
#LangString str_section_edit_with32 ${LANG_SIMPCHINESE} \
# "32 位版本"
#LangString str_desc_edit_with32 ${LANG_SIMPCHINESE} \
# "将 Vim 添加到 32 位程序的“打开方式”快捷菜单中。"
#LangString str_section_edit_with64 ${LANG_SIMPCHINESE} \
# "64 位版本"
#LangString str_desc_edit_with64 ${LANG_SIMPCHINESE} \
# "将 Vim 添加到 64 位程序的“打开方式”快捷菜单中。"
LangString str_section_vim_rc ${LANG_SIMPCHINESE} \
"创建缺省配置文件"
LangString str_desc_vim_rc ${LANG_SIMPCHINESE} \
"在安装目录下生成缺省的 Vim 配置文件(_vimrc)。\
如果该文件已经存在,则略过此项。"
LangString str_group_plugin ${LANG_SIMPCHINESE} \
"创建插件目录"
LangString str_desc_plugin ${LANG_SIMPCHINESE} \
"创建(空的)插件目录结构。插件目录用于安装 Vim 扩展插件,\
只要将文件复制到相关的子目录中即可。"
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} \
"公共插件目录"
LangString str_desc_plugin_vim ${LANG_SIMPCHINESE} \
"在 Vim 安装目录下创建(空的)插件目录结构,系统上所有用户都能使用安装在\
该目录下的扩展插件。"
LangString str_section_vis_vim ${LANG_SIMPCHINESE} \
"安装 VisVim 插件"
LangString str_desc_vis_vim ${LANG_SIMPCHINESE} \
"安装用于与微软 Microsoft Visual Studio 进行集成的 VisVim 插件。"
LangString str_section_nls ${LANG_SIMPCHINESE} \
"安装多语言支持"
LangString str_desc_nls ${LANG_SIMPCHINESE} \
"安装用于多语言支持的文件。"
LangString str_unsection_register ${LANG_SIMPCHINESE} \
"删除 Vim 系统配置"
LangString str_desc_unregister ${LANG_SIMPCHINESE} \
"删除和 Vim 相关的系统配置。"
LangString str_unsection_exe ${LANG_SIMPCHINESE} \
"删除 Vim 执行文件以及脚本"
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} \
"公共插件目录"
LangString str_desc_rm_plugin_vim ${LANG_SIMPCHINESE} \
"Remove the plugin directories from Vim install directory."
LangString str_unsection_rootdir ${LANG_SIMPCHINESE} \
"Remove the Vim root directory"
LangString str_desc_rm_rootdir ${LANG_SIMPCHINESE} \
"Remove the Vim root directory. It contains your Vim configuration files!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_SIMPCHINESE} \
# "您的系统上安装了 $vim_old_ver_count 个不同版本的 Vim$\r$\n\
# 但本安装程序最多只能处理 ${VIM_MAX_OLD_VER} 个版本。$\r$\n\
# 请您手工删除一些旧版本以后再运行本安装程序。"
#LangString str_msg_invalid_root ${LANG_SIMPCHINESE} \
# "安装路径“$vim_install_root”无效!$\r$\n\
# 该路径必须以 vim 结尾。"
#LangString str_msg_bin_mismatch ${LANG_SIMPCHINESE} \
# "Vim 执行程序安装路径异常!$\r$\n$\r$\n\
# 该版本 Vim 的执行程序安装路径应该是“$vim_bin_path”,$\r$\n\
# 而系统却指示该路径为“$INSTDIR”。"
#LangString str_msg_vim_running ${LANG_SIMPCHINESE} \
# "您的系统上仍有 Vim 在运行,$\r$\n\
# 请您在执行后续步骤前退出这些 Vim。"
#LangString str_msg_register_ole ${LANG_SIMPCHINESE} \
# "试图注册 Vim OLE 服务器。请注意无论成功与否都不再显示进一步的信息。"
#LangString str_msg_unreg_ole ${LANG_SIMPCHINESE} \
# "试图注销 Vim OLE 服务器。请注意无论成功与否都不再显示进一步的信息。"
#LangString str_msg_rm_start ${LANG_SIMPCHINESE} \
# "开始卸载以下版本:"
#LangString str_msg_rm_fail ${LANG_SIMPCHINESE} \
# "以下版本卸载失败:"
#LangString str_msg_no_rm_key ${LANG_SIMPCHINESE} \
# "找不到卸载程序的注册表键。"
#LangString str_msg_no_rm_reg ${LANG_SIMPCHINESE} \
# "在注册表中未找到卸载程序路径。"
#LangString str_msg_no_rm_exe ${LANG_SIMPCHINESE} \
# "找不到卸载程序。"
#LangString str_msg_rm_copy_fail ${LANG_SIMPCHINESE} \
# "无法将卸载程序复制到临时目录。"
#LangString str_msg_rm_run_fail ${LANG_SIMPCHINESE} \
# "执行卸载程序失败。"
#LangString str_msg_abort_install ${LANG_SIMPCHINESE} \
# "安装程序将退出。"
LangString str_msg_install_fail ${LANG_SIMPCHINESE} \
"安装失败。祝您下次好运。"
LangString str_msg_rm_exe_fail ${LANG_SIMPCHINESE} \
"目录“$0”下有部分文件删除失败!$\r$\n\
您只能手工删除该目录。"
#LangString str_msg_rm_root_fail ${LANG_SIMPCHINESE} \
# "警告:无法删除 Vim 安装目录“$vim_install_root”,\
# 该目录下仍有其他文件。"
LangString str_msg_uninstalling ${LANG_SIMPCHINESE} \
"Uninstalling the old version..."
LangString str_msg_registering ${LANG_SIMPCHINESE} \
"Registering..."
LangString str_msg_unregistering ${LANG_SIMPCHINESE} \
"Unregistering..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_SIMPCHINESE} \
"Choose _vimrc settings"
LangString str_vimrc_page_subtitle ${LANG_SIMPCHINESE} \
"Choose the settings for enhancement, keyboard and mouse."
LangString str_msg_compat_title ${LANG_SIMPCHINESE} \
" Vi / Vim behavior "
LangString str_msg_compat_desc ${LANG_SIMPCHINESE} \
"&Compatibility and enhancements"
LangString str_msg_compat_vi ${LANG_SIMPCHINESE} \
"Vi compatible"
LangString str_msg_compat_vim ${LANG_SIMPCHINESE} \
"Vim original"
LangString str_msg_compat_defaults ${LANG_SIMPCHINESE} \
"Vim with some enhancements (load defaults.vim)"
LangString str_msg_compat_all ${LANG_SIMPCHINESE} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_SIMPCHINESE} \
" Mappings "
LangString str_msg_keymap_desc ${LANG_SIMPCHINESE} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
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} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_SIMPCHINESE} \
"&Behavior of right and left buttons"
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)"
LangString str_msg_mouse_unix ${LANG_SIMPCHINESE} \
"Right: extends selection, Left: visual mode (Unix)"
+278
View File
@@ -0,0 +1,278 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# tradchinese.nsi: Traditional Chinese language strings for gvim NSIS
# installer.
#
# Locale ID : 1028
# fileencoding : UTF-8
# Author : Guopeng Wen
!insertmacro MUI_LANGUAGE "TradChinese"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_TRADCHINESE} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_TRADCHINESE} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_TRADCHINESE} \
# "安裝資料夾 (必須以 vim 結尾)"
LangString str_show_readme ${LANG_TRADCHINESE} \
"安裝完成後顯示 README 檔案"
# Install types:
LangString str_type_typical ${LANG_TRADCHINESE} \
"典型安裝"
LangString str_type_minimal ${LANG_TRADCHINESE} \
"最小安裝"
LangString str_type_full ${LANG_TRADCHINESE} \
"完全安裝"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_TRADCHINESE} \
"移除舊版本"
LangString str_desc_old_ver ${LANG_TRADCHINESE} \
"移除閣下電腦上舊版本的 Vim。"
LangString str_section_exe ${LANG_TRADCHINESE} \
"安裝 Vim 圖形界面程式"
LangString str_desc_exe ${LANG_TRADCHINESE} \
"安裝 Vim 圖形界面程式及腳本。此為必選安裝。"
LangString str_section_console ${LANG_TRADCHINESE} \
"安裝 Vim 命令行程式"
LangString str_desc_console ${LANG_TRADCHINESE} \
"安裝 Vim 命令行程式 (vim.exe)。該程式在控制臺窗口中運行。"
LangString str_section_batch ${LANG_TRADCHINESE} \
"安裝批次檔案"
LangString str_desc_batch ${LANG_TRADCHINESE} \
"為 Vim 的各種變體創建批次檔,以便在命令行下啟動 Vim。"
LangString str_group_icons ${LANG_TRADCHINESE} \
"建立 Vim 圖示"
LangString str_desc_icons ${LANG_TRADCHINESE} \
"建立若干 Vim 圖示,以便于使用 Vim。"
LangString str_section_desktop ${LANG_TRADCHINESE} \
"於桌面"
LangString str_desc_desktop ${LANG_TRADCHINESE} \
"建立若干 Vim 圖示於桌面上,以方便啟動 Vim。"
LangString str_section_start_menu ${LANG_TRADCHINESE} \
"於「開始」功能表的「程式」集"
LangString str_desc_start_menu ${LANG_TRADCHINESE} \
"在「開始」功能表的「程式」集中建立 Vim 啟動組。\
適用于 Windows 95 及以上版本。"
#LangString str_section_quick_launch ${LANG_TRADCHINESE} \
# "於快速啟動列"
#LangString str_desc_quick_launch ${LANG_TRADCHINESE} \
# "在快速啟動列中建立 Vim 圖示。"
LangString str_section_edit_with ${LANG_TRADCHINESE} \
"安裝快捷選單"
LangString str_desc_edit_with ${LANG_TRADCHINESE} \
"在「打開方式」快捷選單中添加 Vim 項。"
#LangString str_section_edit_with32 ${LANG_TRADCHINESE} \
# "32 位元版本"
#LangString str_desc_edit_with32 ${LANG_TRADCHINESE} \
# "在 32 位元程式的「打開方式」快捷選單中添加 Vim 項。"
#LangString str_section_edit_with64 ${LANG_TRADCHINESE} \
# "64 位元版本"
#LangString str_desc_edit_with64 ${LANG_TRADCHINESE} \
# "在 64 位元程式的「打開方式」快捷選單中添加 Vim 項。"
LangString str_section_vim_rc ${LANG_TRADCHINESE} \
"建立默認設定檔"
LangString str_desc_vim_rc ${LANG_TRADCHINESE} \
"在安裝資料夾下建立默認的 Vim 設定檔(_vimrc)。\
若該設定檔已經存在,則略過此項。"
LangString str_group_plugin ${LANG_TRADCHINESE} \
"建立插件資料夾"
LangString str_desc_plugin ${LANG_TRADCHINESE} \
"建立(空的)插件資料夾結構。插件資料夾用于安裝 Vim 的擴展插件,\
只要將檔案復制到相關的子資料夾中即可。"
LangString str_section_plugin_home ${LANG_TRADCHINESE} \
"建立插件資料夾"
LangString str_desc_plugin_home ${LANG_TRADCHINESE} \
"Create plugin directories in HOME directory."
LangString str_section_plugin_vim ${LANG_TRADCHINESE} \
"建立共享插件資料夾"
LangString str_desc_plugin_vim ${LANG_TRADCHINESE} \
"在 Vim 安裝資料夾下建立(空的)插件資料夾結構,電腦上所有用戶都能使用安裝\
在該資料夾里的擴展插件。"
LangString str_section_vis_vim ${LANG_TRADCHINESE} \
"安裝 VisVim 插件"
LangString str_desc_vis_vim ${LANG_TRADCHINESE} \
"VisVim 是用于與微軟 Microsoft Visual Studio 軟體進行整合的插件。"
LangString str_section_nls ${LANG_TRADCHINESE} \
"安裝本地語言支持"
LangString str_desc_nls ${LANG_TRADCHINESE} \
"安裝用于支持本地語言的檔案。"
LangString str_unsection_register ${LANG_TRADCHINESE} \
"移除 Vim 系統設定"
LangString str_desc_unregister ${LANG_TRADCHINESE} \
"移除與 Vim 相關的系統設定。"
LangString str_unsection_exe ${LANG_TRADCHINESE} \
"移除 Vim 程式及腳本"
LangString str_desc_rm_exe ${LANG_TRADCHINESE} \
"移除所有的 Vim 程式及腳本。"
LangString str_ungroup_plugin ${LANG_TRADCHINESE} \
"Remove plugin directories"
LangString str_desc_rm_plugin ${LANG_TRADCHINESE} \
"Remove the plugin directories if they are empty."
LangString str_unsection_plugin_home ${LANG_TRADCHINESE} \
"Private"
LangString str_desc_rm_plugin_home ${LANG_TRADCHINESE} \
"Remove the vimfiles directory in HOME directory."
LangString str_unsection_plugin_vim ${LANG_TRADCHINESE} \
"Shared"
LangString str_desc_rm_plugin_vim ${LANG_TRADCHINESE} \
"Remove the vimfiles directory in Vim install directory."
LangString str_unsection_rootdir ${LANG_TRADCHINESE} \
"Remove the Vim root directory"
LangString str_desc_rm_rootdir ${LANG_TRADCHINESE} \
"Remove the Vim root directory. It contains your Vim configuration files!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_TRADCHINESE} \
# "閣下的電腦上安裝了 $vim_old_ver_count 個不同版本的 Vim$\r$\n\
# 但是本安裝程式最多只能處理 ${VIM_MAX_OLD_VER} 個版本。$\r$\n\
# 煩請閣下手工移除一些版本以后再運行本安裝程式。"
#LangString str_msg_invalid_root ${LANG_TRADCHINESE} \
# "安裝資料夾「$vim_install_root」無效!$\r$\n\
# 該資料夾必須以「vim」結尾。"
#LangString str_msg_bin_mismatch ${LANG_TRADCHINESE} \
# "Vim 執行程式安裝路徑異常!$\r$\n$\r$\n\
# 該版本 Vim 的執行程式安裝路徑應該是「$vim_bin_path」,$\r$\n\
# 而系統卻指示該路徑為「$INSTDIR」。"
#LangString str_msg_vim_running ${LANG_TRADCHINESE} \
# "閣下的電腦上尚有正在運行之 Vim,$\r$\n\
# 煩請閣下在執行后續步驟前將其全部退出。"
#LangString str_msg_register_ole ${LANG_TRADCHINESE} \
# "試圖注冊 Vim OLE 伺服程式。請注意不論成功與否都不再顯示進一步的信息。"
#LangString str_msg_unreg_ole ${LANG_TRADCHINESE} \
# "試圖注銷 Vim OLE 伺服程式。請注意不論成功與否都不再顯示進一步的信息。"
#LangString str_msg_rm_start ${LANG_TRADCHINESE} \
# "正移除如下版本:"
#LangString str_msg_rm_fail ${LANG_TRADCHINESE} \
# "以下版本移除失敗:"
#LangString str_msg_no_rm_key ${LANG_TRADCHINESE} \
# "找不到反安裝程式的登錄檔入口。"
#LangString str_msg_no_rm_reg ${LANG_TRADCHINESE} \
# "在登錄檔中未找到反安裝程式路徑。"
#LangString str_msg_no_rm_exe ${LANG_TRADCHINESE} \
# "找不到反安裝程式。"
#LangString str_msg_rm_copy_fail ${LANG_TRADCHINESE} \
# "無法將法將反安裝程式复制到臨時目錄。"
#LangString str_msg_rm_run_fail ${LANG_TRADCHINESE} \
# "執行反安裝程式失敗。"
#LangString str_msg_abort_install ${LANG_TRADCHINESE} \
# "安裝程式將退出。"
LangString str_msg_install_fail ${LANG_TRADCHINESE} \
"安裝失敗。預祝下次好運。"
LangString str_msg_rm_exe_fail ${LANG_TRADCHINESE} \
"資料夾「$0」下有部分檔案未能移除!$\r$\n\
閣下只能手工移除該資料夾。"
#LangString str_msg_rm_root_fail ${LANG_TRADCHINESE} \
# "警告:無法刪除 Vim 安裝資料夾「$vim_install_root」,\
# 該資料夾下仍有其他檔案。"
LangString str_msg_uninstalling ${LANG_TRADCHINESE} \
"Uninstalling the old version..."
LangString str_msg_registering ${LANG_TRADCHINESE} \
"Registering..."
LangString str_msg_unregistering ${LANG_TRADCHINESE} \
"Unregistering..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_TRADCHINESE} \
"Choose _vimrc settings"
LangString str_vimrc_page_subtitle ${LANG_TRADCHINESE} \
"Choose the settings for enhancement, keyboard and mouse."
LangString str_msg_compat_title ${LANG_TRADCHINESE} \
" Vi / Vim behavior "
LangString str_msg_compat_desc ${LANG_TRADCHINESE} \
"&Compatibility and enhancements"
LangString str_msg_compat_vi ${LANG_TRADCHINESE} \
"Vi compatible"
LangString str_msg_compat_vim ${LANG_TRADCHINESE} \
"Vim original"
LangString str_msg_compat_defaults ${LANG_TRADCHINESE} \
"Vim with some enhancements (load defaults.vim)"
LangString str_msg_compat_all ${LANG_TRADCHINESE} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_TRADCHINESE} \
" Mappings "
LangString str_msg_keymap_desc ${LANG_TRADCHINESE} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_TRADCHINESE} \
"Do not remap keys (Default)"
LangString str_msg_keymap_windows ${LANG_TRADCHINESE} \
"Remap a few keys"
LangString str_msg_mouse_title ${LANG_TRADCHINESE} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_TRADCHINESE} \
"&Behavior of right and left buttons"
LangString str_msg_mouse_default ${LANG_TRADCHINESE} \
"Right: popup menu, Left: visual mode (Default)"
LangString str_msg_mouse_windows ${LANG_TRADCHINESE} \
"Right: popup menu, Left: select mode (Windows)"
LangString str_msg_mouse_unix ${LANG_TRADCHINESE} \
"Right: extends selection, Left: visual mode (Unix)"
-68
View File
@@ -1,68 +0,0 @@
[Settings]
NumFields=7
[Field 1]
Type=GroupBox
Left=0
Right=-1
Top=0
Bottom=53
Text=" Key remapping "
[Field 2]
Type=radiobutton
Text=Do not remap keys for Windows behavior (Default)
Left=10
Right=-10
Top=17
Bottom=25
State=1
Flags=GROUP
[Field 3]
Type=radiobutton
Text=Remap a few keys for Windows behavior (<C-V>, <C-C>, <C-A>, <C-S>, <C-F>, etc)
Left=10
Right=-10
Top=30
Bottom=47
State=0
Flags=NOTABSTOP
[Field 4]
Type=GroupBox
Left=0
Right=-1
Top=55
Bottom=-5
Text=" Mouse behavior "
[Field 5]
Type=radiobutton
Text=Right button extends selection, left button starts visual mode (Unix)
Left=10
Right=-5
Top=72
Bottom=80
State=0
Flags=GROUP
[Field 6]
Type=radiobutton
Text=Right button has a popup menu, left button starts select mode (Windows)
Left=10
Right=-5
Top=85
Bottom=93
State=0
Flags=NOTABSTOP
[Field 7]
Type=radiobutton
Text=Right button has a popup menu, left button starts visual mode (Default)
Left=10
Right=-5
Top=98
Bottom=106
State=1
Flags=NOTABSTOP
+62
View File
@@ -0,0 +1,62 @@
" Author: Antony Lee <anntzer.lee@gmail.com>
" Description: Helper functions for reStructuredText syntax folding
" Last Modified: 2018-12-29
function s:CacheRstFold()
if !g:rst_fold_enabled
return
endif
let closure = {'header_types': {}, 'max_level': 0, 'levels': {}}
function closure.Process(match) dict
let curline = getcurpos()[1]
if has_key(self.levels, curline - 1)
" For over+under-lined headers, the regex will match both at the
" overline and at the title itself; in that case, skip the second match.
return
endif
let lines = split(a:match, '\n')
let key = repeat(lines[-1][0], len(lines))
if !has_key(self.header_types, key)
let self.max_level += 1
let self.header_types[key] = self.max_level
endif
let self.levels[curline] = self.header_types[key]
endfunction
let save_cursor = getcurpos()
let save_mark = getpos("'[")
silent keeppatterns %s/\v^%(%(([=`:.'"~^_*+#-])\1+\n)?.{1,2}\n([=`:.'"~^_*+#-])\2+)|%(%(([=`:.''"~^_*+#-])\3{2,}\n)?.{3,}\n([=`:.''"~^_*+#-])\4{2,})$/\=closure.Process(submatch(0))/gn
call setpos('.', save_cursor)
call setpos("'[", save_mark)
let b:RstFoldCache = closure.levels
endfunction
function RstFold#GetRstFold()
if !g:rst_fold_enabled
return
endif
if !has_key(b:, 'RstFoldCache')
call s:CacheRstFold()
endif
if has_key(b:RstFoldCache, v:lnum)
return '>' . b:RstFoldCache[v:lnum]
else
return '='
endif
endfunction
function RstFold#GetRstFoldText()
if !g:rst_fold_enabled
return
endif
if !has_key(b:, 'RstFoldCache')
call s:CacheRstFold()
endif
let indent = repeat(' ', b:RstFoldCache[v:foldstart] - 1)
let thisline = getline(v:foldstart)
" For over+under-lined headers, skip the overline.
let text = thisline =~ '^\([=`:.''"~^_*+#-]\)\1\+$' ? getline(v:foldstart + 1) : thisline
return indent . text
endfunction
+33 -6
View File
@@ -1,7 +1,7 @@
" Vim completion script
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 Jun 20
" Last Change: 2018 Aug 20
let s:cpo_save = &cpo
set cpo&vim
@@ -72,8 +72,10 @@ function! ccomplete#Complete(findstart, base)
" Split item in words, keep empty word after "." or "->".
" "aa" -> ['aa'], "aa." -> ['aa', ''], "aa.bb" -> ['aa', 'bb'], etc.
" We can't use split, because we need to skip nested [...].
" "aa[...]" -> ['aa', '[...]'], "aa.bb[...]" -> ['aa', 'bb', '[...]'], etc.
let items = []
let s = 0
let arrays = 0
while 1
let e = match(base, '\.\|->\|\[', s)
if e < 0
@@ -107,6 +109,7 @@ function! ccomplete#Complete(findstart, base)
endwhile
let e += 1
call add(items, strpart(base, s, e - s))
let arrays += 1
let s = e
endif
endwhile
@@ -161,15 +164,26 @@ function! ccomplete#Complete(findstart, base)
endif
endif
let res = [{'match': match, 'tagline' : '', 'kind' : kind, 'info' : line}]
elseif len(items) == arrays + 1
" Completing one word and it's a local array variable: build tagline
" from declaration line
let match = items[0]
let kind = 'v'
let tagline = "\t/^" . line . '$/'
let res = [{'match': match, 'tagline' : tagline, 'kind' : kind, 'info' : line}]
else
" Completing "var.", "var.something", etc.
let res = s:Nextitem(strpart(line, 0, col), items[1:], 0, 1)
endif
endif
if len(items) == 1
if len(items) == 1 || len(items) == arrays + 1
" Only one part, no "." or "->": complete from tags file.
let tags = taglist('^' . base)
if len(items) == 1
let tags = taglist('^' . base)
else
let tags = taglist('^' . items[0] . '$')
endif
" Remove members, these can't appear without something in front.
call filter(tags, 'has_key(v:val, "kind") ? v:val["kind"] != "m" : 1')
@@ -516,11 +530,24 @@ function! s:StructMembers(typename, items, all)
endif
endif
" Skip over [...] items
let idx = 0
while 1
if idx >= len(a:items)
let target = '' " No further items, matching all members
break
endif
if a:items[idx][0] != '['
let target = a:items[idx]
break
endif
let idx += 1
endwhile
" Put matching members in matches[].
let matches = []
for l in qflist
let memb = matchstr(l['text'], '[^\t]*')
if memb =~ '^' . a:items[0]
if memb =~ '^' . target
" Skip matches local to another file.
if match(l['text'], "\tfile:") < 0 || bufnr('%') == bufnr(matchstr(l['text'], '\t\zs[^\t]*'))
let item = {'match': memb, 'tagline': l['text']}
@@ -540,8 +567,8 @@ function! s:StructMembers(typename, items, all)
endfor
if len(matches) > 0
" Skip over [...] items
let idx = 1
" Skip over next [...] items
let idx += 1
while 1
if idx >= len(a:items)
return matches " No further items, return the result.
+5 -3
View File
@@ -4,7 +4,7 @@
" plus CSS Speech Module <http://www.w3.org/TR/css3-speech/>
" Maintainer: Kao, Wei-Ko(othree) ( othree AT gmail DOT com )
" Original Author: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2016 Jan 11
" Last Change: 2018 Jul 02
let s:values = split("all additive-symbols align-content align-items align-self animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-repeat background-size block-size border border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-decoration-break box-shadow box-sizing break-after break-before break-inside caption-side clear clip clip-path color columns column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cue cue-before cue-after cursor direction display empty-cells fallback filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float font font-family font-feature-settings font-kerning font-language-override font-size font-size-adjust font-stretch font-style font-synthesis font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-ligatures font-variant-numeric font-variant-position font-weight grid grid-area grid-auto-columns grid-auto-flow grid-auto-position grid-auto-rows grid-column grid-column-start grid-column-end grid-row grid-row-start grid-row-end grid-template grid-template-areas grid-template-rows grid-template-columns height hyphens image-rendering image-resolution image-orientation ime-mode inline-size isolation justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-block-end margin-block-start margin-bottom margin-inline-end margin-inline-start margin-left margin-right margin-top marks mask mask-type max-block-size max-height max-inline-size max-width max-zoom min-block-size min-height min-inline-size min-width min-zoom mix-blend-mode negative object-fit object-position offset-block-end offset-block-start offset-inline-end offset-inline-start opacity order orientation orphans outline outline-color outline-offset outline-style outline-width overflow overflow-wrap overflow-x overflow-y pad padding padding-block-end padding-block-start padding-bottom padding-inline-end padding-inline-start padding-left padding-right padding-top page-break-after page-break-before page-break-inside pause-before pause-after pause perspective perspective-origin pointer-events position prefix quotes range resize rest rest-before rest-after right ruby-align ruby-merge ruby-position scroll-behavior scroll-snap-coordinate scroll-snap-destination scroll-snap-points-x scroll-snap-points-y scroll-snap-type scroll-snap-type-x scroll-snap-type-y shape-image-threshold shape-margin shape-outside speak speak-as suffix symbols system table-layout tab-size text-align text-align-last text-combine-upright text-decoration text-decoration-color text-decoration-line text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-transform text-underline-position top touch-action transform transform-box transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi unicode-range user-zoom vertical-align visibility voice-balance voice-duration voice-family voice-pitch voice-rate voice-range voice-stress voice-volume white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index zoom")
@@ -19,7 +19,6 @@ function! csscomplete#CompleteCSS(findstart, base)
while start >= 0 && line[start - 1] =~ '\%(\k\|-\)'
let start -= 1
endwhile
let b:after = line[compl_begin :]
let b:compl_context = line[0:compl_begin]
return start
endif
@@ -37,11 +36,14 @@ function! csscomplete#CompleteCSS(findstart, base)
" 5. if @ complete at-rule
" 6. if ! complete important
if exists("b:compl_context")
let line = getline('.')
let compl_begin = col('.') - 2
let after = line[compl_begin:]
let line = b:compl_context
let after = b:after
unlet! b:compl_context
else
let line = a:base
let after = ''
endif
let res = []
+15 -3
View File
@@ -1,7 +1,7 @@
" Vim functions for file type detection
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2017 Dec 05
" Last Change: 2019 Jan 18
" These functions are moved here from runtime/filetype.vim to make startup
" faster.
@@ -126,7 +126,7 @@ endfunc
" This function checks if one of the first ten lines start with a '@'. In
" that case it is probably a change file.
" If the first line starts with # or ! it's probably a ch file.
" If a line has "main", "include", "//" ir "/*" it's probably ch.
" If a line has "main", "include", "//" or "/*" it's probably ch.
" Otherwise CHILL is assumed.
func dist#ft#FTchange()
let lnum = 1
@@ -484,6 +484,10 @@ endfunc
" Called from filetype.vim and scripts.vim.
func dist#ft#SetFileTypeSH(name)
if did_filetype()
" Filetype was already detected
return
endif
if expand("<amatch>") =~ g:ft_ignore_pat
return
endif
@@ -531,6 +535,10 @@ endfunc
" as used for Tcl.
" Also called from scripts.vim, thus can't be local to this script.
func dist#ft#SetFileTypeShell(name)
if did_filetype()
" Filetype was already detected
return
endif
if expand("<amatch>") =~ g:ft_ignore_pat
return
endif
@@ -551,6 +559,10 @@ func dist#ft#SetFileTypeShell(name)
endfunc
func dist#ft#CSH()
if did_filetype()
" Filetype was already detected
return
endif
if exists("g:filetype_csh")
call dist#ft#SetFileTypeShell(g:filetype_csh)
elseif &shell =~ "tcsh"
@@ -632,7 +644,7 @@ endfunc
" Choose context, plaintex, or tex (LaTeX) based on these rules:
" 1. Check the first line of the file for "%&<format>".
" 2. Check the first 1000 non-comment lines for LaTeX or ConTeXt keywords.
" 3. Default to "latex" or to g:tex_flavor, can be set in user's vimrc.
" 3. Default to "plain" or to g:tex_flavor, can be set in user's vimrc.
func dist#ft#FTtex()
let firstline = getline(1)
if firstline =~ '^%&\s*\a\+'
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -22,8 +22,8 @@
if &cp || exists("g:loaded_netrw")
finish
endif
" netrw requires vim having patch 213; netrw will benefit from vim's having patch#656, too
if v:version < 704 || !has("patch213")
" netrw requires vim having patch 7.4.213; netrw will benefit from vim's having patch#656, too
if v:version < 704 || (v:version == 704 && !has("patch213"))
if !exists("s:needpatch213")
unsilent echomsg "***sorry*** this version of netrw requires vim v7.4 with patch 213"
endif
+18 -28
View File
@@ -1,35 +1,25 @@
" Vim support file to help with paste mappings and menus
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2017 Aug 30
" Last Change: 2019 Jan 27
" Define the string to use for items that are present both in Edit, Popup and
" Toolbar menu. Also used in mswin.vim and macmap.vim.
" Pasting blockwise and linewise selections is not possible in Insert and
" Visual mode without the +virtualedit feature. They are pasted as if they
" were characterwise instead. Add to that some tricks to leave the cursor in
" the right position, also for "gi".
if has("virtualedit")
let paste#paste_cmd = {'n': ":call paste#Paste()<CR>"}
let paste#paste_cmd['v'] = '"-c<Esc>' . paste#paste_cmd['n']
let paste#paste_cmd['i'] = "\<c-\>\<c-o>\"+gP"
let paste#paste_cmd = {'n': ":call paste#Paste()<CR>"}
let paste#paste_cmd['v'] = '"-c<Esc>' . paste#paste_cmd['n']
let paste#paste_cmd['i'] = "\<c-\>\<c-o>\"+gP"
func! paste#Paste()
let ove = &ve
set ve=all
normal! `^
if @+ != ''
normal! "+gP
endif
let c = col(".")
normal! i
if col(".") < c " compensate for i<ESC> moving the cursor left
normal! l
endif
let &ve = ove
endfunc
else
let paste#paste_cmd = {'n': "\"=@+.'xy'<CR>gPFx\"_2x"}
let paste#paste_cmd['v'] = '"-c<Esc>gix<Esc>' . paste#paste_cmd['n'] . '"_x'
let paste#paste_cmd['i'] = 'x<Esc>' . paste#paste_cmd['n'] . '"_s'
endif
func! paste#Paste()
let ove = &ve
set ve=all
normal! `^
if @+ != ''
normal! "+gP
endif
let c = col(".")
normal! i
if col(".") < c " compensate for i<ESC> moving the cursor left
normal! l
endif
let &ve = ove
endfunc
+69 -19
View File
@@ -3,7 +3,7 @@
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" URL: https://github.com/shawncplus/phpcomplete.vim
" Last Change: 2016 Oct 10
" Last Change: 2018 Oct 10
"
" OPTIONS:
"
@@ -146,6 +146,8 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
end
try
let eventignore = &eventignore
let &eventignore = 'all'
let winheight = winheight(0)
let winnr = winnr()
@@ -216,6 +218,7 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
endif
finally
silent! exec winnr.'resize '.winheight
let &eventignore = eventignore
endtry
endfunction
" }}}
@@ -1393,23 +1396,28 @@ function! phpcomplete#GetCallChainReturnType(classname_candidate, class_candidat
for classstructure in classcontents
let docblock_target_pattern = 'function\s\+&\?'.method.'\>\|\(public\|private\|protected\|var\).\+\$'.method.'\>\|@property.\+\$'.method.'\>'
let doc_str = phpcomplete#GetDocBlock(split(classstructure.content, '\n'), docblock_target_pattern)
if doc_str != ''
let return_type_hint = phpcomplete#GetFunctionReturnTypeHint(split(classstructure.content, '\n'), 'function\s\+&\?'.method.'\>')
if doc_str != '' || return_type_hint != ''
break
endif
endfor
if doc_str != ''
if doc_str != '' || return_type_hint != ''
let docblock = phpcomplete#ParseDocBlock(doc_str)
if has_key(docblock.return, 'type') || has_key(docblock.var, 'type') || len(docblock.properties) > 0
let type = has_key(docblock.return, 'type') ? docblock.return.type : has_key(docblock.var, 'type') ? docblock.var.type : ''
if has_key(docblock.return, 'type') || has_key(docblock.var, 'type') || len(docblock.properties) > 0 || return_type_hint != ''
if return_type_hint == ''
let type = has_key(docblock.return, 'type') ? docblock.return.type : has_key(docblock.var, 'type') ? docblock.var.type : ''
if type == ''
for property in docblock.properties
if property.description =~? method
let type = property.type
break
endif
endfor
endif
if type == ''
for property in docblock.properties
if property.description =~? method
let type = property.type
break
endif
endfor
endif
else
let type = return_type_hint
end
" there's a namespace in the type, threat the type as FQCN
if type =~ '\\'
@@ -1483,7 +1491,7 @@ function! phpcomplete#GetMethodStack(line) " {{{
continue
endif
" if it's looks like a string
" if it looks like a string
if current_char == "'" || current_char == '"'
" and it is not escaped
if prev_char != '\' || (prev_char == '\' && prev_prev_char == '\')
@@ -1587,9 +1595,11 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
elseif function_file != '' && filereadable(function_file)
let file_lines = readfile(function_file)
let docblock_str = phpcomplete#GetDocBlock(file_lines, 'function\s*&\?\<'.function_name.'\>')
let return_type_hint = phpcomplete#GetFunctionReturnTypeHint(file_lines, 'function\s*&\?'.function_name.'\>')
let docblock = phpcomplete#ParseDocBlock(docblock_str)
if has_key(docblock.return, 'type')
let classname_candidate = docblock.return.type
let type = has_key(docblock.return, 'type') ? docblock.return.type : return_type_hint
if type != ''
let classname_candidate = type
let [class_candidate_namespace, function_imports] = phpcomplete#GetCurrentNameSpace(file_lines)
" try to expand the classname of the returned type with the context got from the function's source file
@@ -1821,9 +1831,11 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
elseif function_file != '' && filereadable(function_file)
let file_lines = readfile(function_file)
let docblock_str = phpcomplete#GetDocBlock(file_lines, 'function\s*&\?\<'.function_name.'\>')
let return_type_hint = phpcomplete#GetFunctionReturnTypeHint(file_lines, 'function\s*&\?'.function_name.'\>')
let docblock = phpcomplete#ParseDocBlock(docblock_str)
if has_key(docblock.return, 'type')
let classname_candidate = docblock.return.type
let type = has_key(docblock.return, 'type') ? docblock.return.type : return_type_hint
if type != ''
let classname_candidate = type
let [class_candidate_namespace, function_imports] = phpcomplete#GetCurrentNameSpace(file_lines)
" try to expand the classname of the returned type with the context got from the function's source file
let [classname_candidate, class_candidate_namespace] = phpcomplete#ExpandClassName(classname_candidate, class_candidate_namespace, function_imports)
@@ -2413,6 +2425,44 @@ function! phpcomplete#ParseDocBlock(docblock) " {{{
endfunction
" }}}
function! phpcomplete#GetFunctionReturnTypeHint(sccontent, search)
let i = 0
let l = 0
let function_line_start = -1
let function_line_end = -1
let sccontent_len = len(a:sccontent)
let return_type = ''
while (i < sccontent_len)
let line = a:sccontent[i]
" search for a function declaration
if line =~? a:search
let l = i
let function_line_start = i
" now search for the first { where the function body starts
while l < sccontent_len
let line = a:sccontent[l]
if line =~? '\V{'
let function_line_end = l
break
endif
let l += 1
endwhile
break
endif
let i += 1
endwhile
" now grab the lines that holds the function declaration line
if function_line_start != -1 && function_line_end != -1
let function_line = join(a:sccontent[function_line_start :function_line_end], " ")
let class_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
let return_type = matchstr(function_line, '\c\s*:\s*\zs'.class_name_pattern.'\ze\s*{')
endif
return return_type
endfunction
function! phpcomplete#GetTypeFromDocBlockParam(docblock_type) " {{{
if a:docblock_type !~ '|'
return a:docblock_type
@@ -2572,7 +2622,7 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
" find kind flags from tags or built in methods for the objects we extracted
" they can be either classes, interfaces or namespaces, no other thing is importable in php
for [key, import] in items(imports)
" if theres a \ in the name we have it's definetly not a built in thing, look for tags
" if theres a \ in the name we have it's definitely not a built in thing, look for tags
if import.name =~ '\\'
let patched_ctags_detected = 0
let [classname, namespace_for_classes] = phpcomplete#ExpandClassName(import.name, '\', {})
+36 -21
View File
@@ -1,9 +1,9 @@
" Vim completion script
" Language: Ruby
" Maintainer: Mark Guzman <segfault@hasno.info>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Maintainer Version: 0.8.1
" Language: Ruby
" Maintainer: Mark Guzman <segfault@hasno.info>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jan 06
" ----------------------------------------------------------------------------
"
" Ruby IRB/Complete author: Keiju ISHITSUKA(keiju@ishitsuka.com)
@@ -103,7 +103,7 @@ function! s:GetBufferRubyEntity( name, type, ... )
endif
let curpos = getpos(".")
let [enum,ecol] = searchpairpos( crex, '', '\(end\|}\)', 'wr' )
let [enum,ecol] = searchpairpos( crex, '', '\(end\|}\)', 'W' )
call cursor(lastpos[1], lastpos[2])
if lnum > enum
@@ -253,15 +253,27 @@ class VimRubyCompletion
# {{{ buffer analysis magic
def load_requires
custom_paths = VIM::evaluate("get(g:, 'rubycomplete_load_paths', [])")
if !custom_paths.empty?
$LOAD_PATH.concat(custom_paths).uniq!
end
buf = VIM::Buffer.current
enum = buf.line_number
nums = Range.new( 1, enum )
nums.each do |x|
ln = buf[x]
begin
eval( "require %s" % $1 ) if /.*require\s*(.*)$/.match( ln )
rescue Exception
#ignore?
if /.*require_relative\s*(.*)$/.match( ln )
eval( "require %s" % File.expand_path($1) )
elsif /.*require\s*(["'].*?["'])/.match( ln )
eval( "require %s" % $1 )
end
rescue Exception => e
dprint e.inspect
end
end
end
@@ -344,8 +356,13 @@ class VimRubyCompletion
if x != cur_line
next if x == 0
ln = buf[x]
if /^\s*(module|class|def|include)\s+/.match(ln)
clscnt += 1 if $1 == "class"
is_const = false
if /^\s*(module|class|def|include)\s+/.match(ln) || is_const = /^\s*?[A-Z]([A-z]|[1-9])*\s*?[|]{0,2}=\s*?.+\s*?/.match(ln)
clscnt += 1 if /class|module/.match($1)
# We must make sure to load each constant only once to avoid errors
if is_const
ln.gsub!(/\s*?[|]{0,2}=\s*?/, '||=')
end
#dprint "\$1$1
classdef += "%s\n" % ln
classdef += "end\n" if /def\s+/.match(ln)
@@ -423,7 +440,6 @@ class VimRubyCompletion
return get_buffer_entity_list( "class" )
end
def load_rails
allow_rails = VIM::evaluate("exists('g:rubycomplete_rails') && g:rubycomplete_rails")
return if allow_rails.to_i.zero?
@@ -529,7 +545,6 @@ class VimRubyCompletion
ret += ActiveRecord::ConnectionAdapters::SchemaStatements.methods
end
return ret
end
@@ -587,11 +602,13 @@ class VimRubyCompletion
# {{{ main completion code
def self.preload_rails
a = VimRubyCompletion.new
require 'Thread'
Thread.new(a) do |b|
begin
b.load_rails
rescue
if VIM::evaluate("has('nvim')") == 0
require 'thread'
Thread.new(a) do |b|
begin
b.load_rails
rescue
end
end
end
a.load_rails
@@ -612,7 +629,6 @@ class VimRubyCompletion
want_gems = VIM::evaluate("get(g:, 'rubycomplete_load_gemfile')")
load_gems unless want_gems.to_i.zero?
input = VIM::Buffer.current.line
cpos = VIM::Window.current.cursor[1] - 1
@@ -666,6 +682,7 @@ class VimRubyCompletion
message = Regexp.quote($4)
dprint "const or cls 2 [recv: \'%s\', msg: \'%s\']" % [ receiver, message ]
load_buffer_class( receiver )
load_buffer_module( receiver )
begin
classes = eval("#{receiver}.constants")
#methods = eval("#{receiver}.methods")
@@ -786,7 +803,6 @@ class VimRubyCompletion
methods += Kernel.public_methods
end
include_object = VIM::evaluate("exists('g:rubycomplete_include_object') && g:rubycomplete_include_object")
methods = clean_sel( methods, message )
methods = (methods-Object.instance_methods) if include_object == "0"
@@ -829,5 +845,4 @@ let s:rubycomplete_rails_loaded = 0
call s:DefRuby()
"}}} ruby-side code
" vim:tw=78:sw=4:ts=8:et:fdm=marker:ft=vim:norl:
+6 -5
View File
@@ -22,6 +22,7 @@ function! spellfile#LoadFile(lang)
endif
return
endif
let lang = tolower(a:lang)
" If the URL changes we try all files again.
if s:spellfile_URL != g:spellfile_URL
@@ -30,13 +31,13 @@ function! spellfile#LoadFile(lang)
endif
" I will say this only once!
if has_key(s:donedict, a:lang . &enc)
if has_key(s:donedict, lang . &enc)
if &verbose
echomsg 'spellfile#LoadFile(): Tried this language/encoding before.'
endif
return
endif
let s:donedict[a:lang . &enc] = 1
let s:donedict[lang . &enc] = 1
" Find spell directories we can write in.
let [dirlist, dirchoices] = spellfile#GetDirChoices()
@@ -57,14 +58,14 @@ function! spellfile#LoadFile(lang)
endif
endif
let msg = 'Cannot find spell file for "' . a:lang . '" in ' . &enc
let msg = 'Cannot find spell file for "' . lang . '" in ' . &enc
let msg .= "\nDo you want me to try downloading it?"
if confirm(msg, "&Yes\n&No", 2) == 1
let enc = &encoding
if enc == 'iso-8859-15'
let enc = 'latin1'
endif
let fname = a:lang . '.' . enc . '.spl'
let fname = lang . '.' . enc . '.spl'
" Split the window, read the file into a new buffer.
" Remember the buffer number, we check it below.
@@ -95,7 +96,7 @@ function! spellfile#LoadFile(lang)
let newbufnr = winbufnr(0)
endif
let fname = a:lang . '.ascii.spl'
let fname = lang . '.ascii.spl'
echo 'Could not find it, trying ' . fname . '...'
call spellfile#Nread(fname)
if getline(2) !~ 'VIMspell'
+36 -5
View File
@@ -152,10 +152,12 @@ fun! tar#Browse(tarfile)
" assuming cygwin
let tarfile=substitute(system("cygpath -u ".shellescape(tarfile,0)),'\n$','','e')
endif
let curlast= line("$")
if tarfile =~# '\.\(gz\|tgz\)$'
let gzip_command = s:get_gzip_command(tarfile)
" call Decho("1: exe silent r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
exe "sil! r! " . gzip_command . " -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
elseif tarfile =~# '\.lrp'
" call Decho("2: exe silent r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "sil! r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
@@ -287,12 +289,14 @@ fun! tar#Read(fname,mode)
else
let tar_secure= " "
endif
if tarfile =~# '\.bz2$'
" call Decho("7: exe silent r! bzip2 -d -c ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp)
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
elseif tarfile =~# '\.\(gz\|tgz\)$'
let gzip_command = s:get_gzip_command(tarfile)
" call Decho("5: exe silent r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd.' -'.g:tar_readoptions.' - '.tar_secure.shellescape(fname,1))
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
exe "sil! r! " . gzip_command . " -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
elseif tarfile =~# '\.lrp$'
" call Decho("6: exe silent r! cat ".shellescape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp)
exe "sil! r! cat -- ".shellescape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
@@ -389,6 +393,8 @@ fun! tar#Write(fname)
let tarfile = substitute(b:tarfile,'tarfile:\(.\{-}\)::.*$','\1','')
let fname = substitute(b:tarfile,'tarfile:.\{-}::\(.*\)$','\1','')
let gzip_command = s:get_gzip_command(tarfile)
" handle compressed archives
if tarfile =~# '\.bz2'
call system("bzip2 -d -- ".shellescape(tarfile,0))
@@ -396,12 +402,12 @@ fun! tar#Write(fname)
let compress= "bzip2 -- ".shellescape(tarfile,0)
" call Decho("compress<".compress.">")
elseif tarfile =~# '\.gz'
call system("gzip -d -- ".shellescape(tarfile,0))
call system(gzip_command . " -d -- ".shellescape(tarfile,0))
let tarfile = substitute(tarfile,'\.gz','','e')
let compress= "gzip -- ".shellescape(tarfile,0)
" call Decho("compress<".compress.">")
elseif tarfile =~# '\.tgz'
call system("gzip -d -- ".shellescape(tarfile,0))
call system(gzip_command . " -d -- ".shellescape(tarfile,0))
let tarfile = substitute(tarfile,'\.tgz','.tar','e')
let compress= "gzip -- ".shellescape(tarfile,0)
let tgz = 1
@@ -581,7 +587,10 @@ fun! tar#Vimuntar(...)
" if necessary, decompress the tarball; then, extract it
if tartail =~ '\.tgz'
if executable("gunzip")
let gzip_command = s:get_gzip_command(tarfile)
if executable(gzip_command)
silent exe "!" . gzip_command . " -d ".shellescape(tartail)
elseif executable("gunzip")
silent exe "!gunzip ".shellescape(tartail)
elseif executable("gzip")
silent exe "!gzip -d ".shellescape(tartail)
@@ -619,6 +628,28 @@ fun! tar#Vimuntar(...)
" call Dret("tar#Vimuntar")
endfun
func s:get_gzip_command(file)
" Try using the "file" command to get the actual compression type, since
" there is no standard way for the naming: ".tgz", ".tbz", ".txz", etc.
" If the "file" command doesn't work fall back to just using the file name.
if a:file =~# 'z$'
let filetype = system('file ' . a:file)
if filetype =~ 'bzip2 compressed' && executable('bzip2')
return 'bzip2'
endif
if filetype =~ 'XZ compressed' && executable('xz')
return 'xz'
endif
endif
if a:file =~# 'bz2$'
return 'bzip2'
endif
if a:file =~# 'xz$'
return 'xz'
endif
return 'gzip'
endfunc
" =====================================================================
" Modelines And Restoration: {{{1
let &cpo= s:keepcpo
+67 -55
View File
@@ -1,6 +1,6 @@
" Vim autoload file for the tohtml plugin.
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2013 Sep 03
" Last Change: 2018 Nov 11
"
" Additional contributors:
"
@@ -544,12 +544,16 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
" add required javascript in reverse order so we can just call append again
" and again without adjusting {{{
" insert script closing tag
call append(style_start, [
\ '',
\ s:settings.use_xhtml ? '//]]>' : '-->',
\ "</script>"
\ ])
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids || !empty(s:settings.prevent_copy)
" insert script closing tag if needed
if s:uses_script
call append(style_start, [
\ '',
\ s:settings.use_xhtml ? '//]]>' : '-->',
\ "</script>"
\ ])
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
@@ -575,55 +579,61 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
\ '}'
\ ])
endif
"
" insert javascript to get IDs from line numbers, and to open a fold before
" jumping to any lines contained therein
call append(style_start, [
\ " /* Always jump to new location even if the line was hidden inside a fold, or",
\ " * we corrected the raw number to a line ID.",
\ " */",
\ " if (lineElem) {",
\ " lineElem.scrollIntoView(true);",
\ " }",
\ " return true;",
\ "}",
\ "if ('onhashchange' in window) {",
\ " window.onhashchange = JumpToLine;",
\ "}"
\ ])
if s:settings.dynamic_folds
if s:settings.line_ids
call append(style_start, [
\ " /* Always jump to new location even if the line was hidden inside a fold, or",
\ " * we corrected the raw number to a line ID.",
\ " */",
\ " if (lineElem) {",
\ " lineElem.scrollIntoView(true);",
\ " }",
\ " return true;",
\ "}",
\ "if ('onhashchange' in window) {",
\ " window.onhashchange = JumpToLine;",
\ "}"
\ ])
if s:settings.dynamic_folds
call append(style_start, [
\ "",
\ " /* navigate upwards in the DOM tree to open all folds containing the line */",
\ " var node = lineElem;",
\ " while (node && node.id != 'vimCodeElement".s:settings.id_suffix."')",
\ " {",
\ " if (node.className == 'closed-fold')",
\ " {",
\ " /* toggle open the fold ID (remove window ID) */",
\ " toggleFold(node.id.substr(4));",
\ " }",
\ " node = node.parentNode;",
\ " }",
\ ])
endif
endif
if s:settings.line_ids
call append(style_start, [
\ "",
\ " /* navigate upwards in the DOM tree to open all folds containing the line */",
\ " var node = lineElem;",
\ " while (node && node.id != 'vimCodeElement".s:settings.id_suffix."')",
\ " {",
\ " if (node.className == 'closed-fold')",
\ " {",
\ " /* toggle open the fold ID (remove window ID) */",
\ " toggleFold(node.id.substr(4));",
\ " }",
\ " node = node.parentNode;",
\ "/* function to open any folds containing a jumped-to line before jumping to it */",
\ "function JumpToLine()",
\ "{",
\ " var lineNum;",
\ " lineNum = window.location.hash;",
\ " lineNum = lineNum.substr(1); /* strip off '#' */",
\ "",
\ " if (lineNum.indexOf('L') == -1) {",
\ " lineNum = 'L'+lineNum;",
\ " }",
\ " if (lineNum.indexOf('W') == -1) {",
\ " lineNum = 'W1'+lineNum;",
\ " }",
\ " var lineElem = document.getElementById(lineNum);"
\ ])
endif
call append(style_start, [
\ "",
\ "/* function to open any folds containing a jumped-to line before jumping to it */",
\ "function JumpToLine()",
\ "{",
\ " var lineNum;",
\ " lineNum = window.location.hash;",
\ " lineNum = lineNum.substr(1); /* strip off '#' */",
\ "",
\ " if (lineNum.indexOf('L') == -1) {",
\ " lineNum = 'L'+lineNum;",
\ " }",
\ " if (lineNum.indexOf('W') == -1) {",
\ " lineNum = 'W1'+lineNum;",
\ " }",
\ " lineElem = document.getElementById(lineNum);"
\ ])
" Insert javascript to toggle matching folds open and closed in all windows,
" if dynamic folding is active.
@@ -648,11 +658,13 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
\ ])
endif
" insert script tag; javascript is always needed for the line number
" normalization for URL hashes
call append(style_start, [
\ "<script type='text/javascript'>",
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
if s:uses_script
" insert script tag; javascript is always needed for the line number
" normalization for URL hashes
call append(style_start, [
\ "<script type='text/javascript'>",
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
endif
" Insert styles from all the generated html documents and additional styles
" for the table-based layout of the side-by-side diff. The diff should take
@@ -767,7 +779,7 @@ func! tohtml#GetUserSettings() "{{{
if user_settings.no_pre == 0
call tohtml#GetOption(user_settings,
\ 'expand_tabs',
\ &expandtab || &ts != 8 || user_settings.number_lines ||
\ &expandtab || &ts != 8 || &vts != '' || user_settings.number_lines ||
\ (user_settings.dynamic_folds && !user_settings.no_foldcolumn))
else
let user_settings.expand_tabs = 1
+115
View File
@@ -0,0 +1,115 @@
" Vim plugin for formatting XML
" Last Change: Thu, 07 Dec 2018
" Version: 0.1
" Author: Christian Brabandt <cb@256bit.org>
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
" License: VIM License
" Documentation: see :h xmlformat.txt (TODO!)
" ---------------------------------------------------------------------
" Load Once: {{{1
if exists("g:loaded_xmlformat") || &cp
finish
endif
let g:loaded_xmlformat = 1
let s:keepcpo = &cpo
set cpo&vim
" Main function: Format the input {{{1
func! xmlformat#Format()
" only allow reformatting through the gq command
" (e.g. Vim is in normal mode)
if mode() != 'n'
" do not fall back to internal formatting
return 0
endif
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
call add(result, s:Indent(item))
endif
endif
let lastitem = item
endfor
if !empty(result)
exe v:lnum. ",". (v:lnum + v:count - 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 ''
exe last. 'd'
endif
endif
" do not run internal formatter!
return 0
endfunc
" Check if given tag is XML Declaration header {{{1
func! s:IsXMLDecl(tag)
return a:tag =~? '^\s*<?xml\s\?\%(version="[^"]*"\)\?\s\?\%(encoding="[^"]*"\)\? ?>\s*$'
endfunc
" Return tag indented by current level {{{1
func! s:Indent(item)
return repeat(' ', shiftwidth()*s:indent). s:Trim(a:item)
endfu
" Return item trimmed from leading whitespace {{{1
func! s:Trim(item)
if exists('*trim')
return trim(a:item)
else
return matchstr(a:item, '\S\+.*')
endif
endfunc
" Check if tag is a new opening tag <tag> {{{1
func! s:StartTag(tag)
let is_comment = s:IsComment(a:tag)
return a:tag =~? '^\s*<[^/?]' && !is_comment
endfunc
func! s:IsComment(tag)
return a:tag =~? '<!--'
endfunc
" Remove one level of indentation {{{1
func! s:DecreaseIndent()
return (s:indent > 0 ? s:indent - 1 : 0)
endfunc
" Check if tag is a closing tag </tag> {{{1
func! s:EndTag(tag)
return a:tag =~? '^\s*</'
endfunc
" Check that the tag is actually a tag and not {{{1
" something like "foobar</foobar>"
func! s:IsTag(tag)
return s:Trim(a:tag)[0] == '<'
endfunc
" Check if tag is empty <tag/> {{{1
func! s:EmptyTag(tag)
return a:tag =~ '/>\s*$'
endfunc
" Restoration And Modelines: {{{1
let &cpo= s:keepcpo
unlet s:keepcpo
" Modeline {{{1
" vim: fdm=marker fdl=0 ts=2 et sw=0 sts=-1
+2 -4
View File
@@ -2,7 +2,7 @@
:" information about the environment of a possible bug in Vim.
:"
:" Maintainer: Bram Moolenaar <Bram@vim.org>
:" Last change: 2005 Jun 12
:" Last change: 2019 Jan 27
:"
:" To use inside Vim:
:" :so $VIMRUNTIME/bugreport.vim
@@ -54,9 +54,7 @@
:endif
:set all
:set termcap
:if has("autocmd")
: au
:endif
:au
:if 1
: echo "--- Normal/Visual mode mappings ---"
:endif
+12 -2
View File
@@ -42,7 +42,16 @@ this autocmd might be useful:
Replace "blue_sky" with the name of the colorscheme.
In case you want to tweak a colorscheme after it was loaded, check out the
ColorScheme autocmd event.
ColorScheme autocommand event.
To clean up just before loading another colorscheme, use the ColorSchemePre
autocommand event. For example:
let g:term_ansi_colors = ...
augroup MyColorscheme
au!
au ColorSchemePre * unlet g:term_ansi_colors
au ColorSchemePre * au! MyColorscheme
augroup END
To customize a colorscheme use another name, e.g. "~/.vim/colors/mine.vim",
and use `:runtime` to load the original colorscheme:
@@ -64,7 +73,8 @@ Search for "highlight_init".
If you think you have a color scheme that is good enough to be used by others,
please check the following items:
- Source the tools/check_colors.vim script to check for common mistakes.
- Source the $VIMRUNTIME/colors/tools/check_colors.vim script to check for
common mistakes.
- Does it work in a color terminal as well as in the GUI?
- Is "g:colors_name" set to a meaningful value? In case of doubt you can do
it this way:
+2 -1
View File
@@ -1,6 +1,7 @@
" MacVim colorscheme
"
" Maintainer: Bjorn Winckler <bjorn.winckler@gmail.com>
" Author: Bjorn Winckler <bjorn.winckler@gmail.com>
" Maintainer: macvim-dev (https://github.com/macvim-dev)
" Last Change: 2008 May 9
"
" This is the default MacVim color scheme. It supports both light and dark
+2 -2
View File
@@ -1,5 +1,5 @@
" This script tests a color scheme for some errors. Load the scheme and source
" this script. e.g. :e colors/desert.vim | :so test_colors.vim
" this script. e.g. :e colors/desert.vim | :so check_colors.vim
" Will output possible errors.
let s:save_cpo= &cpo
@@ -90,7 +90,7 @@ func! Test_check_colors()
let err['background'] = 'Should not issue :syn on'
endif
" 7) Does not define filetype specfic groups like vimCommand, htmlTag,
" 7) Does not define filetype specific groups like vimCommand, htmlTag,
let hi_groups = ['vim', 'html', 'python', 'sh', 'ruby']
for group in hi_groups
let pat='\Chi\%[ghlight]\s*\zs'.group.'\w\+\>'
+3 -2
View File
@@ -3,6 +3,7 @@
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2018 Jan 25
if exists("current_compiler")
finish
@@ -28,8 +29,8 @@ CompilerSet errorformat=
\%W%f:%l:\ warning:\ %m,
\%E%f:%l:in\ %*[^:]:\ %m,
\%E%f:%l:\ %m,
\%-C%\tfrom\ %f:%l:in\ %.%#,
\%-Z%\tfrom\ %f:%l,
\%-C%\t%\\d%#:%#\ %#from\ %f:%l:in\ %.%#,
\%-Z%\t%\\d%#:%#\ %#from\ %f:%l,
\%-Z%p^,
\%-G%.%#
+7 -6
View File
@@ -3,6 +3,7 @@
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2018 Mar 02
if exists("current_compiler")
finish
@@ -20,12 +21,12 @@ CompilerSet makeprg=rake
CompilerSet errorformat=
\%D(in\ %f),
\%\\s%#from\ %f:%l:%m,
\%\\s%#from\ %f:%l:,
\%\\s%##\ %f:%l:%m,
\%\\s%##\ %f:%l,
\%\\s%#[%f:%l:\ %#%m,
\%\\s%#%f:%l:\ %#%m,
\%\\s%#%\\d%#:%#\ %#from\ %f:%l:%m,
\%\\s%#%\\d%#:%#\ %#from\ %f:%l:,
\%\\s%##\ %f:%l:%m%\\&%.%#%\\D:%\\d%\\+:%.%#,
\%\\s%##\ %f:%l%\\&%.%#%\\D:%\\d%\\+,
\%\\s%#[%f:%l:\ %#%m%\\&%.%#%\\D:%\\d%\\+:%.%#,
\%\\s%#%f:%l:\ %#%m%\\&%.%#%\\D:%\\d%\\+:%.%#,
\%\\s%#%f:%l:,
\%m\ [%f:%l]:,
\%+Erake\ aborted!,
+3 -1
View File
@@ -3,6 +3,7 @@
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2018 Aug 07
if exists("current_compiler")
finish
@@ -23,7 +24,8 @@ CompilerSet errorformat=
\%E%.%#:in\ `load':\ %f:%l:%m,
\%E%f:%l:in\ `%*[^']':\ %m,
\%-Z\ \ \ \ \ %\\+\#\ %f:%l:%.%#,
\%E\ \ %\\d%\\+)%.%#,
\%E\ \ \ \ \ Failure/Error:\ %m,
\%E\ \ \ \ \ Failure/Error:,
\%C\ \ \ \ \ %m,
\%C%\\s%#,
\%-G%.%#
+5 -5
View File
@@ -4,7 +4,7 @@
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" ----------------------------------------------------------------------------
" Last Change: 2019 Jan 06
if exists("current_compiler")
finish
@@ -21,21 +21,21 @@ set cpo-=C
" default settings runs script normally
" add '-c' switch to run syntax check only:
"
" CompilerSet makeprg=ruby\ -wc\ $*
" CompilerSet makeprg=ruby\ -c
"
" or add '-c' at :make command line:
"
" :make -c %<CR>
"
CompilerSet makeprg=ruby\ -w\ $*
CompilerSet makeprg=ruby
CompilerSet errorformat=
\%+E%f:%l:\ parse\ error,
\%W%f:%l:\ warning:\ %m,
\%E%f:%l:in\ %*[^:]:\ %m,
\%E%f:%l:\ %m,
\%-C%\tfrom\ %f:%l:in\ %.%#,
\%-Z%\tfrom\ %f:%l,
\%-C%\t%\\d%#:%#\ %#from\ %f:%l:in\ %.%#,
\%-Z%\t%\\d%#:%#\ %#from\ %f:%l,
\%-Z%p^,
\%-G%.%#
+1
View File
@@ -3,6 +3,7 @@
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2014 Mar 23
if exists("current_compiler")
finish
+37
View File
@@ -0,0 +1,37 @@
" Vim compiler file
" Compiler: Haskell Stack
" Maintainer: Daniel Campoverde <alx@sillybytes.net>
" Latest Revision: 2018-08-27
if exists("current_compiler")
finish
endif
let current_compiler = "stack"
let s:cpo_save = &cpo
set cpo&vim
CompilerSet errorformat=
\%-G%.%#:\ build\ %.%#,
\%-G%.%#:\ configure\ %.%#,
\%-G[%.%#]%.%#,
\%-G%.%#preprocessing\ %.%#,
\%-G%.%#configuring\ %.%#,
\%-G%.%#building\ %.%#,
\%-G%.%#linking\ %.%#,
\%-G%.%#installing\ %.%#,
\%-G%.%#registering\ %.%#,
\%-G%.%#:\ copy/register%.%#,
\%-G%.%#process\ exited\ %.%#,
\%-G%.%#--builddir=%.%#,
\%-G--%.%#,
\%-G%.%#\|%.%#,
\%E%f:%l:%c:\ error:,%+Z\ \ \ \ %m,
\%E%f:%l:%c:\ error:\ %m,%-Z,
\%W%f:%l:%c:\ warning:,%+Z\ \ \ \ %m,
\%W%f:%l:%c:\ warning:\ %m,%-Z,
let &cpo = s:cpo_save
unlet s:cpo_save
+20 -25
View File
@@ -1,7 +1,7 @@
" The default vimrc file.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2017 Jun 13
" Last change: 2019 Jan 26
"
" This is loaded if no vimrc file was found.
" Except when Vim is run with "-u NONE" or "-C".
@@ -90,33 +90,28 @@ if &t_Co > 2 || has("gui_running")
let c_comment_strings=1
endif
" Only do this part when compiled with support for autocommands.
if has("autocmd")
" Enable file type detection.
" Use the default filetype settings, so that mail gets 'tw' set to 72,
" 'cindent' is on in C files, etc.
" Also load indent files, to automatically do language-dependent indenting.
" Revert with ":filetype off".
filetype plugin indent on
" Enable file type detection.
" Use the default filetype settings, so that mail gets 'tw' set to 72,
" 'cindent' is on in C files, etc.
" Also load indent files, to automatically do language-dependent indenting.
" Revert with ":filetype off".
filetype plugin indent on
" Put these in an autocmd group, so that you can revert them with:
" ":augroup vimStartup | au! | augroup END"
augroup vimStartup
au!
" Put these in an autocmd group, so that you can revert them with:
" ":augroup vimStartup | au! | augroup END"
augroup vimStartup
au!
" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid, when inside an event handler
" (happens when dropping a file on gvim) and for a commit message (it's
" likely a different one than last time).
autocmd BufReadPost *
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
\ | exe "normal! g`\""
\ | endif
" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid, when inside an event handler
" (happens when dropping a file on gvim) and for a commit message (it's
" likely a different one than last time).
autocmd BufReadPost *
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
\ | exe "normal! g`\""
\ | endif
augroup END
endif " has("autocmd")
augroup END
" Convenient command to see the difference between the current buffer and the
" file it was loaded from, thus the changes you made.
+1
View File
@@ -5,6 +5,7 @@
" Last Change: 2001 May 27
aunmenu *
tlunmenu *
silent! unlet did_install_default_menus
silent! unlet did_install_syntax_menu
+2
View File
@@ -103,6 +103,7 @@ DOCS = \
tagsrch.txt \
term.txt \
terminal.txt \
textprop.txt \
tips.txt \
todo.txt \
uganda.txt \
@@ -239,6 +240,7 @@ HTMLS = \
tagsrch.html \
term.html \
terminal.html \
textprop.html \
tips.html \
todo.html \
uganda.html \
+2 -2
View File
@@ -1,4 +1,4 @@
*arabic.txt* For Vim version 8.0. Last change: 2010 Nov 13
*arabic.txt* For Vim version 8.1. Last change: 2010 Nov 13
VIM REFERENCE MANUAL by Nadim Shaikli
@@ -319,4 +319,4 @@ There is one known minor bug,
No other bugs are known to exist.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+52 -16
View File
@@ -1,10 +1,10 @@
*autocmd.txt* For Vim version 8.0. Last change: 2018 Mar 15
*autocmd.txt* For Vim version 8.1. Last change: 2019 Jan 19
VIM REFERENCE MANUAL by Bram Moolenaar
Automatic commands *autocommand*
Automatic commands *autocommand* *autocommands*
For a basic explanation, see section |40.3| in the user manual.
@@ -301,6 +301,7 @@ Name triggered by ~
|FileChangedShellPost| After handling a file changed since editing started
|FileChangedRO| before making the first change to a read-only file
|DiffUpdated| after diffs have been updated
|DirChanged| after the working directory has changed
|ShellCmdPost| after executing a shell command
@@ -310,6 +311,7 @@ Name triggered by ~
|FuncUndefined| a user function is used but it isn't defined
|SpellFileMissing| a spell file is used but it can't be found
|SourcePre| before sourcing a Vim script
|SourcePost| after sourcing a Vim script
|SourceCmd| before sourcing a Vim script |Cmd-event|
|VimResized| after the Vim window size changed
@@ -345,8 +347,9 @@ Name triggered by ~
when popup menu is not visible
|TextChangedP| after a change was made to the text in Insert mode
when popup menu visible
|TextYankPost| after text is yanked or deleted
|TextYankPost| after text has been yanked or deleted
|ColorSchemePre| before loading a color scheme
|ColorScheme| after loading a color scheme
|RemoteReply| a reply from a server Vim was received
@@ -468,6 +471,9 @@ BufWinEnter After a buffer is displayed in a window. This
existing buffer. But it does happen for a
":split" with the name of the current buffer,
since it reloads that buffer.
Does not happen for a terminal window, because
it starts in Terminal-Job mode and Normal mode
commands won't work. Use |TerminalOpen| instead.
*BufWinLeave*
BufWinLeave Before a buffer is removed from a window.
Not when it's still visible in another window.
@@ -562,6 +568,10 @@ ColorScheme After loading a color scheme. |:colorscheme|
set, and <amatch> for the new colorscheme
name.
*ColorSchemePre*
ColorSchemePre Before loading a color scheme. |:colorscheme|
Useful to setup removing things added by a
color scheme, before another one is loaded.
*CompleteDone*
CompleteDone After Insert mode completion is done. Either
@@ -648,12 +658,17 @@ FileChangedRO Before making the first change to a read-only
*E881*
If the number of lines changes saving for undo
may fail and the change will be aborted.
*DiffUpdated*
DiffUpdated After diffs have been updated. Depending on
what kind of diff is being used (internal or
external) this can be triggered on every
change or when doing |:diffupdate|.
*DirChanged*
DirChanged The working directory has changed in response
to the |:cd| or |:lcd| commands, or as a
result of the 'autochdir' option.
The pattern can be:
"window" to trigger on `:lcd
"window" to trigger on `:lcd`
"global" to trigger on `:cd`
"auto" to trigger on 'autochdir'.
"drop" to trigger on editing a file
@@ -662,7 +677,10 @@ DirChanged The working directory has changed in response
ExitPre When using `:quit`, `:wq` in a way it makes
Vim exit, or using `:qall`, just after
|QuitPre|. Can be used to close any
non-essential window.
non-essential window. Exiting may still be
cancelled if there is a modified buffer that
isn't automatically saved, use |VimLeavePre|
for really exiting.
*FileChangedShell*
FileChangedShell When Vim notices that the modification time of
a file has changed since editing started.
@@ -742,13 +760,14 @@ FilterReadPre Before reading a file from a filter command.
Not triggered when 'shelltemp' is off.
*FilterWritePost*
FilterWritePost After writing a file for a filter command or
making a diff.
making a diff with an external diff (see
DiffUpdated for internal diff).
Vim checks the pattern against the name of
the current buffer as with FilterWritePre.
Not triggered when 'shelltemp' is off.
*FilterWritePre*
FilterWritePre Before writing a file for a filter command or
making a diff.
making a diff with an external diff.
Vim checks the pattern against the name of
the current buffer, not the name of the
temporary file that is the output of the
@@ -818,13 +837,14 @@ MenuPopup Just before showing the popup menu (under the
right mouse button). Useful for adjusting the
menu for what is under the cursor or mouse
pointer.
The pattern is matched against a single
character representing the mode:
The pattern is matched against one or two
characters representing the mode:
n Normal
v Visual
o Operator-pending
i Insert
c Command line
tl Terminal
*OptionSet*
OptionSet After setting an option. The pattern is
matched against the long option name.
@@ -848,6 +868,9 @@ OptionSet After setting an option. The pattern is
plugin. You can always use `:noa` to prevent
triggering this autocommand.
When using |:set| in the autocommand the event
is not triggered again.
*QuickFixCmdPre*
QuickFixCmdPre Before a quickfix command is run (|:make|,
|:lmake|, |:grep|, |:lgrep|, |:grepadd|,
@@ -903,6 +926,12 @@ ShellFilterPost After executing a shell command with
*SourcePre*
SourcePre Before sourcing a Vim script. |:source|
<afile> is the name of the file being sourced.
*SourcePost*
SourcePost After sourcing a Vim script. |:source|
<afile> is the name of the file being sourced.
Not triggered when sourcing was interrupted.
Also triggered after a SourceCmd autocommand
was triggered.
*SourceCmd*
SourceCmd When sourcing a Vim script. |:source|
<afile> is the name of the file being sourced.
@@ -989,8 +1018,10 @@ TermResponse After the response to |t_RV| is received from
anything else that takes time is involved.
*TextChanged*
TextChanged After a change was made to the text in the
current buffer in Normal mode. That is when
|b:changedtick| has changed.
current buffer in Normal mode. That is after
|b:changedtick| has changed (also when that
happened before the TextChanged autocommand
was defined).
Not triggered when there is typeahead or when
an operator is pending.
Careful: This is triggered very often, don't
@@ -1030,6 +1061,10 @@ TextYankPost After text has been yanked or deleted in the
User Never executed automatically. To be used for
autocommands that are only executed with
":doautocmd".
Note that when `:doautocmd User MyEvent` is
used while there are no matching autocommands,
you will get an error. If you don't want
that, define a dummy autocommand yourself.
*UserGettingBored*
UserGettingBored When the user presses the same key 42 times.
Just kidding! :-)
@@ -1074,9 +1109,10 @@ WinEnter After entering another window. Not done for
If the window is for another buffer, Vim
executes the BufEnter autocommands after the
WinEnter autocommands.
Note: When using ":split fname" the WinEnter
event is triggered after the split but before
the file "fname" is loaded.
Note: For split and tabpage commands the
WinEnter event is triggered after the split
or tab command but before the file is loaded.
*WinLeave*
WinLeave Before leaving a window. If the window to be
entered next is for a different buffer, Vim
@@ -1386,7 +1422,7 @@ Careful: '[ and '] change when using commands that change the buffer.
In commands which expect a file name, you can use "<afile>" for the file name
that is being read |:<afile>| (you can also use "%" for the current file
name). "<abuf>" can be used for the buffer number of the currently effective
buffer. This also works for buffers that doesn't have a name. But it doesn't
buffer. This also works for buffers that don't have a name. But it doesn't
work for files without a buffer (e.g., with ":r file").
*gzip-example*
@@ -1577,4 +1613,4 @@ This will write the file without triggering the autocommands defined by the
gzip plugin.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+91 -15
View File
@@ -1,4 +1,4 @@
*change.txt* For Vim version 8.0. Last change: 2017 Feb 12
*change.txt* For Vim version 8.1. Last change: 2018 Dec 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -110,7 +110,7 @@ is an error when 'cpoptions' includes the 'E' flag.
J Join [count] lines, with a minimum of two lines.
Remove the indent and insert up to two spaces (see
below). Fails when on the last line of the buffer.
If [count] is too big it is reduce to the number of
If [count] is too big it is reduced to the number of
lines available.
*v_J*
@@ -177,8 +177,6 @@ gR Enter Virtual Replace mode: Each character you type
<Tab> may replace several characters at once.
Repeat the entered text [count]-1 times. See
|Virtual-Replace-mode| for more details.
{not available when compiled without the |+vreplace|
feature}
*c*
["x]c{motion} Delete {motion} text [into register x] and start
@@ -303,8 +301,6 @@ gr{char} Replace the virtual characters under the cursor with
space. See |gR| and |Virtual-Replace-mode| for more
details. As with |r| a count may be given.
{char} can be entered like with |r|.
{not available when compiled without the |+vreplace|
feature}
*digraph-arg*
The argument for Normal mode commands like |r| and |t| is a single character.
@@ -446,7 +442,7 @@ This depends on the 'nrformats' option:
For decimals a leading negative sign is considered for incrementing/
decrementing, for binary, octal and hex values, it won't be considered. To
ignore the sign Visually select the number before using CTRL-A or CTRL-X.
ignore the sign Visually select the number before using CTRL-A or CTRL-X.
For numbers with leading zeros (including all octal and hexadecimal numbers),
Vim preserves the number of characters in the number when possible. CTRL-A on
@@ -480,6 +476,10 @@ SHIFTING LINES LEFT OR RIGHT *shift-left-right*
*<*
<{motion} Shift {motion} lines one 'shiftwidth' leftwards.
If the 'vartabstop' feature is enabled, and the
'shiftwidth' option is set to zero, the amount of
indent is calculated at the first non-blank character
in the line.
*<<*
<< Shift [count] lines one 'shiftwidth' leftwards.
@@ -491,6 +491,10 @@ SHIFTING LINES LEFT OR RIGHT *shift-left-right*
*>*
>{motion} Shift {motion} lines one 'shiftwidth' rightwards.
If the 'vartabstop' feature is enabled, and the
'shiftwidth' option is set to zero, the amount of
indent is calculated at the first non-blank character
in the line.
*>>*
>> Shift [count] lines one 'shiftwidth' rightwards.
@@ -533,6 +537,7 @@ If the 'shiftround' option is on, the indent is rounded to a multiple of
If the 'smartindent' option is on, or 'cindent' is on and 'cinkeys' contains
'#' with a zero value, shift right does not affect lines starting with '#'
(these are supposed to be C preprocessor lines that must stay in column 1).
This can be changed with the 'cino' option, see |cino-#|.
When the 'expandtab' option is off (this is the default) Vim uses <Tab>s as
much as possible to make the indent. You can use ">><<" to replace an indent
@@ -711,6 +716,7 @@ The flags that you can use for the substitute commands:
search pattern.
{not in Vi: highlighting of the match, other responses than 'y' or 'n'}
*:s_e*
[e] When the search pattern fails, do not issue an error message and, in
particular, continue in maps as if no error occurred. This is most
useful to prevent the "No match" error from breaking a mapping. Vim
@@ -722,6 +728,7 @@ The flags that you can use for the substitute commands:
Interrupted
{not in Vi}
*:s_g*
[g] Replace all occurrences in the line. Without this argument,
replacement occurs only for the first occurrence in each line. If
the 'edcompatible' option is on, Vim remembers this flag and toggles
@@ -729,26 +736,30 @@ The flags that you can use for the substitute commands:
pattern. If the 'gdefault' option is on, this flag is on by default
and the [g] argument switches it off.
*:s_i*
[i] Ignore case for the pattern. The 'ignorecase' and 'smartcase' options
are not used.
{not in Vi}
*:s_I*
[I] Don't ignore case for the pattern. The 'ignorecase' and 'smartcase'
options are not used.
{not in Vi}
*:s_n*
[n] Report the number of matches, do not actually substitute. The [c]
flag is ignored. The matches are reported as if 'report' is zero.
Useful to |count-items|.
If \= |sub-replace-expression| is used, the expression will be
evaluated in the |sandbox| at every match.
[p] Print the line containing the last substitute.
[p] Print the line containing the last substitute. *:s_p*
[#] Like [p] and prepend the line number.
[#] Like [p] and prepend the line number. *:s_#*
[l] Like [p] but print the text like |:list|.
[l] Like [p] but print the text like |:list|. *:s_l*
*:s_r*
[r] Only useful in combination with `:&` or `:s` without arguments. `:&r`
works the same way as `:~`: When the search pattern is empty, use the
previously used search pattern instead of the search pattern from the
@@ -847,7 +858,7 @@ the |substitute()| function with the following exceptions:
- magic is always set without regard to 'magic'.
- A ~ inserts a tilde literally.
- <CR> and \r inserts a carriage-return (CTRL-M).
- \<CR> does not have a special meaning. it's just one of \x.
- \<CR> does not have a special meaning. It's just one of \x.
Examples: >
:s/a\|b/xxx\0xxx/g modifies "a b" to "xxxaxxx xxxbxxx"
@@ -933,9 +944,9 @@ When the result is a |List| then the items are joined with separating line
breaks. Thus each item becomes a line, except that they can contain line
breaks themselves.
The whole matched text can be accessed with "submatch(0)". The text matched
with the first pair of () with "submatch(1)". Likewise for further
sub-matches in ().
The |submatch()| function can be used to obtain matched text. The whole
matched text can be accessed with "submatch(0)". The text matched with the
first pair of () with "submatch(1)". Likewise for further sub-matches in ().
Be careful: The separation character must not appear in the expression!
Consider using a character like "@" or ":". There is no problem if the result
@@ -986,6 +997,11 @@ This replaces each 'E' character with a euro sign. Read more in |<Char->|.
this (that's a good habit anyway).
`:retab!` may also change a sequence of spaces by
<Tab> characters, which can mess up a printf().
If the |+vartabs| feature is enabled then a list of
tab widths separated by commas may be used in place of
a single tabstop. Each value in the list represents
the width of one tabstop, except the final value which
applies to all following tabstops.
{not in Vi}
*retab-example*
@@ -1444,6 +1460,55 @@ to the name of an external program for Vim to use for text formatting. The
'textwidth' and other options have no effect on formatting by an external
program.
*format-formatexpr*
The 'formatexpr' option can be set to a Vim script function that performs
reformatting of the buffer. This should usually happen in an |ftplugin|,
since formatting is highly dependent on the type of file. It makes
sense to use an |autoload| script, so the corresponding script is only loaded
when actually needed and the script should be called <filetype>format.vim.
For example, the XML filetype plugin distributed with Vim in the $VIMRUNTIME
directory, sets the 'formatexpr' option to: >
setlocal formatexpr=xmlformat#Format()
That means, you will find the corresponding script, defining the
xmlformat#Format() function, in the directory:
`$VIMRUNTIME/autoload/xmlformat.vim`
Here is an example script that removes trailing whitespace from the selected
text. Put it in your autoload directory, e.g. ~/.vim/autoload/format.vim: >
func! format#Format()
" only reformat on explicit gq command
if mode() != 'n'
" fall back to Vims internal reformatting
return 1
endif
let lines = getline(v:lnum, v:lnum + v:count - 1)
call map(lines, {key, val -> substitute(val, '\s\+$', '', 'g')})
call setline('.', lines)
" do not run internal formatter!
return 0
endfunc
You can then enable the formatting by executing: >
setlocal formatexpr=format#Format()
Note: this function explicitly returns non-zero when called from insert mode
(which basically means, text is inserted beyond the 'textwidth' limit). This
causes Vim to fall back to reformat the text by using the internal formatter.
However, if the |gq| command is used to reformat the text, the function
will receive the selected lines, trim trailing whitespace from those lines and
put them back in place. If you are going to split single lines into multiple
lines, be careful not to overwrite anything.
If you want to allow reformatting of text from insert or replace mode, one has
to be very careful, because the function might be called recursively. For
debugging it helps to set the 'debug' option.
*right-justify*
There is no command in Vim to right justify text. You can do it with
an external command, like "par" (e.g.: "!}par" to format until the end of the
@@ -1655,6 +1720,17 @@ j Where it makes sense, remove a comment leader when joining lines. For
// in the list ~
Becomes:
int i; // the index in the list ~
p Don't break lines at single spaces that follow periods. This is
intended to complement 'joinspaces' and |cpo-J|, for prose with
sentences separated by two spaces. For example, with 'textwidth' set
to 28: >
Surely you're joking, Mr. Feynman!
< Becomes: >
Surely you're joking,
Mr. Feynman!
< Instead of: >
Surely you're joking, Mr.
Feynman!
With 't' and 'c' you can specify when Vim performs auto-wrapping:
@@ -1829,4 +1905,4 @@ The sorting can be interrupted, but if you interrupt it too late in the
process you may end up with duplicated lines. This also depends on the system
library function used.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+62 -3
View File
@@ -1,4 +1,4 @@
*channel.txt* For Vim version 8.0. Last change: 2017 Aug 11
*channel.txt* For Vim version 8.1. Last change: 2018 Apr 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -22,6 +22,7 @@ The Netbeans interface also uses a channel. |netbeans|
9. Starting a job without a channel |job-start-nochannel|
10. Job options |job-options|
11. Controlling a job |job-control|
12. Using a prompt buffer |prompt-buffer|
{Vi does not have any of these features}
{only when compiled with the |+channel| feature for channel stuff}
@@ -55,7 +56,7 @@ JS JavaScript style JSON-like encoding |js_encode()|
Common combination are:
- Using a job connected through pipes in NL mode. E.g., to run a style
checker and receive errors and warnings.
- Using a deamon, connecting over a socket in JSON mode. E.g. to lookup
- Using a daemon, connecting over a socket in JSON mode. E.g. to lookup
cross-references in a database.
==============================================================================
@@ -162,6 +163,9 @@ Use |ch_status()| to see if the channel could be opened.
The "close_cb" is also considered for this.
"never" All messages will be kept.
*channel-noblock*
"noblock" Same effect as |job-noblock|. Only matters for writing.
*waittime*
"waittime" The time to wait for the connection to be made in
milliseconds. A negative number waits forever.
@@ -593,6 +597,17 @@ See |job_setoptions()| and |ch_setoptions()|.
Note: when writing to a file or buffer and when
reading from a buffer NL mode is used by default.
*job-noblock*
"noblock": 1 When writing use a non-blocking write call. This
avoids getting stuck if Vim should handle other
messages in between, e.g. when a job sends back data
to Vim. It implies that when `ch_sendraw()` returns
not all data may have been written yet.
This option was added in patch 8.1.0350, test with: >
if has("patch-8.1.350")
let options['noblock'] = 1
endif
<
*job-callback*
"callback": handler Callback for something to read on any part of the
channel.
@@ -770,5 +785,49 @@ signals. E.g. to force a job to stop, "kill it": >
For more options see |job_stop()|.
==============================================================================
12. Using a prompt buffer *prompt-buffer*
vim:tw=78:ts=8:ft=help:norl:
If you want to type input for the job in a Vim window you have a few options:
- Use a normal buffer and handle all possible commands yourself.
This will be complicated, since there are so many possible commands.
- Use a terminal window. This works well if what you type goes directly to
the job and the job output is directly displayed in the window.
See |terminal-window|.
- Use a prompt window. This works well when entering a line for the job in Vim
while displaying (possibly filtered) output from the job.
A prompt buffer is created by setting 'buftype' to "prompt". You would
normally only do that in a newly created buffer.
The user can edit and enter one line of text at the very last line of the
buffer. When pressing Enter in the prompt line the callback set with
|prompt_setcallback()| is invoked. It would normally send the line to a job.
Another callback would receive the output from the job and display it in the
buffer, below the prompt (and above the next prompt).
Only the text in the last line, after the prompt, is editable. The rest of the
buffer is not modifiable with Normal mode commands. It can be modified by
calling functions, such as |append()|. Using other commands may mess up the
buffer.
After setting 'buftype' to "prompt" Vim does not automatically start Insert
mode, use `:startinsert` if you want to enter Insert mode, so that the user
can start typing a line.
The text of the prompt can be set with the |prompt_setprompt()| function.
The user can go to Normal mode and navigate through the buffer. This can be
useful see older output or copy text.
The CTRL-W key can be used to start a window command, such as CTRL-W w to
switch to the next window. This also works in Insert mode (use Shift-CTRL-W
to delete a word). When leaving the window Insert mode will be stopped. When
coming back to the prompt window Insert mode will be restored.
Any command that starts Insert mode, such as "a", "i", "A" and "I", will move
the cursor to the last line. "A" will move to the end of the line, "I" to the
start of the line.
vim:tw=78:ts=8:noet:ft=help:norl:
+73 -21
View File
@@ -1,4 +1,4 @@
*cmdline.txt* For Vim version 8.0. Last change: 2017 Oct 19
*cmdline.txt* For Vim version 8.1. Last change: 2018 May 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -175,12 +175,14 @@ CTRL-R CTRL-F *c_CTRL-R_CTRL-F* *c_<C-R>_<C-F>*
CTRL-R CTRL-P *c_CTRL-R_CTRL-P* *c_<C-R>_<C-P>*
CTRL-R CTRL-W *c_CTRL-R_CTRL-W* *c_<C-R>_<C-W>*
CTRL-R CTRL-A *c_CTRL-R_CTRL-A* *c_<C-R>_<C-A>*
CTRL-R CTRL-L *c_CTRL-R_CTRL-L* *c_<C-R>_<C-L>*
Insert the object under the cursor:
CTRL-F the Filename under the cursor
CTRL-P the Filename under the cursor, expanded with
'path' as in |gf|
CTRL-W the Word under the cursor
CTRL-A the WORD under the cursor; see |WORD|
CTRL-L the line under the cursor
When 'incsearch' is set the cursor position at the end of the
currently displayed match is used. With CTRL-W the part of
@@ -192,8 +194,8 @@ CTRL-R CTRL-A *c_CTRL-R_CTRL-A* *c_<C-R>_<C-A>*
*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-R CTRL-O {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A}
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}
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),
@@ -410,14 +412,17 @@ CTRL-D List names that match the pattern in front of the cursor.
match is inserted. After the last match, the first is used
again (wrap around).
The behavior can be changed with the 'wildmode' option.
*c_<S-Tab>*
<S-Tab> Like 'wildchar' or <Tab>, but begin with the last match and
then go to the previous match.
<S-Tab> does not work everywhere.
*c_CTRL-N*
CTRL-N After using 'wildchar' which got multiple matches, go to next
match. Otherwise recall more recent command-line from history.
<S-Tab> *c_CTRL-P* *c_<S-Tab>*
*c_CTRL-P*
CTRL-P After using 'wildchar' which got multiple matches, go to
previous match. Otherwise recall older command-line from
history. <S-Tab> only works with the GUI, on the Amiga and
with MS-DOS.
history.
*c_CTRL-A*
CTRL-A All names that match the pattern in front of the cursor are
inserted.
@@ -453,6 +458,10 @@ a previous version <Esc> was used). In the pattern standard wildcards '*' and
'?' are accepted when matching file names. '*' matches any string, '?'
matches exactly one character.
When repeating 'wildchar' or CTRL-N you cycle through the matches, eventually
ending up back to what was typed. If the first match is not what you wanted,
you can use <S-Tab> or CTRL-P to go straight back to what you typed.
The 'wildignorecase' option can be set to ignore case in filenames.
The 'wildmenu' option can be set to show the matches just above the command
@@ -525,8 +534,45 @@ after a command causes the rest of the line to be ignored. This can be used
to add comments. Example: >
:set ai "set 'autoindent' option
It is not possible to add a comment to a shell command ":!cmd" or to the
":map" command and a few others, because they see the '"' as part of their
argument. This is mentioned where the command is explained.
":map" command and a few others (mainly commands that expect expressions)
that see the '"' as part of their argument:
:argdo
:autocmd
:bufdo
:cexpr (and the like)
:cdo (and the like)
:command
:cscope (and the like)
:debug
:display
:echo (and the like)
:elseif
:execute
:folddoopen
:folddoclosed
:for
:grep (and the like)
:help (and the like)
:if
:let
:make
:map (and the like including :abbrev commands)
:menu (and the like)
:mkspell
:normal
:ownsyntax
:popup
:promptfind (and the like)
:registers
:return
:sort
:syntax
:tabdo
:tearoff
:vimgrep (and the like)
:while
:windo
*:bar* *:\bar*
'|' can be used to separate commands, so you can give multiple commands in one
@@ -823,11 +869,12 @@ it, no matter how many backslashes.
\\# \#
Also see |`=|.
*:<cword>* *:<cWORD>* *:<cfile>* *<cfile>*
*:<sfile>* *<sfile>* *:<afile>* *<afile>*
*:<abuf>* *<abuf>* *:<amatch>* *<amatch>*
*:<cexpr>* *<cexpr>*
*<slnum>* *E495* *E496* *E497* *E499* *E500*
*:<cword>* *<cword>* *:<cWORD>* *<cWORD>*
*:<cexpr>* *<cexpr>* *:<cfile>* *<cfile>*
*:<afile>* *<afile>* *:<abuf>* *<abuf>*
*:<amatch>* *<amatch>*
*:<sfile>* *<sfile>* *:<slnum>* *<slnum>*
*:<sflnum>* *<sflnum>* *E499* *E500*
Note: these are typed literally, they are not special keys!
<cword> is replaced with the word under the cursor (like |star|)
<cWORD> is replaced with the WORD under the cursor (see |WORD|)
@@ -840,15 +887,16 @@ Note: these are typed literally, they are not special keys!
|gf| uses)
<afile> When executing autocommands, is replaced with the file name
of the buffer being manipulated, or the file for a read or
write.
write. *E495*
<abuf> When executing autocommands, is replaced with the currently
effective buffer number (for ":r file" and ":so file" it is
the current buffer, the file being read/sourced is not in a
buffer).
buffer). *E496*
<amatch> When executing autocommands, is replaced with the match for
which this autocommand was executed. It differs from
<afile> only when the file name isn't used to match with
(for FileType, Syntax and SpellFileMissing events).
which this autocommand was executed. *E497*
It differs from <afile> only when the file name isn't used
to match with (for FileType, Syntax and SpellFileMissing
events).
<sfile> When executing a ":source" command, is replaced with the
file name of the sourced file. *E498*
When executing a function, is replaced with:
@@ -858,9 +906,12 @@ Note: these are typed literally, they are not special keys!
Note that filename-modifiers are useless when <sfile> is
used inside a function.
<slnum> When executing a ":source" command, is replaced with the
line number. *E842*
line number. *E842*
When executing a function it's the line number relative to
the start of the function.
<sflnum> When executing a script, is replaced with the line number.
It differs from <slnum> in that <sflnum> is replaced with
the script line number in any situation. *E961*
*filename-modifiers*
*:_%:* *::8* *::p* *::.* *::~* *::h* *::t* *::r* *::e* *::s* *::gs* *::S*
@@ -885,7 +936,8 @@ These modifiers can be given, in this order:
directory.
:. Reduce file name to be relative to current directory, if
possible. File name is unmodified if it is not below the
current directory.
current directory, but on MS-Windows the drive is removed if
it is the current drive.
For maximum shortness, use ":~:.".
:h Head of the file name (the last component and any separators
removed). Cannot be used with :e, :r or :t.
@@ -1154,4 +1206,4 @@ The character used for the pattern indicates the type of command-line:
@ string for |input()|
- text for |:insert| or |:append|
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*debug.txt* For Vim version 8.0. Last change: 2017 Jul 15
*debug.txt* For Vim version 8.1. Last change: 2017 Jul 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -172,4 +172,4 @@ Visual C++ 2005 Express Edition can be downloaded for free from:
http://msdn.microsoft.com/vstudio/express/visualC/default.aspx
=========================================================================
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*debugger.txt* For Vim version 8.0. Last change: 2017 Nov 21
*debugger.txt* For Vim version 8.1. Last change: 2017 Nov 21
VIM REFERENCE MANUAL by Gordon Prieur
@@ -139,4 +139,4 @@ Programming Environment.
For Sun NetBeans support see |netbeans|.
vim:tw=78:sw=4:ts=8:ft=help:norl:
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
+38 -6
View File
@@ -1,4 +1,4 @@
*develop.txt* For Vim version 8.0. Last change: 2017 Jul 31
*develop.txt* For Vim version 8.1. Last change: 2018 May 02
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -18,7 +18,8 @@ See the file README.txt in the "src" directory for an overview of the source
code.
Vim is open source software. Everybody is encouraged to contribute to help
improving Vim. For sending patches a context diff "diff -c" is preferred.
improving Vim. For sending patches a unified diff "diff -u" is preferred.
You can create a pull request on github, but it's not required.
Also see http://vim.wikia.com/wiki/How_to_make_and_submit_a_patch.
==============================================================================
@@ -182,12 +183,43 @@ The basic steps to make changes to the code:
include the diff. Or create a pull request on github.
C COMPILER *style-compiler*
C COMPILER *style-compiler* *ANSI-C* *C89* *C99*
The minimal C compiler version supported is C89, also known as ANSI C.
Later standards don't add much and C89 is the widest supported.
Later standards, such as C99, are not widely supported, or at least not 100%
supported. Therefore we use only some of the C99 features and disallow some
(at least for now).
One restriction that this implies: no // comments, only /* comments */.
Please don't make changes everywhere to use the C99 features, it causes merge
problems for existing patches. Only use them for new and changed code.
Comments ~
Traditionally Vim uses /* comments */. We intend to keep it that way,
especially for file and function headers. For new code or lines of code that
change, it is allowed to use // comments. Especially when it comes after
code:
int some_var; // single line comment useful here
Enums ~
The last item in an enum may have a trailing comma. C89 didn't allow this.
Types ~
"long long" is allowed and can be expected to be 64 bits. Use %lld in printf
formats. Also "long long unsigned" with %llu.
Not to be used ~
These C99 features are not to be used, because not enough compilers support
them:
- Declaration after Statements (MSVC 2012 does not support it). All
declarations need to be at the start of the block.
- Variable length arrays (even in C11 this is an optional feature).
- _Bool and _Complex types.
- "inline" (it's hardly ever needed, let the optimizer do its work)
- flexible array members: Not supported by HP-UX C compiler (John Marriott)
USE OF COMMON FUNCTIONS *style-functions*
@@ -531,4 +563,4 @@ long 32 or 64 bit signed, can hold a pointer
Note that some compilers cannot handle long lines or strings. The C89
standard specifies a limit of 509 characters.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+12 -5
View File
@@ -1,4 +1,4 @@
*diff.txt* For Vim version 8.0. Last change: 2017 Oct 03
*diff.txt* For Vim version 8.1. Last change: 2017 Oct 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -39,7 +39,9 @@ The second and following arguments may also be a directory name. Vim will
then append the file name of the first argument to the directory name to find
the file.
This only works when a standard "diff" command is available. See 'diffexpr'.
By default an internal diff library will be used. When 'diffopt' or
'diffexpr' has been set an external "diff" command will be used. This only
works when such a diff program is available.
Diffs are local to the current tab page |tab-page|. You can't see diffs with
a window in another tab page. This does make it possible to have several
@@ -344,8 +346,9 @@ between file1 and file2: >
The ">" is replaced with the value of 'shellredir'.
The output of "diff" must be a normal "ed" style diff. Do NOT use a context
diff. This example explains the format that Vim expects: >
The output of "diff" must be a normal "ed" style diff or a unified diff. Do
NOT use a context diff. This example explains the format that Vim expects for
the "ed" style diff: >
1a2
> bbb
@@ -384,12 +387,16 @@ Example (this does almost the same as 'diffexpr' being empty): >
endif
silent execute "!diff -a --binary " . opt . v:fname_in . " " . v:fname_new .
\ " > " . v:fname_out
redraw!
endfunction
The "-a" argument is used to force comparing the files as text, comparing as
binaries isn't useful. The "--binary" argument makes the files read in binary
mode, so that a CTRL-Z doesn't end the text on DOS.
The `redraw!` command may not be needed, depending on whether executing a
shell command shows something on the display or not.
*E810* *E97*
Vim will do a test if the diff output looks alright. If it doesn't, you will
get an error message. Possible causes:
@@ -441,4 +448,4 @@ evaluating 'patchexpr'. This hopefully avoids that files in the current
directory are accidentally patched. Vim will also delete files starting with
v:fname_in and ending in ".rej" and ".orig".
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+13 -8
View File
@@ -1,4 +1,4 @@
*digraph.txt* For Vim version 8.0. Last change: 2016 Nov 04
*digraph.txt* For Vim version 8.1. Last change: 2018 Dec 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -24,7 +24,9 @@ An alternative is using the 'keymap' option.
1. Defining digraphs *digraphs-define*
*:dig* *:digraphs*
:dig[raphs] show currently defined digraphs.
:dig[raphs][!] Show currently defined digraphs.
With [!] headers are used to make it a bit easier to
find a specific character.
*E104* *E39*
:dig[raphs] {char1}{char2} {number} ...
Add digraph {char1}{char2} to the list. {number} is
@@ -111,11 +113,14 @@ this, you will have to type <BS> e again. To avoid this don't set the
You may have problems using Vim with characters which have a value above 128.
For example: You insert ue (u-umlaut) and the editor echoes \334 in Insert
mode. After leaving the Insert mode everything is fine. Note that fmt
removes all characters with a value above 128 from the text being formatted.
On some Unix systems this means you have to define the environment-variable
LC_CTYPE. If you are using csh, then put the following line in your .cshrc: >
setenv LC_CTYPE iso_8859_1
mode. After leaving the Insert mode everything is fine. On some Unix systems
this means you have to define the environment-variable LC_CTYPE. If you are
using csh, then put the following line in your .cshrc: >
setenv LC_CTYPE en_US.utf8
(or similar for a different language or country). The value must be a valid
locale on your system, i.e. on Unix-like systems it must be present in the
output of >
locale -a
==============================================================================
3. Default digraphs *digraphs-default*
@@ -1488,4 +1493,4 @@ char digraph hex dec official name ~
ſt ft FB05 64261 LATIN SMALL LIGATURE LONG S T
st st FB06 64262 LATIN SMALL LIGATURE ST
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+20 -18
View File
@@ -1,4 +1,4 @@
*editing.txt* For Vim version 8.0. Last change: 2018 Feb 19
*editing.txt* For Vim version 8.1. Last change: 2018 Dec 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -424,6 +424,15 @@ On Unix and a few other systems you can also use backticks for the file name
argument, for example: >
:next `find . -name ver\\*.c -print`
:view `ls -t *.patch \| head -n1`
Vim will run the command in backticks using the 'shell' and use the standard
output as argument for the given Vim command (error messages from the shell
command will be discarded).
To see what shell command Vim is running, set the 'verbose' option to 4. When
the shell command returns a non-zero exit code, an error message will be
displayed and the Vim command will be aborted. To avoid this make the shell
always return zero like so: >
:next `find . -name ver\\*.c -print \|\| true`
The backslashes before the star are required to prevent the shell from
expanding "ver*.c" prior to execution of the find program. The backslash
before the shell pipe symbol "|" prevents Vim from parsing it as command
@@ -650,8 +659,7 @@ list of the current window.
There is no check for duplicates, it is possible to
add a file to the argument list twice.
The currently edited file is not changed.
{not in Vi} {not available when compiled without the
|+listcmds| feature}
{not in Vi}
Note: you can also use this method: >
:args ## x
< This will add the "x" item and sort the new list.
@@ -665,8 +673,7 @@ list of the current window.
when it's deleted from the argument list.
Example: >
:argdel *.obj
< {not in Vi} {not available when compiled without the
|+listcmds| feature}
< {not in Vi}
:[range]argd[elete] Delete the {range} files from the argument list.
Example: >
@@ -681,8 +688,7 @@ list of the current window.
< Removes all the files from the arglist.
When the last number in the range is too high, up to
the last argument is deleted.
{not in Vi} {not available when compiled without the
|+listcmds| feature}
{not in Vi}
*:argu* *:argument*
:[count]argu[ment] [count] [++opt] [+cmd]
@@ -691,16 +697,14 @@ list of the current window.
when changes have been made and Vim does not want to
|abandon| the current buffer.
Also see |++opt| and |+cmd|.
{not in Vi} {not available when compiled without the
|+listcmds| feature}
{not in Vi}
:[count]argu[ment]! [count] [++opt] [+cmd]
Edit file [count] in the argument list, discard any
changes to the current buffer. When [count] is
omitted the current entry is used.
Also see |++opt| and |+cmd|.
{not in Vi} {not available when compiled without the
|+listcmds| feature}
{not in Vi}
:[count]n[ext] [++opt] [+cmd] *:n* *:ne* *:next* *E165* *E163*
Edit [count] next file. This fails when changes have
@@ -823,7 +827,6 @@ fourth file in the argument list. This happens when you do ":e file".
LOCAL ARGUMENT LIST
{not in Vi}
{not available when compiled without the |+windows| or |+listcmds| features}
*:arglocal*
:argl[ocal] Make a local copy of the global argument list.
@@ -875,8 +878,7 @@ USING THE ARGUMENT LIST
autocommand event is disabled by adding it to
'eventignore'. This considerably speeds up editing
each file.
{not in Vi} {not available when compiled without the
|+listcmds| feature}
{not in Vi}
Also see |:windo|, |:tabdo|, |:bufdo|, |:cdo|, |:ldo|,
|:cfdo| and |:lfdo|
@@ -899,8 +901,8 @@ flag is used for the ":substitute" command to avoid an error for files where
Note: When the 'write' option is off, you are not able to write any file.
*:w* *:write*
*E502* *E503* *E504* *E505*
*E512* *E514* *E667* *E796* *E949*
*E502* *E503* *E504* *E505*
*E512* *E514* *E667* *E796* *E949*
:w[rite] [++opt] Write the whole buffer to the current file. This is
the normal way to save changes to a file. It fails
when the 'readonly' option is set or when there is
@@ -1413,7 +1415,7 @@ cannot be read without the right key.
The text in the swap file and the undo file is also encrypted. *E843*
However, this is done block-by-block and may reduce the time needed to crack a
password. You can disable the swap file, but then a crash will cause you to
lose your work. The undo file can be disabled without much disadvantage. >
lose your work. The undo file can be disabled without too much disadvantage. >
:set noundofile
:noswapfile edit secrets
@@ -1745,4 +1747,4 @@ There are three different types of searching:
currently work with 'path' items that contain a URL or use the double star
with depth limiter (/usr/**2) or upward search (;) notations.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+1466 -361
View File
File diff suppressed because it is too large Load Diff
+3 -6
View File
@@ -25,11 +25,9 @@ MS-Windows のメモ帳のような動作です。
.PP
引数や Vim についての詳細は vim(1) を参照してください。
.PP
オプション 'insertmode' が設定され、テキストを直接、入力できるようになりま
す。
オプション 'insertmode' が設定され、テキストを直接、入力できるようになります。
.br
コピーとペーストのキー操作が MS-Windows と同じになるように、マップが設定され
ます。
コピーとペーストのキー操作が MS-Windows と同じになるように、マップが設定されます。
CTRL-X が切り取り、CTRL-C がコピー、CTRL-V がペーストです。
標準の CTRL-V の操作は CTRL-Q に割り当てられます。
.SH オプション
@@ -41,8 +39,7 @@ eVim の初期化スクリプト。
.SH 別名
evim は "gumbies のための Vim" とも呼ばれています。
evim を使っているあなたはきっと、頭にハンカチをかぶっているのです。
(訳注: gumbies は Monty Python に登場するおもしろ集団。ハンカチをかぶっ
ている。)
(訳注: gumbies は Monty Python に登場するおもしろ集団。ハンカチをかぶっている。)
.SH 関連項目
vim(1)
.SH 著者
+52
View File
@@ -0,0 +1,52 @@
EVIM(1) EVIM(1)
NAME
evim - easy Vim, edit a file with Vim and setup for modeless editing
SYNOPSIS
evim [options] [file ..]
eview
DESCRIPTION
eVim starts Vim and sets options to make it behave like a modeless edi-
tor. This is still Vim but used as a point-and-click editor. This
feels a lot like using Notepad on MS-Windows. eVim will always run in
the GUI, to enable the use of menus and toolbar.
Only to be used for people who really can't work with Vim in the normal
way. Editing will be much less efficient.
eview is the same, but starts in read-only mode. It works just like
evim -R.
See vim(1) for details about Vim, options, etc.
The 'insertmode' option is set to be able to type text directly.
Mappings are setup to make Copy and Paste work with the MS-Windows
keys. CTRL-X cuts text, CTRL-C copies text and CTRL-V pastes text.
Use CTRL-Q to obtain the original meaning of CTRL-V.
OPTIONS
See vim(1).
FILES
/usr/local/lib/vim/evim.vim
The script loaded to initialize eVim.
AKA
Also Known As "Vim for gumbies". When using evim you are expected to
take a handkerchief, make a knot in each corner and wear it on your
head.
SEE ALSO
vim(1)
AUTHOR
Most of Vim was made by Bram Moolenaar, with a lot of help from others.
See the Help/Credits menu.
2002 February 16 EVIM(1)
+2 -2
View File
@@ -1,4 +1,4 @@
*farsi.txt* For Vim version 8.0. Last change: 2015 Aug 29
*farsi.txt* For Vim version 8.1. Last change: 2015 Aug 29
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
@@ -266,4 +266,4 @@ changes made in the current line.
For more information about the bugs refer to rileft.txt.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+27 -3
View File
@@ -1,4 +1,4 @@
*filetype.txt* For Vim version 8.0. Last change: 2018 Feb 04
*filetype.txt* For Vim version 8.1. Last change: 2018 Apr 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -319,6 +319,10 @@ then Vim will load all plugins in these directories and below:
Note that the last one is the value of $VIMRUNTIME which has been expanded.
Note that when using a plugin manager or |packages| many directories will be
added to 'runtimepath'. These plugins each require their own directory, don't
put them directly in ~/.vim/plugin.
What if it looks like your plugin is not being loaded? You can find out what
happens when Vim starts up by using the |-V| argument: >
@@ -634,11 +638,31 @@ By default the following options are set, in accordance with PEP8: >
setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8
To disable this behaviour, set the following variable in your vimrc: >
To disable this behavior, set the following variable in your vimrc: >
let g:python_recommended_style = 0
R MARKDOWN *ft-rmd-plugin*
By default ftplugin/html.vim is not sourced. If you want it sourced, add to
your |vimrc|: >
let rmd_include_html = 1
The 'formatexpr' option is set dynamically with different values for R code
and for Markdown code. If you prefer that 'formatexpr' is not set, add to your
|vimrc|: >
let rmd_dynamic_comments = 0
R RESTRUCTURED TEXT *ft-rrst-plugin*
The 'formatexpr' option is set dynamically with different values for R code
and for ReStructured text. If you prefer that 'formatexpr' is not set, add to
your |vimrc|: >
let rrst_dynamic_comments = 0
RPM SPEC *ft-spec-plugin*
Since the text for this plugin is rather long it has been put in a separate
@@ -691,4 +715,4 @@ The mappings can be disabled with: >
<
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*fold.txt* For Vim version 8.0. Last change: 2017 Mar 18
*fold.txt* For Vim version 8.1. Last change: 2017 Mar 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -601,4 +601,4 @@ used. Otherwise the values from the window where the buffer was edited last
are used.
==============================================================================
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*ft_ada.txt* For Vim version 8.0. Last change: 2010 Jul 20
*ft_ada.txt* For Vim version 8.1. Last change: 2010 Jul 20
ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
@@ -249,7 +249,7 @@ g:decada.Make_Command string
External command used for |g:decada.Make()| (|'makeprg'|).
*g:decada.Error_Format*
g:decada.Error_Format| string
g:decada.Error_Format string
Error format (|'errorformat'|).
==============================================================================
+4 -2
View File
@@ -1,4 +1,6 @@
*ft_rust.txt* Filetype plugin for Rust
*ft_rust.txt* For Vim version 8.1. Last change: 2017 Nov 02
This is documentation for the Rust filetype plugin.
==============================================================================
CONTENTS *rust*
@@ -234,4 +236,4 @@ It also has a few other mappings:
Note: This binding is only available in MacVim.
==============================================================================
vim:tw=78:sw=4:noet:ts=8:ft=help:norl:
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*ft_sql.txt* For Vim version 8.0. Last change: 2013 May 15
*ft_sql.txt* For Vim version 8.1. Last change: 2013 May 15
by David Fishburn
@@ -777,4 +777,4 @@ Setting the filetype back to Perl sets all the usual "perl" related items back
as they were.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+36 -16
View File
@@ -1,4 +1,4 @@
*gui.txt* For Vim version 8.0. Last change: 2018 Mar 06
*gui.txt* For Vim version 8.1. Last change: 2019 Jan 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -547,15 +547,16 @@ floating menus that do not appear on the main menu bar.
5.2 Creating New Menus *creating-menus*
*:me* *:menu* *:noreme* *:noremenu*
*:am* *:amenu* *:an* *:anoremenu*
*:nme* *:nmenu* *:nnoreme* *:nnoremenu*
*:ome* *:omenu* *:onoreme* *:onoremenu*
*:vme* *:vmenu* *:vnoreme* *:vnoremenu*
*:xme* *:xmenu* *:xnoreme* *:xnoremenu*
*:sme* *:smenu* *:snoreme* *:snoremenu*
*:ime* *:imenu* *:inoreme* *:inoremenu*
*:cme* *:cmenu* *:cnoreme* *:cnoremenu*
*:me* *:menu* *:noreme* *:noremenu*
*:am* *:amenu* *:an* *:anoremenu*
*:nme* *:nmenu* *:nnoreme* *:nnoremenu*
*:ome* *:omenu* *:onoreme* *:onoremenu*
*:vme* *:vmenu* *:vnoreme* *:vnoremenu*
*:xme* *:xmenu* *:xnoreme* *:xnoremenu*
*:sme* *:smenu* *:snoreme* *:snoremenu*
*:ime* *:imenu* *:inoreme* *:inoremenu*
*:cme* *:cmenu* *:cnoreme* *:cnoremenu*
*:tlm* *:tlmenu* *:tln* *:tlnoremenu*
*E330* *E327* *E331* *E336* *E333*
*E328* *E329* *E337* *E792*
To create a new menu item, use the ":menu" commands. They are mostly like
@@ -571,6 +572,10 @@ the mouse button down on this will pop up a menu containing the item
"Big Changes", which is a sub-menu containing the item "Delete All Spaces",
which when selected, performs the operation.
To create a menu for terminal mode, use |:tlmenu| instead of |:tmenu| unlike
key mapping (|:tmap|). This is because |:tmenu| is already used for defining
tooltips for menus. See |terminal-typing|.
Special characters in a menu name:
& The next character is the shortcut key. Make sure each
@@ -589,9 +594,9 @@ With the shortcut "F" (while keeping the <Alt> key pressed), and then "O",
this menu can be used. The second part is shown as "Open :e". The ":e"
is right aligned, and the "O" is underlined, to indicate it is the shortcut.
The ":amenu" command can be used to define menu entries for all modes at once.
To make the command work correctly, a character is automatically inserted for
some modes:
The ":amenu" command can be used to define menu entries for all modes at once,
except for Terminal mode. To make the command work correctly, a character is
automatically inserted for some modes:
mode inserted appended ~
Normal nothing nothing
Visual <C-C> <C-\><C-G>
@@ -866,6 +871,16 @@ be used to complete the name of the menu item.
insert-mode menu Eg: >
:emenu File.Exit
:[range]em[enu] {mode} {menu} Like above, but execute the menu for {mode}:
'n': |:nmenu| Normal mode
'v': |:vmenu| Visual mode
's': |:smenu| Select mode
'o': |:omenu| Operator-pending mode
't': |:tlmenu| Terminal mode
'i': |:imenu| Insert mode
'c': |:cmenu| Cmdline mode
If the console-mode vim has been compiled with WANT_MENU defined, you can
use :emenu to access useful menu items you may have got used to from GUI
mode. See 'wildmenu' for an option that works well with this. See
@@ -886,6 +901,7 @@ using the last visual selection.
*:sunme* *:sunmenu*
*:iunme* *:iunmenu*
*:cunme* *:cunmenu*
*:tlu* *:tlunmenu*
To delete a menu item or a whole submenu, use the unmenu commands, which are
analogous to the unmap commands. Eg: >
:unmenu! Edit.Paste
@@ -899,7 +915,9 @@ may be used to complete the name of the menu item for the appropriate mode.
To remove all menus use: *:unmenu-all* >
:unmenu * " remove all menus in Normal and visual mode
:unmenu! * " remove all menus in Insert and Command-line mode
:aunmenu * " remove all menus in all modes
:aunmenu * " remove all menus in all modes, except for Terminal
" mode
:tlunmenu * " remove all menus in Terminal mode
If you want to get rid of the menu bar: >
:set guioptions-=m
@@ -952,6 +970,8 @@ See section |42.4| in the user manual.
:tu[nmenu] {menupath} Remove a tip for a menu or tool.
{only in X11 and Win32 GUI}
Note: To create menus for terminal mode, use |:tlmenu| instead.
When a tip is defined for a menu item, it appears in the command-line area
when the mouse is over that item, much like a standard Windows menu hint in
the status bar. (Except when Vim is in Command-line mode, when of course
@@ -1001,7 +1021,7 @@ it behaves in a strange way.
pointer instead of the cursor.
In the terminal this is the last known
position, which is usually at the last click
or release (mouse movement is irrelevalt).
or release (mouse movement is irrelevant).
Example: >
:popup File
@@ -1079,4 +1099,4 @@ careful!
For the Win32 GUI the external commands are executed in a separate window.
See |gui-shell-win32|.
vim:tw=78:sw=4:ts=8:ft=help:norl:
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
+120 -72
View File
@@ -1,4 +1,4 @@
*gui_mac.txt* For Vim version 8.0. Last change: 2012 Jan 13
*gui_mac.txt* For Vim version 8.1. Last change: 2018 Dec 17
VIM REFERENCE MANUAL by Bjorn Winckler
@@ -12,14 +12,15 @@ The MacVim Graphical User Interface *macvim* *gui-macvim*
4. Special colors |macvim-colors|
5. Menus |macvim-menus|
6. Toolbar |macvim-toolbar|
7. Dialogs |macvim-dialogs|
8. System services |macvim-services|
9. mvim:// URL handler |macvim-url-handler|
10. Keyboard shortcuts |macvim-shortcuts|
11. Trackpad gestures |macvim-gestures|
12. International |macvim-international|
13. Known bugs/missing features |macvim-todo|
14. Hints |macvim-hints|
7. Touch Bar |macvim-touchbar|
8. Dialogs |macvim-dialogs|
9. System services |macvim-services|
10. mvim:// URL handler |macvim-url-handler|
11. Keyboard shortcuts |macvim-shortcuts|
12. Trackpad gestures |macvim-gestures|
13. International |macvim-international|
14. Known bugs/missing features |macvim-todo|
15. Hints |macvim-hints|
Other relevant documentation:
|gui.txt| For generic items of the GUI.
@@ -29,7 +30,7 @@ Other relevant documentation:
==============================================================================
1. MacVim differences *macvim-differences*
One of the goals of MacVim is to make Vim behave like a proper Mac OS X
One of the goals of MacVim is to make Vim behave like a proper macOS
application. For this reason MacVim behaves slightly different from other GUI
ports of Vim. Most of the modifications are provided in the system gvimrc
file; you can quickly open this file and look at it yourself by typing: >
@@ -64,8 +65,8 @@ file at all. In this situation, you will need to set both 'encoding' and
the file is read into memory, the original bytes are left untouched.
*macvim-shift-movement*
Text editors on Mac OS X lets the user hold down shift+movement key to extend
the selection. Also, pressing a printable key whilst selecting replaces the
Text editors on macOS lets the user hold down shift+movement key to extend the
selection. Also, pressing a printable key whilst selecting replaces the
current selection with that character. MacVim can emulate this kind of
behaviour (by providing key bindings and by setting 'keymodel' and
'selectmode' to non-default values) although it is not enabled by default. To
@@ -119,15 +120,22 @@ These are the non-standard commands that MacVim supports:
|:macaction| |:macmenu|
*macvim-find*
Whenever you search for something in Vim (e.g. using "/") the search query is
copied to the OS X "Find Pasteboard". The idea is that if you search for
something and switch to another application, then you can hit <D-g> (or <D-G>)
to repeat the search in the new app. The same feature works if you search in
some app, switch to MacVim and hit <D-g>.
Whenever you search for something in Vim (e.g. using "/"), or hit <D-e> when
you have text selected, the search query is copied to the macOS "Find
Pasteboard". The idea is that if you search for something and switch to
another application, then you can hit <D-g> (or <D-G>) to repeat the search in
the new app. The same feature works if you search in some app, switch to
MacVim and hit <D-g>.
If you would like to turn off sharing Vim's search query to the macOS Find
Pasteboard, you can set |MMShareFindPboard| to "NO". Even when that's set,
<D-g> will still use the OS Find Pasteboard for searching (use |n| instead if
that's not what you want), and <D-e> ("Edit -> Use Selection for Find") will
still share the search pattern to Find Pasteboard.
Note that the command |n| is not the same as <D-g>. The former will repeat
the last search made in Vim, whereas the latter searches for the string on the
OS X Find Pasteboard using the action findNext: (see |:macaction|).
macOS Find Pasteboard using the action findNext: (see |:macaction|).
The <D-g> key equivalent is a great way to bring a search from one window to
another in MacVim. Simply search for something in one window (using "/") then
@@ -155,7 +163,7 @@ up the "Open with" menu. You can also drag and drop files onto the Dock icon
to open them in tabs in a new window, or you can drop them in an already open
window to open the files in tabs in that specific window (it is possible to
have files open in e.g. splits by changing the "Open files from applications"
option in the General preference pane). Finally, you can use Mac OS X System
option in the General preference pane). Finally, you can use macOS System
Services to open files in MacVim, see |macvim-services|.
Use |mvim| script to start MacVim from Terminal.
@@ -205,9 +213,9 @@ history as the window you just closed (however the next window you open will).
For these reasons Quickstart is disabled by default.
*odbeditor* *external-editor*
MacVim can act as an 'external editor' for Mac OS X applications that support
the ODB Editor Protocol (or the 'external editor' protocol). Each application
has different ways of configuring this option, check the application's
MacVim can act as an 'external editor' for macOS applications that support the
ODB Editor Protocol (or the 'external editor' protocol). Each application has
different ways of configuring this option, check the application's
documentation. Once configured properly MacVim can be used to open files in
such an application.
@@ -230,32 +238,32 @@ circumstances. These options can still be changed with the "defaults" command
by opening Terminal and typing >
defaults write org.vim.MacVim KEY VALUE
Check the man page on "defaults" for more information on this command as well
as general information regarding Mac OS X user defaults.
as general information regarding macOS user defaults.
Here is a list of relevant dictionary entries:
KEY VALUE ~
MMCellWidthMultiplier width of a normal glyph in em units [float]
MMDialogsTrackPwd open/save dialogs track the Vim pwd [bool]
MMFullScreenFadeTime fade delay for non-native fullscreen [float]
MMLoginShellArgument login shell parameter [string]
MMLoginShellCommand which shell to use to launch Vim [string]
MMNoFontSubstitution disable automatic font substitution [bool]
MMNoTitleBarWindow hide title bar [bool]
MMShareFindPboard share search text to Find Pasteboard [bool]
MMShowAddTabButton enable "add tab" button on tabline [bool]
MMTabMaxWidth maximum width of a tab [int]
MMTabMinWidth minimum width of a tab [int]
MMTabOptimumWidth default width of a tab [int]
MMTextInsetBottom text area offset in pixels [int]
MMTextInsetLeft text area offset in pixels [int]
MMTextInsetRight text area offset in pixels [int]
MMTextInsetTop text area offset in pixels [int]
MMTexturedWindow use brushed metal window (Tiger only) [bool]
MMTranslateCtrlClick interpret ctrl-click as right-click [bool]
MMUseMouseTime use mousetime to detect multiple clicks [bool]
MMVerticalSplit files open in vertical splits [bool]
MMZoomBoth zoom button maximizes both directions [bool]
*MMCellWidthMultiplier* width of a normal glyph in em units [float]
*MMDialogsTrackPwd* open/save dialogs track the Vim pwd [bool]
*MMFullScreenFadeTime* fade delay for non-native fullscreen [float]
*MMLoginShellArgument* login shell parameter [string]
*MMLoginShellCommand* which shell to use to launch Vim [string]
*MMNoFontSubstitution* disable automatic font substitution [bool]
*MMNoTitleBarWindow* hide title bar [bool]
*MMShareFindPboard* share search text to Find Pasteboard [bool]
*MMShowAddTabButton* enable "add tab" button on tabline [bool]
*MMTabMaxWidth* maximum width of a tab [int]
*MMTabMinWidth* minimum width of a tab [int]
*MMTabOptimumWidth* default width of a tab [int]
*MMTextInsetBottom* text area offset in pixels [int]
*MMTextInsetLeft* text area offset in pixels [int]
*MMTextInsetRight* text area offset in pixels [int]
*MMTextInsetTop* text area offset in pixels [int]
*MMTexturedWindow* use brushed metal window (Tiger only) [bool]
*MMTranslateCtrlClick* interpret ctrl-click as right-click [bool]
*MMUseMouseTime* use mousetime to detect multiple clicks [bool]
*MMVerticalSplit* files open in vertical splits [bool]
*MMZoomBoth* zoom button maximizes both directions [bool]
As an example, if you have more than one mouse button and would wish to free
up Ctrl-click so you can bind it to something else, then the appropriate
@@ -336,18 +344,18 @@ highlight color when a window becomes inactive.
==============================================================================
5. Menus *macvim-menus*
Menus in Mac OS X behave slightly different from other platforms. For that
Menus in macOS behave slightly different from other platforms. For that
reason two new commands have been added to Vim. To understand what these
commands do you must first understand how menus work on OS X.
commands do you must first understand how menus work on macOS.
Each entry in a menu is called a "menu item". With each menu item is
associated: a title, a key equivalent and an action message. When a menu is
displayed the title is shown on the left and the key equivalent (if any) is
shown on the right. Key equivalents enable you to access a menu item using
the keyboard instead of having to use the mouse. When a menu item is clicked
it will send it's associated action message. Actions can be used to instruct
it will send its associated action message. Actions can be used to instruct
MacVim to paste some text (paste:), open a new window (newWindow:), etc.
Certain actions are standard throughout OS X which is why MacVim must be able
Certain actions are standard throughout macOS which is why MacVim must be able
to set these for each menu item. (E.g. the menu item "Edit.Paste" must be
bound to the action "paste:" otherwise pasting won't work in dialogs since
that is the action that instructs them to paste something.)
@@ -439,6 +447,8 @@ Action Description ~
fileOpen: Show "File Open" dialog
findNext: Search forward using the "Find Pasteboard"
findPrevious: Search backward using the "Find Pasteboard"
useSelectionForFind: Search the selected text and share to "Find
Pasteboard"
fontSizeDown: Decrease font size
fontSizeUp: Increase font size
hide: Hide MacVim
@@ -467,19 +477,47 @@ empty space which will shink or expand so that the items to the right of it
are right-aligned. A space (flexspace) will be created for any toolbar item
whose name begins with "-space" ("-flexspace") and ends with "-"
Toolbar icons should be tiff, png or icns, of dimension 32x32 or 24x24 pixels.
The larger size is used when 'tbis' is "medium" or "large", otherwise the
smaller size is used (which is the default). If the icon file only contains
one dimension then Mac OS X will scale the icon to the appropriate dimension
if necessary. To avoid this, use a file format which supports multiple
resolutions (such as icns) and provide both 32x32 and 24x24 versions of the
icon.
Toolbar icons should be tiff, png, icns, or heic, of dimension 32x32 or 24x24
pixels. The larger size is used when 'tbis' is "medium" or "large", otherwise
the smaller size is used (which is the default). If the icon file only
contains one dimension then macOS will scale the icon to the appropriate
dimension if necessary. To avoid this, use a file format which supports
multiple resolutions (such as icns) and provide both 32x32 and 24x24 versions
of the icon.
Note: Only a subset of the builtin toolbar items presently have icons. If no
icon can be found a warning triangle is displayed instead.
==============================================================================
7. Dialogs *macvim-dialogs*
7. Touch Bar *macvim-touchbar*
Touch Bar in MacVim works similar to the toolbar (see |macvim-toolbar|). The
difference is that you use the special menu "TouchBar" instead of "ToolBar": >
:an TouchBar.Hello :echo "Hello"<CR>
The separators work similar to how toolbars work: >
:an TouchBar.-Sep- <Nop>
:an TouchBar.-space1- <Nop>
:an TouchBar.-flexspace2- <Nop>
The first example is a Vim separator (see |menu-separator|) and injects a
space between two buttons. The second creates a smaller space than a normal
separator and are specified by names that begin with "-space" and ends with
"-". The third creates a flexible empty space which will shrink or expand so
that items after it will be right-aligned, and is specified by names that
begin with "-flexspace" and ends with "-".
You can specify icons for Touch Bar buttons the same way for toolbar icons.
Touch Bar icons should ideally be 36x36 pixels, and no larger than 44x44
pixels. You can also use default template icons provided by Apple by using
their template names. An example: >
:an icon=NSTouchBarListViewTemplate TouchBar.ShowList <Nop>
This feature only works on Mac devices that come with Touch Bars. On the ones
that don't, nothing will show up.
==============================================================================
8. Dialogs *macvim-dialogs*
Dialogs can be controlled with the keyboard in two ways. By default each
button in a dialog is bound to a key. The button that is highlighted by blue
@@ -498,13 +536,12 @@ select the current button. The current button is indicated with a blue
outline.
==============================================================================
8. System services *macvim-services*
9. System services *macvim-services*
MacVim supports two system services. These can be accessed from the MacVim
submenu in the Services menu or by right-clicking a selection. For services
to work, MacVim.app should be located in the /Applications folder. (You might
have to logout and then login again before Mac OS X detects the MacVim
services.)
have to logout and then login again before macOS detects the MacVim services.)
These are the currently supported services:
* New MacVim Buffer With Selection: Create a new buffer and paste the
@@ -516,7 +553,7 @@ The services respect the "Open files from applications" setting in the general
preferences.
==============================================================================
9. mvim:// URL handler *mvim://* *macvim-url-handler*
10. mvim:// URL handler *mvim://* *macvim-url-handler*
MacVim supports a custom URL handler for "mvim://" URLs. The handler is
supposed to be compatible to TextMate's URL scheme as documented at >
@@ -537,7 +574,7 @@ will open the file /etc/profile on line 20 when clicked in a web browser.
Note that url has to be a file:// url pointing to an existing local file.
==============================================================================
10. Keyboard shortcuts *macvim-shortcuts*
11. Keyboard shortcuts *macvim-shortcuts*
Most keyboard shortcuts in MacVim are bound to menu items and can be
discovered by looking through the menus (see |macvim-menus| on how to create
@@ -611,13 +648,13 @@ sometimes be slightly involved. Here are all the things you need to consider:
- Bindings to <D-..> are case sensitive: <D-d> is not the same as <D-D>. If
you want to map something to Cmd+Shift+d, then you need to use <D-D>, not
<D-S-d> or <D-S-D>.
- Some command key shortcuts are reserved by Mac OS X and cannot be mapped to
- Some command key shortcuts are reserved by macOS and cannot be mapped to
(e.g. <D-Tab>). However, some of these shortcuts can be freed up in the
System Preferences under Keyboard (e.g. Cmd+Space).
- A few command key mappings are set up by MacVim, see |cmd-movement|.
==============================================================================
11. Trackpad gestures *macvim-gestures*
12. Trackpad gestures *macvim-gestures*
MacVim supports trackpad swipe gestures. By default this can be used to
navigate back/forward in the help (try it!).
@@ -633,6 +670,10 @@ Each gesture generates one of the following Vim pseudo keys:
Generated when swiping three fingers across the trackpad in a
vertical direction. (Not supported by the Apple Magic Mouse.)
*<ForceClick>*
Generated when doing a Force click by pressing hard on a trackpad.
(Only supported on trackpads that support Force Touch.)
You can map these keys like with any other key using the |:map| family of
commands. For example, the following commands map left/right swipe to change
to the previous/next tab in normal mode: >
@@ -648,13 +689,13 @@ As another example, here is how to switch buffers by swiping left/right: >
See the section on |key-mapping| for more help on how to map keys.
==============================================================================
12. International *macvim-international*
13. International *macvim-international*
When editing non-English text it may be convenient to keep separate keyboard
layouts for normal and insert mode. This is supported via the 'imd' option on
Mac OS X 10.5 or later (on 10.4 the 'imd' option support is not as useful as
it only switches between Roman and non-Roman input sources and it has been
known not to work very reliably).
macOS 10.5 or later (on 10.4 the 'imd' option support is not as useful as it
only switches between Roman and non-Roman input sources and it has been known
not to work very reliably).
For example: When 'noimd' is enabled (i.e. IM is enabled) the input source is
saved when toggling between normal and insert mode, so you can use a US layout
@@ -669,11 +710,14 @@ wrong layout when going back to normal mode, then select the layout you want
to use in normal mode and type ":set imd" followed by ":set noimd".
==============================================================================
13. Known bugs/missing features *macvim-todo*
14. Known bugs/missing features *macvim-todo*
This list is by no means exhaustive, it only enumerates some of the more
prominent bugs/missing features.
- Under macOS Mojave (10.14), the default renderer (Core Text renderer) has
some performance issues and scrolling is not as smooth as previous macOS
versions (10.13 or below).
- Localized menus are not supported. Choosing anything but "English" in the
"International" pane of "System Prefences" may break the menus (and
toolbar).
@@ -685,15 +729,19 @@ prominent bugs/missing features.
then opened in Preview where it may be printed.
- The toolbar looks ugly and is not very useful.
If you find new bugs then please post your findings to the vim_mac mailing
list: *vim_mac_group* >
Other bugs and issues are tracked on Github. If you find new bugs then please
file an issue there: >
https://github.com/macvim-dev/macvim/issues
There is also a vim_mac mailing list. You can also post your findings of bugs
and issues there as well: *vim_mac_group* >
http://groups.google.com/group/vim_mac
This is also the best place for making feature requests as well as for asking
general questions about MacVim.
==============================================================================
14. Hints *macvim-hints*
15. Hints *macvim-hints*
In this section some general (not necessarily MacVim specific) hints are
given.
@@ -805,4 +853,4 @@ page.
Solution: ~
Post your question on the |vim_mac| mailing list and wait for an answer.
vim:tw=78:sw=4:ts=8:ft=help:norl:
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
+3 -3
View File
@@ -1,4 +1,4 @@
*gui_w32.txt* For Vim version 8.0. Last change: 2017 Oct 27
*gui_w32.txt* For Vim version 8.1. Last change: 2017 Oct 27
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -442,7 +442,7 @@ with the Intellimouse driver 2.2 and when "Universal Scrolling" is turned on.
XPM support *w32-xpm-support*
Gvim can be build on MS-Windows with support for XPM files. |+xpm_w32|
GVim can be build on MS-Windows with support for XPM files. |+xpm_w32|
See the Make_mvc.mak file for instructions, search for XPM.
To try out if XPM support works do this: >
@@ -451,4 +451,4 @@ To try out if XPM support works do this: >
:exe 'sign place 1 line=1 name=vimxpm file=' . expand('%:p')
<
vim:tw=78:sw=4:ts=8:ft=help:norl:
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
+21 -4
View File
@@ -1,4 +1,4 @@
*gui_x11.txt* For Vim version 8.0. Last change: 2017 Jul 28
*gui_x11.txt* For Vim version 8.1. Last change: 2018 May 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -61,6 +61,9 @@ launches the gui but doesn't fork (see |mvim|). However, doing |:gui| in an
already running vim will never fork in MacVim.
"gvim --nofork" does the same as "gvim -f".
When there are running jobs Vim will not fork, because the processes would no
longer be child processes.
*E851* *E852*
When starting the GUI fails Vim will try to continue running in the terminal.
@@ -382,8 +385,8 @@ you might have to use the file ~/.gtkrc-2.0 instead, depending on your
distribution.
For GTK+ 3, an effect similar to the above can be obtained by adding the
following snippet of CSS code to $XDG_HOME_DIR/gtk-3.0/gtk.css (usually,
$HOME/.config/gtk-3.0/gtk.css):
following snippet of CSS code to $XDG_HOME_DIR/gtk-3.0/gtk.css (see the next
section):
For GTK+ 3 < 3.20: >
@@ -414,6 +417,10 @@ stable support for GTK+ CSS:
GTK+ uses CSS for styling and layout of widgets. In this subsection, we'll
have a quick look at GTK+ CSS through simple, illustrative examples.
You can usually edit the config with: >
vim $HOME/.config/gtk-3.0/gtk.css
Example 1. Empty Space Adjustment ~
By default, the toolbar and the tabline of the GTK+ 3 GUI are somewhat larger
@@ -498,6 +505,16 @@ unexpectedly less attractive or even deteriorates their usability. Keep this
in mind always when you try improving a theme.
Example 3. border color ~
To eliminate borders when maximized: >
@define-color bg_color #1B2B34;
#vim-main-window {
background-color: @bg_color;
}
Using Vim as a GTK+ plugin ~
*gui-gtk-socketid*
When the GTK+ version of Vim starts up normally, it creates its own top level
@@ -727,4 +744,4 @@ and use CLIPBOARD ("+) for cut/copy/paste operations. You thus have access to
both by choosing to use either of the "* or "+ registers.
vim:tw=78:sw=4:ts=8:ft=help:norl:
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*hangulin.txt* For Vim version 8.0. Last change: 2015 Nov 24
*hangulin.txt* For Vim version 8.1. Last change: 2015 Nov 24
VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam
@@ -109,4 +109,4 @@ Send comments, patches and suggestions to:
SungHyun Nam <goweol@gmail.com>
Chi-Deok Hwang <...>
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*hebrew.txt* For Vim version 8.0. Last change: 2007 Jun 14
*hebrew.txt* For Vim version 8.1. Last change: 2007 Jun 14
VIM REFERENCE MANUAL by Ron Aaron (and Avner Lottem)
@@ -139,4 +139,4 @@ The result is that all Hebrew characters are displayed as ~x. To solve this
problem, set isprint=@,128-255.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+21 -13
View File
@@ -1,4 +1,4 @@
*help.txt* For Vim version 8.0. Last change: 2017 Oct 28
*help.txt* For Vim version 8.1. Last change: 2019 Jan 17
VIM - main help file
k
@@ -10,7 +10,7 @@ Close this window: Use ":q<Enter>".
Jump to a subject: Position the cursor on a tag (e.g. |bars|) and hit CTRL-].
With the mouse: ":set mouse=a" to enable the mouse (in xterm or GUI).
Double-click the left mouse button on a tag, e.g. |bars|.
Jump back: Type CTRL-T or CTRL-O. Repeat to go further back.
Jump back: Type CTRL-O. Repeat to go further back.
Get specific help: It is possible to go directly to whatever you want help
on, by giving an argument to the |:help| command.
@@ -31,13 +31,17 @@ Get specific help: It is possible to go directly to whatever you want help
help entries for "word".
Or use ":helpgrep word". |:helpgrep|
Getting started: Do the Vim tutor, a 20 minute interactive training for the
basic commands, see |vimtutor|.
Read the user manual from start to end: |usr_01.txt|
Vim stands for Vi IMproved. Most of Vim was made by Bram Moolenaar, but only
through the help of many others. See |credits|.
------------------------------------------------------------------------------
*doc-file-list* *Q_ct*
BASIC:
|quickref| Overview of the most common commands you will use
|tutor| 30 minutes training course for beginners
|tutor| 20 minutes training course for beginners
|copying| About copyrights
|iccf| Helping poor children in Uganda
|sponsor| Sponsor Vim development, become a registered Vim user
@@ -113,7 +117,6 @@ Basic editing ~
|scroll.txt| scrolling the text in the window
|insert.txt| Insert and Replace mode
|change.txt| deleting and replacing text
|indent.txt| automatic indenting for C and other languages
|undo.txt| Undo and Redo
|repeat.txt| repeating commands, Vim scripts and debugging
|visual.txt| using the Visual mode (selecting a text area)
@@ -126,14 +129,11 @@ Advanced editing ~
|pattern.txt| regexp patterns and search commands
|map.txt| key mapping and abbreviations
|tagsrch.txt| tags and special searches
|quickfix.txt| commands for a quick edit-compile-fix cycle
|windows.txt| commands for using multiple windows and buffers
|tabpage.txt| commands for using multiple tab pages
|syntax.txt| syntax highlighting
|spell.txt| spell checking
|diff.txt| working with two to four versions of the same file
|autocmd.txt| automatically executing commands on an event
|filetype.txt| settings done specifically for a type of file
|eval.txt| expression evaluation, conditional commands
|channel.txt| Jobs, Channels, inter-process communication
|fold.txt| hide (fold) ranges of lines
@@ -143,18 +143,27 @@ Special issues ~
|remote.txt| using Vim as a server or client
|term.txt| using different terminals and mice
|terminal.txt| Terminal window support
Programming language support ~
|indent.txt| automatic indenting for C and other languages
|syntax.txt| syntax highlighting
|textprop.txt| Attaching properties to text for highlighting or other
|filetype.txt| settings done specifically for a type of file
|quickfix.txt| commands for a quick edit-compile-fix cycle
|ft_ada.txt| Ada (the programming language) support
|ft_rust.txt| Filetype plugin for Rust
|ft_sql.txt| about the SQL filetype plugin
Language support ~
|digraph.txt| list of available digraphs
|mbyte.txt| multi-byte text support
|mlang.txt| non-English language support
|rileft.txt| right-to-left editing mode
|arabic.txt| Arabic language support and editing
|farsi.txt| Farsi (Persian) editing
|hebrew.txt| Hebrew language support and editing
|russian.txt| Russian language support and editing
|ft_ada.txt| Ada (the programming language) support
|ft_rust.txt| Filetype plugin for Rust
|ft_sql.txt| about the SQL filetype plugin
|hangulin.txt| Hangul (Korean) input mode
|rileft.txt| right-to-left editing mode
GUI ~
|gui.txt| Graphical User Interface (GUI)
@@ -172,7 +181,6 @@ Interfaces ~
|if_ole.txt| OLE automation interface for Win32
|if_ruby.txt| Ruby interface
|debugger.txt| Interface with a debugger
|workshop.txt| Sun Visual Workshop interface
|netbeans.txt| NetBeans External Editor interface
|sign.txt| debugging signs
@@ -226,4 +234,4 @@ will try to find help for it. Especially for options in single quotes, e.g.
'compatible'.
------------------------------------------------------------------------------
vim:tw=78:fo=tcq2:isk=!-~,^*,^\|,^\":ts=8:ft=help:norl:
vim:tw=78:isk=!-~,^*,^\|,^\":ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*helphelp.txt* For Vim version 8.0. Last change: 2017 Mar 19
*helphelp.txt* For Vim version 8.1. Last change: 2017 Mar 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -370,4 +370,4 @@ highlighting. So do these:
You can find the details in $VIMRUNTIME/syntax/help.vim
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*howto.txt* For Vim version 8.0. Last change: 2006 Apr 02
*howto.txt* For Vim version 8.1. Last change: 2006 Apr 02
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -93,4 +93,4 @@ How to ... *howdoi* *how-do-i* *howto* *how-to*
|2html.vim| convert a colored file to HTML
|less| use Vim like less or more with syntax highlighting
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:
+2 -2
View File
@@ -1,4 +1,4 @@
*if_cscop.txt* For Vim version 8.0. Last change: 2018 Jan 21
*if_cscop.txt* For Vim version 8.1. Last change: 2018 Jan 21
VIM REFERENCE MANUAL by Andy Kahn
@@ -484,4 +484,4 @@ For a cscope version for Win32 see (seems abandoned):
Win32 support was added by Sergey Khorev <sergey.khorev@gmail.com>. Contact
him if you have Win32-specific issues.
vim:tw=78:ts=8:ft=help:norl:
vim:tw=78:ts=8:noet:ft=help:norl:

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