mirror of
https://github.com/macvim-dev/macvim.git
synced 2026-06-02 11:19:22 +02:00
Compare commits
430 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f7ff60b4f2 | |||
| 0a444c1956 | |||
| cf80560781 | |||
| 41adbabe54 | |||
| 79541d2844 | |||
| 7d8b5890c1 | |||
| bbad3edf5a | |||
| ab71bd8d69 | |||
| 51a7454cd2 | |||
| b513d3079b | |||
| d2ec51f399 | |||
| 5378e1cf0a | |||
| 0db547d459 | |||
| 63dbd5838d | |||
| 4ba02a87ed | |||
| ed8bc78d23 | |||
| 2fb8f684d8 | |||
| 614ab8aa00 | |||
| 07dc18ffa4 | |||
| 01a060da74 | |||
| 8ff5af9544 | |||
| 76a6345433 | |||
| dabe5a224a | |||
| 10efcd5b02 | |||
| 1341024e08 | |||
| bbbdc4731a | |||
| 6e1489e531 | |||
| 007de995cb | |||
| acb1c07777 | |||
| b1e26a6b4c | |||
| af6bd98de1 | |||
| d8606ce022 | |||
| 7e1b43e6c2 | |||
| e126fa9652 | |||
| 3067a4dd0d | |||
| 4ace6ab7e7 | |||
| dc2f73a698 | |||
| b730f0c7ba | |||
| 916a818cea | |||
| 4e303c8ba8 | |||
| e5d11768a2 | |||
| 1a0d5034a6 | |||
| 8e5b2b51bd | |||
| 5ad7ee8107 | |||
| f951416a83 | |||
| 7c6b2b0e86 | |||
| 2b84949ad8 | |||
| 247bb7e43b | |||
| 82e8c92ebe | |||
| 8fbb254859 | |||
| 199fa1f766 | |||
| dd1d7f6c3c | |||
| 2aa9b8f2c5 | |||
| dc42fa339e | |||
| 1447ebfdfb | |||
| ea5fe03309 | |||
| 5958f95a40 | |||
| 48d23bb4de | |||
| b3907e6722 | |||
| 3df190c296 | |||
| addc156c38 | |||
| 6b731886ca | |||
| 25a494ce60 | |||
| 447f6ce8bd | |||
| 2d67d307ee | |||
| dbc0d2163a | |||
| c0f05d0bd1 | |||
| f77af0e613 | |||
| c4568ab37e | |||
| f0d58efc9d | |||
| 0c27cbcacf | |||
| 61fb8d8c67 | |||
| d3471e5785 | |||
| c2c02574ec | |||
| b244373bec | |||
| f3aea59afa | |||
| 883ba68cda | |||
| 218959bc91 | |||
| f49cc60aa8 | |||
| 2c43cd672d | |||
| 8617b40159 | |||
| d42333d8e9 | |||
| ddd1f9183b | |||
| ded5f1bed7 | |||
| 1bbb619483 | |||
| 98fed9dfc9 | |||
| 49b33ba08a | |||
| c5e9d1f5b4 | |||
| eda162cdbb | |||
| 0b95deff83 | |||
| d0721058f4 | |||
| 389ab7122b | |||
| 9e353b5265 | |||
| ba3ff53930 | |||
| dcd71cbaed | |||
| fdb10af4c1 | |||
| 0b38f54730 | |||
| 0f62cf5b33 | |||
| da1c11c641 | |||
| 9691f82f86 | |||
| bd9a0c611c | |||
| 4dbc262764 | |||
| 91aa372a22 | |||
| 8400c5301d | |||
| 57dd4c6884 | |||
| f7acf2b63c | |||
| fa0fad6d73 | |||
| ad821e46d9 | |||
| 5502bbf9ff | |||
| f080d70a82 | |||
| 324ff06148 | |||
| a9a8e04eab | |||
| 0e473839d0 | |||
| 833e5dab14 | |||
| 7dd6ce67e2 | |||
| 1c29943416 | |||
| d474686a09 | |||
| 5f57bdcab7 | |||
| c0fe4978f2 | |||
| f86db78fed | |||
| babfcf54ae | |||
| e6e3989c1b | |||
| bf9679ae46 | |||
| 93d7fe4bd5 | |||
| 0fd6be77de | |||
| eda9e9c2fe | |||
| b6f1480a6a | |||
| 9f84ded38b | |||
| 4c5d815256 | |||
| 42a4ea10af | |||
| 839e81e12d | |||
| 38654503b0 | |||
| 2c64ca1802 | |||
| 04c86d27fe | |||
| 115510f0bd | |||
| 29e7fe55be | |||
| b361db077f | |||
| 64f410742f | |||
| 65dc12143a | |||
| d95c3c253c | |||
| a2aad02830 | |||
| 27e80c885b | |||
| a16bc54503 | |||
| d6105cb408 | |||
| 6cdb2c9811 | |||
| 453ce7c16b | |||
| 3d6014f033 | |||
| 108e7b422b | |||
| 4be190ebe6 | |||
| 0664089ecc | |||
| 1d3dbcf743 | |||
| 6a2633b00b | |||
| 95ba5c364f | |||
| 1df2fa47b4 | |||
| 798184cc67 | |||
| c0543e145f | |||
| 00bf8cd211 | |||
| 1307d1c003 | |||
| a05a0d325c | |||
| df77cef92e | |||
| 0cc7b2d6cc | |||
| d8f27b30d6 | |||
| 019dfe6855 | |||
| 2610990709 | |||
| 8295666dc2 | |||
| 7554c548a4 | |||
| 8b2dcf4d6e | |||
| 2bc152ab53 | |||
| 0e9deefb4f | |||
| 7701f30856 | |||
| 4a5abbd613 | |||
| 586c70cdfe | |||
| 4f88875725 | |||
| 35bc7d6c52 | |||
| 54ade9f7e3 | |||
| 95bafa296a | |||
| 6bfafd9d5f | |||
| 6dff58f15c | |||
| f45d747ebf | |||
| d3dc062160 | |||
| 2bfddfc508 | |||
| 438d176e35 | |||
| b434ae2a1f | |||
| 95892c27b2 | |||
| dfe72b890a | |||
| ee91c33570 | |||
| 8c63e0ec31 | |||
| 09037503ea | |||
| 31cbadf74b | |||
| 45c5c86e63 | |||
| 6dae96ef7a | |||
| d339828b4b | |||
| c75878c923 | |||
| 3b30168f04 | |||
| 7ff8a3cfb6 | |||
| 4841a7ccae | |||
| 7b3e0ab5a8 | |||
| 3616c83b36 | |||
| 592e3c7823 | |||
| a968ddf5a4 | |||
| d716ad7ff8 | |||
| 9cea87c577 | |||
| e76d7a63df | |||
| 0bd4051732 | |||
| 4ff4290de1 | |||
| 76c612a166 | |||
| 1f402806b8 | |||
| de2bd37bec | |||
| b872e63fc6 | |||
| 036b09ca78 | |||
| b0e982bf05 | |||
| d4f73438bb | |||
| 3f3fb0b147 | |||
| 933bef779a | |||
| d9c3c62eaf | |||
| 92fcfe15a5 | |||
| 1f7e0c9ec1 | |||
| 92cbf62b87 | |||
| cec12cd661 | |||
| 476c0db002 | |||
| 4b1c9a91b5 | |||
| 365fede8af | |||
| a87f8fd3fe | |||
| fe15b7dfa6 | |||
| 9e81db9742 | |||
| 664323e7c8 | |||
| e961cba3cb | |||
| cc3a997746 | |||
| 198fa066b2 | |||
| acf95bfed2 | |||
| 110bd60985 | |||
| d2b58c0a2c | |||
| 65985ac998 | |||
| 8f4499b816 | |||
| e8fa05b5bc | |||
| 42c63356d7 | |||
| 6e272acc82 | |||
| e3521d9cbb | |||
| 785fc6567f | |||
| 50eb16c3b2 | |||
| ac49f61a20 | |||
| ab18673731 | |||
| da1f71d75f | |||
| d02a1945e3 | |||
| 33c20214bc | |||
| bf1c1b8513 | |||
| 24839edc54 | |||
| fe8ef98dd1 | |||
| c91c500348 | |||
| 8aeb504fc6 | |||
| a214079008 | |||
| 0f7683f973 | |||
| 5c6f574bd1 | |||
| 32d19c1820 | |||
| 78dcd4f002 | |||
| 0d5f21c3df | |||
| 42335f50bc | |||
| c787539747 | |||
| 3b8defd0a5 | |||
| cfcb2d4ffe | |||
| bd9a53c06c | |||
| 1b7fefcbce | |||
| 90a997987d | |||
| 643b614087 | |||
| 274cea35c6 | |||
| 3f1f9b0f9d | |||
| 67f8ab8299 | |||
| 25328e39d2 | |||
| 84d9390480 | |||
| be7053b6bd | |||
| 007921611b | |||
| 4c7b08f640 | |||
| e797abf3c7 | |||
| c93262b2e3 | |||
| f29c1c6aa3 | |||
| 6b0b83f768 | |||
| e828b7621c | |||
| 84f1c3dbe4 | |||
| 93a1df2c20 | |||
| 6f8bdab8e2 | |||
| a5c48c2698 | |||
| 02c972153d | |||
| 99f043a57d | |||
| a750ac2288 | |||
| 53c8a478cc | |||
| 99396d4cbf | |||
| d4a1aabe37 | |||
| ea5d7e71c0 | |||
| 198cb66d65 | |||
| 0b1468884a | |||
| ed5a9d6612 | |||
| f29a0fcb35 | |||
| e67a7d690a | |||
| 800c4f7cc1 | |||
| f1c118be93 | |||
| 20aac6c112 | |||
| acca8df9d4 | |||
| c9cc9c78f2 | |||
| 7ee3f15b21 | |||
| 3c5b8cd254 | |||
| 94f01956a5 | |||
| b3c2a8c3b3 | |||
| 32bbd00949 | |||
| 9049b68612 | |||
| f13daa46da | |||
| f6ceaf1e05 | |||
| 379fb76b08 | |||
| dd5d18eadf | |||
| 2bf4fe07b6 | |||
| 8c9e7b00f6 | |||
| 92c1b69641 | |||
| ba7f8db26d | |||
| a449a7c6b9 | |||
| fc65cabb15 | |||
| 627cb6a6b3 | |||
| 6f6ef7c195 | |||
| a06afc7f5e | |||
| 4cbdf155ca | |||
| 490169b266 | |||
| 0529583ff1 | |||
| 98fc8d7b6c | |||
| ef51eff309 | |||
| 7c60505e10 | |||
| 74c8be2c68 | |||
| 2551c037e4 | |||
| 7cb33a14c9 | |||
| 4edfe2d2a2 | |||
| bdfb631f49 | |||
| c206733e6f | |||
| 8b0d5ce881 | |||
| 8e7218c459 | |||
| 3b3a506f57 | |||
| 320bf2d85e | |||
| 4c5765bc47 | |||
| 5178dd4390 | |||
| c631f2df62 | |||
| 47ad5656e1 | |||
| 00f123a565 | |||
| 8e82c057ff | |||
| 8c5e0093c9 | |||
| 2f0f871159 | |||
| 7feb35e778 | |||
| fd6100b2aa | |||
| 0f6b4f06de | |||
| da6e8919e7 | |||
| 830e3583da | |||
| 2e31048c30 | |||
| c26f7c6053 | |||
| f1883479be | |||
| 3f6a16f022 | |||
| d8f0cef2bd | |||
| 142ae736d9 | |||
| 46fad2ef0b | |||
| cea1f9ec52 | |||
| e35b0a69a7 | |||
| 111bbd61e9 | |||
| 264cf5cfaf | |||
| 3b9fcfcffa | |||
| 4d77c65a9e | |||
| 9bc1eac2c7 | |||
| 81f56536b1 | |||
| b476cb7d8d | |||
| 2dfcef4c08 | |||
| 396659592f | |||
| 37b15568c2 | |||
| 167ae42685 | |||
| d7cc163570 | |||
| 2f6a346a4c | |||
| 80d83c094d | |||
| 33c4dbb74b | |||
| effed9315c | |||
| 6a9348a1b9 | |||
| 4d9b1a2c01 | |||
| 1a8a544a61 | |||
| 5d9c7ebdfc | |||
| def7b1dc61 | |||
| 2b926fcb3c | |||
| 60d0871000 | |||
| c7f08b7ee1 | |||
| 164251ff80 | |||
| 976b847f43 | |||
| 0065c3fd3b | |||
| 0e4db3d79e | |||
| e85c90d810 | |||
| 21f990e1c2 | |||
| ef73a28401 | |||
| d473c8c101 | |||
| f53c692240 | |||
| b0acacd767 | |||
| b31a3acce1 | |||
| 51e9fbf1c7 | |||
| d569bb0299 | |||
| 90f1e2b7bc | |||
| dae7a8964c | |||
| f66ad538c3 | |||
| 027327ab58 | |||
| ee8415bc59 | |||
| 0ee81cb638 | |||
| 02ae96681a | |||
| d0807a4aff | |||
| efe03738f6 | |||
| 4b16ee743e | |||
| 1598f9937a | |||
| 38efd1d17a | |||
| 4d37557ac6 | |||
| 3f347e4716 | |||
| af559d2c9f | |||
| bfde0b482d | |||
| 9fa9506853 | |||
| f8f88f89e1 | |||
| 980bab457e | |||
| 40385dbcdf | |||
| de3b3677f7 | |||
| b782ba475a | |||
| b1cf16113f | |||
| 7ebf4e1c34 | |||
| 8d8a65e389 | |||
| 447bd5a346 | |||
| ee380ae376 | |||
| 91d2e783b4 | |||
| 917e32bda5 | |||
| 5db7eec423 | |||
| 02ab97709d | |||
| 7cc596547a | |||
| 60c26e028a | |||
| 3cb4448b8a | |||
| 218beb3e96 | |||
| 7da1fb5532 | |||
| 87ea64ca96 | |||
| 82593c1a3a |
+27
-8
@@ -4,11 +4,23 @@ dist: trusty
|
||||
os:
|
||||
- osx
|
||||
|
||||
osx_image: xcode9.3
|
||||
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
|
||||
XCODEFLAGS="MACOSX_DEPLOYMENT_TARGET=10.8"
|
||||
@@ -21,32 +33,38 @@ env:
|
||||
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.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
|
||||
- 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
|
||||
@@ -57,6 +75,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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# List of distributed Vim files.
|
||||
# Used by Makefile and upload.aap.
|
||||
# Used by Makefile.
|
||||
|
||||
# source files for all source archives
|
||||
SRC_ALL = \
|
||||
@@ -101,9 +101,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 \
|
||||
@@ -143,6 +141,7 @@ SRC_ALL = \
|
||||
src/testdir/if_ver*.vim \
|
||||
src/testdir/color_ramp.vim \
|
||||
src/proto.h \
|
||||
src/protodef.h \
|
||||
src/proto/arabic.pro \
|
||||
src/proto/beval.pro \
|
||||
src/proto/blowfish.pro \
|
||||
@@ -229,7 +228,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 \
|
||||
@@ -275,6 +274,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
|
||||
@@ -291,7 +306,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 \
|
||||
@@ -612,7 +626,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 \
|
||||
@@ -640,6 +653,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 \
|
||||
@@ -677,6 +691,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 \
|
||||
|
||||
@@ -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.
|
||||
@@ -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,4 +1,4 @@
|
||||
README_zOS.txt for version 8.1 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.
|
||||
|
||||
+8
-6
@@ -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!
|
||||
|
||||
@@ -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.
|
||||
|
||||
Vendored
+2
-2
@@ -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
|
||||
@@ -632,7 +632,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
@@ -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, '\', {})
|
||||
|
||||
@@ -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
@@ -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
|
||||
|
||||
@@ -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
|
||||
@@ -5,6 +5,7 @@
|
||||
" Last Change: 2001 May 27
|
||||
|
||||
aunmenu *
|
||||
tlunmenu *
|
||||
|
||||
silent! unlet did_install_default_menus
|
||||
silent! unlet did_install_syntax_menu
|
||||
|
||||
+13
-3
@@ -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
|
||||
@@ -656,12 +657,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
|
||||
@@ -829,13 +835,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.
|
||||
@@ -859,6 +866,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|,
|
||||
|
||||
+20
-6
@@ -476,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.
|
||||
|
||||
@@ -487,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.
|
||||
|
||||
@@ -708,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
|
||||
@@ -719,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
|
||||
@@ -726,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
|
||||
@@ -844,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"
|
||||
@@ -1447,7 +1461,7 @@ to the name of an external program for Vim to use for text formatting. The
|
||||
program.
|
||||
|
||||
*format-formatexpr*
|
||||
The 'formatexpr' option can be set to a Vim Script function that performs
|
||||
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
|
||||
@@ -1481,7 +1495,7 @@ text. Put it in your autoload directory, e.g. ~/.vim/autoload/format.vim: >
|
||||
|
||||
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.
|
||||
|
||||
@@ -163,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.
|
||||
@@ -594,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.
|
||||
|
||||
+55
-13
@@ -534,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
|
||||
@@ -832,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|)
|
||||
@@ -849,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:
|
||||
@@ -867,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*
|
||||
|
||||
+10
-3
@@ -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:
|
||||
|
||||
+246
-56
@@ -180,10 +180,10 @@ function() or funcref(). When calling the function the Dictionary and/or
|
||||
arguments will be passed to the function. Example: >
|
||||
|
||||
let Cb = function('Callback', ['foo'], myDict)
|
||||
call Cb()
|
||||
call Cb('bar')
|
||||
|
||||
This will invoke the function as if using: >
|
||||
call myDict.Callback('foo')
|
||||
call myDict.Callback('foo', 'bar')
|
||||
|
||||
This is very useful when passing a function around, e.g. in the arguments of
|
||||
|ch_open()|.
|
||||
@@ -954,6 +954,13 @@ These three can be repeated and mixed. Examples:
|
||||
|
||||
expr8 *expr8*
|
||||
-----
|
||||
This expression is either |expr9| or a sequence of the alternatives below,
|
||||
in any order. E.g., these are all possible:
|
||||
expr9[expr1].name
|
||||
expr9.name[expr1]
|
||||
expr9(expr1, ...)[expr1].name
|
||||
|
||||
|
||||
expr8[expr1] item of String or |List| *expr-[]* *E111*
|
||||
*E909* *subscript*
|
||||
If expr8 is a Number or String this results in a String that contains the
|
||||
@@ -2015,13 +2022,15 @@ abs({expr}) Float or Number absolute value of {expr}
|
||||
acos({expr}) Float arc cosine of {expr}
|
||||
add({list}, {item}) List append {item} to |List| {list}
|
||||
and({expr}, {expr}) Number bitwise AND
|
||||
append({lnum}, {string}) Number append {string} below line {lnum}
|
||||
append({lnum}, {list}) Number append lines {list} below line {lnum}
|
||||
argc() Number number of files in the argument list
|
||||
append({lnum}, {text}) Number append {text} below line {lnum}
|
||||
appendbufline({expr}, {lnum}, {text})
|
||||
Number append {text} below line {lnum}
|
||||
in buffer {expr}
|
||||
argc([{winid}]) Number number of files in the argument list
|
||||
argidx() Number current index in the argument list
|
||||
arglistid([{winnr} [, {tabnr}]]) Number argument list id
|
||||
argv({nr}) String {nr} entry of the argument list
|
||||
argv() List the argument list
|
||||
argv({nr} [, {winid}]) String {nr} entry of the argument list
|
||||
argv([-1, {winid}]) List the argument list
|
||||
assert_beeps({cmd}) Number assert {cmd} causes a beep
|
||||
assert_equal({exp}, {act} [, {msg}])
|
||||
Number assert {exp} is equal to {act}
|
||||
@@ -2029,7 +2038,8 @@ assert_equalfile({fname-one}, {fname-two})
|
||||
Number assert file contents is equal
|
||||
assert_exception({error} [, {msg}])
|
||||
Number assert {error} is in v:exception
|
||||
assert_fails({cmd} [, {error}]) Number assert {cmd} fails
|
||||
assert_fails({cmd} [, {error} [, {msg}]])
|
||||
Number assert {cmd} fails
|
||||
assert_false({actual} [, {msg}])
|
||||
Number assert {actual} is false
|
||||
assert_inrange({lower}, {upper}, {actual} [, {msg}])
|
||||
@@ -2101,8 +2111,8 @@ confirm({msg} [, {choices} [, {default} [, {type}]]])
|
||||
copy({expr}) any make a shallow copy of {expr}
|
||||
cos({expr}) Float cosine of {expr}
|
||||
cosh({expr}) Float hyperbolic cosine of {expr}
|
||||
count({list}, {expr} [, {ic} [, {start}]])
|
||||
Number count how many {expr} are in {list}
|
||||
count({comp}, {expr} [, {ic} [, {start}]])
|
||||
Number count how many {expr} are in {comp}
|
||||
cscope_connection([{num}, {dbpath} [, {prepend}]])
|
||||
Number checks existence of cscope connection
|
||||
cursor({lnum}, {col} [, {off}])
|
||||
@@ -2111,7 +2121,7 @@ cursor({list}) Number move cursor to position in {list}
|
||||
debugbreak({pid}) Number interrupt process being debugged
|
||||
deepcopy({expr} [, {noref}]) any make a full copy of {expr}
|
||||
delete({fname} [, {flags}]) Number delete the file or directory {fname}
|
||||
deletebufline({expr}, {first}[, {last}])
|
||||
deletebufline({expr}, {first} [, {last}])
|
||||
Number delete lines from buffer {expr}
|
||||
did_filetype() Number |TRUE| if FileType autocmd event used
|
||||
diff_filler({lnum}) Number diff filler lines about {lnum}
|
||||
@@ -2196,6 +2206,7 @@ gettabvar({nr}, {varname} [, {def}])
|
||||
any variable {varname} in tab {nr} or {def}
|
||||
gettabwinvar({tabnr}, {winnr}, {name} [, {def}])
|
||||
any {name} in {winnr} in tab page {tabnr}
|
||||
gettagstack([{nr}]) Dict get the tag stack of window {nr}
|
||||
getwininfo([{winid}]) List list of info about each window
|
||||
getwinpos([{timeout}]) List X and Y coord in pixels of the Vim window
|
||||
getwinposx() Number X coord in pixels of the Vim window
|
||||
@@ -2297,7 +2308,6 @@ perleval({expr}) any evaluate |Perl| expression
|
||||
pow({x}, {y}) Float {x} to the power of {y}
|
||||
prevnonblank({lnum}) Number line nr of non-blank line <= {lnum}
|
||||
printf({fmt}, {expr1}...) String format text
|
||||
prompt_addtext({buf}, {expr}) none add text to a prompt buffer
|
||||
prompt_setcallback({buf}, {expr}) none set prompt callback function
|
||||
prompt_setinterrupt({buf}, {text}) none set prompt interrupt function
|
||||
prompt_setprompt({buf}, {text}) none set prompt text
|
||||
@@ -2324,7 +2334,6 @@ remote_read({serverid} [, {timeout}])
|
||||
remote_send({server}, {string} [, {idvar}])
|
||||
String send key sequence
|
||||
remote_startserver({name}) none become server {name}
|
||||
String send key sequence
|
||||
remove({list}, {idx} [, {end}]) any remove items {idx}-{end} from {list}
|
||||
remove({dict}, {key}) any remove entry {key} from {dict}
|
||||
rename({from}, {to}) Number rename (move) file from {from} to {to}
|
||||
@@ -2349,8 +2358,8 @@ searchpos({pattern} [, {flags} [, {stopline} [, {timeout}]]])
|
||||
server2client({clientid}, {string})
|
||||
Number send reply string
|
||||
serverlist() String get a list of available servers
|
||||
setbufline({expr}, {lnum}, {line})
|
||||
Number set line {lnum} to {line} in buffer
|
||||
setbufline({expr}, {lnum}, {text})
|
||||
Number set line {lnum} to {text} in buffer
|
||||
{expr}
|
||||
setbufvar({expr}, {varname}, {val})
|
||||
none set {varname} in buffer {expr} to {val}
|
||||
@@ -2369,12 +2378,14 @@ settabvar({nr}, {varname}, {val}) none set {varname} in tab page {nr} to {val}
|
||||
settabwinvar({tabnr}, {winnr}, {varname}, {val})
|
||||
none set {varname} in window {winnr} in tab
|
||||
page {tabnr} to {val}
|
||||
settagstack({nr}, {dict} [, {action}])
|
||||
Number modify tag stack using {dict}
|
||||
setwinvar({nr}, {varname}, {val}) none set {varname} in window {nr} to {val}
|
||||
sha256({string}) String SHA256 checksum of {string}
|
||||
shellescape({string} [, {special}])
|
||||
String escape {string} for use as shell
|
||||
command argument
|
||||
shiftwidth() Number effective value of 'shiftwidth'
|
||||
shiftwidth([{col}]) Number effective value of 'shiftwidth'
|
||||
simplify({filename}) String simplify filename as much as possible
|
||||
sin({expr}) Float sine of {expr}
|
||||
sinh({expr}) Float hyperbolic sine of {expr}
|
||||
@@ -2409,6 +2420,8 @@ submatch({nr} [, {list}]) String or List
|
||||
specific match in ":s" or substitute()
|
||||
substitute({expr}, {pat}, {sub}, {flags})
|
||||
String all {pat} in {expr} replaced with {sub}
|
||||
swapinfo({fname}) Dict information about swap file {fname}
|
||||
swapname({expr}) String swap file of buffer {expr}
|
||||
synID({lnum}, {col}, {trans}) Number syntax ID at {lnum} and {col}
|
||||
synIDattr({synID}, {what} [, {mode}])
|
||||
String attribute {what} of syntax ID {synID}
|
||||
@@ -2451,12 +2464,12 @@ term_setkill({buf}, {how}) none set signal to stop job in terminal
|
||||
term_setrestore({buf}, {command}) none set command to restore terminal
|
||||
term_setsize({buf}, {rows}, {cols})
|
||||
none set the size of a terminal
|
||||
term_start({cmd}, {options}) Job open a terminal window and run a job
|
||||
term_start({cmd}, {options}) Number open a terminal window and run a job
|
||||
term_wait({buf} [, {time}]) Number wait for screen to be updated
|
||||
test_alloc_fail({id}, {countdown}, {repeat})
|
||||
none make memory allocation fail
|
||||
test_autochdir() none enable 'autochdir' during startup
|
||||
test_feedinput() none add key sequence to input buffer
|
||||
test_feedinput({string}) none add key sequence to input buffer
|
||||
test_garbagecollect_now() none free memory right now for testing
|
||||
test_ignore_error({expr}) none ignore a specific error
|
||||
test_null_channel() Channel null value for testing
|
||||
@@ -2465,7 +2478,10 @@ test_null_job() Job null value for testing
|
||||
test_null_list() List null value for testing
|
||||
test_null_partial() Funcref null value for testing
|
||||
test_null_string() String null value for testing
|
||||
test_override({expr}, {val}) none test with Vim internal overrides
|
||||
test_option_not_set({name}) none reset flag indicating option was set
|
||||
test_override({expr}, {val}) none test with Vim internal overrides
|
||||
test_scrollbar({which}, {value}, {dragging})
|
||||
none scroll in the GUI for testing
|
||||
test_settime({expr}) none set current time for testing
|
||||
timer_info([{id}]) List information about timers
|
||||
timer_pause({id}, {pause}) none pause or unpause a timer
|
||||
@@ -2477,7 +2493,7 @@ tolower({expr}) String the String {expr} switched to lowercase
|
||||
toupper({expr}) String the String {expr} switched to uppercase
|
||||
tr({src}, {fromstr}, {tostr}) String translate chars of {src} in {fromstr}
|
||||
to chars in {tostr}
|
||||
trim({text}[, {mask}]) String trim characters in {mask} from {text}
|
||||
trim({text} [, {mask}]) String trim characters in {mask} from {text}
|
||||
trunc({expr}) Float truncate Float {expr}
|
||||
type({name}) Number type of variable {name}
|
||||
undofile({name}) String undo file name for {name}
|
||||
@@ -2497,6 +2513,7 @@ win_screenpos({nr}) List get screen position of window {nr}
|
||||
winbufnr({nr}) Number buffer number of window {nr}
|
||||
wincol() Number window column of the cursor
|
||||
winheight({nr}) Number height of window {nr}
|
||||
winlayout([{tabnr}]) List layout of windows in tab {tabnr}
|
||||
winline() Number window line of the cursor
|
||||
winnr([{expr}]) Number number of current window
|
||||
winrestcmd() String returns command to restore window sizes
|
||||
@@ -2554,10 +2571,10 @@ and({expr}, {expr}) *and()*
|
||||
:let flag = and(bits, 0x80)
|
||||
|
||||
|
||||
append({lnum}, {expr}) *append()*
|
||||
When {expr} is a |List|: Append each item of the |List| as a
|
||||
append({lnum}, {text}) *append()*
|
||||
When {text} is a |List|: Append each item of the |List| as a
|
||||
text line below line {lnum} in the current buffer.
|
||||
Otherwise append {expr} as one text line below line {lnum} in
|
||||
Otherwise append {text} as one text line below line {lnum} in
|
||||
the current buffer.
|
||||
{lnum} can be zero to insert a line before the first one.
|
||||
Returns 1 for failure ({lnum} out of range or out of memory),
|
||||
@@ -2581,8 +2598,15 @@ appendbufline({expr}, {lnum}, {text}) *appendbufline()*
|
||||
:let failed = appendbufline(13, 0, "# THE START")
|
||||
<
|
||||
*argc()*
|
||||
argc() The result is the number of files in the argument list of the
|
||||
current window. See |arglist|.
|
||||
argc([{winid}])
|
||||
The result is the number of files in the argument list. See
|
||||
|arglist|.
|
||||
If {winid} is not supplied, the argument list of the current
|
||||
window is used.
|
||||
If {winid} is -1, the global argument list is used.
|
||||
Otherwise {winid} specifies the window of which the argument
|
||||
list is used: either the window number or the window ID.
|
||||
Returns -1 if the {winid} argument is invalid.
|
||||
|
||||
*argidx()*
|
||||
argidx() The result is the current index in the argument list. 0 is
|
||||
@@ -2593,7 +2617,7 @@ arglistid([{winnr} [, {tabnr}]])
|
||||
Return the argument list ID. This is a number which
|
||||
identifies the argument list being used. Zero is used for the
|
||||
global argument list. See |arglist|.
|
||||
Return -1 if the arguments are invalid.
|
||||
Returns -1 if the arguments are invalid.
|
||||
|
||||
Without arguments use the current window.
|
||||
With {winnr} only use this window in the current tab page.
|
||||
@@ -2602,17 +2626,19 @@ arglistid([{winnr} [, {tabnr}]])
|
||||
{winnr} can be the window number or the |window-ID|.
|
||||
|
||||
*argv()*
|
||||
argv([{nr}]) The result is the {nr}th file in the argument list of the
|
||||
current window. See |arglist|. "argv(0)" is the first one.
|
||||
Example: >
|
||||
argv([{nr} [, {winid}])
|
||||
The result is the {nr}th file in the argument list. See
|
||||
|arglist|. "argv(0)" is the first one. Example: >
|
||||
:let i = 0
|
||||
:while i < argc()
|
||||
: let f = escape(fnameescape(argv(i)), '.')
|
||||
: exe 'amenu Arg.' . f . ' :e ' . f . '<CR>'
|
||||
: let i = i + 1
|
||||
:endwhile
|
||||
< Without the {nr} argument a |List| with the whole |arglist| is
|
||||
returned.
|
||||
< Without the {nr} argument, or when {nr} is -1, a |List| with
|
||||
the whole |arglist| is returned.
|
||||
|
||||
The {winid} argument specifies the window ID, see |argc()|.
|
||||
|
||||
assert_beeps({cmd}) *assert_beeps()*
|
||||
Run {cmd} and add an error message to |v:errors| if it does
|
||||
@@ -2657,7 +2683,7 @@ assert_exception({error} [, {msg}]) *assert_exception()*
|
||||
call assert_exception('E492:')
|
||||
endtry
|
||||
|
||||
assert_fails({cmd} [, {error}]) *assert_fails()*
|
||||
assert_fails({cmd} [, {error} [, {msg}]]) *assert_fails()*
|
||||
Run {cmd} and add an error message to |v:errors| if it does
|
||||
NOT produce an error. Also see |assert-return|.
|
||||
When {error} is given it must match in |v:errmsg|.
|
||||
@@ -2787,15 +2813,15 @@ balloon_show({expr}) *balloon_show()*
|
||||
|
||||
When showing a balloon is not possible nothing happens, no
|
||||
error message.
|
||||
{only available when compiled with the +balloon_eval or
|
||||
+balloon_eval_term feature}
|
||||
{only available when compiled with the |+balloon_eval| or
|
||||
|+balloon_eval_term| feature}
|
||||
|
||||
balloon_split({msg}) *balloon_split()*
|
||||
Split {msg} into lines to be displayed in a balloon. The
|
||||
splits are made for the current window size and optimize to
|
||||
show debugger output.
|
||||
Returns a |List| with the split lines.
|
||||
{only available when compiled with the +balloon_eval_term
|
||||
{only available when compiled with the |+balloon_eval_term|
|
||||
feature}
|
||||
|
||||
*browse()*
|
||||
@@ -3529,14 +3555,14 @@ delete({fname} [, {flags}]) *delete()*
|
||||
To delete a line from the buffer use |:delete| or
|
||||
|deletebufline()|.
|
||||
|
||||
deletebufline({expr}, {first}[, {last}]) *deletebufline()*
|
||||
deletebufline({expr}, {first} [, {last}]) *deletebufline()*
|
||||
Delete lines {first} to {last} (inclusive) from buffer {expr}.
|
||||
If {last} is omitted then delete line {first} only.
|
||||
On success 0 is returned, on failure 1 is returned.
|
||||
|
||||
For the use of {expr}, see |bufname()| above.
|
||||
|
||||
{first} and {last} are used like with |setline()|. Note that
|
||||
{first} and {last} are used like with |getline()|. Note that
|
||||
when using |line()| this refers to the current buffer. Use "$"
|
||||
to refer to the last line in buffer {expr}.
|
||||
|
||||
@@ -3789,7 +3815,10 @@ expand({expr} [, {nosuf} [, {list}]]) *expand()*
|
||||
<abuf> autocmd buffer number (as a String!)
|
||||
<amatch> autocmd matched name
|
||||
<sfile> sourced script file or function name
|
||||
<slnum> sourced script file line number
|
||||
<slnum> sourced script line number or function
|
||||
line number
|
||||
<sflnum> script file line number, also when in
|
||||
a function
|
||||
<cword> word under the cursor
|
||||
<cWORD> WORD under the cursor
|
||||
<client> the {clientid} of the last received
|
||||
@@ -4307,7 +4336,7 @@ getbufinfo([{dict}])
|
||||
endfor
|
||||
<
|
||||
To get buffer-local options use: >
|
||||
getbufvar({bufnr}, '&')
|
||||
getbufvar({bufnr}, '&option_name')
|
||||
|
||||
<
|
||||
*getbufline()*
|
||||
@@ -4488,6 +4517,8 @@ getcmdline() *getcmdline()*
|
||||
Example: >
|
||||
:cmap <F7> <C-\>eescape(getcmdline(), ' \')<CR>
|
||||
< Also see |getcmdtype()|, |getcmdpos()| and |setcmdpos()|.
|
||||
Returns an empty string when entering a password or using
|
||||
|inputsecret()|.
|
||||
|
||||
getcmdpos() *getcmdpos()*
|
||||
Return the position of the cursor in the command line as a
|
||||
@@ -4585,7 +4616,6 @@ getcurpos() Get the position of the cursor. This is like getpos('.'), but
|
||||
getcwd([{winnr} [, {tabnr}]])
|
||||
The result is a String, which is the name of the current
|
||||
working directory.
|
||||
Without arguments, for the current window.
|
||||
|
||||
With {winnr} return the local current directory of this window
|
||||
in the current tab page. {winnr} can be the window number or
|
||||
@@ -4720,6 +4750,10 @@ getloclist({nr} [, {what}]) *getloclist()*
|
||||
If the optional {what} dictionary argument is supplied, then
|
||||
returns the items listed in {what} as a dictionary. Refer to
|
||||
|getqflist()| for the supported items in {what}.
|
||||
If {what} contains 'filewinid', then returns the id of the
|
||||
window used to display files from the location list. This
|
||||
field is applicable only when called from a location list
|
||||
window.
|
||||
|
||||
getmatches() *getmatches()*
|
||||
Returns a |List| with all matches previously defined by
|
||||
@@ -4939,6 +4973,34 @@ gettabwinvar({tabnr}, {winnr}, {varname} [, {def}]) *gettabwinvar()*
|
||||
To obtain all window-local variables use: >
|
||||
gettabwinvar({tabnr}, {winnr}, '&')
|
||||
|
||||
gettagstack([{nr}]) *gettagstack()*
|
||||
The result is a Dict, which is the tag stack of window {nr}.
|
||||
{nr} can be the window number or the |window-ID|.
|
||||
When {nr} is not specified, the current window is used.
|
||||
When window {nr} doesn't exist, an empty Dict is returned.
|
||||
|
||||
The returned dictionary contains the following entries:
|
||||
curidx Current index in the stack. When at
|
||||
top of the stack, set to (length + 1).
|
||||
Index of bottom of the stack is 1.
|
||||
items List of items in the stack. Each item
|
||||
is a dictionary containing the
|
||||
entries described below.
|
||||
length Number of entries in the stack.
|
||||
|
||||
Each item in the stack is a dictionary with the following
|
||||
entries:
|
||||
bufnr buffer number of the current jump
|
||||
from cursor position before the tag jump.
|
||||
See |getpos()| for the format of the
|
||||
returned list.
|
||||
matchnr current matching tag number. Used when
|
||||
multiple matching tags are found for a
|
||||
name.
|
||||
tagname name of the tag
|
||||
|
||||
See |tagstack| for more information about the tag stack.
|
||||
|
||||
getwininfo([{winid}]) *getwininfo()*
|
||||
Returns information about windows as a List with Dictionaries.
|
||||
|
||||
@@ -5918,6 +5980,7 @@ maparg({name} [, {mode} [, {abbr} [, {dict}]]]) *maparg()*
|
||||
(|mapmode-ic|)
|
||||
"sid" The script local ID, used for <sid> mappings
|
||||
(|<SID>|).
|
||||
"lnum" The line number in "sid", zero if unknown.
|
||||
"nowait" Do not wait for other, longer mappings.
|
||||
(|:map-<nowait>|).
|
||||
|
||||
@@ -5965,11 +6028,14 @@ match({expr}, {pat} [, {start} [, {count}]]) *match()*
|
||||
When {expr} is a |List| then this returns the index of the
|
||||
first item where {pat} matches. Each item is used as a
|
||||
String, |Lists| and |Dictionaries| are used as echoed.
|
||||
|
||||
Otherwise, {expr} is used as a String. The result is a
|
||||
Number, which gives the index (byte offset) in {expr} where
|
||||
{pat} matches.
|
||||
|
||||
A match at the first character or |List| item returns zero.
|
||||
If there is no match -1 is returned.
|
||||
|
||||
For getting submatches see |matchlist()|.
|
||||
Example: >
|
||||
:echo match("testing", "ing") " results in 4
|
||||
@@ -7499,6 +7565,37 @@ settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
|
||||
:call settabwinvar(3, 2, "myvar", "foobar")
|
||||
< This function is not available in the |sandbox|.
|
||||
|
||||
settagstack({nr}, {dict} [, {action}]) *settagstack()*
|
||||
Modify the tag stack of the window {nr} using {dict}.
|
||||
{nr} can be the window number or the |window-ID|.
|
||||
|
||||
For a list of supported items in {dict}, refer to
|
||||
|gettagstack()|
|
||||
*E962*
|
||||
If {action} is not present or is set to 'r', then the tag
|
||||
stack is replaced. If {action} is set to 'a', then new entries
|
||||
from {dict} are pushed onto the tag stack.
|
||||
|
||||
Returns zero for success, -1 for failure.
|
||||
|
||||
Examples:
|
||||
Set current index of the tag stack to 4: >
|
||||
call settagstack(1005, {'curidx' : 4})
|
||||
|
||||
< Empty the tag stack of window 3: >
|
||||
call settagstack(3, {'items' : []})
|
||||
|
||||
< Push a new item onto the tag stack: >
|
||||
let pos = [bufnr('myfile.txt'), 10, 1, 0]
|
||||
let newtag = [{'tagname' : 'mytag', 'from' : pos}]
|
||||
call settagstack(2, {'items' : newtag}, 'a')
|
||||
|
||||
< Save and restore the tag stack: >
|
||||
let stack = gettagstack(1003)
|
||||
" do something else
|
||||
call settagstack(1003, stack)
|
||||
unlet stack
|
||||
<
|
||||
setwinvar({nr}, {varname}, {val}) *setwinvar()*
|
||||
Like |settabwinvar()| for the current tab page.
|
||||
Examples: >
|
||||
@@ -7541,11 +7638,17 @@ shellescape({string} [, {special}]) *shellescape()*
|
||||
< See also |::S|.
|
||||
|
||||
|
||||
shiftwidth() *shiftwidth()*
|
||||
shiftwidth([{col}]) *shiftwidth()*
|
||||
Returns the effective value of 'shiftwidth'. This is the
|
||||
'shiftwidth' value unless it is zero, in which case it is the
|
||||
'tabstop' value. This function was introduced with patch
|
||||
7.3.694 in 2012, everybody should have it by now.
|
||||
7.3.694 in 2012, everybody should have it by now (however it
|
||||
did not allow for the optional {col} argument until 8.1.542).
|
||||
|
||||
When there is one argument {col} this is used as column number
|
||||
for which to return the 'shiftwidth' value. This matters for the
|
||||
'vartabstop' feature. If the 'vartabstop' setting is enabled and
|
||||
no {col} argument is given, column 1 will be assumed.
|
||||
|
||||
|
||||
simplify({filename}) *simplify()*
|
||||
@@ -8000,6 +8103,32 @@ substitute({expr}, {pat}, {sub}, {flags}) *substitute()*
|
||||
|submatch()| returns. Example: >
|
||||
:echo substitute(s, '%\(\x\x\)', {m -> '0x' . m[1]}, 'g')
|
||||
|
||||
swapinfo({fname}) *swapinfo()*
|
||||
The result is a dictionary, which holds information about the
|
||||
swapfile {fname}. The available fields are:
|
||||
version Vim version
|
||||
user user name
|
||||
host host name
|
||||
fname original file name
|
||||
pid PID of the Vim process that created the swap
|
||||
file
|
||||
mtime last modification time in seconds
|
||||
inode Optional: INODE number of the file
|
||||
dirty 1 if file was modified, 0 if not
|
||||
Note that "user" and "host" are truncated to at most 39 bytes.
|
||||
In case of failure an "error" item is added with the reason:
|
||||
Cannot open file: file not found or in accessible
|
||||
Cannot read file: cannot read first block
|
||||
Not a swap file: does not contain correct block ID
|
||||
Magic number mismatch: Info in first block is invalid
|
||||
|
||||
swapname({expr}) *swapname()*
|
||||
The result is the swap file path of the buffer {expr}.
|
||||
For the use of {expr}, see |bufname()| above.
|
||||
If buffer {expr} is the current buffer, the result is equal to
|
||||
|:swapname| (unless no swap file).
|
||||
If buffer {expr} has no swap file, returns an empty string.
|
||||
|
||||
synID({lnum}, {col}, {trans}) *synID()*
|
||||
The result is a Number, which is the syntax ID at the position
|
||||
{lnum} and {col} in the current window.
|
||||
@@ -8081,7 +8210,7 @@ synconcealed({lnum}, {col}) *synconcealed()*
|
||||
concealable region if there are two consecutive regions
|
||||
with the same replacement character. For an example, if
|
||||
the text is "123456" and both "23" and "45" are concealed
|
||||
and replace by the character "X", then:
|
||||
and replaced by the character "X", then:
|
||||
call returns ~
|
||||
synconcealed(lnum, 1) [0, '', 0]
|
||||
synconcealed(lnum, 2) [1, 'X', 1]
|
||||
@@ -8309,7 +8438,7 @@ term_dumpdiff({filename}, {filename} [, {options}])
|
||||
The top part of the buffer contains the contents of the first
|
||||
file, the bottom part of the buffer contains the contents of
|
||||
the second file. The middle part shows the differences.
|
||||
The parts are separated by a line of dashes.
|
||||
The parts are separated by a line of equals.
|
||||
|
||||
If the {options} argument is present, it must be a Dict with
|
||||
these possible members:
|
||||
@@ -8354,7 +8483,9 @@ term_dumpwrite({buf}, {filename} [, {options}])
|
||||
Dump the contents of the terminal screen of {buf} in the file
|
||||
{filename}. This uses a format that can be used with
|
||||
|term_dumpload()| and |term_dumpdiff()|.
|
||||
If {filename} already exists an error is given. *E953*
|
||||
If the job in the terminal already finished an error is given:
|
||||
*E958*
|
||||
If {filename} already exists an error is given: *E953*
|
||||
Also see |terminal-diff|.
|
||||
|
||||
{options} is a dictionary with these optional entries:
|
||||
@@ -8400,8 +8531,8 @@ term_getcursor({buf}) *term_getcursor()*
|
||||
"dict" can have these members:
|
||||
"visible" one when the cursor is visible, zero when it
|
||||
is hidden.
|
||||
"blink" one when the cursor is visible, zero when it
|
||||
is hidden.
|
||||
"blink" one when the cursor is blinking, zero when it
|
||||
is not blinking.
|
||||
"shape" 1 for a block cursor, 2 for underline and 3
|
||||
for a vertical bar.
|
||||
|
||||
@@ -8433,7 +8564,7 @@ term_getscrolled({buf}) *term_getscrolled()*
|
||||
used for |term_getline()| and |getline()|, so that: >
|
||||
term_getline(buf, N)
|
||||
< is equal to: >
|
||||
`getline(N + term_getscrolled(buf))
|
||||
getline(N + term_getscrolled(buf))
|
||||
< (if that line exists).
|
||||
|
||||
{buf} is used as with |term_getsize()|.
|
||||
@@ -8591,9 +8722,8 @@ term_start({cmd}, {options}) *term_start()*
|
||||
|job-options|. However, not all options can be used. These
|
||||
are supported:
|
||||
all timeout options
|
||||
"stoponexit"
|
||||
"callback", "out_cb", "err_cb"
|
||||
"exit_cb", "close_cb"
|
||||
"stoponexit", "cwd", "env"
|
||||
"callback", "out_cb", "err_cb", "exit_cb", "close_cb"
|
||||
"in_io", "in_top", "in_bot", "in_name", "in_buf"
|
||||
"out_io", "out_name", "out_buf", "out_modifiable", "out_msg"
|
||||
"err_io", "err_name", "err_buf", "err_modifiable", "err_msg"
|
||||
@@ -8697,6 +8827,15 @@ test_null_partial() *test_null_partial()*
|
||||
test_null_string() *test_null_string()*
|
||||
Return a String that is null. Only useful for testing.
|
||||
|
||||
test_option_not_set({name}) *test_option_not_set()*
|
||||
Reset the flag that indicates option {name} was set. Thus it
|
||||
looks like it still has the default value. Use like this: >
|
||||
set ambiwidth=double
|
||||
call test_option_not_set('ambiwidth')
|
||||
< Now the 'ambiwidth' option behaves like it was never changed,
|
||||
even though the value is "double".
|
||||
Only to be used for testing!
|
||||
|
||||
test_override({name}, {val}) *test_override()*
|
||||
Overrides certain parts of Vims internal processing to be able
|
||||
to run tests. Only to be used for testing Vim!
|
||||
@@ -8706,6 +8845,7 @@ test_override({name}, {val}) *test_override()*
|
||||
|
||||
name effect when {val} is non-zero ~
|
||||
redraw disable the redrawing() function
|
||||
redraw_flag ignore the RedrawingDisabled flag
|
||||
char_avail disable the char_avail() function
|
||||
starting reset the "starting" variable, see below
|
||||
nfa_fail makes the NFA regexp engine fail to force a
|
||||
@@ -8722,6 +8862,23 @@ test_override({name}, {val}) *test_override()*
|
||||
< The value of "starting" is saved. It is restored by: >
|
||||
call test_override('starting', 0)
|
||||
|
||||
test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
|
||||
Pretend using scrollbar {which} to move it to position
|
||||
{value}. {which} can be:
|
||||
left Left scrollbar of the current window
|
||||
right Right scrollbar of the current window
|
||||
hor Horizontal scrollbar
|
||||
|
||||
For the vertical scrollbars {value} can be 1 to the
|
||||
line-count of the buffer. For the horizontal scrollbar the
|
||||
{value} can be between 1 and the maximum line length, assuming
|
||||
'wrap' is not set.
|
||||
|
||||
When {dragging} is non-zero it's like dragging the scrollbar,
|
||||
otherwise it's like clicking in the scrollbar.
|
||||
Only works when the {which} scrollbar actually exists,
|
||||
obviously only when using the GUI.
|
||||
|
||||
test_settime({expr}) *test_settime()*
|
||||
Set the time Vim uses internally. Currently only used for
|
||||
timestamps in the history, as they are used in viminfo, and
|
||||
@@ -8837,7 +8994,7 @@ tr({src}, {fromstr}, {tostr}) *tr()*
|
||||
echo tr("<blob>", "<>", "{}")
|
||||
< returns "{blob}"
|
||||
|
||||
trim({text}[, {mask}]) *trim()*
|
||||
trim({text} [, {mask}]) *trim()*
|
||||
Return {text} as a String where any character in {mask} is
|
||||
removed from the beginning and end of {text}.
|
||||
If {mask} is not given, {mask} is all characters up to 0x20,
|
||||
@@ -9037,7 +9194,7 @@ win_getid([{win} [, {tab}]]) *win_getid()*
|
||||
Get the |window-ID| for the specified window.
|
||||
When {win} is missing use the current window.
|
||||
With {win} this is the window number. The top window has
|
||||
number 1. Use `win_getid(winnr())` for the current window.
|
||||
number 1.
|
||||
Without {tab} use the current tab, otherwise the tab with
|
||||
number {tab}. The first tab has number one.
|
||||
Return zero if the window cannot be found.
|
||||
@@ -9088,6 +9245,35 @@ winheight({nr}) *winheight()*
|
||||
This excludes any window toolbar line.
|
||||
Examples: >
|
||||
:echo "The current window has " . winheight(0) . " lines."
|
||||
<
|
||||
winlayout([{tabnr}]) *winlayout()*
|
||||
The result is a nested List containing the layout of windows
|
||||
in a tabpage.
|
||||
|
||||
Without {tabnr} use the current tabpage, otherwise the tabpage
|
||||
with number {tabnr}. If the tabpage {tabnr} is not found,
|
||||
returns an empty list.
|
||||
|
||||
For a leaf window, it returns:
|
||||
['leaf', {winid}]
|
||||
For horizontally split windows, which form a column, it
|
||||
returns:
|
||||
['col', [{nested list of windows}]]
|
||||
For vertically split windows, which form a row, it returns:
|
||||
['row', [{nested list of windows}]]
|
||||
|
||||
Example: >
|
||||
" Only one window in the tab page
|
||||
:echo winlayout()
|
||||
['leaf', 1000]
|
||||
" Two horizontally split windows
|
||||
:echo winlayout()
|
||||
['col', [['leaf', 1000], ['leaf', 1001]]]
|
||||
" Three horizontally split windows, with two
|
||||
" vertically split windows in the middle window
|
||||
:echo winlayout(2)
|
||||
['col', [['leaf', 1002], ['row', ['leaf', 1003],
|
||||
['leaf', 1001]]], ['leaf', 1000]]
|
||||
<
|
||||
*winline()*
|
||||
winline() The result is a Number, which is the screen line of the cursor
|
||||
@@ -9559,9 +9745,13 @@ See |:verbose-cmd| for more information.
|
||||
deleted if there are no more references to it.
|
||||
*E127* *E122*
|
||||
When a function by this name already exists and [!] is
|
||||
not used an error message is given. When [!] is used,
|
||||
an existing function is silently replaced. Unless it
|
||||
is currently being executed, that is an error.
|
||||
not used an error message is given. There is one
|
||||
exception: When sourcing a script again, a function
|
||||
that was previously defined in that script will be
|
||||
silently replaced.
|
||||
When [!] is used, an existing function is silently
|
||||
replaced. Unless it is currently being executed, that
|
||||
is an error.
|
||||
NOTE: Use ! wisely. If used without care it can cause
|
||||
an existing function to be replaced unexpectedly,
|
||||
which is hard to debug.
|
||||
|
||||
@@ -638,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
|
||||
|
||||
@@ -236,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:
|
||||
|
||||
+30
-12
@@ -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
|
||||
@@ -952,6 +968,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
|
||||
|
||||
+63
-48
@@ -30,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: >
|
||||
@@ -65,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
|
||||
@@ -120,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
|
||||
@@ -156,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.
|
||||
@@ -206,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.
|
||||
|
||||
@@ -231,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
|
||||
@@ -337,9 +344,9 @@ 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
|
||||
@@ -348,7 +355,7 @@ 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 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.)
|
||||
@@ -440,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
|
||||
@@ -471,7 +480,7 @@ whose name begins with "-space" ("-flexspace") and ends with "-"
|
||||
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 Mac OS X will scale the icon to the appropriate
|
||||
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.
|
||||
@@ -532,8 +541,7 @@ outline.
|
||||
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
|
||||
@@ -640,7 +648,7 @@ 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|.
|
||||
@@ -685,9 +693,9 @@ See the section on |key-mapping| for more help on how to map keys.
|
||||
|
||||
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
|
||||
@@ -707,6 +715,9 @@ to use in normal mode and type ":set imd" followed by ":set noimd".
|
||||
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).
|
||||
@@ -718,8 +729,12 @@ 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
|
||||
@@ -838,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:
|
||||
|
||||
+16
-2
@@ -385,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: >
|
||||
|
||||
@@ -417,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
|
||||
@@ -501,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
|
||||
|
||||
@@ -226,4 +226,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:noet:ft=help:norl:
|
||||
vim:tw=78:isk=!-~,^*,^\|,^\":ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -45,8 +45,8 @@ The Perl patches for Vim were made by:
|
||||
Matt Gerassimof
|
||||
|
||||
Perl for MS-Windows (and other platforms) can be found at:
|
||||
http://www.perl.org/ The ActiveState one should work, Strawberry Perl is a
|
||||
good alternative.
|
||||
http://www.perl.org/
|
||||
The ActiveState one should work, Strawberry Perl is a good alternative.
|
||||
|
||||
==============================================================================
|
||||
3. Using the Perl interface *perl-using*
|
||||
|
||||
+22
-6
@@ -60,9 +60,10 @@ Example: >
|
||||
endfunction
|
||||
|
||||
To see what version of Python you have: >
|
||||
:python import sys
|
||||
:python print(sys.version)
|
||||
|
||||
There is no need to import sys, it's done by default.
|
||||
|
||||
Note: Python is very sensitive to the indenting. Make sure the "class" line
|
||||
and "EOF" do not have any indent.
|
||||
|
||||
@@ -81,6 +82,18 @@ Examples:
|
||||
>
|
||||
:pydo return "%s\t%d" % (line[::-1], len(line))
|
||||
:pydo if line: return "%4d: %s" % (linenr, line)
|
||||
<
|
||||
One can use `:pydo` in possible conjunction with `:py` to filter a range using
|
||||
python. For example: >
|
||||
|
||||
:py3 << EOF
|
||||
needle = vim.eval('@a')
|
||||
replacement = vim.eval('@b')
|
||||
|
||||
def py_vim_string_replace(str):
|
||||
return str.replace(needle, replacement)
|
||||
EOF
|
||||
:'<,'>py3do return py_vim_string_replace(line)
|
||||
<
|
||||
*:pyfile* *:pyf*
|
||||
:[range]pyf[ile] {file}
|
||||
@@ -98,7 +111,6 @@ Python commands cannot be used in the |sandbox|.
|
||||
|
||||
To pass arguments you need to set sys.argv[] explicitly. Example: >
|
||||
|
||||
:python import sys
|
||||
:python sys.argv = ["foo", "bar"]
|
||||
:pyfile myscript.py
|
||||
|
||||
@@ -168,11 +180,15 @@ vim.eval(str) *python-eval*
|
||||
- a dictionary if the Vim expression evaluates to a Vim dictionary
|
||||
Dictionaries and lists are recursively expanded.
|
||||
Examples: >
|
||||
:" value of the 'textwidth' option
|
||||
:py text_width = vim.eval("&tw")
|
||||
:py str = vim.eval("12+12") # NB result is a string! Use
|
||||
# string.atoi() to convert to
|
||||
# a number.
|
||||
|
||||
:
|
||||
:" contents of the 'a' register
|
||||
:py a_reg = vim.eval("@a")
|
||||
:
|
||||
:" Result is a string! Use string.atoi() to convert to a number.
|
||||
:py str = vim.eval("12+12")
|
||||
:
|
||||
:py tagList = vim.eval('taglist("eval_expr")')
|
||||
< The latter will return a python list of python dicts, for instance:
|
||||
[{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name': ~
|
||||
|
||||
+22
-11
@@ -588,8 +588,9 @@ The basics for using flexible indenting are explained in section |30.3| of the
|
||||
user manual.
|
||||
|
||||
If you want to write your own indent file, it must set the 'indentexpr'
|
||||
option. Setting the 'indentkeys' option is often useful. See the
|
||||
$VIMRUNTIME/indent directory for examples.
|
||||
option. Setting the 'indentkeys' option is often useful.
|
||||
See the $VIMRUNTIME/indent/README.txt file for hints.
|
||||
See the $VIMRUNTIME/indent directory for examples.
|
||||
|
||||
|
||||
REMARKS ABOUT SPECIFIC INDENT FILES ~
|
||||
@@ -602,14 +603,14 @@ the use of square and curly brackets, and otherwise by community convention.
|
||||
These conventions are not universally followed, so the Clojure indent script
|
||||
offers a few configurable options, listed below.
|
||||
|
||||
If the current vim does not include searchpairpos(), the indent script falls
|
||||
If the current vim does not include |searchpairpos()|, the indent script falls
|
||||
back to normal 'lisp' indenting, and the following options are ignored.
|
||||
|
||||
*g:clojure_maxlines*
|
||||
|
||||
Set maximum scan distance of searchpairpos(). Larger values trade performance
|
||||
for correctness when dealing with very long forms. A value of 0 will scan
|
||||
without limits.
|
||||
Set maximum scan distance of |searchpairpos()|. Larger values trade
|
||||
performance for correctness when dealing with very long forms. A value of 0
|
||||
will scan without limits.
|
||||
>
|
||||
" Default
|
||||
let g:clojure_maxlines = 100
|
||||
@@ -935,11 +936,16 @@ given are the defaults. Note that the variables are set to an expression, so
|
||||
that you can change the value of 'shiftwidth' later.
|
||||
|
||||
Indent after an open paren: >
|
||||
let g:pyindent_open_paren = '&sw * 2'
|
||||
let g:pyindent_open_paren = 'shiftwidth() * 2'
|
||||
Indent after a nested paren: >
|
||||
let g:pyindent_nested_paren = '&sw'
|
||||
let g:pyindent_nested_paren = 'shiftwidth()'
|
||||
Indent for a continuation line: >
|
||||
let g:pyindent_continue = '&sw * 2'
|
||||
let g:pyindent_continue = 'shiftwidth() * 2'
|
||||
|
||||
The method uses |searchpair()| to look back for unclosed parenthesis. This
|
||||
can sometimes be slow, thus it timeouts after 150 msec. If you notice the
|
||||
indenting isn't correct, you can set a larger timeout in msec: >
|
||||
let g:pyindent_searchpair_timeout = 500
|
||||
|
||||
|
||||
R *ft-r-indent*
|
||||
@@ -978,6 +984,11 @@ Below is an example of indentation with and without this option enabled:
|
||||
paste(x) paste(x)
|
||||
} }
|
||||
<
|
||||
The code will be indented after lines that match the pattern
|
||||
`'\(&\||\|+\|-\|\*\|/\|=\|\~\|%\|->\)\s*$'`. If you want indentation after
|
||||
lines that match a different pattern, you should set the appropriate value of
|
||||
`r_indent_op_pattern` in your |vimrc|.
|
||||
|
||||
|
||||
SHELL *ft-sh-indent*
|
||||
|
||||
@@ -1028,7 +1039,7 @@ Furthermore, setting the variable b:verilog_indent_width to change the
|
||||
indenting width (default is 'shiftwidth'): >
|
||||
|
||||
let b:verilog_indent_width = 4
|
||||
let b:verilog_indent_width = &sw * 2
|
||||
let b:verilog_indent_width = shiftwidth() * 2
|
||||
|
||||
In addition, you can turn the verbose mode for debug issue: >
|
||||
|
||||
@@ -1151,7 +1162,7 @@ VIM *ft-vim-indent*
|
||||
For indenting Vim scripts there is one variable that specifies the amount of
|
||||
indent for a continuation line, a line that starts with a backslash: >
|
||||
|
||||
:let g:vim_indent_cont = &sw * 3
|
||||
:let g:vim_indent_cont = shiftwidth() * 3
|
||||
|
||||
Three times shiftwidth is the default value.
|
||||
|
||||
|
||||
@@ -1585,6 +1585,9 @@ tag command action ~
|
||||
|:tjump| :tj[ump] like ":tselect", but jump directly when there
|
||||
is only one match
|
||||
|:tlast| :tl[ast] jump to last matching tag
|
||||
|:tlmenu| :tlm[enu] add menu for Terminal-Job mode
|
||||
|:tlnoremenu| :tln[oremenu] like ":noremenu" but for Terminal-Job mode
|
||||
|:tlunmenu| :tlu[nmenu] remove menu for Terminal-Job mode
|
||||
|:tmapclear| :tmapc[lear] remove all mappings for Terminal-Job mode
|
||||
|:tmap| :tma[p] like ":map" but for Terminal-Job mode
|
||||
|:tmenu| :tm[enu] define menu tooltip
|
||||
|
||||
@@ -1051,13 +1051,13 @@ The function must return the column where the completion starts. It must be a
|
||||
number between zero and the cursor column "col('.')". This involves looking
|
||||
at the characters just before the cursor and including those characters that
|
||||
could be part of the completed item. The text between this column and the
|
||||
cursor column will be replaced with the matches.
|
||||
cursor column will be replaced with the matches. If the returned value is
|
||||
larger than the cursor column, the cursor column is used.
|
||||
|
||||
Special return values:
|
||||
-1 If no completion can be done, the completion will be cancelled with an
|
||||
error message.
|
||||
-2 To cancel silently and stay in completion mode.
|
||||
-3 To cancel silently and leave completion mode.
|
||||
Negative return values:
|
||||
-2 To cancel silently and stay in completion mode.
|
||||
-3 To cancel silently and leave completion mode.
|
||||
Another negative value: completion starts at the cursor column
|
||||
|
||||
On the second invocation the arguments are:
|
||||
a:findstart 0
|
||||
|
||||
@@ -595,9 +595,9 @@ Virtual Replace mode Virtual Replace mode is similar to Replace mode, but
|
||||
If the 'showmode' option is on "-- VREPLACE --" is
|
||||
shown at the bottom of the window.
|
||||
|
||||
Insert Normal mode Entered when CTRL-O given in Insert mode. This is
|
||||
like Normal mode, but after executing one command Vim
|
||||
returns to Insert mode.
|
||||
Insert Normal mode Entered when CTRL-O is typed in Insert mode (see
|
||||
|i_CTRL-O|). This is like Normal mode, but after
|
||||
executing one command Vim returns to Insert mode.
|
||||
If the 'showmode' option is on "-- (insert) --" is
|
||||
shown at the bottom of the window.
|
||||
|
||||
|
||||
+6
-3
@@ -371,8 +371,9 @@ job running in the terminal. See |terminal-typing|.
|
||||
|
||||
*omap-info*
|
||||
Operator-pending mappings can be used to define a movement command that can be
|
||||
used with any operator. Simple example: ":omap { w" makes "y{" work like "yw"
|
||||
and "d{" like "dw".
|
||||
used with any operator. Simple example: >
|
||||
:omap { w
|
||||
makes "y{" work like "yw" and "d{" like "dw".
|
||||
|
||||
To ignore the starting cursor position and select different text, you can have
|
||||
the omap start Visual mode to select the text to be operated upon. Example
|
||||
@@ -383,9 +384,11 @@ Normal mode commands find the first '(' character and select the first word
|
||||
before it. That usually is the function name.
|
||||
|
||||
To enter a mapping for Normal and Visual mode, but not Operator-pending mode,
|
||||
first define it for all three modes, then unmap it for Operator-pending mode:
|
||||
first define it for all three modes, then unmap it for
|
||||
Operator-pending mode: >
|
||||
:map xx something-difficult
|
||||
:ounmap xx
|
||||
|
||||
Likewise for a mapping for Visual and Operator-pending mode or Normal and
|
||||
Operator-pending mode.
|
||||
|
||||
|
||||
@@ -102,8 +102,10 @@ Or:
|
||||
|
||||
This also contains tools xgettext, msgformat and others.
|
||||
|
||||
libintl.dll should be placed in same directory with (g)vim.exe, or some
|
||||
place where PATH environment value describe. Vim also finds libintl-8.dll.
|
||||
libintl.dll should be placed in same directory as (g)vim.exe, or one of the
|
||||
directories listed in the PATH environment value. Vim also looks for the
|
||||
alternate names "libintl-8.dll" and "intl.dll".
|
||||
|
||||
Message files (vim.mo) have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES",
|
||||
where "xx" is the abbreviation of the language (mostly two letters).
|
||||
|
||||
|
||||
@@ -1025,7 +1025,7 @@ remembered. You can return to that position with the "''" and "``" command,
|
||||
unless the line containing that position was changed or deleted. The
|
||||
following commands are "jump" commands: "'", "`", "G", "/", "?", "n", "N",
|
||||
"%", "(", ")", "[[", "]]", "{", "}", ":s", ":tag", "L", "M", "H" and the
|
||||
commands that start editing a new file.
|
||||
commands that start editing a new file.
|
||||
|
||||
*CTRL-O*
|
||||
CTRL-O Go to [count] Older cursor position in jump list
|
||||
|
||||
+116
-49
@@ -120,10 +120,10 @@ and the following arguments will be ignored.
|
||||
When 'verbose' is non-zero, displaying an option value will also tell where it
|
||||
was last set. Example: >
|
||||
:verbose set shiftwidth cindent?
|
||||
< shiftwidth=4 ~
|
||||
Last set from modeline ~
|
||||
cindent ~
|
||||
Last set from /usr/local/share/vim/vim60/ftplugin/c.vim ~
|
||||
< shiftwidth=4 ~
|
||||
Last set from modeline line 1 ~
|
||||
cindent ~
|
||||
Last set from /usr/local/share/vim/vim60/ftplugin/c.vim line 30 ~
|
||||
This is only done when specific option values are requested, not for ":verbose
|
||||
set all" or ":verbose set" without an argument.
|
||||
When the option was set by hand there is no "Last set" message.
|
||||
@@ -132,7 +132,7 @@ autocommand, the script in which it was defined is reported.
|
||||
Note that an option may also have been set as a side effect of setting
|
||||
'compatible'.
|
||||
A few special texts:
|
||||
Last set from modeline ~
|
||||
Last set from modeline line 1 ~
|
||||
Option was set in a |modeline|.
|
||||
Last set from --cmd argument ~
|
||||
Option was set with command line argument |--cmd| or +.
|
||||
@@ -851,6 +851,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'{A-Z0-9}, or `{A-Z0-9} command takes one to another file.
|
||||
Note that for some commands the 'autowrite' option is not used, see
|
||||
'autowriteall' for that.
|
||||
Some buffers will not be written, specifically when 'buftype' is
|
||||
"nowrite", "nofile", "terminal" or "prompt".
|
||||
|
||||
*'autowriteall'* *'awa'* *'noautowriteall'* *'noawa'*
|
||||
'autowriteall' 'awa' boolean (default off)
|
||||
@@ -1059,6 +1061,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
name, precede it with a backslash.
|
||||
- To include a comma in a directory name precede it with a backslash.
|
||||
- A directory name may end in an '/'.
|
||||
- For Unix and Win32, if a directory ends in two path separators "//",
|
||||
the backup file name will be built from the complete path to the
|
||||
file with all path separators changed to percent '%' signs. This
|
||||
will ensure file name uniqueness in the backup directory.
|
||||
On Win32, it is also possible to end with "\\". However, When a
|
||||
separating comma is following, you must use "//", since "\\" will
|
||||
include the comma in the file name. Therefore it is recommended to
|
||||
use '//', instead of '\\'.
|
||||
- Environment variables are expanded |:set_env|.
|
||||
- Careful with '\' characters, type one before a space, type two to
|
||||
get one in the option (see |option-backslash|), for example: >
|
||||
@@ -1641,10 +1651,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
area extended, Vim tries to become the owner of the
|
||||
windowing system's global selection or put the
|
||||
selected text on the clipboard used by the selection
|
||||
register "*. See |guioptions_a| and |quotestar| for
|
||||
details. When the GUI is active, the 'a' flag in
|
||||
'guioptions' is used, when the GUI is not active, this
|
||||
"autoselect" flag is used.
|
||||
register "*. See |'go-a'| and |quotestar| for details.
|
||||
When the GUI is active, the 'a' flag in 'guioptions'
|
||||
is used, when the GUI is not active, this "autoselect"
|
||||
flag is used.
|
||||
Also applies to the modeless selection.
|
||||
|
||||
*clipboard-autoselectplus*
|
||||
@@ -2012,8 +2022,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
displayed. E.g., when moving vertically it may change column.
|
||||
|
||||
|
||||
'conceallevel' 'cole' *'conceallevel'* *'cole'*
|
||||
number (default 0)
|
||||
*'conceallevel'* *'cole'*
|
||||
'conceallevel' 'cole' number (default 0)
|
||||
local to window
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+conceal|
|
||||
@@ -2622,13 +2632,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+diff|
|
||||
feature}
|
||||
Expression which is evaluated to obtain an ed-style diff file from two
|
||||
versions of a file. See |diff-diffexpr|.
|
||||
Expression which is evaluated to obtain a diff file (either ed-style
|
||||
or unified-style) from two versions of a file. See |diff-diffexpr|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'dip'* *'diffopt'*
|
||||
'diffopt' 'dip' string (default "filler")
|
||||
'diffopt' 'dip' string (default "internal,filler")
|
||||
global
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+diff|
|
||||
@@ -2647,6 +2657,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When omitted a context of six lines is used.
|
||||
See |fold-diff|.
|
||||
|
||||
iblank Ignore changes where lines are all blank. Adds
|
||||
the "-B" flag to the "diff" command if
|
||||
'diffexpr' is empty. Check the documentation
|
||||
of the "diff" command for what this does
|
||||
exactly.
|
||||
NOTE: the diff windows will get out of sync,
|
||||
because no differences between blank lines are
|
||||
taken into account.
|
||||
|
||||
icase Ignore changes in case of text. "a" and "A"
|
||||
are considered the same. Adds the "-i" flag
|
||||
to the "diff" command if 'diffexpr' is empty.
|
||||
@@ -2658,6 +2677,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
exactly. It should ignore adding trailing
|
||||
white space, but not leading white space.
|
||||
|
||||
iwhiteall Ignore all white space changes. Adds
|
||||
the "-w" flag to the "diff" command if
|
||||
'diffexpr' is empty. Check the documentation
|
||||
of the "diff" command for what this does
|
||||
exactly.
|
||||
|
||||
iwhiteeol Ignore white space changes at end of line.
|
||||
Adds the "-Z" flag to the "diff" command if
|
||||
'diffexpr' is empty. Check the documentation
|
||||
of the "diff" command for what this does
|
||||
exactly.
|
||||
|
||||
horizontal Start diff mode with horizontal splits (unless
|
||||
explicitly specified otherwise).
|
||||
|
||||
@@ -2670,11 +2701,31 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
foldcolumn:{n} Set the 'foldcolumn' option to {n} when
|
||||
starting diff mode. Without this 2 is used.
|
||||
|
||||
Examples: >
|
||||
internal Use the internal diff library. This is
|
||||
ignored when 'diffexpr' is set. *E960*
|
||||
When running out of memory when writing a
|
||||
buffer this item will be ignored for diffs
|
||||
involving that buffer. Set the 'verbose'
|
||||
option to see when this happens.
|
||||
|
||||
:set diffopt=filler,context:4
|
||||
indent-heuristic
|
||||
Use the indent heuristic for the internal
|
||||
diff library.
|
||||
|
||||
algorithm:{text} Use the specified diff algorithm with the
|
||||
internal diff engine. Currently supported
|
||||
algorithms are:
|
||||
myers the default algorithm
|
||||
minimal spend extra time to generate the
|
||||
smallest possible diff
|
||||
patience patience diff algorithm
|
||||
histogram histogram diff algorithm
|
||||
|
||||
Examples: >
|
||||
:set diffopt=internal,filler,context:4
|
||||
:set diffopt=
|
||||
:set diffopt=filler,foldcolumn:3
|
||||
:set diffopt=internal,filler,foldcolumn:3
|
||||
:set diffopt-=internal " do NOT use the internal diff parser
|
||||
<
|
||||
*'digraph'* *'dg'* *'nodigraph'* *'nodg'*
|
||||
'digraph' 'dg' boolean (default off)
|
||||
@@ -2703,12 +2754,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
- A directory starting with "./" (or ".\" for MS-DOS et al.) means to
|
||||
put the swap file relative to where the edited file is. The leading
|
||||
"." is replaced with the path name of the edited file.
|
||||
- For Unix and Win32, if a directory ends in two path separators "//"
|
||||
or "\\", the swap file name will be built from the complete path to
|
||||
the file with all path separators substituted to percent '%' signs.
|
||||
This will ensure file name uniqueness in the preserve directory.
|
||||
On Win32, when a separating comma is following, you must use "//",
|
||||
since "\\" will include the comma in the file name.
|
||||
- For Unix and Win32, if a directory ends in two path separators "//",
|
||||
the swap file name will be built from the complete path to the file
|
||||
with all path separators substituted to percent '%' signs. This will
|
||||
ensure file name uniqueness in the preserve directory.
|
||||
On Win32, it is also possible to end with "\\". However, When a
|
||||
separating comma is following, you must use "//", since "\\" will
|
||||
include the comma in the file name. Therefore it is recommended to
|
||||
use '//', instead of '\\'.
|
||||
- Spaces after the comma are ignored, other spaces are considered part
|
||||
of the directory name. To have a space at the start of a directory
|
||||
name, precede it with a backslash.
|
||||
@@ -3963,8 +4016,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
screen.
|
||||
|
||||
*'guioptions'* *'go'*
|
||||
'guioptions' 'go' string (default "egmrLtT" (MS-Windows, "t" is
|
||||
removed in |defaults.vim|),
|
||||
'guioptions' 'go' string (default "egmrLtT" (MS-Windows,
|
||||
"t" is removed in |defaults.vim|),
|
||||
"aegimrLtT" (GTK, Motif and Athena),
|
||||
)
|
||||
global
|
||||
@@ -3984,7 +4037,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
terminal to list the command output.
|
||||
The terminal window will be positioned at the bottom, and grow
|
||||
upwards as needed.
|
||||
*guioptions_a* *'go-a'*
|
||||
*'go-a'*
|
||||
'a' Autoselect: If present, then whenever VISUAL mode is started,
|
||||
or the Visual area extended, Vim tries to become the owner of
|
||||
the windowing system's global selection. This means that the
|
||||
@@ -4486,7 +4539,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
methods. Use 'imdisable' to disable XIM then.
|
||||
|
||||
You can set 'imactivatefunc' and 'imstatusfunc' to handle IME/XIM
|
||||
via external command if vim is not compiled with the |+xim|,
|
||||
via external command if Vim is not compiled with the |+xim|,
|
||||
|+multi_byte_ime| or |global-ime|.
|
||||
|
||||
*'imsearch'* *'ims'*
|
||||
@@ -4593,7 +4646,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
so far, matches. The matched string is highlighted. If the pattern
|
||||
is invalid or not found, nothing is shown. The screen will be updated
|
||||
often, this is only useful on fast terminals.
|
||||
Note that the match will be shown, but the cursor will return to its
|
||||
Also applies to the pattern in commands: >
|
||||
:global
|
||||
:lvimgrep
|
||||
:lvimgrepadd
|
||||
:smagic
|
||||
:snomagic
|
||||
:sort
|
||||
:substitute
|
||||
:vglobal
|
||||
:vimgrep
|
||||
:vimgrepadd
|
||||
< Note that the match will be shown, but the cursor will return to its
|
||||
original position when no match is found and when pressing <Esc>. You
|
||||
still need to finish the search command with <Enter> to move the
|
||||
cursor to the match.
|
||||
@@ -4606,9 +4670,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The highlighting can be set with the 'i' flag in 'highlight'.
|
||||
When 'hlsearch' is on, all matched strings are highlighted too while
|
||||
typing a search command. See also: 'hlsearch'.
|
||||
If you don't want turn 'hlsearch' on, but want to highlight all matches
|
||||
while searching, you can turn on and off 'hlsearch' with autocmd.
|
||||
Example: >
|
||||
If you don't want to turn 'hlsearch' on, but want to highlight all
|
||||
matches while searching, you can turn on and off 'hlsearch' with
|
||||
autocmd. Example: >
|
||||
augroup vimrc-incsearch-highlight
|
||||
autocmd!
|
||||
autocmd CmdlineEnter /,\? :set hlsearch
|
||||
@@ -4778,7 +4842,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Identifiers are used in recognizing environment variables and after a
|
||||
match of the 'define' option. It is also used for "\i" in a
|
||||
|pattern|. See 'isfname' for a description of the format of this
|
||||
option.
|
||||
option. For '@' only characters up to 255 are used.
|
||||
Careful: If you change this option, it might break expanding
|
||||
environment variables. E.g., when '/' is included and Vim tries to
|
||||
expand "$HOME/.viminfo". Maybe you should change 'iskeyword' instead.
|
||||
@@ -4792,8 +4856,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
Keywords are used in searching and recognizing with many commands:
|
||||
"w", "*", "[i", etc. It is also used for "\k" in a |pattern|. See
|
||||
'isfname' for a description of the format of this option. For C
|
||||
programs you could use "a-z,A-Z,48-57,_,.,-,>".
|
||||
'isfname' for a description of the format of this option. For '@'
|
||||
characters above 255 check the "word" character class.
|
||||
For C programs you could use "a-z,A-Z,48-57,_,.,-,>".
|
||||
For a help file it is set to all non-blank printable characters except
|
||||
'*', '"' and '|' (so that CTRL-] on a command finds the help for that
|
||||
command).
|
||||
@@ -5542,7 +5607,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
h all previous modes when editing a help file
|
||||
a all previous modes
|
||||
r for |hit-enter| and |more-prompt| prompt
|
||||
Normally you would enable the mouse in all four modes with: >
|
||||
Normally you would enable the mouse in all five modes with: >
|
||||
:set mouse=a
|
||||
< When the mouse is not enabled, the GUI will still use the mouse for
|
||||
modeless selection. This doesn't move the text cursor.
|
||||
@@ -6064,7 +6129,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
security reasons.
|
||||
|
||||
*'printencoding'* *'penc'*
|
||||
'printencoding' 'penc' String (default empty, except for some systems)
|
||||
'printencoding' 'penc' string (default empty, except for some systems)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+printer|
|
||||
@@ -6073,7 +6138,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
See |penc-option|.
|
||||
|
||||
*'printexpr'* *'pexpr'*
|
||||
'printexpr' 'pexpr' String (default: see below)
|
||||
'printexpr' 'pexpr' string (default: see below)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+printer|
|
||||
@@ -6801,7 +6866,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
tabpages all tab pages; without this only the current tab page
|
||||
is restored, so that you can make a session for each
|
||||
tab page separately
|
||||
terminal include terminal windows where the command can be restored
|
||||
terminal include terminal windows where the command can be
|
||||
restored
|
||||
unix with Unix end-of-line format (single <NL>), even when
|
||||
on Windows or DOS
|
||||
winpos position of the whole Vim window
|
||||
@@ -6837,7 +6903,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Example with escaped space (Vim will do this when initializing the
|
||||
option from $SHELL): >
|
||||
:set shell=/bin/with\\\ space/sh
|
||||
< The resulting value of 'shell' is "/bin/with\ space/sh", two
|
||||
< The resulting value of 'shell' is "/bin/with\ space/sh", two
|
||||
backslashes are consumed by `:set`.
|
||||
|
||||
Under MS-Windows, when the executable ends in ".com" it must be
|
||||
@@ -7434,8 +7500,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
After this option has been set successfully, Vim will source the files
|
||||
"spell/LANG.vim" in 'runtimepath'. "LANG" is the value of 'spelllang'
|
||||
up to the first comma, dot or underscore.
|
||||
Also see |set-spc-auto|.
|
||||
up to the first character that is not an ASCII letter or number and
|
||||
not a dash. Also see |set-spc-auto|.
|
||||
|
||||
|
||||
*'spellsuggest'* *'sps'*
|
||||
@@ -7663,7 +7729,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
line is displayed. The current buffer and current window will be set
|
||||
temporarily to that of the window (and buffer) whose statusline is
|
||||
currently being drawn. The expression will evaluate in this context.
|
||||
The variable "actual_curbuf" is set to the 'bufnr()' number of the
|
||||
The variable "g:actual_curbuf" is set to the `bufnr()` number of the
|
||||
real current buffer.
|
||||
|
||||
The 'statusline' option will be evaluated in the |sandbox| if set from
|
||||
@@ -8218,13 +8284,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global or local to buffer |global-local|
|
||||
{not in Vi}
|
||||
List of file names, separated by commas, that are used to lookup words
|
||||
for thesaurus completion commands |i_CTRL-X_CTRL-T|. Each line in
|
||||
the file should contain words with similar meaning, separated by
|
||||
non-keyword characters (white space is preferred). Maximum line
|
||||
length is 510 bytes.
|
||||
To obtain a file to be used here, check out this ftp site:
|
||||
[Sorry this link doesn't work anymore, do you know the right one?]
|
||||
ftp://ftp.ox.ac.uk/pub/wordlists/ First get the README file.
|
||||
for thesaurus completion commands |i_CTRL-X_CTRL-T|.
|
||||
|
||||
Each line in the file should contain words with similar meaning,
|
||||
separated by non-keyword characters (white space is preferred).
|
||||
Maximum line length is 510 bytes.
|
||||
|
||||
Unfortunately we currently cannot recommend a file to be used here.
|
||||
|
||||
To include a comma in a file name precede it with a backslash. Spaces
|
||||
after a comma are ignored, otherwise spaces are included in the file
|
||||
name. See |option-backslash| about using backslashes.
|
||||
|
||||
@@ -83,10 +83,10 @@ There is no solution for this yet.
|
||||
ctags out there, that does it right, but we can't be sure. So this seems to
|
||||
be a permanent restriction.
|
||||
|
||||
- The cscope interface (|cscope|) doesn't work for the version of cscope
|
||||
that we use on our mainframe. We have a copy of version 15.0b12, and it
|
||||
causes Vim to hang when using the "cscope add" command. I'm guessing that
|
||||
the binary format of the cscope database isn't quite what Vim is expecting.
|
||||
- The cscope interface (|cscope|) doesn't work for the version of cscope that
|
||||
we use on our mainframe. We have a copy of version 15.0b12, and it causes
|
||||
Vim to hang when using the "cscope add" command. I'm guessing that the
|
||||
binary format of the cscope database isn't quite what Vim is expecting.
|
||||
I've tried to port the current version of cscope (15.3) to z/OS, without
|
||||
much success. If anyone is interested in trying, drop me a line if you
|
||||
make any progress.
|
||||
@@ -131,4 +131,4 @@ Also look at:
|
||||
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
vim:tw=78:fo=tcq2:ts=8:noet:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -135,4 +135,4 @@ Todo:
|
||||
- Replace usage of fork() with spawn() when launching external
|
||||
programs.
|
||||
|
||||
vim:tw=78:sw=4:ts=8:noet:ts=8:ft=help:norl:
|
||||
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -303,4 +303,4 @@ A. Yes, place your favorite icon in bitmaps/vim.ico in a directory of
|
||||
'runtimepath'. For example ~/vimfiles/bitmaps/vim.ico.
|
||||
|
||||
|
||||
vim:tw=78:fo=tcq2:ts=8:noet:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -295,7 +295,7 @@ the "*" is under your right hand middle finger (search to the right and down).
|
||||
|
||||
*E956*
|
||||
In very rare cases a regular expression is used recursively. This can happen
|
||||
when executing a pattern takes a long time and when checkig for messages on
|
||||
when executing a pattern takes a long time and when checking for messages on
|
||||
channels a callback is invoked that also uses a pattern or an autocommand is
|
||||
triggered. In most cases this should be fine, but if a pattern is in use when
|
||||
it's used again it fails. Usually this means there is something wrong with
|
||||
|
||||
@@ -46,6 +46,8 @@ Note: If you have problems printing with |:hardcopy|, an alternative is to use
|
||||
'printexpr' through |v:cmdarg|. Otherwise [arguments]
|
||||
is ignored. 'printoptions' can be used to specify
|
||||
paper size, duplex, etc.
|
||||
Note: If you want PDF, there are tools such as
|
||||
"ps2pdf" that can convert the PostScript to PDF.
|
||||
|
||||
:[range]ha[rdcopy][!] >{filename}
|
||||
As above, but write the resulting PostScript in file
|
||||
|
||||
@@ -46,7 +46,7 @@ compiler (see |errorformat| below).
|
||||
|
||||
*quickfix-ID*
|
||||
Each quickfix list has a unique identifier called the quickfix ID and this
|
||||
number will not change within a Vim session. The getqflist() function can be
|
||||
number will not change within a Vim session. The |getqflist()| function can be
|
||||
used to get the identifier assigned to a list. There is also a quickfix list
|
||||
number which may change whenever more than ten lists are added to a quickfix
|
||||
stack.
|
||||
@@ -68,7 +68,7 @@ the location list is destroyed.
|
||||
Every quickfix and location list has a read-only changedtick variable that
|
||||
tracks the total number of changes made to the list. Every time the quickfix
|
||||
list is modified, this count is incremented. This can be used to perform an
|
||||
action only when the list has changed. The getqflist() and getloclist()
|
||||
action only when the list has changed. The |getqflist()| and |getloclist()|
|
||||
functions can be used to query the current value of changedtick. You cannot
|
||||
change the changedtick variable.
|
||||
|
||||
@@ -602,7 +602,7 @@ present). Examples: >
|
||||
echo getloclist(2, {'winid' : 1}).winid
|
||||
<
|
||||
*getqflist-examples*
|
||||
The getqflist() and getloclist() functions can be used to get the various
|
||||
The |getqflist()| and |getloclist()| functions can be used to get the various
|
||||
attributes of a quickfix and location list respectively. Some examples for
|
||||
using these functions are below:
|
||||
>
|
||||
@@ -659,7 +659,7 @@ using these functions are below:
|
||||
:echo getloclist(3, {'winid' : 0}).winid
|
||||
<
|
||||
*setqflist-examples*
|
||||
The setqflist() and setloclist() functions can be used to set the various
|
||||
The |setqflist()| and |setloclist()| functions can be used to set the various
|
||||
attributes of a quickfix and location list respectively. Some examples for
|
||||
using these functions are below:
|
||||
>
|
||||
@@ -898,7 +898,7 @@ commands can be combined to create a NewGrep command: >
|
||||
'smartcase' is not used.
|
||||
If {pattern} is empty (e.g. // is specified), the last
|
||||
used search pattern is used. |last-pattern|
|
||||
|
||||
:{count}vim[grep] ...
|
||||
When a number is put before the command this is used
|
||||
as the maximum number of matches to find. Use
|
||||
":1vimgrep pattern file" to find only the first.
|
||||
@@ -1551,6 +1551,22 @@ The backslashes before the pipe character are required to avoid it to be
|
||||
recognized as a command separator. The backslash before each space is
|
||||
required for the set command.
|
||||
|
||||
*cfilter-plugin* *Cfilter* *Lfilter*
|
||||
If you have too many matching messages, you can use the cfilter plugin to
|
||||
reduce the number of entries. Load the plugin with: >
|
||||
packadd cfilter
|
||||
|
||||
Then you can use these command: >
|
||||
:Cfilter[!] /{pat}/
|
||||
:Lfilter[!] /{pat}/
|
||||
|
||||
:Cfilter creates a new quickfix list from entries matching {pat} in the
|
||||
current quickfix list. Both the file name and the text of the entries are
|
||||
matched against {pat}. If ! is supplied, then entries not matching {pat} are
|
||||
used.
|
||||
|
||||
:Lfilter does the same as :Cfilter but operates on the current location list.
|
||||
|
||||
=============================================================================
|
||||
8. The directory stack *quickfix-directory-stack*
|
||||
|
||||
|
||||
@@ -28,6 +28,9 @@ You can see the name of the current swap file being used with the command:
|
||||
|
||||
:sw[apname] *:sw* *:swapname*
|
||||
|
||||
Or you can use the |swapname()| function, which also allows for seeing the
|
||||
swap file name of other buffers.
|
||||
|
||||
The name of the swap file is normally the same as the file you are editing,
|
||||
with the extension ".swp".
|
||||
- On Unix, a '.' is prepended to swap file names in the same directory as the
|
||||
|
||||
@@ -334,6 +334,9 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+eval| feature}
|
||||
|
||||
:scr[iptnames][!] {scriptId} *:script*
|
||||
Edit script {scriptId}. Suggested name is ":script".
|
||||
|
||||
*:fini* *:finish* *E168*
|
||||
:fini[sh] Stop sourcing a script. Can only be used in a Vim
|
||||
script file. This is a quick way to skip the rest of
|
||||
@@ -465,6 +468,16 @@ flag when defining the function, it is not relevant when executing it. >
|
||||
.
|
||||
:endfunction
|
||||
:set cpo-=C
|
||||
<
|
||||
*line-continuation-comment*
|
||||
To add a comment in between the lines start with '"\ '. Notice the space
|
||||
after the backslash. Example: >
|
||||
let array = [
|
||||
"\ first entry comment
|
||||
\ 'first',
|
||||
"\ second entry comment
|
||||
\ 'second',
|
||||
\ ]
|
||||
|
||||
Rationale:
|
||||
Most programs work with a trailing backslash to indicate line
|
||||
@@ -473,6 +486,14 @@ Rationale:
|
||||
:map xx asdf\
|
||||
< Therefore the unusual leading backslash is used.
|
||||
|
||||
Starting a comment in a continuation line results in all following
|
||||
continuation lines to be part of the comment. Since it was like this
|
||||
for a long time, when making it possible to add a comment halfway a
|
||||
sequence of continuation lines, it was not possible to use \", since
|
||||
that was a valid continuation line. Using '"\ ' comes closest, even
|
||||
though it may look a bit weird. Requiring the space after the
|
||||
backslash is to make it very unlikely this is a normal comment line.
|
||||
|
||||
==============================================================================
|
||||
5. Using Vim packages *packages*
|
||||
|
||||
|
||||
@@ -487,7 +487,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
|
||||
When {vimrc} is equal to "DEFAULTS" (all uppercase), this has
|
||||
the same effect as "NONE", but the |defaults.vim| script is
|
||||
loaded, which will also set 'nocompatible'.
|
||||
loaded, which will also set 'nocompatible'. Also see
|
||||
|--clean|.
|
||||
|
||||
Using the "-u" argument with another argument than DEFAULTS
|
||||
has the side effect that the 'compatible' option will be on by
|
||||
@@ -514,13 +515,13 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
--clean Similar to "-u DEFAULTS -U NONE -i NONE":
|
||||
- initializations from files and environment variables is
|
||||
skipped
|
||||
-'runtimepath'and 'packpath' are set to exclude home
|
||||
- 'runtimepath' and 'packpath' are set to exclude home
|
||||
directory entries (does not happen with -u DEFAULTS).
|
||||
- the |defaults.vim| script is loaded, which implies
|
||||
'nocompatible': use Vim defaults
|
||||
- no |gvimrc| script is loaded
|
||||
- no viminfo file is read or written
|
||||
- the home directory is excluded from 'runtimepath'
|
||||
|
||||
*-x*
|
||||
-x Use encryption to read/write files. Will prompt for a key,
|
||||
which is then stored in the 'key' option. All writes will
|
||||
|
||||
+57
-6
@@ -671,12 +671,12 @@ the rendered page generated by 2html.vim.
|
||||
:let g:html_no_pre = 1
|
||||
<
|
||||
*g:html_expand_tabs*
|
||||
Default: 1 if 'tabstop' is 8, 'expandtab' is 0, and no fold column or line
|
||||
numbers occur in the generated HTML;
|
||||
0 otherwise.
|
||||
When 0, <Tab> characters in the buffer text are replaced with an appropriate
|
||||
Default: 0 if 'tabstop' is 8, 'expandtab' is 0, 'vartabstop' is not in use,
|
||||
and no fold column or line numbers occur in the generated HTML;
|
||||
1 otherwise.
|
||||
When 1, <Tab> characters in the buffer text are replaced with an appropriate
|
||||
number of space characters, or references if |g:html_no_pre| is 1.
|
||||
When 1, if |g:html_no_pre| is 0 or unset, <Tab> characters in the buffer text
|
||||
When 0, if |g:html_no_pre| is 0 or unset, <Tab> characters in the buffer text
|
||||
are included as-is in the generated HTML. This is useful for when you want to
|
||||
allow copy and paste from a browser without losing the actual whitespace in
|
||||
the source document. Note that this can easily break text alignment and
|
||||
@@ -939,6 +939,9 @@ to the respective variable. Example: >
|
||||
To disable them use ":unlet". Example: >
|
||||
:unlet c_comment_strings
|
||||
|
||||
An alternative is to switch to the C++ highlighting: >
|
||||
:set filetype=cpp
|
||||
|
||||
Variable Highlight ~
|
||||
*c_gnu* GNU gcc specific items
|
||||
*c_comment_strings* strings and numbers inside a comment
|
||||
@@ -1265,7 +1268,7 @@ doxygen_javadoc_autobrief 1 Set to 0 to disable javadoc autobrief
|
||||
doxygen_end_punctuation '[.]' Set to regexp match for the ending
|
||||
punctuation of brief
|
||||
|
||||
There are also some hilight groups worth mentioning as they can be useful in
|
||||
There are also some highlight groups worth mentioning as they can be useful in
|
||||
configuration.
|
||||
|
||||
Highlight Effect ~
|
||||
@@ -2641,6 +2644,48 @@ Any combination of these three variables is legal, but might highlight more
|
||||
commands than are actually available to you by the game.
|
||||
|
||||
|
||||
R *r.vim* *ft-r-syntax*
|
||||
|
||||
The parsing of R code for syntax highlight starts 40 lines backwards, but you
|
||||
can set a different value in your |vimrc|. Example: >
|
||||
let r_syntax_minlines = 60
|
||||
|
||||
You can also turn off syntax highlighting of ROxygen: >
|
||||
let r_syntax_hl_roxygen = 0
|
||||
|
||||
enable folding of code delimited by parentheses, square brackets and curly
|
||||
braces: >
|
||||
let r_syntax_folding = 1
|
||||
|
||||
and highlight as functions all keywords followed by an opening parenthesis: >
|
||||
let r_syntax_fun_pattern = 1
|
||||
|
||||
|
||||
R MARKDOWN *rmd.vim* *ft-rmd-syntax*
|
||||
|
||||
To disable syntax highlight of YAML header, add to your |vimrc|: >
|
||||
let rmd_syn_hl_yaml = 0
|
||||
|
||||
To disable syntax highlighting of citation keys: >
|
||||
let rmd_syn_hl_citations = 0
|
||||
|
||||
To highlight R code in knitr chunk headers: >
|
||||
let rmd_syn_hl_chunk = 1
|
||||
|
||||
By default, chunks of R code will be highlighted following the rules of R
|
||||
language. If you want proper syntax highlighting of chunks of other languages,
|
||||
you should add them to either `markdown_fenced_languages` or
|
||||
`rmd_fenced_languages`. For example to properly highlight both R and Python,
|
||||
you may add this to your |vimrc|: >
|
||||
let rmd_fenced_languages = ['r', 'python']
|
||||
|
||||
|
||||
R RESTRUCTURED TEXT *rrst.vim* *ft-rrst-syntax*
|
||||
|
||||
To highlight R code in knitr chunk headers, add to your |vimrc|: >
|
||||
let rrst_syn_hl_chunk = 1
|
||||
|
||||
|
||||
READLINE *readline.vim* *ft-readline-syntax*
|
||||
|
||||
The readline library is primarily used by the BASH shell, which adds quite a
|
||||
@@ -3169,6 +3214,12 @@ by syntax/tex.vim. Please consider uploading any extensions that you write,
|
||||
which typically would go in $HOME/after/syntax/tex/[pkgname].vim, to
|
||||
http://vim.sf.net/.
|
||||
|
||||
I've included some support for various popular packages on my website: >
|
||||
|
||||
http://www.drchip.org/astronaut/vim/index.html#LATEXPKGS
|
||||
<
|
||||
The syntax files there go into your .../after/syntax/tex/ directory.
|
||||
|
||||
*tex-error* *g:tex_no_error*
|
||||
Tex: Excessive Error Highlighting? ~
|
||||
|
||||
|
||||
@@ -241,8 +241,10 @@ REORDERING TAB PAGES:
|
||||
:tabm[ove] [N] *:tabm* *:tabmove*
|
||||
:[N]tabm[ove]
|
||||
Move the current tab page to after tab page N. Use zero to
|
||||
make the current tab page the first one. Without N the tab
|
||||
page is made the last one. >
|
||||
make the current tab page the first one. N is counted before
|
||||
the move, thus if the second tab is the current one,
|
||||
`:tabmove 1` and `:tabmove 2` have no effect.
|
||||
Without N the tab page is made the last one. >
|
||||
:.tabmove " do nothing
|
||||
:-tabmove " move the tab page to the left
|
||||
:+tabmove " move the tab page to the right
|
||||
|
||||
+75
-1
@@ -1009,13 +1009,17 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
't_RF' term.txt /*'t_RF'*
|
||||
't_RI' term.txt /*'t_RI'*
|
||||
't_RS' term.txt /*'t_RS'*
|
||||
't_RT' term.txt /*'t_RT'*
|
||||
't_RV' term.txt /*'t_RV'*
|
||||
't_Ri' term.txt /*'t_Ri'*
|
||||
't_SC' term.txt /*'t_SC'*
|
||||
't_SH' term.txt /*'t_SH'*
|
||||
't_SI' term.txt /*'t_SI'*
|
||||
't_SR' term.txt /*'t_SR'*
|
||||
't_ST' term.txt /*'t_ST'*
|
||||
't_Sb' term.txt /*'t_Sb'*
|
||||
't_Sf' term.txt /*'t_Sf'*
|
||||
't_Si' term.txt /*'t_Si'*
|
||||
't_Te' term.txt /*'t_Te'*
|
||||
't_Ts' term.txt /*'t_Ts'*
|
||||
't_VS' term.txt /*'t_VS'*
|
||||
@@ -1951,6 +1955,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:<cfile> cmdline.txt /*:<cfile>*
|
||||
:<cword> cmdline.txt /*:<cword>*
|
||||
:<sfile> cmdline.txt /*:<sfile>*
|
||||
:<sflnum> cmdline.txt /*:<sflnum>*
|
||||
:<slnum> cmdline.txt /*:<slnum>*
|
||||
:= various.txt /*:=*
|
||||
:> change.txt /*:>*
|
||||
:? cmdline.txt /*:?*
|
||||
@@ -2895,8 +2901,17 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:sN windows.txt /*:sN*
|
||||
:sNext windows.txt /*:sNext*
|
||||
:s\= change.txt /*:s\\=*
|
||||
:s_# change.txt /*:s_#*
|
||||
:s_I change.txt /*:s_I*
|
||||
:s_c change.txt /*:s_c*
|
||||
:s_e change.txt /*:s_e*
|
||||
:s_flags change.txt /*:s_flags*
|
||||
:s_g change.txt /*:s_g*
|
||||
:s_i change.txt /*:s_i*
|
||||
:s_l change.txt /*:s_l*
|
||||
:s_n change.txt /*:s_n*
|
||||
:s_p change.txt /*:s_p*
|
||||
:s_r change.txt /*:s_r*
|
||||
:sa windows.txt /*:sa*
|
||||
:sal windows.txt /*:sal*
|
||||
:sall windows.txt /*:sall*
|
||||
@@ -3197,6 +3212,12 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:tjump tagsrch.txt /*:tjump*
|
||||
:tl tagsrch.txt /*:tl*
|
||||
:tlast tagsrch.txt /*:tlast*
|
||||
:tlm gui.txt /*:tlm*
|
||||
:tlmenu gui.txt /*:tlmenu*
|
||||
:tln gui.txt /*:tln*
|
||||
:tlnoremenu gui.txt /*:tlnoremenu*
|
||||
:tlu gui.txt /*:tlu*
|
||||
:tlunmenu gui.txt /*:tlunmenu*
|
||||
:tm gui.txt /*:tm*
|
||||
:tma map.txt /*:tma*
|
||||
:tmap map.txt /*:tmap*
|
||||
@@ -3500,10 +3521,12 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
<bang> map.txt /*<bang>*
|
||||
<buffer=N> autocmd.txt /*<buffer=N>*
|
||||
<buffer=abuf> autocmd.txt /*<buffer=abuf>*
|
||||
<cWORD> cmdline.txt /*<cWORD>*
|
||||
<cexpr> cmdline.txt /*<cexpr>*
|
||||
<cfile> cmdline.txt /*<cfile>*
|
||||
<character> intro.txt /*<character>*
|
||||
<count> map.txt /*<count>*
|
||||
<cword> cmdline.txt /*<cword>*
|
||||
<f-args> map.txt /*<f-args>*
|
||||
<k0> term.txt /*<k0>*
|
||||
<k1> term.txt /*<k1>*
|
||||
@@ -3535,6 +3558,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
<reg> map.txt /*<reg>*
|
||||
<register> map.txt /*<register>*
|
||||
<sfile> cmdline.txt /*<sfile>*
|
||||
<sflnum> cmdline.txt /*<sflnum>*
|
||||
<slnum> cmdline.txt /*<slnum>*
|
||||
<xCSI> intro.txt /*<xCSI>*
|
||||
<xDown> term.txt /*<xDown>*
|
||||
@@ -3738,6 +3762,7 @@ CTRL-\_CTRL-N intro.txt /*CTRL-\\_CTRL-N*
|
||||
CTRL-] tagsrch.txt /*CTRL-]*
|
||||
CTRL-^ editing.txt /*CTRL-^*
|
||||
CTRL-{char} intro.txt /*CTRL-{char}*
|
||||
Cfilter quickfix.txt /*Cfilter*
|
||||
Channel eval.txt /*Channel*
|
||||
Channels eval.txt /*Channels*
|
||||
Chinese mbyte.txt /*Chinese*
|
||||
@@ -3777,6 +3802,7 @@ DOS-format-write editing.txt /*DOS-format-write*
|
||||
Dictionaries eval.txt /*Dictionaries*
|
||||
Dictionary eval.txt /*Dictionary*
|
||||
Dictionary-function eval.txt /*Dictionary-function*
|
||||
DiffUpdated autocmd.txt /*DiffUpdated*
|
||||
Digraphs digraph.txt /*Digraphs*
|
||||
DirChanged autocmd.txt /*DirChanged*
|
||||
E motion.txt /*E*
|
||||
@@ -4676,7 +4702,11 @@ E954 options.txt /*E954*
|
||||
E955 eval.txt /*E955*
|
||||
E956 pattern.txt /*E956*
|
||||
E957 eval.txt /*E957*
|
||||
E958 eval.txt /*E958*
|
||||
E96 diff.txt /*E96*
|
||||
E960 options.txt /*E960*
|
||||
E961 cmdline.txt /*E961*
|
||||
E962 eval.txt /*E962*
|
||||
E97 diff.txt /*E97*
|
||||
E98 diff.txt /*E98*
|
||||
E99 diff.txt /*E99*
|
||||
@@ -4751,6 +4781,7 @@ KVim gui_x11.txt /*KVim*
|
||||
Kibaale uganda.txt /*Kibaale*
|
||||
Korean mbyte.txt /*Korean*
|
||||
L motion.txt /*L*
|
||||
Lfilter quickfix.txt /*Lfilter*
|
||||
Linux-backspace options.txt /*Linux-backspace*
|
||||
List eval.txt /*List*
|
||||
Lists eval.txt /*Lists*
|
||||
@@ -4771,6 +4802,27 @@ Macintosh os_mac.txt /*Macintosh*
|
||||
Mark motion.txt /*Mark*
|
||||
MenuPopup autocmd.txt /*MenuPopup*
|
||||
MiNT os_mint.txt /*MiNT*
|
||||
MMCellWidthMultiplier gui_mac.txt /*MMCellWidthMultiplier*
|
||||
MMDialogsTrackPwd gui_mac.txt /*MMDialogsTrackPwd*
|
||||
MMFullScreenFadeTime gui_mac.txt /*MMFullScreenFadeTime*
|
||||
MMLoginShellArgument gui_mac.txt /*MMLoginShellArgument*
|
||||
MMLoginShellCommand gui_mac.txt /*MMLoginShellCommand*
|
||||
MMNoFontSubstitution gui_mac.txt /*MMNoFontSubstitution*
|
||||
MMNoTitleBarWindow gui_mac.txt /*MMNoTitleBarWindow*
|
||||
MMShareFindPboard gui_mac.txt /*MMShareFindPboard*
|
||||
MMShowAddTabButton gui_mac.txt /*MMShowAddTabButton*
|
||||
MMTabMaxWidth gui_mac.txt /*MMTabMaxWidth*
|
||||
MMTabMinWidth gui_mac.txt /*MMTabMinWidth*
|
||||
MMTabOptimumWidth gui_mac.txt /*MMTabOptimumWidth*
|
||||
MMTextInsetBottom gui_mac.txt /*MMTextInsetBottom*
|
||||
MMTextInsetLeft gui_mac.txt /*MMTextInsetLeft*
|
||||
MMTextInsetRight gui_mac.txt /*MMTextInsetRight*
|
||||
MMTextInsetTop gui_mac.txt /*MMTextInsetTop*
|
||||
MMTexturedWindow gui_mac.txt /*MMTexturedWindow*
|
||||
MMTranslateCtrlClick gui_mac.txt /*MMTranslateCtrlClick*
|
||||
MMUseMouseTime gui_mac.txt /*MMUseMouseTime*
|
||||
MMVerticalSplit gui_mac.txt /*MMVerticalSplit*
|
||||
MMZoomBoth gui_mac.txt /*MMZoomBoth*
|
||||
Moolenaar intro.txt /*Moolenaar*
|
||||
MorphOS os_amiga.txt /*MorphOS*
|
||||
Motif gui_x11.txt /*Motif*
|
||||
@@ -5461,6 +5513,7 @@ catch-order eval.txt /*catch-order*
|
||||
catch-text eval.txt /*catch-text*
|
||||
cc change.txt /*cc*
|
||||
ceil() eval.txt /*ceil()*
|
||||
cfilter-plugin quickfix.txt /*cfilter-plugin*
|
||||
ch.vim syntax.txt /*ch.vim*
|
||||
ch_canread() eval.txt /*ch_canread()*
|
||||
ch_close() eval.txt /*ch_close()*
|
||||
@@ -5515,6 +5568,7 @@ channel-drop channel.txt /*channel-drop*
|
||||
channel-functions usr_41.txt /*channel-functions*
|
||||
channel-mode channel.txt /*channel-mode*
|
||||
channel-more channel.txt /*channel-more*
|
||||
channel-noblock channel.txt /*channel-noblock*
|
||||
channel-open channel.txt /*channel-open*
|
||||
channel-open-options channel.txt /*channel-open-options*
|
||||
channel-raw channel.txt /*channel-raw*
|
||||
@@ -6327,8 +6381,13 @@ ft-python-plugin filetype.txt /*ft-python-plugin*
|
||||
ft-python-syntax syntax.txt /*ft-python-syntax*
|
||||
ft-quake-syntax syntax.txt /*ft-quake-syntax*
|
||||
ft-r-indent indent.txt /*ft-r-indent*
|
||||
ft-r-syntax syntax.txt /*ft-r-syntax*
|
||||
ft-readline-syntax syntax.txt /*ft-readline-syntax*
|
||||
ft-rexx-syntax syntax.txt /*ft-rexx-syntax*
|
||||
ft-rmd-plugin filetype.txt /*ft-rmd-plugin*
|
||||
ft-rmd-syntax syntax.txt /*ft-rmd-syntax*
|
||||
ft-rrst-plugin filetype.txt /*ft-rrst-plugin*
|
||||
ft-rrst-syntax syntax.txt /*ft-rrst-syntax*
|
||||
ft-rst-syntax syntax.txt /*ft-rst-syntax*
|
||||
ft-ruby-omni insert.txt /*ft-ruby-omni*
|
||||
ft-ruby-syntax syntax.txt /*ft-ruby-syntax*
|
||||
@@ -6716,6 +6775,7 @@ getscript-start pi_getscript.txt /*getscript-start*
|
||||
gettabinfo() eval.txt /*gettabinfo()*
|
||||
gettabvar() eval.txt /*gettabvar()*
|
||||
gettabwinvar() eval.txt /*gettabwinvar()*
|
||||
gettagstack() eval.txt /*gettagstack()*
|
||||
getwininfo() eval.txt /*getwininfo()*
|
||||
getwinpos() eval.txt /*getwinpos()*
|
||||
getwinposx() eval.txt /*getwinposx()*
|
||||
@@ -6838,7 +6898,6 @@ gui_x11.txt gui_x11.txt /*gui_x11.txt*
|
||||
guifontwide_gtk2 options.txt /*guifontwide_gtk2*
|
||||
guifontwide_macvim options.txt /*guifontwide_macvim*
|
||||
guifontwide_win_mbyte options.txt /*guifontwide_win_mbyte*
|
||||
guioptions_a options.txt /*guioptions_a*
|
||||
guu change.txt /*guu*
|
||||
gv visual.txt /*gv*
|
||||
gview starting.txt /*gview*
|
||||
@@ -7237,6 +7296,7 @@ job-err_io channel.txt /*job-err_io*
|
||||
job-exit_cb channel.txt /*job-exit_cb*
|
||||
job-functions usr_41.txt /*job-functions*
|
||||
job-in_io channel.txt /*job-in_io*
|
||||
job-noblock channel.txt /*job-noblock*
|
||||
job-options channel.txt /*job-options*
|
||||
job-out_cb channel.txt /*job-out_cb*
|
||||
job-out_io channel.txt /*job-out_io*
|
||||
@@ -7324,6 +7384,7 @@ lifelines.vim syntax.txt /*lifelines.vim*
|
||||
limits vi_diff.txt /*limits*
|
||||
line() eval.txt /*line()*
|
||||
line-continuation repeat.txt /*line-continuation*
|
||||
line-continuation-comment repeat.txt /*line-continuation-comment*
|
||||
line2byte() eval.txt /*line2byte()*
|
||||
linefeed intro.txt /*linefeed*
|
||||
linewise motion.txt /*linewise*
|
||||
@@ -8296,6 +8357,7 @@ quotes.txt quotes.txt /*quotes.txt*
|
||||
quotestar gui.txt /*quotestar*
|
||||
quote~ change.txt /*quote~*
|
||||
r change.txt /*r*
|
||||
r.vim syntax.txt /*r.vim*
|
||||
range() eval.txt /*range()*
|
||||
raw-terminal-mode term.txt /*raw-terminal-mode*
|
||||
rcp pi_netrw.txt /*rcp*
|
||||
@@ -8360,8 +8422,10 @@ right-justify change.txt /*right-justify*
|
||||
rileft rileft.txt /*rileft*
|
||||
rileft.txt rileft.txt /*rileft.txt*
|
||||
riscos os_risc.txt /*riscos*
|
||||
rmd.vim syntax.txt /*rmd.vim*
|
||||
rot13 change.txt /*rot13*
|
||||
round() eval.txt /*round()*
|
||||
rrst.vim syntax.txt /*rrst.vim*
|
||||
rst.vim syntax.txt /*rst.vim*
|
||||
rsync pi_netrw.txt /*rsync*
|
||||
ruby if_ruby.txt /*ruby*
|
||||
@@ -8494,6 +8558,7 @@ setqflist-examples quickfix.txt /*setqflist-examples*
|
||||
setreg() eval.txt /*setreg()*
|
||||
settabvar() eval.txt /*settabvar()*
|
||||
settabwinvar() eval.txt /*settabwinvar()*
|
||||
settagstack() eval.txt /*settagstack()*
|
||||
setting-guifont gui.txt /*setting-guifont*
|
||||
setting-guitablabel tabpage.txt /*setting-guitablabel*
|
||||
setting-tabline tabpage.txt /*setting-tabline*
|
||||
@@ -8747,6 +8812,8 @@ swap-file recover.txt /*swap-file*
|
||||
swapchoice-variable eval.txt /*swapchoice-variable*
|
||||
swapcommand-variable eval.txt /*swapcommand-variable*
|
||||
swapfile-changed version4.txt /*swapfile-changed*
|
||||
swapinfo() eval.txt /*swapinfo()*
|
||||
swapname() eval.txt /*swapname()*
|
||||
swapname-variable eval.txt /*swapname-variable*
|
||||
sybase ft_sql.txt /*sybase*
|
||||
syn-sync-grouphere syntax.txt /*syn-sync-grouphere*
|
||||
@@ -8844,13 +8911,17 @@ t_RC term.txt /*t_RC*
|
||||
t_RF term.txt /*t_RF*
|
||||
t_RI term.txt /*t_RI*
|
||||
t_RS term.txt /*t_RS*
|
||||
t_RT term.txt /*t_RT*
|
||||
t_RV term.txt /*t_RV*
|
||||
t_Ri term.txt /*t_Ri*
|
||||
t_SC term.txt /*t_SC*
|
||||
t_SH term.txt /*t_SH*
|
||||
t_SI term.txt /*t_SI*
|
||||
t_SR term.txt /*t_SR*
|
||||
t_ST term.txt /*t_ST*
|
||||
t_Sb term.txt /*t_Sb*
|
||||
t_Sf term.txt /*t_Sf*
|
||||
t_Si term.txt /*t_Si*
|
||||
t_Te term.txt /*t_Te*
|
||||
t_Ts term.txt /*t_Ts*
|
||||
t_VS term.txt /*t_VS*
|
||||
@@ -9156,7 +9227,9 @@ test_null_job() eval.txt /*test_null_job()*
|
||||
test_null_list() eval.txt /*test_null_list()*
|
||||
test_null_partial() eval.txt /*test_null_partial()*
|
||||
test_null_string() eval.txt /*test_null_string()*
|
||||
test_option_not_set() eval.txt /*test_option_not_set()*
|
||||
test_override() eval.txt /*test_override()*
|
||||
test_scrollbar() eval.txt /*test_scrollbar()*
|
||||
test_settime() eval.txt /*test_settime()*
|
||||
testing eval.txt /*testing*
|
||||
testing-variable eval.txt /*testing-variable*
|
||||
@@ -9724,6 +9797,7 @@ windows98 os_win32.txt /*windows98*
|
||||
windowsme os_win32.txt /*windowsme*
|
||||
winheight() eval.txt /*winheight()*
|
||||
winid windows.txt /*winid*
|
||||
winlayout() eval.txt /*winlayout()*
|
||||
winline() eval.txt /*winline()*
|
||||
winnr() eval.txt /*winnr()*
|
||||
winrestcmd() eval.txt /*winrestcmd()*
|
||||
|
||||
@@ -179,6 +179,9 @@ commands explained above the tag stack will look like this:
|
||||
1 1 main 1 harddisk2:text/vim/test
|
||||
2 1 FuncB 59 harddisk2:text/vim/src/main.c
|
||||
|
||||
The |gettagstack()| function returns the tag stack of a specified window. The
|
||||
|settagstack()| function modifies the tag stack of a window.
|
||||
|
||||
*E73*
|
||||
When you try to use the tag stack while it doesn't contain anything you will
|
||||
get an error message.
|
||||
|
||||
@@ -352,6 +352,10 @@ Added by Vim (there are no standard codes for these):
|
||||
t_SH set cursor shape *t_SH* *'t_SH'*
|
||||
t_RC request terminal cursor blinking *t_RC* *'t_RC'*
|
||||
t_RS request terminal cursor style *t_RS* *'t_RS'*
|
||||
t_ST save window title to stack *t_ST* *'t_ST'*
|
||||
t_RT restore window title from stack *t_RT* *'t_RT'*
|
||||
t_Si save icon text to stack *t_Si* *'t_Si'*
|
||||
t_Ri restore icon text from stack *t_Ri* *'t_Ri'*
|
||||
|
||||
Some codes have a start, middle and end part. The start and end are defined
|
||||
by the termcap option, the middle part is text.
|
||||
|
||||
@@ -114,6 +114,9 @@ break: >
|
||||
tnoremap <Esc> <C-W>N
|
||||
set notimeout ttimeout timeoutlen=100
|
||||
|
||||
You can also create menus similar to terminal mode mappings, but you have to
|
||||
use |:tlmenu| instead of |:tmenu|.
|
||||
|
||||
< *options-in-terminal*
|
||||
After opening the terminal window and setting 'buftype' to "terminal" the
|
||||
TerminalOpen autocommand event is triggered. This makes it possible to set
|
||||
@@ -228,6 +231,10 @@ Syntax ~
|
||||
|
||||
If you want to use more options use the |term_start()|
|
||||
function.
|
||||
If you want to split the window vertically, use: >
|
||||
:vertical terminal
|
||||
< Or short: >
|
||||
:vert ter
|
||||
|
||||
When the buffer associated with the terminal is forcibly unloaded or wiped out
|
||||
the job is killed, similar to calling `job_stop(job, "kill")` .
|
||||
@@ -613,7 +620,18 @@ This will open a window consisting of three parts:
|
||||
3. The contents of the second dump
|
||||
|
||||
You can usually see what differs in the second part. Use the 'ruler' to
|
||||
relate it to the position in the first or second dump.
|
||||
relate it to the position in the first or second dump. Letters indicate the
|
||||
kind of difference:
|
||||
X different character
|
||||
> cursor in first but not in second
|
||||
< cursor in second but not in first
|
||||
w character width differs (single vs double width)
|
||||
f foreground color differs
|
||||
b background color differs
|
||||
a attribute differs (bold, underline, reverse, etc.)
|
||||
? character missing in both
|
||||
+ character missing in first
|
||||
- character missing in second
|
||||
|
||||
Alternatively, press "s" to swap the first and second dump. Do this several
|
||||
times so that you can spot the difference in the context of the text.
|
||||
@@ -635,7 +653,7 @@ Starting ~
|
||||
Load the plugin with this command: >
|
||||
packadd termdebug
|
||||
< *:Termdebug*
|
||||
To start debugging use `:Termdebug` or `:TermdebugCommand`` followed by the
|
||||
To start debugging use `:Termdebug` or `:TermdebugCommand` followed by the
|
||||
command name, for example: >
|
||||
:Termdebug vim
|
||||
|
||||
|
||||
+254
-161
@@ -34,29 +34,58 @@ entered there will not be repeated below, unless there is extra information.
|
||||
|
||||
The #1234 numbers refer to an issue or pull request on github. To see it in a
|
||||
browser use: https://github.com/vim/vim/issues/1234
|
||||
|
||||
(replace 1234 with the issue/pull number)
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Graduate FEAT_VREPLACE, it's not much code and a lot of #ifdefs
|
||||
Make ":script 40" edit the script listed with number 40. Actually use
|
||||
":scriptnames".
|
||||
|
||||
Download page: "A 64 bit version" link is wrong, use this one instead:
|
||||
https://github.com/vim/vim-win32-installer/releases/latest
|
||||
|
||||
'incsearch' with :s: (#3321)
|
||||
- :s/foo using CTRL-G moves to another line, should not happen, or use the
|
||||
correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
|
||||
- Also support range: :/foo/,/bar/delete
|
||||
- Also support for user command, e.g. Cfilter
|
||||
- :%s/foo should take the first match below the cursor line, unless there
|
||||
isn't one?
|
||||
Then :%s?foo should take the first match above the cursor line.
|
||||
|
||||
Prompt buffer:
|
||||
- Add a command line history.
|
||||
- delay next prompt until plugin gives OK?
|
||||
- add prompt_addtext({buf}, {expr}) none add text to a prompt buffer
|
||||
|
||||
Terminal debugger:
|
||||
- Make prompt-buffer variant work better.
|
||||
- If breakpoints are deleted with "delete" in gdb the response is not parsed
|
||||
properly and the breakpoints in Vim are not removed.
|
||||
- Add option to not open the program window. It's not used when attaching to
|
||||
an already running program. (M. Kelly)
|
||||
- When only gdb window exists, on "quit" edit another buffer.
|
||||
- Termdebug does not work when Vim was build with mzscheme: gdb hangs just
|
||||
after "run". Everything else works, including communication channel. Not
|
||||
initializing mzscheme avoid the problem, thus it's not some #ifdef.
|
||||
- Add support for lldb? #3565
|
||||
- Could we do something similar for debugging Vim scripts? At least see the
|
||||
script while stepping through it. Simple version would use an extra window.
|
||||
More complete solution would actually run Vim in a Terminal an control it
|
||||
with another Vim instance.
|
||||
|
||||
Terminal emulator window:
|
||||
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
||||
(#3327)
|
||||
- GUI: hang until key typed. (#3530)
|
||||
- When the job in the terminal doesn't use mouse events, let the scroll wheel
|
||||
scroll the scrollback, like a terminal does at the shell prompt. #2490
|
||||
And use modeless selection. #2962
|
||||
- Allow for specifying the directory, with ++cwd={dir}.
|
||||
- With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
|
||||
#2977)
|
||||
- Add a way to make ":term cmd" run "cmd" in a shell, instead of executing it
|
||||
directly. Perhaps ":term ++shell cmd". (#3340)
|
||||
- When pasting should call vterm_keyboard_start_paste(), e.g. when using
|
||||
K_MIDDLEMOUSE, calling insert_reg().
|
||||
- Users expect parsing the :term argument like a shell does, also support
|
||||
@@ -76,67 +105,134 @@ Terminal emulator window:
|
||||
- When 'encoding' is not utf-8, or the job is using another encoding, setup
|
||||
conversions.
|
||||
|
||||
Users get used to "function!" because they reload a script file. How about
|
||||
recognizing the script is re-sourced and not giving an error for the first
|
||||
function that overwrites. Then one can leave out the exclamation mark and
|
||||
catch actual errors, overwriting a function from another script.
|
||||
|
||||
Update for German spell files: https://github.com/chrisbra/vim/compare/5e021c990f8817a50d3264782a5...3b27c92f297540761ebbd92d04fb3
|
||||
(Christian Brabandt, 2018 Nov 4)
|
||||
|
||||
Patch for nsis/README.txt and uninstal.txt (Ken Takata, 2018 Nov 17, #3614)
|
||||
|
||||
Patch to add commandline completion tests. (Dominique, #3622)
|
||||
|
||||
Problem with Visual yank when 'linebreak' and 'showbreak' are set.
|
||||
Patch with tests, but it's not clear how it is supposed to work. (tommm, 2018
|
||||
Nov 17)
|
||||
|
||||
Key mapping times out when using a timer in Gvim. (Michael Henry, 2018 Sep 9,
|
||||
#3417)
|
||||
|
||||
Does not build with MinGW out of the box:
|
||||
- _stat64 is not defined, need to use "struct stat" in vim.h
|
||||
- WINVER conflict, should use 0x0600 by default?
|
||||
|
||||
Patches for Python: #3162, #3263 (Ozaki Kiichi)
|
||||
Needs update.
|
||||
Adding a fold with a marker in a C file doesn't add the comment /* */ if the
|
||||
line contains a * somewhere. Patch with a fix (Hirohito Higashi, 2018 Nov 22)
|
||||
|
||||
Crash in terminal with long multi-byte sequence. (2018 Nov 17, #3619)
|
||||
Dominique cannot reproduce. Update Nov 18.
|
||||
Suggested solution by Yasuhiro Matsumoto, 2018 Nov 18.
|
||||
|
||||
Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
|
||||
13, #2910) Can't reproduce?
|
||||
|
||||
On Win32 when not in the console and t_Co >= 256, allow using 'tgc'.
|
||||
(Nobuhiro Takasaki, #2833) Also check t_Co.
|
||||
|
||||
Errors found with random data:
|
||||
heap-buffer-overflow in alist_add (#2472)
|
||||
|
||||
Win32 key codes are messy. Mike Williams tried to fix that, but now old
|
||||
mappings no longer work. Create a new terminal for the better solution?
|
||||
|
||||
Patch to fix that appending makes items to be "recognized".
|
||||
(Yegappan, 2018 Nov 23). Reported by Daniel Hahler, #3633.
|
||||
|
||||
Improve fallback for menu translations, to avoid having to create lots of
|
||||
files that source the actual file. E.g. menu_da_de -> menu_da
|
||||
Include part of #3242?
|
||||
|
||||
Inlcude Chinese-Taiwan translations. (bystar, #3261)
|
||||
When a terminal exit_cb closes the window, a following typed key is lost, if
|
||||
it's in a mapping. (2018 Oct 6, #2302, #3522)
|
||||
|
||||
Using mouse for inputlist() doesn't work after patch 8.0.1756. (Dominique
|
||||
Pelle, 2018 Jul 22, #3239) Also see 8.0.0722. Check both console and GUI.
|
||||
Patch to add FOR_ALL_FRAMES. (Yegappan, 2018 Nov 18)
|
||||
|
||||
Patch to resize to fit parent position when using ---windowid. ( Agorgianitis
|
||||
Loukas, 2018 Nov 17, #3616)
|
||||
Completion mixes results from the current buffer with tags and other files.
|
||||
Happens when typing CTRL-N while still search for results. E.g., type "b_" in
|
||||
terminal.c and then CTRL-N twice.
|
||||
Should do current file first and not split it up when more results are found.
|
||||
(Also #1890)
|
||||
|
||||
Internal diff doesn't handle binary file like external diff does. (Mike
|
||||
Williams, 2018 Oct 30)
|
||||
|
||||
Problem with :tlmenu: Detach item added with all modes? Issue #3563.
|
||||
|
||||
C syntax: {} inside () causes following {} to be highlighted as error.
|
||||
(Michalis Giannakidis, 2006 Jun 1)
|
||||
|
||||
More warnings from static analysis:
|
||||
https://lgtm.com/projects/g/vim/vim/alerts/?mode=list
|
||||
|
||||
Quickfix accessing free memory. (Dominique, 2018 Oct 13, #3538)
|
||||
Yegappan will look into it.
|
||||
|
||||
Patch for this: (Aron Widforss, 2018 Oct 13, #3539)
|
||||
missing a test.
|
||||
7 Make 'scrolloff' a global-local option, so that it can be different in the
|
||||
quickfix window, for example. (Gary Holloway)
|
||||
Also do 'sidescrolloff'.
|
||||
|
||||
Patch for ConPTY support, #3474: What is the status?
|
||||
|
||||
Pasting foo} causes Vim to behave weird. (John Little, 2018 Jun 17)
|
||||
Related to bracketed paste. I cannot reproduce it.
|
||||
|
||||
Using ":file" in quickfix window during an autocommand doesn't work.
|
||||
(Jason Franklin, 2018 May 23) Allow for using it when there is no argument.
|
||||
Using CTRL-L to add a character to the search string doesn't work for the last
|
||||
character in the file. (Smylers, 2018 Nov 17, #3620)
|
||||
Suggested patch by Hirohito Higashi, 2018 Nov 18.
|
||||
|
||||
Using CTRL-L to add a character to the search string that contains \v,
|
||||
punctiuation is repeated. (Smylers, 2018 Nov 17, #3621)
|
||||
|
||||
":mksession" cannot handle a very long 'runtimepath'. (Timothy Madden, 21 Sep
|
||||
2018, #3466) Patch from Christian, 2018 Oct 30 (with comments).
|
||||
|
||||
Patch in pull request #2967: Allow white space in sign text. (Ben Jackson)
|
||||
Test fails in AppVeyor.
|
||||
|
||||
Removing flags from 'cpoptions' breaks the Winbar buttons in termdebug.
|
||||
(Dominique Pelle, 2018 Jul 16)
|
||||
Patch to simplify nsis installer. (Ken Takata, 2018 Sep 24, was #3479)
|
||||
Now included in #3501, using MUI2. Use the zip file to get the binary files:
|
||||
https://github.com/vim/vim/files/2475621/nsis-icons.zip
|
||||
Still being worked on.
|
||||
|
||||
ml_get error: (Israel Chauca Fuentes, 2018 Oct 17, #3550).
|
||||
|
||||
Patch to convert temp file name. (Yasuhiro Matsumoto, #3520)
|
||||
Not ready to include yet.
|
||||
|
||||
Problem with two buffers with the same name a/b, if it didn't exist before and
|
||||
is created outside of Vim. (dskloetg, 2018 Jul 16, #3219)
|
||||
|
||||
Memory leak in test_assert:
|
||||
==19127== by 0x2640D7: alloc (misc2.c:874)
|
||||
==19127== by 0x2646D6: vim_strsave (misc2.c:1315)
|
||||
==19127== by 0x1B68D2: f_getcwd (evalfunc.c:4950)
|
||||
And:
|
||||
==19127== by 0x2640D7: alloc (misc2.c:874)
|
||||
==19127== by 0x1A9477: set_var (eval.c:7601)
|
||||
==19127== by 0x19F96F: set_var_lval (eval.c:2233)
|
||||
==19127== by 0x19EA3A: ex_let_one (eval.c:1810)
|
||||
==19127== by 0x19D737: ex_let_vars (eval.c:1294)
|
||||
==19127== by 0x19D6B4: ex_let (eval.c:1259)
|
||||
Invalid memory access with old regexp engine. (Dominique Pelle, 2018 Sep 3,
|
||||
#3405) Introduced by 8.0.1517, which was fixing another memory access error.
|
||||
(Sep 8)
|
||||
|
||||
Add function to make use of internal diff, working on two lists and returning
|
||||
unified diff (list of lines).
|
||||
|
||||
Patch to implement 'diffref' option. (#3535)
|
||||
Easier to use a 'diffmaster' option, is the extra complexity needed?
|
||||
|
||||
Patch to fix that bracketed paste remains after Vim exits. (2018 Oct 30, #3579)
|
||||
|
||||
cursorline highlighting not removed after yanking in Visual mode.
|
||||
(Matéo Zanibelli, 2018 Oct 30, #3578)
|
||||
Patch by Christian, Oct 30.
|
||||
|
||||
Memory leaks in test_channel? (or is it because of fork())
|
||||
Using uninitialized value in test_crypt.
|
||||
Memory leaks in test_escaped_glob
|
||||
==20651== by 0x2640D7: alloc (misc2.c:874)
|
||||
==20651== by 0x2646D6: vim_strsave (misc2.c:1315)
|
||||
==20651== by 0x3741EA: get_function_args (userfunc.c:131)
|
||||
==20651== by 0x378779: ex_function (userfunc.c:2036)
|
||||
Memory leak in test_terminal:
|
||||
==23530== by 0x2640D7: alloc (misc2.c:874)
|
||||
==23530== by 0x2646D6: vim_strsave (misc2.c:1315)
|
||||
@@ -153,6 +249,58 @@ gethostbyname() is old, use getaddrinfo() if available. (#3227)
|
||||
matchaddpos() gets slow with many matches. Proposal by Rick Howe, 2018 Jul
|
||||
19.
|
||||
|
||||
Sourceforge Vim pages still have content, redirect from empty page.
|
||||
Check for PHP errors. (Wayne Davison, 2018 Oct 26)
|
||||
|
||||
Patch to support ":tag <tagkind> <tagname>". (emmrk, 2018 May 7, #2871)
|
||||
Use something like ":tag {kind}/{tagname}".
|
||||
Not ready to include.
|
||||
|
||||
:pedit resets the 'buflisted' option unexpectedly. (Wang Shidong, 2018 Oct 12,
|
||||
#3536)
|
||||
|
||||
home_replace() uses $HOME instead of "homedir". (Cesar Martins, 2018 Aug 9)
|
||||
|
||||
When the status line uses term_gettitle(), it does not get updated when the
|
||||
terminal title changes. (Josh Triplett, 2018 Sep 9, #3418)
|
||||
How would we know that the status line needs to be updated?
|
||||
|
||||
Adjust windows installer explanation of behavior. (scootergrisen, #3310)
|
||||
|
||||
Set g:actual_curbuf when evaluating 'statusline', not just with an expression.
|
||||
(Daniel Hahler, 2018 Aug 8, #3299)
|
||||
|
||||
ml_get error. (Dominique Pelle, 2018 Sep 14, #3434)
|
||||
|
||||
Patch to use forward slash for completion even when 'shellslash' is set.
|
||||
Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612)
|
||||
|
||||
Only output t_Cs when t_Ce is also set. do not use Cs and Ce termcap entries. (Daniel Hahler, 2018 Sep 25)
|
||||
Add t_cS and t_cR for cursor color select and reset. Use Cs and Cr terminfo
|
||||
values.
|
||||
|
||||
Further xdiff changes:
|
||||
- More options, e.g. different kind of whitespace diff.
|
||||
- when editing text, update the surrounding diff blocks.
|
||||
- omit diff.exe from distribution
|
||||
- Can we make this show differences within a line?
|
||||
- add option to use external diff above a certain size.
|
||||
|
||||
Difference between two regexp engines: #3373
|
||||
|
||||
When the last line wraps, selecting with the mouse below that line only
|
||||
includes the first screen line. (2018 Aug 23, #3368)
|
||||
|
||||
Refactored HTML indent file. (Michael Lee, #1821)
|
||||
Ask to write a test first.
|
||||
|
||||
Patch to add getregpoint() and setreg() with an option to set "".
|
||||
(Andy Massimino, 2018 Aug 24, #3370)
|
||||
Better name?
|
||||
|
||||
MS-Windows: .lnk file not resolved properly when 'encoding' is set.
|
||||
(lkintact, 2018 Sep 22, #3473)
|
||||
|
||||
Script generated by :mksession does not work well if there are windows with
|
||||
modified buffers
|
||||
change "silent only" into "silent only!"
|
||||
@@ -160,16 +308,6 @@ modified buffers
|
||||
skip "badd fname" if "fname" is already in the buffer list
|
||||
remove remark about unloading buffers from documentation
|
||||
|
||||
Patch to make :help work for tags with a ?. (Hirohito Higashi, 2018 May 28)
|
||||
|
||||
Patch to have a stack trace in Ruby. (Masataka Pocke Kuwabara, 2018 Jul 30,
|
||||
#3267)
|
||||
|
||||
Patch to adjust to DPI setting for GTK. (Roel van de Kraats, 2017 Nov 20,
|
||||
#2357)
|
||||
|
||||
Patch to fix window size when using VTP. (Nobuhiro Takasaki, #3164)
|
||||
|
||||
Compiler warnings (geeknik, 2017 Oct 26):
|
||||
- signed integer overflow in do_sub() (#2249)
|
||||
- signed integer overflow in get_address() (#2248)
|
||||
@@ -179,27 +317,43 @@ Compiler warnings (geeknik, 2017 Oct 26):
|
||||
Win32 console: <F11> and <F12> typed in Insert mode don't result in normal
|
||||
characters. (#3246)
|
||||
|
||||
Patch for more quickfix refactoring. (Yegappan Lakshmanan, #2950)
|
||||
'foldtext' is evaluated too often. (Daniel Hahler, #2773)
|
||||
|
||||
Add Native language protocol server (LSP) support. (Yegappan Lakshmanan, 2018
|
||||
Oct 28)
|
||||
|
||||
ml_get error when using a Python script. (Yggdroot, 2017 Jun 1, #1737)
|
||||
Lemonboy can reproduce (2017 Jun 5)
|
||||
Also reproduced by Benjamin Doherty, 2018 Oct 4.
|
||||
Simpler way: Ken Takata, Oct 6.
|
||||
|
||||
Height of quickfix window is not retained with vertical splits. (Lifepillar,
|
||||
2018 Aug 24, #2998)
|
||||
|
||||
Window size is wrong when using quickfix window. (Lifepillar, 2018 Aug 24,
|
||||
#2999)
|
||||
|
||||
Tests failing for "make testgui" with GTK:
|
||||
- Test_setbufvar_options()
|
||||
- Test_exit_callback_interval()
|
||||
|
||||
Get a "No Name" buffer when 'hidden' is set and opening a new window from the
|
||||
quickfix list. (bfrg, 2018 Jan 22, #2574)
|
||||
Tracked down by Jason Franklin, 2018 Oct 30.
|
||||
Suggested patch by Yegappan, Nov 1.
|
||||
|
||||
When using CTRL-W CR in the quickfix window, the jumplist in the opened window
|
||||
is cleared, to avoid going back to the list of errors buffer (would have two
|
||||
windows with it). Can we just remove the jump list entries for the quickfix
|
||||
buffer?
|
||||
|
||||
Patch to stack and pop the window title and icon. (IWAMOTO Kouichi, 2018 Jun
|
||||
22, #3059)
|
||||
8 For xterm need to open a connection to the X server to get the window
|
||||
title, which can be slow. Can also get the title with "<Esc>[21t", no
|
||||
need to use X11 calls. This returns "<Esc>]l{title}<Esc>\".
|
||||
Using title stack probably works better.
|
||||
Patch to fix that executable() may fail on very long filename in MS-Windows.
|
||||
(Ken Takata, 2016 Feb 1, update 2018 Oct 7)
|
||||
|
||||
When a function is defined in the sandbox (with :function or as a lambda)
|
||||
always execute it in the sandbox. (#3182)
|
||||
Remove "safe" argument from call_vim_function(), it's always FALSE.
|
||||
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
|
||||
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1.
|
||||
Patch to be able to disable default digraphs (incomplete) (Eric Pruitt, 2018
|
||||
Nov 22).
|
||||
|
||||
Make balloon_show() work outside of 'balloonexpr'? Users expect it to work:
|
||||
#2948. (related to #1512?)
|
||||
@@ -207,6 +361,14 @@ On Win32 it stops showing, because showState is already ShS_SHOWING.
|
||||
balloon_show() does not work properly in the terminal. (Ben Jackson, 2017 Dec
|
||||
20, #2481)
|
||||
Also see #2352, want better control over balloon, perhaps set the position.
|
||||
Should also be possible to add highlighting, like in the status line?
|
||||
balloonexpr() on MS-Windows GUI doesn't handle accented chars? (nivaemail,
|
||||
2018 Sep 14)
|
||||
|
||||
Add v:motion_force. (Kana Natsuno, 2008 Dec 6)
|
||||
Maybe call it v:motiontype. Update in #3490.
|
||||
Alternative: add the force flag to mode(), after "no".
|
||||
Patch ready to include?
|
||||
|
||||
Try out background make plugin:
|
||||
https://github.com/AndrewVos/vim-make-background
|
||||
@@ -214,7 +376,7 @@ or asyncmake:
|
||||
https://github.com/yegappan/asyncmake
|
||||
|
||||
Add a ModeChanged autocommand that has an argument indicating the old and new
|
||||
mode. Also used for switching Terminal mode.
|
||||
mode, as what's returned from mode(). Also used for switching Terminal mode.
|
||||
|
||||
Add an option with file patterns, to be used when unloading a buffer: If there
|
||||
is a match, remove entries for the buffer from marks, jumplist, etc. To be
|
||||
@@ -222,19 +384,24 @@ used for git temp files.
|
||||
|
||||
Cursor in wrong position when line wraps. (#2540)
|
||||
|
||||
Patch for Lua support. (Kazunobu Kuriyama, 2018 May 26)
|
||||
Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
|
||||
#2546) Fixes #1057. Missing a test.
|
||||
|
||||
Setting 'columns' in a BufEnter autocommand causes a second tab width to
|
||||
behave strangely, as if there is a gap and a vertical window separator.
|
||||
(Michael Soyka, 2018 Sep 23, #3477)
|
||||
|
||||
Make {skip} argument of searchpair() consistent with other places where we
|
||||
pass an expression to evaluate. Allow passing zero for "never skip".
|
||||
|
||||
The 'scrolloff' option is global, make it global-local. #3195
|
||||
|
||||
Add an option similar to 'lazyredraw' to skip redrawing while executing a
|
||||
script or function.
|
||||
|
||||
Universal solution to detect if t_RS is working, using cursor position.
|
||||
Koichi Iwamoto, #2126
|
||||
|
||||
Patch to fix profiling condition lines. (Ozaki Kiichi,, 2017 Dec 26, #2499)
|
||||
|
||||
When using a menu item while the "more" prompt is displayed doesn't work well.
|
||||
E.g. after using help->version. Have a key that ends the "more" prompt and
|
||||
does nothing otherwise?
|
||||
@@ -244,6 +411,11 @@ If 'readonly' is not set but the file appears to be readonly later, try again
|
||||
(wait a little while).
|
||||
CreateFile() returns ERROR_SHARING_VIOLATION (Linwei, 2018 May 5)
|
||||
|
||||
Using --remote to open a file in which a # appears does not work on
|
||||
MS-Windows. Perhaps in \# the \ is seen as a path separator. (Axel Bender,
|
||||
2017 Feb 9) Can we expand wildcards first and send the path literally to the
|
||||
receiving Vim? Or make an exception for #, it's not useful remotely.
|
||||
|
||||
Should add a test for every command line argument. Check coverage for what is
|
||||
missing: --nofork, -A , -b, -h, etc.
|
||||
|
||||
@@ -254,7 +426,7 @@ Quickfix window height is not kept with a vertical split. (Lifepillar, 2018
|
||||
Jun 10, #2998)
|
||||
|
||||
Improve the installer for MS-Windows. There are a few alternatives:
|
||||
- Add silent install option. (Shane Lee, #751)
|
||||
- mui2 installer improved by Ken Takata (2018 Sep 29)
|
||||
- Installer from Cream (Steve Hall).
|
||||
- Modern UI 2.0 for the Nsis installer. (Guopeng Wen)
|
||||
https://github.com/gpwen/vim-installer-mui2
|
||||
@@ -268,12 +440,8 @@ How to test that it works well for all Vim users?
|
||||
|
||||
Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
|
||||
|
||||
Patch to use NGETTEXT() in many more places. (Sergey Alyoshin, 2018 May 25)
|
||||
Updated ptach May 27.
|
||||
|
||||
Does setting 'cursorline' cause syntax highlighting to slow down? Perhaps is
|
||||
mess up the cache? (Mike Lee Williams, 2018 Jan 27, #2539)
|
||||
Also: 'foldtext' is evaluated too often. (Daniel Hahler, #2773)
|
||||
Delete all the specific stuff for the Borland compiler? (#3374)
|
||||
Patch in #3377 (Thomas Dziedzic)
|
||||
|
||||
With 'foldmethod' "indent" and appending an empty line, what follows isn't
|
||||
included in the existing fold. Deleting the empty line and undo fixes it.
|
||||
@@ -304,19 +472,9 @@ confusing error message. (Wang Shidong, 2018 Jan 2, #2519)
|
||||
|
||||
Add the debug command line history to viminfo.
|
||||
|
||||
Issue #686: apply 'F' in 'shortmess' to more messages. Also #3221.
|
||||
|
||||
Avoid that "sign unplace id" does a redraw right away, esp. when there is a
|
||||
sequence of these commands. (Andy Stewart, 2018 Mar 16)
|
||||
|
||||
ch_sendraw() with long string does not try to read in between, which may cause
|
||||
a deadlock if the reading side is waiting for the write to finish. (Nate
|
||||
Bosch, 2018 Jan 13, #2548)
|
||||
Perhaps just make chunks of 1024 bytes?
|
||||
|
||||
Patch to include a cfilter plugin to filter quickfix/location lists.
|
||||
(Yegappan Lakshmanan, 2018 May 12)
|
||||
|
||||
Add Makefiles to the runtime/spell directory tree, since nobody uses Aap.
|
||||
Will have to explain the manual steps (downloading the .aff and .dic files,
|
||||
applying the diff, etc.
|
||||
@@ -335,8 +493,6 @@ With foldmethod=syntax and nofoldenable comment highlighting isn't removed.
|
||||
Using 'wildignore' also applies to literally entered file name. Also with
|
||||
:drop (remote commands).
|
||||
|
||||
Patch to support ":tag <tagkind> <tagname". (emmrk, 2018 May 7, #2871)
|
||||
|
||||
Inserting a line in a CompleteDone autocommand may confuse undo. (micbou,
|
||||
2018 Jun 18, #3027)
|
||||
|
||||
@@ -363,50 +519,38 @@ option_save({list}) *option_save()*
|
||||
values are handled and the script ID is restored, so that
|
||||
`:verbose set` will show where the option was originally set,
|
||||
not where it was restored.
|
||||
Alternatively: save and restore ALL options. Implementation needs to use
|
||||
copy-on-write. Return an ID from option_save(), when
|
||||
option_restore(ID) is called give an error if another option_save()
|
||||
was called in the mean time, they must be balanced.
|
||||
|
||||
"gvim --remote" from a directory with non-word characters changes the current
|
||||
directory (Paulo Marcel Coelho Arabic, 2017 Oct 30, #2266)
|
||||
Also see #1689.
|
||||
|
||||
ml_get error when using a Python script. (Yggdroot, 2017 Jun 1, #1737)
|
||||
Lemonboy can reproduce (2017 Jun 5)
|
||||
|
||||
crash when removing an element while inside map(). (Nikolai Pavlov, 2018 Feb
|
||||
17, #2652)
|
||||
|
||||
When 'virtualedit' is "all" and 'cursorcolumn' is set, the wrong column may be
|
||||
highlighted. (van-de-bugger, 2018 Jan 23, #2576)
|
||||
|
||||
Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
|
||||
#2546) Fixes #1057. Missing a test.
|
||||
|
||||
":file" does not show anything when 'shortmess' contains 'F'. (#3070)
|
||||
|
||||
Patch to add winlayout() function. (Yegappan Lakshmanan, 2018 Jan 4)
|
||||
|
||||
No profile information for function that executes ":quit". (Daniel Hahler,
|
||||
2017 Dec 26, #2501)
|
||||
|
||||
Get a "No Name" buffer when 'hidden' is set and opening a new window from the
|
||||
quickfix list. (bfrg, 2018 Jan 22, #2574)
|
||||
A function on a dictionary is not profiled. (ZyX, 2010 Dec 25)
|
||||
|
||||
Add script number to profile? (#3330 breaks tests).
|
||||
|
||||
A function defined locally and lambda's are not easily recognized.
|
||||
Mention where they were defined somewhere.
|
||||
|
||||
CTRL-X on zero gets stuck on 0xfffffffffffffffe. (Hengyang Zhao, #2746)
|
||||
|
||||
A function on a dictionary is not profiled. (ZyX, 2010 Dec 25)
|
||||
|
||||
Invalid range error when using BufWinLeave for closing terminal.
|
||||
(Gabriel Barta, 2017 Nov 15, #2339)
|
||||
|
||||
Using an external diff is inefficient. Not all systems have a good diff
|
||||
program available (esp. MS-Windows). Would be nice to have in internal diff
|
||||
implementation. Can then also use this for displaying changes within a line.
|
||||
Olaf Dabrunz is working on this. (10 Jan 2016)
|
||||
9 Instead invoking an external diff program, use builtin code. One can be
|
||||
found here: http://www.ioplex.com/~miallen/libmba/dl/src/diff.c
|
||||
It's complicated and badly documented.
|
||||
Alternative: use the xdiff library. Patch from Christian Brabandt, 2018 Mar
|
||||
20, #2732)
|
||||
|
||||
ml_get errors with buggy script. (Dominique, 2017 Apr 30)
|
||||
|
||||
Error in emsg with buggy script. (Dominique, 2017 Apr 30)
|
||||
@@ -450,14 +594,14 @@ always nested.
|
||||
|
||||
matchit hasn't been maintained for a long time. #955.
|
||||
|
||||
Patch to add variable name after "scope add". (Eddie Lebow, 2018 Feb 7, #2620)
|
||||
Maybe not needed?
|
||||
|
||||
Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
|
||||
|
||||
MS-Windows: buffer completion doesn't work when using backslash (or slash)
|
||||
for a path separator. (xtal8, #2201)
|
||||
|
||||
Would be nice for insert mode completion to highlight the text that was added
|
||||
(and may change when picking another completion).
|
||||
|
||||
Test runtime files.
|
||||
Start with filetype detection: testdir/test_filetype.vim
|
||||
|
||||
@@ -487,8 +631,6 @@ It can replace the BeOS code, which is likely not used anymore.
|
||||
Now on github: #1856. Updated Oct 2017
|
||||
Got permission to include this under the Vim license.
|
||||
|
||||
Refactored HTML indent file. (Michael Lee, #1821)
|
||||
|
||||
Test_writefile_fails_conversion failure on Solaris because if different iconv
|
||||
behavior. Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
|
||||
|
||||
@@ -554,12 +696,6 @@ that optiona? (Bjorn Linse, 2017 Aug 5)
|
||||
Cindent: returning a structure has more indent for the second item.
|
||||
(Sam Pagenkopf, 2017 Sep 14, #2090)
|
||||
|
||||
Completion mixes results from the current buffer with tags and other files.
|
||||
Happens when typing CTRL-N while still search for results. E.g., type "b_" in
|
||||
terminal.c and then CTRL-N twice.
|
||||
Should do current file first and not split it up when more results are found.
|
||||
(Also #1890)
|
||||
|
||||
Patch from Christian Brabandt to preserve upper case marks when wiping out a
|
||||
buffer. (2013 Dec 9)
|
||||
Also fixes #2166?
|
||||
@@ -572,9 +708,6 @@ stack trace. (Yggdroot, 2017 Jul 28, #1887)
|
||||
Profile of a dict function is lost when the dict is deleted. Would it be
|
||||
possible to collect this? (Daniel Hahler, #2350)
|
||||
|
||||
Add `:filter` support for various commands (Marcin Szamotulski, 2017 Nov 12
|
||||
#2322) Now in #2327?
|
||||
|
||||
When checking if a bufref is valid, also check the buffer number, to catch the
|
||||
case of :bwipe followed by :new.
|
||||
|
||||
@@ -749,15 +882,11 @@ Or point to nightly builds: https://github.com/vim/vim-win32-installer/releases
|
||||
Problem passing non-UTF-8 strings to Python 3. (Björn Linse, 2016 Sep 11,
|
||||
#1053) With patch, does it work?
|
||||
|
||||
Using --remote to open a file in which a # appears does not work on
|
||||
MS-Windows. Perhaps in \# the \ is seen as a path separator. (Axel Bender,
|
||||
2017 Feb 9) Can we expand wildcards first and send the path literally to the
|
||||
receiving Vim? Or make an exception for #, it's not useful remotely.
|
||||
|
||||
":sbr" docs state it respects 'switchbuf', but "vsplit" does not cause a
|
||||
vertical split. (Haldean Brown, 2017 Mar 1)
|
||||
|
||||
Use ADDR_OTHER instead of ADDR_LINES for many more commands.
|
||||
E.g. all the location list commands use a count.
|
||||
Add tests for using number larger than number of lines in buffer.
|
||||
|
||||
Might be useful to have isreadonly(), like we have islocked().
|
||||
@@ -1088,9 +1217,6 @@ Patch to avoid redrawing tabline when the popup menu is visible.
|
||||
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
|
||||
Update 2016 Jun 10, #861
|
||||
|
||||
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
|
||||
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1.
|
||||
|
||||
Patch to show search statistics. (Christian Brabandt, 2016 Jul 22)
|
||||
|
||||
When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
|
||||
@@ -1105,9 +1231,6 @@ Patch to add <restore> to :windo, :bufdo, etc. (Christian Brabandt, 2015 Jan
|
||||
6, 2nd message)
|
||||
Alternative: ":keeppos" command modifier: ":keeppos windo {cmd}".
|
||||
|
||||
Patch to fix that executable() may fail on very long filename in MS-Windows.
|
||||
(Ken Takata, 2016 Feb 1)
|
||||
|
||||
Patch to fix display of listchars on the cursorline. (Nayuri Aohime, 2013)
|
||||
Update suggested by Yasuhiro Matsumoto, 2014 Nov 25:
|
||||
https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
|
||||
@@ -1169,10 +1292,6 @@ I can't recommend it though.
|
||||
Build with Python on Mac does not always use the right library.
|
||||
(Kazunobu Kuriyama, 2015 Mar 28)
|
||||
|
||||
Patch to add arguments to argc() and argv(). (Yegappan Lakshmanan, 2016 Jan
|
||||
24) Also need a way to get the global arg list? Update later on Jan 24
|
||||
Update Mar 5. Update Apr 7. Update Jun 5.
|
||||
|
||||
To support Thai (and other languages) word boundaries, include the ICU
|
||||
library: http://userguide.icu-project.org/boundaryanalysis
|
||||
|
||||
@@ -1277,12 +1396,6 @@ Syntax highlighting slow (hangs) in SASS file. (Niek Bosch, 2013 Aug 21)
|
||||
|
||||
Adding "~" to 'cdpath' doesn't work for completion? (Davido, 2013 Aug 19)
|
||||
|
||||
Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
|
||||
2015 Feb 6.
|
||||
|
||||
Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014 Dec 4.
|
||||
Is this a good solution?
|
||||
|
||||
Patch: Let rare word highlighting overrule good word highlighting.
|
||||
(Jakson A. Aquino, 2010 Jul 30, again 2011 Jul 2)
|
||||
|
||||
@@ -1300,8 +1413,6 @@ Remark from Roland Eggner: does it cause crashes? (2014 Dec 12)
|
||||
Updated patch by Roland Eggner, Dec 16
|
||||
Updated patch from Charles, 2016 Jul 2
|
||||
|
||||
Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
|
||||
|
||||
Patch for building a 32bit Vim with 64bit MingW compiler.
|
||||
(Michael Soyka, 2014 Oct 15)
|
||||
|
||||
@@ -1872,13 +1983,6 @@ Ruby: ":ruby print $buffer.number" returns zero.
|
||||
|
||||
setpos() does not restore cursor position after :normal. (Tyru, 2010 Aug 11)
|
||||
|
||||
7 The 'directory' option supports changing path separators to "%" to make
|
||||
file names unique, also support this for 'backupdir'. (Mikolaj Machowski)
|
||||
Patch by Christian Brabandt, 2010 Oct 21.
|
||||
Is this an update: related to: #179
|
||||
https://github.com/chrisbra/vim-mq-patches/blob/master/backupdir
|
||||
Fixed patch 2017 Jul 1.
|
||||
|
||||
With "tw=55 fo+=a" typing space before ) doesn't work well. (Scott Mcdermott,
|
||||
2010 Oct 24)
|
||||
|
||||
@@ -1974,9 +2078,6 @@ Patch to support :undo absolute jump to file save number. (Christian Brabandt,
|
||||
Patch to use 'foldnestmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
|
||||
Jan 7)
|
||||
|
||||
Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
|
||||
Only with "vim -u NONE".
|
||||
|
||||
Problem with editing file in binary mode. (Ingo Krabbe, 2009 Oct 8)
|
||||
|
||||
With 'wildmode' set to "longest:full,full" and pressing Tab once the first
|
||||
@@ -2184,16 +2285,11 @@ still delete them. Also convert all buffer file names?
|
||||
"gqip" in Insert mode has an off-by-one error, causing it to reflow text.
|
||||
(Raul Coronado, 2009 Nov 2)
|
||||
|
||||
Update src/testdir/main.aap.
|
||||
|
||||
Something wrong with session that has "cd" commands and "badd", in such a way
|
||||
that Vim doesn't find the edited file in the buffer list, causing the
|
||||
ATTENTION message? (Tony Mechelynck, 2008 Dec 1)
|
||||
Also: swap files are in ~/tmp/ One has relative file name ".mozilla/...".
|
||||
|
||||
Add v:motion_force. (Kana Natsuno, 2008 Dec 6)
|
||||
Maybe call it v:motiontype.
|
||||
|
||||
MS-Windows: editing the first, empty buffer, 'ffs' set to "unix,dos", ":enew"
|
||||
doesn't set 'ff' to "unix". (Ben Fritz, 2008 Dec 5) Reusing the old buffer
|
||||
probably causes this.
|
||||
@@ -2383,9 +2479,6 @@ Syntax highlighting wrong for transparent region. (Doug Kearns, 2007 Feb 26)
|
||||
Bug in using a transparent syntax region. (Hanlen in vim-dev maillist, 2007
|
||||
Jul 31)
|
||||
|
||||
C syntax: {} inside () causes following {} to be highlighted as error.
|
||||
(Michalis Giannakidis, 2006 Jun 1)
|
||||
|
||||
When 'diffopt' has "context:0" a single deleted line causes two folds to merge
|
||||
and mess up syncing. (Austin Jennings, 2008 Jan 31)
|
||||
|
||||
@@ -2848,8 +2941,6 @@ More patches:
|
||||
- Another patch for Javascript indenting. (Hari Kumar, 2010 Jul 11)
|
||||
Needs a few tests.
|
||||
- Add 'cscopeignorecase' option. (Liang Wenzhi, 2006 Sept 3)
|
||||
- Load intl.dll too, not only libintl.dll. (Mike Williams, 2006 May 9, docs
|
||||
patch May 10)
|
||||
- Extra argument to strtrans() to translate special keys to their name (Eric
|
||||
Arnold, 2006 May 22)
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
@@ -3452,8 +3543,6 @@ Macintosh:
|
||||
'magic' in history. (Margo)
|
||||
9 optwin.vim: Restoring a mapping for <Space> or <CR> is not correct for
|
||||
":noremap". Add "mapcmd({string}, {mode})? Use code from ":mkexrc".
|
||||
9 incsearch is incorrect for "/that/<Return>/this/;//" (last search pattern
|
||||
isn't updated).
|
||||
9 term_console is used before it is set (msdos, Amiga).
|
||||
9 Get out-of-memory for ":g/^/,$s//@/" on 1000 lines, this is not handled
|
||||
correctly. Get many error messages while redrawing the screen, which
|
||||
@@ -3675,6 +3764,7 @@ Most interesting new features to be added when all bugs have been fixed:
|
||||
Alternative: Make a function for Ex commands: cmd_edit().
|
||||
- Add COLUMN NUMBERS to ":" commands ":line1,line2[col1,col2]cmd". Block
|
||||
can be selected with CTRL-V. Allow '$' (end of line) for col2.
|
||||
(issue #3292)
|
||||
- ECLIPSE plugin. Problem is: the interface is very complicated. Need to
|
||||
implement part in Java and then connect to Vim. Some hints from Alexandru
|
||||
Roman, 2004 Dec 15. Should then also work with Oracle Jdeveloper, see JSR
|
||||
@@ -5229,16 +5319,22 @@ Mappings and Abbreviations:
|
||||
|
||||
|
||||
Incsearch:
|
||||
- Add a limit to the number of lines that are searched for 'incsearch'?
|
||||
- Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014
|
||||
Dec 4. Is this a good solution?
|
||||
- Temporarily open folds to show where the search ends up. Restore the
|
||||
folds when going to another line.
|
||||
Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
|
||||
- Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
|
||||
Only with "vim -u NONE".
|
||||
- When no match is found and the user types more, the screen is redrawn
|
||||
anyway. Could skip that. Esp. if the line wraps and the text is scrolled
|
||||
up every time.
|
||||
- Temporarily open folds to show where the search ends up. Restore the
|
||||
folds when going to another line.
|
||||
- When incsearch used and hitting return, no need to search again in many
|
||||
cases, saves a lot of time in big files. (Slootman wants to work on this?)
|
||||
When not using special characters, can continue search from the last match
|
||||
(or not at all, when there was no match). See oldmail/webb/in.872.
|
||||
9 incsearch is incorrect for "/that/<Return>/this/;//" (last search pattern
|
||||
isn't updated).
|
||||
|
||||
|
||||
Searching:
|
||||
@@ -5541,9 +5637,6 @@ Options:
|
||||
that marks if the option was set. Useful to keep the effect of setting
|
||||
'compatible' after ":syntax on" has been used.
|
||||
7 There is 'titleold', why is there no 'iconold'? (Chazelas)
|
||||
7 Make 'scrolloff' a global-local option, so that it can be different in the
|
||||
quickfix window, for example. (Gary Holloway)
|
||||
Also do 'sidescrolloff'.
|
||||
|
||||
|
||||
External commands:
|
||||
@@ -6152,5 +6245,5 @@ Far future and "big" extensions:
|
||||
are reflected in each Vim immediately. Could work with local files but
|
||||
also over the internet. See http://www.codingmonkeys.de/subethaedit/.
|
||||
|
||||
vim:tw=78:sw=4:sts=4:ts=8:ft=help:norl:
|
||||
vim:tw=78:sw=4:sts=4:ts=8:noet:ft=help:norl:
|
||||
vim: set fo+=n :
|
||||
|
||||
@@ -285,4 +285,4 @@ Address to send checks to:
|
||||
|
||||
This address is expected to be valid for a long time.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -403,4 +403,4 @@ if it is not what you want do 'u.'. This will remove the contents of the
|
||||
first put, and repeat the put command for the second register. Repeat the
|
||||
'u.' until you got what you want.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -189,4 +189,4 @@ donate part of the profit to help AIDS victims in Uganda. See |iccf|.
|
||||
|
||||
Next chapter: |usr_02.txt| The first steps in Vim
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -698,4 +698,4 @@ Summary: *help-summary* >
|
||||
|
||||
Next chapter: |usr_03.txt| Moving around
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -654,4 +654,4 @@ You will notice a few special marks. These include:
|
||||
|
||||
Next chapter: |usr_04.txt| Making small changes
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -511,4 +511,4 @@ else:
|
||||
|
||||
Next chapter: |usr_05.txt| Set your settings
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -664,4 +664,4 @@ This does mean there is less room to edit text, thus it's a compromise.
|
||||
|
||||
Next chapter: |usr_06.txt| Using syntax highlighting
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -277,4 +277,4 @@ others look at the colored text.
|
||||
|
||||
Next chapter: |usr_07.txt| Editing more than one file
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -476,4 +476,4 @@ This protects you from accidentally overwriting another file.
|
||||
|
||||
Next chapter: |usr_08.txt| Splitting windows
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -598,4 +598,4 @@ For more information about tab pages see |tab-page|.
|
||||
|
||||
Next chapter: |usr_09.txt| Using the GUI
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -287,4 +287,4 @@ You can tune the way Select mode works with the 'selectmode' option.
|
||||
|
||||
Next chapter: |usr_10.txt| Making big changes
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -821,4 +821,4 @@ has written. To tell Vim to redraw the screen: >
|
||||
|
||||
Next chapter: |usr_11.txt| Recovering from a crash
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -284,6 +284,7 @@ If you really don't want to see this message, you can add the 'A' flag to the
|
||||
'shortmess' option. But it's very unusual that you need this.
|
||||
|
||||
For remarks about encryption and the swap file, see |:recover-crypt|.
|
||||
For programatic access to the swap file, see |swapinfo()|.
|
||||
|
||||
==============================================================================
|
||||
*11.4* Further reading
|
||||
@@ -304,4 +305,4 @@ For remarks about encryption and the swap file, see |:recover-crypt|.
|
||||
|
||||
Next chapter: |usr_12.txt| Clever tricks
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -355,4 +355,4 @@ matches and where they are.
|
||||
|
||||
Next chapter: |usr_20.txt| Typing command-line commands quickly
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -381,4 +381,4 @@ there can be only one.
|
||||
|
||||
Next chapter: |usr_21.txt| Go away and come back
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -496,4 +496,4 @@ For more details see |modeline|.
|
||||
|
||||
Next chapter: |usr_22.txt| Finding the file to edit
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -397,4 +397,4 @@ can't be editing nothing!
|
||||
|
||||
Next chapter: |usr_23.txt| Editing other files
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
+12
-10
@@ -208,15 +208,17 @@ encryption key, just like the "-x" argument did: >
|
||||
|
||||
LIMITS ON ENCRYPTION
|
||||
|
||||
The encryption algorithm used by Vim is weak. It is good enough to keep out
|
||||
the casual prowler, but not good enough to keep out a cryptology expert with
|
||||
lots of time on his hands. Also you should be aware that the swap file is not
|
||||
encrypted; so while you are editing, people with superuser privileges can read
|
||||
the unencrypted text from this file.
|
||||
One way to avoid letting people read your swap file is to avoid using one.
|
||||
If the -n argument is supplied on the command line, no swap file is used
|
||||
(instead, Vim puts everything in memory). For example, to edit the encrypted
|
||||
file "file.txt" without a swap file use the following command: >
|
||||
The encryption algorithm used by Vim is not very strong. It is good enough to
|
||||
keep out the casual prowler, but not good enough to keep out a cryptology
|
||||
expert with lots of time on his hands. The text in the swap file and the undo
|
||||
file is also encrypted. 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, since Vim keeps all the text in
|
||||
memory only. The undo file can be disabled with the only disadvantage that
|
||||
you can't undo after unloading the buffer.
|
||||
To avoid using a swap file, supply the -n argument on the command line.
|
||||
For example, to edit the encrypted file "file.txt" without a swap file use the
|
||||
following command: >
|
||||
|
||||
vim -x -n file.txt
|
||||
|
||||
@@ -340,4 +342,4 @@ decompression. You might need to install the programs first.
|
||||
|
||||
Next chapter: |usr_24.txt| Inserting quickly
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -603,4 +603,4 @@ This deletes up to the third word into register g.
|
||||
|
||||
Next chapter: |usr_25.txt| Editing formatted text
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -579,4 +579,4 @@ The "gR" command uses Virtual Replace mode. This preserves the layout:
|
||||
|
||||
Next chapter: |usr_26.txt| Repeating
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -218,4 +218,4 @@ start all over, use the "-W" argument. It overwrites any existing file.
|
||||
|
||||
Next chapter: |usr_27.txt| Search commands and patterns
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -560,4 +560,4 @@ and "\w" for "[0-9A-Za-z_]".
|
||||
|
||||
Next chapter: |usr_28.txt| Folding
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -423,4 +423,4 @@ the defined folds. Then you can delete or add folds manually.
|
||||
|
||||
Next chapter: |usr_29.txt| Moving through programs
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -608,4 +608,4 @@ for the identifier. Example (cursor on "idx"):
|
||||
|
||||
Next chapter: |usr_30.txt| Editing programs
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -640,4 +640,4 @@ For more details see |format-comments|.
|
||||
|
||||
Next chapter: |usr_31.txt| Exploiting the GUI
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -269,4 +269,4 @@ another font size, for example.
|
||||
|
||||
Next chapter: |usr_32.txt| The undo tree
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -177,4 +177,4 @@ use the |undotree()| function. To see what it returns: >
|
||||
|
||||
Next chapter: |usr_40.txt| Make new commands
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -654,4 +654,4 @@ To set it back to the normal behavior, make 'eventignore' empty: >
|
||||
|
||||
Next chapter: |usr_41.txt| Write a Vim script
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
+30
-4
@@ -612,6 +612,7 @@ String manipulation: *string-functions*
|
||||
repeat() repeat a string multiple times
|
||||
eval() evaluate a string expression
|
||||
execute() execute an Ex command and get the output
|
||||
trim() trim characters from a string
|
||||
|
||||
List manipulation: *list-functions*
|
||||
get() get an item without error for wrong index
|
||||
@@ -799,6 +800,9 @@ Buffers, windows and the argument list:
|
||||
bufwinnr() get the window number of a specific buffer
|
||||
winbufnr() get the buffer number of a specific window
|
||||
getbufline() get a list of lines from the specified buffer
|
||||
setbufline() replace a line in the specified buffer
|
||||
appendbufline() append a list of lines in the specified buffer
|
||||
deletebufline() delete lines from a specified buffer
|
||||
win_findbuf() find windows containing a buffer
|
||||
win_getid() get window ID of a window
|
||||
win_gotoid() go to window with ID
|
||||
@@ -809,6 +813,8 @@ Buffers, windows and the argument list:
|
||||
getwininfo() get a list with window information
|
||||
getchangelist() get a list of change list entries
|
||||
getjumplist() get a list of jump list entries
|
||||
swapinfo() information about a swap file
|
||||
swapname() get the swap file path of a buffer
|
||||
|
||||
Command line: *command-line-functions*
|
||||
getcmdline() get the current command line
|
||||
@@ -906,6 +912,7 @@ Window size and position: *window-size-functions*
|
||||
winheight() get height of a specific window
|
||||
winwidth() get width of a specific window
|
||||
win_screenpos() get screen position of a window
|
||||
winlayout() get layout of windows in a tab page
|
||||
winrestcmd() return command to restore window sizes
|
||||
winsaveview() get view of current window
|
||||
winrestview() restore saved view of current window
|
||||
@@ -918,6 +925,7 @@ Mappings: *mapping-functions*
|
||||
|
||||
Testing: *test-functions*
|
||||
assert_equal() assert that two expressions values are equal
|
||||
assert_equalfile() assert that two file contents are equal
|
||||
assert_notequal() assert that two expressions values are not equal
|
||||
assert_inrange() assert that an expression is inside a range
|
||||
assert_match() assert that a pattern matches the value
|
||||
@@ -940,6 +948,9 @@ Testing: *test-functions*
|
||||
test_null_partial() return a null Partial function
|
||||
test_null_string() return a null String
|
||||
test_settime() set the time Vim uses internally
|
||||
test_feedinput() add key sequence to input buffer
|
||||
test_option_not_set() reset flag indicating option was set
|
||||
test_scrollbar() simulate scrollbar movement in the GUI
|
||||
|
||||
Inter-process communication: *channel-functions*
|
||||
ch_canread() check if there is something to read
|
||||
@@ -990,6 +1001,12 @@ Terminal window: *terminal-functions*
|
||||
term_gettty() get the tty name of a terminal
|
||||
term_setansicolors() set 16 ANSI colors, used for GUI
|
||||
term_getansicolors() get 16 ANSI colors, used for GUI
|
||||
term_dumpdiff() display difference between two screen dumps
|
||||
term_dumpload() load a terminal screen dump in a window
|
||||
term_dumpwrite() dump contents of a terminal screen to a file
|
||||
term_setkill() set signal to stop job in a terminal
|
||||
term_setrestore() set command to restore a terminal
|
||||
term_setsize() set the size of a terminal
|
||||
|
||||
Timers: *timer-functions*
|
||||
timer_start() create a timer
|
||||
@@ -998,6 +1015,17 @@ Timers: *timer-functions*
|
||||
timer_stopall() stop all timers
|
||||
timer_info() get information about timers
|
||||
|
||||
Tags: *tag-functions*
|
||||
taglist() get list of matching tags
|
||||
tagfiles() get a list of tags files
|
||||
gettagstack() get the tag stack of a window
|
||||
settagstack() modify the tag stack of a window
|
||||
|
||||
Prompt Buffer: *promptbuffer-functions*
|
||||
prompt_setcallback() set prompt callback for a buffer
|
||||
prompt_setinterrupt() set interrupt callback for a buffer
|
||||
prompt_setprompt() set the prompt text for a buffer
|
||||
|
||||
Various: *various-functions*
|
||||
mode() get current editing mode
|
||||
visualmode() last visual mode used
|
||||
@@ -1025,15 +1053,13 @@ Various: *various-functions*
|
||||
|
||||
wordcount() get byte/word/char count of buffer
|
||||
|
||||
taglist() get list of matching tags
|
||||
tagfiles() get a list of tags files
|
||||
|
||||
luaeval() evaluate Lua expression
|
||||
mzeval() evaluate |MzScheme| expression
|
||||
perleval() evaluate Perl expression (|+perl|)
|
||||
py3eval() evaluate Python expression (|+python3|)
|
||||
pyeval() evaluate Python expression (|+python|)
|
||||
pyxeval() evaluate |python_x| expression
|
||||
debugbreak() interrupt a program being debugged
|
||||
|
||||
==============================================================================
|
||||
*41.7* Defining a function
|
||||
@@ -2592,4 +2618,4 @@ It's good if you add a line to allow automatic updating. See |glvs-plugins|.
|
||||
|
||||
Next chapter: |usr_42.txt| Add new menus
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -150,7 +150,8 @@ like the variations on the ":map" command:
|
||||
:menu! Insert and Command-line mode
|
||||
:imenu Insert mode
|
||||
:cmenu Command-line mode
|
||||
:amenu All modes
|
||||
:tlmenu Terminal mode
|
||||
:amenu All modes (except for Terminal mode)
|
||||
|
||||
To avoid that the commands of a menu item are being mapped, use the command
|
||||
":noremenu", ":nnoremenu", ":anoremenu", etc.
|
||||
@@ -362,4 +363,4 @@ is...
|
||||
|
||||
Next chapter: |usr_43.txt| Using filetypes
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -176,4 +176,4 @@ and sources a script or executes a function to check the contents of the file.
|
||||
|
||||
Next chapter: |usr_44.txt| Your own syntax highlighted
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -716,4 +716,4 @@ up scrolling backwards and CTRL-L.
|
||||
|
||||
Next chapter: |usr_45.txt| Select your language
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -416,4 +416,4 @@ Don't type the spaces. See |i_CTRL-V_digit| for the details.
|
||||
|
||||
Next chapter: |usr_90.txt| Installing Vim
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -495,4 +495,4 @@ files that you created. You might want to keep that.
|
||||
|
||||
Table of contents: |usr_toc.txt|
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -352,4 +352,4 @@ Before you can use Vim.
|
||||
|
||||
==============================================================================
|
||||
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
|
||||
Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
+12
-1
@@ -568,7 +568,18 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
The pattern is matched against the relevant part of
|
||||
the output, not necessarily the whole line. Only some
|
||||
commands support filtering, try it out to check if it
|
||||
works.
|
||||
works. Some of the commands that support filtering:
|
||||
|:#| - filter whole line
|
||||
|:command| - filter by command name
|
||||
|:files| - filter by file name
|
||||
|:highlight| - filter by highlight group
|
||||
|:jumps| - filter by file name
|
||||
|:let| - filter by variable name
|
||||
|:list| - filter whole line
|
||||
|:llist| - filter by file name or module name
|
||||
|:oldfiles| - filter by file name
|
||||
|:clist| - filter by file name or module name
|
||||
|:set| - filter by variable name
|
||||
|
||||
Only normal messages are filtered, error messages are
|
||||
not.
|
||||
|
||||
@@ -352,4 +352,4 @@ this and accidentally hit CTRL-B, it is very difficult to find out how to undo
|
||||
it. Since hardly anybody uses this feature, it is disabled by default. If
|
||||
you want to use it, define RIGHTLEFT in feature.h before compiling. |'revins'|
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -7810,4 +7810,4 @@ Solution: Allocate the buffer for the shell command.
|
||||
Files: src/ex_docmd.c
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -14527,4 +14527,4 @@ Solution: Don't advance the cursor to include a line break when it's already
|
||||
Files: src/search.c
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -18311,4 +18311,4 @@ Files: src/os_win32.c
|
||||
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -25792,4 +25792,4 @@ Solution: Move the todo items to the help file.
|
||||
Files: src/terminal.c
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1021,4 +1021,4 @@ These are remarks about running the POSIX test suite:
|
||||
- ex test 534 fails because .exrc isn't read in silent mode.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -538,4 +538,4 @@ g CTRL-H Start Select mode, blockwise. This is like CTRL-V,
|
||||
but starts Select mode instead of Visual mode.
|
||||
Mnemonic: "get Highlighted".
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
+10
-4
@@ -81,6 +81,10 @@ will not change within a Vim session. The |win_getid()| and |win_id2tabwin()|
|
||||
functions can be used to convert between the window/tab number and the
|
||||
identifier. There is also the window number, which may change whenever
|
||||
windows are opened or closed, see |winnr()|.
|
||||
The window number is only valid in one specific tab. The window ID is valid
|
||||
across tabs. For most functions that take a window ID or a window number, the
|
||||
window number only applies to the current tab, while the window ID can refer
|
||||
to a window in any tab.
|
||||
|
||||
Each buffer has a unique number and the number will not change within a Vim
|
||||
session. The |bufnr()| and |bufname()| functions can be used to convert
|
||||
@@ -218,9 +222,11 @@ CTRL-W CTRL_N *CTRL-W_CTRL-N*
|
||||
|:find|. Doesn't split if {file} is not found.
|
||||
|
||||
CTRL-W CTRL-^ *CTRL-W_CTRL-^* *CTRL-W_^*
|
||||
CTRL-W ^ Does ":split #", split window in two and edit alternate file.
|
||||
When a count is given, it becomes ":split #N", split window
|
||||
and edit buffer N.
|
||||
CTRL-W ^ Split the current window in two and edit the alternate file.
|
||||
When a count N is given, split the current window and edit
|
||||
buffer N. Similar to ":sp #" and ":sp #N", but it allows the
|
||||
other buffer to be unnamed. This command matches the behavior
|
||||
of |CTRL-^|, except that it splits a window first.
|
||||
|
||||
*CTRL-W_:*
|
||||
CTRL-W : Does the same as typing |:| - enter a command line. Useful in a
|
||||
@@ -1311,4 +1317,4 @@ unlisted The buffer is not in the buffer list. It is not used for
|
||||
:setlocal nobuflisted
|
||||
<
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -95,4 +95,4 @@ the directory /usr/local/xpm and untar the file there you can use the
|
||||
uncommented lines in the Makefile without changing them. If you use another
|
||||
xpm directory you will need to change the XPM_DIR in src/Makefile.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -258,7 +258,7 @@ ligne.
|
||||
.br
|
||||
0000030: 2e5c 220a 2e5c 2220 3231 7374 .\"..\" 21st
|
||||
.br
|
||||
000003c: 204d 6179 2031 3939 360a 2e5c May 1996..\
|
||||
000003c: 204d 6179 2031 3939 360a 2e5c May 1996..\\
|
||||
.br
|
||||
0000048: 2220 4d61 6e20 7061 6765 2061 " Man page a
|
||||
.br
|
||||
|
||||
@@ -258,7 +258,7 @@ ligne.
|
||||
.br
|
||||
0000030: 2e5c 220a 2e5c 2220 3231 7374 .\"..\" 21st
|
||||
.br
|
||||
000003c: 204d 6179 2031 3939 360a 2e5c May 1996..\
|
||||
000003c: 204d 6179 2031 3939 360a 2e5c May 1996..\\
|
||||
.br
|
||||
0000048: 2220 4d61 6e20 7061 6765 2061 " Man page a
|
||||
.br
|
||||
|
||||
@@ -257,15 +257,15 @@ Stampa i primi 120 byte della pagina di manuale vim.1 a 12 byte per linea.
|
||||
.br
|
||||
0000018: 224d 616e 7561 6c20 7061 6765 "Manual page
|
||||
.br
|
||||
0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\
|
||||
0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\\
|
||||
.br
|
||||
0000030: 220a 2e5c 2220 3231 7374 204d "..\" 21st M
|
||||
0000030: 220a 2e5c 2220 3231 7374 204d "..\\" 21st M
|
||||
.br
|
||||
000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\"
|
||||
000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\\"
|
||||
.br
|
||||
0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut
|
||||
.br
|
||||
0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\"
|
||||
0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\\"
|
||||
.br
|
||||
0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent
|
||||
.br
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user