mirror of
https://github.com/zoriya/vim.git
synced 2025-12-24 16:15:21 +00:00
Compare commits
347 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b15cf44c1d | ||
|
|
52797bae17 | ||
|
|
0e6adf8a29 | ||
|
|
6df0f2759d | ||
|
|
6ecf58b0d7 | ||
|
|
2d877599ee | ||
|
|
19569ca6d8 | ||
|
|
8ee6028de3 | ||
|
|
427f065a88 | ||
|
|
c479ce032f | ||
|
|
f87dac04c3 | ||
|
|
1821d1498c | ||
|
|
ce7eada12e | ||
|
|
cfabad9bcf | ||
|
|
a5d78d1f11 | ||
|
|
57bc2333b1 | ||
|
|
7c0fb80030 | ||
|
|
b334137acf | ||
|
|
7509ad8b0f | ||
|
|
919c12c19a | ||
|
|
f8a79fc346 | ||
|
|
c2958585f6 | ||
|
|
8176be1598 | ||
|
|
6206877c51 | ||
|
|
829c8e87e2 | ||
|
|
0407d27034 | ||
|
|
3194e5bf87 | ||
|
|
6840a0ffe8 | ||
|
|
80d60910ff | ||
|
|
3b309f11db | ||
|
|
1e78deb077 | ||
|
|
851f86b951 | ||
|
|
739f13a55b | ||
|
|
33b968dc60 | ||
|
|
ef082e12df | ||
|
|
04ef1fb13d | ||
|
|
d2439e0443 | ||
|
|
3bb79dc191 | ||
|
|
fa9a8e0fd1 | ||
|
|
6ae8fae869 | ||
|
|
6e371ecb27 | ||
|
|
9a4ec5a626 | ||
|
|
4e30b5c3bc | ||
|
|
4f16e9de98 | ||
|
|
48c0196378 | ||
|
|
7b1463bca3 | ||
|
|
2ef9156b42 | ||
|
|
052ff291d7 | ||
|
|
a416861c64 | ||
|
|
29f3a45915 | ||
|
|
205f29c3e9 | ||
|
|
9537e37b11 | ||
|
|
1daedc8381 | ||
|
|
f8e9eb8e17 | ||
|
|
9fffef9f35 | ||
|
|
b711814cb6 | ||
|
|
8a7374f8c4 | ||
|
|
ff39a650b2 | ||
|
|
dd297bc11d | ||
|
|
dee78e1ce8 | ||
|
|
4c8c634365 | ||
|
|
95b2dd0c00 | ||
|
|
e8a92b6166 | ||
|
|
c4ec338fb8 | ||
|
|
dcb53be441 | ||
|
|
d0fb907253 | ||
|
|
e50507126f | ||
|
|
56150da687 | ||
|
|
a48d4e44a2 | ||
|
|
48873aebc0 | ||
|
|
78a61068cf | ||
|
|
2172bff364 | ||
|
|
f7f7aaf8aa | ||
|
|
4dc24eb5ad | ||
|
|
92c33eb273 | ||
|
|
ecabb51107 | ||
|
|
3e55a973b5 | ||
|
|
2336c376d5 | ||
|
|
8603be338a | ||
|
|
6409553b6e | ||
|
|
40bcec1bac | ||
|
|
4700398e38 | ||
|
|
12f3c1b77f | ||
|
|
e5710a02cb | ||
|
|
0bac5fc5e1 | ||
|
|
c7d5fc8622 | ||
|
|
f661cee847 | ||
|
|
f645ee47c8 | ||
|
|
5e18ccc60b | ||
|
|
f589fd3e10 | ||
|
|
e031fe90cf | ||
|
|
c7269f8627 | ||
|
|
dea4a61637 | ||
|
|
23bdef2571 | ||
|
|
8dea145e39 | ||
|
|
853a7692d1 | ||
|
|
7645da568c | ||
|
|
01a4dcbcee | ||
|
|
b579f6ebbf | ||
|
|
cd2f8f0e00 | ||
|
|
15a24f0898 | ||
|
|
800b01b0c8 | ||
|
|
6f42cb6e51 | ||
|
|
04b7b4bf7f | ||
|
|
c14b57c079 | ||
|
|
c903695be5 | ||
|
|
8658c759f0 | ||
|
|
021ef351c2 | ||
|
|
acdc911e4e | ||
|
|
5e86964bf4 | ||
|
|
9ac38129b6 | ||
|
|
69c76171f1 | ||
|
|
f8bc0ce267 | ||
|
|
3569c0de67 | ||
|
|
db9ff9ab5d | ||
|
|
e4eed8c6db | ||
|
|
f0e496a85a | ||
|
|
7e5503c17a | ||
|
|
0b226f60be | ||
|
|
05e59e3a9f | ||
|
|
56a8ffdb6e | ||
|
|
3d2e031d4f | ||
|
|
fad2742d53 | ||
|
|
69535d8a0a | ||
|
|
90770b746e | ||
|
|
42eba04522 | ||
|
|
eba3b7f664 | ||
|
|
ab36e6ae7b | ||
|
|
53ba95e4f0 | ||
|
|
98cb90ef86 | ||
|
|
c750d91a07 | ||
|
|
6b839ac775 | ||
|
|
651fca85c7 | ||
|
|
0c359af5c0 | ||
|
|
0b74d00693 | ||
|
|
7f2c341664 | ||
|
|
5c1ec439f0 | ||
|
|
af377e34b0 | ||
|
|
293eb9ba46 | ||
|
|
38453528c3 | ||
|
|
f566666e88 | ||
|
|
06bffe836c | ||
|
|
3ccb579516 | ||
|
|
2e0f3ecb70 | ||
|
|
59f4f9505a | ||
|
|
3d14c0f2b9 | ||
|
|
c07f11e42f | ||
|
|
e9b0b40b79 | ||
|
|
279d733dfb | ||
|
|
6304be625c | ||
|
|
7824fc80f6 | ||
|
|
bfc5786a61 | ||
|
|
d1d8a595bd | ||
|
|
7329cfab36 | ||
|
|
85be8563fe | ||
|
|
4d07253a48 | ||
|
|
309ce25189 | ||
|
|
ba8c92687d | ||
|
|
96e7a5928e | ||
|
|
0bd8d05638 | ||
|
|
71b36206be | ||
|
|
34c20ff85b | ||
|
|
8af87bd6b1 | ||
|
|
bd228fd097 | ||
|
|
bb277fd89f | ||
|
|
510d8e6056 | ||
|
|
7da341560e | ||
|
|
19916a8c89 | ||
|
|
e413ea04b7 | ||
|
|
1f2453fec6 | ||
|
|
cf1e0239ce | ||
|
|
8bc07e800c | ||
|
|
9b0e82f35e | ||
|
|
03725c5795 | ||
|
|
48608b4a4b | ||
|
|
112bed0cbe | ||
|
|
65259b5c6a | ||
|
|
cc9d725bbb | ||
|
|
ee93e327ba | ||
|
|
b771b6b5fe | ||
|
|
e021662f39 | ||
|
|
04b568b38f | ||
|
|
3b3755fe19 | ||
|
|
7a53f29c03 | ||
|
|
4671e88d7d | ||
|
|
ce59b9f292 | ||
|
|
c449271f4e | ||
|
|
7d5b8becc3 | ||
|
|
2228cd72cf | ||
|
|
a3f83feb63 | ||
|
|
73448a27a8 | ||
|
|
581f41adb3 | ||
|
|
88a4205f1c | ||
|
|
eea32afdb8 | ||
|
|
7f0c4b418e | ||
|
|
4785fe02bb | ||
|
|
923dce2b07 | ||
|
|
2c23670300 | ||
|
|
3c19b50500 | ||
|
|
d604d78e7b | ||
|
|
a755fdbe80 | ||
|
|
9cd9385db7 | ||
|
|
c8a9fe541d | ||
|
|
d85fccdfed | ||
|
|
a119812437 | ||
|
|
87fd0924e2 | ||
|
|
cdf5fdb294 | ||
|
|
b8e642f7ac | ||
|
|
2de9b7c7c8 | ||
|
|
3ad695328f | ||
|
|
8b8d829faf | ||
|
|
64be6aa3a5 | ||
|
|
1d69ef410a | ||
|
|
b3a29558ee | ||
|
|
777175b0df | ||
|
|
851c7a699a | ||
|
|
0526815c15 | ||
|
|
3cad470385 | ||
|
|
818ff25cd1 | ||
|
|
6555500bcf | ||
|
|
e015d99abb | ||
|
|
64066b9acd | ||
|
|
615ddd5342 | ||
|
|
a062006b9d | ||
|
|
3075a45592 | ||
|
|
125ffd21f9 | ||
|
|
9459b8d461 | ||
|
|
d3682c5f28 | ||
|
|
519cc559b0 | ||
|
|
728104da6c | ||
|
|
2a16dc6613 | ||
|
|
c143fa0778 | ||
|
|
b1b163efd7 | ||
|
|
1be7e21583 | ||
|
|
fa53722367 | ||
|
|
314b773abb | ||
|
|
782b4bbc16 | ||
|
|
0818ab82e7 | ||
|
|
36968af155 | ||
|
|
733b124a90 | ||
|
|
0d5a12ea04 | ||
|
|
786e05beb5 | ||
|
|
7f13b24ab6 | ||
|
|
6a950a6007 | ||
|
|
23beefed73 | ||
|
|
a0fca17251 | ||
|
|
5300be620c | ||
|
|
606efc7df4 | ||
|
|
0a15c7676b | ||
|
|
326e7da609 | ||
|
|
8813739673 | ||
|
|
58ef8a31d7 | ||
|
|
0c71114aed | ||
|
|
113cb513f7 | ||
|
|
15d9890eee | ||
|
|
0b5b06cb47 | ||
|
|
aaec1d4fb1 | ||
|
|
4b2c804767 | ||
|
|
b32aa8a6a1 | ||
|
|
d1a8d658e1 | ||
|
|
0f0044125c | ||
|
|
a63780b977 | ||
|
|
e551ccfb93 | ||
|
|
8a1962d135 | ||
|
|
69b3072d98 | ||
|
|
7a33ebfc5b | ||
|
|
e2f66064d1 | ||
|
|
ec6e63079d | ||
|
|
fd916d654d | ||
|
|
8753c1dd2c | ||
|
|
9cd063e319 | ||
|
|
44db603f69 | ||
|
|
2446ec9b56 | ||
|
|
777e7c21b7 | ||
|
|
2a52196b78 | ||
|
|
e30d10253f | ||
|
|
3c5904d2a5 | ||
|
|
844fb64a60 | ||
|
|
ee56f3f119 | ||
|
|
079ba76ae7 | ||
|
|
06ca48a40f | ||
|
|
5fe07d2e08 | ||
|
|
841c225b9e | ||
|
|
25def2c8b8 | ||
|
|
a2ffb43520 | ||
|
|
5a5c111e79 | ||
|
|
47810464aa | ||
|
|
94e7d345c1 | ||
|
|
ae38a9db77 | ||
|
|
b811de5d49 | ||
|
|
d68a004485 | ||
|
|
1d30fde3c9 | ||
|
|
09f7723d5a | ||
|
|
94358a1e6e | ||
|
|
051a40c8d9 | ||
|
|
8b0e62c93b | ||
|
|
c5935a859e | ||
|
|
731fba1081 | ||
|
|
f47ebf1e1a | ||
|
|
604e207e27 | ||
|
|
d43d8e28db | ||
|
|
75c30e96cf | ||
|
|
ad6b90c33c | ||
|
|
9b0b844d25 | ||
|
|
944eeb44fb | ||
|
|
375c35a63f | ||
|
|
e08aee60ab | ||
|
|
39c47c3104 | ||
|
|
21c1a0c2f1 | ||
|
|
34a364877f | ||
|
|
f4d8b76d30 | ||
|
|
9d4b8caf9e | ||
|
|
40bd5a1540 | ||
|
|
d4c4bfa007 | ||
|
|
4eeedc09fe | ||
|
|
c89c91cafd | ||
|
|
93ff6720fe | ||
|
|
abdcfd1c83 | ||
|
|
160e994d76 | ||
|
|
2286304cdb | ||
|
|
28b6a3bef6 | ||
|
|
f08b0eb869 | ||
|
|
db3b44640d | ||
|
|
7b5f45be21 | ||
|
|
def69dffb3 | ||
|
|
eaa006dae3 | ||
|
|
a2cff1dbc9 | ||
|
|
accf4ed352 | ||
|
|
a06758dd38 | ||
|
|
0a7984af56 | ||
|
|
340dd0fbe4 | ||
|
|
051a8a375f | ||
|
|
75aa92a162 | ||
|
|
c0abac67d7 | ||
|
|
3be69bf539 | ||
|
|
7f32092b91 | ||
|
|
7b82926892 | ||
|
|
fff10d9a76 | ||
|
|
e519eb41c1 | ||
|
|
3a724290c5 | ||
|
|
3d031a0ae7 | ||
|
|
37f341d723 | ||
|
|
a9173d06f7 | ||
|
|
a5d4f3b09d | ||
|
|
b376aa2da4 | ||
|
|
b07626d4af | ||
|
|
cddd5ac911 |
18
.github/CODEOWNERS
vendored
18
.github/CODEOWNERS
vendored
@@ -73,6 +73,8 @@ runtime/ftplugin/awk.vim @dkearns
|
||||
runtime/ftplugin/basic.vim @dkearns
|
||||
runtime/ftplugin/bst.vim @tpope
|
||||
runtime/ftplugin/cfg.vim @chrisbra
|
||||
runtime/ftplugin/clojure.vim @axvr
|
||||
runtime/ftplugin/csh.vim @dkearns
|
||||
runtime/ftplugin/css.vim @dkearns
|
||||
runtime/ftplugin/cucumber.vim @tpope
|
||||
runtime/ftplugin/eiffel.vim @dkearns
|
||||
@@ -87,10 +89,13 @@ runtime/ftplugin/gitsendemail.vim @tpope
|
||||
runtime/ftplugin/gprof.vim @dpelle
|
||||
runtime/ftplugin/haml.vim @tpope
|
||||
runtime/ftplugin/hgcommit.vim @k-takata
|
||||
runtime/ftplugin/i3config.vim @hiqua
|
||||
runtime/ftplugin/indent.vim @dkearns
|
||||
runtime/ftplugin/javascript.vim @dkearns
|
||||
runtime/ftplugin/javascriptreact.vim @dkearns
|
||||
runtime/ftplugin/kconfig.vim @chrisbra
|
||||
runtime/ftplugin/liquid.vim @tpope
|
||||
runtime/ftplugin/lua.vim @dkearns
|
||||
runtime/ftplugin/m3build.vim @dkearns
|
||||
runtime/ftplugin/m3quake.vim @dkearns
|
||||
runtime/ftplugin/markdown.vim @tpope
|
||||
@@ -106,19 +111,24 @@ runtime/ftplugin/pbtxt.vim @lakshayg
|
||||
runtime/ftplugin/pdf.vim @tpope
|
||||
runtime/ftplugin/ps1.vim @heaths
|
||||
runtime/ftplugin/ps1xml.vim @heaths
|
||||
runtime/ftplugin/routeros.vim @zainin
|
||||
runtime/ftplugin/ruby.vim @tpope @dkearns
|
||||
runtime/ftplugin/sass.vim @tpope
|
||||
runtime/ftplugin/scss.vim @tpope
|
||||
runtime/ftplugin/solution.vim @dkearns
|
||||
runtime/ftplugin/spec.vim @ignatenkobrain
|
||||
runtime/ftplugin/systemverilog.vim @Kocha
|
||||
runtime/ftplugin/tcsh.vim @dkearns
|
||||
runtime/ftplugin/tidy.vim @dkearns
|
||||
runtime/ftplugin/tmux.vim @ericpruitt
|
||||
runtime/ftplugin/toml.vim @averms
|
||||
runtime/ftplugin/typescript.vim @dkearns
|
||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||
runtime/ftplugin/xml.vim @chrisbra
|
||||
runtime/ftplugin/zsh.vim @chrisbra
|
||||
runtime/indent/bst.vim @tpope
|
||||
runtime/indent/cdl.vim @dkearns
|
||||
runtime/indent/clojure.vim @axvr
|
||||
runtime/indent/config.vim @dkearns
|
||||
runtime/indent/css.vim @dkearns
|
||||
runtime/indent/cucumber.vim @tpope
|
||||
@@ -151,6 +161,7 @@ runtime/indent/scss.vim @tpope
|
||||
runtime/indent/sh.vim @chrisbra
|
||||
runtime/indent/systemverilog.vim @Kocha
|
||||
runtime/indent/tcl.vim @dkearns
|
||||
runtime/indent/tcsh.vim @dkearns
|
||||
runtime/indent/teraterm.vim @k-takata
|
||||
runtime/indent/xml.vim @chrisbra
|
||||
runtime/indent/zsh.vim @chrisbra
|
||||
@@ -165,6 +176,7 @@ runtime/plugin/vimballPlugin.vim @cecamp
|
||||
runtime/plugin/zipPlugin.vim @cecamp
|
||||
runtime/syntax/aidl.vim @dpelle
|
||||
runtime/syntax/amiga.vim @cecamp
|
||||
runtime/syntax/arduino.vim @johshoff
|
||||
runtime/syntax/asm.vim @dkearns
|
||||
runtime/syntax/asmh8300.vim @dkearns
|
||||
runtime/syntax/asterisk.vim @jaunis
|
||||
@@ -174,6 +186,7 @@ runtime/syntax/bst.vim @tpope
|
||||
runtime/syntax/cabal.vim @coot
|
||||
runtime/syntax/cabalconfig.vim @coot
|
||||
runtime/syntax/cabalproject.vim @coot
|
||||
runtime/syntax/clojure.vim @axvr
|
||||
runtime/syntax/cs.vim @nickspoons
|
||||
runtime/syntax/csh.vim @cecamp
|
||||
runtime/syntax/cucumber.vim @tpope
|
||||
@@ -197,6 +210,8 @@ runtime/syntax/groff.vim @jmarshall
|
||||
runtime/syntax/haml.vim @tpope
|
||||
runtime/syntax/haskell.vim @coot
|
||||
runtime/syntax/hgcommit.vim @k-takata
|
||||
runtime/syntax/i3config.vim @hiqua
|
||||
runtime/syntax/indent.vim @dkearns
|
||||
runtime/syntax/kconfig.vim @chrisbra
|
||||
runtime/syntax/less.vim @genoma
|
||||
runtime/syntax/lex.vim @cecamp
|
||||
@@ -225,6 +240,7 @@ runtime/syntax/ps1.vim @heaths
|
||||
runtime/syntax/ps1xml.vim @heaths
|
||||
runtime/syntax/psl.vim @danielkho
|
||||
runtime/syntax/rc.vim @chrisbra
|
||||
runtime/syntax/routeros.vim @zainin
|
||||
runtime/syntax/rpcgen.vim @cecamp
|
||||
runtime/syntax/ruby.vim @dkearns
|
||||
runtime/syntax/sass.vim @tpope
|
||||
@@ -238,10 +254,12 @@ runtime/syntax/sshdconfig.vim @Jakuje
|
||||
runtime/syntax/sudoers.vim @e-kwsm
|
||||
runtime/syntax/systemverilog.vim @Kocha
|
||||
runtime/syntax/tags.vim @cecamp
|
||||
runtime/syntax/tcsh.vim @dkearns
|
||||
runtime/syntax/teraterm.vim @k-takata
|
||||
runtime/syntax/tex.vim @cecamp
|
||||
runtime/syntax/tidy.vim @dkearns
|
||||
runtime/syntax/tmux.vim @ericpruitt
|
||||
runtime/syntax/toml.vim @averms
|
||||
runtime/syntax/vim.vim @cecamp
|
||||
runtime/syntax/wget.vim @dkearns
|
||||
runtime/syntax/xbl.vim @dkearns
|
||||
|
||||
21
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
21
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@@ -26,18 +26,23 @@ body:
|
||||
placeholder: A clear and concise description of what you expected to happen.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Operating system
|
||||
description: >
|
||||
Your operating system name, version and desktop environment.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Version of Vim
|
||||
description: >
|
||||
The name of your development environment, version. [e.g. GNOME Terminal (v0.0.0000)]
|
||||
Including patch level, use ":version" to see it [e.g. 8.2.1234]
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Environment
|
||||
description: >
|
||||
OS [e.g. Ubuntu 21.10], terminal [e.g. GNOME Terminal 3.38.1], value of $TERM, shell [e.g. bash 5.1.8]; anything that might matter
|
||||
placeholder: |
|
||||
Operating system:
|
||||
Terminal:
|
||||
Value of $TERM:
|
||||
Shell:
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
29
.github/workflows/ci.yml
vendored
29
.github/workflows/ci.yml
vendored
@@ -75,16 +75,16 @@ jobs:
|
||||
libtool-bin \
|
||||
libsodium-dev
|
||||
|
||||
- name: Install clang-11
|
||||
- name: Install clang-13
|
||||
if: matrix.compiler == 'clang'
|
||||
run: |
|
||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
. /etc/lsb-release
|
||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-11 main"
|
||||
sudo apt-get install -y clang-11
|
||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-11 100
|
||||
sudo update-alternatives --set clang /usr/bin/clang-11
|
||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-11 100
|
||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-13 main"
|
||||
sudo apt-get install -y clang-13 llvm-13
|
||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-13 100
|
||||
sudo update-alternatives --set clang /usr/bin/clang-13
|
||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-13 100
|
||||
|
||||
- name: Set up environment
|
||||
run: |
|
||||
@@ -188,6 +188,10 @@ jobs:
|
||||
# Append various warning flags to CFLAGS.
|
||||
sed -i -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
||||
sed -i -f ci/config.mk.${CC}.sed ${SRCDIR}/auto/config.mk
|
||||
if [[ ${CC} = clang ]]; then
|
||||
# Suppress some warnings produced by clang 12 and later.
|
||||
sed -i -f ci/config.mk.clang-12.sed ${SRCDIR}/auto/config.mk
|
||||
fi
|
||||
|
||||
- name: Build
|
||||
if: (!contains(matrix.extra, 'unittests'))
|
||||
@@ -230,7 +234,7 @@ jobs:
|
||||
if: contains(matrix.extra, 'asan') && !cancelled()
|
||||
run: |
|
||||
for f in $(grep -lR '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "${LOG_DIR}"); do
|
||||
asan_symbolize-11 -l "$f"
|
||||
asan_symbolize-13 -l "$f"
|
||||
false # in order to fail a job
|
||||
done
|
||||
|
||||
@@ -251,7 +255,7 @@ jobs:
|
||||
runs-on: macos-latest
|
||||
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
CC: clang
|
||||
TEST: test
|
||||
SRCDIR: ./src
|
||||
LEAK_CFLAGS: -DEXITFREE
|
||||
@@ -260,8 +264,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
features: [tiny, huge]
|
||||
compiler: [clang, gcc]
|
||||
features: [tiny, normal, huge]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
@@ -282,6 +285,8 @@ jobs:
|
||||
echo "TEST=testtiny"
|
||||
echo "CONFOPT=--disable-gui"
|
||||
;;
|
||||
normal)
|
||||
;;
|
||||
huge)
|
||||
echo "CONFOPT=--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
;;
|
||||
@@ -296,6 +301,10 @@ jobs:
|
||||
sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
||||
# On macOS, the entity of gcc is clang.
|
||||
sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk
|
||||
# Suppress some warnings produced by clang 12 and later.
|
||||
if clang --version | grep -qs 'Apple clang version \(1[3-9]\|[2-9]\)\.'; then
|
||||
sed -i.bak -f ci/config.mk.clang-12.sed ${SRCDIR}/auto/config.mk
|
||||
fi
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
|
||||
6
Filelist
6
Filelist
@@ -7,6 +7,7 @@ SRC_ALL = \
|
||||
.coveralls.yml \
|
||||
.gitattributes \
|
||||
.github/CODEOWNERS \
|
||||
.github/ISSUE_TEMPLATE/bug_report.yml \
|
||||
.github/workflows/ci.yml \
|
||||
.github/workflows/codeql-analysis.yml \
|
||||
.github/workflows/coverity.yml \
|
||||
@@ -142,7 +143,7 @@ SRC_ALL = \
|
||||
src/tag.c \
|
||||
src/term.c \
|
||||
src/terminal.c \
|
||||
src/term.h \
|
||||
src/termdefs.h \
|
||||
src/termlib.c \
|
||||
src/testing.c \
|
||||
src/textformat.c \
|
||||
@@ -376,6 +377,7 @@ SRC_ALL = \
|
||||
src/libvterm/t/30state_pen.test \
|
||||
src/libvterm/t/31state_rep.test \
|
||||
src/libvterm/t/32state_flow.test \
|
||||
src/libvterm/t/40state_selection.test \
|
||||
src/libvterm/t/60screen_ascii.test \
|
||||
src/libvterm/t/61screen_unicode.test \
|
||||
src/libvterm/t/62screen_damage.test \
|
||||
@@ -798,6 +800,7 @@ RT_SCRIPTS = \
|
||||
runtime/autoload/xml/*.vim \
|
||||
runtime/colors/*.vim \
|
||||
runtime/colors/README.txt \
|
||||
runtime/colors/lists/*.vim \
|
||||
runtime/colors/tools/*.vim \
|
||||
runtime/compiler/*.vim \
|
||||
runtime/compiler/README.txt \
|
||||
@@ -850,7 +853,6 @@ RT_AMI_DOS = \
|
||||
# DOS runtime (also in the extra archive)
|
||||
RT_DOS = \
|
||||
README_dos.txt \
|
||||
runtime/rgb.txt \
|
||||
vimtutor.bat \
|
||||
|
||||
# DOS runtime without CR-LF translation (also in the extra archive)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[](https://www.vim.org)
|
||||
|
||||
[](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22) [](https://travis-ci.com/github/vim/vim) [](https://ci.appveyor.com/project/chrisbra/vim) [](https://cirrus-ci.com/github/vim/vim) [](https://codecov.io/gh/vim/vim?branch=master) [](https://scan.coverity.com/projects/vim) [](https://lgtm.com/projects/g/vim/vim/context:cpp) [](https://buildd.debian.org/vim) [](https://repology.org/metapackage/vim) [](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
|
||||
[](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22) [](https://travis-ci.com/github/vim/vim) [](https://ci.appveyor.com/project/chrisbra/vim) [](https://cirrus-ci.com/github/vim/vim) [](https://codecov.io/gh/vim/vim?branch=master) [](https://scan.coverity.com/projects/vim) [](https://lgtm.com/projects/g/vim/vim/context:cpp) [](https://buildd.debian.org/vim) [](https://repology.org/metapackage/vim) [](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html) [](https://huntr.dev/bounties/disclose/?utm_campaign=vim%2Fvim&utm_medium=social&utm_source=github&target=https%3A%2F%2Fgithub.com%2Fvim%2Fvim)
|
||||
|
||||
<sub>For translations of this README see the end.</sub>
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@ src/os_win32.* Files for the Win32 port.
|
||||
src/gui_w32.* Files for the Win32 GUI.
|
||||
src/gui_w48.* Files for the Win32 and Win16 GUI.
|
||||
src/Make_mvc.mak MS Visual C++ makefile for the Win32 GUI.
|
||||
runtime/rgb.txt File with color definitions for the Win32 GUI.
|
||||
|
||||
src/if_ole.* OLE automation interface, for MS Windows 95 and NT.
|
||||
|
||||
|
||||
3
ci/config.mk.clang-12.sed
Normal file
3
ci/config.mk.clang-12.sed
Normal file
@@ -0,0 +1,3 @@
|
||||
# Clang 12 (or Apple clang 13) and later makes a warning '-Wcompound-token-split-by-macro' enable by default.
|
||||
/^PERL_CFLAGS[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
|
||||
/^RUBY_CFLAGS[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
|
||||
@@ -357,7 +357,6 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ..\README.txt
|
||||
File ..\uninstall.txt
|
||||
File ${VIMRT}\*.vim
|
||||
File ${VIMRT}\rgb.txt
|
||||
|
||||
File ${VIMTOOLS}\diff.exe
|
||||
File ${VIMTOOLS}\winpty${BIT}.dll
|
||||
@@ -367,6 +366,8 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ${VIMRT}\colors\*.*
|
||||
SetOutPath $0\colors\tools
|
||||
File ${VIMRT}\colors\tools\*.*
|
||||
SetOutPath $0\colors\lists
|
||||
File ${VIMRT}\colors\lists\*.*
|
||||
|
||||
SetOutPath $0\compiler
|
||||
File ${VIMRT}\compiler\*.*
|
||||
|
||||
File diff suppressed because one or more lines are too long
23
runtime/autoload/dist/ft.vim
vendored
23
runtime/autoload/dist/ft.vim
vendored
@@ -1,7 +1,7 @@
|
||||
" Vim functions for file type detection
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Aug 17
|
||||
" Last Change: 2021 Nov 27
|
||||
|
||||
" These functions are moved here from runtime/filetype.vim to make startup
|
||||
" faster.
|
||||
@@ -219,6 +219,23 @@ func dist#ft#FTe()
|
||||
endif
|
||||
endfunc
|
||||
|
||||
" Distinguish between Forth and F#.
|
||||
" Provided by Doug Kearns.
|
||||
func dist#ft#FTfs()
|
||||
if exists("g:filetype_fs")
|
||||
exe "setf " . g:filetype_fs
|
||||
else
|
||||
let line = getline(nextnonblank(1))
|
||||
" comments and colon definitions
|
||||
if line =~ '^\s*\.\=( ' || line =~ '^\s*\\G\= ' || line =~ '^\\$'
|
||||
\ || line =~ '^\s*: \S'
|
||||
setf forth
|
||||
else
|
||||
setf fsharp
|
||||
endif
|
||||
endif
|
||||
endfunc
|
||||
|
||||
" Distinguish between HTML, XHTML and Django
|
||||
func dist#ft#FThtml()
|
||||
let n = 1
|
||||
@@ -272,6 +289,8 @@ func dist#ft#FTm()
|
||||
" excluding end(for|function|if|switch|while) common to Murphi
|
||||
let octave_block_terminators = '\<end\%(_try_catch\|classdef\|enumeration\|events\|methods\|parfor\|properties\)\>'
|
||||
|
||||
let objc_preprocessor = '^\s*#\s*\%(import\|include\|define\|if\|ifn\=def\|undef\|line\|error\|pragma\)\>'
|
||||
|
||||
let n = 1
|
||||
let saw_comment = 0 " Whether we've seen a multiline comment leader.
|
||||
while n < 100
|
||||
@@ -282,7 +301,7 @@ func dist#ft#FTm()
|
||||
" anything more definitive.
|
||||
let saw_comment = 1
|
||||
endif
|
||||
if line =~ '^\s*\(#\s*\(include\|import\)\>\|@import\>\|//\)'
|
||||
if line =~ '^\s*//' || line =~ '^\s*@import\>' || line =~ objc_preprocessor
|
||||
setf objc
|
||||
return
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" zip.vim: Handles browsing zipfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Jan 07, 2020
|
||||
" Version: 31
|
||||
" Date: Nov 08, 2021
|
||||
" Version: 32
|
||||
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005-2019 Charles E. Campbell {{{1
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_zip")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zip= "v31"
|
||||
let g:loaded_zip= "v32"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of zip needs vim 7.2 or later"
|
||||
@@ -115,7 +115,13 @@ fun! zip#Browse(zipfile)
|
||||
setlocal bufhidden=hide
|
||||
setlocal nobuflisted
|
||||
setlocal nowrap
|
||||
set ft=tar
|
||||
|
||||
" Oct 12, 2021: need to re-use Bram's syntax/tar.vim.
|
||||
" Setting the filetype to zip doesn't do anything (currently),
|
||||
" but it is perhaps less confusing to curious perusers who do
|
||||
" a :echo &ft
|
||||
setf zip
|
||||
run! syntax/tar.vim
|
||||
|
||||
" give header
|
||||
call append(0, ['" zip.vim version '.g:loaded_zip,
|
||||
@@ -187,8 +193,8 @@ fun! s:ZipBrowseSelect()
|
||||
wincmd _
|
||||
endif
|
||||
let s:zipfile_{winnr()}= curfile
|
||||
" call Decho("exe e ".fnameescape("zipfile:".zipfile.'::'.fname))
|
||||
exe "noswapfile e ".fnameescape("zipfile:".zipfile.'::'.fname)
|
||||
" call Decho("exe e ".fnameescape("zipfile://".zipfile.'::'.fname))
|
||||
exe "noswapfile e ".fnameescape("zipfile://".zipfile.'::'.fname)
|
||||
filetype detect
|
||||
|
||||
let &report= repkeep
|
||||
@@ -203,11 +209,11 @@ fun! zip#Read(fname,mode)
|
||||
set report=10
|
||||
|
||||
if has("unix")
|
||||
let zipfile = substitute(a:fname,'zipfile:\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'zipfile:.\{-}::\([^\\].*\)$','\1','')
|
||||
let zipfile = substitute(a:fname,'zipfile://\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'zipfile://.\{-}::\([^\\].*\)$','\1','')
|
||||
else
|
||||
let zipfile = substitute(a:fname,'^.\{-}zipfile:\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'^.\{-}zipfile:.\{-}::\([^\\].*\)$','\1','')
|
||||
let zipfile = substitute(a:fname,'^.\{-}zipfile://\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'^.\{-}zipfile://.\{-}::\([^\\].*\)$','\1','')
|
||||
let fname = substitute(fname, '[', '[[]', 'g')
|
||||
endif
|
||||
" call Decho("zipfile<".zipfile.">")
|
||||
@@ -224,7 +230,7 @@ fun! zip#Read(fname,mode)
|
||||
|
||||
" the following code does much the same thing as
|
||||
" exe "keepj sil! r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1)
|
||||
" but allows zipfile:... entries in quickfix lists
|
||||
" but allows zipfile://... entries in quickfix lists
|
||||
let temp = tempname()
|
||||
" call Decho("using temp file<".temp.">")
|
||||
let fn = expand('%:p')
|
||||
@@ -296,11 +302,11 @@ fun! zip#Write(fname)
|
||||
" call Decho("current directory now: ".getcwd())
|
||||
|
||||
if has("unix")
|
||||
let zipfile = substitute(a:fname,'zipfile:\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'zipfile:.\{-}::\([^\\].*\)$','\1','')
|
||||
let zipfile = substitute(a:fname,'zipfile://\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'zipfile://.\{-}::\([^\\].*\)$','\1','')
|
||||
else
|
||||
let zipfile = substitute(a:fname,'^.\{-}zipfile:\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'^.\{-}zipfile:.\{-}::\([^\\].*\)$','\1','')
|
||||
let zipfile = substitute(a:fname,'^.\{-}zipfile://\(.\{-}\)::[^\\].*$','\1','')
|
||||
let fname = substitute(a:fname,'^.\{-}zipfile://.\{-}::\([^\\].*\)$','\1','')
|
||||
endif
|
||||
" call Decho("zipfile<".zipfile.">")
|
||||
" call Decho("fname <".fname.">")
|
||||
|
||||
@@ -87,4 +87,5 @@ please check the following items:
|
||||
- In the GUI, is it easy to find the cursor, also in a file with lots of
|
||||
syntax highlighting?
|
||||
- Do not use hard coded escape sequences, these will not work in other
|
||||
terminals. Always use color names or #RRGGBB for the GUI.
|
||||
terminals. Always use color names or #RRGGBB for the GUI. See v:colornames
|
||||
for details on how to define your own color names.
|
||||
|
||||
166
runtime/colors/lists/csscolors.vim
Normal file
166
runtime/colors/lists/csscolors.vim
Normal file
@@ -0,0 +1,166 @@
|
||||
" Maintainer: Drew Vogel <dvogel@sidejump.org>
|
||||
" Last Change: 2021 Jul 25
|
||||
|
||||
" Similar in spirit to rgb.txt, this plugin establishes a human-friendly name
|
||||
" for every color listed in the CSS standard:
|
||||
"
|
||||
" https://www.w3.org/TR/css-color-3/
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
call extend(v:colornames, {
|
||||
\ 'css_black': '#000000',
|
||||
\ 'css_silver': '#c0c0c0',
|
||||
\ 'css_gray': '#808080',
|
||||
\ 'css_white': '#FFFFFF',
|
||||
\ 'css_maroon': '#800000',
|
||||
\ 'css_red': '#FF0000',
|
||||
\ 'css_purple': '#800080',
|
||||
\ 'css_fuchsia': '#FF00FF',
|
||||
\ 'css_green': '#008000',
|
||||
\ 'css_lime': '#00FF00',
|
||||
\ 'css_olive': '#808000',
|
||||
\ 'css_yellow': '#FFFF00',
|
||||
\ 'css_navy': '#000080',
|
||||
\ 'css_blue': '#0000FF',
|
||||
\ 'css_teal': '#008080',
|
||||
\ 'css_aqua': '#00FFFF',
|
||||
\
|
||||
\ 'css_aliceblue': '#f0f8ff',
|
||||
\ 'css_antiquewhite': '#faebd7',
|
||||
\ 'css_aquamarine': '#7fffd4',
|
||||
\ 'css_azure': '#f0ffff',
|
||||
\ 'css_beige': '#f5f5dc',
|
||||
\ 'css_bisque': '#ffe4c4',
|
||||
\ 'css_blanchedalmond': '#ffebcd',
|
||||
\ 'css_blueviolet': '#8a2be2',
|
||||
\ 'css_brown': '#a52a2a',
|
||||
\ 'css_burlywood': '#deb887',
|
||||
\ 'css_cadetblue': '#5f9ea0',
|
||||
\ 'css_chartreuse': '#7fff00',
|
||||
\ 'css_chocolate': '#d2691e',
|
||||
\ 'css_coral': '#ff7f50',
|
||||
\ 'css_cornflowerblue': '#6495ed',
|
||||
\ 'css_cornsilk': '#fff8dc',
|
||||
\ 'css_crimson': '#dc143c',
|
||||
\ 'css_cyan': '#00ffff',
|
||||
\ 'css_darkblue': '#00008b',
|
||||
\ 'css_darkcyan': '#008b8b',
|
||||
\ 'css_darkgoldenrod': '#b8860b',
|
||||
\ 'css_darkgray': '#a9a9a9',
|
||||
\ 'css_darkgreen': '#006400',
|
||||
\ 'css_darkgrey': '#a9a9a9',
|
||||
\ 'css_darkkhaki': '#bdb76b',
|
||||
\ 'css_darkmagenta': '#8b008b',
|
||||
\ 'css_darkolivegreen': '#556b2f',
|
||||
\ 'css_darkorange': '#ff8c00',
|
||||
\ 'css_darkorchid': '#9932cc',
|
||||
\ 'css_darkred': '#8b0000',
|
||||
\ 'css_darksalmon': '#e9967a',
|
||||
\ 'css_darkseagreen': '#8fbc8f',
|
||||
\ 'css_darkslateblue': '#483d8b',
|
||||
\ 'css_darkslategray': '#2f4f4f',
|
||||
\ 'css_darkslategrey': '#2f4f4f',
|
||||
\ 'css_darkturquoise': '#00ced1',
|
||||
\ 'css_darkviolet': '#9400d3',
|
||||
\ 'css_deeppink': '#ff1493',
|
||||
\ 'css_deepskyblue': '#00bfff',
|
||||
\ 'css_dimgray': '#696969',
|
||||
\ 'css_dimgrey': '#696969',
|
||||
\ 'css_dodgerblue': '#1e90ff',
|
||||
\ 'css_firebrick': '#b22222',
|
||||
\ 'css_floralwhite': '#fffaf0',
|
||||
\ 'css_forestgreen': '#228b22',
|
||||
\ 'css_gainsboro': '#dcdcdc',
|
||||
\ 'css_ghostwhite': '#f8f8ff',
|
||||
\ 'css_gold': '#ffd700',
|
||||
\ 'css_goldenrod': '#daa520',
|
||||
\ 'css_greenyellow': '#adff2f',
|
||||
\ 'css_grey': '#808080',
|
||||
\ 'css_honeydew': '#f0fff0',
|
||||
\ 'css_hotpink': '#ff69b4',
|
||||
\ 'css_indianred': '#cd5c5c',
|
||||
\ 'css_indigo': '#4b0082',
|
||||
\ 'css_ivory': '#fffff0',
|
||||
\ 'css_khaki': '#f0e68c',
|
||||
\ 'css_lavender': '#e6e6fa',
|
||||
\ 'css_lavenderblush': '#fff0f5',
|
||||
\ 'css_lawngreen': '#7cfc00',
|
||||
\ 'css_lemonchiffon': '#fffacd',
|
||||
\ 'css_lightblue': '#add8e6',
|
||||
\ 'css_lightcoral': '#f08080',
|
||||
\ 'css_lightcyan': '#e0ffff',
|
||||
\ 'css_lightgoldenrodyellow': '#fafad2',
|
||||
\ 'css_lightgray': '#d3d3d3',
|
||||
\ 'css_lightgreen': '#90ee90',
|
||||
\ 'css_lightgrey': '#d3d3d3',
|
||||
\ 'css_lightpink': '#ffb6c1',
|
||||
\ 'css_lightsalmon': '#ffa07a',
|
||||
\ 'css_lightseagreen': '#20b2aa',
|
||||
\ 'css_lightskyblue': '#87cefa',
|
||||
\ 'css_lightslategray': '#778899',
|
||||
\ 'css_lightslategrey': '#778899',
|
||||
\ 'css_lightsteelblue': '#b0c4de',
|
||||
\ 'css_lightyellow': '#ffffe0',
|
||||
\ 'css_limegreen': '#32cd32',
|
||||
\ 'css_linen': '#faf0e6',
|
||||
\ 'css_magenta': '#ff00ff',
|
||||
\ 'css_mediumaquamarine': '#66cdaa',
|
||||
\ 'css_mediumblue': '#0000cd',
|
||||
\ 'css_mediumorchid': '#ba55d3',
|
||||
\ 'css_mediumpurple': '#9370db',
|
||||
\ 'css_mediumseagreen': '#3cb371',
|
||||
\ 'css_mediumslateblue': '#7b68ee',
|
||||
\ 'css_mediumspringgreen': '#00fa9a',
|
||||
\ 'css_mediumturquoise': '#48d1cc',
|
||||
\ 'css_mediumvioletred': '#c71585',
|
||||
\ 'css_midnightblue': '#191970',
|
||||
\ 'css_mintcream': '#f5fffa',
|
||||
\ 'css_mistyrose': '#ffe4e1',
|
||||
\ 'css_moccasin': '#ffe4b5',
|
||||
\ 'css_navajowhite': '#ffdead',
|
||||
\ 'css_oldlace': '#fdf5e6',
|
||||
\ 'css_olivedrab': '#6b8e23',
|
||||
\ 'css_orange': '#ffa500',
|
||||
\ 'css_orangered': '#ff4500',
|
||||
\ 'css_orchid': '#da70d6',
|
||||
\ 'css_palegoldenrod': '#eee8aa',
|
||||
\ 'css_palegreen': '#98fb98',
|
||||
\ 'css_paleturquoise': '#afeeee',
|
||||
\ 'css_palevioletred': '#db7093',
|
||||
\ 'css_papayawhip': '#ffefd5',
|
||||
\ 'css_peachpuff': '#ffdab9',
|
||||
\ 'css_peru': '#cd853f',
|
||||
\ 'css_pink': '#ffc0cb',
|
||||
\ 'css_plum': '#dda0dd',
|
||||
\ 'css_powderblue': '#b0e0e6',
|
||||
\ 'css_rosybrown': '#bc8f8f',
|
||||
\ 'css_royalblue': '#4169e1',
|
||||
\ 'css_saddlebrown': '#8b4513',
|
||||
\ 'css_salmon': '#fa8072',
|
||||
\ 'css_sandybrown': '#f4a460',
|
||||
\ 'css_seagreen': '#2e8b57',
|
||||
\ 'css_seashell': '#fff5ee',
|
||||
\ 'css_sienna': '#a0522d',
|
||||
\ 'css_skyblue': '#87ceeb',
|
||||
\ 'css_slateblue': '#6a5acd',
|
||||
\ 'css_slategray': '#708090',
|
||||
\ 'css_slategrey': '#708090',
|
||||
\ 'css_snow': '#fffafa',
|
||||
\ 'css_springgreen': '#00ff7f',
|
||||
\ 'css_steelblue': '#4682b4',
|
||||
\ 'css_tan': '#d2b48c',
|
||||
\ 'css_thistle': '#d8bfd8',
|
||||
\ 'css_tomato': '#ff6347',
|
||||
\ 'css_turquoise': '#40e0d0',
|
||||
\ 'css_violet': '#ee82ee',
|
||||
\ 'css_wheat': '#f5deb3',
|
||||
\ 'css_whitesmoke': '#f5f5f5',
|
||||
\ 'css_yellowgreen': '#9acd32',
|
||||
\ }, 'keep')
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
"vim: sw=4
|
||||
801
runtime/colors/lists/default.vim
Normal file
801
runtime/colors/lists/default.vim
Normal file
@@ -0,0 +1,801 @@
|
||||
" Maintainer: Drew Vogel <dvogel@sidejump.org>
|
||||
" Last Change: 2021 Jul 25
|
||||
"
|
||||
" Replaced rgb.txt as the source of de facto standard color names. This is
|
||||
" sourced each time the colorscheme command is run. It is also sourced each
|
||||
" time the highlight command fails to recognize a gui color. You can override
|
||||
" these colors by introducing a new colors/lists/default.vim file earlier in
|
||||
" the runtimepath.
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
call extend(v:colornames, {
|
||||
\ 'snow': '#fffafa',
|
||||
\ 'ghost white': '#f8f8ff',
|
||||
\ 'ghostwhite': '#f8f8ff',
|
||||
\ 'white smoke': '#f5f5f5',
|
||||
\ 'whitesmoke': '#f5f5f5',
|
||||
\ 'gainsboro': '#dcdcdc',
|
||||
\ 'floral white': '#fffaf0',
|
||||
\ 'floralwhite': '#fffaf0',
|
||||
\ 'old lace': '#fdf5e6',
|
||||
\ 'oldlace': '#fdf5e6',
|
||||
\ 'linen': '#faf0e6',
|
||||
\ 'antique white': '#faebd7',
|
||||
\ 'antiquewhite': '#faebd7',
|
||||
\ 'papaya whip': '#ffefd5',
|
||||
\ 'papayawhip': '#ffefd5',
|
||||
\ 'blanched almond': '#ffebcd',
|
||||
\ 'blanchedalmond': '#ffebcd',
|
||||
\ 'bisque': '#ffe4c4',
|
||||
\ 'peach puff': '#ffdab9',
|
||||
\ 'peachpuff': '#ffdab9',
|
||||
\ 'navajo white': '#ffdead',
|
||||
\ 'navajowhite': '#ffdead',
|
||||
\ 'moccasin': '#ffe4b5',
|
||||
\ 'cornsilk': '#fff8dc',
|
||||
\ 'ivory': '#fffff0',
|
||||
\ 'lemon chiffon': '#fffacd',
|
||||
\ 'lemonchiffon': '#fffacd',
|
||||
\ 'seashell': '#fff5ee',
|
||||
\ 'honeydew': '#f0fff0',
|
||||
\ 'mint cream': '#f5fffa',
|
||||
\ 'mintcream': '#f5fffa',
|
||||
\ 'azure': '#f0ffff',
|
||||
\ 'alice blue': '#f0f8ff',
|
||||
\ 'aliceblue': '#f0f8ff',
|
||||
\ 'lavender': '#e6e6fa',
|
||||
\ 'lavender blush': '#fff0f5',
|
||||
\ 'lavenderblush': '#fff0f5',
|
||||
\ 'misty rose': '#ffe4e1',
|
||||
\ 'mistyrose': '#ffe4e1',
|
||||
\ 'white': '#ffffff',
|
||||
\ 'black': '#000000',
|
||||
\ 'dark slate gray': '#2f4f4f',
|
||||
\ 'darkslategray': '#2f4f4f',
|
||||
\ 'dark slate grey': '#2f4f4f',
|
||||
\ 'darkslategrey': '#2f4f4f',
|
||||
\ 'dim gray': '#696969',
|
||||
\ 'dimgray': '#696969',
|
||||
\ 'dim grey': '#696969',
|
||||
\ 'dimgrey': '#696969',
|
||||
\ 'slate gray': '#708090',
|
||||
\ 'slategray': '#708090',
|
||||
\ 'slate grey': '#708090',
|
||||
\ 'slategrey': '#708090',
|
||||
\ 'light slate gray': '#778899',
|
||||
\ 'lightslategray': '#778899',
|
||||
\ 'light slate grey': '#778899',
|
||||
\ 'lightslategrey': '#778899',
|
||||
\ 'gray': '#bebebe',
|
||||
\ 'grey': '#bebebe',
|
||||
\ 'x11 gray': '#bebebe',
|
||||
\ 'x11gray': '#bebebe',
|
||||
\ 'x11 grey': '#bebebe',
|
||||
\ 'x11grey': '#bebebe',
|
||||
\ 'web gray': '#808080',
|
||||
\ 'webgray': '#808080',
|
||||
\ 'web grey': '#808080',
|
||||
\ 'webgrey': '#808080',
|
||||
\ 'light grey': '#d3d3d3',
|
||||
\ 'lightgrey': '#d3d3d3',
|
||||
\ 'light gray': '#d3d3d3',
|
||||
\ 'lightgray': '#d3d3d3',
|
||||
\ 'midnight blue': '#191970',
|
||||
\ 'midnightblue': '#191970',
|
||||
\ 'navy': '#000080',
|
||||
\ 'navy blue': '#000080',
|
||||
\ 'navyblue': '#000080',
|
||||
\ 'cornflower blue': '#6495ed',
|
||||
\ 'cornflowerblue': '#6495ed',
|
||||
\ 'dark slate blue': '#483d8b',
|
||||
\ 'darkslateblue': '#483d8b',
|
||||
\ 'slate blue': '#6a5acd',
|
||||
\ 'slateblue': '#6a5acd',
|
||||
\ 'medium slate blue': '#7b68ee',
|
||||
\ 'mediumslateblue': '#7b68ee',
|
||||
\ 'light slate blue': '#8470ff',
|
||||
\ 'lightslateblue': '#8470ff',
|
||||
\ 'medium blue': '#0000cd',
|
||||
\ 'mediumblue': '#0000cd',
|
||||
\ 'royal blue': '#4169e1',
|
||||
\ 'royalblue': '#4169e1',
|
||||
\ 'blue': '#0000ff',
|
||||
\ 'dodger blue': '#1e90ff',
|
||||
\ 'dodgerblue': '#1e90ff',
|
||||
\ 'deep sky blue': '#00bfff',
|
||||
\ 'deepskyblue': '#00bfff',
|
||||
\ 'sky blue': '#87ceeb',
|
||||
\ 'skyblue': '#87ceeb',
|
||||
\ 'light sky blue': '#87cefa',
|
||||
\ 'lightskyblue': '#87cefa',
|
||||
\ 'steel blue': '#4682b4',
|
||||
\ 'steelblue': '#4682b4',
|
||||
\ 'light steel blue': '#b0c4de',
|
||||
\ 'lightsteelblue': '#b0c4de',
|
||||
\ 'light blue': '#add8e6',
|
||||
\ 'lightblue': '#add8e6',
|
||||
\ 'powder blue': '#b0e0e6',
|
||||
\ 'powderblue': '#b0e0e6',
|
||||
\ 'pale turquoise': '#afeeee',
|
||||
\ 'paleturquoise': '#afeeee',
|
||||
\ 'dark turquoise': '#00ced1',
|
||||
\ 'darkturquoise': '#00ced1',
|
||||
\ 'medium turquoise': '#48d1cc',
|
||||
\ 'mediumturquoise': '#48d1cc',
|
||||
\ 'turquoise': '#40e0d0',
|
||||
\ 'cyan': '#00ffff',
|
||||
\ 'aqua': '#00ffff',
|
||||
\ 'light cyan': '#e0ffff',
|
||||
\ 'lightcyan': '#e0ffff',
|
||||
\ 'cadet blue': '#5f9ea0',
|
||||
\ 'cadetblue': '#5f9ea0',
|
||||
\ 'medium aquamarine': '#66cdaa',
|
||||
\ 'mediumaquamarine': '#66cdaa',
|
||||
\ 'aquamarine': '#7fffd4',
|
||||
\ 'dark green': '#006400',
|
||||
\ 'darkgreen': '#006400',
|
||||
\ 'dark olive green': '#556b2f',
|
||||
\ 'darkolivegreen': '#556b2f',
|
||||
\ 'dark sea green': '#8fbc8f',
|
||||
\ 'darkseagreen': '#8fbc8f',
|
||||
\ 'sea green': '#2e8b57',
|
||||
\ 'seagreen': '#2e8b57',
|
||||
\ 'medium sea green': '#3cb371',
|
||||
\ 'mediumseagreen': '#3cb371',
|
||||
\ 'light sea green': '#20b2aa',
|
||||
\ 'lightseagreen': '#20b2aa',
|
||||
\ 'pale green': '#98fb98',
|
||||
\ 'palegreen': '#98fb98',
|
||||
\ 'spring green': '#00ff7f',
|
||||
\ 'springgreen': '#00ff7f',
|
||||
\ 'lawn green': '#7cfc00',
|
||||
\ 'lawngreen': '#7cfc00',
|
||||
\ 'green': '#00ff00',
|
||||
\ 'lime': '#00ff00',
|
||||
\ 'x11 green': '#00ff00',
|
||||
\ 'x11green': '#00ff00',
|
||||
\ 'web green': '#008000',
|
||||
\ 'webgreen': '#008000',
|
||||
\ 'chartreuse': '#7fff00',
|
||||
\ 'medium spring green': '#00fa9a',
|
||||
\ 'mediumspringgreen': '#00fa9a',
|
||||
\ 'green yellow': '#adff2f',
|
||||
\ 'greenyellow': '#adff2f',
|
||||
\ 'lime green': '#32cd32',
|
||||
\ 'limegreen': '#32cd32',
|
||||
\ 'yellow green': '#9acd32',
|
||||
\ 'yellowgreen': '#9acd32',
|
||||
\ 'forest green': '#228b22',
|
||||
\ 'forestgreen': '#228b22',
|
||||
\ 'olive drab': '#6b8e23',
|
||||
\ 'olivedrab': '#6b8e23',
|
||||
\ 'dark khaki': '#bdb76b',
|
||||
\ 'darkkhaki': '#bdb76b',
|
||||
\ 'khaki': '#f0e68c',
|
||||
\ 'pale goldenrod': '#eee8aa',
|
||||
\ 'palegoldenrod': '#eee8aa',
|
||||
\ 'light goldenrod yellow': '#fafad2',
|
||||
\ 'lightgoldenrodyellow': '#fafad2',
|
||||
\ 'light yellow': '#ffffe0',
|
||||
\ 'lightyellow': '#ffffe0',
|
||||
\ 'yellow': '#ffff00',
|
||||
\ 'gold': '#ffd700',
|
||||
\ 'light goldenrod': '#eedd82',
|
||||
\ 'lightgoldenrod': '#eedd82',
|
||||
\ 'goldenrod': '#daa520',
|
||||
\ 'dark goldenrod': '#b8860b',
|
||||
\ 'darkgoldenrod': '#b8860b',
|
||||
\ 'rosy brown': '#bc8f8f',
|
||||
\ 'rosybrown': '#bc8f8f',
|
||||
\ 'indian red': '#cd5c5c',
|
||||
\ 'indianred': '#cd5c5c',
|
||||
\ 'saddle brown': '#8b4513',
|
||||
\ 'saddlebrown': '#8b4513',
|
||||
\ 'sienna': '#a0522d',
|
||||
\ 'peru': '#cd853f',
|
||||
\ 'burlywood': '#deb887',
|
||||
\ 'beige': '#f5f5dc',
|
||||
\ 'wheat': '#f5deb3',
|
||||
\ 'sandy brown': '#f4a460',
|
||||
\ 'sandybrown': '#f4a460',
|
||||
\ 'tan': '#d2b48c',
|
||||
\ 'chocolate': '#d2691e',
|
||||
\ 'firebrick': '#b22222',
|
||||
\ 'brown': '#a52a2a',
|
||||
\ 'dark salmon': '#e9967a',
|
||||
\ 'darksalmon': '#e9967a',
|
||||
\ 'salmon': '#fa8072',
|
||||
\ 'light salmon': '#ffa07a',
|
||||
\ 'lightsalmon': '#ffa07a',
|
||||
\ 'orange': '#ffa500',
|
||||
\ 'dark orange': '#ff8c00',
|
||||
\ 'darkorange': '#ff8c00',
|
||||
\ 'coral': '#ff7f50',
|
||||
\ 'light coral': '#f08080',
|
||||
\ 'lightcoral': '#f08080',
|
||||
\ 'tomato': '#ff6347',
|
||||
\ 'orange red': '#ff4500',
|
||||
\ 'orangered': '#ff4500',
|
||||
\ 'red': '#ff0000',
|
||||
\ 'hot pink': '#ff69b4',
|
||||
\ 'hotpink': '#ff69b4',
|
||||
\ 'deep pink': '#ff1493',
|
||||
\ 'deeppink': '#ff1493',
|
||||
\ 'pink': '#ffc0cb',
|
||||
\ 'light pink': '#ffb6c1',
|
||||
\ 'lightpink': '#ffb6c1',
|
||||
\ 'pale violet red': '#db7093',
|
||||
\ 'palevioletred': '#db7093',
|
||||
\ 'maroon': '#b03060',
|
||||
\ 'x11 maroon': '#b03060',
|
||||
\ 'x11maroon': '#b03060',
|
||||
\ 'web maroon': '#800000',
|
||||
\ 'webmaroon': '#800000',
|
||||
\ 'medium violet red': '#c71585',
|
||||
\ 'mediumvioletred': '#c71585',
|
||||
\ 'violet red': '#d02090',
|
||||
\ 'violetred': '#d02090',
|
||||
\ 'magenta': '#ff00ff',
|
||||
\ 'fuchsia': '#ff00ff',
|
||||
\ 'violet': '#ee82ee',
|
||||
\ 'plum': '#dda0dd',
|
||||
\ 'orchid': '#da70d6',
|
||||
\ 'medium orchid': '#ba55d3',
|
||||
\ 'mediumorchid': '#ba55d3',
|
||||
\ 'dark orchid': '#9932cc',
|
||||
\ 'darkorchid': '#9932cc',
|
||||
\ 'dark violet': '#9400d3',
|
||||
\ 'darkviolet': '#9400d3',
|
||||
\ 'blue violet': '#8a2be2',
|
||||
\ 'blueviolet': '#8a2be2',
|
||||
\ 'purple': '#a020f0',
|
||||
\ 'x11 purple': '#a020f0',
|
||||
\ 'x11purple': '#a020f0',
|
||||
\ 'web purple': '#800080',
|
||||
\ 'webpurple': '#800080',
|
||||
\ 'medium purple': '#9370db',
|
||||
\ 'mediumpurple': '#9370db',
|
||||
\ 'thistle': '#d8bfd8',
|
||||
\ 'snow1': '#fffafa',
|
||||
\ 'snow2': '#eee9e9',
|
||||
\ 'snow3': '#cdc9c9',
|
||||
\ 'snow4': '#8b8989',
|
||||
\ 'seashell1': '#fff5ee',
|
||||
\ 'seashell2': '#eee5de',
|
||||
\ 'seashell3': '#cdc5bf',
|
||||
\ 'seashell4': '#8b8682',
|
||||
\ 'antiquewhite1': '#ffefdb',
|
||||
\ 'antiquewhite2': '#eedfcc',
|
||||
\ 'antiquewhite3': '#cdc0b0',
|
||||
\ 'antiquewhite4': '#8b8378',
|
||||
\ 'bisque1': '#ffe4c4',
|
||||
\ 'bisque2': '#eed5b7',
|
||||
\ 'bisque3': '#cdb79e',
|
||||
\ 'bisque4': '#8b7d6b',
|
||||
\ 'peachpuff1': '#ffdab9',
|
||||
\ 'peachpuff2': '#eecbad',
|
||||
\ 'peachpuff3': '#cdaf95',
|
||||
\ 'peachpuff4': '#8b7765',
|
||||
\ 'navajowhite1': '#ffdead',
|
||||
\ 'navajowhite2': '#eecfa1',
|
||||
\ 'navajowhite3': '#cdb38b',
|
||||
\ 'navajowhite4': '#8b795e',
|
||||
\ 'lemonchiffon1': '#fffacd',
|
||||
\ 'lemonchiffon2': '#eee9bf',
|
||||
\ 'lemonchiffon3': '#cdc9a5',
|
||||
\ 'lemonchiffon4': '#8b8970',
|
||||
\ 'cornsilk1': '#fff8dc',
|
||||
\ 'cornsilk2': '#eee8cd',
|
||||
\ 'cornsilk3': '#cdc8b1',
|
||||
\ 'cornsilk4': '#8b8878',
|
||||
\ 'ivory1': '#fffff0',
|
||||
\ 'ivory2': '#eeeee0',
|
||||
\ 'ivory3': '#cdcdc1',
|
||||
\ 'ivory4': '#8b8b83',
|
||||
\ 'honeydew1': '#f0fff0',
|
||||
\ 'honeydew2': '#e0eee0',
|
||||
\ 'honeydew3': '#c1cdc1',
|
||||
\ 'honeydew4': '#838b83',
|
||||
\ 'lavenderblush1': '#fff0f5',
|
||||
\ 'lavenderblush2': '#eee0e5',
|
||||
\ 'lavenderblush3': '#cdc1c5',
|
||||
\ 'lavenderblush4': '#8b8386',
|
||||
\ 'mistyrose1': '#ffe4e1',
|
||||
\ 'mistyrose2': '#eed5d2',
|
||||
\ 'mistyrose3': '#cdb7b5',
|
||||
\ 'mistyrose4': '#8b7d7b',
|
||||
\ 'azure1': '#f0ffff',
|
||||
\ 'azure2': '#e0eeee',
|
||||
\ 'azure3': '#c1cdcd',
|
||||
\ 'azure4': '#838b8b',
|
||||
\ 'slateblue1': '#836fff',
|
||||
\ 'slateblue2': '#7a67ee',
|
||||
\ 'slateblue3': '#6959cd',
|
||||
\ 'slateblue4': '#473c8b',
|
||||
\ 'royalblue1': '#4876ff',
|
||||
\ 'royalblue2': '#436eee',
|
||||
\ 'royalblue3': '#3a5fcd',
|
||||
\ 'royalblue4': '#27408b',
|
||||
\ 'blue1': '#0000ff',
|
||||
\ 'blue2': '#0000ee',
|
||||
\ 'blue3': '#0000cd',
|
||||
\ 'blue4': '#00008b',
|
||||
\ 'dodgerblue1': '#1e90ff',
|
||||
\ 'dodgerblue2': '#1c86ee',
|
||||
\ 'dodgerblue3': '#1874cd',
|
||||
\ 'dodgerblue4': '#104e8b',
|
||||
\ 'steelblue1': '#63b8ff',
|
||||
\ 'steelblue2': '#5cacee',
|
||||
\ 'steelblue3': '#4f94cd',
|
||||
\ 'steelblue4': '#36648b',
|
||||
\ 'deepskyblue1': '#00bfff',
|
||||
\ 'deepskyblue2': '#00b2ee',
|
||||
\ 'deepskyblue3': '#009acd',
|
||||
\ 'deepskyblue4': '#00688b',
|
||||
\ 'skyblue1': '#87ceff',
|
||||
\ 'skyblue2': '#7ec0ee',
|
||||
\ 'skyblue3': '#6ca6cd',
|
||||
\ 'skyblue4': '#4a708b',
|
||||
\ 'lightskyblue1': '#b0e2ff',
|
||||
\ 'lightskyblue2': '#a4d3ee',
|
||||
\ 'lightskyblue3': '#8db6cd',
|
||||
\ 'lightskyblue4': '#607b8b',
|
||||
\ 'slategray1': '#c6e2ff',
|
||||
\ 'slategray2': '#b9d3ee',
|
||||
\ 'slategray3': '#9fb6cd',
|
||||
\ 'slategray4': '#6c7b8b',
|
||||
\ 'lightsteelblue1': '#cae1ff',
|
||||
\ 'lightsteelblue2': '#bcd2ee',
|
||||
\ 'lightsteelblue3': '#a2b5cd',
|
||||
\ 'lightsteelblue4': '#6e7b8b',
|
||||
\ 'lightblue1': '#bfefff',
|
||||
\ 'lightblue2': '#b2dfee',
|
||||
\ 'lightblue3': '#9ac0cd',
|
||||
\ 'lightblue4': '#68838b',
|
||||
\ 'lightcyan1': '#e0ffff',
|
||||
\ 'lightcyan2': '#d1eeee',
|
||||
\ 'lightcyan3': '#b4cdcd',
|
||||
\ 'lightcyan4': '#7a8b8b',
|
||||
\ 'paleturquoise1': '#bbffff',
|
||||
\ 'paleturquoise2': '#aeeeee',
|
||||
\ 'paleturquoise3': '#96cdcd',
|
||||
\ 'paleturquoise4': '#668b8b',
|
||||
\ 'cadetblue1': '#98f5ff',
|
||||
\ 'cadetblue2': '#8ee5ee',
|
||||
\ 'cadetblue3': '#7ac5cd',
|
||||
\ 'cadetblue4': '#53868b',
|
||||
\ 'turquoise1': '#00f5ff',
|
||||
\ 'turquoise2': '#00e5ee',
|
||||
\ 'turquoise3': '#00c5cd',
|
||||
\ 'turquoise4': '#00868b',
|
||||
\ 'cyan1': '#00ffff',
|
||||
\ 'cyan2': '#00eeee',
|
||||
\ 'cyan3': '#00cdcd',
|
||||
\ 'cyan4': '#008b8b',
|
||||
\ 'darkslategray1': '#97ffff',
|
||||
\ 'darkslategray2': '#8deeee',
|
||||
\ 'darkslategray3': '#79cdcd',
|
||||
\ 'darkslategray4': '#528b8b',
|
||||
\ 'aquamarine1': '#7fffd4',
|
||||
\ 'aquamarine2': '#76eec6',
|
||||
\ 'aquamarine3': '#66cdaa',
|
||||
\ 'aquamarine4': '#458b74',
|
||||
\ 'darkseagreen1': '#c1ffc1',
|
||||
\ 'darkseagreen2': '#b4eeb4',
|
||||
\ 'darkseagreen3': '#9bcd9b',
|
||||
\ 'darkseagreen4': '#698b69',
|
||||
\ 'seagreen1': '#54ff9f',
|
||||
\ 'seagreen2': '#4eee94',
|
||||
\ 'seagreen3': '#43cd80',
|
||||
\ 'seagreen4': '#2e8b57',
|
||||
\ 'palegreen1': '#9aff9a',
|
||||
\ 'palegreen2': '#90ee90',
|
||||
\ 'palegreen3': '#7ccd7c',
|
||||
\ 'palegreen4': '#548b54',
|
||||
\ 'springgreen1': '#00ff7f',
|
||||
\ 'springgreen2': '#00ee76',
|
||||
\ 'springgreen3': '#00cd66',
|
||||
\ 'springgreen4': '#008b45',
|
||||
\ 'green1': '#00ff00',
|
||||
\ 'green2': '#00ee00',
|
||||
\ 'green3': '#00cd00',
|
||||
\ 'green4': '#008b00',
|
||||
\ 'chartreuse1': '#7fff00',
|
||||
\ 'chartreuse2': '#76ee00',
|
||||
\ 'chartreuse3': '#66cd00',
|
||||
\ 'chartreuse4': '#458b00',
|
||||
\ 'olivedrab1': '#c0ff3e',
|
||||
\ 'olivedrab2': '#b3ee3a',
|
||||
\ 'olivedrab3': '#9acd32',
|
||||
\ 'olivedrab4': '#698b22',
|
||||
\ 'darkolivegreen1': '#caff70',
|
||||
\ 'darkolivegreen2': '#bcee68',
|
||||
\ 'darkolivegreen3': '#a2cd5a',
|
||||
\ 'darkolivegreen4': '#6e8b3d',
|
||||
\ 'khaki1': '#fff68f',
|
||||
\ 'khaki2': '#eee685',
|
||||
\ 'khaki3': '#cdc673',
|
||||
\ 'khaki4': '#8b864e',
|
||||
\ 'lightgoldenrod1': '#ffec8b',
|
||||
\ 'lightgoldenrod2': '#eedc82',
|
||||
\ 'lightgoldenrod3': '#cdbe70',
|
||||
\ 'lightgoldenrod4': '#8b814c',
|
||||
\ 'lightyellow1': '#ffffe0',
|
||||
\ 'lightyellow2': '#eeeed1',
|
||||
\ 'lightyellow3': '#cdcdb4',
|
||||
\ 'lightyellow4': '#8b8b7a',
|
||||
\ 'yellow1': '#ffff00',
|
||||
\ 'yellow2': '#eeee00',
|
||||
\ 'yellow3': '#cdcd00',
|
||||
\ 'yellow4': '#8b8b00',
|
||||
\ 'gold1': '#ffd700',
|
||||
\ 'gold2': '#eec900',
|
||||
\ 'gold3': '#cdad00',
|
||||
\ 'gold4': '#8b7500',
|
||||
\ 'goldenrod1': '#ffc125',
|
||||
\ 'goldenrod2': '#eeb422',
|
||||
\ 'goldenrod3': '#cd9b1d',
|
||||
\ 'goldenrod4': '#8b6914',
|
||||
\ 'darkgoldenrod1': '#ffb90f',
|
||||
\ 'darkgoldenrod2': '#eead0e',
|
||||
\ 'darkgoldenrod3': '#cd950c',
|
||||
\ 'darkgoldenrod4': '#8b6508',
|
||||
\ 'rosybrown1': '#ffc1c1',
|
||||
\ 'rosybrown2': '#eeb4b4',
|
||||
\ 'rosybrown3': '#cd9b9b',
|
||||
\ 'rosybrown4': '#8b6969',
|
||||
\ 'indianred1': '#ff6a6a',
|
||||
\ 'indianred2': '#ee6363',
|
||||
\ 'indianred3': '#cd5555',
|
||||
\ 'indianred4': '#8b3a3a',
|
||||
\ 'sienna1': '#ff8247',
|
||||
\ 'sienna2': '#ee7942',
|
||||
\ 'sienna3': '#cd6839',
|
||||
\ 'sienna4': '#8b4726',
|
||||
\ 'burlywood1': '#ffd39b',
|
||||
\ 'burlywood2': '#eec591',
|
||||
\ 'burlywood3': '#cdaa7d',
|
||||
\ 'burlywood4': '#8b7355',
|
||||
\ 'wheat1': '#ffe7ba',
|
||||
\ 'wheat2': '#eed8ae',
|
||||
\ 'wheat3': '#cdba96',
|
||||
\ 'wheat4': '#8b7e66',
|
||||
\ 'tan1': '#ffa54f',
|
||||
\ 'tan2': '#ee9a49',
|
||||
\ 'tan3': '#cd853f',
|
||||
\ 'tan4': '#8b5a2b',
|
||||
\ 'chocolate1': '#ff7f24',
|
||||
\ 'chocolate2': '#ee7621',
|
||||
\ 'chocolate3': '#cd661d',
|
||||
\ 'chocolate4': '#8b4513',
|
||||
\ 'firebrick1': '#ff3030',
|
||||
\ 'firebrick2': '#ee2c2c',
|
||||
\ 'firebrick3': '#cd2626',
|
||||
\ 'firebrick4': '#8b1a1a',
|
||||
\ 'brown1': '#ff4040',
|
||||
\ 'brown2': '#ee3b3b',
|
||||
\ 'brown3': '#cd3333',
|
||||
\ 'brown4': '#8b2323',
|
||||
\ 'salmon1': '#ff8c69',
|
||||
\ 'salmon2': '#ee8262',
|
||||
\ 'salmon3': '#cd7054',
|
||||
\ 'salmon4': '#8b4c39',
|
||||
\ 'lightsalmon1': '#ffa07a',
|
||||
\ 'lightsalmon2': '#ee9572',
|
||||
\ 'lightsalmon3': '#cd8162',
|
||||
\ 'lightsalmon4': '#8b5742',
|
||||
\ 'orange1': '#ffa500',
|
||||
\ 'orange2': '#ee9a00',
|
||||
\ 'orange3': '#cd8500',
|
||||
\ 'orange4': '#8b5a00',
|
||||
\ 'darkorange1': '#ff7f00',
|
||||
\ 'darkorange2': '#ee7600',
|
||||
\ 'darkorange3': '#cd6600',
|
||||
\ 'darkorange4': '#8b4500',
|
||||
\ 'coral1': '#ff7256',
|
||||
\ 'coral2': '#ee6a50',
|
||||
\ 'coral3': '#cd5b45',
|
||||
\ 'coral4': '#8b3e2f',
|
||||
\ 'tomato1': '#ff6347',
|
||||
\ 'tomato2': '#ee5c42',
|
||||
\ 'tomato3': '#cd4f39',
|
||||
\ 'tomato4': '#8b3626',
|
||||
\ 'orangered1': '#ff4500',
|
||||
\ 'orangered2': '#ee4000',
|
||||
\ 'orangered3': '#cd3700',
|
||||
\ 'orangered4': '#8b2500',
|
||||
\ 'red1': '#ff0000',
|
||||
\ 'red2': '#ee0000',
|
||||
\ 'red3': '#cd0000',
|
||||
\ 'red4': '#8b0000',
|
||||
\ 'deeppink1': '#ff1493',
|
||||
\ 'deeppink2': '#ee1289',
|
||||
\ 'deeppink3': '#cd1076',
|
||||
\ 'deeppink4': '#8b0a50',
|
||||
\ 'hotpink1': '#ff6eb4',
|
||||
\ 'hotpink2': '#ee6aa7',
|
||||
\ 'hotpink3': '#cd6090',
|
||||
\ 'hotpink4': '#8b3a62',
|
||||
\ 'pink1': '#ffb5c5',
|
||||
\ 'pink2': '#eea9b8',
|
||||
\ 'pink3': '#cd919e',
|
||||
\ 'pink4': '#8b636c',
|
||||
\ 'lightpink1': '#ffaeb9',
|
||||
\ 'lightpink2': '#eea2ad',
|
||||
\ 'lightpink3': '#cd8c95',
|
||||
\ 'lightpink4': '#8b5f65',
|
||||
\ 'palevioletred1': '#ff82ab',
|
||||
\ 'palevioletred2': '#ee799f',
|
||||
\ 'palevioletred3': '#cd6889',
|
||||
\ 'palevioletred4': '#8b475d',
|
||||
\ 'maroon1': '#ff34b3',
|
||||
\ 'maroon2': '#ee30a7',
|
||||
\ 'maroon3': '#cd2990',
|
||||
\ 'maroon4': '#8b1c62',
|
||||
\ 'violetred1': '#ff3e96',
|
||||
\ 'violetred2': '#ee3a8c',
|
||||
\ 'violetred3': '#cd3278',
|
||||
\ 'violetred4': '#8b2252',
|
||||
\ 'magenta1': '#ff00ff',
|
||||
\ 'magenta2': '#ee00ee',
|
||||
\ 'magenta3': '#cd00cd',
|
||||
\ 'magenta4': '#8b008b',
|
||||
\ 'orchid1': '#ff83fa',
|
||||
\ 'orchid2': '#ee7ae9',
|
||||
\ 'orchid3': '#cd69c9',
|
||||
\ 'orchid4': '#8b4789',
|
||||
\ 'plum1': '#ffbbff',
|
||||
\ 'plum2': '#eeaeee',
|
||||
\ 'plum3': '#cd96cd',
|
||||
\ 'plum4': '#8b668b',
|
||||
\ 'mediumorchid1': '#e066ff',
|
||||
\ 'mediumorchid2': '#d15fee',
|
||||
\ 'mediumorchid3': '#b452cd',
|
||||
\ 'mediumorchid4': '#7a378b',
|
||||
\ 'darkorchid1': '#bf3eff',
|
||||
\ 'darkorchid2': '#b23aee',
|
||||
\ 'darkorchid3': '#9a32cd',
|
||||
\ 'darkorchid4': '#68228b',
|
||||
\ 'purple1': '#9b30ff',
|
||||
\ 'purple2': '#912cee',
|
||||
\ 'purple3': '#7d26cd',
|
||||
\ 'purple4': '#551a8b',
|
||||
\ 'mediumpurple1': '#ab82ff',
|
||||
\ 'mediumpurple2': '#9f79ee',
|
||||
\ 'mediumpurple3': '#8968cd',
|
||||
\ 'mediumpurple4': '#5d478b',
|
||||
\ 'thistle1': '#ffe1ff',
|
||||
\ 'thistle2': '#eed2ee',
|
||||
\ 'thistle3': '#cdb5cd',
|
||||
\ 'thistle4': '#8b7b8b',
|
||||
\ 'gray0': '#000000',
|
||||
\ 'grey0': '#000000',
|
||||
\ 'gray1': '#030303',
|
||||
\ 'grey1': '#030303',
|
||||
\ 'gray2': '#050505',
|
||||
\ 'grey2': '#050505',
|
||||
\ 'gray3': '#080808',
|
||||
\ 'grey3': '#080808',
|
||||
\ 'gray4': '#0a0a0a',
|
||||
\ 'grey4': '#0a0a0a',
|
||||
\ 'gray5': '#0d0d0d',
|
||||
\ 'grey5': '#0d0d0d',
|
||||
\ 'gray6': '#0f0f0f',
|
||||
\ 'grey6': '#0f0f0f',
|
||||
\ 'gray7': '#121212',
|
||||
\ 'grey7': '#121212',
|
||||
\ 'gray8': '#141414',
|
||||
\ 'grey8': '#141414',
|
||||
\ 'gray9': '#171717',
|
||||
\ 'grey9': '#171717',
|
||||
\ 'gray10': '#1a1a1a',
|
||||
\ 'grey10': '#1a1a1a',
|
||||
\ 'gray11': '#1c1c1c',
|
||||
\ 'grey11': '#1c1c1c',
|
||||
\ 'gray12': '#1f1f1f',
|
||||
\ 'grey12': '#1f1f1f',
|
||||
\ 'gray13': '#212121',
|
||||
\ 'grey13': '#212121',
|
||||
\ 'gray14': '#242424',
|
||||
\ 'grey14': '#242424',
|
||||
\ 'gray15': '#262626',
|
||||
\ 'grey15': '#262626',
|
||||
\ 'gray16': '#292929',
|
||||
\ 'grey16': '#292929',
|
||||
\ 'gray17': '#2b2b2b',
|
||||
\ 'grey17': '#2b2b2b',
|
||||
\ 'gray18': '#2e2e2e',
|
||||
\ 'grey18': '#2e2e2e',
|
||||
\ 'gray19': '#303030',
|
||||
\ 'grey19': '#303030',
|
||||
\ 'gray20': '#333333',
|
||||
\ 'grey20': '#333333',
|
||||
\ 'gray21': '#363636',
|
||||
\ 'grey21': '#363636',
|
||||
\ 'gray22': '#383838',
|
||||
\ 'grey22': '#383838',
|
||||
\ 'gray23': '#3b3b3b',
|
||||
\ 'grey23': '#3b3b3b',
|
||||
\ 'gray24': '#3d3d3d',
|
||||
\ 'grey24': '#3d3d3d',
|
||||
\ 'gray25': '#404040',
|
||||
\ 'grey25': '#404040',
|
||||
\ 'gray26': '#424242',
|
||||
\ 'grey26': '#424242',
|
||||
\ 'gray27': '#454545',
|
||||
\ 'grey27': '#454545',
|
||||
\ 'gray28': '#474747',
|
||||
\ 'grey28': '#474747',
|
||||
\ 'gray29': '#4a4a4a',
|
||||
\ 'grey29': '#4a4a4a',
|
||||
\ 'gray30': '#4d4d4d',
|
||||
\ 'grey30': '#4d4d4d',
|
||||
\ 'gray31': '#4f4f4f',
|
||||
\ 'grey31': '#4f4f4f',
|
||||
\ 'gray32': '#525252',
|
||||
\ 'grey32': '#525252',
|
||||
\ 'gray33': '#545454',
|
||||
\ 'grey33': '#545454',
|
||||
\ 'gray34': '#575757',
|
||||
\ 'grey34': '#575757',
|
||||
\ 'gray35': '#595959',
|
||||
\ 'grey35': '#595959',
|
||||
\ 'gray36': '#5c5c5c',
|
||||
\ 'grey36': '#5c5c5c',
|
||||
\ 'gray37': '#5e5e5e',
|
||||
\ 'grey37': '#5e5e5e',
|
||||
\ 'gray38': '#616161',
|
||||
\ 'grey38': '#616161',
|
||||
\ 'gray39': '#636363',
|
||||
\ 'grey39': '#636363',
|
||||
\ 'gray40': '#666666',
|
||||
\ 'grey40': '#666666',
|
||||
\ 'gray41': '#696969',
|
||||
\ 'grey41': '#696969',
|
||||
\ 'gray42': '#6b6b6b',
|
||||
\ 'grey42': '#6b6b6b',
|
||||
\ 'gray43': '#6e6e6e',
|
||||
\ 'grey43': '#6e6e6e',
|
||||
\ 'gray44': '#707070',
|
||||
\ 'grey44': '#707070',
|
||||
\ 'gray45': '#737373',
|
||||
\ 'grey45': '#737373',
|
||||
\ 'gray46': '#757575',
|
||||
\ 'grey46': '#757575',
|
||||
\ 'gray47': '#787878',
|
||||
\ 'grey47': '#787878',
|
||||
\ 'gray48': '#7a7a7a',
|
||||
\ 'grey48': '#7a7a7a',
|
||||
\ 'gray49': '#7d7d7d',
|
||||
\ 'grey49': '#7d7d7d',
|
||||
\ 'gray50': '#7f7f7f',
|
||||
\ 'grey50': '#7f7f7f',
|
||||
\ 'gray51': '#828282',
|
||||
\ 'grey51': '#828282',
|
||||
\ 'gray52': '#858585',
|
||||
\ 'grey52': '#858585',
|
||||
\ 'gray53': '#878787',
|
||||
\ 'grey53': '#878787',
|
||||
\ 'gray54': '#8a8a8a',
|
||||
\ 'grey54': '#8a8a8a',
|
||||
\ 'gray55': '#8c8c8c',
|
||||
\ 'grey55': '#8c8c8c',
|
||||
\ 'gray56': '#8f8f8f',
|
||||
\ 'grey56': '#8f8f8f',
|
||||
\ 'gray57': '#919191',
|
||||
\ 'grey57': '#919191',
|
||||
\ 'gray58': '#949494',
|
||||
\ 'grey58': '#949494',
|
||||
\ 'gray59': '#969696',
|
||||
\ 'grey59': '#969696',
|
||||
\ 'gray60': '#999999',
|
||||
\ 'grey60': '#999999',
|
||||
\ 'gray61': '#9c9c9c',
|
||||
\ 'grey61': '#9c9c9c',
|
||||
\ 'gray62': '#9e9e9e',
|
||||
\ 'grey62': '#9e9e9e',
|
||||
\ 'gray63': '#a1a1a1',
|
||||
\ 'grey63': '#a1a1a1',
|
||||
\ 'gray64': '#a3a3a3',
|
||||
\ 'grey64': '#a3a3a3',
|
||||
\ 'gray65': '#a6a6a6',
|
||||
\ 'grey65': '#a6a6a6',
|
||||
\ 'gray66': '#a8a8a8',
|
||||
\ 'grey66': '#a8a8a8',
|
||||
\ 'gray67': '#ababab',
|
||||
\ 'grey67': '#ababab',
|
||||
\ 'gray68': '#adadad',
|
||||
\ 'grey68': '#adadad',
|
||||
\ 'gray69': '#b0b0b0',
|
||||
\ 'grey69': '#b0b0b0',
|
||||
\ 'gray70': '#b3b3b3',
|
||||
\ 'grey70': '#b3b3b3',
|
||||
\ 'gray71': '#b5b5b5',
|
||||
\ 'grey71': '#b5b5b5',
|
||||
\ 'gray72': '#b8b8b8',
|
||||
\ 'grey72': '#b8b8b8',
|
||||
\ 'gray73': '#bababa',
|
||||
\ 'grey73': '#bababa',
|
||||
\ 'gray74': '#bdbdbd',
|
||||
\ 'grey74': '#bdbdbd',
|
||||
\ 'gray75': '#bfbfbf',
|
||||
\ 'grey75': '#bfbfbf',
|
||||
\ 'gray76': '#c2c2c2',
|
||||
\ 'grey76': '#c2c2c2',
|
||||
\ 'gray77': '#c4c4c4',
|
||||
\ 'grey77': '#c4c4c4',
|
||||
\ 'gray78': '#c7c7c7',
|
||||
\ 'grey78': '#c7c7c7',
|
||||
\ 'gray79': '#c9c9c9',
|
||||
\ 'grey79': '#c9c9c9',
|
||||
\ 'gray80': '#cccccc',
|
||||
\ 'grey80': '#cccccc',
|
||||
\ 'gray81': '#cfcfcf',
|
||||
\ 'grey81': '#cfcfcf',
|
||||
\ 'gray82': '#d1d1d1',
|
||||
\ 'grey82': '#d1d1d1',
|
||||
\ 'gray83': '#d4d4d4',
|
||||
\ 'grey83': '#d4d4d4',
|
||||
\ 'gray84': '#d6d6d6',
|
||||
\ 'grey84': '#d6d6d6',
|
||||
\ 'gray85': '#d9d9d9',
|
||||
\ 'grey85': '#d9d9d9',
|
||||
\ 'gray86': '#dbdbdb',
|
||||
\ 'grey86': '#dbdbdb',
|
||||
\ 'gray87': '#dedede',
|
||||
\ 'grey87': '#dedede',
|
||||
\ 'gray88': '#e0e0e0',
|
||||
\ 'grey88': '#e0e0e0',
|
||||
\ 'gray89': '#e3e3e3',
|
||||
\ 'grey89': '#e3e3e3',
|
||||
\ 'gray90': '#e5e5e5',
|
||||
\ 'grey90': '#e5e5e5',
|
||||
\ 'gray91': '#e8e8e8',
|
||||
\ 'grey91': '#e8e8e8',
|
||||
\ 'gray92': '#ebebeb',
|
||||
\ 'grey92': '#ebebeb',
|
||||
\ 'gray93': '#ededed',
|
||||
\ 'grey93': '#ededed',
|
||||
\ 'gray94': '#f0f0f0',
|
||||
\ 'grey94': '#f0f0f0',
|
||||
\ 'gray95': '#f2f2f2',
|
||||
\ 'grey95': '#f2f2f2',
|
||||
\ 'gray96': '#f5f5f5',
|
||||
\ 'grey96': '#f5f5f5',
|
||||
\ 'gray97': '#f7f7f7',
|
||||
\ 'grey97': '#f7f7f7',
|
||||
\ 'gray98': '#fafafa',
|
||||
\ 'grey98': '#fafafa',
|
||||
\ 'gray99': '#fcfcfc',
|
||||
\ 'grey99': '#fcfcfc',
|
||||
\ 'gray100': '#ffffff',
|
||||
\ 'grey100': '#ffffff',
|
||||
\ 'dark grey': '#a9a9a9',
|
||||
\ 'darkgrey': '#a9a9a9',
|
||||
\ 'dark gray': '#a9a9a9',
|
||||
\ 'darkgray': '#a9a9a9',
|
||||
\ 'dark blue': '#00008b',
|
||||
\ 'darkblue': '#00008b',
|
||||
\ 'dark cyan': '#008b8b',
|
||||
\ 'darkcyan': '#008b8b',
|
||||
\ 'dark magenta': '#8b008b',
|
||||
\ 'darkmagenta': '#8b008b',
|
||||
\ 'dark red': '#8b0000',
|
||||
\ 'darkred': '#8b0000',
|
||||
\ 'light green': '#90ee90',
|
||||
\ 'lightgreen': '#90ee90',
|
||||
\ 'crimson': '#dc143c',
|
||||
\ 'indigo': '#4b0082',
|
||||
\ 'olive': '#808000',
|
||||
\ 'rebecca purple': '#663399',
|
||||
\ 'rebeccapurple': '#663399',
|
||||
\ 'silver': '#c0c0c0',
|
||||
\ 'teal': '#008080'
|
||||
\ }, 'keep')
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
"vim: sw=4
|
||||
@@ -226,7 +226,13 @@ fu! Result(err)
|
||||
endif
|
||||
endfu
|
||||
|
||||
call Test_check_colors()
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
try
|
||||
call Test_check_colors()
|
||||
catch
|
||||
echohl ErrorMsg
|
||||
echomsg v:exception
|
||||
echohl NONE
|
||||
finally
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
endtry
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" The default vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2020 Sep 30
|
||||
" Last change: 2021 Nov 17
|
||||
"
|
||||
" This is loaded if no vimrc file was found.
|
||||
" Except when Vim is run with "-u NONE" or "-C".
|
||||
@@ -96,7 +96,7 @@ if 1
|
||||
filetype plugin indent on
|
||||
|
||||
" Put these in an autocmd group, so that you can revert them with:
|
||||
" ":augroup vimStartup | au! | augroup END"
|
||||
" ":augroup vimStartup | exe 'au!' | augroup END"
|
||||
augroup vimStartup
|
||||
au!
|
||||
|
||||
@@ -111,6 +111,18 @@ if 1
|
||||
|
||||
augroup END
|
||||
|
||||
" Quite a few people accidentally type "q:" instead of ":q" and get confused
|
||||
" by the command line window. Give a hint about how to get out.
|
||||
" If you don't like this you can put this in your vimrc:
|
||||
" ":augroup vimHints | exe 'au!' | augroup END"
|
||||
augroup vimHints
|
||||
au!
|
||||
autocmd CmdwinEnter *
|
||||
\ echohl Todo |
|
||||
\ echo 'You discovered the command-line window! You can close it with ":q".' |
|
||||
\ echohl None
|
||||
augroup END
|
||||
|
||||
endif
|
||||
|
||||
" Switch syntax highlighting on when the terminal has colors or when using the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
||||
*autocmd.txt* For Vim version 8.2. Last change: 2021 Nov 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -83,7 +83,7 @@ triggered.
|
||||
}
|
||||
|
||||
Note: The ":autocmd" command can only be followed by another command when the
|
||||
'|' appears before {cmd}. This works: >
|
||||
'|' appears where the pattern is expected. This works: >
|
||||
:augroup mine | au! BufRead | augroup END
|
||||
But this sees "augroup" as part of the defined command: >
|
||||
:augroup mine | au! BufRead * | augroup END
|
||||
@@ -348,6 +348,7 @@ Name triggered by ~
|
||||
|
||||
|WinNew| after creating a new window
|
||||
|TabNew| after creating a new tab page
|
||||
|WinClosed| after closing a window
|
||||
|TabClosed| after closing a tab page
|
||||
|WinEnter| after entering another window
|
||||
|WinLeave| before leaving a window
|
||||
@@ -708,7 +709,7 @@ EncodingChanged Fires off after the 'encoding' option has been
|
||||
*FileAppendCmd*
|
||||
FileAppendCmd Before appending to a file. Should do the
|
||||
appending to the file. Use the '[ and ']
|
||||
marks for the range of lines.|Cmd-event|
|
||||
marks for the range of lines. |Cmd-event|
|
||||
*FileAppendPost*
|
||||
FileAppendPost After appending to a file.
|
||||
*FileAppendPre*
|
||||
@@ -836,7 +837,7 @@ FilterReadPre Before reading a file from a filter command.
|
||||
*FilterWritePost*
|
||||
FilterWritePost After writing a file for a filter command or
|
||||
making a diff with an external diff (see
|
||||
DiffUpdated for internal diff).
|
||||
|DiffUpdated| for internal diff).
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer as with FilterWritePre.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
@@ -930,18 +931,23 @@ MenuPopup Just before showing the popup menu (under the
|
||||
*ModeChanged*
|
||||
ModeChanged After changing the mode. The pattern is
|
||||
matched against `'old_mode:new_mode'`, for
|
||||
example match against `i:*` to simulate
|
||||
|InsertLeave|.
|
||||
example match against `*:c*` to simulate
|
||||
|CmdlineEnter|.
|
||||
The following values of |v:event| are set:
|
||||
old_mode The mode before it changed.
|
||||
new_mode The new mode as also returned
|
||||
by |mode()|.
|
||||
by |mode()| called with a
|
||||
non-zero argument.
|
||||
When ModeChanged is triggered, old_mode will
|
||||
have the value of new_mode when the event was
|
||||
last triggered.
|
||||
This will be triggered on every minor mode
|
||||
change.
|
||||
Usage example to use relative line numbers
|
||||
when entering Visual mode: >
|
||||
:autocmd ModeChanged *:v set relativenumber
|
||||
:au ModeChanged [vV\x16]*:* let &l:rnu = mode() =~# '^[vV\x16]'
|
||||
:au ModeChanged *:[vV\x16]* let &l:rnu = mode() =~# '^[vV\x16]'
|
||||
:au WinEnter,WinLeave * let &l:rnu = mode() =~# '^[vV\x16]'
|
||||
< *OptionSet*
|
||||
OptionSet After setting an option. The pattern is
|
||||
matched against the long option name.
|
||||
@@ -1195,9 +1201,9 @@ TextYankPost After text has been yanked or deleted in the
|
||||
register, as a list of lines,
|
||||
like with: >
|
||||
getreg(r, 1, 1)
|
||||
< regname Name of the |register| or
|
||||
empty string for the unnamed
|
||||
register.
|
||||
< regname Name of the register or empty
|
||||
string for the unnamed
|
||||
register, see |registers|.
|
||||
regtype Type of the register, see
|
||||
|getregtype()|.
|
||||
visual True if the operation is
|
||||
@@ -1275,6 +1281,12 @@ VimResume When the Vim instance is resumed after being
|
||||
VimSuspend When the Vim instance is suspended. Only when
|
||||
CTRL-Z was typed inside Vim, not when the
|
||||
SIGSTOP or SIGTSTP signal was sent to Vim.
|
||||
*WinClosed*
|
||||
WinClosed After closing a window. The pattern is
|
||||
matched against the |window-ID|. Both
|
||||
<amatch> and <afile> are set to the
|
||||
|window-ID|. Non-recursive (event cannot
|
||||
trigger itself).
|
||||
*WinEnter*
|
||||
WinEnter After entering another window. Not done for
|
||||
the first window, when Vim has just started.
|
||||
|
||||
@@ -1184,9 +1184,6 @@ a register, a paste on a visual selected area will paste that single line on
|
||||
each of the selected lines (thus replacing the blockwise selected region by a
|
||||
block of the pasted line).
|
||||
|
||||
Use |zP|/|zp| to paste a blockwise yanked register without appending trailing
|
||||
spaces.
|
||||
|
||||
*blockwise-register*
|
||||
If you use a blockwise Visual mode command to get the text into the register,
|
||||
the block of text will be inserted before ("P") or after ("p") the cursor
|
||||
@@ -1197,6 +1194,9 @@ this happen. However, if the width of the block is not a multiple of a <Tab>
|
||||
width and the text after the inserted block contains <Tab>s, that text may be
|
||||
misaligned.
|
||||
|
||||
Use |zP|/|zp| to paste a blockwise yanked register without appending trailing
|
||||
spaces.
|
||||
|
||||
Note that after a characterwise yank command, Vim leaves the cursor on the
|
||||
first yanked character that is closest to the start of the buffer. This means
|
||||
that "yl" doesn't move the cursor, but "yh" moves the cursor one character
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*channel.txt* For Vim version 8.2. Last change: 2020 Oct 17
|
||||
*channel.txt* For Vim version 8.2. Last change: 2021 Nov 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -101,7 +101,7 @@ Instead of giving a callback with every send call, it can also be specified
|
||||
when opening the channel: >
|
||||
call ch_close(channel)
|
||||
let channel = ch_open('localhost:8765', {'callback': "MyHandler"})
|
||||
call ch_sendexpr(channel, 'hello!')
|
||||
call ch_sendexpr(channel, 'hello channel!')
|
||||
|
||||
When trying out channels it's useful to see what is going on. You can tell
|
||||
Vim to write lines in log file: >
|
||||
@@ -132,8 +132,9 @@ When using an IPv6 address, enclose it within square brackets. E.g.,
|
||||
"raw" - Use raw messages
|
||||
*channel-callback* *E921*
|
||||
"callback" A function that is called when a message is received that is
|
||||
not handled otherwise. It gets two arguments: the channel
|
||||
and the received message. Example: >
|
||||
not handled otherwise (e.g. a JSON message with ID zero). It
|
||||
gets two arguments: the channel and the received message.
|
||||
Example: >
|
||||
func Handle(channel, msg)
|
||||
echo 'Received: ' . a:msg
|
||||
endfunc
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 8.2. Last change: 2021 Aug 06
|
||||
*cmdline.txt* For Vim version 8.2. Last change: 2021 Dec 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -803,7 +803,7 @@ three lines: >
|
||||
3:d<CR> is translated into: .,.+2d<CR>
|
||||
<
|
||||
|
||||
Visual Mode and Range
|
||||
Visual Mode and Range
|
||||
*v_:*
|
||||
{Visual}: Starts a command-line with the Visual selected lines as a
|
||||
range. The code `:'<,'>` is used for this range, which makes
|
||||
@@ -919,15 +919,19 @@ Note: these are typed literally, they are not special keys!
|
||||
*:<amatch>* *<amatch>*
|
||||
<amatch> When executing autocommands, is replaced with the match for
|
||||
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
|
||||
It differs from <afile> when the file name isn't used to
|
||||
match with (for FileType, Syntax and SpellFileMissing
|
||||
events).
|
||||
When the match is with a file name, it is expanded to the
|
||||
full path.
|
||||
*:<sfile>* *<sfile>*
|
||||
<sfile> When executing a ":source" command, is replaced with the
|
||||
file name of the sourced file. *E498*
|
||||
When executing a function, is replaced with the call stack,
|
||||
as with <stack> (this is for backwards compatibility, using
|
||||
<stack> is preferred).
|
||||
When executing a legacy function, is replaced with the call
|
||||
stack, as with <stack> (this is for backwards
|
||||
compatibility, using <stack> is preferred).
|
||||
In Vim9 script using <sfile> in a function gives error
|
||||
*E1245* .
|
||||
Note that filename-modifiers are useless when <sfile> is
|
||||
not used inside a script.
|
||||
*:<stack>* *<stack>*
|
||||
|
||||
@@ -351,8 +351,8 @@ $ DO 0x24 36 DOLLAR SIGN
|
||||
þ th 0xfe 254 LATIN SMALL LETTER THORN (Icelandic)
|
||||
ÿ y: 0xff 255 LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
|
||||
If your Vim is compiled with |multibyte| support and you are using a multibyte
|
||||
'encoding', Vim provides this enhanced set of additional digraphs:
|
||||
If you are using a |multibyte| 'encoding', Vim provides this enhanced set of
|
||||
additional digraphs:
|
||||
|
||||
*digraph-table-mbyte*
|
||||
char digraph hex dec official name ~
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
||||
*editing.txt* For Vim version 8.2. Last change: 2021 Dec 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1298,11 +1298,12 @@ Changing directory fails when the current buffer is modified, the '.' flag is
|
||||
present in 'cpoptions' and "!" is not used in the command.
|
||||
|
||||
*:cd* *E747* *E472*
|
||||
:cd[!] On non-Unix systems: Print the current directory
|
||||
name. On Unix systems: Change the current directory
|
||||
to the home directory. Use |:pwd| to print the
|
||||
current directory on all systems.
|
||||
On Unix systems: clear any window-local directory.
|
||||
:cd[!] On non-Unix systems when 'cdhome' is off: Print the
|
||||
current directory name.
|
||||
Otherwise: Change the current directory to the home
|
||||
directory. Clear any window-local directory.
|
||||
Use |:pwd| to print the current directory on all
|
||||
systems.
|
||||
|
||||
:cd[!] {path} Change the current directory to {path}.
|
||||
If {path} is relative, it is searched for in the
|
||||
@@ -1329,26 +1330,26 @@ present in 'cpoptions' and "!" is not used in the command.
|
||||
other tabs and for windows in the current tab that
|
||||
have their own window-local directory.
|
||||
|
||||
*:tch* *:tchdir*
|
||||
:tch[dir][!] Same as |:tcd|.
|
||||
|
||||
*:tcd-*
|
||||
:tc[d][!] - Change to the previous current directory, before the
|
||||
last ":tcd {path}" command.
|
||||
|
||||
*:tch* *:tchdir*
|
||||
:tch[dir][!] Same as |:tcd|.
|
||||
|
||||
*:lc* *:lcd*
|
||||
:lc[d][!] {path} Like |:cd|, but only set the current directory when
|
||||
the cursor is in the current window. The current
|
||||
directory for other windows is not changed, switching
|
||||
to another window will stop using {path}.
|
||||
|
||||
*:lch* *:lchdir*
|
||||
:lch[dir][!] Same as |:lcd|.
|
||||
|
||||
*:lcd-*
|
||||
:lcd[!] - Change to the previous current directory, before the
|
||||
last ":lcd {path}" command.
|
||||
|
||||
*:lch* *:lchdir*
|
||||
:lch[dir][!] Same as |:lcd|.
|
||||
|
||||
*:pw* *:pwd* *E187*
|
||||
:pw[d] Print the current directory name.
|
||||
Also see |getcwd()|.
|
||||
@@ -1375,14 +1376,14 @@ change anything for the current directory.
|
||||
When a |:lcd| command has been used for a window, the specified directory
|
||||
becomes the current directory for that window. Windows where the |:lcd|
|
||||
command has not been used stick to the global or tab-local current directory.
|
||||
When jumping to another window the current directory will become the last
|
||||
When jumping to another window the current directory is changed to the last
|
||||
specified local current directory. If none was specified, the global or
|
||||
tab-local current directory is used.
|
||||
|
||||
When a |:tcd| command has been used for a tab page, the specified directory
|
||||
becomes the current directory for the current tab page and the current window.
|
||||
The current directory of other tab pages is not affected. When jumping to
|
||||
another tab page, the current directory will become the last specified local
|
||||
another tab page, the current directory is changed to the last specified local
|
||||
directory for that tab page. If the current tab has no local current directory
|
||||
the global current directory is used.
|
||||
|
||||
@@ -1676,6 +1677,11 @@ It is also possible that you modified the file yourself, from another edit
|
||||
session or with another command (e.g., a filter command). Then you will know
|
||||
which version of the file you want to keep.
|
||||
|
||||
The accuracy of the time check depends on the filesystem. On Unix it is
|
||||
usually sub-second. With old file sytems and on MS-Windows it is normally one
|
||||
second. Use has('nanotime') check if sub-second time stamp checks are
|
||||
available.
|
||||
|
||||
There is one situation where you get the message while there is nothing wrong:
|
||||
On a Win32 system on the day daylight saving time starts. There is something
|
||||
in the Win32 libraries that confuses Vim about the hour time difference. The
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
||||
*eval.txt* For Vim version 8.2. Last change: 2021 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1840,6 +1840,43 @@ v:collate The current locale setting for collation order of the runtime
|
||||
command.
|
||||
See |multi-lang|.
|
||||
|
||||
*v:colornames*
|
||||
v:colornames A dictionary that maps color names to hex color strings. These
|
||||
color names can be used with the |highlight-guifg|,
|
||||
|highlight-guibg|, and |highlight-guisp| parameters. Updating
|
||||
an entry in v:colornames has no immediate effect on the syntax
|
||||
highlighting. The highlight commands (probably in a
|
||||
colorscheme script) need to be re-evaluated in order to use
|
||||
the updated color values. For example: >
|
||||
|
||||
:let v:colornames['fuscia'] = '#cf3ab4'
|
||||
:let v:colornames['mauve'] = '#915f6d'
|
||||
:highlight Normal guifg=fuscia guibg=mauve
|
||||
<
|
||||
This cannot be used to override the |cterm-colors| but it can
|
||||
be used to override other colors. For example, the X11 colors
|
||||
defined in the `colors/lists/default.vim` (previously defined
|
||||
in |rgb.txt|). When defining new color names in a plugin, the
|
||||
recommended practice is to set a color entry only when it does
|
||||
not already exist. For example: >
|
||||
|
||||
:call extend(v:colornames, {
|
||||
\ 'fuscia': '#cf3ab4',
|
||||
\ 'mauve': '#915f6d,
|
||||
\ }, 'keep')
|
||||
<
|
||||
Using |extend()| with the 'keep' option updates each color only
|
||||
if it did not exist in |v:colornames|. Doing so allows the
|
||||
user to choose the precise color value for a common name
|
||||
by setting it in their |.vimrc|.
|
||||
|
||||
It is possible to remove entries from this dictionary but
|
||||
doing so is NOT recommended, because it is disruptive to
|
||||
other scripts. It is also unlikely to achieve the desired
|
||||
result because the |:colorscheme| and |:highlight| commands will
|
||||
both automatically load all `colors/lists/default.vim` color
|
||||
scripts.
|
||||
|
||||
*v:completed_item* *completed_item-variable*
|
||||
v:completed_item
|
||||
|Dictionary| containing the |complete-items| for the most
|
||||
@@ -2253,6 +2290,21 @@ v:shell_error Result of the last shell command. When non-zero, the last
|
||||
< "shell_error" also works, for backwards compatibility, unless
|
||||
|scriptversion| is 3 or higher.
|
||||
|
||||
*v:sizeofint* *sizeofint-variable*
|
||||
v:sizeofint Number of bytes in an int. Depends on how Vim was compiled.
|
||||
This is only useful for deciding whether a test will give the
|
||||
expected result.
|
||||
|
||||
*v:sizeoflong* *sizeoflong-variable*
|
||||
v:sizeoflong Number of bytes in a long. Depends on how Vim was compiled.
|
||||
This is only useful for deciding whether a test will give the
|
||||
expected result.
|
||||
|
||||
*v:sizeofpointer* *sizeofpointer-variable*
|
||||
v:sizeofpointer Number of bytes in a pointer. Depends on how Vim was compiled.
|
||||
This is only useful for deciding whether a test will give the
|
||||
expected result.
|
||||
|
||||
*v:statusmsg* *statusmsg-variable*
|
||||
v:statusmsg Last given status message. It's allowed to set this variable.
|
||||
|
||||
@@ -2549,7 +2601,7 @@ deletebufline({buf}, {first} [, {last}])
|
||||
did_filetype() Number |TRUE| if FileType autocmd event used
|
||||
diff_filler({lnum}) Number diff filler lines about {lnum}
|
||||
diff_hlID({lnum}, {col}) Number diff highlighting at {lnum}/{col}
|
||||
digraph_get({chars}) String get the digraph of {chars}
|
||||
digraph_get({chars}) String get the |digraph| of {chars}
|
||||
digraph_getlist([{listall}]) List get all |digraph|s
|
||||
digraph_set({chars}, {digraph}) Boolean register |digraph|
|
||||
digraph_setlist({digraphlist}) Boolean register multiple |digraph|s
|
||||
@@ -2576,7 +2628,8 @@ extendnew({expr1}, {expr2} [, {expr3}])
|
||||
feedkeys({string} [, {mode}]) Number add key sequence to typeahead buffer
|
||||
filereadable({file}) Number |TRUE| if {file} is a readable file
|
||||
filewritable({file}) Number |TRUE| if {file} is a writable file
|
||||
filter({expr1}, {expr2}) List/Dict remove items from {expr1} where
|
||||
filter({expr1}, {expr2}) List/Dict/Blob/String
|
||||
remove items from {expr1} where
|
||||
{expr2} is 0
|
||||
finddir({name} [, {path} [, {count}]])
|
||||
String find directory {name} in {path}
|
||||
@@ -2681,6 +2734,8 @@ histget({history} [, {index}]) String get the item {index} from a history
|
||||
histnr({history}) Number highest index of a history
|
||||
hlID({name}) Number syntax ID of highlight group {name}
|
||||
hlexists({name}) Number |TRUE| if highlight group {name} exists
|
||||
hlget([{name} [, {resolve}]]) List get highlight group attributes
|
||||
hlset({list}) Number set highlight group attributes
|
||||
hostname() String name of the machine Vim is running on
|
||||
iconv({expr}, {from}, {to}) String convert encoding of {expr}
|
||||
indent({lnum}) Number indent of line {lnum}
|
||||
@@ -2732,14 +2787,16 @@ localtime() Number current time
|
||||
log({expr}) Float natural logarithm (base e) of {expr}
|
||||
log10({expr}) Float logarithm of Float {expr} to base 10
|
||||
luaeval({expr} [, {expr}]) any evaluate |Lua| expression
|
||||
map({expr1}, {expr2}) List/Dict change each item in {expr1} to {expr}
|
||||
map({expr1}, {expr2}) List/Dict/Blob/String
|
||||
change each item in {expr1} to {expr2}
|
||||
maparg({name} [, {mode} [, {abbr} [, {dict}]]])
|
||||
String or Dict
|
||||
rhs of mapping {name} in mode {mode}
|
||||
mapcheck({name} [, {mode} [, {abbr}]])
|
||||
String check for mappings matching {name}
|
||||
mapnew({expr1}, {expr2}) List/Dict like |map()| but creates a new List
|
||||
or Dictionary
|
||||
mapnew({expr1}, {expr2}) List/Dict/Blob/String
|
||||
like |map()| but creates a new List or
|
||||
Dictionary
|
||||
mapset({mode}, {abbr}, {dict}) none restore mapping from |maparg()| result
|
||||
match({expr}, {pat} [, {start} [, {count}]])
|
||||
Number position where {pat} matches in {expr}
|
||||
@@ -4824,10 +4881,11 @@ filewritable({file}) *filewritable()*
|
||||
|
||||
|
||||
filter({expr1}, {expr2}) *filter()*
|
||||
{expr1} must be a |List|, |Blob| or |Dictionary|.
|
||||
{expr1} must be a |List|, |String|, |Blob| or |Dictionary|.
|
||||
For each item in {expr1} evaluate {expr2} and when the result
|
||||
is zero remove the item from the |List| or |Dictionary|. For a
|
||||
|Blob| each byte is removed.
|
||||
is zero or false remove the item from the |List| or
|
||||
|Dictionary|. Similarly for each byte in a |Blob| and each
|
||||
charactor in a |String|.
|
||||
|
||||
{expr2} must be a |string| or |Funcref|.
|
||||
|
||||
@@ -4862,14 +4920,16 @@ filter({expr1}, {expr2}) *filter()*
|
||||
< If you do not use "val" you can leave it out: >
|
||||
call filter(myList, {idx -> idx % 2 == 1})
|
||||
<
|
||||
The operation is done in-place. If you want a |List| or
|
||||
|Dictionary| to remain unmodified make a copy first: >
|
||||
For a |List| and a |Dictionary| the operation is done
|
||||
in-place. If you want it to remain unmodified make a copy
|
||||
first: >
|
||||
:let l = filter(copy(mylist), 'v:val =~ "KEEP"')
|
||||
|
||||
< Returns {expr1}, the |List| , |Blob| or |Dictionary| that was
|
||||
filtered. When an error is encountered while evaluating
|
||||
{expr2} no further items in {expr1} are processed. When
|
||||
{expr2} is a Funcref errors inside a function are ignored,
|
||||
< Returns {expr1}, the |List| or |Dictionary| that was filtered,
|
||||
or a new |Blob| or |String|.
|
||||
When an error is encountered while evaluating {expr2} no
|
||||
further items in {expr1} are processed.
|
||||
When {expr2} is a Funcref errors inside a function are ignored,
|
||||
unless it was defined with the "abort" flag.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
@@ -4928,6 +4988,9 @@ flatten({list} [, {maxdepth}]) *flatten()*
|
||||
:echo flatten([1, [2, [3, 4]], 5], 1)
|
||||
< [1, 2, [3, 4], 5]
|
||||
|
||||
Can also be used as a |method|: >
|
||||
mylist->flatten()
|
||||
<
|
||||
flattennew({list} [, {maxdepth}]) *flattennew()*
|
||||
Like |flatten()| but first make a copy of {list}.
|
||||
|
||||
@@ -5605,7 +5668,7 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
|
||||
buffer buffer names
|
||||
behave :behave suboptions
|
||||
color color schemes
|
||||
command Ex command (and arguments)
|
||||
command Ex command
|
||||
cmdline |cmdline-completion| result
|
||||
compiler compilers
|
||||
cscope |:cscope| suboptions
|
||||
@@ -5700,7 +5763,7 @@ getcursorcharpos([{winid}])
|
||||
< *getcwd()*
|
||||
getcwd([{winnr} [, {tabnr}]])
|
||||
The result is a String, which is the name of the current
|
||||
working directory.
|
||||
working directory. 'autochdir' is ignored.
|
||||
|
||||
With {winnr} return the local current directory of this window
|
||||
in the current tab page. {winnr} can be the window number or
|
||||
@@ -5713,8 +5776,8 @@ getcwd([{winnr} [, {tabnr}]])
|
||||
the working directory of the tabpage.
|
||||
If {winnr} is zero use the current window, if {tabnr} is zero
|
||||
use the current tabpage.
|
||||
Without any arguments, return the working directory of the
|
||||
current window.
|
||||
Without any arguments, return the actual working directory of
|
||||
the current window.
|
||||
Return an empty string if the arguments are invalid.
|
||||
|
||||
Examples: >
|
||||
@@ -5862,8 +5925,8 @@ getline({lnum} [, {end}])
|
||||
digit, |line()| is called to translate the String into a Number.
|
||||
To get the line under the cursor: >
|
||||
getline(".")
|
||||
< When {lnum} is smaller than 1 or bigger than the number of
|
||||
lines in the buffer, an empty string is returned.
|
||||
< When {lnum} is a number smaller than 1 or bigger than the
|
||||
number of lines in the buffer, an empty string is returned.
|
||||
|
||||
When {end} is given the result is a |List| where each item is
|
||||
a line from the current buffer in the range {lnum} to {end},
|
||||
@@ -6325,6 +6388,9 @@ getwininfo([{winid}]) *getwininfo()*
|
||||
otherwise
|
||||
wincol leftmost screen column of the window;
|
||||
"col" from |win_screenpos()|
|
||||
textoff number of columns occupied by any
|
||||
'foldcolumn', 'signcolumn' and line
|
||||
number in front of the text
|
||||
winid |window-ID|
|
||||
winnr window number
|
||||
winrow topmost screen line of the window;
|
||||
@@ -6679,6 +6745,108 @@ hlexists({name}) *hlexists()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetName()->hlexists()
|
||||
<
|
||||
hlget([{name} [, {resolve}]]) *hlget()*
|
||||
Returns a List of all the highlight group attributes. If the
|
||||
optional {name} is specified, then returns a List with only
|
||||
the attributes of the specified highlight group. Returns an
|
||||
empty List if the highlight group {name} is not present.
|
||||
|
||||
If the optional {resolve} argument is set to v:true and the
|
||||
highlight group {name} is linked to another group, then the
|
||||
link is resolved recursively and the attributes of the
|
||||
resolved highlight group are returned.
|
||||
|
||||
Each entry in the returned List is a Dictionary with the
|
||||
following items:
|
||||
cleared boolean flag, set to v:true if the highlight
|
||||
group attributes are cleared or not yet
|
||||
specified. See |highlight-clear|.
|
||||
cterm cterm attributes. See |highlight-cterm|.
|
||||
ctermbg cterm background color.
|
||||
See |highlight-ctermbg|.
|
||||
ctermfg cterm foreground color.
|
||||
See |highlight-ctermfg|.
|
||||
ctermul cterm underline color. See |highlight-ctermul|.
|
||||
default boolean flag, set to v:true if the highlight
|
||||
group link is a default link. See
|
||||
|highlight-default|.
|
||||
font highlight group font. See |highlight-font|.
|
||||
gui gui attributes. See |highlight-gui|.
|
||||
guibg gui background color. See |highlight-guibg|.
|
||||
guifg gui foreground color. See |highlight-guifg|.
|
||||
guisp gui special color. See |highlight-guisp|.
|
||||
id highlight group ID.
|
||||
linksto linked highlight group name.
|
||||
See |:highlight-link|.
|
||||
name highlight group name. See |group-name|.
|
||||
start start terminal keycode. See |highlight-start|.
|
||||
stop stop terminal keycode. See |highlight-stop|.
|
||||
term term attributes. See |highlight-term|.
|
||||
|
||||
The 'term', 'cterm' and 'gui' items in the above Dictionary
|
||||
have a dictionary value with the following optional boolean
|
||||
items: 'bold', 'standout', 'underline', 'undercurl', 'italic',
|
||||
'reverse', 'inverse' and 'strikethrough'.
|
||||
|
||||
Example(s): >
|
||||
:echo hlget()
|
||||
:echo hlget('ModeMsg')
|
||||
:echo hlget('Number', v:true)
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetName()->hlget()
|
||||
<
|
||||
hlset({list}) *hlset()*
|
||||
Creates or modifies the attributes of a List of highlight
|
||||
groups. Each item in {list} is a dictionary containing the
|
||||
attributes of a highlight group. See |hlget()| for the list of
|
||||
supported items in this dictionary.
|
||||
|
||||
In addition to the items described in |hlget()|, the following
|
||||
additional items are supported in the dictionary:
|
||||
|
||||
force boolean flag to force the creation of
|
||||
a link for an existing highlight group
|
||||
with attributes.
|
||||
|
||||
The highlight group is identified using the 'name' item and
|
||||
the 'id' item (if supplied) is ignored. If a highlight group
|
||||
with a specified name doesn't exist, then it is created.
|
||||
Otherwise the attributes of an existing highlight group are
|
||||
modified.
|
||||
|
||||
If an empty dictionary value is used for the 'term' or 'cterm'
|
||||
or 'gui' entries, then the corresponding attributes are
|
||||
cleared. If the 'cleared' item is set to v:true, then all the
|
||||
attributes of the highlight group are cleared.
|
||||
|
||||
The 'linksto' item can be used to link a highlight group to
|
||||
another highlight group. See |:highlight-link|.
|
||||
|
||||
Returns zero for success, -1 for failure.
|
||||
|
||||
Example(s): >
|
||||
" add bold attribute to the Visual highlight group
|
||||
:call hlset([#{name: 'Visual',
|
||||
\ term: #{reverse: 1 , bold: 1}}])
|
||||
:call hlset([#{name: 'Type', guifg: 'DarkGreen'}])
|
||||
:let l = hlget()
|
||||
:call hlset(l)
|
||||
" clear the Search highlight group
|
||||
:call hlset([#{name: 'Search', cleared: v:true}])
|
||||
" clear the 'term' attributes for a highlight group
|
||||
:call hlset([#{name: 'Title', term: {}}])
|
||||
" create the MyHlg group linking it to DiffAdd
|
||||
:call hlset([#{name: 'MyHlg', linksto: 'DiffAdd'}])
|
||||
" remove the MyHlg group link
|
||||
:call hlset([#{name: 'MyHlg', linksto: 'NONE'}])
|
||||
" clear the attributes and a link
|
||||
:call hlset([#{name: 'MyHlg', cleared: v:true,
|
||||
\ linksto: 'NONE'}])
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetAttrList()->hlset()
|
||||
<
|
||||
*hlID()*
|
||||
hlID({name}) The result is a Number, which is the ID of the highlight group
|
||||
@@ -7404,16 +7572,19 @@ luaeval({expr} [, {expr}]) *luaeval()*
|
||||
< {only available when compiled with the |+lua| feature}
|
||||
|
||||
map({expr1}, {expr2}) *map()*
|
||||
{expr1} must be a |List|, |Blob| or |Dictionary|.
|
||||
Replace each item in {expr1} with the result of evaluating
|
||||
{expr2}. For a |Blob| each byte is replaced.
|
||||
{expr1} must be a |List|, |String|, |Blob| or |Dictionary|.
|
||||
When {expr1} is a |List|| or |Dictionary|, replace each
|
||||
item in {expr1} with the result of evaluating {expr2}.
|
||||
For a |Blob| each byte is replaced.
|
||||
For a |String|, each character, including composing
|
||||
characters, is replaced.
|
||||
If the item type changes you may want to use |mapnew()| to
|
||||
create a new List or Dictionary. This is required when using
|
||||
Vim9 script.
|
||||
|
||||
{expr2} must be a |string| or |Funcref|.
|
||||
{expr2} must be a |String| or |Funcref|.
|
||||
|
||||
If {expr2} is a |string|, inside {expr2} |v:val| has the value
|
||||
If {expr2} is a |String|, inside {expr2} |v:val| has the value
|
||||
of the current item. For a |Dictionary| |v:key| has the key
|
||||
of the current item and for a |List| |v:key| has the index of
|
||||
the current item. For a |Blob| |v:key| has the index of the
|
||||
@@ -7443,14 +7614,15 @@ map({expr1}, {expr2}) *map()*
|
||||
< If you do not use "key" you can use a short name: >
|
||||
call map(myDict, {_, val -> 'item: ' . val})
|
||||
<
|
||||
The operation is done in-place. If you want a |List| or
|
||||
|Dictionary| to remain unmodified make a copy first: >
|
||||
The operation is done in-place for a |List| and |Dictionary|.
|
||||
If you want it to remain unmodified make a copy first: >
|
||||
:let tlist = map(copy(mylist), ' v:val . "\t"')
|
||||
|
||||
< Returns {expr1}, the |List|, |Blob| or |Dictionary| that was
|
||||
filtered. When an error is encountered while evaluating
|
||||
{expr2} no further items in {expr1} are processed. When
|
||||
{expr2} is a Funcref errors inside a function are ignored,
|
||||
< Returns {expr1}, the |List| or |Dictionary| that was filtered,
|
||||
or a new |Blob| or |String|.
|
||||
When an error is encountered while evaluating {expr2} no
|
||||
further items in {expr1} are processed.
|
||||
When {expr2} is a Funcref errors inside a function are ignored,
|
||||
unless it was defined with the "abort" flag.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
@@ -7646,6 +7818,7 @@ match({expr}, {pat} [, {start} [, {count}]]) *match()*
|
||||
further down in the text.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->match('word')
|
||||
GetList()->match('word')
|
||||
<
|
||||
*matchadd()* *E798* *E799* *E801* *E957*
|
||||
@@ -7882,8 +8055,10 @@ matchlist({expr}, {pat} [, {start} [, {count}]]) *matchlist()*
|
||||
< Results in: ['acd', 'a', '', 'c', 'd', '', '', '', '', '']
|
||||
When there is no match an empty list is returned.
|
||||
|
||||
You can pass in a List, but that is not very useful.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetList()->matchlist('word')
|
||||
GetText()->matchlist('word')
|
||||
|
||||
matchstr({expr}, {pat} [, {start} [, {count}]]) *matchstr()*
|
||||
Same as |match()|, but return the matched string. Example: >
|
||||
@@ -8324,15 +8499,18 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
field width. If the converted value has fewer bytes
|
||||
than the field width, it will be padded with spaces on
|
||||
the left (or right, if the left-adjustment flag has
|
||||
been given) to fill out the field width.
|
||||
been given) to fill out the field width. For the S
|
||||
conversion the count is in cells.
|
||||
|
||||
.precision
|
||||
An optional precision, in the form of a period '.'
|
||||
followed by an optional digit string. If the digit
|
||||
string is omitted, the precision is taken as zero.
|
||||
This gives the minimum number of digits to appear for
|
||||
d, o, x, and X conversions, or the maximum number of
|
||||
bytes to be printed from a string for s conversions.
|
||||
d, o, x, and X conversions, the maximum number of
|
||||
bytes to be printed from a string for s conversions,
|
||||
or the maximum number of cells to be printed from a
|
||||
string for S conversions.
|
||||
For floating point it is the number of digits after
|
||||
the decimal point.
|
||||
|
||||
@@ -9417,7 +9595,9 @@ searchcount([{options}]) *searchcount()*
|
||||
|getpos()|
|
||||
(default: cursor's position)
|
||||
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetSearchOpts()->searchcount()
|
||||
<
|
||||
searchdecl({name} [, {global} [, {thisblock}]]) *searchdecl()*
|
||||
Search for the declaration of {name}.
|
||||
|
||||
@@ -9600,6 +9780,7 @@ setbufline({buf}, {lnum}, {text}) *setbufline()*
|
||||
For the use of {buf}, see |bufname()| above.
|
||||
|
||||
{lnum} is used like with |setline()|.
|
||||
Use "$" to refer to the last line in buffer {buf}.
|
||||
When {lnum} is just below the last line the {text} will be
|
||||
added below the last line.
|
||||
|
||||
@@ -9648,6 +9829,9 @@ setcellwidths({list}) *setcellwidths()*
|
||||
range overlaps with another.
|
||||
Only characters with value 0x100 and higher can be used.
|
||||
|
||||
If the new value causes 'fillchars' or 'listchars' to become
|
||||
invalid it is rejected and an error is given.
|
||||
|
||||
To clear the overrides pass an empty list: >
|
||||
setcellwidths([]);
|
||||
< You can use the script $VIMRUNTIME/tools/emoji_list.vim to see
|
||||
@@ -10078,7 +10262,7 @@ settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
|
||||
|
||||
Can also be used as a |method|, the base is passed as the
|
||||
fourth argument: >
|
||||
GetValue()->settabvar(tab, winnr, name)
|
||||
GetValue()->settabwinvar(tab, winnr, name)
|
||||
|
||||
settagstack({nr}, {dict} [, {action}]) *settagstack()*
|
||||
Modify the tag stack of the window {nr} using {dict}.
|
||||
@@ -10335,6 +10519,10 @@ sort({list} [, {func} [, {dict}]]) *sort()* *E702*
|
||||
<
|
||||
sound_clear() *sound_clear()*
|
||||
Stop playing all sounds.
|
||||
|
||||
On some Linux systems you may need the libcanberra-pulse
|
||||
package, otherwise sound may not stop.
|
||||
|
||||
{only available when compiled with the |+sound| feature}
|
||||
|
||||
*sound_playevent()*
|
||||
@@ -10387,6 +10575,9 @@ sound_stop({id}) *sound_stop()*
|
||||
Stop playing sound {id}. {id} must be previously returned by
|
||||
`sound_playevent()` or `sound_playfile()`.
|
||||
|
||||
On some Linux systems you may need the libcanberra-pulse
|
||||
package, otherwise sound may not stop.
|
||||
|
||||
On MS-Windows, this does not work for event sound started by
|
||||
`sound_playevent()`. To stop event sounds, use `sound_clear()`.
|
||||
|
||||
@@ -10826,10 +11017,12 @@ strptime({format}, {timestring}) *strptime()*
|
||||
:echo strftime("%c", strptime("%Y%m%d%H%M%S", "19970427115355") + 3600)
|
||||
< Sun Apr 27 12:53:55 1997
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFormat()->strptime(timestring)
|
||||
<
|
||||
Not available on all systems. To check use: >
|
||||
:if exists("*strptime")
|
||||
|
||||
|
||||
strridx({haystack}, {needle} [, {start}]) *strridx()*
|
||||
The result is a Number, which gives the byte index in
|
||||
{haystack} of the last occurrence of the String {needle}.
|
||||
@@ -11098,10 +11291,10 @@ synstack({lnum}, {col}) *synstack()*
|
||||
valid positions.
|
||||
|
||||
system({expr} [, {input}]) *system()* *E677*
|
||||
Get the output of the shell command {expr} as a string. See
|
||||
Get the output of the shell command {expr} as a |String|. See
|
||||
|systemlist()| to get the output as a |List|.
|
||||
|
||||
When {input} is given and is a string this string is written
|
||||
When {input} is given and is a |String| this string is written
|
||||
to a file and passed as stdin to the command. The string is
|
||||
written as-is, you need to take care of using the correct line
|
||||
separators yourself.
|
||||
@@ -11724,9 +11917,9 @@ wildmenumode() *wildmenumode()*
|
||||
win_execute({id}, {command} [, {silent}]) *win_execute()*
|
||||
Like `execute()` but in the context of window {id}.
|
||||
The window will temporarily be made the current window,
|
||||
without triggering autocommands. When executing {command}
|
||||
autocommands will be triggered, this may have unexpected side
|
||||
effects. Use |:noautocmd| if needed.
|
||||
without triggering autocommands or changing directory. When
|
||||
executing {command} autocommands will be triggered, this may
|
||||
have unexpected side effects. Use |:noautocmd| if needed.
|
||||
Example: >
|
||||
call win_execute(winid, 'set syntax=python')
|
||||
< Doing the same with `setwinvar()` would not trigger
|
||||
@@ -11781,7 +11974,9 @@ win_gettype([{nr}]) *win_gettype()*
|
||||
popup window then 'buftype' is "terminal" and win_gettype()
|
||||
returns "popup".
|
||||
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->win_gettype()
|
||||
<
|
||||
win_gotoid({expr}) *win_gotoid()*
|
||||
Go to window with ID {expr}. This may also change the current
|
||||
tabpage.
|
||||
@@ -12236,6 +12431,7 @@ multi_byte_encoding 'encoding' is set to a multibyte encoding.
|
||||
multi_byte_ime Compiled with support for IME input method.
|
||||
multi_lang Compiled with support for multiple languages.
|
||||
mzscheme Compiled with MzScheme interface |mzscheme|.
|
||||
nanotime Compiled with sub-second time stamp checks.
|
||||
netbeans_enabled Compiled with support for |netbeans| and connected.
|
||||
netbeans_intg Compiled with support for |netbeans|.
|
||||
num64 Compiled with 64-bit |Number| support.
|
||||
|
||||
@@ -139,18 +139,19 @@ can be used to overrule the filetype used for certain extensions:
|
||||
|
||||
file name variable ~
|
||||
*.asa g:filetype_asa |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||
*.asm g:asmsyntax |ft-asm-syntax|
|
||||
*.prg g:filetype_prg
|
||||
*.pl g:filetype_pl
|
||||
*.inc g:filetype_inc
|
||||
*.w g:filetype_w |ft-cweb-syntax|
|
||||
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||
*.fs g:filetype_fs |ft-forth-syntax|
|
||||
*.i g:filetype_i |ft-progress-syntax|
|
||||
*.inc g:filetype_inc
|
||||
*.m g:filetype_m |ft-mathematica-syntax|
|
||||
*.p g:filetype_p |ft-pascal-syntax|
|
||||
*.pl g:filetype_pl
|
||||
*.pp g:filetype_pp |ft-pascal-syntax|
|
||||
*.prg g:filetype_prg
|
||||
*.sh g:bash_is_sh |ft-sh-syntax|
|
||||
*.tex g:tex_flavor |ft-tex-plugin|
|
||||
*.w g:filetype_w |ft-cweb-syntax|
|
||||
|
||||
*filetype-ignore*
|
||||
To avoid that certain files are being inspected, the g:ft_ignore_pat variable
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui_w32.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
||||
*gui_w32.txt* For Vim version 8.2. Last change: 2021 Oct 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -323,20 +323,10 @@ These extra colors are also available:
|
||||
Gray, Grey, LightYellow, SeaGreen, Orange, Purple, SlateBlue, Violet,
|
||||
|
||||
*rgb.txt*
|
||||
Additionally, colors defined by a "rgb.txt" file can be used. This file is
|
||||
well known from X11. A few lines from it: >
|
||||
|
||||
255 218 185 peach puff
|
||||
205 133 63 peru
|
||||
255 181 197 pink
|
||||
|
||||
This shows the layout of the file: First the R, G and B value as a decimal
|
||||
number, followed by the name of the color. The four fields are separated by
|
||||
spaces.
|
||||
|
||||
You can get an rgb.txt file from any X11 distribution. It is located in a
|
||||
directory like "/usr/X11R6/lib/X11/". For Vim it must be located in the
|
||||
$VIMRUNTIME directory. Thus the file can be found with "$VIMRUNTIME/rgb.txt".
|
||||
Additionally, colors defined by a default color list can be used. For more
|
||||
info see |:colorscheme|. These colors used to be defined in
|
||||
$VIMRUNTIME/rgb.txt, now they are in |v:colornames| which is initialized from
|
||||
$VIMRUNTIME/colors/lists/default.vim.
|
||||
|
||||
==============================================================================
|
||||
*gui-w32-dialogs* *dialog*
|
||||
|
||||
@@ -88,6 +88,7 @@ Tuning Vim ~
|
||||
|usr_43.txt| Using filetypes
|
||||
|usr_44.txt| Your own syntax highlighted
|
||||
|usr_45.txt| Select your language
|
||||
|usr_46.txt| Write plugins using Vim9 script
|
||||
|
||||
Making Vim Run ~
|
||||
|usr_90.txt| Installing Vim
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*helphelp.txt* For Vim version 8.2. Last change: 2020 Dec 29
|
||||
*helphelp.txt* For Vim version 8.2. Last change: 2021 Dec 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -163,7 +163,7 @@ If you would like to open the help in the current window, see this tip:
|
||||
|
||||
The initial height of the help window can be set with the 'helpheight' option
|
||||
(default 20).
|
||||
|
||||
*help-buffer-options*
|
||||
When the help buffer is created, several local options are set to make sure
|
||||
the help text is displayed as it was intended:
|
||||
'iskeyword' nearly all ASCII chars except ' ', '*', '"' and '|'
|
||||
@@ -323,21 +323,25 @@ Hints for translators:
|
||||
3. Writing help files *help-writing*
|
||||
|
||||
For ease of use, a Vim help file for a plugin should follow the format of the
|
||||
standard Vim help files. If you are writing a new help file it's best to copy
|
||||
one of the existing files and use it as a template.
|
||||
standard Vim help files, except for the first line. If you are writing a new
|
||||
help file it's best to copy one of the existing files and use it as a
|
||||
template.
|
||||
|
||||
The first line in a help file should have the following format:
|
||||
|
||||
*helpfile_name.txt* For Vim version 7.3 Last change: 2010 June 4
|
||||
*plugin_name.txt* {short description of the plugin}
|
||||
|
||||
The first field is a link to the help file name. The second field describes
|
||||
the applicable Vim version. The last field specifies the last modification
|
||||
date of the file. Each field is separated by a tab.
|
||||
The first field is a help tag where ":help plugin_name" will jump to. The
|
||||
remainder of the line, after a Tab, describes the plugin purpose in a short
|
||||
way. This will show up in the "LOCAL ADDITIONS" section of the main help
|
||||
file. Check there that it shows up properly: |local-additions|.
|
||||
|
||||
If you want to add a version number or last modification date, put it in the
|
||||
second line, right aligned.
|
||||
|
||||
At the bottom of the help file, place a Vim modeline to set the 'textwidth'
|
||||
and 'tabstop' options and the 'filetype' to "help". Never set a global option
|
||||
in such a modeline, that can have consequences undesired by whoever reads that
|
||||
help.
|
||||
in such a modeline, that can have undesired consequences.
|
||||
|
||||
|
||||
TAGS
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 8.2. Last change: 2019 Dec 07
|
||||
*if_pyth.txt* For Vim version 8.2. Last change: 2021 Nov 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -63,6 +63,11 @@ To see what version of Python you have: >
|
||||
|
||||
There is no need to import sys, it's done by default.
|
||||
|
||||
*python-environment*
|
||||
Environment variables set in Vim are not always available in Python. This
|
||||
depends on how Vim and Python were build. Also see
|
||||
https://docs.python.org/3/library/os.html#os.environ
|
||||
|
||||
Note: Python is very sensitive to the indenting. Make sure the "class" line
|
||||
and "EOF" do not have any indent.
|
||||
|
||||
|
||||
@@ -608,26 +608,25 @@ CLOJURE *ft-clojure-indent* *clojure-indent*
|
||||
Clojure indentation differs somewhat from traditional Lisps, due in part to
|
||||
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.
|
||||
offers a few configuration options.
|
||||
|
||||
(If the current Vim does not include |searchpairpos()|, the indent script falls
|
||||
back to normal 'lisp' indenting, and the following options are ignored.)
|
||||
|
||||
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.
|
||||
>
|
||||
" Default
|
||||
let g:clojure_maxlines = 100
|
||||
<
|
||||
Sets 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. The default is 300.
|
||||
|
||||
|
||||
*g:clojure_fuzzy_indent*
|
||||
*g:clojure_fuzzy_indent_patterns*
|
||||
*g:clojure_fuzzy_indent_blacklist*
|
||||
|
||||
The 'lispwords' option is a list of comma-separated words that mark special
|
||||
forms whose subforms must be indented with two spaces.
|
||||
forms whose subforms should be indented with two spaces.
|
||||
|
||||
For example:
|
||||
>
|
||||
@@ -645,15 +644,11 @@ the fuzzy indent feature:
|
||||
let g:clojure_fuzzy_indent_patterns = ['^with', '^def', '^let']
|
||||
let g:clojure_fuzzy_indent_blacklist =
|
||||
\ ['-fn$', '\v^with-%(meta|out-str|loading-context)$']
|
||||
|
||||
" Legacy comma-delimited string version; the list format above is
|
||||
" recommended. Note that patterns are implicitly anchored with ^ and $
|
||||
let g:clojure_fuzzy_indent_patterns = 'with.*,def.*,let.*'
|
||||
<
|
||||
|g:clojure_fuzzy_indent_patterns| and |g:clojure_fuzzy_indent_blacklist| are
|
||||
|Lists| of patterns that will be matched against the unquoted, unqualified
|
||||
symbol at the head of a list. This means that a pattern like "^foo" will match
|
||||
all these candidates: "foobar", "my.ns/foobar", and "#'foobar".
|
||||
lists of patterns that will be matched against the unqualified symbol at the
|
||||
head of a list. This means that a pattern like `"^foo"` will match all these
|
||||
candidates: `foobar`, `my.ns/foobar`, and `#'foobar`.
|
||||
|
||||
Each candidate word is tested for special treatment in this order:
|
||||
|
||||
@@ -664,20 +659,22 @@ Each candidate word is tested for special treatment in this order:
|
||||
|g:clojure_fuzzy_indent_patterns|
|
||||
4. Return false and indent normally otherwise
|
||||
|
||||
|
||||
*g:clojure_special_indent_words*
|
||||
|
||||
Some forms in Clojure are indented so that every subform is indented only two
|
||||
spaces, regardless of 'lispwords'. If you have a custom construct that should
|
||||
be indented in this idiosyncratic fashion, you can add your symbols to the
|
||||
default list below.
|
||||
Some forms in Clojure are indented such that every subform is indented by only
|
||||
two spaces, regardless of 'lispwords'. If you have a custom construct that
|
||||
should be indented in this idiosyncratic fashion, you can add your symbols to
|
||||
the default list below.
|
||||
>
|
||||
" Default
|
||||
let g:clojure_special_indent_words =
|
||||
\ 'deftype,defrecord,reify,proxy,extend-type,extend-protocol,letfn'
|
||||
<
|
||||
|
||||
*g:clojure_align_multiline_strings*
|
||||
|
||||
Align subsequent lines in multiline strings to the column after the opening
|
||||
Align subsequent lines in multi-line strings to the column after the opening
|
||||
quote, instead of the same column.
|
||||
|
||||
For example:
|
||||
@@ -694,11 +691,7 @@ For example:
|
||||
enim ad minim veniam, quis nostrud exercitation ullamco laboris
|
||||
nisi ut aliquip ex ea commodo consequat.")
|
||||
<
|
||||
This option is off by default.
|
||||
>
|
||||
" Default
|
||||
let g:clojure_align_multiline_strings = 0
|
||||
<
|
||||
|
||||
*g:clojure_align_subforms*
|
||||
|
||||
By default, parenthesized compound forms that look like function calls and
|
||||
@@ -709,18 +702,14 @@ two spaces relative to the opening paren:
|
||||
bar
|
||||
baz)
|
||||
<
|
||||
Setting this option changes this behavior so that all subforms are aligned to
|
||||
the same column, emulating the default behavior of clojure-mode.el:
|
||||
Setting this option to `1` changes this behaviour so that all subforms are
|
||||
aligned to the same column, emulating the default behaviour of
|
||||
clojure-mode.el:
|
||||
>
|
||||
(foo
|
||||
bar
|
||||
baz)
|
||||
<
|
||||
This option is off by default.
|
||||
>
|
||||
" Default
|
||||
let g:clojure_align_subforms = 0
|
||||
<
|
||||
|
||||
FORTRAN *ft-fortran-indent*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 8.2. Last change: 2021 Aug 31
|
||||
*insert.txt* For Vim version 8.2. Last change: 2021 Oct 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -824,6 +824,9 @@ CTRL-X CTRL-K Search the files given with the 'dictionary' option
|
||||
CTRL-P Search backwards for next matching keyword. This
|
||||
keyword replaces the previous matching keyword.
|
||||
|
||||
|
||||
Completing words in 'thesaurus' *compl-thesaurus*
|
||||
|
||||
*i_CTRL-X_CTRL-T*
|
||||
CTRL-X CTRL-T Works as CTRL-X CTRL-K, but in a special way. It uses
|
||||
the 'thesaurus' option instead of 'dictionary'. If a
|
||||
@@ -832,16 +835,6 @@ CTRL-X CTRL-T Works as CTRL-X CTRL-K, but in a special way. It uses
|
||||
matches, even though they don't complete the word.
|
||||
Thus a word can be completely replaced.
|
||||
|
||||
For an example, imagine the 'thesaurus' file has a
|
||||
line like this: >
|
||||
angry furious mad enraged
|
||||
< Placing the cursor after the letters "ang" and typing
|
||||
CTRL-X CTRL-T would complete the word "angry";
|
||||
subsequent presses would change the word to "furious",
|
||||
"mad" etc.
|
||||
Other uses include translation between two languages,
|
||||
or grouping API functions by keyword.
|
||||
|
||||
CTRL-T or
|
||||
CTRL-N Search forward for next matching keyword. This
|
||||
keyword replaces the previous matching keyword.
|
||||
@@ -849,6 +842,57 @@ CTRL-X CTRL-T Works as CTRL-X CTRL-K, but in a special way. It uses
|
||||
CTRL-P Search backwards for next matching keyword. This
|
||||
keyword replaces the previous matching keyword.
|
||||
|
||||
In the file used by the 'thesaurus' option 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.
|
||||
|
||||
For an example, imagine the 'thesaurus' file has a line like this: >
|
||||
angry furious mad enraged
|
||||
<Placing the cursor after the letters "ang" and typing CTRL-X CTRL-T would
|
||||
complete the word "angry"; subsequent presses would change the word to
|
||||
"furious", "mad" etc.
|
||||
|
||||
Other uses include translation between two languages, or grouping API
|
||||
functions by keyword.
|
||||
|
||||
An English word list was added to this github issue:
|
||||
https://github.com/vim/vim/issues/629#issuecomment-443293282
|
||||
Unpack thesaurus_pkg.zip, put the thesaurus.txt file somewhere, e.g.
|
||||
~/.vim/thesaurus/english.txt, and the 'thesaurus' option to this file name.
|
||||
|
||||
|
||||
Completing keywords with 'thesaurusfunc' *compl-thesaurusfunc*
|
||||
|
||||
If the 'thesaurusfunc' option is set, then the user specified function is
|
||||
invoked to get the list of completion matches and the 'thesaurus' option is
|
||||
not used. See |complete-functions| for an explanation of how the function is
|
||||
invoked and what it should return.
|
||||
|
||||
Here is an example that uses the "aiksaurus" command (provided by Magnus
|
||||
Groß): >
|
||||
|
||||
func Thesaur(findstart, base)
|
||||
if a:findstart
|
||||
return searchpos('\<', 'bnW', line('.'))[1] - 1
|
||||
endif
|
||||
let res = []
|
||||
let h = ''
|
||||
for l in systemlist('aiksaurus '.shellescape(a:base))
|
||||
if l[:3] == '=== '
|
||||
let h = '('.substitute(l[4:], ' =*$', ')', '')
|
||||
elseif l ==# 'Alphabetically similar known words are: '
|
||||
let h = "\U0001f52e"
|
||||
elseif l[0] =~ '\a' || (h ==# "\U0001f52e" && l[0] ==# "\t")
|
||||
call extend(res, map(split(substitute(l, '^\t', '', ''), ', '), {_, val -> {'word': val, 'menu': h}}))
|
||||
endif
|
||||
endfor
|
||||
return res
|
||||
endfunc
|
||||
|
||||
if exists('+thesaurusfunc')
|
||||
set thesaurusfunc=Thesaur
|
||||
endif
|
||||
|
||||
|
||||
Completing keywords in the current and included files *compl-keyword*
|
||||
|
||||
@@ -1052,7 +1096,7 @@ CTRL-X CTRL-Z Stop completion without changing the text.
|
||||
|
||||
FUNCTIONS FOR FINDING COMPLETIONS *complete-functions*
|
||||
|
||||
This applies to 'completefunc' and 'omnifunc'.
|
||||
This applies to 'completefunc', 'thesaurusfunc' and 'omnifunc'.
|
||||
|
||||
The function is called in two different ways:
|
||||
- First the function is called to find the start of the text to be completed.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 8.2. Last change: 2021 Sep 12
|
||||
*map.txt* For Vim version 8.2. Last change: 2021 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -61,6 +61,8 @@ modes.
|
||||
where the map command applies. The result, including
|
||||
{rhs}, is then further scanned for mappings. This
|
||||
allows for nested and recursive use of mappings.
|
||||
Note: Trailing spaces are included in the {rhs},
|
||||
because space is a valid Normal mode command.
|
||||
|
||||
*:nore* *:norem*
|
||||
:no[remap] {lhs} {rhs} |mapmode-nvo| *:no* *:noremap* *:nor*
|
||||
@@ -94,6 +96,9 @@ modes.
|
||||
Remove the mapping of {lhs} for the modes where the
|
||||
map command applies. The mapping may remain defined
|
||||
for other modes where it applies.
|
||||
It also works when {lhs} matches the {rhs} of a
|
||||
mapping. This is for when when an abbreviation
|
||||
applied.
|
||||
Note: Trailing spaces are included in the {lhs}. This
|
||||
unmap does NOT work: >
|
||||
:map @@ foo
|
||||
@@ -168,7 +173,7 @@ type "a", then "bar" will get inserted.
|
||||
"<unique>" can be used in any order. They must appear right after the
|
||||
command, before any other arguments.
|
||||
|
||||
*:map-local* *:map-<buffer>* *E224* *E225*
|
||||
*:map-local* *:map-<buffer>* *:map-buffer* *E224* *E225*
|
||||
If the first argument to one of these commands is "<buffer>" the mapping will
|
||||
be effective in the current buffer only. Example: >
|
||||
:map <buffer> ,w /[.,;]<CR>
|
||||
@@ -227,7 +232,7 @@ Note: ":map <script>" and ":noremap <script>" do the same thing. The
|
||||
"<script>" overrules the command name. Using ":noremap <script>" is
|
||||
preferred, because it's clearer that remapping is (mostly) disabled.
|
||||
|
||||
*:map-<unique>* *E226* *E227*
|
||||
*:map-<unique>* *:map-unique* *E226* *E227*
|
||||
If the first argument to one of these commands is "<unique>" and it is used to
|
||||
define a new mapping or abbreviation, the command will fail if the mapping or
|
||||
abbreviation already exists. Example: >
|
||||
@@ -344,6 +349,8 @@ Note:
|
||||
- For the same reason, |keycodes| like <C-R><C-W> are interpreted as plain,
|
||||
unmapped keys.
|
||||
- The command is not echo'ed, no need for <silent>.
|
||||
- The {rhs} is not subject to abbreviations nor to other mappings, even if the
|
||||
mapping is recursive.
|
||||
- In Visual mode you can use `line('v')` and `col('v')` to get one end of the
|
||||
Visual area, the cursor is at the other end.
|
||||
- In Select mode, |:map| and |:vmap| command mappings are executed in
|
||||
@@ -967,28 +974,35 @@ Here is an example that counts the number of spaces with <F4>: >
|
||||
" doubling <F4> works on a line
|
||||
nnoremap <expr> <F4><F4> CountSpaces() .. '_'
|
||||
|
||||
function CountSpaces(type = '') abort
|
||||
function CountSpaces(virtualedit = '', irregular_block = v:false, type = '') abort
|
||||
if a:type == ''
|
||||
set opfunc=CountSpaces
|
||||
let &operatorfunc = function('CountSpaces', [&virtualedit, v:false])
|
||||
set virtualedit=block
|
||||
return 'g@'
|
||||
endif
|
||||
endif
|
||||
|
||||
let cb_save = &clipboard
|
||||
let sel_save = &selection
|
||||
let reg_save = getreginfo('"')
|
||||
let cb_save = &clipboard
|
||||
let visual_marks_save = [getpos("'<"), getpos("'>")]
|
||||
|
||||
try
|
||||
set clipboard= selection=inclusive
|
||||
let commands = #{line: "'[V']y", char: "`[v`]y", block: "`[\<c-v>`]y"}
|
||||
silent exe 'noautocmd keepjumps normal! ' .. get(commands, a:type, '')
|
||||
echom getreg('"')->count(' ')
|
||||
set clipboard= selection=inclusive virtualedit=
|
||||
let commands = #{line: "'[V']", char: "`[v`]", block: "`[\<C-V>`]"}->get(a:type, 'v')
|
||||
if getpos("']")[-1] != 0 || a:irregular_block
|
||||
let commands ..= 'oO$'
|
||||
let &operatorfunc = function('CountSpaces', [a:virtualedit, v:true])
|
||||
endif
|
||||
let commands ..= 'y'
|
||||
execute 'silent noautocmd keepjumps normal! ' .. commands
|
||||
echomsg getreg('"')->count(' ')
|
||||
finally
|
||||
call setreg('"', reg_save)
|
||||
call setpos("'<", visual_marks_save[0])
|
||||
call setpos("'>", visual_marks_save[1])
|
||||
let &clipboard = cb_save
|
||||
let &selection = sel_save
|
||||
let &virtualedit = a:virtualedit
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
@@ -1004,6 +1018,20 @@ Also note that the 'clipboard' option is temporarily emptied to avoid
|
||||
clobbering the `"*` or `"+` registers, if its value contains the item `unnamed`
|
||||
or `unnamedplus`.
|
||||
|
||||
The `mode()` function will return the state as it will be after applying the
|
||||
operator.
|
||||
|
||||
Here is an example for using a lambda function to create a normal-mode
|
||||
operator to add quotes around text in the current line: >
|
||||
|
||||
nnoremap <F4> <Cmd>let &opfunc='{t ->
|
||||
\ getline(".")
|
||||
\ ->split("\\zs")
|
||||
\ ->insert("\"", col("'']"))
|
||||
\ ->insert("\"", col("''[") - 1)
|
||||
\ ->join("")
|
||||
\ ->setline(".")}'<CR>g@
|
||||
|
||||
==============================================================================
|
||||
2. Abbreviations *abbreviations* *Abbreviations*
|
||||
|
||||
@@ -1557,6 +1585,7 @@ Possible values are (second column is the short name used in listing):
|
||||
Special cases ~
|
||||
*:command-bang* *:command-bar*
|
||||
*:command-register* *:command-buffer*
|
||||
*:command-keepscript*
|
||||
There are some special cases as well:
|
||||
|
||||
-bang The command can take a ! modifier (like :q or :w)
|
||||
@@ -1566,6 +1595,9 @@ There are some special cases as well:
|
||||
-register The first argument to the command can be an optional
|
||||
register name (like :del, :put, :yank).
|
||||
-buffer The command will only be available in the current buffer.
|
||||
-keepscript Do not use the location of where the user command was
|
||||
defined for verbose messages, use the location of where
|
||||
the user command was invoked.
|
||||
|
||||
In the cases of the -count and -register attributes, if the optional argument
|
||||
is supplied, it is removed from the argument list and is available to the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 8.2. Last change: 2021 Jul 31
|
||||
*message.txt* For Vim version 8.2. Last change: 2021 Dec 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -29,8 +29,7 @@ depends on the 'shortmess' option.
|
||||
Clear messages, keeping only the {count} most
|
||||
recent ones.
|
||||
|
||||
The number of remembered messages is fixed at 20 for the tiny version and 200
|
||||
for other versions.
|
||||
The number of remembered messages is fixed at 200.
|
||||
|
||||
*g<*
|
||||
The "g<" command can be used to see the last page of previous command output.
|
||||
@@ -141,6 +140,11 @@ larger. When it's more there probably is an endless loop. Probably a
|
||||
The color name {name} is unknown. See |gui-colors| for a list of colors that
|
||||
are available on most systems.
|
||||
|
||||
*E1244* >
|
||||
Bad color string: {str}
|
||||
|
||||
The provided color did not conform to the pattern #rrggbb
|
||||
|
||||
*E458* >
|
||||
Cannot allocate colormap entry, some colors may be incorrect
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 8.2. Last change: 2021 Jun 13
|
||||
*motion.txt* For Vim version 8.2. Last change: 2021 Dec 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -386,6 +386,8 @@ w [count] words forward. |exclusive| motion.
|
||||
|
||||
<C-Right> or *<C-Right>* *W*
|
||||
W [count] WORDS forward. |exclusive| motion.
|
||||
If <C-Right> does not work, check out
|
||||
|arrow_modifiers|.
|
||||
|
||||
*e*
|
||||
e Forward to the end of word [count] |inclusive|.
|
||||
@@ -400,6 +402,8 @@ b [count] words backward. |exclusive| motion.
|
||||
|
||||
<C-Left> or *<C-Left>* *B*
|
||||
B [count] WORDS backward. |exclusive| motion.
|
||||
If <C-Left> does not work, check out
|
||||
|arrow_modifiers|.
|
||||
|
||||
*ge*
|
||||
ge Backward to the end of word [count] |inclusive|.
|
||||
@@ -1034,12 +1038,10 @@ commands that start editing a new file.
|
||||
*CTRL-O*
|
||||
CTRL-O Go to [count] Older cursor position in jump list
|
||||
(not a motion command).
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
<Tab> or *CTRL-I* *<Tab>*
|
||||
CTRL-I Go to [count] newer cursor position in jump list
|
||||
(not a motion command).
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
NOTE: In the GUI and in a terminal supporting
|
||||
|modifyOtherKeys|, CTRL-I can be mapped separately
|
||||
@@ -1049,18 +1051,15 @@ CTRL-I Go to [count] newer cursor position in jump list
|
||||
|
||||
*:ju* *:jumps*
|
||||
:ju[mps] Print the jump list (not a motion command).
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
*:cle* *:clearjumps*
|
||||
:cle[arjumps] Clear the jump list of the current window.
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
*jumplist*
|
||||
Jumps are remembered in a jump list. With the CTRL-O and CTRL-I command you
|
||||
can go to cursor positions before older jumps, and back again. Thus you can
|
||||
move up and down the list. There is a separate jump list for each window.
|
||||
The maximum number of entries is fixed at 100.
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
For example, after three jump commands you have this jump list:
|
||||
|
||||
@@ -1137,13 +1136,11 @@ g; Go to [count] older position in change list.
|
||||
positions go to the oldest change.
|
||||
If there is no older change an error message is given.
|
||||
(not a motion command)
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
*g,* *E663*
|
||||
g, Go to [count] newer cursor position in change list.
|
||||
Just like |g;| but in the opposite direction.
|
||||
(not a motion command)
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
When using a count you jump as far back or forward as possible. Thus you can
|
||||
use "999g;" to go to the first change for which the position is still
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 8.2. Last change: 2021 Sep 21
|
||||
*options.txt* For Vim version 8.2. Last change: 2021 Dec 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -35,6 +35,8 @@ achieve special effects. These options come in three forms:
|
||||
internally and can't be changed. Changing the terminal
|
||||
codes in the GUI is not useful either...
|
||||
|
||||
:se[t]! termcap Idem, but don't use multiple columns.
|
||||
|
||||
*E518* *E519*
|
||||
:se[t] {option}? Show value of {option}.
|
||||
|
||||
@@ -371,6 +373,30 @@ Note: In the future more global options can be made global-local. Using
|
||||
":setlocal" on a global option might work differently then.
|
||||
|
||||
|
||||
*option-value-function*
|
||||
Some options ('completefunc', 'imactivatefunc', 'imstatusfunc', 'omnifunc',
|
||||
'operatorfunc', 'quickfixtextfunc', 'tagfunc' and 'thesaurusfunc') are set to
|
||||
a function name or a function reference or a lambda function. When using a
|
||||
lambda it will be converted to the name, e.g. "<lambda>123". Examples:
|
||||
>
|
||||
set opfunc=MyOpFunc
|
||||
set opfunc=function('MyOpFunc')
|
||||
set opfunc=funcref('MyOpFunc')
|
||||
set opfunc={a\ ->\ MyOpFunc(a)}
|
||||
" set using a funcref variable
|
||||
let Fn = function('MyTagFunc')
|
||||
let &tagfunc = string(Fn)
|
||||
" set using a lambda expression
|
||||
let &tagfunc = {t -> MyTagFunc(t)}
|
||||
" set using a variable with lambda expression
|
||||
let L = {a, b, c -> MyTagFunc(a, b , c)}
|
||||
let &tagfunc = L
|
||||
|
||||
In Vim9 script, in a compiled function, you can use a lambda, but a
|
||||
closured does not work, because the function will be called without the
|
||||
context of where it was defined.
|
||||
|
||||
|
||||
Setting the filetype
|
||||
|
||||
:setf[iletype] [FALLBACK] {filetype} *:setf* *:setfiletype*
|
||||
@@ -717,7 +743,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"double": Use twice the width of ASCII characters.
|
||||
*E834* *E835*
|
||||
The value "double" cannot be used if 'listchars' or 'fillchars'
|
||||
contains a character that would be double width.
|
||||
contains a character that would be double width. These errors may
|
||||
also be given when calling setcellwidths().
|
||||
|
||||
The values are overruled for characters specified with
|
||||
|setcellwidths()|.
|
||||
@@ -849,9 +876,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'autowrite' 'aw' boolean (default off)
|
||||
global
|
||||
Write the contents of the file, if it has been modified, on each
|
||||
:next, :rewind, :last, :first, :previous, :stop, :suspend, :tag, :!,
|
||||
:make, CTRL-] and CTRL-^ command; and when a :buffer, CTRL-O, CTRL-I,
|
||||
'{A-Z0-9}, or `{A-Z0-9} command takes one to another file.
|
||||
`:next`, `:rewind`, `:last`, `:first`, `:previous`, `:stop`,
|
||||
`:suspend`, `:tag, `:!`, ``:make`, CTRL-] and CTRL-^ command; and when
|
||||
a :buffer, CTRL-O, CTRL-I, '{A-Z0-9}, or `{A-Z0-9} command takes one
|
||||
to another file.
|
||||
A buffer is not written if it becomes hidden, e.g. when 'bufhidden' is
|
||||
set to "hide" and `:next` is used
|
||||
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
|
||||
@@ -1419,6 +1449,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Also see |win_gettype()|, which returns the type of the window.
|
||||
|
||||
Be careful with changing this option, it can have many side effects!
|
||||
One such effect is that Vim will not check the timestamp of the file,
|
||||
if the file is changed by another program this will not be noticed.
|
||||
|
||||
A "quickfix" buffer is only used for the error list and the location
|
||||
list. This value is set by the |:cwindow| and |:lwindow| commands and
|
||||
@@ -1461,6 +1493,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
case mapping, the current locale is not effective.
|
||||
This probably only matters for Turkish.
|
||||
|
||||
*'cdhome'* *'cdh'*
|
||||
'cdhome' 'cdh' boolean (default: off)
|
||||
global
|
||||
When on, |:cd|, |:tcd| and |:lcd| without an argument changes the
|
||||
current working directory to the |$HOME| directory like in Unix.
|
||||
When off, those commands just print the current directory name.
|
||||
On Unix this option has no effect.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
|
||||
*'cdpath'* *'cd'* *E344* *E346*
|
||||
'cdpath' 'cd' string (default: equivalent to $CDPATH or ",,")
|
||||
global
|
||||
@@ -1802,6 +1843,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'balloonexpr' + "" text to show in evaluation balloon
|
||||
'breakindent' + off don't indent when wrapping lines
|
||||
'cedit' - {unchanged} {set vim default only on resetting 'cp'}
|
||||
'cdhome' + off ":cd" don't chdir to home on non-Unix
|
||||
'cindent' + off no C code indentation
|
||||
'compatible' - {unchanged} {set vim default only on resetting 'cp'}
|
||||
'copyindent' + off don't copy indent structure
|
||||
@@ -1917,7 +1959,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option specifies a function to be used for Insert mode completion
|
||||
with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U|
|
||||
See |complete-functions| for an explanation of how the function is
|
||||
invoked and what it should return.
|
||||
invoked and what it should return. The value can be the name of a
|
||||
function, a |lambda| or a |Funcref|. See |option-value-function| for
|
||||
more information.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
@@ -2410,7 +2454,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
xchacha20 XChaCha20 Cipher with Poly1305 Message Authentication
|
||||
Code. Medium strong till strong encryption.
|
||||
Encryption is provided by the libsodium library, it
|
||||
requires Vim to be built with |+sodium|
|
||||
requires Vim to be built with |+sodium|.
|
||||
It adds a seed and a message authentication code (MAC)
|
||||
to the file. This needs at least a Vim 8.2.3022 to
|
||||
read the encrypted file.
|
||||
@@ -3610,8 +3654,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
systems without an fsync() implementation, this variable is always
|
||||
off.
|
||||
Also see 'swapsync' for controlling fsync() on swap files.
|
||||
'fsync' also applies to |writefile()|, unless a flag is used to
|
||||
overrule it.
|
||||
'fsync' also applies to |writefile()| (unless a flag is used to
|
||||
overrule it) and when writing undo files (see |undo-persistence|).
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
@@ -3790,6 +3834,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
screen. Set it to a negative value to allow windows taller than the
|
||||
screen.
|
||||
|
||||
*'guiligatures'* *'gli'* *E1243*
|
||||
'guiligatures' 'gli' string (default "")
|
||||
global
|
||||
{only for GTK GUI}
|
||||
List of ASCII characters that, when combined together, can create more
|
||||
complex shapes. Each character must be a printable ASCII character
|
||||
with a value in the 32-127 range.
|
||||
Example: >
|
||||
:set guiligatures=!\"#$%&()*+-./:<=>?@[]^_{\|~
|
||||
< Changing this option updates screen output immediately. Set it to an
|
||||
empty string to disable ligatures.
|
||||
|
||||
*'guioptions'* *'go'*
|
||||
'guioptions' 'go' string (default "egmrLtT" (MS-Windows,
|
||||
"t" is removed in |defaults.vim|),
|
||||
@@ -4164,8 +4220,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'icon'* *'noicon'*
|
||||
'icon' boolean (default off, on when title can be restored)
|
||||
global
|
||||
{not available when compiled without the |+title|
|
||||
feature}
|
||||
When on, the icon text of the window will be set to the value of
|
||||
'iconstring' (if it is not empty), or to the name of the file
|
||||
currently being edited. Only the last part of the name is used.
|
||||
@@ -4182,8 +4236,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'iconstring'*
|
||||
'iconstring' string (default "")
|
||||
global
|
||||
{not available when compiled without the |+title|
|
||||
feature}
|
||||
When this option is not empty, it will be used for the icon text of
|
||||
the window. This happens only when the 'icon' option is on.
|
||||
Only works if the terminal supports setting window icon text
|
||||
@@ -4210,7 +4262,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'imactivatefunc' 'imaf' string (default "")
|
||||
global
|
||||
This option specifies a function that will be called to
|
||||
activate or deactivate the Input Method.
|
||||
activate or deactivate the Input Method. The value can be the name of
|
||||
a function, a |lambda| or a |Funcref|. See |option-value-function| for
|
||||
more information.
|
||||
It is not used in the MS-Windows GUI version.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
@@ -4320,6 +4374,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global
|
||||
This option specifies a function that is called to obtain the status
|
||||
of Input Method. It must return a positive number when IME is active.
|
||||
The value can be the name of a function, a |lambda| or a |Funcref|.
|
||||
See |option-value-function| for more information.
|
||||
It is not used in the MS-Windows GUI version.
|
||||
|
||||
Example: >
|
||||
@@ -4893,9 +4949,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'list'* *'nolist'*
|
||||
'list' boolean (default off)
|
||||
local to window
|
||||
List mode: Show tabs as CTRL-I is displayed, display $ after end of
|
||||
line. Useful to see the difference between tabs and spaces and for
|
||||
trailing blanks. Further changed by the 'listchars' option.
|
||||
List mode: By default show tabs as CTRL-I is displayed, display $
|
||||
after end of line. Useful to see the difference between tabs and
|
||||
spaces and for trailing blanks. Further changed by the 'listchars'
|
||||
option.
|
||||
|
||||
The cursor is displayed at the start of the space a Tab character
|
||||
occupies, not at the end as usual in Normal mode. To get this cursor
|
||||
@@ -4978,6 +5035,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
be used when 'encoding' is "utf-8", otherwise only printable
|
||||
characters are allowed. All characters must be single width.
|
||||
|
||||
Each character can be specified as hex: >
|
||||
set listchars=eol:\\x24
|
||||
set listchars=eol:\\u21b5
|
||||
set listchars=eol:\\U000021b5
|
||||
< Note that a double backslash is used. The number of hex characters
|
||||
must be exactly 2 for \\x, 4 for \\u and 8 for \\U.
|
||||
|
||||
Examples: >
|
||||
:set lcs=tab:>-,trail:-
|
||||
:set lcs=tab:>-,eol:<,nbsp:%
|
||||
@@ -5578,7 +5642,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option specifies a function to be used for Insert mode omni
|
||||
completion with CTRL-X CTRL-O. |i_CTRL-X_CTRL-O|
|
||||
See |complete-functions| for an explanation of how the function is
|
||||
invoked and what it should return.
|
||||
invoked and what it should return. The value can be the name of a
|
||||
function, a |lambda| or a |Funcref|. See |option-value-function| for
|
||||
more information.
|
||||
This option is usually set by a filetype plugin:
|
||||
|:filetype-plugin-on|
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
@@ -5600,7 +5666,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'operatorfunc' 'opfunc' string (default: empty)
|
||||
global
|
||||
This option specifies a function to be called by the |g@| operator.
|
||||
See |:map-operator| for more info and an example.
|
||||
See |:map-operator| for more info and an example. The value can be
|
||||
the name of a function, a |lambda| or a |Funcref|. See
|
||||
|option-value-function| for more information.
|
||||
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
@@ -6000,8 +6068,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
customize the information displayed in the quickfix or location window
|
||||
for each entry in the corresponding quickfix or location list. See
|
||||
|quickfix-window-function| for an explanation of how to write the
|
||||
function and an example. The value can be the name of a function or a
|
||||
lambda.
|
||||
function and an example. The value can be the name of a function, a
|
||||
|lambda| or a |Funcref|. See |option-value-function| for more
|
||||
information.
|
||||
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
@@ -7406,13 +7475,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
return value of expr contains % items they will get expanded.
|
||||
The expression can contain the } character, the end of
|
||||
expression is denoted by %}.
|
||||
The For example: >
|
||||
For example: >
|
||||
func! Stl_filename() abort
|
||||
return "%t"
|
||||
endfunc
|
||||
< `stl=%{Stl_filename()}` results in `"%t"`
|
||||
`stl=%{%Stl_filename()%}` results in `"Name of current file"`
|
||||
} - End of `{%` expression
|
||||
%} - End of `{%` expression
|
||||
( - Start of item group. Can be used for setting the width and
|
||||
alignment of a section. Must be followed by %) somewhere.
|
||||
) - End of item group. No width fields allowed.
|
||||
@@ -7755,7 +7824,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option specifies a function to be used to perform tag searches.
|
||||
The function gets the tag pattern and should return a List of matching
|
||||
tags. See |tag-function| for an explanation of how to write the
|
||||
function and an example.
|
||||
function and an example. The value can be the name of a function, a
|
||||
|lambda| or a |Funcref|. See |option-value-function| for more
|
||||
information.
|
||||
|
||||
*'taglength'* *'tl'*
|
||||
'taglength' 'tl' number (default 0)
|
||||
@@ -7918,6 +7989,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Number of scrollback lines to keep. When going over this limit the
|
||||
first 10% of the scrollback lines are deleted. This is just to reduce
|
||||
the memory usage. See |Terminal-Normal|.
|
||||
Also used as a limit for text sent to the terminal in one write,
|
||||
multiplied by the number of columns times 3 (average number of bytes
|
||||
per cell).
|
||||
|
||||
*'termwinsize'* *'tws'*
|
||||
'termwinsize' 'tws' string (default "")
|
||||
@@ -8008,25 +8082,32 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'thesaurus' 'tsr' string (default "")
|
||||
global or local to buffer |global-local|
|
||||
List of file names, separated by commas, that are used to lookup words
|
||||
for thesaurus completion commands |i_CTRL-X_CTRL-T|.
|
||||
for thesaurus completion commands |i_CTRL-X_CTRL-T|. See
|
||||
|compl-thesaurus|.
|
||||
|
||||
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.
|
||||
|
||||
An English word list was added to this github issue:
|
||||
https://github.com/vim/vim/issues/629#issuecomment-443293282
|
||||
Unpack thesaurus_pkg.zip, put the thesaurus.txt file somewhere, e.g.
|
||||
~/.vim/thesaurus/english.txt, and the 'thesaurus' option to this file
|
||||
name.
|
||||
This option is not used if 'thesaurusfunc' is set, either for the
|
||||
buffer or globally.
|
||||
|
||||
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.
|
||||
The use of |:set+=| and |:set-=| is preferred when adding or removing
|
||||
directories from the list. This avoids problems when a future version
|
||||
uses another default.
|
||||
Backticks cannot be used in this option for security reasons.
|
||||
name. See |option-backslash| about using backslashes. The use of
|
||||
|:set+=| and |:set-=| is preferred when adding or removing directories
|
||||
from the list. This avoids problems when a future version uses
|
||||
another default. Backticks cannot be used in this option for security
|
||||
reasons.
|
||||
|
||||
*'thesaurusfunc'* *tsrfu'*
|
||||
'thesaurusfunc' 'tsrfu' string (default: empty)
|
||||
global or local to buffer |global-local|
|
||||
{not available when compiled without the |+eval|
|
||||
feature}
|
||||
This option specifies a function to be used for thesaurus completion
|
||||
with CTRL-X CTRL-T. |i_CTRL-X_CTRL-T| See |compl-thesaurusfunc|.
|
||||
The value can be the name of a function, a |lambda| or a |Funcref|.
|
||||
See |option-value-function| for more information.
|
||||
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'tildeop'* *'top'* *'notildeop'* *'notop'*
|
||||
'tildeop' 'top' boolean (default off)
|
||||
@@ -8094,8 +8175,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'title'* *'notitle'*
|
||||
'title' boolean (default off, on when title can be restored)
|
||||
global
|
||||
{not available when compiled without the |+title|
|
||||
feature}
|
||||
When on, the title of the window will be set to the value of
|
||||
'titlestring' (if it is not empty), or to:
|
||||
filename [+=-] (path) - VIM
|
||||
@@ -8129,8 +8208,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'titlelen'*
|
||||
'titlelen' number (default 85)
|
||||
global
|
||||
{not available when compiled without the |+title|
|
||||
feature}
|
||||
Gives the percentage of 'columns' to use for the length of the window
|
||||
title. When the title is longer, only the end of the path name is
|
||||
shown. A '<' character before the path name is used to indicate this.
|
||||
@@ -8144,8 +8221,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'titleold'*
|
||||
'titleold' string (default "Thanks for flying Vim")
|
||||
global
|
||||
{only available when compiled with the |+title|
|
||||
feature}
|
||||
This option will be used for the window title when exiting Vim if the
|
||||
original title cannot be restored. Only happens if 'title' is on or
|
||||
'titlestring' is not empty.
|
||||
@@ -8154,8 +8229,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'titlestring'*
|
||||
'titlestring' string (default "")
|
||||
global
|
||||
{not available when compiled without the |+title|
|
||||
feature}
|
||||
When this option is not empty, it will be used for the title of the
|
||||
window. This happens only when the 'title' option is on.
|
||||
Only works if the terminal supports setting window titles (currently
|
||||
|
||||
@@ -194,9 +194,8 @@ $VIM/macros/swapmous.vim for an example. |gui-mouse-mapping|
|
||||
|
||||
11. Color names *haiku-colors*
|
||||
|
||||
Vim has a number of color names built-in. Additional names are read from the
|
||||
file $VIMRUNTIME/rgb.txt, if present. This file is basically the color
|
||||
database from X. Names used from this file are cached for efficiency.
|
||||
Vim has a number of color names built-in. Additional names can be defined in
|
||||
|v:colornames|. See |:colorscheme| for details.
|
||||
|
||||
|
||||
12. GUI Toolbar Images *haiku-toolbar-images*
|
||||
|
||||
@@ -932,7 +932,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
\%.l Matches at the cursor line.
|
||||
\%<.l Matches above the cursor line.
|
||||
\%>.l Matches below the cursor line.
|
||||
These three can be used to match specific lines in a buffer. The "23"
|
||||
These six can be used to match specific lines in a buffer. The "23"
|
||||
can be any line number. The first line is 1.
|
||||
WARNING: When inserting or deleting lines Vim does not automatically
|
||||
update the matches. This means Syntax highlighting quickly becomes
|
||||
@@ -953,16 +953,15 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
\%.c Matches at the cursor column.
|
||||
\%<.c Matches before the cursor column.
|
||||
\%>.c Matches after the cursor column.
|
||||
These three can be used to match specific columns in a buffer or
|
||||
string. The "23" can be any column number. The first column is 1.
|
||||
Actually, the column is the byte number (thus it's not exactly right
|
||||
for multibyte characters).
|
||||
These six can be used to match specific columns in a buffer or string.
|
||||
The "23" can be any column number. The first column is 1. Actually,
|
||||
the column is the byte number (thus it's not exactly right for
|
||||
multibyte characters).
|
||||
WARNING: When inserting or deleting text Vim does not automatically
|
||||
update the matches. This means Syntax highlighting quickly becomes
|
||||
wrong. Also when referring to the cursor position (".") and
|
||||
the cursor moves the display isn't updated for this change. An update
|
||||
is done when using the |CTRL-L| command (the whole screen is updated).
|
||||
|
||||
Example, to highlight the column where the cursor currently is: >
|
||||
:exe '/\%' . col(".") . 'c'
|
||||
< Alternatively use: >
|
||||
@@ -980,8 +979,8 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
\%.v Matches at the current virtual column.
|
||||
\%<.v Matches before the current virtual column.
|
||||
\%>.v Matches after the current virtual column.
|
||||
These three can be used to match specific virtual columns in a buffer
|
||||
or string. When not matching with a buffer in a window, the option
|
||||
These six can be used to match specific virtual columns in a buffer or
|
||||
string. When not matching with a buffer in a window, the option
|
||||
values of the current window are used (e.g., 'tabstop').
|
||||
The "23" can be any column number. The first column is 1.
|
||||
Note that some virtual column positions will never match, because they
|
||||
@@ -1012,7 +1011,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
/.*\%17v
|
||||
< Column 17 is highlighted by 'hlsearch' because there is another match
|
||||
where ".*" matches zero characters.
|
||||
<
|
||||
|
||||
|
||||
Character classes:
|
||||
\i identifier character (see 'isident' option) */\i*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_zip.txt* For Vim version 8.2. Last change: 2020 Jan 07
|
||||
*pi_zip.txt* For Vim version 8.2. Last change: 2021 Nov 08
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
@@ -102,6 +102,9 @@ Copyright: Copyright (C) 2005-2015 Charles E Campbell *zip-copyright*
|
||||
|
||||
==============================================================================
|
||||
4. History *zip-history* {{{1
|
||||
v32 Oct 22, 2021 * to avoid an issue with a vim 8.2 patch, zipfile: has
|
||||
been changed to zipfile:// . This often shows up
|
||||
as zipfile:/// with zipped files that are root-based.
|
||||
v29 Apr 02, 2017 * (Klartext) reported that an encrypted zip file could
|
||||
opened but the swapfile held unencrypted contents.
|
||||
The solution is to edit the contents of a zip file
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*popup.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
||||
*popup.txt* For Vim version 8.2. Last change: 2021 Nov 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -681,6 +681,9 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
popup does not have a border. As soon as dragging
|
||||
starts and "pos" is "center" it is changed to
|
||||
"topleft".
|
||||
dragall TRUE to allow the popup to be dragged from every
|
||||
position. Makes it very difficult to select text in
|
||||
the popup.
|
||||
resize TRUE to allow the popup to be resized with the mouse
|
||||
by grabbing at the bottom right corner. Has no effect
|
||||
if the popup does not have a border.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 8.2. Last change: 2021 May 22
|
||||
*quickfix.txt* For Vim version 8.2. Last change: 2021 Dec 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -856,9 +856,9 @@ lists. They set one of the existing error lists as the current one.
|
||||
*:chistory* *:chi*
|
||||
:[count]chi[story] Show the list of error lists. The current list is
|
||||
marked with ">". The output looks like:
|
||||
error list 1 of 3; 43 errors ~
|
||||
> error list 2 of 3; 0 errors ~
|
||||
error list 3 of 3; 15 errors ~
|
||||
error list 1 of 3; 43 errors :make ~
|
||||
> error list 2 of 3; 0 errors :helpgrep tag ~
|
||||
error list 3 of 3; 15 errors :grep ex_help *.c ~
|
||||
|
||||
When [count] is given, then the count'th quickfix
|
||||
list is made the current list. Example: >
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 8.2. Last change: 2021 Mar 29
|
||||
*quickref.txt* For Vim version 8.2. Last change: 2021 Oct 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -635,6 +635,7 @@ Short explanation of each option: *option-list*
|
||||
'buflisted' 'bl' whether the buffer shows up in the buffer list
|
||||
'buftype' 'bt' special type of buffer
|
||||
'casemap' 'cmp' specifies how case of letters is changed
|
||||
'cdhome' 'cdh' change directory to the home directory by ":cd"
|
||||
'cdpath' 'cd' list of directories searched with ":cd"
|
||||
'cedit' key used to open the command-line window
|
||||
'charconvert' 'ccv' expression for character encoding conversion
|
||||
@@ -732,6 +733,7 @@ Short explanation of each option: *option-list*
|
||||
'guifontset' 'gfs' GUI: Names of multibyte fonts to be used
|
||||
'guifontwide' 'gfw' list of font names for double-wide characters
|
||||
'guiheadroom' 'ghr' GUI: pixels room for window decorations
|
||||
'guiligatures' 'gli' GTK GUI: ASCII characters that can form shapes
|
||||
'guioptions' 'go' GUI: Which components and options are used
|
||||
'guipty' GUI: try to use a pseudo-tty for ":!" commands
|
||||
'guitablabel' 'gtl' GUI: custom label for a tab page
|
||||
@@ -948,6 +950,7 @@ Short explanation of each option: *option-list*
|
||||
'textmode' 'tx' obsolete, use 'fileformat'
|
||||
'textwidth' 'tw' maximum width of text that is being inserted
|
||||
'thesaurus' 'tsr' list of thesaurus files for keyword completion
|
||||
'thesaurusfunc' 'tsrfu' function to be used for thesaurus completion
|
||||
'tildeop' 'top' tilde command "~" behaves like an operator
|
||||
'timeout' 'to' time out on mappings and key codes
|
||||
'timeoutlen' 'tm' time out time in milliseconds
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 8.2. Last change: 2021 Sep 09
|
||||
*repeat.txt* For Vim version 8.2. Last change: 2021 Nov 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -792,6 +792,10 @@ won't be very helpful.
|
||||
|
||||
There is a separate command-line history for debug mode.
|
||||
|
||||
NOTE: In Vim9 script, if a command is written at the script level and
|
||||
continues on the next line, not using the old way with a backslash for line
|
||||
continuation, only the first line is printed before the debugging prompt.
|
||||
|
||||
The line number for a function line is relative to the start of the function.
|
||||
If you have trouble figuring out where you are, edit the file that defines
|
||||
the function in another Vim, search for the start of the function and do
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 8.2. Last change: 2021 Mar 07
|
||||
*sign.txt* For Vim version 8.2. Last change: 2021 Dec 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -53,6 +53,8 @@ The color of the column is set with the SignColumn highlight group
|
||||
|
||||
:highlight SignColumn guibg=darkgrey
|
||||
<
|
||||
If 'cursorline' is enabled, then the CursorLineSign highlight group is used
|
||||
|hl-CursorLineSign|.
|
||||
*sign-identifier*
|
||||
Each placed sign is identified by a number called the sign identifier. This
|
||||
identifier is used to jump to the sign or to remove the sign. The identifier
|
||||
@@ -146,6 +148,10 @@ See |sign_define()| for the equivalent Vim script function.
|
||||
texthl={group}
|
||||
Highlighting group used for the text item.
|
||||
|
||||
culhl={group}
|
||||
Highlighting group used for the text item when the cursor is
|
||||
on the same line as the sign and 'cursorline' is enabled.
|
||||
|
||||
Example: >
|
||||
:sign define MySign text=>> texthl=Search linehl=DiffText
|
||||
<
|
||||
@@ -393,6 +399,9 @@ sign_define({list})
|
||||
text text that is displayed when there is no icon
|
||||
or the GUI is not being used.
|
||||
texthl highlight group used for the text item
|
||||
culhl highlight group used for the text item when
|
||||
the cursor is on the same line as the sign and
|
||||
'cursorline' is enabled.
|
||||
|
||||
If the sign named {name} already exists, then the attributes
|
||||
of the sign are updated.
|
||||
@@ -432,11 +441,16 @@ sign_getdefined([{name}]) *sign_getdefined()*
|
||||
following entries:
|
||||
icon full path to the bitmap file of the sign
|
||||
linehl highlight group used for the whole line the
|
||||
sign is placed in.
|
||||
sign is placed in; not present if not set
|
||||
name name of the sign
|
||||
text text that is displayed when there is no icon
|
||||
or the GUI is not being used.
|
||||
texthl highlight group used for the text item
|
||||
texthl highlight group used for the text item; not
|
||||
present if not set
|
||||
culhl highlight group used for the text item when
|
||||
the cursor is on the same line as the sign and
|
||||
'cursorline' is enabled; not present if not
|
||||
set
|
||||
|
||||
Returns an empty List if there are no signs and when {name} is
|
||||
not found.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 8.2. Last change: 2021 Aug 16
|
||||
*syntax.txt* For Vim version 8.2. Last change: 2021 Nov 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1081,33 +1081,47 @@ This works immediately.
|
||||
|
||||
CLOJURE *ft-clojure-syntax*
|
||||
|
||||
The default syntax groups can be augmented through the
|
||||
*g:clojure_syntax_keywords* and *b:clojure_syntax_keywords* variables. The
|
||||
value should be a |Dictionary| of syntax group names to a |List| of custom
|
||||
identifiers:
|
||||
*g:clojure_syntax_keywords*
|
||||
|
||||
Syntax highlighting of public vars in "clojure.core" is provided by default,
|
||||
but additional symbols can be highlighted by adding them to the
|
||||
|g:clojure_syntax_keywords| variable. The value should be a |Dictionary| of
|
||||
syntax group names, each containing a |List| of identifiers.
|
||||
>
|
||||
let g:clojure_syntax_keywords = {
|
||||
\ 'clojureMacro': ["defproject", "defcustom"],
|
||||
\ 'clojureFunc': ["string/join", "string/replace"]
|
||||
\ 'clojureMacro': ["defproject", "defcustom"],
|
||||
\ 'clojureFunc': ["string/join", "string/replace"]
|
||||
\ }
|
||||
<
|
||||
Refer to the Clojure syntax script for valid syntax group names.
|
||||
|
||||
If the |buffer-variable| *b:clojure_syntax_without_core_keywords* is set, only
|
||||
language constants and special forms are matched.
|
||||
There is also *b:clojure_syntax_keywords* which is a buffer-local variant of
|
||||
this variable intended for use by plugin authors to highlight symbols
|
||||
dynamically.
|
||||
|
||||
Setting *g:clojure_fold* enables folding Clojure code via the syntax engine.
|
||||
Any list, vector, or map that extends over more than one line can be folded
|
||||
using the standard Vim |fold-commands|.
|
||||
By setting the *b:clojure_syntax_without_core_keywords* variable, vars from
|
||||
"clojure.core" will not be highlighted by default. This is useful for
|
||||
namespaces that have set `(:refer-clojure :only [])`
|
||||
|
||||
Please note that this option does not work with scripts that redefine the
|
||||
bracket syntax regions, such as rainbow-parentheses plugins.
|
||||
|
||||
This option is off by default.
|
||||
*g:clojure_fold*
|
||||
|
||||
Setting |g:clojure_fold| to `1` will enable the folding of Clojure code. Any
|
||||
list, vector or map that extends over more than one line can be folded using
|
||||
the standard Vim |fold-commands|.
|
||||
|
||||
|
||||
*g:clojure_discard_macro*
|
||||
|
||||
Set this variable to `1` to enable basic highlighting of Clojure's "discard
|
||||
reader macro".
|
||||
>
|
||||
" Default
|
||||
let g:clojure_fold = 0
|
||||
#_(defn foo [x]
|
||||
(println x))
|
||||
<
|
||||
Note that this option will not correctly highlight stacked discard macros
|
||||
(e.g. `#_#_`).
|
||||
|
||||
|
||||
COBOL *cobol.vim* *ft-cobol-syntax*
|
||||
|
||||
@@ -1519,6 +1533,14 @@ gvim display. Here, statements are colored LightYellow instead of Yellow, and
|
||||
conditionals are LightBlue for better distinction.
|
||||
|
||||
|
||||
FORTH *forth.vim* *ft-forth-syntax*
|
||||
|
||||
Files matching "*.fs" could be F# or Forth. If the automatic detection
|
||||
doesn't work for you, or you don't edit F# at all, use this in your
|
||||
startup vimrc: >
|
||||
:let filetype_fs = "forth"
|
||||
|
||||
|
||||
FORTRAN *fortran.vim* *ft-fortran-syntax*
|
||||
|
||||
Default highlighting and dialect ~
|
||||
@@ -1673,16 +1695,6 @@ as Fvwm2 configuration files, add the following: >
|
||||
:au! BufNewFile,BufRead /etc/X11/fvwm2/* let b:fvwm_version = 2 |
|
||||
\ set filetype=fvwm
|
||||
|
||||
If you'd like Vim to highlight all valid color names, tell it where to
|
||||
find the color database (rgb.txt) on your system. Do this by setting
|
||||
"rgb_file" to its location. Assuming your color database is located
|
||||
in /usr/X11/lib/X11/, you should add the line >
|
||||
|
||||
:let rgb_file = "/usr/X11/lib/X11/rgb.txt"
|
||||
|
||||
to your .vimrc file.
|
||||
|
||||
|
||||
GSP *gsp.vim* *ft-gsp-syntax*
|
||||
|
||||
The default coloring style for GSP pages is defined by |html.vim|, and
|
||||
@@ -3184,6 +3196,14 @@ buffer by buffer basis.
|
||||
For more detailed instructions see |ft_sql.txt|.
|
||||
|
||||
|
||||
SQUIRREL *squirrel.vim* *ft-squirrel-syntax*
|
||||
|
||||
Squirrel is a high level imperative, object-oriented programming language,
|
||||
designed to be a light-weight scripting language that fits in the size, memory
|
||||
bandwidth, and real-time requirements of applications like video games. Files
|
||||
with the following extensions are recognized as squirrel files: .nut.
|
||||
|
||||
|
||||
TCSH *tcsh.vim* *ft-tcsh-syntax*
|
||||
|
||||
This covers the shell named "tcsh". It is a superset of csh. See |csh.vim|
|
||||
@@ -4830,16 +4850,28 @@ in their own color.
|
||||
Doesn't work recursively, thus you can't use
|
||||
":colorscheme" in a color scheme script.
|
||||
|
||||
To customize a color scheme use another name, e.g.
|
||||
You have two options for customizing a color scheme.
|
||||
For changing the appearance of specific colors, you
|
||||
can redefine a color name before loading the scheme.
|
||||
The desert scheme uses the khaki color for the cursor.
|
||||
To use a darker variation of the same color: >
|
||||
|
||||
let v:colornames['khaki'] = '#bdb76b'
|
||||
colorscheme desert
|
||||
<
|
||||
For further customization, such as changing
|
||||
|:highlight-link| associations, use another name, e.g.
|
||||
"~/.vim/colors/mine.vim", and use `:runtime` to load
|
||||
the original color scheme: >
|
||||
runtime colors/evening.vim
|
||||
hi Statement ctermfg=Blue guifg=Blue
|
||||
|
||||
< Before the color scheme will be loaded the
|
||||
|ColorSchemePre| autocommand event is triggered.
|
||||
After the color scheme has been loaded the
|
||||
|ColorScheme| autocommand event is triggered.
|
||||
< Before the color scheme will be loaded all default
|
||||
color list scripts (`colors/lists/default.vim`) will
|
||||
be executed and then the |ColorSchemePre| autocommand
|
||||
event is triggered. After the color scheme has been
|
||||
loaded the |ColorScheme| autocommand event is
|
||||
triggered.
|
||||
For info about writing a color scheme file: >
|
||||
:edit $VIMRUNTIME/colors/README.txt
|
||||
|
||||
@@ -4849,6 +4881,7 @@ in their own color.
|
||||
:hi[ghlight] {group-name}
|
||||
List one highlight group.
|
||||
|
||||
*highlight-clear*
|
||||
:hi[ghlight] clear Reset all highlighting to the defaults. Removes all
|
||||
highlighting for groups added by the user!
|
||||
Uses the current value of 'background' to decide which
|
||||
@@ -4862,7 +4895,9 @@ in their own color.
|
||||
|
||||
:hi[ghlight] [default] {group-name} {key}={arg} ..
|
||||
Add a highlight group, or change the highlighting for
|
||||
an existing group.
|
||||
an existing group. If a given color name is not
|
||||
recognized, each `colors/lists/default.vim` found on
|
||||
|'runtimepath'| will be loaded.
|
||||
See |highlight-args| for the {key}={arg} arguments.
|
||||
See |:highlight-default| for the optional [default]
|
||||
argument.
|
||||
@@ -5143,8 +5178,35 @@ guisp={color-name} *highlight-guisp*
|
||||
"gg" is the Green value
|
||||
"bb" is the Blue value
|
||||
All values are hexadecimal, range from "00" to "ff". Examples: >
|
||||
:highlight Comment guifg=#11f0c3 guibg=#ff00ff
|
||||
:highlight Comment guifg=#11f0c3 guibg=#ff00ff
|
||||
<
|
||||
If you are authoring a color scheme and use the same hexademical value
|
||||
repeatedly, you can define a name for it in |v:colornames|. For
|
||||
example: >
|
||||
|
||||
# provide a default value for this color but allow the user to
|
||||
# override it.
|
||||
:call extend(v:colornames, {'alt_turquoise': '#11f0c3'}, 'keep')
|
||||
:highlight Comment guifg=alt_turquoise guibg=magenta
|
||||
<
|
||||
If you are using a color scheme that relies on named colors and you
|
||||
would like to adjust the precise appearance of those colors, you can
|
||||
do so by overriding the values in |v:colornames| prior to loading the
|
||||
scheme: >
|
||||
|
||||
let v:colornames['alt_turquoise'] = '#22f0d3'
|
||||
colorscheme alt
|
||||
<
|
||||
If you want to develop a color list that can be relied on by others,
|
||||
it is best to prefix your color names. By convention these color lists
|
||||
are placed in the colors/lists directory. You can see an example in
|
||||
'$VIMRUNTIME/colors/lists/csscolors.vim'. This list would be sourced
|
||||
by a color scheme using: >
|
||||
|
||||
:runtime colors/lists/csscolors.vim
|
||||
:highlight Comment guifg=css_turquoise
|
||||
<
|
||||
|
||||
*highlight-groups* *highlight-default*
|
||||
These are the default highlighting groups. These groups are used by the
|
||||
'highlight' option default. Note that the highlighting depends on the value
|
||||
@@ -5205,6 +5267,10 @@ LineNrBelow Line number for when the 'relativenumber'
|
||||
*hl-CursorLineNr*
|
||||
CursorLineNr Like LineNr when 'cursorline' is set and 'cursorlineopt'
|
||||
contains "number" or is "both", for the cursor line.
|
||||
*hl-CursorLineSign*
|
||||
CursorLineSign Like SignColumn when 'cursorline' is set for the cursor line.
|
||||
*hl-CursorLineFold*
|
||||
CursorLineFold Like FoldColumn when 'cursorline' is set for the cursor line.
|
||||
*hl-MatchParen*
|
||||
MatchParen The character under the cursor or just before it, if it
|
||||
is a paired bracket, and its match. |pi_paren.txt|
|
||||
@@ -5431,7 +5497,7 @@ For Unix you can use the file ~/.vim/after/syntax/syncolor.vim. Example: >
|
||||
else
|
||||
highlight comment ctermfg=green guifg=green
|
||||
endif
|
||||
|
||||
<
|
||||
*E679*
|
||||
Do make sure this syncolor.vim script does not use a "syntax on", set the
|
||||
'background' option or uses a "colorscheme" command, because it results in an
|
||||
@@ -5444,11 +5510,11 @@ depends on the color scheme file. See |:colorscheme|.
|
||||
*syntax_cmd*
|
||||
The "syntax_cmd" variable is set to one of these values when the
|
||||
syntax/syncolor.vim files are loaded:
|
||||
"on" ":syntax on" command. Highlight colors are overruled but
|
||||
"on" `:syntax on` command. Highlight colors are overruled but
|
||||
links are kept
|
||||
"enable" ":syntax enable" command. Only define colors for groups that
|
||||
don't have highlighting yet. Use ":syntax default".
|
||||
"reset" ":syntax reset" command or loading a color scheme. Define all
|
||||
"enable" `:syntax enable` command. Only define colors for groups that
|
||||
don't have highlighting yet. Use `:highlight default` .
|
||||
"reset" `:syntax reset` command or loading a color scheme. Define all
|
||||
the colors.
|
||||
"skip" Don't define colors. Used to skip the default settings when a
|
||||
syncolor.vim file earlier in 'runtimepath' has already set
|
||||
|
||||
@@ -118,6 +118,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'cc' options.txt /*'cc'*
|
||||
'ccv' options.txt /*'ccv'*
|
||||
'cd' options.txt /*'cd'*
|
||||
'cdh' options.txt /*'cdh'*
|
||||
'cdhome' options.txt /*'cdhome'*
|
||||
'cdpath' options.txt /*'cdpath'*
|
||||
'cedit' options.txt /*'cedit'*
|
||||
'cf' options.txt /*'cf'*
|
||||
@@ -302,6 +304,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'gfs' options.txt /*'gfs'*
|
||||
'gfw' options.txt /*'gfw'*
|
||||
'ghr' options.txt /*'ghr'*
|
||||
'gli' options.txt /*'gli'*
|
||||
'go' options.txt /*'go'*
|
||||
'go-!' options.txt /*'go-!'*
|
||||
'go-A' options.txt /*'go-A'*
|
||||
@@ -339,6 +342,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'guifontset' options.txt /*'guifontset'*
|
||||
'guifontwide' options.txt /*'guifontwide'*
|
||||
'guiheadroom' options.txt /*'guiheadroom'*
|
||||
'guiligatures' options.txt /*'guiligatures'*
|
||||
'guioptions' options.txt /*'guioptions'*
|
||||
'guipty' options.txt /*'guipty'*
|
||||
'guitablabel' options.txt /*'guitablabel'*
|
||||
@@ -1138,6 +1142,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'tgc' options.txt /*'tgc'*
|
||||
'tgst' options.txt /*'tgst'*
|
||||
'thesaurus' options.txt /*'thesaurus'*
|
||||
'thesaurusfunc' options.txt /*'thesaurusfunc'*
|
||||
'tildeop' options.txt /*'tildeop'*
|
||||
'timeout' options.txt /*'timeout'*
|
||||
'timeoutlen' options.txt /*'timeoutlen'*
|
||||
@@ -2077,6 +2082,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:XMLent insert.txt /*:XMLent*
|
||||
:XMLns insert.txt /*:XMLns*
|
||||
:[range] motion.txt /*:[range]*
|
||||
:[vV\x16] autocmd.txt /*:[vV\\x16]*
|
||||
:\bar cmdline.txt /*:\\bar*
|
||||
:_! cmdline.txt /*:_!*
|
||||
:_# cmdline.txt /*:_#*
|
||||
@@ -2303,6 +2309,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:command-completion-custom map.txt /*:command-completion-custom*
|
||||
:command-completion-customlist map.txt /*:command-completion-customlist*
|
||||
:command-count map.txt /*:command-count*
|
||||
:command-keepscript map.txt /*:command-keepscript*
|
||||
:command-modifiers map.txt /*:command-modifiers*
|
||||
:command-nargs map.txt /*:command-nargs*
|
||||
:command-range map.txt /*:command-range*
|
||||
@@ -2749,6 +2756,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:map-<unique> map.txt /*:map-<unique>*
|
||||
:map-alt-keys map.txt /*:map-alt-keys*
|
||||
:map-arguments map.txt /*:map-arguments*
|
||||
:map-buffer map.txt /*:map-buffer*
|
||||
:map-cmd map.txt /*:map-cmd*
|
||||
:map-commands map.txt /*:map-commands*
|
||||
:map-expression map.txt /*:map-expression*
|
||||
@@ -2762,6 +2770,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:map-special-chars map.txt /*:map-special-chars*
|
||||
:map-special-keys map.txt /*:map-special-keys*
|
||||
:map-undo map.txt /*:map-undo*
|
||||
:map-unique map.txt /*:map-unique*
|
||||
:map-verbose map.txt /*:map-verbose*
|
||||
:map_l map.txt /*:map_l*
|
||||
:map_l! map.txt /*:map_l!*
|
||||
@@ -3946,7 +3955,6 @@ E107 eval.txt /*E107*
|
||||
E108 eval.txt /*E108*
|
||||
E109 eval.txt /*E109*
|
||||
E1091 vim9.txt /*E1091*
|
||||
E1092 vim9.txt /*E1092*
|
||||
E1094 vim9.txt /*E1094*
|
||||
E11 cmdline.txt /*E11*
|
||||
E110 eval.txt /*E110*
|
||||
@@ -3992,6 +4000,9 @@ E1233 eval.txt /*E1233*
|
||||
E1237 map.txt /*E1237*
|
||||
E1239 eval.txt /*E1239*
|
||||
E124 eval.txt /*E124*
|
||||
E1243 options.txt /*E1243*
|
||||
E1244 message.txt /*E1244*
|
||||
E1245 cmdline.txt /*E1245*
|
||||
E125 eval.txt /*E125*
|
||||
E126 eval.txt /*E126*
|
||||
E127 eval.txt /*E127*
|
||||
@@ -5236,6 +5247,7 @@ WORD motion.txt /*WORD*
|
||||
WWW intro.txt /*WWW*
|
||||
Win32 os_win32.txt /*Win32*
|
||||
WinBar gui.txt /*WinBar*
|
||||
WinClosed autocmd.txt /*WinClosed*
|
||||
WinEnter autocmd.txt /*WinEnter*
|
||||
WinLeave autocmd.txt /*WinLeave*
|
||||
WinNew autocmd.txt /*WinNew*
|
||||
@@ -5454,6 +5466,7 @@ arglistid() eval.txt /*arglistid()*
|
||||
argument-list editing.txt /*argument-list*
|
||||
argv() eval.txt /*argv()*
|
||||
argv-variable eval.txt /*argv-variable*
|
||||
arrow_modifiers term.txt /*arrow_modifiers*
|
||||
as motion.txt /*as*
|
||||
asin() eval.txt /*asin()*
|
||||
asm.vim syntax.txt /*asm.vim*
|
||||
@@ -5930,6 +5943,8 @@ compl-omni-filetypes insert.txt /*compl-omni-filetypes*
|
||||
compl-spelling insert.txt /*compl-spelling*
|
||||
compl-stop insert.txt /*compl-stop*
|
||||
compl-tag insert.txt /*compl-tag*
|
||||
compl-thesaurus insert.txt /*compl-thesaurus*
|
||||
compl-thesaurusfunc insert.txt /*compl-thesaurusfunc*
|
||||
compl-vim insert.txt /*compl-vim*
|
||||
compl-whole-line insert.txt /*compl-whole-line*
|
||||
complete() eval.txt /*complete()*
|
||||
@@ -6551,6 +6566,7 @@ format-bullet-list tips.txt /*format-bullet-list*
|
||||
format-comments change.txt /*format-comments*
|
||||
format-formatexpr change.txt /*format-formatexpr*
|
||||
formatting change.txt /*formatting*
|
||||
forth.vim syntax.txt /*forth.vim*
|
||||
fortran.vim syntax.txt /*fortran.vim*
|
||||
friendship intro.txt /*friendship*
|
||||
frombook usr_01.txt /*frombook*
|
||||
@@ -6604,6 +6620,7 @@ ft-erlang-syntax syntax.txt /*ft-erlang-syntax*
|
||||
ft-euphoria-syntax syntax.txt /*ft-euphoria-syntax*
|
||||
ft-flexwiki-syntax syntax.txt /*ft-flexwiki-syntax*
|
||||
ft-form-syntax syntax.txt /*ft-form-syntax*
|
||||
ft-forth-syntax syntax.txt /*ft-forth-syntax*
|
||||
ft-fortran-indent indent.txt /*ft-fortran-indent*
|
||||
ft-fortran-plugin filetype.txt /*ft-fortran-plugin*
|
||||
ft-fortran-syntax syntax.txt /*ft-fortran-syntax*
|
||||
@@ -6695,6 +6712,7 @@ ft-sql-omni insert.txt /*ft-sql-omni*
|
||||
ft-sql-syntax syntax.txt /*ft-sql-syntax*
|
||||
ft-sqlanywhere-syntax syntax.txt /*ft-sqlanywhere-syntax*
|
||||
ft-sqlinformix-syntax syntax.txt /*ft-sqlinformix-syntax*
|
||||
ft-squirrel-syntax syntax.txt /*ft-squirrel-syntax*
|
||||
ft-syntax-omni insert.txt /*ft-syntax-omni*
|
||||
ft-tcsh-syntax syntax.txt /*ft-tcsh-syntax*
|
||||
ft-termcap-syntax syntax.txt /*ft-termcap-syntax*
|
||||
@@ -6784,6 +6802,7 @@ g:ada_with_gnat_project_files ft_ada.txt /*g:ada_with_gnat_project_files*
|
||||
g:ada_withuse_ordinary ft_ada.txt /*g:ada_withuse_ordinary*
|
||||
g:clojure_align_multiline_strings indent.txt /*g:clojure_align_multiline_strings*
|
||||
g:clojure_align_subforms indent.txt /*g:clojure_align_subforms*
|
||||
g:clojure_discard_macro syntax.txt /*g:clojure_discard_macro*
|
||||
g:clojure_fold syntax.txt /*g:clojure_fold*
|
||||
g:clojure_fuzzy_indent indent.txt /*g:clojure_fuzzy_indent*
|
||||
g:clojure_fuzzy_indent_blacklist indent.txt /*g:clojure_fuzzy_indent_blacklist*
|
||||
@@ -7255,6 +7274,7 @@ hasmapto() eval.txt /*hasmapto()*
|
||||
hebrew hebrew.txt /*hebrew*
|
||||
hebrew.txt hebrew.txt /*hebrew.txt*
|
||||
help helphelp.txt /*help*
|
||||
help-buffer-options helphelp.txt /*help-buffer-options*
|
||||
help-context help.txt /*help-context*
|
||||
help-curwin tips.txt /*help-curwin*
|
||||
help-summary usr_02.txt /*help-summary*
|
||||
@@ -7263,7 +7283,6 @@ help-translated helphelp.txt /*help-translated*
|
||||
help-writing helphelp.txt /*help-writing*
|
||||
help-xterm-window helphelp.txt /*help-xterm-window*
|
||||
help.txt help.txt /*help.txt*
|
||||
helpfile_name.txt helphelp.txt /*helpfile_name.txt*
|
||||
helphelp helphelp.txt /*helphelp*
|
||||
helphelp.txt helphelp.txt /*helphelp.txt*
|
||||
hex-editing tips.txt /*hex-editing*
|
||||
@@ -7275,6 +7294,7 @@ hidden-options options.txt /*hidden-options*
|
||||
hidden-quit windows.txt /*hidden-quit*
|
||||
highlight-args syntax.txt /*highlight-args*
|
||||
highlight-changed version4.txt /*highlight-changed*
|
||||
highlight-clear syntax.txt /*highlight-clear*
|
||||
highlight-cterm syntax.txt /*highlight-cterm*
|
||||
highlight-ctermbg syntax.txt /*highlight-ctermbg*
|
||||
highlight-ctermfg syntax.txt /*highlight-ctermfg*
|
||||
@@ -7310,7 +7330,9 @@ hl-Cursor syntax.txt /*hl-Cursor*
|
||||
hl-CursorColumn syntax.txt /*hl-CursorColumn*
|
||||
hl-CursorIM syntax.txt /*hl-CursorIM*
|
||||
hl-CursorLine syntax.txt /*hl-CursorLine*
|
||||
hl-CursorLineFold syntax.txt /*hl-CursorLineFold*
|
||||
hl-CursorLineNr syntax.txt /*hl-CursorLineNr*
|
||||
hl-CursorLineSign syntax.txt /*hl-CursorLineSign*
|
||||
hl-DiffAdd syntax.txt /*hl-DiffAdd*
|
||||
hl-DiffChange syntax.txt /*hl-DiffChange*
|
||||
hl-DiffDelete syntax.txt /*hl-DiffDelete*
|
||||
@@ -7368,7 +7390,9 @@ hl-debugBreakpoint terminal.txt /*hl-debugBreakpoint*
|
||||
hl-debugPC terminal.txt /*hl-debugPC*
|
||||
hlID() eval.txt /*hlID()*
|
||||
hlexists() eval.txt /*hlexists()*
|
||||
hlget() eval.txt /*hlget()*
|
||||
hlsearch-variable eval.txt /*hlsearch-variable*
|
||||
hlset() eval.txt /*hlset()*
|
||||
holy-grail index.txt /*holy-grail*
|
||||
home intro.txt /*home*
|
||||
home-replace editing.txt /*home-replace*
|
||||
@@ -8408,6 +8432,7 @@ operator-variable eval.txt /*operator-variable*
|
||||
option-backslash options.txt /*option-backslash*
|
||||
option-list quickref.txt /*option-list*
|
||||
option-summary options.txt /*option-summary*
|
||||
option-value-function options.txt /*option-value-function*
|
||||
option-window options.txt /*option-window*
|
||||
option_restore() todo.txt /*option_restore()*
|
||||
option_save() todo.txt /*option_save()*
|
||||
@@ -8530,6 +8555,7 @@ plugin usr_05.txt /*plugin*
|
||||
plugin-details filetype.txt /*plugin-details*
|
||||
plugin-filetype usr_41.txt /*plugin-filetype*
|
||||
plugin-special usr_41.txt /*plugin-special*
|
||||
plugin_name.txt helphelp.txt /*plugin_name.txt*
|
||||
pmbcs-option print.txt /*pmbcs-option*
|
||||
pmbfn-option print.txt /*pmbfn-option*
|
||||
popt-option print.txt /*popt-option*
|
||||
@@ -8682,6 +8708,7 @@ python-command if_pyth.txt /*python-command*
|
||||
python-commands if_pyth.txt /*python-commands*
|
||||
python-current if_pyth.txt /*python-current*
|
||||
python-dynamic if_pyth.txt /*python-dynamic*
|
||||
python-environment if_pyth.txt /*python-environment*
|
||||
python-error if_pyth.txt /*python-error*
|
||||
python-eval if_pyth.txt /*python-eval*
|
||||
python-examples if_pyth.txt /*python-examples*
|
||||
@@ -8928,6 +8955,7 @@ save-file editing.txt /*save-file*
|
||||
save-settings starting.txt /*save-settings*
|
||||
scheme.vim syntax.txt /*scheme.vim*
|
||||
scp pi_netrw.txt /*scp*
|
||||
scratch-buffer windows.txt /*scratch-buffer*
|
||||
screenattr() eval.txt /*screenattr()*
|
||||
screenchar() eval.txt /*screenchar()*
|
||||
screenchars() eval.txt /*screenchars()*
|
||||
@@ -9055,6 +9083,9 @@ simulated-command vi_diff.txt /*simulated-command*
|
||||
sin() eval.txt /*sin()*
|
||||
single-repeat repeat.txt /*single-repeat*
|
||||
sinh() eval.txt /*sinh()*
|
||||
sizeofint-variable eval.txt /*sizeofint-variable*
|
||||
sizeoflong-variable eval.txt /*sizeoflong-variable*
|
||||
sizeofpointer-variable eval.txt /*sizeofpointer-variable*
|
||||
skeleton autocmd.txt /*skeleton*
|
||||
skip_defaults_vim starting.txt /*skip_defaults_vim*
|
||||
slice eval.txt /*slice*
|
||||
@@ -9219,6 +9250,7 @@ sqlj ft_sql.txt /*sqlj*
|
||||
sqlserver ft_sql.txt /*sqlserver*
|
||||
sqlsettype ft_sql.txt /*sqlsettype*
|
||||
sqrt() eval.txt /*sqrt()*
|
||||
squirrel.vim syntax.txt /*squirrel.vim*
|
||||
srand() eval.txt /*srand()*
|
||||
sscanf eval.txt /*sscanf*
|
||||
standard-plugin usr_05.txt /*standard-plugin*
|
||||
@@ -9826,6 +9858,7 @@ try-echoerr eval.txt /*try-echoerr*
|
||||
try-finally eval.txt /*try-finally*
|
||||
try-nested eval.txt /*try-nested*
|
||||
try-nesting eval.txt /*try-nesting*
|
||||
tsrfu' options.txt /*tsrfu'*
|
||||
tutor usr_01.txt /*tutor*
|
||||
twice if_cscop.txt /*twice*
|
||||
two-engines pattern.txt /*two-engines*
|
||||
@@ -9930,6 +9963,7 @@ v:charconvert_to eval.txt /*v:charconvert_to*
|
||||
v:cmdarg eval.txt /*v:cmdarg*
|
||||
v:cmdbang eval.txt /*v:cmdbang*
|
||||
v:collate eval.txt /*v:collate*
|
||||
v:colornames eval.txt /*v:colornames*
|
||||
v:completed_item eval.txt /*v:completed_item*
|
||||
v:count eval.txt /*v:count*
|
||||
v:count1 eval.txt /*v:count1*
|
||||
@@ -9985,6 +10019,9 @@ v:scrollstart eval.txt /*v:scrollstart*
|
||||
v:searchforward eval.txt /*v:searchforward*
|
||||
v:servername eval.txt /*v:servername*
|
||||
v:shell_error eval.txt /*v:shell_error*
|
||||
v:sizeofint eval.txt /*v:sizeofint*
|
||||
v:sizeoflong eval.txt /*v:sizeoflong*
|
||||
v:sizeofpointer eval.txt /*v:sizeofpointer*
|
||||
v:statusmsg eval.txt /*v:statusmsg*
|
||||
v:swapchoice eval.txt /*v:swapchoice*
|
||||
v:swapcommand eval.txt /*v:swapcommand*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*term.txt* For Vim version 8.2. Last change: 2021 Aug 29
|
||||
*term.txt* For Vim version 8.2. Last change: 2021 Dec 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -150,8 +150,10 @@ terminal that tmux is running in): >
|
||||
" Enable focus event tracking, see :help xterm-focus-event
|
||||
let &t_fe = "\<Esc>[?1004h"
|
||||
let &t_fd = "\<Esc>[?1004l"
|
||||
execute "set <FocusGained>=\<Esc>[I"
|
||||
execute "set <FocusLost>=\<Esc>[O"
|
||||
|
||||
" Enable modified arrow keys, see :help xterm-modifier-keys
|
||||
" Enable modified arrow keys, see :help arrow_modifiers
|
||||
execute "silent! set <xUp>=\<Esc>[@;*A"
|
||||
execute "silent! set <xDown>=\<Esc>[@;*B"
|
||||
execute "silent! set <xRight>=\<Esc>[@;*C"
|
||||
@@ -252,7 +254,19 @@ another code. That is to avoid that the codes obtained from xterm directly
|
||||
Another special value is a termcap entry ending in "@;*X". This is for cursor
|
||||
keys, which either use "CSI X" or "CSI 1 ; modifier X". Thus the "@"
|
||||
stands for either "1" if a modifier follows, or nothing.
|
||||
*xterm-scroll-region*
|
||||
*arrow_modifiers*
|
||||
Several terminal emulators (alacritty, gnome, konsole, etc.) send special
|
||||
codes for keys with modifiers, but these do not have an entry in the
|
||||
termcap/terminfo database. You can make them work by adding a few lines in
|
||||
your vimrc. For example, to make the Control modifier work with arrow keys
|
||||
for the gnome terminal: >
|
||||
if &term =~ 'gnome'
|
||||
execute "set <xUp>=\<Esc>[@;*A"
|
||||
execute "set <xDown>=\<Esc>[@;*B"
|
||||
execute "set <xRight>=\<Esc>[@;*C"
|
||||
execute "set <xLeft>=\<Esc>[@;*D"
|
||||
endif
|
||||
< *xterm-scroll-region*
|
||||
The default termcap entry for xterm on Sun and other platforms does not
|
||||
contain the entry for scroll regions. Add ":cs=\E[%i%d;%dr:" to the xterm
|
||||
entry in /etc/termcap and everything should work.
|
||||
@@ -594,6 +608,8 @@ If your terminal does support this but Vim does not recognize the terminal,
|
||||
you may have to set the options yourself: >
|
||||
let &t_fe = "\<Esc>[?1004h"
|
||||
let &t_fd = "\<Esc>[?1004l"
|
||||
execute "set <FocusGained>=\<Esc>[I"
|
||||
execute "set <FocusLost>=\<Esc>[O"
|
||||
If this causes garbage to show when Vim starts up then it doesn't work.
|
||||
|
||||
*termcap-colors*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*terminal.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
||||
*terminal.txt* For Vim version 8.2. Last change: 2021 Nov 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -168,9 +168,6 @@ terminal window will start with a white or black background.
|
||||
To use a different color the Terminal highlight group can be used, for
|
||||
example: >
|
||||
hi Terminal ctermbg=lightgrey ctermfg=blue guibg=lightgrey guifg=blue
|
||||
The highlight needs to be defined before the terminal is created. Doing it
|
||||
later, or setting 'wincolor', will only have effect when the program running
|
||||
in the terminal displays text or clears the terminal.
|
||||
Instead of Terminal another group can be specified with the "term_highlight"
|
||||
option for `term_start()`.
|
||||
|
||||
@@ -243,7 +240,7 @@ Command syntax ~
|
||||
++shell Instead of executing {command}
|
||||
directly, use a shell, like with
|
||||
`:!command` *E279*
|
||||
{only works on Unix currently}
|
||||
{only works on Unix and MS-Windows}
|
||||
++kill={how} When trying to close the terminal
|
||||
window kill the job with {how}. See
|
||||
|term_setkill()| for the values.
|
||||
@@ -874,7 +871,8 @@ term_start({cmd} [, {options}]) *term_start()*
|
||||
"term_name" name to use for the buffer name, instead
|
||||
of the command name.
|
||||
"term_rows" vertical size to use for the terminal,
|
||||
instead of using 'termwinsize'
|
||||
instead of using 'termwinsize'; valid
|
||||
range is from zero to 1000
|
||||
"term_cols" horizontal size to use for the terminal,
|
||||
instead of using 'termwinsize'
|
||||
"vertical" split the window vertically; note that
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*testing.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
||||
*testing.txt* For Vim version 8.2. Last change: 2021 Dec 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -65,7 +65,8 @@ test_garbagecollect_now() *test_garbagecollect_now()*
|
||||
Like garbagecollect(), but executed right away. This must
|
||||
only be called directly to avoid any structure to exist
|
||||
internally, and |v:testing| must have been set before calling
|
||||
any function.
|
||||
any function. This will not work when called from a :def
|
||||
function, because variables on the stack will be freed.
|
||||
|
||||
|
||||
test_garbagecollect_soon() *test_garbagecollect_soon()*
|
||||
@@ -85,14 +86,14 @@ test_getvalue({name}) *test_getvalue()*
|
||||
test_gui_drop_files({list}, {row}, {col}, {mods})
|
||||
Drop one or more files in {list} in the window at {row}, {col}.
|
||||
This function only works when the GUI is running and the
|
||||
|drag-n-drop| feature is present.
|
||||
|
||||
|drop_file| feature is present.
|
||||
|
||||
The supported values for {mods} are:
|
||||
0x4 Shift
|
||||
0x8 Alt
|
||||
0x10 Ctrl
|
||||
The files are added to the argument list and the first file in
|
||||
{list} is edited in the window. See |drag-n-drop| for more
|
||||
The files are added to the |argument-list| and the first file
|
||||
in {list} is edited in the window. See |drag-n-drop| for more
|
||||
information.
|
||||
|
||||
*test_gui_mouse_event()*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*textprop.txt* For Vim version 8.2. Last change: 2021 Aug 16
|
||||
*textprop.txt* For Vim version 8.2. Last change: 2021 Nov 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -230,13 +230,25 @@ prop_find({props} [, {direction}])
|
||||
|
||||
|
||||
prop_list({lnum} [, {props}]) *prop_list()*
|
||||
Return a List with all text properties in line {lnum}.
|
||||
Returns a List with all the text properties in line {lnum}.
|
||||
|
||||
When {props} contains a "bufnr" item, use this buffer instead
|
||||
of the current buffer.
|
||||
The following optional items are supported in {props}:
|
||||
bufnr use this buffer instead of the current buffer
|
||||
end_lnum return text properties in all the lines
|
||||
between {lnum} and {end_lnum} (inclusive).
|
||||
A negative value is used as an offset from the
|
||||
last buffer line; -1 refers to the last buffer
|
||||
line.
|
||||
types List of property type names. Return only text
|
||||
properties that match one of the type names.
|
||||
ids List of property identifiers. Return only text
|
||||
properties with one of these identifiers.
|
||||
|
||||
The properties are ordered by starting column and priority.
|
||||
Each property is a Dict with these entries:
|
||||
lnum starting line number. Present only when
|
||||
returning text properties between {lnum} and
|
||||
{end_lnum}.
|
||||
col starting column
|
||||
length length in bytes, one more if line break is
|
||||
included
|
||||
@@ -253,6 +265,30 @@ prop_list({lnum} [, {props}]) *prop_list()*
|
||||
When "end" is zero the property continues in the next line.
|
||||
The line break after this line is included.
|
||||
|
||||
Returns an empty list on error.
|
||||
|
||||
Examples:
|
||||
" get text properties placed in line 5
|
||||
echo prop_list(5)
|
||||
" get text properties placed in line 20 in buffer 4
|
||||
echo prop_list(20, {'bufnr': 4})
|
||||
" get all the text properties between line 1 and 20
|
||||
echo prop_list(1, {'end_lnum': 20})
|
||||
" get all the text properties of type 'myprop'
|
||||
echo prop_list(1, {'types': ['myprop'],
|
||||
\ 'end_lnum': -1})
|
||||
" get all the text properties of type 'prop1' or 'prop2'
|
||||
echo prop_list(1, {'types': ['prop1', 'prop2'],
|
||||
\ 'end_lnum': -1})
|
||||
" get all the text properties with ID 8
|
||||
echo prop_list(1, {'ids': [8], 'end_lnum': line('$')})
|
||||
" get all the text properties with ID 10 and 20
|
||||
echo prop_list(1, {'ids': [10, 20], 'end_lnum': -1})
|
||||
" get text properties with type 'myprop' and ID 100
|
||||
" in buffer 4.
|
||||
echo prop_list(1, {'bufnr': 4, 'types': ['myprop'],
|
||||
\ 'ids': [100], 'end_lnum': -1})
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetLnum()->prop_list()
|
||||
<
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*tips.txt* For Vim version 8.2. Last change: 2020 Dec 29
|
||||
*tips.txt* For Vim version 8.2. Last change: 2021 Nov 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -549,6 +549,7 @@ the current window, try this custom `:HelpCurwin` command:
|
||||
endif
|
||||
if !getcompletion(a:subject, 'help')->empty()
|
||||
execute mods .. ' edit ' .. &helpfile
|
||||
set buftype=help
|
||||
endif
|
||||
return 'help ' .. a:subject
|
||||
endfunction
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 8.2. Last change: 2021 Sep 22
|
||||
*todo.txt* For Vim version 8.2. Last change: 2021 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,13 +38,8 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Flaky test op Windows:
|
||||
From test_vim9_script.vim:
|
||||
Found errors in Test_no_unknown_error_after_error():
|
||||
command line..script D:/a/vim/vim/src2/testdir/runtest.vim[486]..function RunTheTest[44]..Test_no_unknown_error_after_error line 22: Expected 'E1012:' but got 'E684: list index out of range: 0': so Xdef
|
||||
|
||||
Vim9 - Make everything work:
|
||||
- Check TODO items in vim9compile.c and vim9execute.c
|
||||
- Check TODO items in vim9execute.c
|
||||
- use CheckLegacyAndVim9Success(lines) in many more places
|
||||
- For builtin functions using tv_get_string*() use check_for_string() to be
|
||||
more strict about the argument type (not a bool).
|
||||
@@ -199,8 +194,6 @@ Terminal emulator window:
|
||||
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
||||
(#3327)
|
||||
- Allow for specifying the directory, with ++cwd={dir}.
|
||||
- With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
|
||||
#2977)
|
||||
- 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
|
||||
@@ -219,8 +212,6 @@ Terminal emulator window:
|
||||
- When 'encoding' is not utf-8, or the job is using another encoding, setup
|
||||
conversions.
|
||||
|
||||
Include patch #6290: recognize shell directory change.
|
||||
|
||||
When using 'cryptmethod' xchaha20 the undo file is not encrypted.
|
||||
Need to handle extra bytes.
|
||||
|
||||
@@ -230,6 +221,8 @@ Fails in line 64 of Ch_communicate, no exception is thrown.
|
||||
Patch for Template string: #4634
|
||||
Have another look at the implementation.
|
||||
|
||||
Add expanding <script> which works like <sfile> everywhere. #9189
|
||||
|
||||
Rename getdigraphlist -> digraph_getlist() etc.
|
||||
|
||||
Valgrind reports memory leaks in test_options.
|
||||
@@ -262,6 +255,10 @@ test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows.
|
||||
|
||||
Mapping with partial match not executed properly in GTK. (Ingo Karkat, #7082)
|
||||
|
||||
Information for a specific terminal (e.g. gnome, tmux, konsole, alacritty) is
|
||||
spread out. Make a section with copy/paste examples of script and pointers to
|
||||
more information.
|
||||
|
||||
Problem that a previous silent ":throw" causes a following try/catch not to
|
||||
work. (ZyX, 2013 Sep 28) With examples: (Malcolm Rowe, 2015 Dec 24)
|
||||
Also see #8487 for an example.
|
||||
@@ -272,12 +269,18 @@ Was originally written by Felipe Morales.
|
||||
Request to use "." for the cursor column in search pattern \%<.c and \%<.v.
|
||||
(#8179)
|
||||
|
||||
":filter set termcap" only filters terminal codes, not keys. (#9297)
|
||||
|
||||
Remove SPACE_IN_FILENAME ? It is only used for completion.
|
||||
|
||||
When 'term' starts with "foot" then default t_TI and t_TE to the values used
|
||||
for the builtin xterm termcap.
|
||||
|
||||
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
|
||||
(#4087) Did patch 8.2.2379 help?
|
||||
Also, z= in German on a long word can take a very long time, but CTRL-C to
|
||||
interrupt does not work. Where to add ui_breakcheck()?
|
||||
|
||||
Remove SPACE_IN_FILENAME ? It is only used for completion.
|
||||
New English spell files also have very slow suggestions.
|
||||
|
||||
Searching for \%'> does not find anything when using line Visual selection.
|
||||
Probably because it's using MAXCOL. #8238
|
||||
@@ -629,36 +632,31 @@ Window size changes after closing a tab. (#4741)
|
||||
|
||||
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
|
||||
|
||||
Lifepillar: Updated/cleaned up color schemes:
|
||||
https://github.com/lifepillar/vim8-colorschemes.
|
||||
|
||||
Include a few color schemes, based on popularity:
|
||||
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
||||
Color schemes:
|
||||
NOTE: modernizing the default colorschemes _AND_ introducing new ones is now
|
||||
a project in its own right: https://github.com/vim/colorschemes. Feel free to
|
||||
reach out if you want to lend a hand.
|
||||
- Lifepillar: Updated/cleaned up color schemes:
|
||||
https://github.com/lifepillar/vim8-colorschemes.
|
||||
- Include a few color schemes, based on popularity:
|
||||
- http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
||||
http://vimawesome.com/?q=tag:color-scheme
|
||||
Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||
- monokai - Xia Crusoe (2017 Aug 4)
|
||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||
Lifepillar, 2018 Jan 22, #2573)
|
||||
- janah - Marco Hinz (2017 Aug 4)
|
||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||
Suggested by Hiroki Kokubun:
|
||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||
Include solarized color scheme?, it does not support termguicolors.
|
||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||
- Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||
- monokai - Xia Crusoe (2017 Aug 4)
|
||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||
Lifepillar, 2018 Jan 22, #2573)
|
||||
- janah - Marco Hinz (2017 Aug 4)
|
||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||
- Suggested by Hiroki Kokubun:
|
||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||
- Include solarized color scheme?, it does not support termguicolors.
|
||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||
|
||||
Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
|
||||
Mar 5)
|
||||
|
||||
Many users don't like 'thesaurus' to match so many words. (#4667, #1611)
|
||||
- when the match with the first word is partial, don't add other words on that
|
||||
line.
|
||||
- support other file formats, such as comma separated. Indicate by a prefix
|
||||
to the file in the 'thesaurus' option.
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
(Jakson A. Aquino, 2006 Jun 14)
|
||||
|
||||
Some composing characters actually add a cell width to the character they are
|
||||
on top off, making the whole thing two characters wide. (#4526)
|
||||
|
||||
@@ -848,9 +846,7 @@ window for the buffer.
|
||||
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?
|
||||
|
||||
Compiler warnings (geeknik, 2017 Oct 26):
|
||||
- signed integer overflow in do_sub() (#2249)
|
||||
- signed integer overflow in get_address() (#2248)
|
||||
Compiler warning (geeknik, 2017 Oct 26):
|
||||
- undefined left shift in get_string_tv() (#2250)
|
||||
|
||||
Add Native language protocol server (LSP) support. (Yegappan Lakshmanan, 2018
|
||||
@@ -1470,10 +1466,6 @@ When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
|
||||
restore the mode properly. (Andrew Stewart, 2016 Apr 20)
|
||||
Do not trigger the event?
|
||||
|
||||
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
|
||||
|
||||
Patch to make the behavior of "w" more straightforward, but not Vi compatible.
|
||||
With a 'cpo' flag. (Christian Brabandt, 2016 Feb 8)
|
||||
|
||||
@@ -3901,7 +3893,7 @@ User Friendlier:
|
||||
$HOME/_vimrc, etc.) and add "edit vimrc" to the File menu.
|
||||
- Add a way to save local settings and mappings into a new plugin file.
|
||||
":mkplugin <file>"?
|
||||
- Add mappings local to a window: ":map <window> ..."?
|
||||
- Add mappings local to a window: ":map <window> ..." #9339
|
||||
9 Add buffer-local menu. Should offer a choice between removing the menu or
|
||||
disabling it. Be careful that tear-offs don't disappear (keep one empty
|
||||
item?).
|
||||
@@ -4159,6 +4151,9 @@ Printing:
|
||||
|
||||
|
||||
Syntax highlighting:
|
||||
Long term goal: faster, better, etc. Options:
|
||||
- use treesitter, NeoVim uses it
|
||||
- use TextMate, vscode uses it. #9087
|
||||
8 Make ":syn off" use 'runtimepath' instead of $VIMRUNTIME. (Gary Johnson)
|
||||
Should do the same for ":syn on" and ":syn manual".
|
||||
8 Support "containedin" argument for ":syn include", so that the defined
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_06.txt* For Vim version 8.2. Last change: 2019 Jun 01
|
||||
*usr_06.txt* For Vim version 8.2. Last change: 2021 Nov 07
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -184,7 +184,30 @@ this command: >
|
||||
:runtime syntax/colortest.vim
|
||||
|
||||
You will see text in various color combinations. You can check which ones are
|
||||
readable and look nice.
|
||||
readable and look nice. These aren't the only colors available to you though.
|
||||
You can specify #rrggbb hex colors and you can define new names for hex
|
||||
colors in |v:colornames| like so: >
|
||||
|
||||
let v:colornames['mine_red'] = '#aa0000'
|
||||
<
|
||||
If you are authoring a color scheme for others to use, it is important
|
||||
to define these colors only when they do not exist: >
|
||||
|
||||
call extend(v:colornames, {'mine_red': '#aa0000'}, 'keep')
|
||||
|
||||
This allows users of the color scheme to override the precise definition of
|
||||
that color prior to loading your color scheme. For example, in a |.vimrc|
|
||||
file:
|
||||
|
||||
runtime colors/lists/css_colors.vim
|
||||
let v:colornames['your_red'] = v:colornames['css_red']
|
||||
colorscheme yourscheme
|
||||
|
||||
As a color scheme author, you should be able to rely on some color names for
|
||||
GUI colors. These are defined in `colors/lists/default.vim`. All such files
|
||||
found on the |'runtimepath'| are loaded each time the colorscheme command is
|
||||
run. A canonical list is provided by the vim distribution, which should
|
||||
include all X11 colors (previously defined in rgb.txt).
|
||||
|
||||
==============================================================================
|
||||
*06.4* With colors or without colors
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_20.txt* For Vim version 8.2. Last change: 2006 Apr 24
|
||||
*usr_20.txt* For Vim version 8.2. Last change: 2021 Nov 18
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -289,11 +289,11 @@ In chapter 3 we briefly mentioned the history. The basics are that you can
|
||||
use the <Up> key to recall an older command line. <Down> then takes you back
|
||||
to newer commands.
|
||||
|
||||
There are actually four histories. The ones we will mention here are for ":"
|
||||
There are actually five histories. The ones we will mention here are for ":"
|
||||
commands and for "/" and "?" search commands. The "/" and "?" commands share
|
||||
the same history, because they are both search commands. The two other
|
||||
histories are for expressions and input lines for the input() function.
|
||||
|cmdline-history|
|
||||
the same history, because they are both search commands. The three other
|
||||
histories are for expressions, debug mode commands and input lines for the
|
||||
input() function. |cmdline-history|
|
||||
|
||||
Suppose you have done a ":set" command, typed ten more colon commands and then
|
||||
want to repeat that ":set" command again. You could press ":" and then ten
|
||||
|
||||
@@ -925,6 +925,8 @@ Syntax and highlighting: *syntax-functions* *highlighting-functions*
|
||||
getmatches() get all matches defined by |matchadd()| and
|
||||
the |:match| commands
|
||||
hlexists() check if a highlight group exists
|
||||
hlget() get highlight group attributes
|
||||
hlset() set highlight group attributes
|
||||
hlID() get ID of a highlight group
|
||||
synID() get syntax ID at a specific position
|
||||
synIDattr() get a specific attribute of a syntax ID
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 8.2. Last change: 2021 Sep 06
|
||||
*various.txt* For Vim version 8.2. Last change: 2021 Dec 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -172,7 +172,7 @@ g8 Print the hex values of the bytes used in the
|
||||
|
||||
*:z!*
|
||||
:[range]z![+-^.=][count]
|
||||
Like ":z:", but when [count] is not specified, it
|
||||
Like ":z", but when [count] is not specified, it
|
||||
defaults to the Vim window height minus one.
|
||||
|
||||
:[range]z[!]#[+-^.=][count] *:z#*
|
||||
@@ -369,7 +369,7 @@ N *+digraphs* |digraphs| *E196*
|
||||
*+dnd* Support for DnD into the "~ register |quote_~|.
|
||||
B *+emacs_tags* |emacs-tags| files
|
||||
N *+eval* expression evaluation |eval.txt|
|
||||
N *+ex_extra* always on now, used to be for Vim's extra Ex commands
|
||||
T *+ex_extra* always on now, used to be for Vim's extra Ex commands
|
||||
N *+extra_search* |'hlsearch'| and |'incsearch'| options.
|
||||
- *+farsi* Removed: |farsi| language
|
||||
N *+file_in_path* |gf|, |CTRL-W_f| and |<cfile>|
|
||||
@@ -391,7 +391,7 @@ m *+hangul_input* Hangul input support |hangul|
|
||||
T *+insert_expand* |insert_expand| Insert mode completion
|
||||
m *+ipv6* Support for IPv6 networking |channel|
|
||||
m *+job* starting and stopping jobs |job|
|
||||
S *+jumplist* |jumplist|
|
||||
T *+jumplist* |jumplist|; Always enabled since 8.2.3795
|
||||
B *+keymap* |'keymap'|
|
||||
N *+lambda* |lambda| and |closure|
|
||||
B *+langmap* |'langmap'|
|
||||
@@ -423,7 +423,7 @@ N *+multi_lang* non-English language support |multi-lang|
|
||||
m *+mzscheme* Mzscheme interface |mzscheme|
|
||||
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
||||
m *+netbeans_intg* |netbeans|
|
||||
*+num64* 64-bit Number support |Number|
|
||||
T *+num64* 64-bit Number support |Number|
|
||||
Always enabled since 8.2.0271, use v:numbersize to
|
||||
check the actual size of a Number.
|
||||
m *+ole* Win32 GUI only: |ole-interface|
|
||||
@@ -471,15 +471,15 @@ N *+textobjects* |text-objects| selection
|
||||
N *+textprop* |text-properties|
|
||||
*+tgetent* non-Unix only: able to use external termcap
|
||||
N *+timers* the |timer_start()| function
|
||||
N *+title* Setting the window 'title' and 'icon'
|
||||
T *+title* Setting the window 'title' and 'icon'; Always enabled
|
||||
N *+toolbar* |gui-toolbar|
|
||||
T *+user_commands* User-defined commands. |user-commands|
|
||||
Always enabled since 8.1.1210.
|
||||
B *+vartabs* Variable-width tabstops. |'vartabstop'|
|
||||
N *+viminfo* |'viminfo'|
|
||||
*+vertsplit* Vertically split windows |:vsplit|; Always enabled
|
||||
T *+vertsplit* Vertically split windows |:vsplit|; Always enabled
|
||||
since 8.0.1118.
|
||||
N *+virtualedit* |'virtualedit'| Always enabled since 8.1.826.
|
||||
T *+virtualedit* |'virtualedit'| Always enabled since 8.1.826.
|
||||
T *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200.
|
||||
T *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||
T *+vreplace* |gR| and |gr|
|
||||
@@ -598,7 +598,7 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
|:oldfiles| - filter by file name
|
||||
|:registers| - filter by register contents
|
||||
(does not work multi-line)
|
||||
|:set| - filter by variable name
|
||||
|:set| - filter by option name
|
||||
|
||||
Only normal messages are filtered, error messages are
|
||||
not.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*vim9.txt* For Vim version 8.2. Last change: 2021 Sep 13
|
||||
*vim9.txt* For Vim version 8.2. Last change: 2021 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -103,7 +103,7 @@ script and `:def` functions; details are below:
|
||||
writefile(['done'], 'file.txt')
|
||||
- You cannot use `:xit`, `:t`, `:k`, `:append`, `:change`, `:insert`, `:open`,
|
||||
and `:s` or `:d` with only flags.
|
||||
or curly-braces names.
|
||||
- You cannot use curly-braces names.
|
||||
- A range before a command must be prefixed with a colon: >
|
||||
:%s/this/that
|
||||
- Executing a register with "@r" does not work, you can prepend a colon or use
|
||||
@@ -206,7 +206,7 @@ When a function argument is optional (it has a default value) passing `v:none`
|
||||
as the argument results in using the default value. This is useful when you
|
||||
want to specify a value for an argument that comes after an argument that
|
||||
should use its default value. Example: >
|
||||
def MyFunc(one = 'one', last = 'last)
|
||||
def MyFunc(one = 'one', last = 'last')
|
||||
...
|
||||
enddef
|
||||
MyFunc(v:none, 'LAST') # first argument uses default value 'one'
|
||||
@@ -234,9 +234,10 @@ the "name#" prefix is sufficient. >
|
||||
def scriptname#function() # autoload
|
||||
|
||||
When using `:function` or `:def` to specify a nested function inside a `:def`
|
||||
function, this nested function is local to the code block it is defined in.
|
||||
In a `:def` function it is not possible to define a script-local function. It
|
||||
is possible to define a global function by using the "g:" prefix.
|
||||
function and no namespace was given, this nested function is local to the code
|
||||
block it is defined in. In a `:def` function it is not possible to define a
|
||||
script-local function. It is possible to define a global function by using
|
||||
the "g:" prefix.
|
||||
|
||||
When referring to a function and no "s:" or "g:" prefix is used, Vim will
|
||||
search for the function:
|
||||
@@ -420,12 +421,11 @@ similar to how a function argument can be ignored: >
|
||||
To ignore any remaining items: >
|
||||
[a, b; _] = longList
|
||||
|
||||
< *E1092*
|
||||
Declaring more than one variable at a time, using the unpack notation, is
|
||||
currently not supported: >
|
||||
var [v1, v2] = GetValues() # Error!
|
||||
That is because the type needs to be inferred from the list item type, which
|
||||
isn't that easy.
|
||||
possible. Each variable can have a type or infer it from the value: >
|
||||
var [v1: number, v2] = GetValues()
|
||||
Use this only when there is a list with values, declaring one variable per
|
||||
line is much easier to read and change later.
|
||||
|
||||
|
||||
Constants ~
|
||||
@@ -568,6 +568,20 @@ characters, e.g.: >
|
||||
})
|
||||
No command can follow the "{", only a comment can be used there.
|
||||
|
||||
If the statements include a dictionary, its closing bracket must not be
|
||||
written at the start of a line. Otherwise, it would be parsed as the end of
|
||||
the block. This does not work: >
|
||||
command NewCommand {
|
||||
let g:mydict = {
|
||||
'key': 'value',
|
||||
} # ERROR: will be recognized as the end of the block
|
||||
}
|
||||
Put the '}' after the last item to avoid this: >
|
||||
command NewCommand {
|
||||
let g:mydict = {
|
||||
'key': 'value' }
|
||||
}
|
||||
|
||||
Rationale: The "}" cannot be after a command because it would require parsing
|
||||
the commands to find it. For consistency with that no command can follow the
|
||||
"{". Unfortunately this means using "() => { command }" does not work, line
|
||||
@@ -631,7 +645,7 @@ at the start of the line indicates line continuation: >
|
||||
| echo 'match'
|
||||
| endif
|
||||
|
||||
Note that this means that in heredoc the first line cannot be a bar: >
|
||||
Note that this means that in heredoc the first line cannot start with a bar: >
|
||||
var lines =<< trim END
|
||||
| this doesn't work
|
||||
END
|
||||
@@ -639,7 +653,7 @@ Either use an empty line at the start or do not use heredoc. Or temporarily
|
||||
add the "C" flag to 'cpoptions': >
|
||||
set cpo+=C
|
||||
var lines =<< trim END
|
||||
| this doesn't work
|
||||
| this works
|
||||
END
|
||||
set cpo-=C
|
||||
If the heredoc is inside a function 'cpoptions' must be set before :def and
|
||||
@@ -821,6 +835,16 @@ error. Example: >
|
||||
|
||||
For loop ~
|
||||
|
||||
The loop variable must not be declared yet: >
|
||||
var i = 1
|
||||
for i in [1, 2, 3] # Error!
|
||||
|
||||
It is possible to use a global variable though: >
|
||||
g:i = 1
|
||||
for g:i in [1, 2, 3]
|
||||
echo g:i
|
||||
endfor
|
||||
|
||||
Legacy Vim script has some tricks to make a for loop over a list handle
|
||||
deleting items at the current or previous item. In Vim9 script it just uses
|
||||
the index, if items are deleted then items in the list will be skipped.
|
||||
@@ -942,9 +966,22 @@ Ex command ranges need to be prefixed with a colon. >
|
||||
|
||||
Some Ex commands can be confused with assignments in Vim9 script: >
|
||||
g:name = value # assignment
|
||||
g:pattern:cmd # invalid command - ERROR
|
||||
:g:pattern:cmd # :global command
|
||||
|
||||
To avoid confusion between a `:global` or `:substitute` command and an
|
||||
expression or assignment, a few separators cannot be used when these commands
|
||||
are abbreviated to a single character: ':', '-' and '.'. >
|
||||
g:pattern:cmd # invalid command - ERROR
|
||||
s:pattern:repl # invalid command - ERROR
|
||||
g-pattern-cmd # invalid command - ERROR
|
||||
s-pattern-repl # invalid command - ERROR
|
||||
g.pattern.cmd # invalid command - ERROR
|
||||
s.pattern.repl # invalid command - ERROR
|
||||
|
||||
Also, there cannot be a space between the command and the separator: >
|
||||
g /pattern/cmd # invalid command - ERROR
|
||||
s /pattern/repl # invalid command - ERROR
|
||||
|
||||
Functions defined with `:def` compile the whole function. Legacy functions
|
||||
can bail out, and the following lines are not parsed: >
|
||||
func Maybe()
|
||||
@@ -1105,20 +1142,14 @@ The map argument is a string expression, which is evaluated without the
|
||||
function scope. Instead, use a lambda: >
|
||||
def MapList(): list<string>
|
||||
var list = ['aa', 'bb', 'cc', 'dd']
|
||||
return range(1, 2)->map(( _, v) => list[v])
|
||||
return range(1, 2)->map((_, v) => list[v])
|
||||
enddef
|
||||
|
||||
The same is true for commands that are not compiled, such as `:global`.
|
||||
For these the backtick expansion can be used. Example: >
|
||||
For commands that are not compiled, such as `:edit`, backtick expansion can be
|
||||
used and it can use the local scope. Example: >
|
||||
def Replace()
|
||||
var newText = 'blah'
|
||||
g/pattern/s/^/`=newText`/
|
||||
enddef
|
||||
|
||||
Or a script variable can be used: >
|
||||
var newText = 'blah'
|
||||
def Replace()
|
||||
g/pattern/s/^/\=newText/
|
||||
var fname = 'blah.txt'
|
||||
edit `=fname`
|
||||
enddef
|
||||
|
||||
Closures defined in a loop will share the same context. For example: >
|
||||
@@ -1309,16 +1340,16 @@ an error, thus breaking backwards compatibility. For example:
|
||||
- Using a string value when setting a number option.
|
||||
- Using a number where a string is expected. *E1024*
|
||||
|
||||
One consequence is that the item type of a list or dict given to map() must
|
||||
One consequence is that the item type of a list or dict given to |map()| must
|
||||
not change. This will give an error in Vim9 script: >
|
||||
vim9 echo map([1, 2, 3], (i, v) => 'item ' .. i)
|
||||
echo map([1, 2, 3], (i, v) => 'item ' .. i)
|
||||
E1012: Type mismatch; expected number but got string
|
||||
Instead use |mapnew(): >
|
||||
vim9 echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
|
||||
Instead use |mapnew()|: >
|
||||
echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
|
||||
['item 0', 'item 1', 'item 2']
|
||||
|
||||
If the item type was determined to be "any" it can change to a more specific
|
||||
type. E.g. when a list of mixed types gets changed to a list of numbers: >
|
||||
type. E.g. when a list of mixed types gets changed to a list of strings: >
|
||||
var mylist = [1, 2.0, '3']
|
||||
# typename(mylist) == "list<any>"
|
||||
map(mylist, (i, v) => 'item ' .. i)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*visual.txt* For Vim version 8.2. Last change: 2021 May 30
|
||||
*visual.txt* For Vim version 8.2. Last change: 2021 Nov 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -370,7 +370,8 @@ same amount of text as the last time:
|
||||
last line the same number of characters as in the last line the last time.
|
||||
The start of the text is the Cursor position. If the "$" command was used as
|
||||
one of the last commands to extend the highlighted text, the repeating will
|
||||
be applied up to the rightmost column of the longest line.
|
||||
be applied up to the rightmost column of the longest line. Any count passed
|
||||
to the `.` command is not used.
|
||||
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*windows.txt* For Vim version 8.2. Last change: 2021 Sep 09
|
||||
*windows.txt* For Vim version 8.2. Last change: 2021 Nov 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1203,6 +1203,8 @@ list of buffers. |unlisted-buffer|
|
||||
the current buffer remains being edited. See |:buffer-!| for
|
||||
[!]. This will also edit a buffer that is not in the buffer
|
||||
list, without setting the 'buflisted' flag.
|
||||
The notation with single quotes does not work here,
|
||||
`:buf 12'345'` uses 12'345 as a buffer name.
|
||||
Also see |+cmd|.
|
||||
|
||||
:[N]b[uffer][!] [+cmd] {bufname} *{bufname}*
|
||||
@@ -1358,6 +1360,7 @@ directory Displays directory contents. Can be used by a file explorer
|
||||
< The buffer name is the name of the directory and is adjusted
|
||||
when using the |:cd| command.
|
||||
|
||||
*scratch-buffer*
|
||||
scratch Contains text that can be discarded at any time. It is kept
|
||||
when closing the window, it must be deleted explicitly.
|
||||
Settings: >
|
||||
|
||||
@@ -111,7 +111,7 @@ octets.
|
||||
.TP
|
||||
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
||||
Produit une conversion continue dans le style Postscript (postscript continuous
|
||||
hexdumd style).
|
||||
hexdump style).
|
||||
<EFBFBD>galement connu sous le nom de <20> conversion brute <20> (plain hexdump style).
|
||||
.TP
|
||||
.IR \-r " | " \-revert
|
||||
|
||||
@@ -111,7 +111,7 @@ octets.
|
||||
.TP
|
||||
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
||||
Produit une conversion continue dans le style Postscript (postscript continuous
|
||||
hexdumd style).
|
||||
hexdump style).
|
||||
Également connu sous le nom de « conversion brute » (plain hexdump style).
|
||||
.TP
|
||||
.IR \-r " | " \-revert
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Oct 03
|
||||
" Last Change: 2021 Dec 14
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -123,7 +123,7 @@ au BufNewFile,BufRead *.aml setf aml
|
||||
" APT config file
|
||||
au BufNewFile,BufRead apt.conf setf aptconf
|
||||
au BufNewFile,BufRead */.aptitude/config setf aptconf
|
||||
au BufNewFile,BufRead */etc/apt/apt.conf.d/{[-_[:alnum:]]\+,[-_.[:alnum:]]\+.conf} setf aptconf
|
||||
" more generic pattern far down
|
||||
|
||||
" Arch Inventory file
|
||||
au BufNewFile,BufRead .arch-inventory,=tagging-method setf arch
|
||||
@@ -260,7 +260,7 @@ au BufNewFile,BufRead *.lpc,*.ulpc setf lpc
|
||||
au BufNewFile,BufRead calendar setf calendar
|
||||
|
||||
" C#
|
||||
au BufNewFile,BufRead *.cs setf cs
|
||||
au BufNewFile,BufRead *.cs,*.csx setf cs
|
||||
|
||||
" CSDL
|
||||
au BufNewFile,BufRead *.csdl setf csdl
|
||||
@@ -617,6 +617,9 @@ autocmd BufRead,BufNewFile *.fnl setf fennel
|
||||
" Fetchmail RC file
|
||||
au BufNewFile,BufRead .fetchmailrc setf fetchmail
|
||||
|
||||
" Fish shell
|
||||
au BufNewFile,BufRead *.fish setf fish
|
||||
|
||||
" FlexWiki - disabled, because it has side effects when a .wiki file
|
||||
" is not actually FlexWiki
|
||||
"au BufNewFile,BufRead *.wiki setf flexwiki
|
||||
@@ -629,7 +632,7 @@ au BufNewFile,BufRead auto.master setf conf
|
||||
au BufNewFile,BufRead *.mas,*.master setf master
|
||||
|
||||
" Forth
|
||||
au BufNewFile,BufRead *.fs,*.ft,*.fth setf forth
|
||||
au BufNewFile,BufRead *.ft,*.fth setf forth
|
||||
|
||||
" Reva Forth
|
||||
au BufNewFile,BufRead *.frt setf reva
|
||||
@@ -646,8 +649,14 @@ au BufNewFile,BufRead *.fsl setf framescript
|
||||
" FStab
|
||||
au BufNewFile,BufRead fstab,mtab setf fstab
|
||||
|
||||
" F# or Forth
|
||||
au BufNewFile,BufRead *.fs call dist#ft#FTfs()
|
||||
|
||||
" F#
|
||||
au BufNewFile,BufRead *.fsi,*.fsx setf fsharp
|
||||
|
||||
" GDB command files
|
||||
au BufNewFile,BufRead .gdbinit setf gdb
|
||||
au BufNewFile,BufRead .gdbinit,gdbinit setf gdb
|
||||
|
||||
" GDMO
|
||||
au BufNewFile,BufRead *.mo,*.gdmo setf gdmo
|
||||
@@ -707,6 +716,7 @@ au BufNewFile,BufRead *.gpi setf gnuplot
|
||||
|
||||
" Go (Google)
|
||||
au BufNewFile,BufRead *.go setf go
|
||||
au BufNewFile,BufRead Gopkg.lock setf toml
|
||||
|
||||
" GrADS scripts
|
||||
au BufNewFile,BufRead *.gs setf grads
|
||||
@@ -780,6 +790,10 @@ au BufNewFile,BufRead *.hb setf hb
|
||||
" Httest
|
||||
au BufNewFile,BufRead *.htt,*.htb setf httest
|
||||
|
||||
" i3 (and sway)
|
||||
au BufNewFile,BufRead */i3/config,*/sway/config setf i3config
|
||||
au BufNewFile,BufRead */.i3/config,*/.sway/config setf i3config
|
||||
|
||||
" Icon
|
||||
au BufNewFile,BufRead *.icn setf icon
|
||||
|
||||
@@ -1113,14 +1127,15 @@ au BufNewFile,BufRead *.msql setf msql
|
||||
" Mysql
|
||||
au BufNewFile,BufRead *.mysql setf mysql
|
||||
|
||||
" Mutt setup files (must be before catch *.rc)
|
||||
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
||||
|
||||
" Tcl Shell RC file
|
||||
au BufNewFile,BufRead tclsh.rc setf tcl
|
||||
|
||||
" M$ Resource files
|
||||
au BufNewFile,BufRead *.rc,*.rch setf rc
|
||||
" /etc/Muttrc.d/file.rc is muttrc
|
||||
au BufNewFile,BufRead *.rc,*.rch
|
||||
\ if expand("<afile>") !~ "/etc/Muttrc.d/" |
|
||||
\ setf rc |
|
||||
\ endif
|
||||
|
||||
" MuPAD source
|
||||
au BufRead,BufNewFile *.mu setf mupad
|
||||
@@ -1290,7 +1305,7 @@ au BufNewFile,BufRead *.rcp setf pilrc
|
||||
au BufNewFile,BufRead .pinerc,pinerc,.pinercex,pinercex setf pine
|
||||
|
||||
" Pipenv Pipfiles
|
||||
au BufNewFile,BufRead Pipfile setf config
|
||||
au BufNewFile,BufRead Pipfile setf toml
|
||||
au BufNewFile,BufRead Pipfile.lock setf json
|
||||
|
||||
" PL/1, PL/I
|
||||
@@ -1492,6 +1507,9 @@ au BufNewFile,BufRead robots.txt setf robots
|
||||
" Rpcgen
|
||||
au BufNewFile,BufRead *.x setf rpcgen
|
||||
|
||||
" MikroTik RouterOS script
|
||||
au BufRead,BufNewFile *.rsc setf routeros
|
||||
|
||||
" reStructuredText Documentation Format
|
||||
au BufNewFile,BufRead *.rst setf rst
|
||||
|
||||
@@ -1524,6 +1542,7 @@ au BufNewFile,BufRead [rR]antfile,*.rant,[rR]akefile,*.rake setf ruby
|
||||
|
||||
" Rust
|
||||
au BufNewFile,BufRead *.rs setf rust
|
||||
au BufNewFile,BufRead Cargo.lock,*/.cargo/config,*/.cargo/credentials setf toml
|
||||
|
||||
" S-lang (or shader language, or SmallLisp)
|
||||
au BufNewFile,BufRead *.sl setf slang
|
||||
@@ -1635,6 +1654,9 @@ au BufNewFile,BufRead .tcshrc,*.tcsh,tcsh.tcshrc,tcsh.login call dist#ft#SetFile
|
||||
" (patterns ending in a start further below)
|
||||
au BufNewFile,BufRead .login,.cshrc,csh.cshrc,csh.login,csh.logout,*.csh,.alias call dist#ft#CSH()
|
||||
|
||||
" Zig
|
||||
au BufNewFile,BufRead *.zig setf zig
|
||||
|
||||
" Z-Shell script (patterns ending in a star further below)
|
||||
au BufNewFile,BufRead .zprofile,*/etc/zprofile,.zfbfmarks setf zsh
|
||||
au BufNewFile,BufRead .zshrc,.zshenv,.zlogin,.zlogout,.zcompdump setf zsh
|
||||
@@ -1721,6 +1743,9 @@ au BufNewFile,BufRead *.speedup,*.spdata,*.spd setf spup
|
||||
" Slice
|
||||
au BufNewFile,BufRead *.ice setf slice
|
||||
|
||||
" Microsoft Visual Studio Solution
|
||||
au BufNewFile,BufRead *.sln setf solution
|
||||
|
||||
" Spice
|
||||
au BufNewFile,BufRead *.sp,*.spice setf spice
|
||||
|
||||
@@ -1742,6 +1767,9 @@ au BufNewFile,BufRead *.sqlj setf sqlj
|
||||
" SQR
|
||||
au BufNewFile,BufRead *.sqr,*.sqi setf sqr
|
||||
|
||||
" Squirrel
|
||||
au BufNewFile,BufRead *.nut setf squirrel
|
||||
|
||||
" OpenSSH configuration
|
||||
au BufNewFile,BufRead ssh_config,*/.ssh/config setf sshconfig
|
||||
au BufNewFile,BufRead */etc/ssh/ssh_config.d/*.conf setf sshconfig
|
||||
@@ -2051,9 +2079,15 @@ au BufNewFile,BufRead *.xml call dist#ft#FTxml()
|
||||
" XMI (holding UML models) is also XML
|
||||
au BufNewFile,BufRead *.xmi setf xml
|
||||
|
||||
" CSPROJ files are Visual Studio.NET's XML-based project config files
|
||||
" CSPROJ files are Visual Studio.NET's XML-based C# project config files
|
||||
au BufNewFile,BufRead *.csproj,*.csproj.user setf xml
|
||||
|
||||
" FSPROJ files are Visual Studio.NET's XML-based F# project config files
|
||||
au BufNewFile,BufRead *.fsproj,*.fsproj.user setf xml
|
||||
|
||||
" VBPROJ files are Visual Studio.NET's XML-based Visual Basic project config files
|
||||
au BufNewFile,BufRead *.vbproj,*.vbproj.user setf xml
|
||||
|
||||
" Qt Linguist translation source and Qt User Interface Files are XML
|
||||
" However, for .ts Typescript is more common.
|
||||
au BufNewFile,BufRead *.ui setf xml
|
||||
@@ -2139,6 +2173,12 @@ au BufNewFile,BufRead *
|
||||
au StdinReadPost * if !did_filetype() | runtime! scripts.vim | endif
|
||||
|
||||
|
||||
" Plain text files, needs to be far down to not override others. This avoids
|
||||
" the "conf" type being used if there is a line starting with '#'.
|
||||
" But before patterns matching everything in a directory.
|
||||
au BufNewFile,BufRead *.text,README,LICENSE,COPYING,AUTHORS setf text
|
||||
|
||||
|
||||
" Extra checks for when no filetype has been detected now. Mostly used for
|
||||
" patterns that end in "*". E.g., "zsh*" matches "zsh.vim", but that's a Vim
|
||||
" script file.
|
||||
@@ -2153,6 +2193,9 @@ au BufNewFile,BufRead proftpd.conf* call s:StarSetf('apachestyle')
|
||||
au BufNewFile,BufRead access.conf*,apache.conf*,apache2.conf*,httpd.conf*,srm.conf* call s:StarSetf('apache')
|
||||
au BufNewFile,BufRead */etc/apache2/*.conf*,*/etc/apache2/conf.*/*,*/etc/apache2/mods-*/*,*/etc/apache2/sites-*/*,*/etc/httpd/conf.*/*,*/etc/httpd/mods-*/*,*/etc/httpd/sites-*/*,*/etc/httpd/conf.d/*.conf* call s:StarSetf('apache')
|
||||
|
||||
" APT config file
|
||||
au BufNewFile,BufRead */etc/apt/apt.conf.d/{[-_[:alnum:]]\+,[-_.[:alnum:]]\+.conf} call s:StarSetf('aptconf')
|
||||
|
||||
" Asterisk config file
|
||||
au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk')
|
||||
au BufNewFile,BufRead *asterisk*/*voicemail.conf* call s:StarSetf('asteriskvm')
|
||||
@@ -2254,6 +2297,9 @@ au BufNewFile,BufRead */etc/modutils/*
|
||||
\|endif
|
||||
au BufNewFile,BufRead */etc/modprobe.* call s:StarSetf('modconf')
|
||||
|
||||
" Mutt setup files (must be before catch *.rc)
|
||||
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
||||
|
||||
" Mutt setup file
|
||||
au BufNewFile,BufRead .mutt{ng,}rc*,*/.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc')
|
||||
au BufNewFile,BufRead mutt{ng,}rc*,Mutt{ng,}rc* call s:StarSetf('muttrc')
|
||||
@@ -2299,12 +2345,18 @@ au BufNewFile,BufRead .bashrc*,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]alias
|
||||
au BufNewFile,BufRead .kshrc* call dist#ft#SetFileTypeSH("ksh")
|
||||
au BufNewFile,BufRead .profile* call dist#ft#SetFileTypeSH(getline(1))
|
||||
|
||||
" Sudoers
|
||||
au BufNewFile,BufRead */etc/sudoers.d/* call s:StarSetf('sudoers')
|
||||
|
||||
" tcsh scripts ending in a star
|
||||
au BufNewFile,BufRead .tcshrc* call dist#ft#SetFileTypeShell("tcsh")
|
||||
|
||||
" csh scripts ending in a star
|
||||
au BufNewFile,BufRead .login*,.cshrc* call dist#ft#CSH()
|
||||
|
||||
" tmux configuration with arbitrary extension
|
||||
au BufNewFile,BufRead {.,}tmux*.conf* setf tmux
|
||||
|
||||
" VHDL
|
||||
au BufNewFile,BufRead *.vhdl_[0-9]* call s:StarSetf('vhdl')
|
||||
|
||||
@@ -2340,10 +2392,6 @@ au BufNewFile,BufRead .zsh*,.zlog*,.zcompdump* call s:StarSetf('zsh')
|
||||
au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh')
|
||||
|
||||
|
||||
" Plain text files, needs to be far down to not override others. This avoids
|
||||
" the "conf" type being used if there is a line starting with '#'.
|
||||
au BufNewFile,BufRead *.text,README setf text
|
||||
|
||||
" Help files match *.txt but should have a last line that is a modeline.
|
||||
au BufNewFile,BufRead *.txt
|
||||
\ if getline('$') !~ 'vim:.*ft=help'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Aap recipe
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2013 Apr 05
|
||||
" Last Change: 2021 Nov 14
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -11,8 +11,9 @@ endif
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Reset 'formatoptions', 'comments' and 'expandtab' to undo this plugin.
|
||||
let b:undo_ftplugin = "setl fo< com< et<"
|
||||
" Reset 'formatoptions', 'comments', 'commentstring' and 'expandtab' to undo
|
||||
" this plugin.
|
||||
let b:undo_ftplugin = "setl fo< com< cms< et<"
|
||||
|
||||
" Set 'formatoptions' to break comment lines but not other lines,
|
||||
" and insert the comment leader when hitting <CR> or using "o".
|
||||
@@ -20,6 +21,12 @@ setlocal fo-=t fo+=croql
|
||||
|
||||
" Set 'comments' to format dashed lists in comments.
|
||||
setlocal comments=s:#\ -,m:#\ \ ,e:#,n:#,fb:-
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
" Expand tabs to spaces to avoid trouble.
|
||||
setlocal expandtab
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Aap Recipe Files (*.aap)\t*.aap\nAll Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: generic Changelog file
|
||||
" Maintainer: Martin Florian <marfl@posteo.de>
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2015-10-25
|
||||
" Latest Revision: 2021-10-17
|
||||
" Variables:
|
||||
" g:changelog_timeformat (deprecated: use g:changelog_dateformat instead) -
|
||||
" description: the timeformat used in ChangeLog entries.
|
||||
@@ -55,7 +55,7 @@ if &filetype == 'changelog'
|
||||
elseif $EMAIL_ADDRESS != ""
|
||||
return $EMAIL_ADDRESS
|
||||
endif
|
||||
|
||||
|
||||
let login = s:login()
|
||||
return printf('%s <%s@%s>', s:name(login), login, s:hostname())
|
||||
endfunction
|
||||
@@ -223,12 +223,6 @@ if &filetype == 'changelog'
|
||||
let &paste = save_paste
|
||||
endfunction
|
||||
|
||||
if exists(":NewChangelogEntry") != 2
|
||||
nnoremap <buffer> <silent> <Leader>o :<C-u>call <SID>new_changelog_entry('')<CR>
|
||||
xnoremap <buffer> <silent> <Leader>o :<C-u>call <SID>new_changelog_entry('')<CR>
|
||||
command! -nargs=0 NewChangelogEntry call s:new_changelog_entry('')
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl com< fo< et< ai<"
|
||||
|
||||
setlocal comments=
|
||||
@@ -241,14 +235,26 @@ if &filetype == 'changelog'
|
||||
let b:undo_ftplugin .= " tw<"
|
||||
endif
|
||||
|
||||
if !exists("no_plugin_maps") && !exists("no_changelog_maps") && exists(":NewChangelogEntry") != 2
|
||||
nnoremap <buffer> <silent> <Leader>o :<C-u>call <SID>new_changelog_entry('')<CR>
|
||||
xnoremap <buffer> <silent> <Leader>o :<C-u>call <SID>new_changelog_entry('')<CR>
|
||||
command! -buffer -nargs=0 NewChangelogEntry call s:new_changelog_entry('')
|
||||
let b:undo_ftplugin .= " | sil! exe 'nunmap <buffer> <Leader>o'" .
|
||||
\ " | sil! exe 'vunmap <buffer> <Leader>o'" .
|
||||
\ " | sil! delc NewChangelogEntry"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
else
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Add the Changelog opening mapping
|
||||
nnoremap <silent> <Leader>o :call <SID>open_changelog()<CR>
|
||||
if !exists("no_plugin_maps") && !exists("no_changelog_maps")
|
||||
" Add the Changelog opening mapping
|
||||
nnoremap <silent> <Leader>o :call <SID>open_changelog()<CR>
|
||||
let b:undo_ftplugin .= " | silent! exe 'nunmap <buffer> <Leader>o"
|
||||
endif
|
||||
|
||||
function! s:open_changelog()
|
||||
let path = expand('%:p:h')
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Clojure
|
||||
" Maintainer: Alex Vear <av@axvr.io>
|
||||
" Maintainer: Alex Vear <alex@vear.uk>
|
||||
" Former Maintainers: Sung Pae <self@sungpae.com>
|
||||
" Meikel Brandmeyer <mb@kotka.de>
|
||||
" URL: https://github.com/clojure-vim/clojure.vim
|
||||
" License: Vim (see :h license)
|
||||
" Last Change: 2021-02-13
|
||||
" Last Change: 2021-10-26
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -17,7 +17,7 @@ set cpo&vim
|
||||
|
||||
let b:undo_ftplugin = 'setlocal iskeyword< define< formatoptions< comments< commentstring< lispwords<'
|
||||
|
||||
setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$
|
||||
setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$,%,&,\|
|
||||
|
||||
" There will be false positives, but this is better than missing the whole set
|
||||
" of user-defined def* definitions.
|
||||
@@ -43,7 +43,7 @@ setlocal commentstring=;\ %s
|
||||
" specially and hence are not indented specially.
|
||||
"
|
||||
" -*- LISPWORDS -*-
|
||||
" Generated from https://github.com/clojure-vim/clojure.vim/blob/f8594e7030cdfb0b7990ac92953c77a08a7220f0/clj/src/vim_clojure_static/generate.clj
|
||||
" Generated from https://github.com/clojure-vim/clojure.vim/blob/62b215f079ce0f3834fd295c7a7f6bd8cc54bcc3/clj/src/vim_clojure_static/generate.clj
|
||||
setlocal lispwords=as->,binding,bound-fn,case,catch,cond->,cond->>,condp,def,definline,definterface,defmacro,defmethod,defmulti,defn,defn-,defonce,defprotocol,defrecord,defstruct,deftest,deftest-,deftype,doseq,dotimes,doto,extend,extend-protocol,extend-type,fn,for,if,if-let,if-not,if-some,let,letfn,locking,loop,ns,proxy,reify,set-test,testing,when,when-first,when-let,when-not,when-some,while,with-bindings,with-in-str,with-local-vars,with-open,with-precision,with-redefs,with-redefs-fn,with-test
|
||||
|
||||
" Provide insert mode completions for special forms and clojure.core. As
|
||||
@@ -64,8 +64,8 @@ if exists('loaded_matchit')
|
||||
let b:undo_ftplugin .= ' | unlet! b:match_words b:match_skip'
|
||||
endif
|
||||
|
||||
" Win32 can filter files in the browse dialog
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
" Filter files in the browse dialog
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Clojure Source Files (*.clj)\t*.clj\n" .
|
||||
\ "ClojureScript Source Files (*.cljs)\t*.cljs\n" .
|
||||
\ "Java Source Files (*.java)\t*.java\n" .
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: ConTeXt typesetting engine
|
||||
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2016 Oct 30
|
||||
" Latest Revision: 2021 Oct 15
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -17,7 +17,6 @@ if !exists('current_compiler')
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< def< inc< sua< fo< ofu<"
|
||||
\ . "| unlet! b:match_ignorecase b:match_words b:match_skip"
|
||||
|
||||
setlocal comments=b:%D,b:%C,b:%M,:% commentstring=%\ %s formatoptions+=tjcroql2
|
||||
if get(b:, 'context_metapost', get(g:, 'context_metapost', 1))
|
||||
@@ -35,11 +34,12 @@ let &l:include = '^\s*\\\%(input\|component\|product\|project\|environment\)'
|
||||
|
||||
setlocal suffixesadd=.tex
|
||||
|
||||
if exists("loaded_matchit")
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_ignorecase = 0
|
||||
let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
|
||||
let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
|
||||
\ '\\start\(\a\+\):\\stop\1'
|
||||
let b:undo_ftplugin .= " | unlet! b:match_ignorecase b:match_words b:match_skip"
|
||||
endif
|
||||
|
||||
let s:context_regex = {
|
||||
@@ -57,19 +57,28 @@ function! s:move_around(count, what, flags, visual)
|
||||
call map(range(2, a:count), 'search(s:context_regex[a:what], a:flags)')
|
||||
endfunction
|
||||
|
||||
" Move around macros.
|
||||
nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:true) <CR>
|
||||
if !exists("no_plugin_maps") && !exists("no_context_maps")
|
||||
" Move around macros.
|
||||
nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:true) <CR>
|
||||
|
||||
let b:undo_ftplugin .= " | sil! exe 'nunmap <buffer> [[' | sil! exe 'vunmap <buffer> [['" .
|
||||
\ " | sil! exe 'nunmap <buffer> ]]' | sil! exe 'vunmap <buffer> ]]'" .
|
||||
\ " | sil! exe 'nunmap <buffer> []' | sil! exe 'vunmap <buffer> []'" .
|
||||
\ " | sil! exe 'nunmap <buffer> ][' | sil! exe 'vunmap <buffer> ]['" .
|
||||
\ " | sil! exe 'nunmap <buffer> [{' | sil! exe 'vunmap <buffer> [{'" .
|
||||
\ " | sil! exe 'nunmap <buffer> ]}' | sil! exe 'vunmap <buffer> ]}'"
|
||||
end
|
||||
|
||||
" Other useful mappings
|
||||
if get(g:, 'context_mappings', 1)
|
||||
@@ -81,16 +90,22 @@ if get(g:, 'context_mappings', 1)
|
||||
call cursor(search(s:tp_regex, 'W') - 1, 1)
|
||||
endf
|
||||
|
||||
" Reflow paragraphs with commands like gqtp ("gq TeX paragraph")
|
||||
onoremap <silent><buffer> tp :<c-u>call <sid>tp()<cr>
|
||||
" Select TeX paragraph
|
||||
vnoremap <silent><buffer> tp <esc>:<c-u>call <sid>tp()<cr>
|
||||
if !exists("no_plugin_maps") && !exists("no_context_maps")
|
||||
" Reflow paragraphs with commands like gqtp ("gq TeX paragraph")
|
||||
onoremap <silent><buffer> tp :<c-u>call <sid>tp()<cr>
|
||||
" Select TeX paragraph
|
||||
vnoremap <silent><buffer> tp <esc>:<c-u>call <sid>tp()<cr>
|
||||
|
||||
" $...$ text object
|
||||
onoremap <silent><buffer> i$ :<c-u>normal! T$vt$<cr>
|
||||
onoremap <silent><buffer> a$ :<c-u>normal! F$vf$<cr>
|
||||
vnoremap <buffer> i$ T$ot$
|
||||
vnoremap <buffer> a$ F$of$
|
||||
" $...$ text object
|
||||
onoremap <silent><buffer> i$ :<c-u>normal! T$vt$<cr>
|
||||
onoremap <silent><buffer> a$ :<c-u>normal! F$vf$<cr>
|
||||
vnoremap <buffer> i$ T$ot$
|
||||
vnoremap <buffer> a$ F$of$
|
||||
|
||||
let b:undo_ftplugin .= " | sil! exe 'ounmap <buffer> tp' | sil! exe 'vunmap <buffer> tp'" .
|
||||
\ " | sil! exe 'ounmap <buffer> i$' | sil! exe 'vunmap <buffer> i$'" .
|
||||
\ " | sil! exe 'ounmap <buffer> a$' | sil! exe 'vunmap <buffer> a$'"
|
||||
endif
|
||||
endif
|
||||
|
||||
" Commands for asynchronous typesetting
|
||||
|
||||
@@ -1,21 +1,23 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: csh
|
||||
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
||||
" Last Changed: 20 Jan 2009
|
||||
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
|
||||
" Language: csh
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
||||
" Contributor: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change: 2021 Oct 15
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Make sure the continuation lines below do not cause problems in
|
||||
" compatibility mode.
|
||||
let s:save_cpo = &cpo
|
||||
set cpo-=C
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#%s
|
||||
setlocal formatoptions-=t
|
||||
setlocal formatoptions+=crql
|
||||
|
||||
let b:undo_ftplugin = "setlocal com< cms< fo<"
|
||||
|
||||
" Csh: thanks to Johannes Zellner
|
||||
" - Both foreach and end must appear alone on separate lines.
|
||||
" - The words else and endif must appear at the beginning of input lines;
|
||||
@@ -23,26 +25,27 @@ setlocal formatoptions+=crql
|
||||
" - Each case label and the default label must appear at the start of a
|
||||
" line.
|
||||
" - while and end must appear alone on their input lines.
|
||||
if exists("loaded_matchit")
|
||||
let b:match_words =
|
||||
\ '^\s*\<if\>.*(.*).*\<then\>:'.
|
||||
\ '^\s*\<else\>\s\+\<if\>.*(.*).*\<then\>:^\s*\<else\>:'.
|
||||
\ '^\s*\<endif\>,'.
|
||||
\ '\%(^\s*\<foreach\>\s\+\S\+\|^s*\<while\>\).*(.*):'.
|
||||
\ '\<break\>:\<continue\>:^\s*\<end\>,'.
|
||||
\ '^\s*\<switch\>.*(.*):^\s*\<case\>\s\+:^\s*\<default\>:^\s*\<endsw\>'
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let s:line_start = '\%(^\s*\)\@<='
|
||||
let b:match_words =
|
||||
\ s:line_start .. 'if\s*(.*)\s*then\>:' ..
|
||||
\ s:line_start .. 'else\s\+if\s*(.*)\s*then\>:' .. s:line_start .. 'else\>:' ..
|
||||
\ s:line_start .. 'endif\>,' ..
|
||||
\ s:line_start .. '\%(\<foreach\s\+\h\w*\|while\)\s*(:' ..
|
||||
\ '\<break\>:\<continue\>:' ..
|
||||
\ s:line_start .. 'end\>,' ..
|
||||
\ s:line_start .. 'switch\s*(:' ..
|
||||
\ s:line_start .. 'case\s\+:' .. s:line_start .. 'default\>:\<breaksw\>:' ..
|
||||
\ s:line_start .. 'endsw\>'
|
||||
unlet s:line_start
|
||||
let b:undo_ftplugin ..= " | unlet b:match_words"
|
||||
endif
|
||||
|
||||
" Change the :browse e filter to primarily show csh-related files.
|
||||
if has("gui_win32")
|
||||
let b:browsefilter="csh Scripts (*.csh)\t*.csh\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter="csh Scripts (*.csh)\t*.csh\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet b:browsefilter"
|
||||
endif
|
||||
|
||||
" Undo the stuff we changed.
|
||||
let b:undo_ftplugin = "setlocal commentstring< formatoptions<" .
|
||||
\ " | unlet! b:match_words b:browsefilter"
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Diff
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Jul 18
|
||||
" Last Change: 2021 Nov 14
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -9,10 +9,15 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl modeline<"
|
||||
let b:undo_ftplugin = "setl modeline< commentstring<"
|
||||
|
||||
" Don't use modelines in a diff, they apply to the diffed file
|
||||
setlocal nomodeline
|
||||
|
||||
" If there are comments they start with #
|
||||
let &commentstring = "# %s"
|
||||
let &l:commentstring = "# %s"
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Diff Files (*.diff)\t*.diff\nPatch Files (*.patch)\t*.h\nAll Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
13
runtime/ftplugin/i3config.vim
Normal file
13
runtime/ftplugin/i3config.vim
Normal file
@@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: i3 config file
|
||||
" Original Author: Mohamed Boughaba <mohamed dot bgb at gmail dot com>
|
||||
" Maintainer: Quentin Hibon
|
||||
" Version: 0.4
|
||||
" Last Change: 2021 Dec 14
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setlocal cms<"
|
||||
|
||||
setlocal commentstring=#\ %s
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: indent(1) configuration file
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2008-07-09
|
||||
" Language: indent(1) configuration file
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2008-07-09
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Acknowledgement: Based off of vim-jsonc maintained by Kevin Locke <kevin@kevinlocke.name>
|
||||
" https://github.com/kevinoid/vim-jsonc
|
||||
" License: MIT
|
||||
" Last Change: 2021-07-01
|
||||
" Last Change: 2021 Nov 22
|
||||
|
||||
runtime! ftplugin/json.vim
|
||||
|
||||
@@ -14,14 +14,8 @@ else
|
||||
let b:did_ftplugin_jsonc = 1
|
||||
endif
|
||||
|
||||
" A list of commands that undo buffer local changes made below.
|
||||
let s:undo_ftplugin = []
|
||||
|
||||
" Set comment (formatting) related options. {{{1
|
||||
setlocal commentstring=//%s comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
|
||||
call add(s:undo_ftplugin, 'commentstring< comments<')
|
||||
|
||||
" Let Vim know how to disable the plug-in.
|
||||
call map(s:undo_ftplugin, "'execute ' . string(v:val)")
|
||||
let b:undo_ftplugin = join(s:undo_ftplugin, ' | ')
|
||||
unlet s:undo_ftplugin
|
||||
let b:undo_ftplugin = 'setlocal commentstring< comments<'
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file.
|
||||
" Language: Lua 4.0+
|
||||
" Maintainer: Max Ischenko <mfi@ukr.net>
|
||||
" Last Change: 2012 Mar 07
|
||||
" Language: Lua
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Max Ischenko <mfi@ukr.net>
|
||||
" Last Change: 2021 Nov 15
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -16,27 +17,30 @@ set cpo&vim
|
||||
|
||||
" Set 'formatoptions' to break comment lines but not other lines, and insert
|
||||
" the comment leader when hitting <CR> or using "o".
|
||||
setlocal fo-=t fo+=croql
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
setlocal com=:--
|
||||
setlocal cms=--%s
|
||||
setlocal comments=:--
|
||||
setlocal commentstring=--%s
|
||||
setlocal suffixesadd=.lua
|
||||
|
||||
let b:undo_ftplugin = "setlocal fo< com< cms< sua<"
|
||||
|
||||
" The following lines enable the macros/matchit.vim plugin for
|
||||
" extended matching with the % key.
|
||||
if exists("loaded_matchit")
|
||||
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_ignorecase = 0
|
||||
let b:match_words =
|
||||
\ '\<\%(do\|function\|if\)\>:' .
|
||||
\ '\<\%(return\|else\|elseif\)\>:' .
|
||||
\ '\<end\>,' .
|
||||
\ '\<repeat\>:\<until\>'
|
||||
\ '\<\%(do\|function\|if\)\>:' .
|
||||
\ '\<\%(return\|else\|elseif\)\>:' .
|
||||
\ '\<end\>,' .
|
||||
\ '\<repeat\>:\<until\>,' .
|
||||
\ '\%(--\)\=\[\(=*\)\[:]\1]'
|
||||
let b:undo_ftplugin .= " | unlet! b:match_words b:match_ignorecase"
|
||||
endif
|
||||
|
||||
endif " exists("loaded_matchit")
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Lua Source Files (*.lua)\t*.lua\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin .= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
let b:undo_ftplugin = "setlocal fo< com< cms< suffixesadd<"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Mail
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 Nov 20
|
||||
" Last Change: 2021 Oct 23
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -26,6 +26,14 @@ setlocal fo+=tcql
|
||||
" Add n:> to 'comments, in case it was removed elsewhere
|
||||
setlocal comments+=n:>
|
||||
|
||||
" .eml files are universally formatted with DOS line-endings, per RFC5322.
|
||||
" If the file was not DOS the it will be marked as changed, which is probably
|
||||
" a good thing.
|
||||
if expand('%:e') ==? 'eml'
|
||||
let b:undo_ftplugin ..= " fileformat=" .. &fileformat
|
||||
setlocal fileformat=dos
|
||||
endif
|
||||
|
||||
" Add mappings, unless the user doesn't want this.
|
||||
if !exists("no_plugin_maps") && !exists("no_mail_maps")
|
||||
" Quote text by inserting "> "
|
||||
|
||||
@@ -12,9 +12,28 @@ set cpo&vim
|
||||
|
||||
setlocal commentstring=#\ %s
|
||||
setlocal comments=:#
|
||||
setlocal formatoptions+=croql formatoptions-=t
|
||||
|
||||
setlocal shiftwidth=2
|
||||
setlocal softtabstop=2
|
||||
let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
if get(g:, "meson_recommended_style", 1)
|
||||
setlocal expandtab
|
||||
setlocal shiftwidth=2
|
||||
setlocal softtabstop=2
|
||||
let b:undo_ftplugin .= " | setl et< sts< sw<"
|
||||
endif
|
||||
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_words = '\<if\>:\<elif\>:\<else\>:\<endif\>,' .
|
||||
\ '\<foreach\>:\<break\>:\<continue\>:\<endforeach\>'
|
||||
let b:undo_ftplugin .= " | unlet! b:match_words"
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Meson Build Files (meson.build)\tmeson.build\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin .= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Ken Takata
|
||||
" URL: https://github.com/k-takata/vim-nsis
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Last Change: 2018-01-26
|
||||
" Last Change: 2021-10-18
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -15,7 +15,6 @@ set cpo&vim
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo< def< inc<"
|
||||
\ " | unlet! b:match_ignorecase b:match_words"
|
||||
|
||||
setlocal comments=s1:/*,mb:*,ex:*/,b:#,:; commentstring=;\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
@@ -37,6 +36,7 @@ if exists("loaded_matchit")
|
||||
\ '\${MementoSection}:\${MementoSectionEnd},' .
|
||||
\ '!if\%(\%(macro\)\?n\?def\)\?\>:!else\>:!endif\>,' .
|
||||
\ '!macro\>:!macroend\>'
|
||||
let b:undo_ftplugin .= " | unlet! b:match_ignorecase b:match_words"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
||||
29
runtime/ftplugin/routeros.vim
Normal file
29
runtime/ftplugin/routeros.vim
Normal file
@@ -0,0 +1,29 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: MikroTik RouterOS Script
|
||||
" Maintainer: zainin <z@wintr.dev>
|
||||
" Last Change: 2021 Nov 14
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo-=C
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
let b:undo_ftplugin = "setlocal com< cms< fo<"
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "RouterOS Script Files (*.rsc)\t*.rsc\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet! s:save_cpo
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 noet:
|
||||
37
runtime/ftplugin/solution.vim
Normal file
37
runtime/ftplugin/solution.vim
Normal file
@@ -0,0 +1,37 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Microsoft Visual Studio Solution
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2021 Dec 15
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms<"
|
||||
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_words =
|
||||
\ '\<Project\>:\<EndProject\>,' ..
|
||||
\ '\<ProjectSection\>:\<EndProjectSection\>,' ..
|
||||
\ '\<Global\>:\<EndGlobal\>,' ..
|
||||
\ '\<GlobalSection\>:\<EndGlobalSection\>'
|
||||
let b:undo_ftplugin ..= " | unlet! b:match_words"
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Microsoft Visual Studio Solution Files\t*.sln\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 noet:
|
||||
@@ -18,8 +18,8 @@ if !exists("no_plugin_maps") && !exists("no_spec_maps")
|
||||
endif
|
||||
endif
|
||||
|
||||
if !hasmapto("call SpecChangelog(\"\")<CR>")
|
||||
noremap <buffer> <unique> <script> <Plug>SpecChangelog :call SpecChangelog("")<CR>
|
||||
if !hasmapto("call <SID>SpecChangelog(\"\")<CR>")
|
||||
noremap <buffer> <unique> <script> <Plug>SpecChangelog :call <SID>SpecChangelog("")<CR>
|
||||
endif
|
||||
|
||||
if !exists("*s:GetRelVer")
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: tcsh
|
||||
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
||||
" Last Changed: 20 Jan 2009
|
||||
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
|
||||
" Language: tcsh
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
||||
" Last Change: 2021 Oct 15
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
|
||||
" Make sure the continuation lines below do not cause problems in
|
||||
" compatibility mode.
|
||||
let s:save_cpo = &cpo
|
||||
set cpo-=C
|
||||
|
||||
" Define some defaults in case the included ftplugins don't set them.
|
||||
let s:undo_ftplugin = ""
|
||||
let s:browsefilter = "csh Files (*.csh)\t*.csh\n" .
|
||||
let s:browsefilter = "csh Files (*.csh)\t*.csh\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
|
||||
runtime! ftplugin/csh.vim ftplugin/csh_*.vim ftplugin/csh/*.vim
|
||||
@@ -27,14 +25,11 @@ if exists("b:browsefilter")
|
||||
let s:browsefilter = b:browsefilter
|
||||
endif
|
||||
|
||||
" Change the :browse e filter to primarily show tcsh-related files.
|
||||
if has("gui_win32")
|
||||
let b:browsefilter="tcsh Scripts (*.tcsh)\t*.tcsh\n" . s:browsefilter
|
||||
if (has("gui_win32") || has("gui_gtk"))
|
||||
let b:browsefilter="tcsh Scripts (*.tcsh)\t*.tcsh\n" .. s:browsefilter
|
||||
endif
|
||||
|
||||
" Undo the stuff we changed.
|
||||
let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
|
||||
let b:undo_ftplugin = "unlet! b:browsefilter | " .. s:undo_ftplugin
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
@@ -9,4 +9,7 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setlocal comments< commentstring<"
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
23
runtime/ftplugin/toml.vim
Normal file
23
runtime/ftplugin/toml.vim
Normal file
@@ -0,0 +1,23 @@
|
||||
" Vim filetype plugin
|
||||
" Language: TOML
|
||||
" Homepage: https://github.com/cespare/vim-toml
|
||||
" Maintainer: Aman Verma
|
||||
" Author: Kevin Ballard <kevin@sb.org>
|
||||
" Last Change: Sep 21, 2021
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
let b:undo_ftplugin = 'setlocal commentstring< comments<'
|
||||
|
||||
setlocal commentstring=#\ %s
|
||||
setlocal comments=:#
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim: et sw=2 sts=2
|
||||
@@ -1,44 +1,70 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: VisualBasic (ft=vb)
|
||||
" Maintainer: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change: Thu, 22 Nov 2001 12:56:14 W. Europe Standard Time
|
||||
" Language: Visual Basic (ft=vb)
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change: 2021 Nov 17
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal com=sr:'\ -,mb:'\ \ ,el:'\ \ ,:'
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=sr:'\ -,mb:'\ \ ,el:'\ \ ,:'
|
||||
setlocal commentstring='\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
let b:undo_ftplugin = "setlocal com< cms< fo<"
|
||||
|
||||
" we need this wrapper, as call doesn't allow a count
|
||||
fun! <SID>VbSearch(pattern, flags)
|
||||
function! s:VbSearch(pattern, flags)
|
||||
let cnt = v:count1
|
||||
while cnt > 0
|
||||
call search(a:pattern, a:flags)
|
||||
let cnt = cnt - 1
|
||||
endwhile
|
||||
endfun
|
||||
endfunction
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
if !exists("no_plugin_maps") && !exists("no_vb_maps")
|
||||
nnoremap <buffer> <silent> [[ <Cmd>call <SID>VbSearch('^\s*\%(\%(private\<Bar>public\)\s\+\)\=\%(function\<Bar>sub\)', 'sbW')<CR>
|
||||
vnoremap <buffer> <silent> [[ <Cmd>call <SID>VbSearch('^\s*\%(\%(private\<Bar>public\)\s\+\)\=\%(function\<Bar>sub\)', 'sbW')<CR>
|
||||
nnoremap <buffer> <silent> ]] <Cmd>call <SID>VbSearch('^\s*\%(\%(private\<Bar>public\)\s\+\)\=\%(function\<Bar>sub\)', 'sW')<CR>
|
||||
vnoremap <buffer> <silent> ]] <Cmd>call <SID>VbSearch('^\s*\%(\%(private\<Bar>public\)\s\+\)\=\%(function\<Bar>sub\)', 'sW')<CR>
|
||||
nnoremap <buffer> <silent> [] <Cmd>call <SID>VbSearch('^\s*end\s\+\%(function\<Bar>sub\)', 'sbW')<CR>
|
||||
vnoremap <buffer> <silent> [] <Cmd>call <SID>VbSearch('^\s*end\s\+\%(function\<Bar>sub\)', 'sbW')<CR>
|
||||
nnoremap <buffer> <silent> ][ <Cmd>call <SID>VbSearch('^\s*end\s\+\%(function\<Bar>sub\)', 'sW')<CR>
|
||||
vnoremap <buffer> <silent> ][ <Cmd>call <SID>VbSearch('^\s*end\s\+\%(function\<Bar>sub\)', 'sW')<CR>
|
||||
let b:undo_ftplugin .= " | sil! exe 'nunmap <buffer> [[' | sil! exe 'vunmap <buffer> [['" .
|
||||
\ " | sil! exe 'nunmap <buffer> ]]' | sil! exe 'vunmap <buffer> ]]'" .
|
||||
\ " | sil! exe 'nunmap <buffer> []' | sil! exe 'vunmap <buffer> []'" .
|
||||
\ " | sil! exe 'nunmap <buffer> ][' | sil! exe 'vunmap <buffer> ]['"
|
||||
endif
|
||||
|
||||
" NOTE the double escaping \\|
|
||||
nnoremap <buffer> <silent> [[ :call <SID>VbSearch('^\s*\(\(private\|public\)\s\+\)\=\(function\\|sub\)', 'bW')<cr>
|
||||
nnoremap <buffer> <silent> ]] :call <SID>VbSearch('^\s*\(\(private\|public\)\s\+\)\=\(function\\|sub\)', 'W')<cr>
|
||||
nnoremap <buffer> <silent> [] :call <SID>VbSearch('^\s*\<end\>\s\+\(function\\|sub\)', 'bW')<cr>
|
||||
nnoremap <buffer> <silent> ][ :call <SID>VbSearch('^\s*\<end\>\s\+\(function\\|sub\)', 'W')<cr>
|
||||
" TODO: line start anchors are almost certainly overly restrictive - allow
|
||||
" after statement separators. Even in QuickBasic only block IF statements
|
||||
" were required to be at the start of a line.
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_ignorecase = 1
|
||||
let b:match_words =
|
||||
\ '\%(^\s*\)\@<=\<if\>.*\<then\>\s*\%($\|''\):\%(^\s*\)\@<=\<else\>:\%(^\s*\)\@<=\<elseif\>:\%(^\s*\)\@<=\<end\>\s\+\<if\>,' .
|
||||
\ '\%(^\s*\)\@<=\<for\>:\%(^\s*\)\@<=\<next\>,' .
|
||||
\ '\%(^\s*\)\@<=\<while\>:\%(^\s*\)\@<=\<wend\>,' .
|
||||
\ '\%(^\s*\)\@<=\<do\>:\%(^\s*\)\@<=\<loop\>\s\+\<while\>,' .
|
||||
\ '\%(^\s*\)\@<=\<select\>\s\+\<case\>:\%(^\s*\)\@<=\<case\>:\%(^\s*\)\@<=\<end\>\s\+\<select\>,' .
|
||||
\ '\%(^\s*\)\@<=\<enum\>:\%(^\s*\)\@<=\<end\>\s\<enum\>,' .
|
||||
\ '\%(^\s*\)\@<=\<with\>:\%(^\s*\)\@<=\<end\>\s\<with\>,' .
|
||||
\ '\%(^\s*\)\@<=\%(\<\%(private\|public\)\>\s\+\)\=\<function\>\s\+\([^ \t(]\+\):\%(^\s*\)\@<=\<\1\>\s*=:\%(^\s*\)\@<=\<end\>\s\+\<function\>,' .
|
||||
\ '\%(^\s*\)\@<=\%(\<\%(private\|public\)\>\s\+\)\=\<sub\>\s\+:\%(^\s*\)\@<=\<end\>\s\+\<sub\>'
|
||||
let b:undo_ftplugin .= " | unlet! b:match_words b:match_ignorecase"
|
||||
endif
|
||||
|
||||
" matchit support
|
||||
if exists("loaded_matchit")
|
||||
let b:match_ignorecase=1
|
||||
let b:match_words=
|
||||
\ '\%(^\s*\)\@<=\<if\>.*\<then\>\s*$:\%(^\s*\)\@<=\<else\>:\%(^\s*\)\@<=\<elseif\>:\%(^\s*\)\@<=\<end\>\s\+\<if\>,' .
|
||||
\ '\%(^\s*\)\@<=\<for\>:\%(^\s*\)\@<=\<next\>,' .
|
||||
\ '\%(^\s*\)\@<=\<while\>:\%(^\s*\)\@<=\<wend\>,' .
|
||||
\ '\%(^\s*\)\@<=\<do\>:\%(^\s*\)\@<=\<loop\>\s\+\<while\>,' .
|
||||
\ '\%(^\s*\)\@<=\<select\>\s\+\<case\>:\%(^\s*\)\@<=\<case\>:\%(^\s*\)\@<=\<end\>\s\+\<select\>,' .
|
||||
\ '\%(^\s*\)\@<=\<enum\>:\%(^\s*\)\@<=\<end\>\s\<enum\>,' .
|
||||
\ '\%(^\s*\)\@<=\<with\>:\%(^\s*\)\@<=\<end\>\s\<with\>,' .
|
||||
\ '\%(^\s*\)\@<=\%(\<\%(private\|public\)\>\s\+\)\=\<function\>\s\+\([^ \t(]\+\):\%(^\s*\)\@<=\<\1\>\s*=:\%(^\s*\)\@<=\<end\>\s\+\<function\>,' .
|
||||
\ '\%(^\s*\)\@<=\%(\<\%(private\|public\)\>\s\+\)\=\<sub\>\s\+:\%(^\s*\)\@<=\<end\>\s\+\<sub\>'
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Visual Basic Source Files (*.bas)\t*.bas\n" .
|
||||
\ "Visual Basic Form Files (*.frm)\t*.frm\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin .= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Zimbu
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2017 Dec 05
|
||||
" Last Change: 2021 Nov 12
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -34,9 +34,11 @@ setlocal errorformat^=%f\ line\ %l\ col\ %c:\ %m,ERROR:\ %m
|
||||
|
||||
" When the matchit plugin is loaded, this makes the % command skip parens and
|
||||
" braces in comments.
|
||||
let b:match_words = '\(^\s*\)\@<=\(MODULE\|CLASS\|INTERFACE\|BITS\|ENUM\|SHARED\|FUNC\|REPLACE\|DEFINE\|PROC\|EQUAL\|MAIN\|IF\|GENERATE_IF\|WHILE\|REPEAT\|WITH\|DO\|FOR\|SWITCH\|TRY\)\>\|{\s*$:\(^\s*\)\@<=\(ELSE\|ELSEIF\|GENERATE_ELSE\|GENERATE_ELSEIF\|CATCH\|FINALLY\)\>:\(^\s*\)\@<=\(}\|\<UNTIL\>\)'
|
||||
|
||||
let b:match_skip = 's:comment\|string\|zimbuchar'
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_words = '\(^\s*\)\@<=\(MODULE\|CLASS\|INTERFACE\|BITS\|ENUM\|SHARED\|FUNC\|REPLACE\|DEFINE\|PROC\|EQUAL\|MAIN\|IF\|GENERATE_IF\|WHILE\|REPEAT\|WITH\|DO\|FOR\|SWITCH\|TRY\)\>\|{\s*$:\(^\s*\)\@<=\(ELSE\|ELSEIF\|GENERATE_ELSE\|GENERATE_ELSEIF\|CATCH\|FINALLY\)\>:\(^\s*\)\@<=\(}\|\<UNTIL\>\)'
|
||||
let b:match_skip = 's:comment\|string\|zimbuchar'
|
||||
let b:undo_ftplugin ..= " | unlet! b:match_words b:match_skip"
|
||||
endif
|
||||
|
||||
setlocal tw=78
|
||||
setlocal et sts=2 sw=2
|
||||
@@ -135,9 +137,60 @@ iabbr <buffer> <expr> until GCUpperSpace("until")
|
||||
iabbr <buffer> <expr> while GCUpperSpace("while")
|
||||
iabbr <buffer> <expr> repeat GCUpper("repeat")
|
||||
|
||||
let b:undo_ftplugin ..=
|
||||
\ " | iunabbr <buffer> alias" ..
|
||||
\ " | iunabbr <buffer> arg" ..
|
||||
\ " | iunabbr <buffer> break" ..
|
||||
\ " | iunabbr <buffer> case" ..
|
||||
\ " | iunabbr <buffer> catch" ..
|
||||
\ " | iunabbr <buffer> check" ..
|
||||
\ " | iunabbr <buffer> class" ..
|
||||
\ " | iunabbr <buffer> interface" ..
|
||||
\ " | iunabbr <buffer> implements" ..
|
||||
\ " | iunabbr <buffer> shared" ..
|
||||
\ " | iunabbr <buffer> continue" ..
|
||||
\ " | iunabbr <buffer> default" ..
|
||||
\ " | iunabbr <buffer> extends" ..
|
||||
\ " | iunabbr <buffer> do" ..
|
||||
\ " | iunabbr <buffer> else" ..
|
||||
\ " | iunabbr <buffer> elseif" ..
|
||||
\ " | iunabbr <buffer> enum" ..
|
||||
\ " | iunabbr <buffer> exit" ..
|
||||
\ " | iunabbr <buffer> false" ..
|
||||
\ " | iunabbr <buffer> fail" ..
|
||||
\ " | iunabbr <buffer> finally" ..
|
||||
\ " | iunabbr <buffer> for" ..
|
||||
\ " | iunabbr <buffer> func" ..
|
||||
\ " | iunabbr <buffer> if" ..
|
||||
\ " | iunabbr <buffer> import" ..
|
||||
\ " | iunabbr <buffer> in" ..
|
||||
\ " | iunabbr <buffer> io" ..
|
||||
\ " | iunabbr <buffer> main" ..
|
||||
\ " | iunabbr <buffer> module" ..
|
||||
\ " | iunabbr <buffer> new" ..
|
||||
\ " | iunabbr <buffer> nil" ..
|
||||
\ " | iunabbr <buffer> ok" ..
|
||||
\ " | iunabbr <buffer> proc" ..
|
||||
\ " | iunabbr <buffer> proceed" ..
|
||||
\ " | iunabbr <buffer> return" ..
|
||||
\ " | iunabbr <buffer> step" ..
|
||||
\ " | iunabbr <buffer> switch" ..
|
||||
\ " | iunabbr <buffer> sys" ..
|
||||
\ " | iunabbr <buffer> this" ..
|
||||
\ " | iunabbr <buffer> throw" ..
|
||||
\ " | iunabbr <buffer> try" ..
|
||||
\ " | iunabbr <buffer> to" ..
|
||||
\ " | iunabbr <buffer> true" ..
|
||||
\ " | iunabbr <buffer> until" ..
|
||||
\ " | iunabbr <buffer> while" ..
|
||||
\ " | iunabbr <buffer> repeat"
|
||||
|
||||
if !exists("no_plugin_maps") && !exists("no_zimbu_maps")
|
||||
nnoremap <silent> <buffer> [[ m`:call ZimbuGoStartBlock()<CR>
|
||||
nnoremap <silent> <buffer> ]] m`:call ZimbuGoEndBlock()<CR>
|
||||
let b:undo_ftplugin ..=
|
||||
\ " | silent! exe 'nunmap <buffer> [['" ..
|
||||
\ " | silent! exe 'nunmap <buffer> ]]'"
|
||||
endif
|
||||
|
||||
" Using a function makes sure the search pattern is restored
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
" Vim indent file
|
||||
" Language: Clojure
|
||||
" Maintainer: Alex Vear <av@axvr.io>
|
||||
" Maintainer: Alex Vear <alex@vear.uk>
|
||||
" Former Maintainers: Sung Pae <self@sungpae.com>
|
||||
" Meikel Brandmeyer <mb@kotka.de>
|
||||
" URL: https://github.com/clojure-vim/clojure.vim
|
||||
" License: Vim (see :h license)
|
||||
" Last Change: 2021-02-13
|
||||
" Last Change: 2021-10-26
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -24,7 +24,7 @@ setlocal indentkeys=!,o,O
|
||||
if exists("*searchpairpos")
|
||||
|
||||
if !exists('g:clojure_maxlines')
|
||||
let g:clojure_maxlines = 100
|
||||
let g:clojure_maxlines = 300
|
||||
endif
|
||||
|
||||
if !exists('g:clojure_fuzzy_indent')
|
||||
@@ -71,14 +71,10 @@ if exists("*searchpairpos")
|
||||
return s:current_char() =~# '\v[\(\)\[\]\{\}]' && !s:ignored_region()
|
||||
endfunction
|
||||
|
||||
" Returns 1 if string matches a pattern in 'patterns', which may be a
|
||||
" list of patterns, or a comma-delimited string of implicitly anchored
|
||||
" patterns.
|
||||
" Returns 1 if string matches a pattern in 'patterns', which should be
|
||||
" a list of patterns.
|
||||
function! s:match_one(patterns, string)
|
||||
let list = type(a:patterns) == type([])
|
||||
\ ? a:patterns
|
||||
\ : map(split(a:patterns, ','), '"^" . v:val . "$"')
|
||||
for pat in list
|
||||
for pat in a:patterns
|
||||
if a:string =~# pat | return 1 | endif
|
||||
endfor
|
||||
endfunction
|
||||
@@ -215,9 +211,10 @@ if exists("*searchpairpos")
|
||||
endfunction
|
||||
|
||||
" Check if form is a reader conditional, that is, it is prefixed by #?
|
||||
" or @#?
|
||||
" or #?@
|
||||
function! s:is_reader_conditional_special_case(position)
|
||||
return getline(a:position[0])[a:position[1] - 3 : a:position[1] - 2] == "#?"
|
||||
\|| getline(a:position[0])[a:position[1] - 4 : a:position[1] - 2] == "#?@"
|
||||
endfunction
|
||||
|
||||
" Returns 1 for opening brackets, -1 for _anything else_.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: MSDOS batch file (with NT command extensions)
|
||||
" Maintainer: Ken Takata
|
||||
" URL: https://github.com/k-takata/vim-dosbatch-indent
|
||||
" Last Change: 2017 May 10
|
||||
" Last Change: 2021-10-18
|
||||
" Filenames: *.bat
|
||||
" License: VIM License
|
||||
|
||||
@@ -17,6 +17,8 @@ setlocal indentexpr=GetDosBatchIndent(v:lnum)
|
||||
setlocal indentkeys=!^F,o,O
|
||||
setlocal indentkeys+=0=)
|
||||
|
||||
let b:undo_indent = "setl ai< inde< indk< si<"
|
||||
|
||||
if exists("*GetDosBatchIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -1,8 +1,14 @@
|
||||
" Vim indent file
|
||||
" Language: Hamster Script
|
||||
" Version: 2.0.6.0
|
||||
" Last Change: Wed Nov 08 2006 12:02:42 PM
|
||||
" Maintainer: David Fishburn <fishburn@ianywhere.com>
|
||||
" Version: 2.0.6.1
|
||||
" Last Change: 2021 Oct 11
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Download: https://www.vim.org/scripts/script.php?script_id=1099
|
||||
"
|
||||
" 2.0.6.1 (Oct 2021)
|
||||
" Added b:undo_indent
|
||||
" Added cpo check
|
||||
"
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -14,12 +20,17 @@ setlocal indentkeys+==~if,=~else,=~endif,=~endfor,=~endwhile
|
||||
setlocal indentkeys+==~do,=~until,=~while,=~repeat,=~for,=~loop
|
||||
setlocal indentkeys+==~sub,=~endsub
|
||||
|
||||
let b:undo_indent = "setl indentkeys<"
|
||||
|
||||
" Define the appropriate indent function but only once
|
||||
setlocal indentexpr=HamGetFreeIndent()
|
||||
if exists("*HamGetFreeIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function HamGetIndent(lnum)
|
||||
let ind = indent(a:lnum)
|
||||
let prevline=getline(a:lnum)
|
||||
@@ -52,4 +63,8 @@ function HamGetFreeIndent()
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
" Restore:
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" vim:sw=2 tw=80
|
||||
|
||||
@@ -20,6 +20,8 @@ setlocal autoindent " indentexpr isn't much help otherwise
|
||||
setlocal indentexpr=GetMesonIndent(v:lnum)
|
||||
setlocal indentkeys+==elif,=else,=endforeach,=endif,0)
|
||||
|
||||
let b:undo_indent = "setl ai< inde< indk< lisp<"
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*GetMesonIndent")
|
||||
finish
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: NSIS script
|
||||
" Maintainer: Ken Takata
|
||||
" URL: https://github.com/k-takata/vim-nsis
|
||||
" Last Change: 2018-01-21
|
||||
" Last Change: 2021-10-18
|
||||
" Filenames: *.nsi
|
||||
" License: VIM License
|
||||
|
||||
@@ -17,6 +17,8 @@ setlocal indentexpr=GetNsisIndent(v:lnum)
|
||||
setlocal indentkeys=!^F,o,O
|
||||
setlocal indentkeys+==~${Else,=~${EndIf,=~${EndUnless,=~${AndIf,=~${AndUnless,=~${OrIf,=~${OrUnless,=~${Case,=~${Default,=~${EndSelect,=~${EndSwith,=~${Loop,=~${Next,=~${MementoSectionEnd,=~FunctionEnd,=~SectionEnd,=~SectionGroupEnd,=~PageExEnd,0=~!macroend,0=~!if,0=~!else,0=~!endif
|
||||
|
||||
let b:undo_indent = "setl ai< inde< indk< si<"
|
||||
|
||||
if exists("*GetNsisIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: SQL
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Last Change By Maintainer: 2017 Jun 13
|
||||
" Last Change: by Stephen Wall, #5578, 2020 Jun 07
|
||||
" Version: 3.0
|
||||
" Last Change: 2021 Oct 11
|
||||
" Version: 4.0
|
||||
" Download: http://vim.sourceforge.net/script.php?script_id=495
|
||||
|
||||
" Notes:
|
||||
@@ -21,6 +20,9 @@
|
||||
" it, this can leave the indent hanging to the right one too many.
|
||||
"
|
||||
" History:
|
||||
" 4.0 (Oct 2021)
|
||||
" Added b:undo_indent
|
||||
"
|
||||
" 3.0 (Dec 2012)
|
||||
" Added cpo check
|
||||
"
|
||||
@@ -56,10 +58,13 @@ setlocal indentkeys+==~end,=~else,=~elseif,=~elsif,0=~when,0=)
|
||||
" in the indentkeys is typed
|
||||
setlocal indentexpr=GetSQLIndent()
|
||||
|
||||
let b:undo_indent = "setl indentexpr< indentkeys<"
|
||||
|
||||
" Only define the functions once.
|
||||
if exists("*GetSQLIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -68,14 +73,9 @@ set cpo&vim
|
||||
" IS is excluded, since it is difficult to determine when the
|
||||
" ending block is (especially for procedures/functions).
|
||||
let s:SQLBlockStart = '^\s*\%('.
|
||||
\ 'if\>.*\<then\|'.
|
||||
\ 'then\|else\>\|'.
|
||||
\ 'elseif\>.*\<then\|'.
|
||||
\ 'elsif\>.(\<then\|'.
|
||||
\ 'while\>.*\<loop\|'.
|
||||
\ 'for\>.*\<loop\|'.
|
||||
\ 'foreach\>.*\<loop\|'.
|
||||
\ 'loop\|do\|declare\|begin\|'.
|
||||
\ 'if\|else\|elseif\|elsif\|'.
|
||||
\ 'while\|loop\|do\|for\|'.
|
||||
\ 'begin\|'.
|
||||
\ 'case\|when\|merge\|exception'.
|
||||
\ '\)\>'
|
||||
let s:SQLBlockEnd = '^\s*\(end\)\>'
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: C-shell (tcsh)
|
||||
" Maintainer: Doug Kearns <a@b.com> where a=dougkearns, b=gmail
|
||||
" Last Modified: Sun 26 Sep 2021 12:38:38 PM EDT
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Gautam Iyer <gi1242+vim@NoSpam.com> where NoSpam=gmail (Original Author)
|
||||
" Last Change: 2021 Oct 15
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -11,7 +12,9 @@ endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=TcshGetIndent()
|
||||
setlocal indentkeys+=e,0=end,0=endsw indentkeys-=0{,0},0),:,0#
|
||||
setlocal indentkeys+=e,0=end
|
||||
setlocal indentkeys-=0{,0},0),:,0#
|
||||
|
||||
let b:undo_indent = "setl inde< indk<"
|
||||
|
||||
" Only define the function once.
|
||||
@@ -40,9 +43,9 @@ function TcshGetIndent()
|
||||
let ind = ind - shiftwidth()
|
||||
endif
|
||||
|
||||
" Subtract indent if current line has on end, endif, case commands
|
||||
" Subtract indent if current line has on end, endif, endsw, case commands
|
||||
let line = getline(v:lnum)
|
||||
if line =~ '\v^\s*%(else|end|endif)\s*$'
|
||||
if line =~ '\v^\s*%(else|end|endif|endsw)\s*$'
|
||||
let ind = ind - shiftwidth()
|
||||
endif
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Based on Tera Term Version 4.100
|
||||
" Maintainer: Ken Takata
|
||||
" URL: https://github.com/k-takata/vim-teraterm
|
||||
" Last Change: 2018-08-31
|
||||
" Last Change: 2021-10-18
|
||||
" Filenames: *.ttl
|
||||
" License: VIM License
|
||||
|
||||
@@ -18,6 +18,8 @@ setlocal indentexpr=GetTeraTermIndent(v:lnum)
|
||||
setlocal indentkeys=!^F,o,O,e
|
||||
setlocal indentkeys+==elseif,=endif,=loop,=next,=enduntil,=endwhile
|
||||
|
||||
let b:undo_indent = "setl ai< inde< indk< si<"
|
||||
|
||||
if exists("*GetTeraTermIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Vim script
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Apr 18
|
||||
" Last Change: 2021 Nov 27
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -12,6 +12,7 @@ let b:did_indent = 1
|
||||
setlocal indentexpr=GetVimIndent()
|
||||
setlocal indentkeys+==end,=},=else,=cat,=finall,=END,0\\,0=\"\\\
|
||||
setlocal indentkeys-=0#
|
||||
setlocal indentkeys-=:
|
||||
|
||||
let b:undo_indent = "setl indentkeys< indentexpr<"
|
||||
|
||||
@@ -107,7 +108,7 @@ function GetVimIndentIntern()
|
||||
if i >= 0
|
||||
let ind += shiftwidth()
|
||||
if strpart(prev_text, i, 1) == '|' && has('syntax_items')
|
||||
\ && synIDattr(synID(lnum, i, 1), "name") =~ '\(Comment\|String\)$'
|
||||
\ && synIDattr(synID(lnum, i, 1), "name") =~ '\(Comment\|String\|PatSep\)$'
|
||||
let ind -= shiftwidth()
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Oct 27
|
||||
" Last Change: 2021 Dec 12
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
let buf = bufnr('option-window')
|
||||
@@ -260,6 +260,8 @@ call <SID>OptionG("sect", §)
|
||||
call <SID>AddOption("path", gettext("list of directory names used for file searching"))
|
||||
call append("$", "\t" .. s:global_or_local)
|
||||
call <SID>OptionG("pa", &pa)
|
||||
call <SID>AddOption("cdhome", gettext(":cd without argument goes to the home directory"))
|
||||
call <SID>BinOptionG("cdh", &cdh)
|
||||
call <SID>AddOption("cdpath", gettext("list of directory names used for :cd"))
|
||||
call <SID>OptionG("cd", &cd)
|
||||
if exists("+autochdir")
|
||||
@@ -652,6 +654,8 @@ if has("gui")
|
||||
endif
|
||||
call <SID>AddOption("guiheadroom", gettext("room (in pixels) left above/below the window"))
|
||||
call append("$", " \tset ghr=" . &ghr)
|
||||
call <SID>AddOption("guiligatures", gettext("list of ASCII characters that can be combined into complex shapes"))
|
||||
call <SID>OptionG("gli", &gli)
|
||||
endif
|
||||
if has("directx")
|
||||
call <SID>AddOption("renderoptions", gettext("options for text rendering"))
|
||||
@@ -840,6 +844,9 @@ if has("insert_expand")
|
||||
call <SID>AddOption("thesaurus", gettext("list of thesaurus files for keyword completion"))
|
||||
call append("$", "\t" .. s:global_or_local)
|
||||
call <SID>OptionG("tsr", &tsr)
|
||||
call <SID>AddOption("thesaurusfunc", gettext("function used for thesaurus completion"))
|
||||
call append("$", "\t" .. s:global_or_local)
|
||||
call <SID>OptionG("tsrfu", &tsrfu)
|
||||
endif
|
||||
call <SID>AddOption("infercase", gettext("adjust case of a keyword completion match"))
|
||||
call append("$", "\t" .. s:local_to_buffer)
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
*matchit.txt* Extended "%" matching
|
||||
*matchit.txt* Extended "%" matching
|
||||
|
||||
For instructions on installing this file, type
|
||||
`:help matchit-install`
|
||||
inside Vim.
|
||||
|
||||
For Vim version 8.1. Last change: 2021 May 17
|
||||
For Vim version 8.1. Last change: 2021 Nov 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Benji Fisher et al
|
||||
|
||||
362
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
vendored
362
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
vendored
@@ -2,7 +2,7 @@
|
||||
"
|
||||
" Author: Bram Moolenaar
|
||||
" Copyright: Vim license applies, see ":help license"
|
||||
" Last Change: 2021 Aug 23
|
||||
" Last Change: 2021 Dec 16
|
||||
"
|
||||
" WORK IN PROGRESS - Only the basics work
|
||||
" Note: On MS-Windows you need a recent version of gdb. The one included with
|
||||
@@ -96,6 +96,7 @@ endfunc
|
||||
|
||||
call s:Highlight(1, '', &background)
|
||||
hi default debugBreakpoint term=reverse ctermbg=red guibg=red
|
||||
hi default debugBreakpointDisabled term=reverse ctermbg=gray guibg=gray
|
||||
|
||||
func s:StartDebug(bang, ...)
|
||||
" First argument is the command to debug, second core file or process ID.
|
||||
@@ -229,14 +230,28 @@ func s:StartDebug_term(dict)
|
||||
endif
|
||||
let commpty = job_info(term_getjob(s:commbuf))['tty_out']
|
||||
|
||||
" Open a terminal window to run the debugger.
|
||||
" Add -quiet to avoid the intro message causing a hit-enter prompt.
|
||||
let gdb_args = get(a:dict, 'gdb_args', [])
|
||||
let proc_args = get(a:dict, 'proc_args', [])
|
||||
|
||||
let cmd = [g:termdebugger, '-quiet', '-tty', pty, '--eval-command', 'echo startupdone\n'] + gdb_args
|
||||
call ch_log('executing "' . join(cmd) . '"')
|
||||
let s:gdbbuf = term_start(cmd, {
|
||||
let gdb_cmd = [g:termdebugger]
|
||||
" Add -quiet to avoid the intro message causing a hit-enter prompt.
|
||||
let gdb_cmd += ['-quiet']
|
||||
" Disable pagination, it causes everything to stop at the gdb
|
||||
let gdb_cmd += ['-iex', 'set pagination off']
|
||||
" Interpret commands while the target is running. This should usually only
|
||||
" be exec-interrupt, since many commands don't work properly while the
|
||||
" target is running (so execute during startup).
|
||||
let gdb_cmd += ['-iex', 'set mi-async on']
|
||||
" Open a terminal window to run the debugger.
|
||||
let gdb_cmd += ['-tty', pty]
|
||||
" Command executed _after_ startup is done, provides us with the necessary feedback
|
||||
let gdb_cmd += ['-ex', 'echo startupdone\n']
|
||||
|
||||
" Adding arguments requested by the user
|
||||
let gdb_cmd += gdb_args
|
||||
|
||||
call ch_log('executing "' . join(gdb_cmd) . '"')
|
||||
let s:gdbbuf = term_start(gdb_cmd, {
|
||||
\ 'term_finish': 'close',
|
||||
\ })
|
||||
if s:gdbbuf == 0
|
||||
@@ -255,8 +270,8 @@ func s:StartDebug_term(dict)
|
||||
|
||||
for lnum in range(1, 200)
|
||||
if term_getline(s:gdbbuf, lnum) =~ 'startupdone'
|
||||
let try_count = 9999
|
||||
break
|
||||
let try_count = 9999
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
let try_count += 1
|
||||
@@ -269,11 +284,12 @@ func s:StartDebug_term(dict)
|
||||
|
||||
" Set arguments to be run.
|
||||
if len(proc_args)
|
||||
call term_sendkeys(s:gdbbuf, 'set args ' . join(proc_args) . "\r")
|
||||
call term_sendkeys(s:gdbbuf, 'server set args ' . join(proc_args) . "\r")
|
||||
endif
|
||||
|
||||
" Connect gdb to the communication pty, using the GDB/MI interface
|
||||
call term_sendkeys(s:gdbbuf, 'new-ui mi ' . commpty . "\r")
|
||||
" Connect gdb to the communication pty, using the GDB/MI interface.
|
||||
" Prefix "server" to avoid adding this to the history.
|
||||
call term_sendkeys(s:gdbbuf, 'server new-ui mi ' . commpty . "\r")
|
||||
|
||||
" Wait for the response to show up, users may not notice the error and wonder
|
||||
" why the debugger doesn't work.
|
||||
@@ -288,20 +304,21 @@ func s:StartDebug_term(dict)
|
||||
let line1 = term_getline(s:gdbbuf, lnum)
|
||||
let line2 = term_getline(s:gdbbuf, lnum + 1)
|
||||
if line1 =~ 'new-ui mi '
|
||||
" response can be in the same line or the next line
|
||||
let response = line1 . line2
|
||||
if response =~ 'Undefined command'
|
||||
echoerr 'Sorry, your gdb is too old, gdb 7.12 is required'
|
||||
call s:CloseBuffers()
|
||||
return
|
||||
endif
|
||||
if response =~ 'New UI allocated'
|
||||
" Success!
|
||||
break
|
||||
endif
|
||||
" response can be in the same line or the next line
|
||||
let response = line1 . line2
|
||||
if response =~ 'Undefined command'
|
||||
echoerr 'Sorry, your gdb is too old, gdb 7.12 is required'
|
||||
" CHECKME: possibly send a "server show version" here
|
||||
call s:CloseBuffers()
|
||||
return
|
||||
endif
|
||||
if response =~ 'New UI allocated'
|
||||
" Success!
|
||||
break
|
||||
endif
|
||||
elseif line1 =~ 'Reading symbols from' && line2 !~ 'new-ui mi '
|
||||
" Reading symbols might take a while, try more times
|
||||
let try_count -= 1
|
||||
" Reading symbols might take a while, try more times
|
||||
let try_count -= 1
|
||||
endif
|
||||
endfor
|
||||
if response =~ 'New UI allocated'
|
||||
@@ -315,17 +332,6 @@ func s:StartDebug_term(dict)
|
||||
sleep 10m
|
||||
endwhile
|
||||
|
||||
" Interpret commands while the target is running. This should usually only be
|
||||
" exec-interrupt, since many commands don't work properly while the target is
|
||||
" running.
|
||||
call s:SendCommand('-gdb-set mi-async on')
|
||||
" Older gdb uses a different command.
|
||||
call s:SendCommand('-gdb-set target-async on')
|
||||
|
||||
" Disable pagination, it causes everything to stop at the gdb
|
||||
" "Type <return> to continue" prompt.
|
||||
call s:SendCommand('set pagination off')
|
||||
|
||||
call job_setoptions(term_getjob(s:gdbbuf), {'exit_cb': function('s:EndTermDebug')})
|
||||
|
||||
" Set the filetype, this can be used to add mappings.
|
||||
@@ -355,14 +361,26 @@ func s:StartDebug_prompt(dict)
|
||||
exe (&columns / 2 - 1) . "wincmd |"
|
||||
endif
|
||||
|
||||
" Add -quiet to avoid the intro message causing a hit-enter prompt.
|
||||
let gdb_args = get(a:dict, 'gdb_args', [])
|
||||
let proc_args = get(a:dict, 'proc_args', [])
|
||||
|
||||
let cmd = [g:termdebugger, '-quiet', '--interpreter=mi2'] + gdb_args
|
||||
call ch_log('executing "' . join(cmd) . '"')
|
||||
let gdb_cmd = [g:termdebugger]
|
||||
" Add -quiet to avoid the intro message causing a hit-enter prompt.
|
||||
let gdb_cmd += ['-quiet']
|
||||
" Disable pagination, it causes everything to stop at the gdb, needs to be run early
|
||||
let gdb_cmd += ['-iex', 'set pagination off']
|
||||
" Interpret commands while the target is running. This should usually only
|
||||
" be exec-interrupt, since many commands don't work properly while the
|
||||
" target is running (so execute during startup).
|
||||
let gdb_cmd += ['-iex', 'set mi-async on']
|
||||
" directly communicate via mi2
|
||||
let gdb_cmd += ['--interpreter=mi2']
|
||||
|
||||
let s:gdbjob = job_start(cmd, {
|
||||
" Adding arguments requested by the user
|
||||
let gdb_cmd += gdb_args
|
||||
|
||||
call ch_log('executing "' . join(gdb_cmd) . '"')
|
||||
let s:gdbjob = job_start(gdb_cmd, {
|
||||
\ 'exit_cb': function('s:EndPromptDebug'),
|
||||
\ 'out_cb': function('s:GdbOutCallback'),
|
||||
\ })
|
||||
@@ -375,13 +393,6 @@ func s:StartDebug_prompt(dict)
|
||||
set modified
|
||||
let s:gdb_channel = job_getchannel(s:gdbjob)
|
||||
|
||||
" Interpret commands while the target is running. This should usually only
|
||||
" be exec-interrupt, since many commands don't work properly while the
|
||||
" target is running.
|
||||
call s:SendCommand('-gdb-set mi-async on')
|
||||
" Older gdb uses a different command.
|
||||
call s:SendCommand('-gdb-set target-async on')
|
||||
|
||||
let s:ptybuf = 0
|
||||
if has('win32')
|
||||
" MS-Windows: run in a new console window for maximum compatibility
|
||||
@@ -415,8 +426,6 @@ func s:StartDebug_prompt(dict)
|
||||
endif
|
||||
call s:SendCommand('set print pretty on')
|
||||
call s:SendCommand('set breakpoint pending on')
|
||||
" Disable pagination, it causes everything to stop at the gdb
|
||||
call s:SendCommand('set pagination off')
|
||||
|
||||
" Set arguments to be run
|
||||
if len(proc_args)
|
||||
@@ -470,7 +479,7 @@ func s:StartDebugCommon(dict)
|
||||
" Run the command if the bang attribute was given and got to the debug
|
||||
" window.
|
||||
if get(a:dict, 'bang', 0)
|
||||
call s:SendCommand('-exec-run')
|
||||
call s:SendResumingCommand('-exec-run')
|
||||
call win_gotoid(s:ptywin)
|
||||
endif
|
||||
endfunc
|
||||
@@ -493,7 +502,7 @@ func TermDebugSendCommand(cmd)
|
||||
let do_continue = 0
|
||||
if !s:stopped
|
||||
let do_continue = 1
|
||||
call s:SendCommand('-exec-interrupt')
|
||||
Stop
|
||||
sleep 10m
|
||||
endif
|
||||
call term_sendkeys(s:gdbbuf, a:cmd . "\r")
|
||||
@@ -503,6 +512,20 @@ func TermDebugSendCommand(cmd)
|
||||
endif
|
||||
endfunc
|
||||
|
||||
" Send a command that resumes the program. If the program isn't stopped the
|
||||
" command is not sent (to avoid a repeated command to cause trouble).
|
||||
" If the command is sent then reset s:stopped.
|
||||
func s:SendResumingCommand(cmd)
|
||||
if s:stopped
|
||||
" reset s:stopped here, it may take a bit of time before we get a response
|
||||
let s:stopped = 0
|
||||
call ch_log('assume that program is running after this command')
|
||||
call s:SendCommand(a:cmd)
|
||||
else
|
||||
call ch_log('dropping command, program is running: ' . a:cmd)
|
||||
endif
|
||||
endfunc
|
||||
|
||||
" Function called when entering a line in the prompt buffer.
|
||||
func s:PromptCallback(text)
|
||||
call s:SendCommand(a:text)
|
||||
@@ -534,7 +557,7 @@ func s:GdbOutCallback(channel, text)
|
||||
if a:text == '(gdb) ' || a:text == '^done' || a:text[0] == '&'
|
||||
return
|
||||
endif
|
||||
if a:text =~ '^^error,msg='
|
||||
if a:text =~ '^\^error,msg='
|
||||
let text = s:DecodeMessage(a:text[11:])
|
||||
if exists('s:evalexpr') && text =~ 'A syntax error in expression, near\|No symbol .* in current context'
|
||||
" Silently drop evaluation errors.
|
||||
@@ -559,33 +582,33 @@ func s:GdbOutCallback(channel, text)
|
||||
endfunc
|
||||
|
||||
" Decode a message from gdb. quotedText starts with a ", return the text up
|
||||
" to the next ", unescaping characters.
|
||||
" to the next ", unescaping characters:
|
||||
" - remove line breaks
|
||||
" - change \\t to \t
|
||||
" - change \0xhh to \xhh (disabled for now)
|
||||
" - change \ooo to octal
|
||||
" - change \\ to \
|
||||
func s:DecodeMessage(quotedText)
|
||||
if a:quotedText[0] != '"'
|
||||
echoerr 'DecodeMessage(): missing quote in ' . a:quotedText
|
||||
return
|
||||
endif
|
||||
let result = ''
|
||||
let i = 1
|
||||
while a:quotedText[i] != '"' && i < len(a:quotedText)
|
||||
if a:quotedText[i] == '\'
|
||||
let i += 1
|
||||
if a:quotedText[i] == 'n'
|
||||
" drop \n
|
||||
let i += 1
|
||||
continue
|
||||
elseif a:quotedText[i] == 't'
|
||||
" append \t
|
||||
let i += 1
|
||||
let result .= "\t"
|
||||
continue
|
||||
endif
|
||||
endif
|
||||
let result .= a:quotedText[i]
|
||||
let i += 1
|
||||
endwhile
|
||||
return result
|
||||
return a:quotedText
|
||||
\ ->substitute('^"\|".*\|\\n', '', 'g')
|
||||
\ ->substitute('\\t', "\t", 'g')
|
||||
" multi-byte characters arrive in octal form
|
||||
" NULL-values must be kept encoded as those break the string otherwise
|
||||
\ ->substitute('\\000', s:NullRepl, 'g')
|
||||
\ ->substitute('\\\o\o\o', {-> eval('"' .. submatch(0) .. '"')}, 'g')
|
||||
" Note: GDB docs also mention hex encodings - the translations below work
|
||||
" but we keep them out for performance-reasons until we actually see
|
||||
" those in mi-returns
|
||||
" \ ->substitute('\\0x\(\x\x\)', {-> eval('"\x' .. submatch(1) .. '"')}, 'g')
|
||||
" \ ->substitute('\\0x00', s:NullRepl, 'g')
|
||||
\ ->substitute('\\\\', '\', 'g')
|
||||
\ ->substitute(s:NullRepl, '\\000', 'g')
|
||||
endfunc
|
||||
const s:NullRepl = 'XXXNULLXXX'
|
||||
|
||||
" Extract the "name" value from a gdb message with fullname="name".
|
||||
func s:GetFullname(msg)
|
||||
@@ -711,8 +734,8 @@ func s:HandleDisasmMsg(msg)
|
||||
|
||||
let lnum = search('^' . s:asm_addr)
|
||||
if lnum != 0
|
||||
exe 'sign unplace ' . s:asm_id
|
||||
exe 'sign place ' . s:asm_id . ' line=' . lnum . ' name=debugPC'
|
||||
exe 'sign unplace ' . s:asm_id
|
||||
exe 'sign place ' . s:asm_id . ' line=' . lnum . ' name=debugPC'
|
||||
endif
|
||||
|
||||
call win_gotoid(curwinid)
|
||||
@@ -736,9 +759,9 @@ func s:HandleDisasmMsg(msg)
|
||||
else
|
||||
let value = substitute(a:msg, '^\~\"[ ]*', '', '')
|
||||
let value = substitute(value, '^=>[ ]*', '', '')
|
||||
let value = substitute(value, '\\n\"
|
||||
let value = substitute(value, '\\n\"\r$', '', '')
|
||||
let value = substitute(value, '\\n\"$', '', '')
|
||||
let value = substitute(value, '\\n\"$', '', '')
|
||||
let value = substitute(value, '\r', '', '')
|
||||
let value = substitute(value, '\\t', ' ', 'g')
|
||||
|
||||
if value != '' || !empty(s:asm_lines)
|
||||
@@ -763,7 +786,9 @@ func s:CommOutput(chan, msg)
|
||||
if msg =~ '^\(\*stopped\|\*running\|=thread-selected\)'
|
||||
call s:HandleCursor(msg)
|
||||
elseif msg =~ '^\^done,bkpt=' || msg =~ '^=breakpoint-created,'
|
||||
call s:HandleCursor(msg)
|
||||
call s:HandleNewBreakpoint(msg, 0)
|
||||
elseif msg =~ '^=breakpoint-modified,'
|
||||
call s:HandleNewBreakpoint(msg, 1)
|
||||
elseif msg =~ '^=breakpoint-deleted,'
|
||||
call s:HandleBreakpointDelete(msg)
|
||||
elseif msg =~ '^=thread-group-started'
|
||||
@@ -773,8 +798,8 @@ func s:CommOutput(chan, msg)
|
||||
elseif msg =~ '^\^error,msg='
|
||||
call s:HandleError(msg)
|
||||
elseif msg =~ '^disassemble'
|
||||
call s:HandleError(msg)
|
||||
elseif msg =~ '^disassemble'
|
||||
let s:parsing_disasm_msg = 1
|
||||
let s:asm_lines = []
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
@@ -797,17 +822,20 @@ func s:InstallCommands()
|
||||
|
||||
command -nargs=? Break call s:SetBreakpoint(<q-args>)
|
||||
command Clear call s:ClearBreakpoint()
|
||||
command -nargs=? Break call s:SetBreakpoint(<q-args>)
|
||||
command Clear call s:ClearBreakpoint()
|
||||
command Step call s:SendCommand('-exec-step')
|
||||
command Step call s:SendResumingCommand('-exec-step')
|
||||
command Over call s:SendResumingCommand('-exec-next')
|
||||
command Finish call s:SendResumingCommand('-exec-finish')
|
||||
command -nargs=* Run call s:Run(<q-args>)
|
||||
command Finish call s:SendCommand('-exec-finish')
|
||||
command -nargs=* Run call s:Run(<q-args>)
|
||||
command -nargs=* Arguments call s:SendResumingCommand('-exec-arguments ' . <q-args>)
|
||||
|
||||
command Stop call s:SendCommand('-exec-interrupt')
|
||||
if s:way == 'prompt'
|
||||
command Stop call s:PromptInterrupt()
|
||||
command Continue call s:SendCommand('continue')
|
||||
else
|
||||
command Stop call s:SendCommand('-exec-interrupt')
|
||||
" using -exec-continue results in CTRL-C in the gdb window not working,
|
||||
" communicating via commbuf (= use of SendCommand) has the same result
|
||||
"command Continue call s:SendCommand('-exec-continue')
|
||||
command Continue call term_sendkeys(s:gdbbuf, "continue\r")
|
||||
endif
|
||||
|
||||
@@ -930,20 +958,16 @@ func s:SetBreakpoint(at)
|
||||
let do_continue = 0
|
||||
if !s:stopped
|
||||
let do_continue = 1
|
||||
if !s:stopped
|
||||
let do_continue = 1
|
||||
if s:way == 'prompt'
|
||||
call s:PromptInterrupt()
|
||||
else
|
||||
Stop
|
||||
sleep 10m
|
||||
endif
|
||||
|
||||
" Use the fname:lnum format, older gdb can't handle --source.
|
||||
let at = empty(a:at) ?
|
||||
" Use the fname:lnum format, older gdb can't handle --source.
|
||||
\ fnameescape(expand('%:p')) . ':' . line('.') : a:at
|
||||
call s:SendCommand('-break-insert ' . at)
|
||||
if do_continue
|
||||
call s:SendCommand('-break-insert ' . at)
|
||||
Continue
|
||||
endif
|
||||
endfunc
|
||||
|
||||
@@ -954,6 +978,7 @@ func s:ClearBreakpoint()
|
||||
let bploc = printf('%s:%d', fname, lnum)
|
||||
if has_key(s:breakpoint_locations, bploc)
|
||||
let idx = 0
|
||||
let nr = 0
|
||||
for id in s:breakpoint_locations[bploc]
|
||||
if has_key(s:breakpoints, id)
|
||||
" Assume this always works, the reply is simply "^done".
|
||||
@@ -963,46 +988,101 @@ func s:ClearBreakpoint()
|
||||
endfor
|
||||
unlet s:breakpoints[id]
|
||||
unlet s:breakpoint_locations[bploc][idx]
|
||||
let nr = id
|
||||
break
|
||||
else
|
||||
let idx += 1
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
endfor
|
||||
if nr != 0
|
||||
if empty(s:breakpoint_locations[bploc])
|
||||
unlet s:breakpoint_locations[bploc]
|
||||
endif
|
||||
echomsg 'Breakpoint ' . id . ' cleared from line ' . lnum . '.'
|
||||
else
|
||||
echoerr 'Internal error trying to remove breakpoint at line ' . lnum . '!'
|
||||
endif
|
||||
else
|
||||
echomsg 'No breakpoint to remove at line ' . lnum . '.'
|
||||
endif
|
||||
endfunc
|
||||
|
||||
func s:Run(args)
|
||||
if a:args != ''
|
||||
func s:Run(args)
|
||||
call s:SendResumingCommand('-exec-arguments ' . a:args)
|
||||
endif
|
||||
call s:SendCommand('-exec-arguments ' . a:args)
|
||||
call s:SendResumingCommand('-exec-run')
|
||||
endfunc
|
||||
|
||||
func s:SendEval(expr)
|
||||
|
||||
func s:SendEval(expr)
|
||||
" check for "likely" boolean expressions, in which case we take it as lhs
|
||||
if a:expr =~ "[=!<>]="
|
||||
let exprLHS = a:expr
|
||||
else
|
||||
" remove text that is likely an assignment
|
||||
let exprLHS = substitute(a:expr, ' *=.*', '', '')
|
||||
endif
|
||||
|
||||
" encoding expression to prevent bad errors
|
||||
let expr = a:expr
|
||||
let expr = substitute(expr, '\\', '\\\\', 'g')
|
||||
let expr = substitute(expr, '"', '\\"', 'g')
|
||||
call s:SendCommand('-data-evaluate-expression "' . expr . '"')
|
||||
let s:evalexpr = exprLHS
|
||||
endfunc
|
||||
|
||||
endfunc
|
||||
" :Evaluate - evaluate what is specified / under the cursor
|
||||
func s:Evaluate(range, arg)
|
||||
let expr = s:GetEvaluationExpression(a:range, a:arg)
|
||||
let s:ignoreEvalError = 0
|
||||
call s:SendEval(expr)
|
||||
endfunc
|
||||
|
||||
" get what is specified / under the cursor
|
||||
func s:GetEvaluationExpression(range, arg)
|
||||
if a:arg != ''
|
||||
func s:Evaluate(range, arg)
|
||||
" user supplied evaluation
|
||||
let expr = s:CleanupExpr(a:arg)
|
||||
" DSW: replace "likely copy + paste" assignment
|
||||
let expr = substitute(expr, '"\([^"]*\)": *', '\1=', 'g')
|
||||
elseif a:range == 2
|
||||
" no evaluation but provided but range set
|
||||
let pos = getcurpos()
|
||||
let reg = getreg('v', 1, 1)
|
||||
let regt = getregtype('v')
|
||||
normal! gv"vy
|
||||
let regt = getregtype('v')
|
||||
let expr = s:CleanupExpr(@v)
|
||||
call setpos('.', pos)
|
||||
call setreg('v', reg, regt)
|
||||
else
|
||||
" no evaluation provided: get from C-expression under cursor
|
||||
" TODO: allow filetype specific lookup #9057
|
||||
let expr = expand('<cexpr>')
|
||||
endif
|
||||
let expr = expand('<cexpr>')
|
||||
endif
|
||||
return expr
|
||||
endfunc
|
||||
|
||||
" clean up expression that may got in because of range
|
||||
" (newlines and surrounding whitespace)
|
||||
" As it can also be specified via ex-command for assignments this function
|
||||
" may not change the "content" parts (like replacing contained spaces
|
||||
func s:CleanupExpr(expr)
|
||||
" replace all embedded newlines/tabs/...
|
||||
let expr = substitute(a:expr, '\_s', ' ', 'g')
|
||||
|
||||
if &filetype ==# 'cobol'
|
||||
" extra cleanup for COBOL:
|
||||
" - a semicolon nmay be used instead of a space
|
||||
" - a trailing comma or period is ignored as it commonly separates/ends
|
||||
" multiple expr
|
||||
let expr = substitute(expr, ';', ' ', 'g')
|
||||
let expr = substitute(expr, '[,.]\+ *$', '', '')
|
||||
endif
|
||||
|
||||
" get rid of leading and trailing spaces
|
||||
let expr = substitute(expr, '^ *', '', '')
|
||||
let expr = substitute(expr, ' *$', '', '')
|
||||
return expr
|
||||
endfunc
|
||||
|
||||
let s:ignoreEvalError = 0
|
||||
@@ -1010,8 +1090,19 @@ let s:evalFromBalloonExpr = 0
|
||||
|
||||
" Handle the result of data-evaluate-expression
|
||||
func s:HandleEvaluate(msg)
|
||||
" Handle the result of data-evaluate-expression
|
||||
func s:HandleEvaluate(msg)
|
||||
let value = a:msg
|
||||
\ ->substitute('.*value="\(.*\)"', '\1', '')
|
||||
\ ->substitute('\\"', '"', 'g')
|
||||
\ ->substitute('\\\\', '\\', 'g')
|
||||
"\ multi-byte characters arrive in octal form, replace everthing but NULL values
|
||||
\ ->substitute('\\000', s:NullRepl, 'g')
|
||||
\ ->substitute('\\\o\o\o', {-> eval('"' .. submatch(0) .. '"')}, 'g')
|
||||
"\ Note: GDB docs also mention hex encodings - the translations below work
|
||||
"\ but we keep them out for performance-reasons until we actually see
|
||||
"\ those in mi-returns
|
||||
"\ ->substitute('\\0x00', s:NullRep, 'g')
|
||||
"\ ->substitute('\\0x\(\x\x\)', {-> eval('"\x' .. submatch(1) .. '"')}, 'g')
|
||||
\ ->substitute(s:NullRepl, '\\000', 'g')
|
||||
if s:evalFromBalloonExpr
|
||||
if s:evalFromBalloonExprResult == ''
|
||||
let s:evalFromBalloonExprResult = s:evalexpr . ': ' . value
|
||||
@@ -1046,7 +1137,8 @@ func TermDebugBalloonExpr()
|
||||
let s:evalFromBalloonExpr = 1
|
||||
let s:evalFromBalloonExprResult = ''
|
||||
let s:ignoreEvalError = 1
|
||||
let s:evalFromBalloonExprResult = ''
|
||||
let expr = s:CleanupExpr(v:beval_text)
|
||||
call s:SendEval(expr)
|
||||
return ''
|
||||
endfunc
|
||||
|
||||
@@ -1058,7 +1150,8 @@ func s:HandleError(msg)
|
||||
let s:evalFromBalloonExpr = 0
|
||||
return
|
||||
endif
|
||||
return
|
||||
let msgVal = substitute(a:msg, '.*msg="\(.*\)"', '\1', '')
|
||||
echoerr substitute(msgVal, '\\"', '"', 'g')
|
||||
endfunc
|
||||
|
||||
func s:GotoSourcewinOrCreateIt()
|
||||
@@ -1083,6 +1176,7 @@ func s:GotoAsmwinOrCreateIt()
|
||||
setlocal number
|
||||
setlocal noswapfile
|
||||
setlocal buftype=nofile
|
||||
setlocal modifiable
|
||||
|
||||
let asmbuf = bufnr('Termdebug-asm-listing')
|
||||
if asmbuf > 0
|
||||
@@ -1093,7 +1187,7 @@ func s:GotoAsmwinOrCreateIt()
|
||||
|
||||
if exists('g:termdebug_disasm_window')
|
||||
if g:termdebug_disasm_window > 1
|
||||
if exists('g:termdebug_disasm_window')
|
||||
exe 'resize ' . g:termdebug_disasm_window
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -1102,7 +1196,7 @@ func s:GotoAsmwinOrCreateIt()
|
||||
let lnum = search('^' . s:asm_addr)
|
||||
if lnum == 0
|
||||
if s:stopped
|
||||
if lnum == 0
|
||||
call s:SendCommand('disassemble $pc')
|
||||
endif
|
||||
else
|
||||
exe 'sign unplace ' . s:asm_id
|
||||
@@ -1137,15 +1231,15 @@ func s:HandleCursor(msg)
|
||||
|
||||
let curwinid = win_getid(winnr())
|
||||
if win_gotoid(s:asmwin)
|
||||
let curwinid = win_getid(winnr())
|
||||
if win_gotoid(s:asmwin)
|
||||
let lnum = search('^' . s:asm_addr)
|
||||
if lnum == 0
|
||||
call s:SendCommand('disassemble $pc')
|
||||
else
|
||||
exe 'sign unplace ' . s:asm_id
|
||||
let lnum = search('^' . s:asm_addr)
|
||||
if lnum == 0
|
||||
call s:SendCommand('disassemble $pc')
|
||||
else
|
||||
exe 'sign unplace ' . s:asm_id
|
||||
exe 'sign place ' . s:asm_id . ' line=' . lnum . ' name=debugPC'
|
||||
endif
|
||||
|
||||
endif
|
||||
call win_gotoid(curwinid)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -1165,6 +1259,7 @@ func s:HandleCursor(msg)
|
||||
endif
|
||||
endif
|
||||
exe lnum
|
||||
normal! zv
|
||||
exe 'sign unplace ' . s:pc_id
|
||||
exe 'sign place ' . s:pc_id . ' line=' . lnum . ' name=debugPC priority=110 file=' . fname
|
||||
if !exists('b:save_signcolumn')
|
||||
@@ -1182,11 +1277,16 @@ endfunc
|
||||
|
||||
let s:BreakpointSigns = []
|
||||
|
||||
let s:BreakpointSigns = []
|
||||
func s:CreateBreakpoint(id, subid, enabled)
|
||||
let nr = printf('%d.%d', a:id, a:subid)
|
||||
if index(s:BreakpointSigns, nr) == -1
|
||||
call add(s:BreakpointSigns, nr)
|
||||
if index(s:BreakpointSigns, nr) == -1
|
||||
if a:enabled == "n"
|
||||
let hiName = "debugBreakpointDisabled"
|
||||
else
|
||||
let hiName = "debugBreakpoint"
|
||||
endif
|
||||
exe "sign define debugBreakpoint" . nr . " text=" . substitute(nr, '\..*', '', '') . " texthl=" . hiName
|
||||
endif
|
||||
endfunc
|
||||
|
||||
@@ -1196,9 +1296,14 @@ endfunction
|
||||
|
||||
" Handle setting a breakpoint
|
||||
" Will update the sign that shows the breakpoint
|
||||
" Handle setting a breakpoint
|
||||
func s:HandleNewBreakpoint(msg, modifiedFlag)
|
||||
if a:msg !~ 'fullname='
|
||||
func s:HandleNewBreakpoint(msg)
|
||||
" a watch or a pending breakpoint does not have a file name
|
||||
if a:msg =~ 'pending='
|
||||
let nr = substitute(a:msg, '.*number=\"\([0-9.]*\)\".*', '\1', '')
|
||||
let target = substitute(a:msg, '.*pending=\"\([^"]*\)\".*', '\1', '')
|
||||
echomsg 'Breakpoint ' . nr . ' (' . target . ') pending.'
|
||||
endif
|
||||
return
|
||||
endif
|
||||
for msg in s:SplitMsg(a:msg)
|
||||
@@ -1214,7 +1319,8 @@ func s:HandleNewBreakpoint(msg)
|
||||
" If "nr" is 123 it becomes "123.0" and subid is "0".
|
||||
" If "nr" is 123.4 it becomes "123.4.0" and subid is "4"; "0" is discarded.
|
||||
let [id, subid; _] = map(split(nr . '.0', '\.'), 'v:val + 0')
|
||||
" If "nr" is 123.4 it becomes "123.4.0" and subid is "4"; "0" is discarded.
|
||||
let enabled = substitute(msg, '.*enabled="\([yn]\)".*', '\1', '')
|
||||
call s:CreateBreakpoint(id, subid, enabled)
|
||||
|
||||
if has_key(s:breakpoints, id)
|
||||
let entries = s:breakpoints[id]
|
||||
@@ -1241,7 +1347,18 @@ func s:HandleNewBreakpoint(msg)
|
||||
|
||||
if bufloaded(fname)
|
||||
call s:PlaceSign(id, subid, entry)
|
||||
let posMsg = ' at line ' . lnum . '.'
|
||||
else
|
||||
let posMsg = ' in ' . fname . ' at line ' . lnum . '.'
|
||||
endif
|
||||
if !a:modifiedFlag
|
||||
let actionTaken = 'created'
|
||||
elseif enabled == 'n'
|
||||
let actionTaken = 'disabled'
|
||||
else
|
||||
let actionTaken = 'enabled'
|
||||
endif
|
||||
echomsg 'Breakpoint ' . nr . ' ' . actionTaken . posMsg
|
||||
endfor
|
||||
endfunc
|
||||
|
||||
@@ -1266,6 +1383,7 @@ func s:HandleBreakpointDelete(msg)
|
||||
endif
|
||||
endfor
|
||||
unlet s:breakpoints[id]
|
||||
echomsg 'Breakpoint ' . id . ' cleared.'
|
||||
endif
|
||||
endfunc
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_zipPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zipPlugin = "v31"
|
||||
let g:loaded_zipPlugin = "v32"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
782
runtime/rgb.txt
782
runtime/rgb.txt
@@ -1,782 +0,0 @@
|
||||
255 250 250 snow
|
||||
248 248 255 ghost white
|
||||
248 248 255 GhostWhite
|
||||
245 245 245 white smoke
|
||||
245 245 245 WhiteSmoke
|
||||
220 220 220 gainsboro
|
||||
255 250 240 floral white
|
||||
255 250 240 FloralWhite
|
||||
253 245 230 old lace
|
||||
253 245 230 OldLace
|
||||
250 240 230 linen
|
||||
250 235 215 antique white
|
||||
250 235 215 AntiqueWhite
|
||||
255 239 213 papaya whip
|
||||
255 239 213 PapayaWhip
|
||||
255 235 205 blanched almond
|
||||
255 235 205 BlanchedAlmond
|
||||
255 228 196 bisque
|
||||
255 218 185 peach puff
|
||||
255 218 185 PeachPuff
|
||||
255 222 173 navajo white
|
||||
255 222 173 NavajoWhite
|
||||
255 228 181 moccasin
|
||||
255 248 220 cornsilk
|
||||
255 255 240 ivory
|
||||
255 250 205 lemon chiffon
|
||||
255 250 205 LemonChiffon
|
||||
255 245 238 seashell
|
||||
240 255 240 honeydew
|
||||
245 255 250 mint cream
|
||||
245 255 250 MintCream
|
||||
240 255 255 azure
|
||||
240 248 255 alice blue
|
||||
240 248 255 AliceBlue
|
||||
230 230 250 lavender
|
||||
255 240 245 lavender blush
|
||||
255 240 245 LavenderBlush
|
||||
255 228 225 misty rose
|
||||
255 228 225 MistyRose
|
||||
255 255 255 white
|
||||
0 0 0 black
|
||||
47 79 79 dark slate gray
|
||||
47 79 79 DarkSlateGray
|
||||
47 79 79 dark slate grey
|
||||
47 79 79 DarkSlateGrey
|
||||
105 105 105 dim gray
|
||||
105 105 105 DimGray
|
||||
105 105 105 dim grey
|
||||
105 105 105 DimGrey
|
||||
112 128 144 slate gray
|
||||
112 128 144 SlateGray
|
||||
112 128 144 slate grey
|
||||
112 128 144 SlateGrey
|
||||
119 136 153 light slate gray
|
||||
119 136 153 LightSlateGray
|
||||
119 136 153 light slate grey
|
||||
119 136 153 LightSlateGrey
|
||||
190 190 190 gray
|
||||
190 190 190 grey
|
||||
190 190 190 x11 gray
|
||||
190 190 190 X11Gray
|
||||
190 190 190 x11 grey
|
||||
190 190 190 X11Grey
|
||||
128 128 128 web gray
|
||||
128 128 128 WebGray
|
||||
128 128 128 web grey
|
||||
128 128 128 WebGrey
|
||||
211 211 211 light grey
|
||||
211 211 211 LightGrey
|
||||
211 211 211 light gray
|
||||
211 211 211 LightGray
|
||||
25 25 112 midnight blue
|
||||
25 25 112 MidnightBlue
|
||||
0 0 128 navy
|
||||
0 0 128 navy blue
|
||||
0 0 128 NavyBlue
|
||||
100 149 237 cornflower blue
|
||||
100 149 237 CornflowerBlue
|
||||
72 61 139 dark slate blue
|
||||
72 61 139 DarkSlateBlue
|
||||
106 90 205 slate blue
|
||||
106 90 205 SlateBlue
|
||||
123 104 238 medium slate blue
|
||||
123 104 238 MediumSlateBlue
|
||||
132 112 255 light slate blue
|
||||
132 112 255 LightSlateBlue
|
||||
0 0 205 medium blue
|
||||
0 0 205 MediumBlue
|
||||
65 105 225 royal blue
|
||||
65 105 225 RoyalBlue
|
||||
0 0 255 blue
|
||||
30 144 255 dodger blue
|
||||
30 144 255 DodgerBlue
|
||||
0 191 255 deep sky blue
|
||||
0 191 255 DeepSkyBlue
|
||||
135 206 235 sky blue
|
||||
135 206 235 SkyBlue
|
||||
135 206 250 light sky blue
|
||||
135 206 250 LightSkyBlue
|
||||
70 130 180 steel blue
|
||||
70 130 180 SteelBlue
|
||||
176 196 222 light steel blue
|
||||
176 196 222 LightSteelBlue
|
||||
173 216 230 light blue
|
||||
173 216 230 LightBlue
|
||||
176 224 230 powder blue
|
||||
176 224 230 PowderBlue
|
||||
175 238 238 pale turquoise
|
||||
175 238 238 PaleTurquoise
|
||||
0 206 209 dark turquoise
|
||||
0 206 209 DarkTurquoise
|
||||
72 209 204 medium turquoise
|
||||
72 209 204 MediumTurquoise
|
||||
64 224 208 turquoise
|
||||
0 255 255 cyan
|
||||
0 255 255 aqua
|
||||
224 255 255 light cyan
|
||||
224 255 255 LightCyan
|
||||
95 158 160 cadet blue
|
||||
95 158 160 CadetBlue
|
||||
102 205 170 medium aquamarine
|
||||
102 205 170 MediumAquamarine
|
||||
127 255 212 aquamarine
|
||||
0 100 0 dark green
|
||||
0 100 0 DarkGreen
|
||||
85 107 47 dark olive green
|
||||
85 107 47 DarkOliveGreen
|
||||
143 188 143 dark sea green
|
||||
143 188 143 DarkSeaGreen
|
||||
46 139 87 sea green
|
||||
46 139 87 SeaGreen
|
||||
60 179 113 medium sea green
|
||||
60 179 113 MediumSeaGreen
|
||||
32 178 170 light sea green
|
||||
32 178 170 LightSeaGreen
|
||||
152 251 152 pale green
|
||||
152 251 152 PaleGreen
|
||||
0 255 127 spring green
|
||||
0 255 127 SpringGreen
|
||||
124 252 0 lawn green
|
||||
124 252 0 LawnGreen
|
||||
0 255 0 green
|
||||
0 255 0 lime
|
||||
0 255 0 x11 green
|
||||
0 255 0 X11Green
|
||||
0 128 0 web green
|
||||
0 128 0 WebGreen
|
||||
127 255 0 chartreuse
|
||||
0 250 154 medium spring green
|
||||
0 250 154 MediumSpringGreen
|
||||
173 255 47 green yellow
|
||||
173 255 47 GreenYellow
|
||||
50 205 50 lime green
|
||||
50 205 50 LimeGreen
|
||||
154 205 50 yellow green
|
||||
154 205 50 YellowGreen
|
||||
34 139 34 forest green
|
||||
34 139 34 ForestGreen
|
||||
107 142 35 olive drab
|
||||
107 142 35 OliveDrab
|
||||
189 183 107 dark khaki
|
||||
189 183 107 DarkKhaki
|
||||
240 230 140 khaki
|
||||
238 232 170 pale goldenrod
|
||||
238 232 170 PaleGoldenrod
|
||||
250 250 210 light goldenrod yellow
|
||||
250 250 210 LightGoldenrodYellow
|
||||
255 255 224 light yellow
|
||||
255 255 224 LightYellow
|
||||
255 255 0 yellow
|
||||
255 215 0 gold
|
||||
238 221 130 light goldenrod
|
||||
238 221 130 LightGoldenrod
|
||||
218 165 32 goldenrod
|
||||
184 134 11 dark goldenrod
|
||||
184 134 11 DarkGoldenrod
|
||||
188 143 143 rosy brown
|
||||
188 143 143 RosyBrown
|
||||
205 92 92 indian red
|
||||
205 92 92 IndianRed
|
||||
139 69 19 saddle brown
|
||||
139 69 19 SaddleBrown
|
||||
160 82 45 sienna
|
||||
205 133 63 peru
|
||||
222 184 135 burlywood
|
||||
245 245 220 beige
|
||||
245 222 179 wheat
|
||||
244 164 96 sandy brown
|
||||
244 164 96 SandyBrown
|
||||
210 180 140 tan
|
||||
210 105 30 chocolate
|
||||
178 34 34 firebrick
|
||||
165 42 42 brown
|
||||
233 150 122 dark salmon
|
||||
233 150 122 DarkSalmon
|
||||
250 128 114 salmon
|
||||
255 160 122 light salmon
|
||||
255 160 122 LightSalmon
|
||||
255 165 0 orange
|
||||
255 140 0 dark orange
|
||||
255 140 0 DarkOrange
|
||||
255 127 80 coral
|
||||
240 128 128 light coral
|
||||
240 128 128 LightCoral
|
||||
255 99 71 tomato
|
||||
255 69 0 orange red
|
||||
255 69 0 OrangeRed
|
||||
255 0 0 red
|
||||
255 105 180 hot pink
|
||||
255 105 180 HotPink
|
||||
255 20 147 deep pink
|
||||
255 20 147 DeepPink
|
||||
255 192 203 pink
|
||||
255 182 193 light pink
|
||||
255 182 193 LightPink
|
||||
219 112 147 pale violet red
|
||||
219 112 147 PaleVioletRed
|
||||
176 48 96 maroon
|
||||
176 48 96 x11 maroon
|
||||
176 48 96 X11Maroon
|
||||
128 0 0 web maroon
|
||||
128 0 0 WebMaroon
|
||||
199 21 133 medium violet red
|
||||
199 21 133 MediumVioletRed
|
||||
208 32 144 violet red
|
||||
208 32 144 VioletRed
|
||||
255 0 255 magenta
|
||||
255 0 255 fuchsia
|
||||
238 130 238 violet
|
||||
221 160 221 plum
|
||||
218 112 214 orchid
|
||||
186 85 211 medium orchid
|
||||
186 85 211 MediumOrchid
|
||||
153 50 204 dark orchid
|
||||
153 50 204 DarkOrchid
|
||||
148 0 211 dark violet
|
||||
148 0 211 DarkViolet
|
||||
138 43 226 blue violet
|
||||
138 43 226 BlueViolet
|
||||
160 32 240 purple
|
||||
160 32 240 x11 purple
|
||||
160 32 240 X11Purple
|
||||
128 0 128 web purple
|
||||
128 0 128 WebPurple
|
||||
147 112 219 medium purple
|
||||
147 112 219 MediumPurple
|
||||
216 191 216 thistle
|
||||
255 250 250 snow1
|
||||
238 233 233 snow2
|
||||
205 201 201 snow3
|
||||
139 137 137 snow4
|
||||
255 245 238 seashell1
|
||||
238 229 222 seashell2
|
||||
205 197 191 seashell3
|
||||
139 134 130 seashell4
|
||||
255 239 219 AntiqueWhite1
|
||||
238 223 204 AntiqueWhite2
|
||||
205 192 176 AntiqueWhite3
|
||||
139 131 120 AntiqueWhite4
|
||||
255 228 196 bisque1
|
||||
238 213 183 bisque2
|
||||
205 183 158 bisque3
|
||||
139 125 107 bisque4
|
||||
255 218 185 PeachPuff1
|
||||
238 203 173 PeachPuff2
|
||||
205 175 149 PeachPuff3
|
||||
139 119 101 PeachPuff4
|
||||
255 222 173 NavajoWhite1
|
||||
238 207 161 NavajoWhite2
|
||||
205 179 139 NavajoWhite3
|
||||
139 121 94 NavajoWhite4
|
||||
255 250 205 LemonChiffon1
|
||||
238 233 191 LemonChiffon2
|
||||
205 201 165 LemonChiffon3
|
||||
139 137 112 LemonChiffon4
|
||||
255 248 220 cornsilk1
|
||||
238 232 205 cornsilk2
|
||||
205 200 177 cornsilk3
|
||||
139 136 120 cornsilk4
|
||||
255 255 240 ivory1
|
||||
238 238 224 ivory2
|
||||
205 205 193 ivory3
|
||||
139 139 131 ivory4
|
||||
240 255 240 honeydew1
|
||||
224 238 224 honeydew2
|
||||
193 205 193 honeydew3
|
||||
131 139 131 honeydew4
|
||||
255 240 245 LavenderBlush1
|
||||
238 224 229 LavenderBlush2
|
||||
205 193 197 LavenderBlush3
|
||||
139 131 134 LavenderBlush4
|
||||
255 228 225 MistyRose1
|
||||
238 213 210 MistyRose2
|
||||
205 183 181 MistyRose3
|
||||
139 125 123 MistyRose4
|
||||
240 255 255 azure1
|
||||
224 238 238 azure2
|
||||
193 205 205 azure3
|
||||
131 139 139 azure4
|
||||
131 111 255 SlateBlue1
|
||||
122 103 238 SlateBlue2
|
||||
105 89 205 SlateBlue3
|
||||
71 60 139 SlateBlue4
|
||||
72 118 255 RoyalBlue1
|
||||
67 110 238 RoyalBlue2
|
||||
58 95 205 RoyalBlue3
|
||||
39 64 139 RoyalBlue4
|
||||
0 0 255 blue1
|
||||
0 0 238 blue2
|
||||
0 0 205 blue3
|
||||
0 0 139 blue4
|
||||
30 144 255 DodgerBlue1
|
||||
28 134 238 DodgerBlue2
|
||||
24 116 205 DodgerBlue3
|
||||
16 78 139 DodgerBlue4
|
||||
99 184 255 SteelBlue1
|
||||
92 172 238 SteelBlue2
|
||||
79 148 205 SteelBlue3
|
||||
54 100 139 SteelBlue4
|
||||
0 191 255 DeepSkyBlue1
|
||||
0 178 238 DeepSkyBlue2
|
||||
0 154 205 DeepSkyBlue3
|
||||
0 104 139 DeepSkyBlue4
|
||||
135 206 255 SkyBlue1
|
||||
126 192 238 SkyBlue2
|
||||
108 166 205 SkyBlue3
|
||||
74 112 139 SkyBlue4
|
||||
176 226 255 LightSkyBlue1
|
||||
164 211 238 LightSkyBlue2
|
||||
141 182 205 LightSkyBlue3
|
||||
96 123 139 LightSkyBlue4
|
||||
198 226 255 SlateGray1
|
||||
185 211 238 SlateGray2
|
||||
159 182 205 SlateGray3
|
||||
108 123 139 SlateGray4
|
||||
202 225 255 LightSteelBlue1
|
||||
188 210 238 LightSteelBlue2
|
||||
162 181 205 LightSteelBlue3
|
||||
110 123 139 LightSteelBlue4
|
||||
191 239 255 LightBlue1
|
||||
178 223 238 LightBlue2
|
||||
154 192 205 LightBlue3
|
||||
104 131 139 LightBlue4
|
||||
224 255 255 LightCyan1
|
||||
209 238 238 LightCyan2
|
||||
180 205 205 LightCyan3
|
||||
122 139 139 LightCyan4
|
||||
187 255 255 PaleTurquoise1
|
||||
174 238 238 PaleTurquoise2
|
||||
150 205 205 PaleTurquoise3
|
||||
102 139 139 PaleTurquoise4
|
||||
152 245 255 CadetBlue1
|
||||
142 229 238 CadetBlue2
|
||||
122 197 205 CadetBlue3
|
||||
83 134 139 CadetBlue4
|
||||
0 245 255 turquoise1
|
||||
0 229 238 turquoise2
|
||||
0 197 205 turquoise3
|
||||
0 134 139 turquoise4
|
||||
0 255 255 cyan1
|
||||
0 238 238 cyan2
|
||||
0 205 205 cyan3
|
||||
0 139 139 cyan4
|
||||
151 255 255 DarkSlateGray1
|
||||
141 238 238 DarkSlateGray2
|
||||
121 205 205 DarkSlateGray3
|
||||
82 139 139 DarkSlateGray4
|
||||
127 255 212 aquamarine1
|
||||
118 238 198 aquamarine2
|
||||
102 205 170 aquamarine3
|
||||
69 139 116 aquamarine4
|
||||
193 255 193 DarkSeaGreen1
|
||||
180 238 180 DarkSeaGreen2
|
||||
155 205 155 DarkSeaGreen3
|
||||
105 139 105 DarkSeaGreen4
|
||||
84 255 159 SeaGreen1
|
||||
78 238 148 SeaGreen2
|
||||
67 205 128 SeaGreen3
|
||||
46 139 87 SeaGreen4
|
||||
154 255 154 PaleGreen1
|
||||
144 238 144 PaleGreen2
|
||||
124 205 124 PaleGreen3
|
||||
84 139 84 PaleGreen4
|
||||
0 255 127 SpringGreen1
|
||||
0 238 118 SpringGreen2
|
||||
0 205 102 SpringGreen3
|
||||
0 139 69 SpringGreen4
|
||||
0 255 0 green1
|
||||
0 238 0 green2
|
||||
0 205 0 green3
|
||||
0 139 0 green4
|
||||
127 255 0 chartreuse1
|
||||
118 238 0 chartreuse2
|
||||
102 205 0 chartreuse3
|
||||
69 139 0 chartreuse4
|
||||
192 255 62 OliveDrab1
|
||||
179 238 58 OliveDrab2
|
||||
154 205 50 OliveDrab3
|
||||
105 139 34 OliveDrab4
|
||||
202 255 112 DarkOliveGreen1
|
||||
188 238 104 DarkOliveGreen2
|
||||
162 205 90 DarkOliveGreen3
|
||||
110 139 61 DarkOliveGreen4
|
||||
255 246 143 khaki1
|
||||
238 230 133 khaki2
|
||||
205 198 115 khaki3
|
||||
139 134 78 khaki4
|
||||
255 236 139 LightGoldenrod1
|
||||
238 220 130 LightGoldenrod2
|
||||
205 190 112 LightGoldenrod3
|
||||
139 129 76 LightGoldenrod4
|
||||
255 255 224 LightYellow1
|
||||
238 238 209 LightYellow2
|
||||
205 205 180 LightYellow3
|
||||
139 139 122 LightYellow4
|
||||
255 255 0 yellow1
|
||||
238 238 0 yellow2
|
||||
205 205 0 yellow3
|
||||
139 139 0 yellow4
|
||||
255 215 0 gold1
|
||||
238 201 0 gold2
|
||||
205 173 0 gold3
|
||||
139 117 0 gold4
|
||||
255 193 37 goldenrod1
|
||||
238 180 34 goldenrod2
|
||||
205 155 29 goldenrod3
|
||||
139 105 20 goldenrod4
|
||||
255 185 15 DarkGoldenrod1
|
||||
238 173 14 DarkGoldenrod2
|
||||
205 149 12 DarkGoldenrod3
|
||||
139 101 8 DarkGoldenrod4
|
||||
255 193 193 RosyBrown1
|
||||
238 180 180 RosyBrown2
|
||||
205 155 155 RosyBrown3
|
||||
139 105 105 RosyBrown4
|
||||
255 106 106 IndianRed1
|
||||
238 99 99 IndianRed2
|
||||
205 85 85 IndianRed3
|
||||
139 58 58 IndianRed4
|
||||
255 130 71 sienna1
|
||||
238 121 66 sienna2
|
||||
205 104 57 sienna3
|
||||
139 71 38 sienna4
|
||||
255 211 155 burlywood1
|
||||
238 197 145 burlywood2
|
||||
205 170 125 burlywood3
|
||||
139 115 85 burlywood4
|
||||
255 231 186 wheat1
|
||||
238 216 174 wheat2
|
||||
205 186 150 wheat3
|
||||
139 126 102 wheat4
|
||||
255 165 79 tan1
|
||||
238 154 73 tan2
|
||||
205 133 63 tan3
|
||||
139 90 43 tan4
|
||||
255 127 36 chocolate1
|
||||
238 118 33 chocolate2
|
||||
205 102 29 chocolate3
|
||||
139 69 19 chocolate4
|
||||
255 48 48 firebrick1
|
||||
238 44 44 firebrick2
|
||||
205 38 38 firebrick3
|
||||
139 26 26 firebrick4
|
||||
255 64 64 brown1
|
||||
238 59 59 brown2
|
||||
205 51 51 brown3
|
||||
139 35 35 brown4
|
||||
255 140 105 salmon1
|
||||
238 130 98 salmon2
|
||||
205 112 84 salmon3
|
||||
139 76 57 salmon4
|
||||
255 160 122 LightSalmon1
|
||||
238 149 114 LightSalmon2
|
||||
205 129 98 LightSalmon3
|
||||
139 87 66 LightSalmon4
|
||||
255 165 0 orange1
|
||||
238 154 0 orange2
|
||||
205 133 0 orange3
|
||||
139 90 0 orange4
|
||||
255 127 0 DarkOrange1
|
||||
238 118 0 DarkOrange2
|
||||
205 102 0 DarkOrange3
|
||||
139 69 0 DarkOrange4
|
||||
255 114 86 coral1
|
||||
238 106 80 coral2
|
||||
205 91 69 coral3
|
||||
139 62 47 coral4
|
||||
255 99 71 tomato1
|
||||
238 92 66 tomato2
|
||||
205 79 57 tomato3
|
||||
139 54 38 tomato4
|
||||
255 69 0 OrangeRed1
|
||||
238 64 0 OrangeRed2
|
||||
205 55 0 OrangeRed3
|
||||
139 37 0 OrangeRed4
|
||||
255 0 0 red1
|
||||
238 0 0 red2
|
||||
205 0 0 red3
|
||||
139 0 0 red4
|
||||
255 20 147 DeepPink1
|
||||
238 18 137 DeepPink2
|
||||
205 16 118 DeepPink3
|
||||
139 10 80 DeepPink4
|
||||
255 110 180 HotPink1
|
||||
238 106 167 HotPink2
|
||||
205 96 144 HotPink3
|
||||
139 58 98 HotPink4
|
||||
255 181 197 pink1
|
||||
238 169 184 pink2
|
||||
205 145 158 pink3
|
||||
139 99 108 pink4
|
||||
255 174 185 LightPink1
|
||||
238 162 173 LightPink2
|
||||
205 140 149 LightPink3
|
||||
139 95 101 LightPink4
|
||||
255 130 171 PaleVioletRed1
|
||||
238 121 159 PaleVioletRed2
|
||||
205 104 137 PaleVioletRed3
|
||||
139 71 93 PaleVioletRed4
|
||||
255 52 179 maroon1
|
||||
238 48 167 maroon2
|
||||
205 41 144 maroon3
|
||||
139 28 98 maroon4
|
||||
255 62 150 VioletRed1
|
||||
238 58 140 VioletRed2
|
||||
205 50 120 VioletRed3
|
||||
139 34 82 VioletRed4
|
||||
255 0 255 magenta1
|
||||
238 0 238 magenta2
|
||||
205 0 205 magenta3
|
||||
139 0 139 magenta4
|
||||
255 131 250 orchid1
|
||||
238 122 233 orchid2
|
||||
205 105 201 orchid3
|
||||
139 71 137 orchid4
|
||||
255 187 255 plum1
|
||||
238 174 238 plum2
|
||||
205 150 205 plum3
|
||||
139 102 139 plum4
|
||||
224 102 255 MediumOrchid1
|
||||
209 95 238 MediumOrchid2
|
||||
180 82 205 MediumOrchid3
|
||||
122 55 139 MediumOrchid4
|
||||
191 62 255 DarkOrchid1
|
||||
178 58 238 DarkOrchid2
|
||||
154 50 205 DarkOrchid3
|
||||
104 34 139 DarkOrchid4
|
||||
155 48 255 purple1
|
||||
145 44 238 purple2
|
||||
125 38 205 purple3
|
||||
85 26 139 purple4
|
||||
171 130 255 MediumPurple1
|
||||
159 121 238 MediumPurple2
|
||||
137 104 205 MediumPurple3
|
||||
93 71 139 MediumPurple4
|
||||
255 225 255 thistle1
|
||||
238 210 238 thistle2
|
||||
205 181 205 thistle3
|
||||
139 123 139 thistle4
|
||||
0 0 0 gray0
|
||||
0 0 0 grey0
|
||||
3 3 3 gray1
|
||||
3 3 3 grey1
|
||||
5 5 5 gray2
|
||||
5 5 5 grey2
|
||||
8 8 8 gray3
|
||||
8 8 8 grey3
|
||||
10 10 10 gray4
|
||||
10 10 10 grey4
|
||||
13 13 13 gray5
|
||||
13 13 13 grey5
|
||||
15 15 15 gray6
|
||||
15 15 15 grey6
|
||||
18 18 18 gray7
|
||||
18 18 18 grey7
|
||||
20 20 20 gray8
|
||||
20 20 20 grey8
|
||||
23 23 23 gray9
|
||||
23 23 23 grey9
|
||||
26 26 26 gray10
|
||||
26 26 26 grey10
|
||||
28 28 28 gray11
|
||||
28 28 28 grey11
|
||||
31 31 31 gray12
|
||||
31 31 31 grey12
|
||||
33 33 33 gray13
|
||||
33 33 33 grey13
|
||||
36 36 36 gray14
|
||||
36 36 36 grey14
|
||||
38 38 38 gray15
|
||||
38 38 38 grey15
|
||||
41 41 41 gray16
|
||||
41 41 41 grey16
|
||||
43 43 43 gray17
|
||||
43 43 43 grey17
|
||||
46 46 46 gray18
|
||||
46 46 46 grey18
|
||||
48 48 48 gray19
|
||||
48 48 48 grey19
|
||||
51 51 51 gray20
|
||||
51 51 51 grey20
|
||||
54 54 54 gray21
|
||||
54 54 54 grey21
|
||||
56 56 56 gray22
|
||||
56 56 56 grey22
|
||||
59 59 59 gray23
|
||||
59 59 59 grey23
|
||||
61 61 61 gray24
|
||||
61 61 61 grey24
|
||||
64 64 64 gray25
|
||||
64 64 64 grey25
|
||||
66 66 66 gray26
|
||||
66 66 66 grey26
|
||||
69 69 69 gray27
|
||||
69 69 69 grey27
|
||||
71 71 71 gray28
|
||||
71 71 71 grey28
|
||||
74 74 74 gray29
|
||||
74 74 74 grey29
|
||||
77 77 77 gray30
|
||||
77 77 77 grey30
|
||||
79 79 79 gray31
|
||||
79 79 79 grey31
|
||||
82 82 82 gray32
|
||||
82 82 82 grey32
|
||||
84 84 84 gray33
|
||||
84 84 84 grey33
|
||||
87 87 87 gray34
|
||||
87 87 87 grey34
|
||||
89 89 89 gray35
|
||||
89 89 89 grey35
|
||||
92 92 92 gray36
|
||||
92 92 92 grey36
|
||||
94 94 94 gray37
|
||||
94 94 94 grey37
|
||||
97 97 97 gray38
|
||||
97 97 97 grey38
|
||||
99 99 99 gray39
|
||||
99 99 99 grey39
|
||||
102 102 102 gray40
|
||||
102 102 102 grey40
|
||||
105 105 105 gray41
|
||||
105 105 105 grey41
|
||||
107 107 107 gray42
|
||||
107 107 107 grey42
|
||||
110 110 110 gray43
|
||||
110 110 110 grey43
|
||||
112 112 112 gray44
|
||||
112 112 112 grey44
|
||||
115 115 115 gray45
|
||||
115 115 115 grey45
|
||||
117 117 117 gray46
|
||||
117 117 117 grey46
|
||||
120 120 120 gray47
|
||||
120 120 120 grey47
|
||||
122 122 122 gray48
|
||||
122 122 122 grey48
|
||||
125 125 125 gray49
|
||||
125 125 125 grey49
|
||||
127 127 127 gray50
|
||||
127 127 127 grey50
|
||||
130 130 130 gray51
|
||||
130 130 130 grey51
|
||||
133 133 133 gray52
|
||||
133 133 133 grey52
|
||||
135 135 135 gray53
|
||||
135 135 135 grey53
|
||||
138 138 138 gray54
|
||||
138 138 138 grey54
|
||||
140 140 140 gray55
|
||||
140 140 140 grey55
|
||||
143 143 143 gray56
|
||||
143 143 143 grey56
|
||||
145 145 145 gray57
|
||||
145 145 145 grey57
|
||||
148 148 148 gray58
|
||||
148 148 148 grey58
|
||||
150 150 150 gray59
|
||||
150 150 150 grey59
|
||||
153 153 153 gray60
|
||||
153 153 153 grey60
|
||||
156 156 156 gray61
|
||||
156 156 156 grey61
|
||||
158 158 158 gray62
|
||||
158 158 158 grey62
|
||||
161 161 161 gray63
|
||||
161 161 161 grey63
|
||||
163 163 163 gray64
|
||||
163 163 163 grey64
|
||||
166 166 166 gray65
|
||||
166 166 166 grey65
|
||||
168 168 168 gray66
|
||||
168 168 168 grey66
|
||||
171 171 171 gray67
|
||||
171 171 171 grey67
|
||||
173 173 173 gray68
|
||||
173 173 173 grey68
|
||||
176 176 176 gray69
|
||||
176 176 176 grey69
|
||||
179 179 179 gray70
|
||||
179 179 179 grey70
|
||||
181 181 181 gray71
|
||||
181 181 181 grey71
|
||||
184 184 184 gray72
|
||||
184 184 184 grey72
|
||||
186 186 186 gray73
|
||||
186 186 186 grey73
|
||||
189 189 189 gray74
|
||||
189 189 189 grey74
|
||||
191 191 191 gray75
|
||||
191 191 191 grey75
|
||||
194 194 194 gray76
|
||||
194 194 194 grey76
|
||||
196 196 196 gray77
|
||||
196 196 196 grey77
|
||||
199 199 199 gray78
|
||||
199 199 199 grey78
|
||||
201 201 201 gray79
|
||||
201 201 201 grey79
|
||||
204 204 204 gray80
|
||||
204 204 204 grey80
|
||||
207 207 207 gray81
|
||||
207 207 207 grey81
|
||||
209 209 209 gray82
|
||||
209 209 209 grey82
|
||||
212 212 212 gray83
|
||||
212 212 212 grey83
|
||||
214 214 214 gray84
|
||||
214 214 214 grey84
|
||||
217 217 217 gray85
|
||||
217 217 217 grey85
|
||||
219 219 219 gray86
|
||||
219 219 219 grey86
|
||||
222 222 222 gray87
|
||||
222 222 222 grey87
|
||||
224 224 224 gray88
|
||||
224 224 224 grey88
|
||||
227 227 227 gray89
|
||||
227 227 227 grey89
|
||||
229 229 229 gray90
|
||||
229 229 229 grey90
|
||||
232 232 232 gray91
|
||||
232 232 232 grey91
|
||||
235 235 235 gray92
|
||||
235 235 235 grey92
|
||||
237 237 237 gray93
|
||||
237 237 237 grey93
|
||||
240 240 240 gray94
|
||||
240 240 240 grey94
|
||||
242 242 242 gray95
|
||||
242 242 242 grey95
|
||||
245 245 245 gray96
|
||||
245 245 245 grey96
|
||||
247 247 247 gray97
|
||||
247 247 247 grey97
|
||||
250 250 250 gray98
|
||||
250 250 250 grey98
|
||||
252 252 252 gray99
|
||||
252 252 252 grey99
|
||||
255 255 255 gray100
|
||||
255 255 255 grey100
|
||||
169 169 169 dark grey
|
||||
169 169 169 DarkGrey
|
||||
169 169 169 dark gray
|
||||
169 169 169 DarkGray
|
||||
0 0 139 dark blue
|
||||
0 0 139 DarkBlue
|
||||
0 139 139 dark cyan
|
||||
0 139 139 DarkCyan
|
||||
139 0 139 dark magenta
|
||||
139 0 139 DarkMagenta
|
||||
139 0 0 dark red
|
||||
139 0 0 DarkRed
|
||||
144 238 144 light green
|
||||
144 238 144 LightGreen
|
||||
220 20 60 crimson
|
||||
75 0 130 indigo
|
||||
128 128 0 olive
|
||||
102 51 153 rebecca purple
|
||||
102 51 153 RebeccaPurple
|
||||
192 192 192 silver
|
||||
0 128 128 teal
|
||||
@@ -190,6 +190,18 @@ if s:line1 =~# "^#!"
|
||||
elseif s:name =~# 'fennel\>'
|
||||
set ft=fennel
|
||||
|
||||
" MikroTik RouterOS script
|
||||
elseif s:name =~# 'rsc\>'
|
||||
set ft=routeros
|
||||
|
||||
" Fish shell
|
||||
elseif s:name =~# 'fish\>'
|
||||
set ft=fish
|
||||
|
||||
" Gforth
|
||||
elseif s:name =~# 'gforth\>'
|
||||
set ft=forth
|
||||
|
||||
endif
|
||||
unlet s:name
|
||||
|
||||
@@ -390,6 +402,10 @@ else
|
||||
elseif s:line1 =~# '^%YAML'
|
||||
set ft=yaml
|
||||
|
||||
" MikroTik RouterOS script
|
||||
elseif s:line1 =~# '^#.*by RouterOS.*$'
|
||||
set ft=routeros
|
||||
|
||||
" CVS diff
|
||||
else
|
||||
let s:lnum = 1
|
||||
|
||||
@@ -1,50 +1,79 @@
|
||||
" Vim syntax file
|
||||
" Language: Arduino
|
||||
" Maintainer: Johannes Hoff <johannes@johanneshoff.com>
|
||||
" Last Change: 2011 June 3
|
||||
" Last Change: 21 October 2021
|
||||
" License: VIM license (:help license, replace vim by arduino.vim)
|
||||
|
||||
" Syntax highlighting like in the Arduino IDE
|
||||
" Keywords extracted from <arduino>/build/shared/lib/keywords.txt (arduino
|
||||
" version 0021)
|
||||
" Automatically generated by the script available at
|
||||
" https://github.com/johshoff/arduino-vim-syntax
|
||||
" Using keywords from <arduino>/build/shared/lib/keywords.txt
|
||||
" From version: 1.8.16
|
||||
|
||||
" Thanks to Rik, Erik Nomitch, Adam Obeng and Graeme Cross for helpful feedback!
|
||||
" Thanks to Rik, Erik Nomitch, Adam Obeng, Graeme Cross and Niall Parker
|
||||
" for helpful feedback!
|
||||
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Read the C syntax to start with
|
||||
runtime! syntax/cpp.vim
|
||||
if version < 600
|
||||
so <sfile>:p:h/cpp.vim
|
||||
else
|
||||
runtime! syntax/cpp.vim
|
||||
endif
|
||||
|
||||
syn keyword arduinoConstant HIGH LOW INPUT OUTPUT
|
||||
syn keyword arduinoConstant DEC BIN HEX OCT BYTE
|
||||
syn keyword arduinoConstant PI HALF_PI TWO_PI
|
||||
syn keyword arduinoConstant LSBFIRST MSBFIRST
|
||||
syn keyword arduinoConstant CHANGE FALLING RISING
|
||||
syn keyword arduinoConstant SERIAL DISPLAY
|
||||
syn keyword arduinoConstant DEFAULT EXTERNAL INTERNAL INTERNAL1V1 INTERNAL2V56
|
||||
syn keyword arduinoConstant BIN CHANGE DEC DEFAULT EXTERNAL FALLING HALF_PI HEX
|
||||
syn keyword arduinoConstant HIGH INPUT INPUT_PULLUP INTERNAL INTERNAL1V1
|
||||
syn keyword arduinoConstant INTERNAL2V56 LED_BUILTIN LED_BUILTIN_RX
|
||||
syn keyword arduinoConstant LED_BUILTIN_TX LOW LSBFIRST MSBFIRST OCT OUTPUT PI
|
||||
syn keyword arduinoConstant RISING TWO_PI
|
||||
|
||||
syn keyword arduinoStdFunc abs acos asin atan atan2 ceil constrain
|
||||
syn keyword arduinoStdFunc cos degrees exp floor log
|
||||
syn keyword arduinoStdFunc map max min pow radians
|
||||
syn keyword arduinoStdFunc round sin sq sqrt tan
|
||||
syn keyword arduinoStdFunc randomSeed random
|
||||
syn keyword arduinoFunc analogRead analogReadResolution analogReference
|
||||
syn keyword arduinoFunc analogWrite analogWriteResolution attachInterrupt
|
||||
syn keyword arduinoFunc bit bitClear bitRead bitSet bitWrite delay
|
||||
syn keyword arduinoFunc delayMicroseconds detachInterrupt
|
||||
syn keyword arduinoFunc digitalPinToInterrupt digitalRead digitalWrite
|
||||
syn keyword arduinoFunc highByte interrupts lowByte micros millis
|
||||
syn keyword arduinoFunc noInterrupts noTone pinMode pulseIn pulseInLong
|
||||
syn keyword arduinoFunc shiftIn shiftOut tone yield
|
||||
|
||||
syn keyword arduinoFunc analogReference analogRead analogWrite
|
||||
syn keyword arduinoFunc attachInterrupt detachInterrupt interrupts noInterrupts
|
||||
syn keyword arduinoFunc lowByte highByte bitRead bitWrite bitSet bitClear
|
||||
syn keyword arduinoFunc millis micros delay delayMicroseconds
|
||||
syn keyword arduinoFunc pinMode digitalWrite digitalRead
|
||||
syn keyword arduinoFunc tone noTone pulseIn shiftOut
|
||||
syn keyword arduinoMethod available availableForWrite begin charAt compareTo
|
||||
syn keyword arduinoMethod concat end endsWith equals equalsIgnoreCase export
|
||||
syn keyword arduinoMethod final find findUntil flush getBytes indexOf
|
||||
syn keyword arduinoMethod lastIndexOf length loop override parseFloat
|
||||
syn keyword arduinoMethod parseInt peek print println read readBytes
|
||||
syn keyword arduinoMethod readBytesUntil readString readStringUntil replace
|
||||
syn keyword arduinoMethod setCharAt setTimeout setup startsWith Stream
|
||||
syn keyword arduinoMethod substring toCharArray toInt toLowerCase toUpperCase
|
||||
syn keyword arduinoMethod trim
|
||||
|
||||
syn keyword arduinoMethod setup loop
|
||||
syn keyword arduinoMethod begin end available read flush print println write peek
|
||||
syn keyword arduinoModule Keyboard Mouse Serial Serial1 Serial2 Serial3
|
||||
syn keyword arduinoModule SerialUSB
|
||||
|
||||
syn keyword arduinoType boolean byte word String
|
||||
syn keyword arduinoStdFunc abs accept acos acosf asin asinf atan atan2 atan2f
|
||||
syn keyword arduinoStdFunc atanf cbrt cbrtf ceil ceilf click constrain
|
||||
syn keyword arduinoStdFunc copysign copysignf cos cosf cosh coshf degrees exp
|
||||
syn keyword arduinoStdFunc expf fabs fabsf fdim fdimf floor floorf fma fmaf
|
||||
syn keyword arduinoStdFunc fmax fmaxf fmin fminf fmod fmodf hypot hypotf
|
||||
syn keyword arduinoStdFunc isfinite isinf isnan isPressed ldexp ldexpf log
|
||||
syn keyword arduinoStdFunc log10 log10f logf lrint lrintf lround lroundf map
|
||||
syn keyword arduinoStdFunc max min move pow powf press radians random
|
||||
syn keyword arduinoStdFunc randomSeed release releaseAll round roundf signbit
|
||||
syn keyword arduinoStdFunc sin sinf sinh sinhf sq sqrt sqrtf tan tanf tanh
|
||||
syn keyword arduinoStdFunc tanhf trunc truncf
|
||||
|
||||
syn keyword arduinoModule Serial Serial1 Serial2 Serial3
|
||||
syn keyword arduinoType _Bool _Complex _Imaginary array atomic_bool
|
||||
syn keyword arduinoType atomic_char atomic_int atomic_llong atomic_long
|
||||
syn keyword arduinoType atomic_schar atomic_short atomic_uchar atomic_uint
|
||||
syn keyword arduinoType atomic_ullong atomic_ulong atomic_ushort boolean
|
||||
syn keyword arduinoType byte char16_t char32_t complex NULL null PROGMEM
|
||||
syn keyword arduinoType String word
|
||||
|
||||
hi def link arduinoType Type
|
||||
hi def link arduinoConstant Constant
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
" Authored By: Riccardo Casini <ric@libero.it>
|
||||
" Script URL: http://www.vim.org/scripts/script.php?script_id=1239
|
||||
" ChangeLog: Please visit the script URL for detailed change information
|
||||
" Included change from #970.
|
||||
|
||||
" Quit when a syntax file was already loaded.
|
||||
if exists("b:current_syntax")
|
||||
@@ -932,7 +933,7 @@ syn match autoitConst "\$SD_POWERDOWN"
|
||||
" constants - string
|
||||
syn match autoitConst "\$STR_NOCASESENSE"
|
||||
syn match autoitConst "\$STR_CASESENSE"
|
||||
syn match autoitConst "\STR_STRIPLEADING"
|
||||
syn match autoitConst "\$STR_STRIPLEADING"
|
||||
syn match autoitConst "\$STR_STRIPTRAILING"
|
||||
syn match autoitConst "\$STR_STRIPSPACES"
|
||||
syn match autoitConst "\$STR_STRIPALL"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 May 24
|
||||
" Last Change: 2021 Dec 07
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -196,7 +196,6 @@ syn match cNumber display contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
|
||||
" Flag the first zero of an octal number as something special
|
||||
syn match cOctal display contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>" contains=cOctalZero
|
||||
syn match cOctalZero display contained "\<0"
|
||||
syn match cFloat display contained "\d\+f"
|
||||
"floating point number, with dot, optional exponent
|
||||
syn match cFloat display contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
|
||||
"floating point number, starting with a dot, optional exponent
|
||||
|
||||
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user