mirror of
https://github.com/zoriya/vim.git
synced 2025-12-06 07:16:15 +00:00
Compare commits
602 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 | ||
|
|
eeed1c7ae0 | ||
|
|
6e77b88df6 | ||
|
|
3826c0513b | ||
|
|
35a319b77f | ||
|
|
26190b2701 | ||
|
|
826bfe4bbd | ||
|
|
cce81e9673 | ||
|
|
edd7a476fb | ||
|
|
e275ba4fc9 | ||
|
|
e2982d6911 | ||
|
|
78e0fa4cf4 | ||
|
|
2e258bd79f | ||
|
|
949de97da3 | ||
|
|
7c25a7c0a1 | ||
|
|
f67d3fb736 | ||
|
|
6d19798774 | ||
|
|
d3710cf01e | ||
|
|
08d7b1c828 | ||
|
|
965d2edbce | ||
|
|
6e64922492 | ||
|
|
78aa5ffe31 | ||
|
|
9af9fd6ab6 | ||
|
|
d8d957de86 | ||
|
|
a684a68409 | ||
|
|
50c5689342 | ||
|
|
c6376c7984 | ||
|
|
5a9357d0bf | ||
|
|
cc8cd44533 | ||
|
|
27fef59dd1 | ||
|
|
8b8c0ed657 | ||
|
|
72d2fa69e5 | ||
|
|
d85931e673 | ||
|
|
72406a4bd2 | ||
|
|
dfa5e464d4 | ||
|
|
51491adfa8 | ||
|
|
be01090efa | ||
|
|
b16ff292ad | ||
|
|
f8dbd58666 | ||
|
|
56858e4ed4 | ||
|
|
23003e51e1 | ||
|
|
40fa12aea3 | ||
|
|
da0b497c6e | ||
|
|
34cc7d8c03 | ||
|
|
690c524ce6 | ||
|
|
770ddbe159 | ||
|
|
18fefddcb0 | ||
|
|
c04f62346b | ||
|
|
1d34189ecb | ||
|
|
d2b98ab4ec | ||
|
|
820d5525ca | ||
|
|
542ffe16a1 | ||
|
|
644b49fa0f | ||
|
|
3dfe2e0fb8 | ||
|
|
1a7ee4dd11 | ||
|
|
ee2cbcd99c | ||
|
|
f2a8bafa4b | ||
|
|
78eb9cce91 | ||
|
|
5dfe467432 | ||
|
|
f5785cf059 | ||
|
|
a29856fcdc | ||
|
|
b1b6f4de2b | ||
|
|
28e591dd50 | ||
|
|
bdcba24d85 | ||
|
|
ca0627df69 | ||
|
|
dfe04dbff5 | ||
|
|
f1e8876fa2 | ||
|
|
464393a696 | ||
|
|
35a9a00afc | ||
|
|
b3bf33a7b2 | ||
|
|
4b4b1b84ee | ||
|
|
56e14698b4 | ||
|
|
f14b8ba137 | ||
|
|
07802044b9 | ||
|
|
efc084e335 | ||
|
|
6c391a74fe | ||
|
|
d176ca3dde | ||
|
|
6b9efdde78 | ||
|
|
0325d3967c | ||
|
|
070ac3433b | ||
|
|
072f1c6888 | ||
|
|
36f691f5f1 | ||
|
|
fc3b775055 | ||
|
|
80c88eac5a | ||
|
|
a9e3d56087 | ||
|
|
af2d5d2ce2 | ||
|
|
6853c38b78 | ||
|
|
89a54b413a | ||
|
|
65b6056659 | ||
|
|
ddfc05100a | ||
|
|
3b31851356 | ||
|
|
3ae5fc9a6a | ||
|
|
ec1b0968aa | ||
|
|
01dd6c3732 | ||
|
|
2ddb89f8a9 | ||
|
|
b7081e135a | ||
|
|
10c83dde55 | ||
|
|
7f2dd1e90c | ||
|
|
deba5eb195 | ||
|
|
af631f61bc | ||
|
|
03d257998b | ||
|
|
87e1587b8a | ||
|
|
26a4484da2 | ||
|
|
04626c243c | ||
|
|
6631597452 | ||
|
|
b4d82e2a8d | ||
|
|
20e0c3d27b | ||
|
|
ba02e4720f | ||
|
|
dca29d9cf4 | ||
|
|
4eaef9979f | ||
|
|
de05ae7158 | ||
|
|
a918712626 | ||
|
|
89a9c159f2 | ||
|
|
6e82351130 | ||
|
|
9dcd349ca8 | ||
|
|
9aecf79c45 | ||
|
|
c8103b4c25 | ||
|
|
5c56da4de8 | ||
|
|
60b6e6f6cc | ||
|
|
271906bc06 | ||
|
|
6024c0427c | ||
|
|
47016f5772 | ||
|
|
4799cef85c | ||
|
|
df9070e300 | ||
|
|
eb05d05f8a | ||
|
|
49b93049c6 | ||
|
|
cdd8a5e6fe | ||
|
|
5ca5cc6412 | ||
|
|
60faf8656e | ||
|
|
6b36d2a16d | ||
|
|
9cd91a1e88 | ||
|
|
73170917f1 | ||
|
|
093165c899 | ||
|
|
bf5f287833 | ||
|
|
bebf06954e | ||
|
|
b8bd2e6eba | ||
|
|
489d60996d | ||
|
|
d895b1d918 | ||
|
|
5aec755b67 | ||
|
|
c66f645b80 | ||
|
|
dea561111a | ||
|
|
02f8694a6b | ||
|
|
ccfb7c6758 | ||
|
|
434df7a401 | ||
|
|
92755bba30 | ||
|
|
cd6b4f3001 | ||
|
|
4bba16d252 | ||
|
|
b033ee2ddf | ||
|
|
a401bba080 | ||
|
|
5cebca27b8 | ||
|
|
14c7530c4f | ||
|
|
dd9de50f42 | ||
|
|
2596a4e763 | ||
|
|
6aa57295cf | ||
|
|
bfb2bb16bc | ||
|
|
d2e9ccee90 | ||
|
|
4830c211a4 | ||
|
|
b521766c56 | ||
|
|
88c89c7722 | ||
|
|
78a9c2e670 | ||
|
|
aacc966c5d | ||
|
|
89071cb6a1 | ||
|
|
069f90852f | ||
|
|
92f05f21af | ||
|
|
ef98257593 | ||
|
|
bd77aa9274 | ||
|
|
3e9c0b9608 | ||
|
|
4f0884d6e2 | ||
|
|
ed7cb2df35 | ||
|
|
7deb4115ef | ||
|
|
16e63e6d35 | ||
|
|
b85d3627d9 | ||
|
|
ba9c23e776 | ||
|
|
6e48b84c5f | ||
|
|
52eb372a04 | ||
|
|
917c46abe5 | ||
|
|
b6f55bb5b4 | ||
|
|
b56c4419d4 | ||
|
|
bd9e796125 | ||
|
|
8ee52affe7 | ||
|
|
eed9616120 | ||
|
|
ed8b099fd2 | ||
|
|
33ea9fd4d8 | ||
|
|
80a070c361 | ||
|
|
2950065e18 | ||
|
|
267359902c | ||
|
|
9e2fa4bb9e | ||
|
|
e525bdda3a | ||
|
|
dae453f339 | ||
|
|
4270d8b762 | ||
|
|
fbeefb1b87 | ||
|
|
6ce46b9963 | ||
|
|
7de6262373 | ||
|
|
1b154ea121 | ||
|
|
8493499880 | ||
|
|
c611941c60 | ||
|
|
3276f5846f | ||
|
|
d57a6bd98c | ||
|
|
cbae580283 | ||
|
|
11328bc7df | ||
|
|
5671f3f076 | ||
|
|
6f6d58c380 | ||
|
|
63b9173693 | ||
|
|
af647e76ca | ||
|
|
4f33bc20d7 | ||
|
|
1b6acf02b7 | ||
|
|
6a230c6b32 | ||
|
|
bc67e5a0a4 | ||
|
|
4a01159da2 | ||
|
|
9fe17d473a | ||
|
|
f18e8a969a | ||
|
|
9dc4bef897 | ||
|
|
57942237c1 | ||
|
|
d61f2f772a | ||
|
|
dd097bdc13 | ||
|
|
80d7395dcf | ||
|
|
0eec851942 | ||
|
|
41a3485dd6 | ||
|
|
23e2e11515 | ||
|
|
51ad850f5f | ||
|
|
2c70711e3f | ||
|
|
7bf9a07bd7 | ||
|
|
c3160727b9 | ||
|
|
bb7ee7abe1 | ||
|
|
35578168be | ||
|
|
952d9d827e | ||
|
|
1321257317 | ||
|
|
e041dde7bb | ||
|
|
e4db17fb6e | ||
|
|
0d4d9ee9bb | ||
|
|
f78da4f9d6 | ||
|
|
73b8b0ae3a | ||
|
|
6db660bed9 | ||
|
|
e97976baa7 | ||
|
|
78ba933d18 | ||
|
|
f24f51d030 | ||
|
|
f5d52c90e0 | ||
|
|
9e0ee59019 | ||
|
|
1780f08ba4 | ||
|
|
335c8c7b20 | ||
|
|
620c959c6c | ||
|
|
78db17c6f3 | ||
|
|
8e3fc135e8 | ||
|
|
bf634a0a8b | ||
|
|
b9115da4be | ||
|
|
28d8421bfb | ||
|
|
890ee4e2be | ||
|
|
4a15504e91 | ||
|
|
0f5575d0a7 | ||
|
|
1790be6cb6 | ||
|
|
60dc8274e9 | ||
|
|
921ba52926 | ||
|
|
77ab4e28a2 | ||
|
|
77111e2bfc | ||
|
|
131530a54d | ||
|
|
41114a2a27 | ||
|
|
83cd0156e0 | ||
|
|
0732932553 | ||
|
|
6e850a6900 | ||
|
|
2a4bd00cef | ||
|
|
81530e3603 | ||
|
|
d47c39775b | ||
|
|
53f7fccc94 | ||
|
|
327d3ee455 | ||
|
|
eaf3f36168 | ||
|
|
6868634abd | ||
|
|
78e006b9b0 | ||
|
|
e2390c7f32 | ||
|
|
7e6a2a64f0 | ||
|
|
9088784972 | ||
|
|
f723701de0 | ||
|
|
4490ec4e83 | ||
|
|
5d7c2df536 | ||
|
|
53ba05b090 | ||
|
|
29b857150c | ||
|
|
ccb148ac63 | ||
|
|
678b207fb1 | ||
|
|
ff34bee3a2 | ||
|
|
3c77b6a1ce | ||
|
|
a764e73d4f | ||
|
|
2ec28aec9d | ||
|
|
7a4ca32175 | ||
|
|
8a4c812ede | ||
|
|
3ed0d93796 | ||
|
|
2eb6fc3b52 | ||
|
|
5bca906b30 | ||
|
|
7d60384a00 | ||
|
|
9c9472ff49 | ||
|
|
5a9e5845e1 | ||
|
|
7973de35ba | ||
|
|
dd0b287c1e | ||
|
|
88421d6dc8 | ||
|
|
1a3e5747b7 | ||
|
|
5a234eb18e | ||
|
|
0ad871dc4d | ||
|
|
1b862c466b | ||
|
|
c9e7e344ed | ||
|
|
cd268017cf | ||
|
|
5dd839ce20 | ||
|
|
2b59df00d8 | ||
|
|
7a3fe3e180 | ||
|
|
a74901929e | ||
|
|
f674b358fc | ||
|
|
d8e44476d8 | ||
|
|
05bd9785fd | ||
|
|
c4c5642513 | ||
|
|
cd9172077b | ||
|
|
189663bdac | ||
|
|
11d7e62f1d | ||
|
|
63cb6567f0 | ||
|
|
e29a27f6f8 | ||
|
|
9fa5dabedc | ||
|
|
83494b4ac6 | ||
|
|
9bb0dad0d8 | ||
|
|
605793500b | ||
|
|
ac2cd2b08f | ||
|
|
6106504e9e | ||
|
|
98c2eaed27 | ||
|
|
885971e2f5 | ||
|
|
9ff9c7b974 | ||
|
|
f6488547e3 | ||
|
|
24e9316560 | ||
|
|
4db572eeb2 | ||
|
|
ad2d4969e1 | ||
|
|
0c35752d04 | ||
|
|
c6ba2f9dde | ||
|
|
47bc9c3337 | ||
|
|
a9a7c0c602 | ||
|
|
20c370d9f2 | ||
|
|
f5f1b59d3b | ||
|
|
d8cee76b49 | ||
|
|
5245beb37c | ||
|
|
378697ac58 | ||
|
|
547f94f330 | ||
|
|
b5841b99e6 | ||
|
|
9e60e899ee | ||
|
|
0894e0d808 | ||
|
|
1557b16dad | ||
|
|
1a71d31bf3 | ||
|
|
c816a2c226 | ||
|
|
4a0b85ad01 | ||
|
|
5bea41dea3 | ||
|
|
1840a7b4e3 | ||
|
|
16e26a3116 | ||
|
|
ee41052ccb | ||
|
|
042414fa00 | ||
|
|
841e498c5d | ||
|
|
7b7a118e74 | ||
|
|
11005b078d | ||
|
|
ffcfddc759 | ||
|
|
c72bdd28ac | ||
|
|
cc7eb2aa7a | ||
|
|
5231224e11 | ||
|
|
648594eaf7 | ||
|
|
c03fe66ade | ||
|
|
4ece152ad6 | ||
|
|
0f1227f7d5 | ||
|
|
d9162550aa | ||
|
|
1aeddeb8bd | ||
|
|
de69a7353e | ||
|
|
482d2f37a5 | ||
|
|
a2438132a6 | ||
|
|
31e21766d6 | ||
|
|
c323527d67 | ||
|
|
fe3418abe0 | ||
|
|
5b73992d8f | ||
|
|
9da32e4d57 | ||
|
|
90fba5627b | ||
|
|
6bcb18253a | ||
|
|
981217c11f | ||
|
|
b885a7c72c | ||
|
|
c967d57aa9 | ||
|
|
f055d45023 | ||
|
|
f32f099761 | ||
|
|
d4ab807d62 | ||
|
|
09f688c33a | ||
|
|
deb108ba0a | ||
|
|
1594f31345 | ||
|
|
30441bb3d5 | ||
|
|
41fb723ee9 | ||
|
|
db86472770 | ||
|
|
6a9e5c69cf | ||
|
|
5ede5b231e | ||
|
|
efc5db5215 | ||
|
|
90df4b9d42 | ||
|
|
303215d60c | ||
|
|
b5098060f4 | ||
|
|
599a6e5b36 | ||
|
|
442b29c968 | ||
|
|
5cb09620c1 | ||
|
|
404557e6a6 | ||
|
|
04db26b360 | ||
|
|
f6d877975b | ||
|
|
d6fa7bd5b9 | ||
|
|
22f85d0459 | ||
|
|
6977dba04b | ||
|
|
97f227d9c9 | ||
|
|
b7480cd893 | ||
|
|
f33cae6050 | ||
|
|
3777d6e32b | ||
|
|
26e88ec8e2 | ||
|
|
67b17a6fc6 | ||
|
|
7a40ff00ed | ||
|
|
4197828dc6 | ||
|
|
999db2346b | ||
|
|
1d97efce0c | ||
|
|
6c72fd51a8 | ||
|
|
b17ab86e7b | ||
|
|
c60e959cba | ||
|
|
fb773a3e0a | ||
|
|
74509239df | ||
|
|
e28d9b3bd4 | ||
|
|
00aaa512d5 | ||
|
|
20cc528320 | ||
|
|
9cee4a1c9c | ||
|
|
fcde67c99f | ||
|
|
6fc0161682 | ||
|
|
acbb4b5720 | ||
|
|
a26f56f675 | ||
|
|
72463f883c | ||
|
|
b836f631db | ||
|
|
11a632d60b | ||
|
|
576cb75ceb | ||
|
|
a3d1b29bd3 | ||
|
|
834193afd7 | ||
|
|
d3d8feeb89 | ||
|
|
3f987b5917 | ||
|
|
80b2ba3e96 | ||
|
|
ea042677ab | ||
|
|
4067bd3604 | ||
|
|
7d7bcc6ba0 | ||
|
|
127950241e | ||
|
|
ffec6dd16a | ||
|
|
108010aa47 | ||
|
|
d887297ad0 | ||
|
|
1d1ce613cd | ||
|
|
17d868b8b2 | ||
|
|
577dc93da9 | ||
|
|
4d8f476176 | ||
|
|
e65081d1b5 | ||
|
|
65aee0b714 | ||
|
|
4cd5c52d64 | ||
|
|
054794c20f | ||
|
|
98f9a5f4cb | ||
|
|
e3ffaa6b7c | ||
|
|
015cf10311 | ||
|
|
307dec4567 | ||
|
|
14ded11fca | ||
|
|
3a3b10e87a | ||
|
|
4d5dfe2083 | ||
|
|
13e45d14ba | ||
|
|
ce024c3e20 | ||
|
|
444d878324 | ||
|
|
f3caeb63d6 | ||
|
|
6582e230a0 | ||
|
|
22480d147f | ||
|
|
f3d30842dc | ||
|
|
b420ac9d20 | ||
|
|
98703d7f6c | ||
|
|
3a62b14077 | ||
|
|
d415d26913 | ||
|
|
6738fd2000 | ||
|
|
44dea9da4b | ||
|
|
18d46587b9 | ||
|
|
8cec9273d2 | ||
|
|
cc65040986 | ||
|
|
8ce3ca8961 | ||
|
|
7237cab8f1 | ||
|
|
831bdf8622 | ||
|
|
ef7be8348f | ||
|
|
419a40ac96 | ||
|
|
226b28b961 | ||
|
|
22f17a29cd | ||
|
|
cb54bc6562 | ||
|
|
035bd1c99f | ||
|
|
f1e7449d56 | ||
|
|
2ac4b2536a | ||
|
|
4f8f54280f | ||
|
|
0d5e1ec37f | ||
|
|
2fb1b89d72 | ||
|
|
ca81f0e834 | ||
|
|
f573c6e1ed | ||
|
|
208f0b48b2 | ||
|
|
2fb7495686 | ||
|
|
6864efa596 | ||
|
|
ad52f96a2d | ||
|
|
59b50c3bee | ||
|
|
fae55a9cb0 | ||
|
|
74f4a965bc | ||
|
|
6e9695525e | ||
|
|
4cea536bdf | ||
|
|
29f0dc3689 | ||
|
|
6bc30b05e6 | ||
|
|
41a7f82dea | ||
|
|
b90ac5e96e | ||
|
|
55b6b60b69 | ||
|
|
61a417b7c1 | ||
|
|
a97c36310f | ||
|
|
f57b43c230 | ||
|
|
8ac681a280 | ||
|
|
968a5b62ff | ||
|
|
affd0bc626 | ||
|
|
caf1a2f296 | ||
|
|
3b814af7e1 | ||
|
|
47f6db9089 | ||
|
|
1b0a9dd413 | ||
|
|
26d711645c | ||
|
|
b69c6fb7b4 | ||
|
|
90478f35a8 | ||
|
|
2d6d718dde | ||
|
|
5ffefbb35a | ||
|
|
2346a63784 | ||
|
|
4ee9d8e04d | ||
|
|
e70e12b32f | ||
|
|
2e66b0d137 | ||
|
|
c2dec4cac4 | ||
|
|
c3a27bbd53 | ||
|
|
6d1792d408 | ||
|
|
d9f31c13d2 | ||
|
|
e99d422bbd | ||
|
|
e6174fd58d | ||
|
|
4a27aefe3b | ||
|
|
a993153538 | ||
|
|
7423577180 | ||
|
|
6654ca702c | ||
|
|
0b71955552 | ||
|
|
5958549760 | ||
|
|
744aecf877 | ||
|
|
22db0d549f | ||
|
|
8de901e1f1 | ||
|
|
f0a4069e3d | ||
|
|
4f13527598 |
32
.github/CODEOWNERS
vendored
32
.github/CODEOWNERS
vendored
@@ -51,6 +51,7 @@ runtime/compiler/sass.vim @tpope
|
|||||||
runtime/compiler/se.vim @dkearns
|
runtime/compiler/se.vim @dkearns
|
||||||
runtime/compiler/shellcheck.vim @dkearns
|
runtime/compiler/shellcheck.vim @dkearns
|
||||||
runtime/compiler/sml.vim @dkearns
|
runtime/compiler/sml.vim @dkearns
|
||||||
|
runtime/compiler/spectral.vim @romainl
|
||||||
runtime/compiler/stylelint.vim @dkearns
|
runtime/compiler/stylelint.vim @dkearns
|
||||||
runtime/compiler/tcl.vim @dkearns
|
runtime/compiler/tcl.vim @dkearns
|
||||||
runtime/compiler/tidy.vim @dkearns
|
runtime/compiler/tidy.vim @dkearns
|
||||||
@@ -59,6 +60,7 @@ runtime/compiler/tsc.vim @dkearns
|
|||||||
runtime/compiler/typedoc.vim @dkearns
|
runtime/compiler/typedoc.vim @dkearns
|
||||||
runtime/compiler/xmllint.vim @dkearns
|
runtime/compiler/xmllint.vim @dkearns
|
||||||
runtime/compiler/xo.vim @dkearns
|
runtime/compiler/xo.vim @dkearns
|
||||||
|
runtime/compiler/yamllint.vim @romainl
|
||||||
runtime/compiler/zsh.vim @dkearns
|
runtime/compiler/zsh.vim @dkearns
|
||||||
runtime/doc/pi_getscript.txt @cecamp
|
runtime/doc/pi_getscript.txt @cecamp
|
||||||
runtime/doc/pi_logipat.txt @cecamp
|
runtime/doc/pi_logipat.txt @cecamp
|
||||||
@@ -71,6 +73,7 @@ runtime/ftplugin/awk.vim @dkearns
|
|||||||
runtime/ftplugin/basic.vim @dkearns
|
runtime/ftplugin/basic.vim @dkearns
|
||||||
runtime/ftplugin/bst.vim @tpope
|
runtime/ftplugin/bst.vim @tpope
|
||||||
runtime/ftplugin/cfg.vim @chrisbra
|
runtime/ftplugin/cfg.vim @chrisbra
|
||||||
|
runtime/ftplugin/csh.vim @dkearns
|
||||||
runtime/ftplugin/css.vim @dkearns
|
runtime/ftplugin/css.vim @dkearns
|
||||||
runtime/ftplugin/cucumber.vim @tpope
|
runtime/ftplugin/cucumber.vim @tpope
|
||||||
runtime/ftplugin/eiffel.vim @dkearns
|
runtime/ftplugin/eiffel.vim @dkearns
|
||||||
@@ -95,8 +98,10 @@ runtime/ftplugin/markdown.vim @tpope
|
|||||||
runtime/ftplugin/matlab.vim @cecamp
|
runtime/ftplugin/matlab.vim @cecamp
|
||||||
runtime/ftplugin/meson.vim @Liambeguin
|
runtime/ftplugin/meson.vim @Liambeguin
|
||||||
runtime/ftplugin/modula3.vim @dkearns
|
runtime/ftplugin/modula3.vim @dkearns
|
||||||
|
runtime/ftplugin/nginx.vim @chr4
|
||||||
runtime/ftplugin/nroff.vim @a-vrma
|
runtime/ftplugin/nroff.vim @a-vrma
|
||||||
runtime/ftplugin/nsis.vim @k-takata
|
runtime/ftplugin/nsis.vim @k-takata
|
||||||
|
runtime/ftplugin/octave.vim @dkearns
|
||||||
runtime/ftplugin/pascal.vim @dkearns
|
runtime/ftplugin/pascal.vim @dkearns
|
||||||
runtime/ftplugin/pbtxt.vim @lakshayg
|
runtime/ftplugin/pbtxt.vim @lakshayg
|
||||||
runtime/ftplugin/pdf.vim @tpope
|
runtime/ftplugin/pdf.vim @tpope
|
||||||
@@ -107,27 +112,49 @@ runtime/ftplugin/sass.vim @tpope
|
|||||||
runtime/ftplugin/scss.vim @tpope
|
runtime/ftplugin/scss.vim @tpope
|
||||||
runtime/ftplugin/spec.vim @ignatenkobrain
|
runtime/ftplugin/spec.vim @ignatenkobrain
|
||||||
runtime/ftplugin/systemverilog.vim @Kocha
|
runtime/ftplugin/systemverilog.vim @Kocha
|
||||||
|
runtime/ftplugin/tcsh.vim @dkearns
|
||||||
runtime/ftplugin/tidy.vim @dkearns
|
runtime/ftplugin/tidy.vim @dkearns
|
||||||
runtime/ftplugin/tmux.vim @ericpruitt
|
runtime/ftplugin/tmux.vim @ericpruitt
|
||||||
|
runtime/ftplugin/toml.vim @averms
|
||||||
runtime/ftplugin/typescript.vim @dkearns
|
runtime/ftplugin/typescript.vim @dkearns
|
||||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||||
runtime/ftplugin/xml.vim @chrisbra
|
runtime/ftplugin/xml.vim @chrisbra
|
||||||
runtime/ftplugin/zsh.vim @chrisbra
|
runtime/ftplugin/zsh.vim @chrisbra
|
||||||
runtime/indent/bst.vim @tpope
|
runtime/indent/bst.vim @tpope
|
||||||
|
runtime/indent/cdl.vim @dkearns
|
||||||
|
runtime/indent/config.vim @dkearns
|
||||||
|
runtime/indent/css.vim @dkearns
|
||||||
runtime/indent/cucumber.vim @tpope
|
runtime/indent/cucumber.vim @tpope
|
||||||
|
runtime/indent/d.vim @dkearns
|
||||||
runtime/indent/dosbatch.vim @k-takata
|
runtime/indent/dosbatch.vim @k-takata
|
||||||
|
runtime/indent/dtd.vim @dkearns
|
||||||
|
runtime/indent/dylan.vim @dkearns
|
||||||
|
runtime/indent/elm.vim @andys8
|
||||||
runtime/indent/eruby.vim @tpope @dkearns
|
runtime/indent/eruby.vim @tpope @dkearns
|
||||||
|
runtime/indent/eterm.vim @dkearns
|
||||||
|
runtime/indent/framescript.vim @dkearns
|
||||||
runtime/indent/gitconfig.vim @tpope
|
runtime/indent/gitconfig.vim @tpope
|
||||||
runtime/indent/haml.vim @tpope
|
runtime/indent/haml.vim @tpope
|
||||||
|
runtime/indent/idlang.vim @dkearns
|
||||||
|
runtime/indent/ld.vim @dkearns
|
||||||
runtime/indent/liquid.vim @tpope
|
runtime/indent/liquid.vim @tpope
|
||||||
|
runtime/indent/make.vim @dkearns
|
||||||
runtime/indent/meson.vim @Liambeguin
|
runtime/indent/meson.vim @Liambeguin
|
||||||
|
runtime/indent/mma.vim @dkearns
|
||||||
|
runtime/indent/nginx.vim @chr4
|
||||||
runtime/indent/nsis.vim @k-takata
|
runtime/indent/nsis.vim @k-takata
|
||||||
|
runtime/indent/occam.vim @dkearns
|
||||||
|
runtime/indent/postscr.vim @dkearns
|
||||||
|
runtime/indent/prolog.vim @dkearns
|
||||||
runtime/indent/ps1.vim @heaths
|
runtime/indent/ps1.vim @heaths
|
||||||
|
runtime/indent/readline.vim @dkearns
|
||||||
runtime/indent/ruby.vim @AndrewRadev @dkearns
|
runtime/indent/ruby.vim @AndrewRadev @dkearns
|
||||||
runtime/indent/sass.vim @tpope
|
runtime/indent/sass.vim @tpope
|
||||||
runtime/indent/scss.vim @tpope
|
runtime/indent/scss.vim @tpope
|
||||||
runtime/indent/sh.vim @chrisbra
|
runtime/indent/sh.vim @chrisbra
|
||||||
runtime/indent/systemverilog.vim @Kocha
|
runtime/indent/systemverilog.vim @Kocha
|
||||||
|
runtime/indent/tcl.vim @dkearns
|
||||||
|
runtime/indent/tcsh.vim @dkearns
|
||||||
runtime/indent/teraterm.vim @k-takata
|
runtime/indent/teraterm.vim @k-takata
|
||||||
runtime/indent/xml.vim @chrisbra
|
runtime/indent/xml.vim @chrisbra
|
||||||
runtime/indent/zsh.vim @chrisbra
|
runtime/indent/zsh.vim @chrisbra
|
||||||
@@ -142,6 +169,7 @@ runtime/plugin/vimballPlugin.vim @cecamp
|
|||||||
runtime/plugin/zipPlugin.vim @cecamp
|
runtime/plugin/zipPlugin.vim @cecamp
|
||||||
runtime/syntax/aidl.vim @dpelle
|
runtime/syntax/aidl.vim @dpelle
|
||||||
runtime/syntax/amiga.vim @cecamp
|
runtime/syntax/amiga.vim @cecamp
|
||||||
|
runtime/syntax/arduino.vim @johshoff
|
||||||
runtime/syntax/asm.vim @dkearns
|
runtime/syntax/asm.vim @dkearns
|
||||||
runtime/syntax/asmh8300.vim @dkearns
|
runtime/syntax/asmh8300.vim @dkearns
|
||||||
runtime/syntax/asterisk.vim @jaunis
|
runtime/syntax/asterisk.vim @jaunis
|
||||||
@@ -189,6 +217,7 @@ runtime/syntax/markdown.vim @tpope
|
|||||||
runtime/syntax/meson.vim @Liambeguin
|
runtime/syntax/meson.vim @Liambeguin
|
||||||
runtime/syntax/modula3.vim @dkearns
|
runtime/syntax/modula3.vim @dkearns
|
||||||
runtime/syntax/netrw.vim @cecamp
|
runtime/syntax/netrw.vim @cecamp
|
||||||
|
runtime/syntax/nginx.vim @chr4
|
||||||
runtime/syntax/nroff.vim @jmarshall
|
runtime/syntax/nroff.vim @jmarshall
|
||||||
runtime/syntax/nsis.vim @k-takata
|
runtime/syntax/nsis.vim @k-takata
|
||||||
runtime/syntax/pascal.vim @dkearns
|
runtime/syntax/pascal.vim @dkearns
|
||||||
@@ -214,10 +243,12 @@ runtime/syntax/sshdconfig.vim @Jakuje
|
|||||||
runtime/syntax/sudoers.vim @e-kwsm
|
runtime/syntax/sudoers.vim @e-kwsm
|
||||||
runtime/syntax/systemverilog.vim @Kocha
|
runtime/syntax/systemverilog.vim @Kocha
|
||||||
runtime/syntax/tags.vim @cecamp
|
runtime/syntax/tags.vim @cecamp
|
||||||
|
runtime/syntax/tcsh.vim @dkearns
|
||||||
runtime/syntax/teraterm.vim @k-takata
|
runtime/syntax/teraterm.vim @k-takata
|
||||||
runtime/syntax/tex.vim @cecamp
|
runtime/syntax/tex.vim @cecamp
|
||||||
runtime/syntax/tidy.vim @dkearns
|
runtime/syntax/tidy.vim @dkearns
|
||||||
runtime/syntax/tmux.vim @ericpruitt
|
runtime/syntax/tmux.vim @ericpruitt
|
||||||
|
runtime/syntax/toml.vim @averms
|
||||||
runtime/syntax/vim.vim @cecamp
|
runtime/syntax/vim.vim @cecamp
|
||||||
runtime/syntax/wget.vim @dkearns
|
runtime/syntax/wget.vim @dkearns
|
||||||
runtime/syntax/xbl.vim @dkearns
|
runtime/syntax/xbl.vim @dkearns
|
||||||
@@ -236,3 +267,4 @@ src/libvterm/ @leonerd
|
|||||||
src/po/de.po @chrisbra
|
src/po/de.po @chrisbra
|
||||||
src/po/eo.po @dpelle
|
src/po/eo.po @dpelle
|
||||||
src/po/fr.po @dpelle
|
src/po/fr.po @dpelle
|
||||||
|
src/xxd/ @jnweiger
|
||||||
|
|||||||
34
.github/ISSUE_TEMPLATE/bug_report.md
vendored
34
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,34 +0,0 @@
|
|||||||
---
|
|
||||||
name: Bug report
|
|
||||||
about: Create a report to help us improve Vim
|
|
||||||
title: ''
|
|
||||||
labels: ''
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
_Instructions: Replace the template text and remove irrelevant text (including this line)_
|
|
||||||
|
|
||||||
**Describe the bug**
|
|
||||||
A clear and concise description of what the bug is.
|
|
||||||
(Issues related to the runtime files should be reported to their maintainer, check the file header.)
|
|
||||||
|
|
||||||
**To Reproduce**
|
|
||||||
Detailed steps to reproduce the behavior:
|
|
||||||
1. Run `vim --clean` (or `gvim --clean`, etc.)
|
|
||||||
2. Edit `filename`
|
|
||||||
3. Type '....'
|
|
||||||
4. Describe the error
|
|
||||||
|
|
||||||
**Expected behavior**
|
|
||||||
A clear and concise description of what you expected to happen.
|
|
||||||
|
|
||||||
**Screenshots**
|
|
||||||
If applicable, copy/paste the text or add screenshots to help explain your problem.
|
|
||||||
|
|
||||||
**Environment (please complete the following information):**
|
|
||||||
- Vim version [e.g. 8.1.1234] (Or paste the result of `vim --version`.)
|
|
||||||
- OS: [e.g. Ubuntu 18.04, Windows 10 1809, macOS 10.14]
|
|
||||||
- Terminal: [e.g. GNOME Terminal, mintty, iTerm2, tmux, GNU screen] (Use GUI if you use the GUI.)
|
|
||||||
|
|
||||||
**Additional context**
|
|
||||||
Add any other context about the problem here.
|
|
||||||
47
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
47
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
description: Create a report to help us improve Vim.
|
||||||
|
labels: [bug]
|
||||||
|
|
||||||
|
body:
|
||||||
|
- type: markdown
|
||||||
|
attributes:
|
||||||
|
value: |
|
||||||
|
Thanks for reporting issues of Vim!
|
||||||
|
|
||||||
|
To make it easier for us to help you please enter detailed information below.
|
||||||
|
- type: textarea
|
||||||
|
attributes:
|
||||||
|
label: Steps to reproduce
|
||||||
|
placeholder: |
|
||||||
|
1.
|
||||||
|
2.
|
||||||
|
3.
|
||||||
|
4.
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
attributes:
|
||||||
|
label: Expected behaviour
|
||||||
|
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)]
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
attributes:
|
||||||
|
label: Logs and stack traces
|
||||||
|
placeholder: Insert log or other text here (if necessary)
|
||||||
|
render: shell
|
||||||
65
.github/workflows/ci.yml
vendored
65
.github/workflows/ci.yml
vendored
@@ -40,6 +40,7 @@ jobs:
|
|||||||
compiler: gcc
|
compiler: gcc
|
||||||
coverage: true
|
coverage: true
|
||||||
extra: testgui
|
extra: testgui
|
||||||
|
uchar: true
|
||||||
- features: huge
|
- features: huge
|
||||||
compiler: clang
|
compiler: clang
|
||||||
extra: asan
|
extra: asan
|
||||||
@@ -56,7 +57,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get install -y \
|
sudo apt update && sudo apt install -y \
|
||||||
autoconf \
|
autoconf \
|
||||||
lcov \
|
lcov \
|
||||||
gettext \
|
gettext \
|
||||||
@@ -71,7 +72,8 @@ jobs:
|
|||||||
cscope \
|
cscope \
|
||||||
libgtk2.0-dev \
|
libgtk2.0-dev \
|
||||||
desktop-file-utils \
|
desktop-file-utils \
|
||||||
libtool-bin
|
libtool-bin \
|
||||||
|
libsodium-dev
|
||||||
|
|
||||||
- name: Install clang-11
|
- name: Install clang-11
|
||||||
if: matrix.compiler == 'clang'
|
if: matrix.compiler == 'clang'
|
||||||
@@ -79,7 +81,7 @@ jobs:
|
|||||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||||
. /etc/lsb-release
|
. /etc/lsb-release
|
||||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-11 main"
|
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 apt-get install -y clang-11 llvm-11
|
||||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-11 100
|
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 --set clang /usr/bin/clang-11
|
||||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-11 100
|
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-11 100
|
||||||
@@ -110,10 +112,14 @@ jobs:
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
CFLAGS=""
|
||||||
if ${{ matrix.coverage == true }}; then
|
if ${{ matrix.coverage == true }}; then
|
||||||
echo "CFLAGS=--coverage -DUSE_GCOV_FLUSH"
|
CFLAGS="$CFLAGS --coverage -DUSE_GCOV_FLUSH"
|
||||||
echo "LDFLAGS=--coverage"
|
echo "LDFLAGS=--coverage"
|
||||||
fi
|
fi
|
||||||
|
if ${{ matrix.uchar == true }}; then
|
||||||
|
CFLAGS="$CFLAGS -funsigned-char"
|
||||||
|
fi
|
||||||
if ${{ contains(matrix.extra, 'testgui') }}; then
|
if ${{ contains(matrix.extra, 'testgui') }}; then
|
||||||
echo "TEST=-C src testgui"
|
echo "TEST=-C src testgui"
|
||||||
fi
|
fi
|
||||||
@@ -129,6 +135,7 @@ jobs:
|
|||||||
if ${{ contains(matrix.extra, 'vimtags') }}; then
|
if ${{ contains(matrix.extra, 'vimtags') }}; then
|
||||||
echo "TEST=-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim"
|
echo "TEST=-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim"
|
||||||
fi
|
fi
|
||||||
|
echo "CFLAGS=$CFLAGS"
|
||||||
) >> $GITHUB_ENV
|
) >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Set up system
|
- name: Set up system
|
||||||
@@ -200,18 +207,18 @@ jobs:
|
|||||||
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||||
do_test make ${SHADOWOPT} ${TEST}
|
do_test make ${SHADOWOPT} ${TEST}
|
||||||
|
|
||||||
- name: Coveralls
|
# - name: Coveralls
|
||||||
if: matrix.coverage && success() && github.event_name != 'pull_request'
|
# if: matrix.coverage && success() && github.event_name != 'pull_request'
|
||||||
env:
|
# env:
|
||||||
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
||||||
COVERALLS_PARALLEL: true
|
# COVERALLS_PARALLEL: true
|
||||||
TRAVIS_JOB_ID: ${{ github.run_id }}
|
# TRAVIS_JOB_ID: ${{ github.run_id }}
|
||||||
run: |
|
# run: |
|
||||||
sudo apt-get install -y python3-setuptools python3-wheel
|
# sudo apt-get install -y python3-setuptools python3-wheel
|
||||||
sudo -H pip3 install pip -U
|
# sudo -H pip3 install pip -U
|
||||||
# needed for https support for coveralls building cffi only works with gcc, not with clang
|
# # needed for https support for coveralls building cffi only works with gcc, not with clang
|
||||||
CC=gcc pip3 install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
|
# CC=gcc pip3 install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
|
||||||
~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
# ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
||||||
|
|
||||||
- name: Codecov
|
- name: Codecov
|
||||||
if: matrix.coverage && success()
|
if: matrix.coverage && success()
|
||||||
@@ -227,18 +234,18 @@ jobs:
|
|||||||
false # in order to fail a job
|
false # in order to fail a job
|
||||||
done
|
done
|
||||||
|
|
||||||
coveralls:
|
# coveralls:
|
||||||
runs-on: ubuntu-18.04
|
# runs-on: ubuntu-18.04
|
||||||
|
#
|
||||||
needs: linux
|
# needs: linux
|
||||||
if: always() && github.event_name != 'pull_request'
|
# if: always() && github.event_name != 'pull_request'
|
||||||
|
#
|
||||||
steps:
|
# steps:
|
||||||
- name: Parallel finished
|
# - name: Parallel finished
|
||||||
env:
|
# env:
|
||||||
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
||||||
run: |
|
# run: |
|
||||||
curl -k "https://coveralls.io/webhook?repo_token=${COVERALLS_REPO_TOKEN}" -d "payload[build_num]=${GITHUB_RUN_ID}&payload[status]=done"
|
# curl -k "https://coveralls.io/webhook?repo_token=${COVERALLS_REPO_TOKEN}" -d "payload[build_num]=${GITHUB_RUN_ID}&payload[status]=done"
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
@@ -365,7 +372,7 @@ jobs:
|
|||||||
features: NORMAL
|
features: NORMAL
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Initalize
|
- name: Initialize
|
||||||
id: init
|
id: init
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
2
.github/workflows/codeql-analysis.yml
vendored
2
.github/workflows/codeql-analysis.yml
vendored
@@ -38,7 +38,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
languages: ${{ matrix.language }}
|
languages: ${{ matrix.language }}
|
||||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||||
# By default, queries listed here will override any specified in a config file.
|
# By default, queries listed here will override any specified in a config file.
|
||||||
# Prefix the list here with "+" to use these queries and those in the config file.
|
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||||
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||||
|
|
||||||
|
|||||||
80
.github/workflows/coverity.yml
vendored
Normal file
80
.github/workflows/coverity.yml
vendored
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
name: Coverity
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '42 0 * * *' # Run once per day, to avoid Coverity's submission limits
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
scan:
|
||||||
|
runs-on: ubuntu-18.04
|
||||||
|
|
||||||
|
env:
|
||||||
|
CC: gcc
|
||||||
|
DEBIAN_FRONTEND: noninteractive
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Download Coverity
|
||||||
|
run: |
|
||||||
|
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=vim" -O coverity_tool.tgz
|
||||||
|
mkdir cov-scan
|
||||||
|
tar ax -f coverity_tool.tgz --strip-components=1 -C cov-scan
|
||||||
|
env:
|
||||||
|
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
|
||||||
|
|
||||||
|
- name: Install packages
|
||||||
|
run: |
|
||||||
|
sudo apt update && sudo apt install -y \
|
||||||
|
autoconf \
|
||||||
|
gettext \
|
||||||
|
libcanberra-dev \
|
||||||
|
libperl-dev \
|
||||||
|
python-dev \
|
||||||
|
python3-dev \
|
||||||
|
liblua5.3-dev \
|
||||||
|
lua5.3 \
|
||||||
|
ruby-dev \
|
||||||
|
tcl-dev \
|
||||||
|
libgtk2.0-dev \
|
||||||
|
desktop-file-utils \
|
||||||
|
libtool-bin \
|
||||||
|
libsodium-dev
|
||||||
|
|
||||||
|
- name: Set up environment
|
||||||
|
run: |
|
||||||
|
echo "$(pwd)/cov-scan/bin" >> $GITHUB_PATH
|
||||||
|
(
|
||||||
|
echo "NPROC=$(getconf _NPROCESSORS_ONLN)"
|
||||||
|
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||||
|
) >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Set up system
|
||||||
|
run: |
|
||||||
|
# Setup lua5.3 manually since its package doesn't provide alternative.
|
||||||
|
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
|
||||||
|
sudo update-alternatives --install /usr/bin/lua lua /usr/bin/lua5.3 10
|
||||||
|
|
||||||
|
- name: Configure
|
||||||
|
run: |
|
||||||
|
./configure --with-features=huge ${CONFOPT} --enable-fail-if-missing
|
||||||
|
# Append various warning flags to CFLAGS.
|
||||||
|
sed -i -f ci/config.mk.sed src/auto/config.mk
|
||||||
|
sed -i -f ci/config.mk.${CC}.sed src/auto/config.mk
|
||||||
|
|
||||||
|
- name: Build/scan vim
|
||||||
|
run: |
|
||||||
|
cov-build --dir cov-int make -j${NPROC}
|
||||||
|
|
||||||
|
- name: Submit results
|
||||||
|
run: |
|
||||||
|
tar zcf cov-scan.tgz cov-int
|
||||||
|
curl --form token=$TOKEN \
|
||||||
|
--form email=$EMAIL \
|
||||||
|
--form file=@cov-scan.tgz \
|
||||||
|
--form version="$(git rev-parse HEAD)" \
|
||||||
|
--form description="Automatic GHA scan" \
|
||||||
|
'https://scan.coverity.com/builds?project=vim'
|
||||||
|
env:
|
||||||
|
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
|
||||||
|
EMAIL: ${{ secrets.COVERITY_SCAN_EMAIL }}
|
||||||
@@ -57,7 +57,7 @@ If you find a problem with one of these files or have a suggestion for
|
|||||||
improvement, please first try to contact the maintainer directly.
|
improvement, please first try to contact the maintainer directly.
|
||||||
Look in the header of the file for the name and email address.
|
Look in the header of the file for the name and email address.
|
||||||
|
|
||||||
The maintainer will take care of issues and send updates to Bram for
|
The maintainer will take care of issues and send updates to Bram for
|
||||||
distribution with Vim.
|
distribution with Vim.
|
||||||
|
|
||||||
If the maintainer does not respond, contact the vim-dev maillist.
|
If the maintainer does not respond, contact the vim-dev maillist.
|
||||||
|
|||||||
5
Filelist
5
Filelist
@@ -9,6 +9,7 @@ SRC_ALL = \
|
|||||||
.github/CODEOWNERS \
|
.github/CODEOWNERS \
|
||||||
.github/workflows/ci.yml \
|
.github/workflows/ci.yml \
|
||||||
.github/workflows/codeql-analysis.yml \
|
.github/workflows/codeql-analysis.yml \
|
||||||
|
.github/workflows/coverity.yml \
|
||||||
.gitignore \
|
.gitignore \
|
||||||
.hgignore \
|
.hgignore \
|
||||||
.lgtm.yml \
|
.lgtm.yml \
|
||||||
@@ -23,6 +24,7 @@ SRC_ALL = \
|
|||||||
ci/setup-xvfb.sh \
|
ci/setup-xvfb.sh \
|
||||||
src/Make_all.mak \
|
src/Make_all.mak \
|
||||||
src/README.md \
|
src/README.md \
|
||||||
|
src/alloc.c \
|
||||||
src/alloc.h \
|
src/alloc.h \
|
||||||
src/arabic.c \
|
src/arabic.c \
|
||||||
src/arglist.c \
|
src/arglist.c \
|
||||||
@@ -134,6 +136,7 @@ SRC_ALL = \
|
|||||||
src/spell.h \
|
src/spell.h \
|
||||||
src/spellfile.c \
|
src/spellfile.c \
|
||||||
src/spellsuggest.c \
|
src/spellsuggest.c \
|
||||||
|
src/strings.c \
|
||||||
src/structs.h \
|
src/structs.h \
|
||||||
src/syntax.c \
|
src/syntax.c \
|
||||||
src/tag.c \
|
src/tag.c \
|
||||||
@@ -209,6 +212,7 @@ SRC_ALL = \
|
|||||||
src/testdir/popupbounce.vim \
|
src/testdir/popupbounce.vim \
|
||||||
src/proto.h \
|
src/proto.h \
|
||||||
src/protodef.h \
|
src/protodef.h \
|
||||||
|
src/proto/alloc.pro \
|
||||||
src/proto/arabic.pro \
|
src/proto/arabic.pro \
|
||||||
src/proto/arglist.pro \
|
src/proto/arglist.pro \
|
||||||
src/proto/autocmd.pro \
|
src/proto/autocmd.pro \
|
||||||
@@ -296,6 +300,7 @@ SRC_ALL = \
|
|||||||
src/proto/spell.pro \
|
src/proto/spell.pro \
|
||||||
src/proto/spellfile.pro \
|
src/proto/spellfile.pro \
|
||||||
src/proto/spellsuggest.pro \
|
src/proto/spellsuggest.pro \
|
||||||
|
src/proto/strings.pro \
|
||||||
src/proto/syntax.pro \
|
src/proto/syntax.pro \
|
||||||
src/proto/tag.pro \
|
src/proto/tag.pro \
|
||||||
src/proto/term.pro \
|
src/proto/term.pro \
|
||||||
|
|||||||
20
README.md
20
README.md
@@ -4,6 +4,12 @@
|
|||||||
|
|
||||||
<sub>For translations of this README see the end.</sub>
|
<sub>For translations of this README see the end.</sub>
|
||||||
|
|
||||||
|
If you find a bug or want to discuss the best way to add a new feature, please
|
||||||
|
open an [issue](https://github.com/vim/vim/issues).
|
||||||
|
If you have a question or want to discuss the best way to do something with
|
||||||
|
Vim, you can use [StackExchange](https://vi.stackexchange.com/)
|
||||||
|
or one of the [Maillists](https://www.vim.org/community.php).
|
||||||
|
|
||||||
|
|
||||||
## What is Vim? ##
|
## What is Vim? ##
|
||||||
|
|
||||||
@@ -40,7 +46,7 @@ This `README.md` file comes with the runtime archive. It includes the
|
|||||||
documentation, syntax files and other files that are used at runtime. To run
|
documentation, syntax files and other files that are used at runtime. To run
|
||||||
Vim you must get either one of the binary archives or a source archive.
|
Vim you must get either one of the binary archives or a source archive.
|
||||||
Which one you need depends on the system you want to run it on and whether you
|
Which one you need depends on the system you want to run it on and whether you
|
||||||
want or must compile it yourself. Check http://www.vim.org/download.php for
|
want or must compile it yourself. Check https://www.vim.org/download.php for
|
||||||
an overview of currently available distributions.
|
an overview of currently available distributions.
|
||||||
|
|
||||||
Some popular places to get the latest Vim:
|
Some popular places to get the latest Vim:
|
||||||
@@ -80,7 +86,7 @@ The Vim tutor is a one hour training course for beginners. Often it can be
|
|||||||
started as `vimtutor`. See `:help tutor` for more information.
|
started as `vimtutor`. See `:help tutor` for more information.
|
||||||
|
|
||||||
The best is to use `:help` in Vim. If you don't have an executable yet, read
|
The best is to use `:help` in Vim. If you don't have an executable yet, read
|
||||||
[`runtime/doc/help.txt`](/runtime/doc/help.txt).
|
[`runtime/doc/help.txt`](/runtime/doc/help.txt).
|
||||||
It contains pointers to the other documentation files.
|
It contains pointers to the other documentation files.
|
||||||
The User Manual reads like a book and is recommended to learn to use
|
The User Manual reads like a book and is recommended to learn to use
|
||||||
Vim. See `:help user-manual`.
|
Vim. See `:help user-manual`.
|
||||||
@@ -111,7 +117,7 @@ in Uganda. See [`runtime/doc/uganda.txt`](runtime/doc/uganda.txt). But
|
|||||||
at the same time donations increase Bram's motivation to keep working on Vim!
|
at the same time donations increase Bram's motivation to keep working on Vim!
|
||||||
|
|
||||||
For the most recent information about sponsoring look on the Vim web site:
|
For the most recent information about sponsoring look on the Vim web site:
|
||||||
http://www.vim.org/sponsor/
|
https://www.vim.org/sponsor/
|
||||||
|
|
||||||
|
|
||||||
## Contributing ##
|
## Contributing ##
|
||||||
@@ -123,15 +129,15 @@ If you would like to help making Vim better, see the
|
|||||||
## Information ##
|
## Information ##
|
||||||
|
|
||||||
The latest news about Vim can be found on the Vim home page:
|
The latest news about Vim can be found on the Vim home page:
|
||||||
http://www.vim.org/
|
https://www.vim.org/
|
||||||
|
|
||||||
If you have problems, have a look at the Vim documentation or tips:
|
If you have problems, have a look at the Vim documentation or tips:
|
||||||
http://www.vim.org/docs.php
|
https://www.vim.org/docs.php
|
||||||
http://vim.wikia.com/wiki/Vim_Tips_Wiki
|
https://vim.fandom.com/wiki/Vim_Tips_Wiki
|
||||||
|
|
||||||
If you still have problems or any other questions, use one of the mailing
|
If you still have problems or any other questions, use one of the mailing
|
||||||
lists to discuss them with Vim users and developers:
|
lists to discuss them with Vim users and developers:
|
||||||
http://www.vim.org/maillist.php
|
https://www.vim.org/maillist.php
|
||||||
|
|
||||||
If nothing else works, report bugs directly:
|
If nothing else works, report bugs directly:
|
||||||
Bram Moolenaar <Bram@vim.org>
|
Bram Moolenaar <Bram@vim.org>
|
||||||
|
|||||||
12
README.txt
12
README.txt
@@ -33,7 +33,7 @@ This README.txt file comes with the runtime archive. It includes the
|
|||||||
documentation, syntax files and other files that are used at runtime. To run
|
documentation, syntax files and other files that are used at runtime. To run
|
||||||
Vim you must get either one of the binary archives or a source archive.
|
Vim you must get either one of the binary archives or a source archive.
|
||||||
Which one you need depends on the system you want to run it on and whether you
|
Which one you need depends on the system you want to run it on and whether you
|
||||||
want or must compile it yourself. Check "http://www.vim.org/download.php" for
|
want or must compile it yourself. Check "https://www.vim.org/download.php" for
|
||||||
an overview of currently available distributions.
|
an overview of currently available distributions.
|
||||||
|
|
||||||
Some popular places to get the latest Vim:
|
Some popular places to get the latest Vim:
|
||||||
@@ -101,7 +101,7 @@ increase Bram's motivation to keep working on Vim!
|
|||||||
|
|
||||||
For the most recent information about sponsoring look on the Vim web site:
|
For the most recent information about sponsoring look on the Vim web site:
|
||||||
|
|
||||||
http://www.vim.org/sponsor/
|
https://www.vim.org/sponsor/
|
||||||
|
|
||||||
|
|
||||||
CONTRIBUTING
|
CONTRIBUTING
|
||||||
@@ -112,15 +112,15 @@ If you would like to help making Vim better, see the CONTRIBUTING.md file.
|
|||||||
INFORMATION
|
INFORMATION
|
||||||
|
|
||||||
The latest news about Vim can be found on the Vim home page:
|
The latest news about Vim can be found on the Vim home page:
|
||||||
http://www.vim.org/
|
https://www.vim.org/
|
||||||
|
|
||||||
If you have problems, have a look at the Vim documentation or tips:
|
If you have problems, have a look at the Vim documentation or tips:
|
||||||
http://www.vim.org/docs.php
|
https://www.vim.org/docs.php
|
||||||
http://vim.wikia.com/wiki/Vim_Tips_Wiki
|
https://vim.fandom.com/wiki/Vim_Tips_Wiki
|
||||||
|
|
||||||
If you still have problems or any other questions, use one of the mailing
|
If you still have problems or any other questions, use one of the mailing
|
||||||
lists to discuss them with Vim users and developers:
|
lists to discuss them with Vim users and developers:
|
||||||
http://www.vim.org/maillist.php
|
https://www.vim.org/maillist.php
|
||||||
|
|
||||||
If nothing else works, report bugs directly:
|
If nothing else works, report bugs directly:
|
||||||
Bram Moolenaar <Bram@vim.org>
|
Bram Moolenaar <Bram@vim.org>
|
||||||
|
|||||||
@@ -45,14 +45,16 @@ full code is below):
|
|||||||
| Vim old | 5.018541 |
|
| Vim old | 5.018541 |
|
||||||
| Python | 0.369598 |
|
| Python | 0.369598 |
|
||||||
| Lua | 0.078817 |
|
| Lua | 0.078817 |
|
||||||
|
| LuaJit | 0.004245 |
|
||||||
| Vim new | 0.073595 |
|
| Vim new | 0.073595 |
|
||||||
|
|
||||||
That looks very promising! It's just one example, but it shows how much
|
That looks very promising! It's just one example, but it shows how much
|
||||||
we can gain, and also that Vim script can be faster than builtin
|
we can gain, and also that Vim script can be faster than builtin
|
||||||
interfaces.
|
interfaces.
|
||||||
|
|
||||||
In practice the script would not do something useless as counting but change
|
LuaJit is much faster at Lua-only instructions. In practice the script would
|
||||||
the text. For example, reindent all the lines:
|
not do something useless as counting but change the text. For example,
|
||||||
|
reindent all the lines:
|
||||||
|
|
||||||
``` vim
|
``` vim
|
||||||
let totallen = 0
|
let totallen = 0
|
||||||
@@ -64,13 +66,17 @@ the text. For example, reindent all the lines:
|
|||||||
|
|
||||||
| how | time in sec |
|
| how | time in sec |
|
||||||
| --------| -------- |
|
| --------| -------- |
|
||||||
| Vim old | 0.853752 |
|
| Vim old | 0.578598 |
|
||||||
| Python | 0.304584 |
|
| Python | 0.152040 |
|
||||||
| Lua | 0.286573 |
|
| Lua | 0.164917 |
|
||||||
| Vim new | 0.190276 |
|
| LuaJit | 0.128400 |
|
||||||
|
| Vim new | 0.079692 |
|
||||||
|
|
||||||
|
[These times were measured on a different system by Dominique Pelle]
|
||||||
|
|
||||||
The differences are smaller, but Vim 9 script is clearly the fastest.
|
The differences are smaller, but Vim 9 script is clearly the fastest.
|
||||||
Using LuaJIT gives 0.25, only a little bit faster than plain Lua.
|
Using LuaJIT is only a little bit faster than plain Lua here, clearly the call
|
||||||
|
back to the Vim code is costly.
|
||||||
|
|
||||||
How does Vim9 script work? The function is first compiled into a sequence of
|
How does Vim9 script work? The function is first compiled into a sequence of
|
||||||
instructions. Each instruction has one or two parameters and a stack is
|
instructions. Each instruction has one or two parameters and a stack is
|
||||||
@@ -331,7 +337,7 @@ let start = reltime()
|
|||||||
echo Python()
|
echo Python()
|
||||||
echo 'Python: ' .. reltimestr(reltime(start))
|
echo 'Python: ' .. reltimestr(reltime(start))
|
||||||
bwipe!
|
bwipe!
|
||||||
|
|
||||||
new
|
new
|
||||||
call setline(1, range(100000))
|
call setline(1, range(100000))
|
||||||
let start = reltime()
|
let start = reltime()
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ Unpack the images:
|
|||||||
cd nsis
|
cd nsis
|
||||||
unzip icons.zip
|
unzip icons.zip
|
||||||
|
|
||||||
To build then, enter:
|
Then build gvim.exe:
|
||||||
|
|
||||||
cd nsis
|
cd nsis
|
||||||
makensis gvim.nsi
|
makensis gvim.nsi
|
||||||
|
|||||||
@@ -126,10 +126,11 @@ RequestExecutionLevel highest
|
|||||||
# This adds '\Vim' to the user choice automagically. The actual value is
|
# This adds '\Vim' to the user choice automagically. The actual value is
|
||||||
# obtained below with CheckOldVim.
|
# obtained below with CheckOldVim.
|
||||||
!ifdef WIN64
|
!ifdef WIN64
|
||||||
InstallDir "$PROGRAMFILES64\Vim"
|
!define DEFAULT_INSTDIR "$PROGRAMFILES64\Vim"
|
||||||
!else
|
!else
|
||||||
InstallDir "$PROGRAMFILES\Vim"
|
!define DEFAULT_INSTDIR "$PROGRAMFILES\Vim"
|
||||||
!endif
|
!endif
|
||||||
|
InstallDir ${DEFAULT_INSTDIR}
|
||||||
|
|
||||||
# Types of installs we can perform:
|
# Types of installs we can perform:
|
||||||
InstType $(str_type_typical)
|
InstType $(str_type_typical)
|
||||||
@@ -710,8 +711,13 @@ Function .onInit
|
|||||||
!insertmacro MUI_LANGDLL_DISPLAY
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Check $VIM
|
${If} $INSTDIR == ${DEFAULT_INSTDIR}
|
||||||
ReadEnvStr $INSTDIR "VIM"
|
# Check $VIM
|
||||||
|
ReadEnvStr $3 "VIM"
|
||||||
|
${If} $3 != ""
|
||||||
|
StrCpy $INSTDIR $3
|
||||||
|
${EndIf}
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
call CheckOldVim
|
call CheckOldVim
|
||||||
Pop $3
|
Pop $3
|
||||||
@@ -721,20 +727,11 @@ Function .onInit
|
|||||||
SectionSetInstTypes ${id_section_old_ver} 0
|
SectionSetInstTypes ${id_section_old_ver} 0
|
||||||
SectionSetText ${id_section_old_ver} ""
|
SectionSetText ${id_section_old_ver} ""
|
||||||
${Else}
|
${Else}
|
||||||
${If} $INSTDIR == ""
|
${If} $INSTDIR == ${DEFAULT_INSTDIR}
|
||||||
StrCpy $INSTDIR $3
|
StrCpy $INSTDIR $3
|
||||||
${EndIf}
|
${EndIf}
|
||||||
${EndIf}
|
${EndIf}
|
||||||
|
|
||||||
# If did not find a path: use the default dir.
|
|
||||||
${If} $INSTDIR == ""
|
|
||||||
!ifdef WIN64
|
|
||||||
StrCpy $INSTDIR "$PROGRAMFILES64\Vim"
|
|
||||||
!else
|
|
||||||
StrCpy $INSTDIR "$PROGRAMFILES\Vim"
|
|
||||||
!endif
|
|
||||||
${EndIf}
|
|
||||||
|
|
||||||
${If} ${RunningX64}
|
${If} ${RunningX64}
|
||||||
SetRegView 64
|
SetRegView 64
|
||||||
${EndIf}
|
${EndIf}
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ LangString ^SetupCaption ${LANG_TURKISH} \
|
|||||||
"$(^Name) Setup"
|
"$(^Name) Setup"
|
||||||
LangString ^UninstallCaption ${LANG_TURKISH} \
|
LangString ^UninstallCaption ${LANG_TURKISH} \
|
||||||
"$(^Name) Uninstall"
|
"$(^Name) Uninstall"
|
||||||
|
|
||||||
LangString str_show_readme ${LANG_TURKISH} \
|
LangString str_show_readme ${LANG_TURKISH} \
|
||||||
"Kurulum bittikten sonra README dosyasını aç"
|
"Kurulum bittikten sonra README dosyasını aç"
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ LangString str_type_minimal ${LANG_TURKISH} \
|
|||||||
|
|
||||||
LangString str_type_full ${LANG_TURKISH} \
|
LangString str_type_full ${LANG_TURKISH} \
|
||||||
"Tam"
|
"Tam"
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# Section Titles & Description {{{1
|
# Section Titles & Description {{{1
|
||||||
##############################################################################
|
##############################################################################
|
||||||
@@ -62,12 +62,12 @@ LangString str_section_start_menu ${LANG_TURKISH} \
|
|||||||
"Başlat Menüsü - Programlar klasöründe"
|
"Başlat Menüsü - Programlar klasöründe"
|
||||||
LangString str_desc_start_menu ${LANG_TURKISH} \
|
LangString str_desc_start_menu ${LANG_TURKISH} \
|
||||||
"Vim kısayolunu Başlat Menüsüne ekler."
|
"Vim kısayolunu Başlat Menüsüne ekler."
|
||||||
|
|
||||||
LangString str_section_edit_with ${LANG_TURKISH} \
|
LangString str_section_edit_with ${LANG_TURKISH} \
|
||||||
"Vim ile Aç"
|
"Vim ile Aç"
|
||||||
LangString str_desc_edit_with ${LANG_TURKISH} \
|
LangString str_desc_edit_with ${LANG_TURKISH} \
|
||||||
"Vim'i $\"Birlikte aç$\" sağ tık menüsüne ekler."
|
"Vim'i $\"Birlikte aç$\" sağ tık menüsüne ekler."
|
||||||
|
|
||||||
LangString str_section_vim_rc ${LANG_TURKISH} \
|
LangString str_section_vim_rc ${LANG_TURKISH} \
|
||||||
"Bir yapılandırma dosyası oluştur"
|
"Bir yapılandırma dosyası oluştur"
|
||||||
LangString str_desc_vim_rc ${LANG_TURKISH} \
|
LangString str_desc_vim_rc ${LANG_TURKISH} \
|
||||||
@@ -93,7 +93,7 @@ LangString str_desc_plugin_vim ${LANG_TURKISH} \
|
|||||||
LangString str_section_vis_vim ${LANG_TURKISH} \
|
LangString str_section_vis_vim ${LANG_TURKISH} \
|
||||||
"VisVim eklentisi"
|
"VisVim eklentisi"
|
||||||
LangString str_desc_vis_vim ${LANG_TURKISH} \
|
LangString str_desc_vis_vim ${LANG_TURKISH} \
|
||||||
"Microsoft Visual Studio entegrasyonu için VisVim eklentisi"
|
"Microsoft Visual Studio entegrasyonu için VisVim eklentisi"
|
||||||
|
|
||||||
LangString str_section_nls ${LANG_TURKISH} \
|
LangString str_section_nls ${LANG_TURKISH} \
|
||||||
"Ek dil desteği"
|
"Ek dil desteği"
|
||||||
@@ -129,14 +129,14 @@ LangString str_unsection_rootdir ${LANG_TURKISH} \
|
|||||||
"Vim kök dizinini kaldır"
|
"Vim kök dizinini kaldır"
|
||||||
LangString str_desc_rm_rootdir ${LANG_TURKISH} \
|
LangString str_desc_rm_rootdir ${LANG_TURKISH} \
|
||||||
"Vim kök dizinini kaldırır. Bu dizin Vim yapılandırma dosyalarını içerir!"
|
"Vim kök dizinini kaldırır. Bu dizin Vim yapılandırma dosyalarını içerir!"
|
||||||
|
|
||||||
LangString str_msg_install_fail ${LANG_TURKISH} \
|
LangString str_msg_install_fail ${LANG_TURKISH} \
|
||||||
"Yükleme başarısız oldu. Yeniden deneyin."
|
"Yükleme başarısız oldu. Yeniden deneyin."
|
||||||
|
|
||||||
LangString str_msg_rm_exe_fail ${LANG_TURKISH} \
|
LangString str_msg_rm_exe_fail ${LANG_TURKISH} \
|
||||||
"$0 içindeki bazı dosyalar silinemedi!$\r$\n\
|
"$0 içindeki bazı dosyalar silinemedi!$\r$\n\
|
||||||
Bu dosyaları el ile kaldırmalısınız."
|
Bu dosyaları el ile kaldırmalısınız."
|
||||||
|
|
||||||
LangString str_msg_uninstalling ${LANG_TURKISH} \
|
LangString str_msg_uninstalling ${LANG_TURKISH} \
|
||||||
"Eski sürüm kaldırılıyor..."
|
"Eski sürüm kaldırılıyor..."
|
||||||
|
|
||||||
|
|||||||
@@ -3,11 +3,9 @@
|
|||||||
prefix=stock_
|
prefix=stock_
|
||||||
list=
|
list=
|
||||||
|
|
||||||
for file in "$@"
|
for file in "$@"; do
|
||||||
do
|
name=$(echo "$file" | sed 's|-|_|g; s|^.*/||; s|\..*$||')
|
||||||
name=`echo "$file" | sed 's|-|_|g; s|^.*/||; s|\..*$||'`
|
|
||||||
list="$list $prefix$name $file"
|
list="$list $prefix$name $file"
|
||||||
done
|
done
|
||||||
|
|
||||||
gdk-pixbuf-csource --raw --static --build-list $list
|
gdk-pixbuf-csource --raw --static --build-list $list
|
||||||
|
|
||||||
|
|||||||
@@ -67,13 +67,13 @@ if exists ('g:ada_with_gnat_project_files')
|
|||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Section: add standart exception {{{2
|
" Section: add standard exception {{{2
|
||||||
"
|
"
|
||||||
for Item in ['Constraint_Error', 'Program_Error', 'Storage_Error', 'Tasking_Error', 'Status_Error', 'Mode_Error', 'Name_Error', 'Use_Error', 'Device_Error', 'End_Error', 'Data_Error', 'Layout_Error', 'Length_Error', 'Pattern_Error', 'Index_Error', 'Translation_Error', 'Time_Error', 'Argument_Error', 'Tag_Error', 'Picture_Error', 'Terminator_Error', 'Conversion_Error', 'Pointer_Error', 'Dereference_Error', 'Update_Error']
|
for Item in ['Constraint_Error', 'Program_Error', 'Storage_Error', 'Tasking_Error', 'Status_Error', 'Mode_Error', 'Name_Error', 'Use_Error', 'Device_Error', 'End_Error', 'Data_Error', 'Layout_Error', 'Length_Error', 'Pattern_Error', 'Index_Error', 'Translation_Error', 'Time_Error', 'Argument_Error', 'Tag_Error', 'Picture_Error', 'Terminator_Error', 'Conversion_Error', 'Pointer_Error', 'Dereference_Error', 'Update_Error']
|
||||||
let g:ada#Keywords += [{
|
let g:ada#Keywords += [{
|
||||||
\ 'word': Item,
|
\ 'word': Item,
|
||||||
\ 'menu': 'exception',
|
\ 'menu': 'exception',
|
||||||
\ 'info': 'Ada standart exception.',
|
\ 'info': 'Ada standard exception.',
|
||||||
\ 'kind': 'x',
|
\ 'kind': 'x',
|
||||||
\ 'icase': 1}]
|
\ 'icase': 1}]
|
||||||
endfor
|
endfor
|
||||||
@@ -210,7 +210,7 @@ function ada#Word (...)
|
|||||||
let l:Line = substitute (getline (l:Line_Nr), g:ada#Comment, '', '' )
|
let l:Line = substitute (getline (l:Line_Nr), g:ada#Comment, '', '' )
|
||||||
|
|
||||||
" Cope with tag searching for items in comments; if we are, don't loop
|
" Cope with tag searching for items in comments; if we are, don't loop
|
||||||
" backards looking for previous lines
|
" backwards looking for previous lines
|
||||||
if l:Column_Nr > strlen(l:Line)
|
if l:Column_Nr > strlen(l:Line)
|
||||||
" We were in a comment
|
" We were in a comment
|
||||||
let l:Line = getline(l:Line_Nr)
|
let l:Line = getline(l:Line_Nr)
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
" 15.10.2006 MK Bram's suggestion for runtime integration
|
" 15.10.2006 MK Bram's suggestion for runtime integration
|
||||||
" 05.11.2006 MK Bram suggested not to use include protection for
|
" 05.11.2006 MK Bram suggested not to use include protection for
|
||||||
" autoload
|
" autoload
|
||||||
" 05.11.2006 MK Bram suggested agaist using setlocal omnifunc
|
" 05.11.2006 MK Bram suggested against using setlocal omnifunc
|
||||||
" 05.11.2006 MK Bram suggested to save on spaces
|
" 05.11.2006 MK Bram suggested to save on spaces
|
||||||
" Help Page: ft-ada-omni
|
" Help Page: ft-ada-omni
|
||||||
"------------------------------------------------------------------------------
|
"------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
" plus CSS Speech Module <http://www.w3.org/TR/css3-speech/>
|
" plus CSS Speech Module <http://www.w3.org/TR/css3-speech/>
|
||||||
" Maintainer: Kao, Wei-Ko(othree) ( othree AT gmail DOT com )
|
" Maintainer: Kao, Wei-Ko(othree) ( othree AT gmail DOT com )
|
||||||
" Original Author: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
" Original Author: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||||
" Last Change: 2018 Jul 02
|
" Last Change: 2021 Sep 21
|
||||||
|
|
||||||
let s:values = split("all additive-symbols align-content align-items align-self animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-repeat background-size block-size border border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-decoration-break box-shadow box-sizing break-after break-before break-inside caption-side clear clip clip-path color columns column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cue cue-before cue-after cursor direction display empty-cells fallback filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float font font-family font-feature-settings font-kerning font-language-override font-size font-size-adjust font-stretch font-style font-synthesis font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-ligatures font-variant-numeric font-variant-position font-weight grid grid-area grid-auto-columns grid-auto-flow grid-auto-position grid-auto-rows grid-column grid-column-start grid-column-end grid-row grid-row-start grid-row-end grid-template grid-template-areas grid-template-rows grid-template-columns height hyphens image-rendering image-resolution image-orientation ime-mode inline-size isolation justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-block-end margin-block-start margin-bottom margin-inline-end margin-inline-start margin-left margin-right margin-top marks mask mask-type max-block-size max-height max-inline-size max-width max-zoom min-block-size min-height min-inline-size min-width min-zoom mix-blend-mode negative object-fit object-position offset-block-end offset-block-start offset-inline-end offset-inline-start opacity order orientation orphans outline outline-color outline-offset outline-style outline-width overflow overflow-wrap overflow-x overflow-y pad padding padding-block-end padding-block-start padding-bottom padding-inline-end padding-inline-start padding-left padding-right padding-top page-break-after page-break-before page-break-inside pause-before pause-after pause perspective perspective-origin pointer-events position prefix quotes range resize rest rest-before rest-after right ruby-align ruby-merge ruby-position scroll-behavior scroll-snap-coordinate scroll-snap-destination scroll-snap-points-x scroll-snap-points-y scroll-snap-type scroll-snap-type-x scroll-snap-type-y shape-image-threshold shape-margin shape-outside speak speak-as suffix symbols system table-layout tab-size text-align text-align-last text-combine-upright text-decoration text-decoration-color text-decoration-line text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-transform text-underline-position top touch-action transform transform-box transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi unicode-range user-zoom vertical-align visibility voice-balance voice-duration voice-family voice-pitch voice-rate voice-range voice-stress voice-volume white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index zoom")
|
let s:values = split("all additive-symbols align-content align-items align-self animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-repeat background-size block-size border border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-decoration-break box-shadow box-sizing break-after break-before break-inside caption-side clear clip clip-path color columns column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cue cue-before cue-after cursor direction display empty-cells fallback filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float font font-family font-feature-settings font-kerning font-language-override font-size font-size-adjust font-stretch font-style font-synthesis font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-ligatures font-variant-numeric font-variant-position font-weight grid grid-area grid-auto-columns grid-auto-flow grid-auto-position grid-auto-rows grid-column grid-column-start grid-column-end grid-row grid-row-start grid-row-end grid-template grid-template-areas grid-template-rows grid-template-columns height hyphens image-rendering image-resolution image-orientation ime-mode inline-size isolation justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-block-end margin-block-start margin-bottom margin-inline-end margin-inline-start margin-left margin-right margin-top marks mask mask-type max-block-size max-height max-inline-size max-width max-zoom min-block-size min-height min-inline-size min-width min-zoom mix-blend-mode negative object-fit object-position offset-block-end offset-block-start offset-inline-end offset-inline-start opacity order orientation orphans outline outline-color outline-offset outline-style outline-width overflow overflow-wrap overflow-x overflow-y pad padding padding-block-end padding-block-start padding-bottom padding-inline-end padding-inline-start padding-left padding-right padding-top page-break-after page-break-before page-break-inside pause-before pause-after pause perspective perspective-origin pointer-events position prefix quotes range resize rest rest-before rest-after right ruby-align ruby-merge ruby-position scroll-behavior scroll-snap-coordinate scroll-snap-destination scroll-snap-points-x scroll-snap-points-y scroll-snap-type scroll-snap-type-x scroll-snap-type-y shape-image-threshold shape-margin shape-outside speak speak-as suffix symbols system table-layout tab-size text-align text-align-last text-combine-upright text-decoration text-decoration-color text-decoration-line text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-transform text-underline-position top touch-action transform transform-box transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi unicode-range user-zoom vertical-align visibility voice-balance voice-duration voice-family voice-pitch voice-rate voice-range voice-stress voice-volume white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index zoom")
|
||||||
|
|
||||||
@@ -38,12 +38,12 @@ function! csscomplete#CompleteCSS(findstart, base)
|
|||||||
if exists("b:compl_context")
|
if exists("b:compl_context")
|
||||||
let line = getline('.')
|
let line = getline('.')
|
||||||
let compl_begin = col('.') - 2
|
let compl_begin = col('.') - 2
|
||||||
let after = line[compl_begin:]
|
let b:after = line[compl_begin:]
|
||||||
let line = b:compl_context
|
let line = b:compl_context
|
||||||
unlet! b:compl_context
|
unlet! b:compl_context
|
||||||
else
|
else
|
||||||
let line = a:base
|
let line = a:base
|
||||||
let after = ''
|
let b:after = ''
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let res = []
|
let res = []
|
||||||
@@ -311,7 +311,7 @@ function! csscomplete#CompleteCSS(findstart, base)
|
|||||||
let values = ["normal", "italic", "oblique", "small-caps", "bold", "bolder", "lighter", "100", "200", "300", "400", "500", "600", "700", "800", "900", "xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large", "larger", "smaller", "sans-serif", "serif", "monospace", "cursive", "fantasy", "caption", "icon", "menu", "message-box", "small-caption", "status-bar"]
|
let values = ["normal", "italic", "oblique", "small-caps", "bold", "bolder", "lighter", "100", "200", "300", "400", "500", "600", "700", "800", "900", "xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large", "larger", "smaller", "sans-serif", "serif", "monospace", "cursive", "fantasy", "caption", "icon", "menu", "message-box", "small-caption", "status-bar"]
|
||||||
elseif prop =~ '^\%(height\|width\)$'
|
elseif prop =~ '^\%(height\|width\)$'
|
||||||
let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"]
|
let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"]
|
||||||
elseif prop =~ '^\%(left\|rigth\)$'
|
elseif prop =~ '^\%(left\|right\)$'
|
||||||
let values = ["auto"]
|
let values = ["auto"]
|
||||||
elseif prop == 'image-rendering'
|
elseif prop == 'image-rendering'
|
||||||
let values = ["auto", "crisp-edges", "pixelated"]
|
let values = ["auto", "crisp-edges", "pixelated"]
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ endif
|
|||||||
|
|
||||||
function decada#Unit_Name () dict " {{{1
|
function decada#Unit_Name () dict " {{{1
|
||||||
" Convert filename into acs unit:
|
" Convert filename into acs unit:
|
||||||
" 1: remove the file extenstion.
|
" 1: remove the file extension.
|
||||||
" 2: replace all double '_' or '-' with an dot (which denotes a separate)
|
" 2: replace all double '_' or '-' with an dot (which denotes a separate)
|
||||||
" 3: remove a trailing '_' (which denotes a specification)
|
" 3: remove a trailing '_' (which denotes a specification)
|
||||||
return substitute (substitute (expand ("%:t:r"), '__\|-', ".", "g"), '_$', "", '')
|
return substitute (substitute (expand ("%:t:r"), '__\|-', ".", "g"), '_$', "", '')
|
||||||
|
|||||||
30
runtime/autoload/dist/ft.vim
vendored
30
runtime/autoload/dist/ft.vim
vendored
@@ -172,6 +172,17 @@ func dist#ft#FTent()
|
|||||||
setf dtd
|
setf dtd
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func dist#ft#ExCheck()
|
||||||
|
let lines = getline(1, min([line("$"), 100]))
|
||||||
|
if exists('g:filetype_euphoria')
|
||||||
|
exe 'setf ' . g:filetype_euphoria
|
||||||
|
elseif match(lines, '^--\|^ifdef\>\|^include\>') > -1
|
||||||
|
setf euphoria3
|
||||||
|
else
|
||||||
|
setf elixir
|
||||||
|
endif
|
||||||
|
endfunc
|
||||||
|
|
||||||
func dist#ft#EuphoriaCheck()
|
func dist#ft#EuphoriaCheck()
|
||||||
if exists('g:filetype_euphoria')
|
if exists('g:filetype_euphoria')
|
||||||
exe 'setf ' . g:filetype_euphoria
|
exe 'setf ' . g:filetype_euphoria
|
||||||
@@ -253,6 +264,14 @@ func dist#ft#ProtoCheck(default)
|
|||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func dist#ft#FTm()
|
func dist#ft#FTm()
|
||||||
|
if exists("g:filetype_m")
|
||||||
|
exe "setf " . g:filetype_m
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
|
" excluding end(for|function|if|switch|while) common to Murphi
|
||||||
|
let octave_block_terminators = '\<end\%(_try_catch\|classdef\|enumeration\|events\|methods\|parfor\|properties\)\>'
|
||||||
|
|
||||||
let n = 1
|
let n = 1
|
||||||
let saw_comment = 0 " Whether we've seen a multiline comment leader.
|
let saw_comment = 0 " Whether we've seen a multiline comment leader.
|
||||||
while n < 100
|
while n < 100
|
||||||
@@ -267,6 +286,12 @@ func dist#ft#FTm()
|
|||||||
setf objc
|
setf objc
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
if line =~ '^\s*\%(#\|%!\)' || line =~ '^\s*unwind_protect\>' ||
|
||||||
|
\ line =~ '\%(^\|;\)\s*' .. octave_block_terminators
|
||||||
|
setf octave
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
" TODO: could be Matlab or Octave
|
||||||
if line =~ '^\s*%'
|
if line =~ '^\s*%'
|
||||||
setf matlab
|
setf matlab
|
||||||
return
|
return
|
||||||
@@ -287,11 +312,8 @@ func dist#ft#FTm()
|
|||||||
" or Murphi based on the comment leader. Assume the former as it is more
|
" or Murphi based on the comment leader. Assume the former as it is more
|
||||||
" common.
|
" common.
|
||||||
setf objc
|
setf objc
|
||||||
elseif exists("g:filetype_m")
|
|
||||||
" Use user specified default filetype for .m
|
|
||||||
exe "setf " . g:filetype_m
|
|
||||||
else
|
else
|
||||||
" Default is matlab
|
" Default is Matlab
|
||||||
setf matlab
|
setf matlab
|
||||||
endif
|
endif
|
||||||
endfunc
|
endfunc
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ fun! getscript#GetLatestVimScripts()
|
|||||||
" insure that wget is executable
|
" insure that wget is executable
|
||||||
if executable(g:GetLatestVimScripts_wget) != 1
|
if executable(g:GetLatestVimScripts_wget) != 1
|
||||||
echoerr "GetLatestVimScripts needs ".g:GetLatestVimScripts_wget." which apparently is not available on your system"
|
echoerr "GetLatestVimScripts needs ".g:GetLatestVimScripts_wget." which apparently is not available on your system"
|
||||||
" call Dret("GetLatestVimScripts : wget not executable/availble")
|
" call Dret("GetLatestVimScripts : wget not executable/available")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -347,7 +347,7 @@ fun! s:GetOneScript(...)
|
|||||||
set t_ti= t_te= nors
|
set t_ti= t_te= nors
|
||||||
|
|
||||||
" put current line on top-of-screen and interpret it into
|
" put current line on top-of-screen and interpret it into
|
||||||
" a script identifer : used to obtain webpage
|
" a script identifier : used to obtain webpage
|
||||||
" source identifier : used to identify current version
|
" source identifier : used to identify current version
|
||||||
" and an associated comment: used to report on what's being considered
|
" and an associated comment: used to report on what's being considered
|
||||||
if a:0 >= 3
|
if a:0 >= 3
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ function! haskellcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
if b:completingLangExtension
|
if b:completingLangExtension
|
||||||
if a:base ==? ""
|
if a:base ==? ""
|
||||||
" Return all posible Lang extensions
|
" Return all possible Lang extensions
|
||||||
return s:langExtensions
|
return s:langExtensions
|
||||||
else
|
else
|
||||||
let l:matches = []
|
let l:matches = []
|
||||||
@@ -70,7 +70,7 @@ function! haskellcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
elseif b:completingOptionsGHC
|
elseif b:completingOptionsGHC
|
||||||
if a:base ==? ""
|
if a:base ==? ""
|
||||||
" Return all posible GHC options
|
" Return all possible GHC options
|
||||||
return s:optionsGHC
|
return s:optionsGHC
|
||||||
else
|
else
|
||||||
let l:matches = []
|
let l:matches = []
|
||||||
@@ -86,7 +86,7 @@ function! haskellcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
elseif b:completingModule
|
elseif b:completingModule
|
||||||
if a:base ==? ""
|
if a:base ==? ""
|
||||||
" Return all posible modules
|
" Return all possible modules
|
||||||
return s:commonModules
|
return s:commonModules
|
||||||
else
|
else
|
||||||
let l:matches = []
|
let l:matches = []
|
||||||
|
|||||||
@@ -486,7 +486,7 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
" Value of attribute completion {{{
|
" Value of attribute completion {{{
|
||||||
" If attr contains =\s*[\"'] we catched value of attribute
|
" If attr contains =\s*[\"'] we match value of attribute
|
||||||
if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
|
if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
|
||||||
" Let do attribute specific completion
|
" Let do attribute specific completion
|
||||||
let attrname = matchstr(attr, '.*\ze\s*=')
|
let attrname = matchstr(attr, '.*\ze\s*=')
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" netrw.vim: Handles file transfer and remote directory listing across
|
" netrw.vim: Handles file transfer and remote directory listing across
|
||||||
" AUTOLOAD SECTION
|
" AUTOLOAD SECTION
|
||||||
" Date: Sep 18, 2020
|
" Date: Aug 16, 2021
|
||||||
" Version: 170
|
" Version: 171
|
||||||
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||||
" Copyright: Copyright (C) 2016 Charles E. Campbell {{{1
|
" Copyright: Copyright (C) 2016 Charles E. Campbell {{{1
|
||||||
@@ -43,7 +43,7 @@ if exists("s:needspatches")
|
|||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let g:loaded_netrw = "v170"
|
let g:loaded_netrw = "v171"
|
||||||
if !exists("s:NOTE")
|
if !exists("s:NOTE")
|
||||||
let s:NOTE = 0
|
let s:NOTE = 0
|
||||||
let s:WARNING = 1
|
let s:WARNING = 1
|
||||||
@@ -93,7 +93,7 @@ fun! netrw#ErrorMsg(level,msg,errnum)
|
|||||||
else
|
else
|
||||||
let msg= level.a:msg
|
let msg= level.a:msg
|
||||||
endif
|
endif
|
||||||
let s:popuperr_id = popup_beval(msg,{})
|
let s:popuperr_id = popup_atcursor(msg,{})
|
||||||
let s:popuperr_text= ""
|
let s:popuperr_text= ""
|
||||||
elseif g:netrw_use_errorwindow
|
elseif g:netrw_use_errorwindow
|
||||||
" (default) netrw creates a one-line window to show error/warning
|
" (default) netrw creates a one-line window to show error/warning
|
||||||
@@ -322,6 +322,7 @@ call s:NetrwInit("g:netrw_banner" , 1)
|
|||||||
call s:NetrwInit("g:netrw_browse_split", 0)
|
call s:NetrwInit("g:netrw_browse_split", 0)
|
||||||
call s:NetrwInit("g:netrw_bufsettings" , "noma nomod nonu nobl nowrap ro nornu")
|
call s:NetrwInit("g:netrw_bufsettings" , "noma nomod nonu nobl nowrap ro nornu")
|
||||||
call s:NetrwInit("g:netrw_chgwin" , -1)
|
call s:NetrwInit("g:netrw_chgwin" , -1)
|
||||||
|
call s:NetrwInit("g:netrw_clipboard" , 1)
|
||||||
call s:NetrwInit("g:netrw_compress" , "gzip")
|
call s:NetrwInit("g:netrw_compress" , "gzip")
|
||||||
call s:NetrwInit("g:netrw_ctags" , "ctags")
|
call s:NetrwInit("g:netrw_ctags" , "ctags")
|
||||||
if exists("g:netrw_cursorline") && !exists("g:netrw_cursor")
|
if exists("g:netrw_cursorline") && !exists("g:netrw_cursor")
|
||||||
@@ -331,6 +332,7 @@ endif
|
|||||||
call s:NetrwInit("g:netrw_cursor" , 2)
|
call s:NetrwInit("g:netrw_cursor" , 2)
|
||||||
let s:netrw_usercul = &cursorline
|
let s:netrw_usercul = &cursorline
|
||||||
let s:netrw_usercuc = &cursorcolumn
|
let s:netrw_usercuc = &cursorcolumn
|
||||||
|
"call Decho("(netrw) COMBAK: cuc=".&l:cuc." cul=".&l:cul." initialization of s:netrw_cu[cl]")
|
||||||
call s:NetrwInit("g:netrw_cygdrive","/cygdrive")
|
call s:NetrwInit("g:netrw_cygdrive","/cygdrive")
|
||||||
" Default values - d-g ---------- {{{3
|
" Default values - d-g ---------- {{{3
|
||||||
call s:NetrwInit("s:didstarstar",0)
|
call s:NetrwInit("s:didstarstar",0)
|
||||||
@@ -703,7 +705,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
" save registers
|
" save registers
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) save @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) save @* and @+",'~'.expand("<slnum>"))
|
||||||
sil! let keepregstar = @*
|
sil! let keepregstar = @*
|
||||||
sil! let keepregplus = @+
|
sil! let keepregplus = @+
|
||||||
@@ -931,7 +933,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
" call Decho("..case Nexplore with starpat=".starpat.": (indx=".indx.")",'~'.expand("<slnum>"))
|
" call Decho("..case Nexplore with starpat=".starpat.": (indx=".indx.")",'~'.expand("<slnum>"))
|
||||||
if !exists("w:netrw_explore_list") " sanity check
|
if !exists("w:netrw_explore_list") " sanity check
|
||||||
NetrwKeepj call netrw#ErrorMsg(s:WARNING,"using Nexplore or <s-down> improperly; see help for netrw-starstar",40)
|
NetrwKeepj call netrw#ErrorMsg(s:WARNING,"using Nexplore or <s-down> improperly; see help for netrw-starstar",40)
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
||||||
if @* != keepregstar | sil! let @* = keepregstar | endif
|
if @* != keepregstar | sil! let @* = keepregstar | endif
|
||||||
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
||||||
@@ -957,7 +959,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
" call Decho("case Pexplore with starpat=".starpat.": (indx=".indx.")",'~'.expand("<slnum>"))
|
" call Decho("case Pexplore with starpat=".starpat.": (indx=".indx.")",'~'.expand("<slnum>"))
|
||||||
if !exists("w:netrw_explore_list") " sanity check
|
if !exists("w:netrw_explore_list") " sanity check
|
||||||
NetrwKeepj call netrw#ErrorMsg(s:WARNING,"using Pexplore or <s-up> improperly; see help for netrw-starstar",41)
|
NetrwKeepj call netrw#ErrorMsg(s:WARNING,"using Pexplore or <s-up> improperly; see help for netrw-starstar",41)
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
||||||
if @* != keepregstar | sil! let @* = keepregstar | endif
|
if @* != keepregstar | sil! let @* = keepregstar | endif
|
||||||
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
||||||
@@ -1013,7 +1015,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
catch /^Vim\%((\a\+)\)\=:E480/
|
catch /^Vim\%((\a\+)\)\=:E480/
|
||||||
keepalt call netrw#ErrorMsg(s:WARNING,'no files matched pattern<'.pattern.'>',45)
|
keepalt call netrw#ErrorMsg(s:WARNING,'no files matched pattern<'.pattern.'>',45)
|
||||||
if &hls | let keepregslash= s:ExplorePatHls(pattern) | endif
|
if &hls | let keepregslash= s:ExplorePatHls(pattern) | endif
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
||||||
if @* != keepregstar | sil! let @* = keepregstar | endif
|
if @* != keepregstar | sil! let @* = keepregstar | endif
|
||||||
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
||||||
@@ -1050,7 +1052,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
|
|
||||||
if w:netrw_explore_listlen == 0 || (w:netrw_explore_listlen == 1 && w:netrw_explore_list[0] =~ '\*\*\/')
|
if w:netrw_explore_listlen == 0 || (w:netrw_explore_listlen == 1 && w:netrw_explore_list[0] =~ '\*\*\/')
|
||||||
keepalt NetrwKeepj call netrw#ErrorMsg(s:WARNING,"no files matched",42)
|
keepalt NetrwKeepj call netrw#ErrorMsg(s:WARNING,"no files matched",42)
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
||||||
if @* != keepregstar | sil! let @* = keepregstar | endif
|
if @* != keepregstar | sil! let @* = keepregstar | endif
|
||||||
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
||||||
@@ -1099,7 +1101,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
if !exists("g:netrw_quiet")
|
if !exists("g:netrw_quiet")
|
||||||
keepalt NetrwKeepj call netrw#ErrorMsg(s:WARNING,"your vim needs the +path_extra feature for Exploring with **!",44)
|
keepalt NetrwKeepj call netrw#ErrorMsg(s:WARNING,"your vim needs the +path_extra feature for Exploring with **!",44)
|
||||||
endif
|
endif
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
||||||
if @* != keepregstar | sil! let @* = keepregstar | endif
|
if @* != keepregstar | sil! let @* = keepregstar | endif
|
||||||
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
||||||
@@ -1173,7 +1175,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
|
|||||||
" there's no danger of a late FocusGained event on initialization.
|
" there's no danger of a late FocusGained event on initialization.
|
||||||
" Consequently, set s:netrw_events to 2.
|
" Consequently, set s:netrw_events to 2.
|
||||||
let s:netrw_events= 2
|
let s:netrw_events= 2
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(netrw#Explore) restore @* and @+",'~'.expand("<slnum>"))
|
||||||
if @* != keepregstar | sil! let @* = keepregstar | endif
|
if @* != keepregstar | sil! let @* = keepregstar | endif
|
||||||
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
if @+ != keepregplus | sil! let @+ = keepregplus | endif
|
||||||
@@ -1641,7 +1643,8 @@ endfun
|
|||||||
fun! s:NetrwOptionsSave(vt)
|
fun! s:NetrwOptionsSave(vt)
|
||||||
" call Dfunc("s:NetrwOptionsSave(vt<".a:vt.">) win#".winnr()." buf#".bufnr("%")."<".bufname(bufnr("%")).">"." winnr($)=".winnr("$")." mod=".&mod." ma=".&ma)
|
" call Dfunc("s:NetrwOptionsSave(vt<".a:vt.">) win#".winnr()." buf#".bufnr("%")."<".bufname(bufnr("%")).">"." winnr($)=".winnr("$")." mod=".&mod." ma=".&ma)
|
||||||
" call Decho(a:vt."netrw_optionsave".(exists("{a:vt}netrw_optionsave")? ("=".{a:vt}netrw_optionsave) : " doesn't exist"),'~'.expand("<slnum>"))
|
" call Decho(a:vt."netrw_optionsave".(exists("{a:vt}netrw_optionsave")? ("=".{a:vt}netrw_optionsave) : " doesn't exist"),'~'.expand("<slnum>"))
|
||||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt." hid=".&hid,'~'.expand("<slnum>"))
|
||||||
|
" call Decho("(s:NetrwOptionsSave) lines=".&lines)
|
||||||
|
|
||||||
if !exists("{a:vt}netrw_optionsave")
|
if !exists("{a:vt}netrw_optionsave")
|
||||||
let {a:vt}netrw_optionsave= 1
|
let {a:vt}netrw_optionsave= 1
|
||||||
@@ -1667,6 +1670,9 @@ fun! s:NetrwOptionsSave(vt)
|
|||||||
let {a:vt}netrw_cinokeep = &l:cino
|
let {a:vt}netrw_cinokeep = &l:cino
|
||||||
let {a:vt}netrw_comkeep = &l:com
|
let {a:vt}netrw_comkeep = &l:com
|
||||||
let {a:vt}netrw_cpokeep = &l:cpo
|
let {a:vt}netrw_cpokeep = &l:cpo
|
||||||
|
let {a:vt}netrw_cuckeep = &l:cuc
|
||||||
|
let {a:vt}netrw_culkeep = &l:cul
|
||||||
|
" call Decho("(s:NetrwOptionsSave) COMBAK: cuc=".&l:cuc." cul=".&l:cul)
|
||||||
let {a:vt}netrw_diffkeep = &l:diff
|
let {a:vt}netrw_diffkeep = &l:diff
|
||||||
let {a:vt}netrw_fenkeep = &l:fen
|
let {a:vt}netrw_fenkeep = &l:fen
|
||||||
if !exists("g:netrw_ffkeep") || g:netrw_ffkeep
|
if !exists("g:netrw_ffkeep") || g:netrw_ffkeep
|
||||||
@@ -1674,9 +1680,11 @@ fun! s:NetrwOptionsSave(vt)
|
|||||||
endif
|
endif
|
||||||
let {a:vt}netrw_fokeep = &l:fo " formatoptions
|
let {a:vt}netrw_fokeep = &l:fo " formatoptions
|
||||||
let {a:vt}netrw_gdkeep = &l:gd " gdefault
|
let {a:vt}netrw_gdkeep = &l:gd " gdefault
|
||||||
|
let {a:vt}netrw_gokeep = &l:go " guioptions
|
||||||
let {a:vt}netrw_hidkeep = &l:hidden
|
let {a:vt}netrw_hidkeep = &l:hidden
|
||||||
let {a:vt}netrw_imkeep = &l:im
|
let {a:vt}netrw_imkeep = &l:im
|
||||||
let {a:vt}netrw_iskkeep = &l:isk
|
let {a:vt}netrw_iskkeep = &l:isk
|
||||||
|
let {a:vt}netrw_lines = &lines
|
||||||
let {a:vt}netrw_lskeep = &l:ls
|
let {a:vt}netrw_lskeep = &l:ls
|
||||||
let {a:vt}netrw_makeep = &l:ma
|
let {a:vt}netrw_makeep = &l:ma
|
||||||
let {a:vt}netrw_magickeep = &l:magic
|
let {a:vt}netrw_magickeep = &l:magic
|
||||||
@@ -1702,12 +1710,13 @@ fun! s:NetrwOptionsSave(vt)
|
|||||||
let {a:vt}netrw_dirkeep = getcwd()
|
let {a:vt}netrw_dirkeep = getcwd()
|
||||||
" call Decho("saving to ".a:vt."netrw_dirkeep<".{a:vt}netrw_dirkeep.">",'~'.expand("<slnum>"))
|
" call Decho("saving to ".a:vt."netrw_dirkeep<".{a:vt}netrw_dirkeep.">",'~'.expand("<slnum>"))
|
||||||
endif
|
endif
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
sil! let {a:vt}netrw_starkeep = @*
|
sil! let {a:vt}netrw_starkeep = @*
|
||||||
sil! let {a:vt}netrw_pluskeep = @+
|
sil! let {a:vt}netrw_pluskeep = @+
|
||||||
endif
|
endif
|
||||||
sil! let {a:vt}netrw_slashkeep= @/
|
sil! let {a:vt}netrw_slashkeep= @/
|
||||||
|
|
||||||
|
" call Decho("(s:NetrwOptionsSave) lines=".&lines)
|
||||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||||
" call Dret("s:NetrwOptionsSave : tab#".tabpagenr()." win#".winnr())
|
" call Dret("s:NetrwOptionsSave : tab#".tabpagenr()." win#".winnr())
|
||||||
endfun
|
endfun
|
||||||
@@ -1732,12 +1741,18 @@ fun! s:NetrwOptionsSafe(islocal)
|
|||||||
endif
|
endif
|
||||||
call s:NetrwSetSafeSetting("&l:ci",0)
|
call s:NetrwSetSafeSetting("&l:ci",0)
|
||||||
call s:NetrwSetSafeSetting("&l:cin",0)
|
call s:NetrwSetSafeSetting("&l:cin",0)
|
||||||
call s:NetrwSetSafeSetting("&l:bh","hide")
|
if g:netrw_fastbrowse > a:islocal
|
||||||
|
call s:NetrwSetSafeSetting("&l:bh","hide")
|
||||||
|
else
|
||||||
|
call s:NetrwSetSafeSetting("&l:bh","delete")
|
||||||
|
endif
|
||||||
call s:NetrwSetSafeSetting("&l:cino","")
|
call s:NetrwSetSafeSetting("&l:cino","")
|
||||||
call s:NetrwSetSafeSetting("&l:com","")
|
call s:NetrwSetSafeSetting("&l:com","")
|
||||||
if &cpo =~ 'a' | call s:NetrwSetSafeSetting("&cpo",substitute(&cpo,'a','','g')) | endif
|
if &cpo =~ 'a' | call s:NetrwSetSafeSetting("&cpo",substitute(&cpo,'a','','g')) | endif
|
||||||
if &cpo =~ 'A' | call s:NetrwSetSafeSetting("&cpo",substitute(&cpo,'A','','g')) | endif
|
if &cpo =~ 'A' | call s:NetrwSetSafeSetting("&cpo",substitute(&cpo,'A','','g')) | endif
|
||||||
setl fo=nroql2
|
setl fo=nroql2
|
||||||
|
" call s:NetrwSetSafeSetting("&go","begmr")
|
||||||
|
if &go =~ '\ca' | call s:NetrwSetSafeSetting("&go",substitute(&go,'\ca','','g')) | endif
|
||||||
call s:NetrwSetSafeSetting("&l:hid",0)
|
call s:NetrwSetSafeSetting("&l:hid",0)
|
||||||
call s:NetrwSetSafeSetting("&l:im",0)
|
call s:NetrwSetSafeSetting("&l:im",0)
|
||||||
setl isk+=@ isk+=* isk+=/
|
setl isk+=@ isk+=* isk+=/
|
||||||
@@ -1751,7 +1766,10 @@ fun! s:NetrwOptionsSafe(islocal)
|
|||||||
call s:NetrwSetSafeSetting("&l:tw",0)
|
call s:NetrwSetSafeSetting("&l:tw",0)
|
||||||
call s:NetrwSetSafeSetting("&l:wig","")
|
call s:NetrwSetSafeSetting("&l:wig","")
|
||||||
setl cedit&
|
setl cedit&
|
||||||
call s:NetrwCursor()
|
|
||||||
|
" set up cuc and cul based on g:netrw_cursor and listing style
|
||||||
|
" COMBAK -- cuc cul related
|
||||||
|
call s:NetrwCursor(0)
|
||||||
|
|
||||||
" allow the user to override safe options
|
" allow the user to override safe options
|
||||||
" call Decho("ft<".&ft."> ei=".&ei,'~'.expand("<slnum>"))
|
" call Decho("ft<".&ft."> ei=".&ei,'~'.expand("<slnum>"))
|
||||||
@@ -1769,11 +1787,14 @@ endfun
|
|||||||
" s:NetrwOptionsRestore: restore options (based on prior s:NetrwOptionsSave) {{{2
|
" s:NetrwOptionsRestore: restore options (based on prior s:NetrwOptionsSave) {{{2
|
||||||
fun! s:NetrwOptionsRestore(vt)
|
fun! s:NetrwOptionsRestore(vt)
|
||||||
" call Dfunc("s:NetrwOptionsRestore(vt<".a:vt.">) win#".winnr()." buf#".bufnr("%")."<".bufname("%")."> winnr($)=".winnr("$"))
|
" call Dfunc("s:NetrwOptionsRestore(vt<".a:vt.">) win#".winnr()." buf#".bufnr("%")."<".bufname("%")."> winnr($)=".winnr("$"))
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) lines=".&lines)
|
||||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||||
if !exists("{a:vt}netrw_optionsave")
|
if !exists("{a:vt}netrw_optionsave")
|
||||||
" call Decho("case ".a:vt."netrw_optionsave : doesn't exist",'~'.expand("<slnum>"))
|
" call Decho("case ".a:vt."netrw_optionsave : doesn't exist",'~'.expand("<slnum>"))
|
||||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
" call Decho("..doing filetype detect anyway")
|
||||||
" call Decho("ro=".&l:ro." ma=".&l:ma." mod=".&l:mod." wrap=".&l:wrap." (filename<".expand("%")."> win#".winnr()." ft<".&ft.">)",'~'.expand("<slnum>"))
|
filetype detect
|
||||||
|
" call Decho("..settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||||
|
" call Decho("..ro=".&l:ro." ma=".&l:ma." mod=".&l:mod." wrap=".&l:wrap." (filename<".expand("%")."> win#".winnr()." ft<".&ft.">)",'~'.expand("<slnum>"))
|
||||||
" call Dret("s:NetrwOptionsRestore : ".a:vt."netrw_optionsave doesn't exist")
|
" call Dret("s:NetrwOptionsRestore : ".a:vt."netrw_optionsave doesn't exist")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
@@ -1790,41 +1811,53 @@ fun! s:NetrwOptionsRestore(vt)
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #1 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_aikeep","&l:ai")
|
call s:NetrwRestoreSetting(a:vt."netrw_aikeep","&l:ai")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_awkeep","&l:aw")
|
call s:NetrwRestoreSetting(a:vt."netrw_awkeep","&l:aw")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_blkeep","&l:bl")
|
call s:NetrwRestoreSetting(a:vt."netrw_blkeep","&l:bl")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_btkeep","&l:bt")
|
call s:NetrwRestoreSetting(a:vt."netrw_btkeep","&l:bt")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_bombkeep","&l:bomb")
|
call s:NetrwRestoreSetting(a:vt."netrw_bombkeep","&l:bomb")
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #2 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_cedit","&cedit")
|
call s:NetrwRestoreSetting(a:vt."netrw_cedit","&cedit")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_cikeep","&l:ci")
|
call s:NetrwRestoreSetting(a:vt."netrw_cikeep","&l:ci")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_cinkeep","&l:cin")
|
call s:NetrwRestoreSetting(a:vt."netrw_cinkeep","&l:cin")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_cinokeep","&l:cino")
|
call s:NetrwRestoreSetting(a:vt."netrw_cinokeep","&l:cino")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_comkeep","&l:com")
|
call s:NetrwRestoreSetting(a:vt."netrw_comkeep","&l:com")
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #3 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_cpokeep","&l:cpo")
|
call s:NetrwRestoreSetting(a:vt."netrw_cpokeep","&l:cpo")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_diffkeep","&l:diff")
|
call s:NetrwRestoreSetting(a:vt."netrw_diffkeep","&l:diff")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_fenkeep","&l:fen")
|
call s:NetrwRestoreSetting(a:vt."netrw_fenkeep","&l:fen")
|
||||||
if exists("g:netrw_ffkeep") && g:netrw_ffkeep
|
if exists("g:netrw_ffkeep") && g:netrw_ffkeep
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_ffkeep")","&l:ff")
|
call s:NetrwRestoreSetting(a:vt."netrw_ffkeep")","&l:ff")
|
||||||
endif
|
endif
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_fokeep","&l:fo")
|
" call Decho("(s:NetrwOptionsRestore) #4 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_gdkeep","&l:gd")
|
call s:NetrwRestoreSetting(a:vt."netrw_fokeep" ,"&l:fo")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_hidkeep","&l:hidden")
|
call s:NetrwRestoreSetting(a:vt."netrw_gdkeep" ,"&l:gd")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_imkeep","&l:im")
|
call s:NetrwRestoreSetting(a:vt."netrw_gokeep" ,"&l:go")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_iskkeep","&l:isk")
|
call s:NetrwRestoreSetting(a:vt."netrw_hidkeep" ,"&l:hidden")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_lskeep","&l:ls")
|
" call Decho("(s:NetrwOptionsRestore) #5 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_makeep","&l:ma")
|
call s:NetrwRestoreSetting(a:vt."netrw_imkeep" ,"&l:im")
|
||||||
|
call s:NetrwRestoreSetting(a:vt."netrw_iskkeep" ,"&l:isk")
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #6 lines=".&lines)
|
||||||
|
call s:NetrwRestoreSetting(a:vt."netrw_lines" ,"&lines")
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #7 lines=".&lines)
|
||||||
|
call s:NetrwRestoreSetting(a:vt."netrw_lskeep" ,"&l:ls")
|
||||||
|
call s:NetrwRestoreSetting(a:vt."netrw_makeep" ,"&l:ma")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_magickeep","&l:magic")
|
call s:NetrwRestoreSetting(a:vt."netrw_magickeep","&l:magic")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_modkeep","&l:mod")
|
call s:NetrwRestoreSetting(a:vt."netrw_modkeep" ,"&l:mod")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_nukeep","&l:nu")
|
call s:NetrwRestoreSetting(a:vt."netrw_nukeep" ,"&l:nu")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_rnukeep","&l:rnu")
|
" call Decho("(s:NetrwOptionsRestore) #8 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_repkeep","&l:report")
|
call s:NetrwRestoreSetting(a:vt."netrw_rnukeep" ,"&l:rnu")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_rokeep","&l:ro")
|
call s:NetrwRestoreSetting(a:vt."netrw_repkeep" ,"&l:report")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_selkeep","&l:sel")
|
call s:NetrwRestoreSetting(a:vt."netrw_rokeep" ,"&l:ro")
|
||||||
|
call s:NetrwRestoreSetting(a:vt."netrw_selkeep" ,"&l:sel")
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #9 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_spellkeep","&l:spell")
|
call s:NetrwRestoreSetting(a:vt."netrw_spellkeep","&l:spell")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_twkeep","&l:tw")
|
call s:NetrwRestoreSetting(a:vt."netrw_twkeep" ,"&l:tw")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_wigkeep","&l:wig")
|
call s:NetrwRestoreSetting(a:vt."netrw_wigkeep" ,"&l:wig")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_wrapkeep","&l:wrap")
|
call s:NetrwRestoreSetting(a:vt."netrw_wrapkeep" ,"&l:wrap")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_writekeep","&l:write")
|
call s:NetrwRestoreSetting(a:vt."netrw_writekeep","&l:write")
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) #10 lines=".&lines)
|
||||||
call s:NetrwRestoreSetting("s:yykeep","@@")
|
call s:NetrwRestoreSetting("s:yykeep","@@")
|
||||||
" former problem: start with liststyle=0; press <i> : result, following line resets l:ts.
|
" former problem: start with liststyle=0; press <i> : result, following line resets l:ts.
|
||||||
" Fixed; in s:PerformListing, when w:netrw_liststyle is s:LONGLIST, will use a printf to pad filename with spaces
|
" Fixed; in s:PerformListing, when w:netrw_liststyle is s:LONGLIST, will use a printf to pad filename with spaces
|
||||||
@@ -1855,7 +1888,7 @@ fun! s:NetrwOptionsRestore(vt)
|
|||||||
unlet {a:vt}netrw_dirkeep
|
unlet {a:vt}netrw_dirkeep
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("has clipboard",'~'.expand("<slnum>"))
|
" call Decho("has clipboard",'~'.expand("<slnum>"))
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_starkeep","@*")
|
call s:NetrwRestoreSetting(a:vt."netrw_starkeep","@*")
|
||||||
call s:NetrwRestoreSetting(a:vt."netrw_pluskeep","@+")
|
call s:NetrwRestoreSetting(a:vt."netrw_pluskeep","@+")
|
||||||
@@ -1871,9 +1904,11 @@ fun! s:NetrwOptionsRestore(vt)
|
|||||||
" were having their filetype detect-generated settings overwritten by
|
" were having their filetype detect-generated settings overwritten by
|
||||||
" NetrwOptionRestore.
|
" NetrwOptionRestore.
|
||||||
if &ft != "netrw"
|
if &ft != "netrw"
|
||||||
" call Decho("filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
" call Decho("before: filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
||||||
filetype detect
|
filetype detect
|
||||||
|
" call Decho("after : filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
||||||
endif
|
endif
|
||||||
|
" call Decho("(s:NetrwOptionsRestore) lines=".&lines)
|
||||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||||
" call Dret("s:NetrwOptionsRestore : tab#".tabpagenr()." win#".winnr()." buf#".bufnr("%")."<".bufname("%")."> modified=".&modified." modifiable=".&modifiable." readonly=".&readonly)
|
" call Dret("s:NetrwOptionsRestore : tab#".tabpagenr()." win#".winnr()." buf#".bufnr("%")."<".bufname("%")."> modified=".&modified." modifiable=".&modifiable." readonly=".&readonly)
|
||||||
endfun
|
endfun
|
||||||
@@ -1923,7 +1958,7 @@ fun! s:NetrwRestoreSetting(keepvar,setting)
|
|||||||
" typically called from s:NetrwOptionsRestore
|
" typically called from s:NetrwOptionsRestore
|
||||||
" call s:NetrwRestoreSettings(keep-option-variable-name,'associated-option')
|
" call s:NetrwRestoreSettings(keep-option-variable-name,'associated-option')
|
||||||
" ex. call s:NetrwRestoreSetting(a:vt."netrw_selkeep","&l:sel")
|
" ex. call s:NetrwRestoreSetting(a:vt."netrw_selkeep","&l:sel")
|
||||||
" Restores option (if different) from a keepvar
|
" Restores option (but only if different) from a:keepvar
|
||||||
if exists(a:keepvar)
|
if exists(a:keepvar)
|
||||||
exe "let keepvarval= ".a:keepvar
|
exe "let keepvarval= ".a:keepvar
|
||||||
exe "let setting= ".a:setting
|
exe "let setting= ".a:setting
|
||||||
@@ -2845,14 +2880,16 @@ fun! netrw#SetTreetop(iscmd,...)
|
|||||||
" call Decho("inittreetop<".(exists("inittreetop")? inittreetop : "n/a").">")
|
" call Decho("inittreetop<".(exists("inittreetop")? inittreetop : "n/a").">")
|
||||||
|
|
||||||
if (a:iscmd == 0 || a:1 == "") && exists("inittreetop")
|
if (a:iscmd == 0 || a:1 == "") && exists("inittreetop")
|
||||||
let treedir= s:NetrwTreePath(inittreetop)
|
let treedir = s:NetrwTreePath(inittreetop)
|
||||||
" call Decho("treedir<".treedir.">",'~'.expand("<slnum>"))
|
" call Decho("treedir<".treedir.">",'~'.expand("<slnum>"))
|
||||||
else
|
else
|
||||||
if isdirectory(s:NetrwFile(a:1))
|
if isdirectory(s:NetrwFile(a:1))
|
||||||
" call Decho("a:1<".a:1."> is a directory",'~'.expand("<slnum>"))
|
" call Decho("a:1<".a:1."> is a directory",'~'.expand("<slnum>"))
|
||||||
let treedir= a:1
|
let treedir = a:1
|
||||||
|
let s:netrw_treetop = treedir
|
||||||
elseif exists("b:netrw_curdir") && (isdirectory(s:NetrwFile(b:netrw_curdir."/".a:1)) || a:1 =~ '^\a\{3,}://')
|
elseif exists("b:netrw_curdir") && (isdirectory(s:NetrwFile(b:netrw_curdir."/".a:1)) || a:1 =~ '^\a\{3,}://')
|
||||||
let treedir= b:netrw_curdir."/".a:1
|
let treedir = b:netrw_curdir."/".a:1
|
||||||
|
let s:netrw_treetop = treedir
|
||||||
" call Decho("a:1<".a:1."> is NOT a directory, using treedir<".treedir.">",'~'.expand("<slnum>"))
|
" call Decho("a:1<".a:1."> is NOT a directory, using treedir<".treedir.">",'~'.expand("<slnum>"))
|
||||||
else
|
else
|
||||||
" normally the cursor is left in the message window.
|
" normally the cursor is left in the message window.
|
||||||
@@ -2860,7 +2897,8 @@ fun! netrw#SetTreetop(iscmd,...)
|
|||||||
let netrwbuf= bufnr("%")
|
let netrwbuf= bufnr("%")
|
||||||
call netrw#ErrorMsg(s:ERROR,"sorry, ".a:1." doesn't seem to be a directory!",95)
|
call netrw#ErrorMsg(s:ERROR,"sorry, ".a:1." doesn't seem to be a directory!",95)
|
||||||
exe bufwinnr(netrwbuf)."wincmd w"
|
exe bufwinnr(netrwbuf)."wincmd w"
|
||||||
let treedir= "."
|
let treedir = "."
|
||||||
|
let s:netrw_treetop = getcwd()
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
" call Decho("treedir<".treedir.">",'~'.expand("<slnum>"))
|
" call Decho("treedir<".treedir.">",'~'.expand("<slnum>"))
|
||||||
@@ -4115,6 +4153,7 @@ fun! s:NetrwFileInfo(islocal,fname)
|
|||||||
elseif g:netrw_sizestyle =~# 'h'
|
elseif g:netrw_sizestyle =~# 'h'
|
||||||
let lsopt= "-lsadh --si"
|
let lsopt= "-lsadh --si"
|
||||||
endif
|
endif
|
||||||
|
" call Decho("(s:NetrwFileInfo) lsopt<".lsopt.">")
|
||||||
if (has("unix") || has("macunix")) && executable("/bin/ls")
|
if (has("unix") || has("macunix")) && executable("/bin/ls")
|
||||||
|
|
||||||
if getline(".") == "../"
|
if getline(".") == "../"
|
||||||
@@ -4176,9 +4215,10 @@ endfun
|
|||||||
" s:NetrwGetBuffer: [get a new|find an old netrw] buffer for a netrw listing {{{2
|
" s:NetrwGetBuffer: [get a new|find an old netrw] buffer for a netrw listing {{{2
|
||||||
" returns 0=cleared buffer
|
" returns 0=cleared buffer
|
||||||
" 1=re-used buffer (buffer not cleared)
|
" 1=re-used buffer (buffer not cleared)
|
||||||
|
" Nov 09, 2020: tst952 shows that when user does :set hidden that NetrwGetBuffer will come up with a [No Name] buffer (hid fix)
|
||||||
fun! s:NetrwGetBuffer(islocal,dirname)
|
fun! s:NetrwGetBuffer(islocal,dirname)
|
||||||
" call Dfunc("s:NetrwGetBuffer(islocal=".a:islocal." dirname<".a:dirname.">) liststyle=".g:netrw_liststyle)
|
" call Dfunc("s:NetrwGetBuffer(islocal=".a:islocal." dirname<".a:dirname.">) liststyle=".g:netrw_liststyle)
|
||||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo,'~'.expand("<slnum>"))
|
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." hid=".&hid,'~'.expand("<slnum>"))
|
||||||
" call Decho("netrwbuf dictionary=".(exists("s:netrwbuf")? string(s:netrwbuf) : 'n/a'),'~'.expand("<slnum>"))
|
" call Decho("netrwbuf dictionary=".(exists("s:netrwbuf")? string(s:netrwbuf) : 'n/a'),'~'.expand("<slnum>"))
|
||||||
" call Dredir("ls!","s:NetrwGetBuffer")
|
" call Dredir("ls!","s:NetrwGetBuffer")
|
||||||
let dirname= a:dirname
|
let dirname= a:dirname
|
||||||
@@ -4228,17 +4268,26 @@ fun! s:NetrwGetBuffer(islocal,dirname)
|
|||||||
endif
|
endif
|
||||||
" call Decho(" bufnum#".bufnum,'~'.expand("<slnum>"))
|
" call Decho(" bufnum#".bufnum,'~'.expand("<slnum>"))
|
||||||
|
|
||||||
" highjack the current buffer if
|
" hijack the current buffer
|
||||||
" it has the desired name
|
" IF the buffer already has the desired name
|
||||||
" it is empty
|
" AND it is empty
|
||||||
" call Decho("deciding if I can highjack the current buffer#".bufnr("%"),'~'.expand("<slnum>"))
|
let curbuf = bufname("%")
|
||||||
" call Decho("..dirname<".dirname.">",'~'.expand("<slnum>"))
|
if curbuf == '.'
|
||||||
" call Decho("..bufname<".bufname("%").">",'~'.expand("<slnum>"))
|
let curbuf = getcwd()
|
||||||
" call Decho("..getline($)<".getline("$").">",'~'.expand("<slnum>"))
|
endif
|
||||||
if dirname == bufname("%") && line("$") == 1 && getline("%") == ""
|
" call Dredir("ls!","NetrwGetFile (renamed buffer back to remote filename<".rfile."> : expand(%)<".expand("%").">)")
|
||||||
|
" call Decho("deciding if netrw may hijack the current buffer#".bufnr("%")."<".curbuf.">",'~'.expand("<slnum>"))
|
||||||
|
" call Decho("..dirname<".dirname."> IF dirname == bufname",'~'.expand("<slnum>"))
|
||||||
|
" call Decho("..curbuf<".curbuf.">",'~'.expand("<slnum>"))
|
||||||
|
" call Decho("..line($)=".line("$")." AND this is 1",'~'.expand("<slnum>"))
|
||||||
|
" call Decho("..getline(%)<".getline("%")."> AND this line is empty",'~'.expand("<slnum>"))
|
||||||
|
if dirname == curbuf && line("$") == 1 && getline("%") == ""
|
||||||
" call Dret("s:NetrwGetBuffer 0<cleared buffer> : highjacking buffer#".bufnr("%"))
|
" call Dret("s:NetrwGetBuffer 0<cleared buffer> : highjacking buffer#".bufnr("%"))
|
||||||
return 0
|
return 0
|
||||||
|
else " DEBUG
|
||||||
|
" call Decho("..did NOT hijack buffer",'~'.expand("<slnum>"))
|
||||||
endif
|
endif
|
||||||
|
" Aug 14, 2021: was thinking about looking for a [No Name] buffer here and using it, but that might cause problems
|
||||||
|
|
||||||
" get enew buffer and name it -or- re-use buffer {{{3
|
" get enew buffer and name it -or- re-use buffer {{{3
|
||||||
if bufnum < 0 " get enew buffer and name it
|
if bufnum < 0 " get enew buffer and name it
|
||||||
@@ -4563,7 +4612,7 @@ fun! s:NetrwListStyle(islocal)
|
|||||||
" refresh the listing
|
" refresh the listing
|
||||||
" call Decho("refresh the listing",'~'.expand("<slnum>"))
|
" call Decho("refresh the listing",'~'.expand("<slnum>"))
|
||||||
NetrwKeepj call s:NetrwRefresh(a:islocal,s:NetrwBrowseChgDir(a:islocal,'./'))
|
NetrwKeepj call s:NetrwRefresh(a:islocal,s:NetrwBrowseChgDir(a:islocal,'./'))
|
||||||
NetrwKeepj call s:NetrwCursor()
|
NetrwKeepj call s:NetrwCursor(0)
|
||||||
|
|
||||||
" repoint t:netrw_lexbufnr if appropriate
|
" repoint t:netrw_lexbufnr if appropriate
|
||||||
if exists("repointlexbufnr")
|
if exists("repointlexbufnr")
|
||||||
@@ -4769,7 +4818,7 @@ fun! s:NetrwBrowseChgDir(islocal,newdir,...)
|
|||||||
endif
|
endif
|
||||||
" call Decho("b:netrw_curdir<".b:netrw_curdir.">")
|
" call Decho("b:netrw_curdir<".b:netrw_curdir.">")
|
||||||
|
|
||||||
" NetrwBrowseChgDir: save options and initialize {{{3
|
" NetrwBrowseChgDir; save options and initialize {{{3
|
||||||
" call Decho("saving options",'~'.expand("<slnum>"))
|
" call Decho("saving options",'~'.expand("<slnum>"))
|
||||||
call s:SavePosn(s:netrw_posn)
|
call s:SavePosn(s:netrw_posn)
|
||||||
NetrwKeepj call s:NetrwOptionsSave("s:")
|
NetrwKeepj call s:NetrwOptionsSave("s:")
|
||||||
@@ -4837,6 +4886,8 @@ fun! s:NetrwBrowseChgDir(islocal,newdir,...)
|
|||||||
if exists("w:netrw_liststyle") && w:netrw_liststyle == s:TREELIST && exists("w:netrw_treedict") && newdir !~ '^\(/\|\a:\)'
|
if exists("w:netrw_liststyle") && w:netrw_liststyle == s:TREELIST && exists("w:netrw_treedict") && newdir !~ '^\(/\|\a:\)'
|
||||||
" call Decho("edit-a-file: handle tree listing: w:netrw_treedict<".(exists("w:netrw_treedict")? string(w:netrw_treedict) : 'n/a').">",'~'.expand("<slnum>"))
|
" call Decho("edit-a-file: handle tree listing: w:netrw_treedict<".(exists("w:netrw_treedict")? string(w:netrw_treedict) : 'n/a').">",'~'.expand("<slnum>"))
|
||||||
" call Decho("edit-a-file: newdir<".newdir.">",'~'.expand("<slnum>"))
|
" call Decho("edit-a-file: newdir<".newdir.">",'~'.expand("<slnum>"))
|
||||||
|
" let newdir = s:NetrwTreePath(s:netrw_treetop)
|
||||||
|
" call Decho("edit-a-file: COMBAK why doesn't this recognize file1's directory???")
|
||||||
let dirname= s:NetrwTreeDir(a:islocal)
|
let dirname= s:NetrwTreeDir(a:islocal)
|
||||||
"COMBAK : not working for a symlink -- but what about a regular file? a directory?
|
"COMBAK : not working for a symlink -- but what about a regular file? a directory?
|
||||||
" call Decho("COMBAK : not working for a symlink -- but what about a regular file? a directory?")
|
" call Decho("COMBAK : not working for a symlink -- but what about a regular file? a directory?")
|
||||||
@@ -4950,7 +5001,8 @@ fun! s:NetrwBrowseChgDir(islocal,newdir,...)
|
|||||||
exe "NetrwKeepj e ".fnameescape(dirname)
|
exe "NetrwKeepj e ".fnameescape(dirname)
|
||||||
endif
|
endif
|
||||||
" call Decho("edit-a-file: after e! ".dirname.": hidden=".&hidden." bufhidden<".&bufhidden."> mod=".&mod,'~'.expand("<slnum>"))
|
" call Decho("edit-a-file: after e! ".dirname.": hidden=".&hidden." bufhidden<".&bufhidden."> mod=".&mod,'~'.expand("<slnum>"))
|
||||||
call s:NetrwCursor()
|
" COMBAK -- cuc cul related
|
||||||
|
call s:NetrwCursor(1)
|
||||||
if &hidden || &bufhidden == "hide"
|
if &hidden || &bufhidden == "hide"
|
||||||
" file came from vim's hidden storage. Don't "restore" options with it.
|
" file came from vim's hidden storage. Don't "restore" options with it.
|
||||||
let dorestore= 0
|
let dorestore= 0
|
||||||
@@ -4971,8 +5023,8 @@ fun! s:NetrwBrowseChgDir(islocal,newdir,...)
|
|||||||
elseif type(g:Netrw_funcref) == 3
|
elseif type(g:Netrw_funcref) == 3
|
||||||
" call Decho("edit-a-file: handling a list of g:Netrw_funcrefs",'~'.expand("<slnum>"))
|
" call Decho("edit-a-file: handling a list of g:Netrw_funcrefs",'~'.expand("<slnum>"))
|
||||||
for Fncref in g:Netrw_funcref
|
for Fncref in g:Netrw_funcref
|
||||||
if type(FncRef) == 2
|
if type(Fncref) == 2
|
||||||
NetrwKeepj call FncRef()
|
NetrwKeepj call Fncref()
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
endif
|
endif
|
||||||
@@ -5264,6 +5316,12 @@ fun! netrw#BrowseX(fname,remote)
|
|||||||
endif
|
endif
|
||||||
" call Decho("not a local file nor a webpage request",'~'.expand("<slnum>"))
|
" call Decho("not a local file nor a webpage request",'~'.expand("<slnum>"))
|
||||||
|
|
||||||
|
if exists("g:netrw_browsex_viewer") && exists("g:netrw_browsex_support_remote") && !g:netrw_browsex_support_remote
|
||||||
|
let remote = a:remote
|
||||||
|
else
|
||||||
|
let remote = 0
|
||||||
|
endif
|
||||||
|
|
||||||
let ykeep = @@
|
let ykeep = @@
|
||||||
let screenposn = winsaveview()
|
let screenposn = winsaveview()
|
||||||
" call Decho("saving posn to screenposn<".string(screenposn).">",'~'.expand("<slnum>"))
|
" call Decho("saving posn to screenposn<".string(screenposn).">",'~'.expand("<slnum>"))
|
||||||
@@ -5308,9 +5366,9 @@ fun! netrw#BrowseX(fname,remote)
|
|||||||
endif
|
endif
|
||||||
" call Decho("exten<".exten.">",'~'.expand("<slnum>"))
|
" call Decho("exten<".exten.">",'~'.expand("<slnum>"))
|
||||||
|
|
||||||
if a:remote == 1
|
if remote == 1
|
||||||
" create a local copy
|
" create a local copy
|
||||||
" call Decho("remote: a:remote=".a:remote.": create a local copy of <".a:fname.">",'~'.expand("<slnum>"))
|
" call Decho("remote: remote=".remote.": create a local copy of <".a:fname.">",'~'.expand("<slnum>"))
|
||||||
setl bh=delete
|
setl bh=delete
|
||||||
call netrw#NetRead(3,a:fname)
|
call netrw#NetRead(3,a:fname)
|
||||||
" attempt to rename tempfile
|
" attempt to rename tempfile
|
||||||
@@ -5332,7 +5390,7 @@ fun! netrw#BrowseX(fname,remote)
|
|||||||
let fname= s:netrw_tmpfile
|
let fname= s:netrw_tmpfile
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
" call Decho("local: a:remote=".a:remote.": handling local copy of <".a:fname.">",'~'.expand("<slnum>"))
|
" call Decho("local: remote=".remote.": handling local copy of <".a:fname.">",'~'.expand("<slnum>"))
|
||||||
let fname= a:fname
|
let fname= a:fname
|
||||||
" special ~ handler for local
|
" special ~ handler for local
|
||||||
if fname =~ '^\~' && expand("$HOME") != ""
|
if fname =~ '^\~' && expand("$HOME") != ""
|
||||||
@@ -5426,8 +5484,8 @@ fun! netrw#BrowseX(fname,remote)
|
|||||||
if a:fname =~ '^https\=://'
|
if a:fname =~ '^https\=://'
|
||||||
" atril does not appear to understand how to handle html -- so use gvim to edit the document
|
" atril does not appear to understand how to handle html -- so use gvim to edit the document
|
||||||
let use_ctrlo= 0
|
let use_ctrlo= 0
|
||||||
" call Decho("(COMBAK) fname<".fname.">")
|
" call Decho("fname<".fname.">")
|
||||||
" call Decho("(COMBAK) a:fname<".a:fname.">")
|
" call Decho("a:fname<".a:fname.">")
|
||||||
call s:NetrwExe("sil! !gvim ".fname.' -c "keepj keepalt file '.fnameescape(a:fname).'"')
|
call s:NetrwExe("sil! !gvim ".fname.' -c "keepj keepalt file '.fnameescape(a:fname).'"')
|
||||||
|
|
||||||
else
|
else
|
||||||
@@ -5475,12 +5533,12 @@ fun! netrw#BrowseX(fname,remote)
|
|||||||
" return to prior buffer (directory listing)
|
" return to prior buffer (directory listing)
|
||||||
" Feb 12, 2008: had to de-activiate removal of
|
" Feb 12, 2008: had to de-activiate removal of
|
||||||
" temporary file because it wasn't getting seen.
|
" temporary file because it wasn't getting seen.
|
||||||
" if a:remote == 1 && fname != a:fname
|
" if remote == 1 && fname != a:fname
|
||||||
"" call Decho("deleting temporary file<".fname.">",'~'.expand("<slnum>"))
|
"" call Decho("deleting temporary file<".fname.">",'~'.expand("<slnum>"))
|
||||||
" call s:NetrwDelete(fname)
|
" call s:NetrwDelete(fname)
|
||||||
" endif
|
" endif
|
||||||
|
|
||||||
if a:remote == 1
|
if remote == 1
|
||||||
setl bh=delete bt=nofile
|
setl bh=delete bt=nofile
|
||||||
if g:netrw_use_noswf
|
if g:netrw_use_noswf
|
||||||
setl noswf
|
setl noswf
|
||||||
@@ -5539,7 +5597,7 @@ fun! s:NetrwBufRename(newname)
|
|||||||
let b:junk= 1
|
let b:junk= 1
|
||||||
" call Decho("rename buffer: sil! keepj keepalt file ".fnameescape(a:newname),'~'.expand("<slnum>"))
|
" call Decho("rename buffer: sil! keepj keepalt file ".fnameescape(a:newname),'~'.expand("<slnum>"))
|
||||||
exe 'sil! keepj keepalt file '.fnameescape(a:newname)
|
exe 'sil! keepj keepalt file '.fnameescape(a:newname)
|
||||||
" call Dredir("ls!","s:NetrwBufRename (before bwipe)")
|
" call Dredir("ls!","s:NetrwBufRename (before bwipe)~".expand("<slnum>"))
|
||||||
let oldbufnr= bufnr(oldbufname)
|
let oldbufnr= bufnr(oldbufname)
|
||||||
" call Decho("oldbufname<".oldbufname."> oldbufnr#".oldbufnr,'~'.expand("<slnum>"))
|
" call Decho("oldbufname<".oldbufname."> oldbufnr#".oldbufnr,'~'.expand("<slnum>"))
|
||||||
" call Decho("bufnr(%)=".bufnr("%"),'~'.expand("<slnum>"))
|
" call Decho("bufnr(%)=".bufnr("%"),'~'.expand("<slnum>"))
|
||||||
@@ -5548,6 +5606,9 @@ fun! s:NetrwBufRename(newname)
|
|||||||
exe "bwipe! ".oldbufnr
|
exe "bwipe! ".oldbufnr
|
||||||
" else " Decho
|
" else " Decho
|
||||||
" call Decho("did *not* bwipe buf#".oldbufnr,'~'.expand("<slnum>"))
|
" call Decho("did *not* bwipe buf#".oldbufnr,'~'.expand("<slnum>"))
|
||||||
|
" call Decho("..reason: if oldbufname<".oldbufname."> is empty",'~'.expand("<slnum>"))"
|
||||||
|
" call Decho("..reason: if oldbufnr#".oldbufnr." is -1",'~'.expand("<slnum>"))"
|
||||||
|
" call Decho("..reason: if oldbufnr#".oldbufnr." != bufnr(%)#".bufnr("%"),'~'.expand("<slnum>"))"
|
||||||
endif
|
endif
|
||||||
" call Dredir("ls!","s:NetrwBufRename (after rename)")
|
" call Dredir("ls!","s:NetrwBufRename (after rename)")
|
||||||
" else " Decho
|
" else " Decho
|
||||||
@@ -6536,7 +6597,7 @@ fun! s:NetrwMaps(islocal)
|
|||||||
if !hasmapto('<Plug>NetrwRefresh')
|
if !hasmapto('<Plug>NetrwRefresh')
|
||||||
nmap <buffer> <unique> <c-l> <Plug>NetrwRefresh
|
nmap <buffer> <unique> <c-l> <Plug>NetrwRefresh
|
||||||
endif
|
endif
|
||||||
nnoremap <buffer> <silent> <Plug>NetrwRefresh <c-l>:call <SID>NetrwRefresh(1,<SID>NetrwBrowseChgDir(1,(w:netrw_liststyle == 3)? w:netrw_treetop : './'))<cr>
|
nnoremap <buffer> <silent> <Plug>NetrwRefresh <c-l>:call <SID>NetrwRefresh(1,<SID>NetrwBrowseChgDir(1,(exists("w:netrw_liststyle") && exists("w:netrw_treetop") && w:netrw_liststyle == 3)? w:netrw_treetop : './'))<cr>
|
||||||
if s:didstarstar || !mapcheck("<s-down>","n")
|
if s:didstarstar || !mapcheck("<s-down>","n")
|
||||||
nnoremap <buffer> <silent> <s-down> :Nexplore<cr>
|
nnoremap <buffer> <silent> <s-down> :Nexplore<cr>
|
||||||
endif
|
endif
|
||||||
@@ -6785,7 +6846,7 @@ fun! s:NetrwMarkFile(islocal,fname)
|
|||||||
|
|
||||||
" sanity check
|
" sanity check
|
||||||
if empty(a:fname)
|
if empty(a:fname)
|
||||||
" call Dret("s:NetrwMarkFile : emtpy fname")
|
" call Dret("s:NetrwMarkFile : empty fname")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
let curdir = s:NetrwGetCurdir(a:islocal)
|
let curdir = s:NetrwGetCurdir(a:islocal)
|
||||||
@@ -8164,6 +8225,23 @@ fun! s:NetrwOpenFile(islocal)
|
|||||||
call inputsave()
|
call inputsave()
|
||||||
let fname= input("Enter filename: ")
|
let fname= input("Enter filename: ")
|
||||||
call inputrestore()
|
call inputrestore()
|
||||||
|
" call Decho("(s:NetrwOpenFile) fname<".fname.">",'~'.expand("<slnum>"))
|
||||||
|
|
||||||
|
" determine if Lexplore is in use
|
||||||
|
if exists("t:netrw_lexbufnr")
|
||||||
|
" check if t:netrw_lexbufnr refers to a netrw window
|
||||||
|
" call Decho("(s:netrwOpenFile) ..t:netrw_lexbufnr=".t:netrw_lexbufnr,'~'.expand("<slnum>"))
|
||||||
|
let lexwinnr = bufwinnr(t:netrw_lexbufnr)
|
||||||
|
if lexwinnr != -1 && exists("g:netrw_chgwin") && g:netrw_chgwin != -1
|
||||||
|
" call Decho("(s:netrwOpenFile) ..Lexplore in use",'~'.expand("<slnum>"))
|
||||||
|
exe "NetrwKeepj keepalt ".g:netrw_chgwin."wincmd w"
|
||||||
|
exe "NetrwKeepj e ".fnameescape(fname)
|
||||||
|
let @@= ykeep
|
||||||
|
" call Dret("s:NetrwOpenFile : creating a file with Lexplore mode")
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Does the filename contain a path?
|
||||||
if fname !~ '[/\\]'
|
if fname !~ '[/\\]'
|
||||||
if exists("b:netrw_curdir")
|
if exists("b:netrw_curdir")
|
||||||
if exists("g:netrw_quiet")
|
if exists("g:netrw_quiet")
|
||||||
@@ -8502,6 +8580,7 @@ fun! s:NetrwPrevWinOpen(islocal)
|
|||||||
let lastwinnr = winnr("$")
|
let lastwinnr = winnr("$")
|
||||||
let curword = s:NetrwGetWord()
|
let curword = s:NetrwGetWord()
|
||||||
let choice = 0
|
let choice = 0
|
||||||
|
let s:prevwinopen= 1 " lets s:NetrwTreeDir() know that NetrwPrevWinOpen called it
|
||||||
let s:treedir = s:NetrwTreeDir(a:islocal)
|
let s:treedir = s:NetrwTreeDir(a:islocal)
|
||||||
let curdir = s:treedir
|
let curdir = s:treedir
|
||||||
" call Decho("winnr($)#".lastwinnr." curword<".curword.">",'~'.expand("<slnum>"))
|
" call Decho("winnr($)#".lastwinnr." curword<".curword.">",'~'.expand("<slnum>"))
|
||||||
@@ -8829,7 +8908,7 @@ fun! s:NetrwPreview(path) range
|
|||||||
" 0 : 1: top -- preview window is horizontally split off and on the top
|
" 0 : 1: top -- preview window is horizontally split off and on the top
|
||||||
" 0 : 0: bot -- preview window is horizontally split off and on the bottom
|
" 0 : 0: bot -- preview window is horizontally split off and on the bottom
|
||||||
"
|
"
|
||||||
" Note that the file being previewed is already known to not be a directory, hence we can avoid doing a LocalBrowse() check via
|
" Note that the file being previewed is already known to not be a directory, hence we can avoid doing a LocalBrowseCheck() check via
|
||||||
" the BufEnter event set up in netrwPlugin.vim
|
" the BufEnter event set up in netrwPlugin.vim
|
||||||
" call Decho("exe ".(g:netrw_alto? "top " : "bot ").(g:netrw_preview? "vert " : "")."pedit ".fnameescape(a:path),'~'.expand("<slnum>"))
|
" call Decho("exe ".(g:netrw_alto? "top " : "bot ").(g:netrw_preview? "vert " : "")."pedit ".fnameescape(a:path),'~'.expand("<slnum>"))
|
||||||
let eikeep = &ei
|
let eikeep = &ei
|
||||||
@@ -9264,14 +9343,20 @@ fun! s:NetrwTreeDir(islocal)
|
|||||||
" call Decho("g:netrw_keepdir =".(exists("g:netrw_keepdir")? g:netrw_keepdir : 'n/a'),'~'.expand("<slnum>"))
|
" call Decho("g:netrw_keepdir =".(exists("g:netrw_keepdir")? g:netrw_keepdir : 'n/a'),'~'.expand("<slnum>"))
|
||||||
" call Decho("w:netrw_liststyle=".(exists("w:netrw_liststyle")? w:netrw_liststyle : 'n/a'),'~'.expand("<slnum>"))
|
" call Decho("w:netrw_liststyle=".(exists("w:netrw_liststyle")? w:netrw_liststyle : 'n/a'),'~'.expand("<slnum>"))
|
||||||
" call Decho("w:netrw_treetop =".(exists("w:netrw_treetop")? w:netrw_treetop : 'n/a'),'~'.expand("<slnum>"))
|
" call Decho("w:netrw_treetop =".(exists("w:netrw_treetop")? w:netrw_treetop : 'n/a'),'~'.expand("<slnum>"))
|
||||||
|
" call Decho("current line<".getline(".").">")
|
||||||
|
|
||||||
if exists("s:treedir")
|
if exists("s:treedir") && exists("s:prevwinopen")
|
||||||
" s:NetrwPrevWinOpen opens a "previous" window -- and thus needs to and does call s:NetrwTreeDir early
|
" s:NetrwPrevWinOpen opens a "previous" window -- and thus needs to and does call s:NetrwTreeDir early
|
||||||
|
" call Decho('s:NetrwPrevWinOpen opens a "previous" window -- and thus needs to and does call s:NetrwTreeDir early')
|
||||||
let treedir= s:treedir
|
let treedir= s:treedir
|
||||||
unlet s:treedir
|
unlet s:treedir
|
||||||
" call Dret("s:NetrwTreeDir ".treedir)
|
unlet s:prevwinopen
|
||||||
|
" call Dret("s:NetrwTreeDir ".treedir.": early return since s:treedir existed previously")
|
||||||
return treedir
|
return treedir
|
||||||
endif
|
endif
|
||||||
|
if exists("s:prevwinopen")
|
||||||
|
unlet s:prevwinopen
|
||||||
|
endif
|
||||||
|
|
||||||
if !exists("b:netrw_curdir") || b:netrw_curdir == ""
|
if !exists("b:netrw_curdir") || b:netrw_curdir == ""
|
||||||
let b:netrw_curdir= getcwd()
|
let b:netrw_curdir= getcwd()
|
||||||
@@ -9478,20 +9563,29 @@ endfun
|
|||||||
" Called by s:PerformListing()
|
" Called by s:PerformListing()
|
||||||
fun! s:NetrwTreeListing(dirname)
|
fun! s:NetrwTreeListing(dirname)
|
||||||
if exists("w:netrw_liststyle") && w:netrw_liststyle == s:TREELIST
|
if exists("w:netrw_liststyle") && w:netrw_liststyle == s:TREELIST
|
||||||
" call Dfunc("NetrwTreeListing() bufname<".expand("%").">")
|
" call Dfunc("s:NetrwTreeListing() bufname<".expand("%").">")
|
||||||
" call Decho("curdir<".a:dirname.">",'~'.expand("<slnum>"))
|
" call Decho("curdir<".a:dirname.">",'~'.expand("<slnum>"))
|
||||||
" call Decho("win#".winnr().": w:netrw_treetop ".(exists("w:netrw_treetop")? "exists" : "doesn't exist")." w:netrw_treedict ".(exists("w:netrw_treedict")? "exists" : "doesn't exit"),'~'.expand("<slnum>"))
|
" call Decho("win#".winnr().": w:netrw_treetop ".(exists("w:netrw_treetop")? "exists" : "doesn't exist")." w:netrw_treedict ".(exists("w:netrw_treedict")? "exists" : "doesn't exit"),'~'.expand("<slnum>"))
|
||||||
" call Decho("g:netrw_banner=".g:netrw_banner.": banner ".(g:netrw_banner? "enabled" : "suppressed").": (line($)=".line("$")." byte2line(1)=".byte2line(1)." bannercnt=".w:netrw_bannercnt.")",'~'.expand("<slnum>"))
|
" call Decho("g:netrw_banner=".g:netrw_banner.": banner ".(g:netrw_banner? "enabled" : "suppressed").": (line($)=".line("$")." byte2line(1)=".byte2line(1)." bannercnt=".w:netrw_bannercnt.")",'~'.expand("<slnum>"))
|
||||||
|
|
||||||
" update the treetop
|
" update the treetop
|
||||||
" call Decho("update the treetop",'~'.expand("<slnum>"))
|
|
||||||
if !exists("w:netrw_treetop")
|
if !exists("w:netrw_treetop")
|
||||||
|
" call Decho("update the treetop (w:netrw_treetop doesn't exist yet)",'~'.expand("<slnum>"))
|
||||||
let w:netrw_treetop= a:dirname
|
let w:netrw_treetop= a:dirname
|
||||||
|
let s:netrw_treetop= w:netrw_treetop
|
||||||
" call Decho("w:netrw_treetop<".w:netrw_treetop."> (reusing)",'~'.expand("<slnum>"))
|
" call Decho("w:netrw_treetop<".w:netrw_treetop."> (reusing)",'~'.expand("<slnum>"))
|
||||||
elseif (w:netrw_treetop =~ ('^'.a:dirname) && s:Strlen(a:dirname) < s:Strlen(w:netrw_treetop)) || a:dirname !~ ('^'.w:netrw_treetop)
|
elseif (w:netrw_treetop =~ ('^'.a:dirname) && s:Strlen(a:dirname) < s:Strlen(w:netrw_treetop)) || a:dirname !~ ('^'.w:netrw_treetop)
|
||||||
|
" call Decho("update the treetop (override w:netrw_treetop with a:dirname<".a:dirname.">)",'~'.expand("<slnum>"))
|
||||||
let w:netrw_treetop= a:dirname
|
let w:netrw_treetop= a:dirname
|
||||||
|
let s:netrw_treetop= w:netrw_treetop
|
||||||
" call Decho("w:netrw_treetop<".w:netrw_treetop."> (went up)",'~'.expand("<slnum>"))
|
" call Decho("w:netrw_treetop<".w:netrw_treetop."> (went up)",'~'.expand("<slnum>"))
|
||||||
endif
|
endif
|
||||||
|
if exists("w:netrw_treetop")
|
||||||
|
let s:netrw_treetop= w:netrw_treetop
|
||||||
|
else
|
||||||
|
let w:netrw_treetop= getcwd()
|
||||||
|
let s:netrw_treetop= w:netrw_treetop
|
||||||
|
endif
|
||||||
|
|
||||||
if !exists("w:netrw_treedict")
|
if !exists("w:netrw_treedict")
|
||||||
" insure that we have a treedict, albeit empty
|
" insure that we have a treedict, albeit empty
|
||||||
@@ -9529,7 +9623,7 @@ fun! s:NetrwTreeListing(dirname)
|
|||||||
|
|
||||||
exe "setl ".g:netrw_bufsettings
|
exe "setl ".g:netrw_bufsettings
|
||||||
|
|
||||||
" call Dret("NetrwTreeListing : bufname<".expand("%").">")
|
" call Dret("s:NetrwTreeListing : bufname<".expand("%").">")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
endfun
|
endfun
|
||||||
@@ -9637,7 +9731,7 @@ fun! s:NetrwWideListing()
|
|||||||
let newcolstart = w:netrw_bannercnt + fpc
|
let newcolstart = w:netrw_bannercnt + fpc
|
||||||
let newcolend = newcolstart + fpc - 1
|
let newcolend = newcolstart + fpc - 1
|
||||||
" call Decho("bannercnt=".w:netrw_bannercnt." fpl=".w:netrw_fpl." fpc=".fpc." newcol[".newcolstart.",".newcolend."]",'~'.expand("<slnum>"))
|
" call Decho("bannercnt=".w:netrw_bannercnt." fpl=".w:netrw_fpl." fpc=".fpc." newcol[".newcolstart.",".newcolend."]",'~'.expand("<slnum>"))
|
||||||
if has("clipboard")
|
if has("clipboard") && g:netrw_clipboard
|
||||||
" call Decho("(s:NetrwWideListing) save @* and @+",'~'.expand("<slnum>"))
|
" call Decho("(s:NetrwWideListing) save @* and @+",'~'.expand("<slnum>"))
|
||||||
sil! let keepregstar = @*
|
sil! let keepregstar = @*
|
||||||
sil! let keepregplus = @+
|
sil! let keepregplus = @+
|
||||||
@@ -10683,7 +10777,7 @@ endfun
|
|||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" netrw#LocalBrowseCheck: {{{2
|
" netrw#LocalBrowseCheck: {{{2
|
||||||
fun! netrw#LocalBrowseCheck(dirname)
|
fun! netrw#LocalBrowseCheck(dirname)
|
||||||
" This function is called by netrwPlugin.vim's s:LocalBrowse(), s:NetrwRexplore(),
|
" This function is called by netrwPlugin.vim's s:LocalBrowseCheck(), s:NetrwRexplore(),
|
||||||
" and by <cr> when atop a listed file/directory (via a buffer-local map)
|
" and by <cr> when atop a listed file/directory (via a buffer-local map)
|
||||||
"
|
"
|
||||||
" unfortunate interaction -- split window debugging can't be used here, must use
|
" unfortunate interaction -- split window debugging can't be used here, must use
|
||||||
@@ -10834,7 +10928,7 @@ endfun
|
|||||||
" Hiding a buffer means that it will be re-used when examined, hence "fast".
|
" Hiding a buffer means that it will be re-used when examined, hence "fast".
|
||||||
" (re-using a buffer may not be as accurate)
|
" (re-using a buffer may not be as accurate)
|
||||||
"
|
"
|
||||||
" s:netrw_events : doesn't exist, s:LocalFastBrowser() will install autocmds whena med or fast browsing
|
" s:netrw_events : doesn't exist, s:LocalFastBrowser() will install autocmds with medium-speed or fast browsing
|
||||||
" =1: autocmds installed, but ignore next FocusGained event to avoid initial double-refresh of listing.
|
" =1: autocmds installed, but ignore next FocusGained event to avoid initial double-refresh of listing.
|
||||||
" BufEnter may be first event, then a FocusGained event. Ignore the first FocusGained event.
|
" BufEnter may be first event, then a FocusGained event. Ignore the first FocusGained event.
|
||||||
" If :Explore used: it sets s:netrw_events to 2, so no FocusGained events are ignored.
|
" If :Explore used: it sets s:netrw_events to 2, so no FocusGained events are ignored.
|
||||||
@@ -10996,13 +11090,14 @@ fun! s:LocalListing()
|
|||||||
let sz= s:NetrwHumanReadable(sz)
|
let sz= s:NetrwHumanReadable(sz)
|
||||||
endif
|
endif
|
||||||
let longfile= printf("%-".(g:netrw_maxfilenamelen+1)."s",pfile)
|
let longfile= printf("%-".(g:netrw_maxfilenamelen+1)."s",pfile)
|
||||||
let pfile = longfile.fsz." ".strftime(g:netrw_timefmt,getftime(filename))
|
let pfile = longfile.sz." ".strftime(g:netrw_timefmt,getftime(filename))
|
||||||
" call Decho("longlist support: sz=".sz." fsz=".fsz,'~'.expand("<slnum>"))
|
" call Decho("longlist support: sz=".sz." fsz=".fsz,'~'.expand("<slnum>"))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if g:netrw_sort_by =~# "^t"
|
if g:netrw_sort_by =~# "^t"
|
||||||
" sort by time (handles time up to 1 quintillion seconds, US)
|
" sort by time (handles time up to 1 quintillion seconds, US)
|
||||||
" Decorate listing by prepending a timestamp/ . Sorting will then be done based on time.
|
" Decorate listing by prepending a timestamp/ . Sorting will then be done based on time.
|
||||||
|
" call Decho("implementing g:netrw_sort_by=".g:netrw_sort_by." (time)")
|
||||||
" call Decho("getftime(".filename.")=".getftime(filename),'~'.expand("<slnum>"))
|
" call Decho("getftime(".filename.")=".getftime(filename),'~'.expand("<slnum>"))
|
||||||
let t = getftime(filename)
|
let t = getftime(filename)
|
||||||
let ft = strpart("000000000000000000",1,18-strlen(t)).t
|
let ft = strpart("000000000000000000",1,18-strlen(t)).t
|
||||||
@@ -11012,6 +11107,7 @@ fun! s:LocalListing()
|
|||||||
|
|
||||||
elseif g:netrw_sort_by =~ "^s"
|
elseif g:netrw_sort_by =~ "^s"
|
||||||
" sort by size (handles file sizes up to 1 quintillion bytes, US)
|
" sort by size (handles file sizes up to 1 quintillion bytes, US)
|
||||||
|
" call Decho("implementing g:netrw_sort_by=".g:netrw_sort_by." (size)")
|
||||||
" call Decho("getfsize(".filename.")=".getfsize(filename),'~'.expand("<slnum>"))
|
" call Decho("getfsize(".filename.")=".getfsize(filename),'~'.expand("<slnum>"))
|
||||||
let sz = getfsize(filename)
|
let sz = getfsize(filename)
|
||||||
if g:netrw_sizestyle =~# "[hH]"
|
if g:netrw_sizestyle =~# "[hH]"
|
||||||
@@ -11024,6 +11120,7 @@ fun! s:LocalListing()
|
|||||||
|
|
||||||
else
|
else
|
||||||
" sort by name
|
" sort by name
|
||||||
|
" call Decho("implementing g:netrw_sort_by=".g:netrw_sort_by." (name)")
|
||||||
" call Decho("exe NetrwKeepj put ='".pfile."'",'~'.expand("<slnum>"))
|
" call Decho("exe NetrwKeepj put ='".pfile."'",'~'.expand("<slnum>"))
|
||||||
sil! NetrwKeepj put=pfile
|
sil! NetrwKeepj put=pfile
|
||||||
endif
|
endif
|
||||||
@@ -11746,19 +11843,32 @@ endfun
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" s:NetrwCursor: responsible for setting cursorline/cursorcolumn based upon g:netrw_cursor {{{2
|
" s:NetrwCursor: responsible for setting cursorline/cursorcolumn based upon g:netrw_cursor {{{2
|
||||||
fun! s:NetrwCursor()
|
fun! s:NetrwCursor(editfile)
|
||||||
if !exists("w:netrw_liststyle")
|
if !exists("w:netrw_liststyle")
|
||||||
let w:netrw_liststyle= g:netrw_liststyle
|
let w:netrw_liststyle= g:netrw_liststyle
|
||||||
endif
|
endif
|
||||||
" call Dfunc("s:NetrwCursor() ft<".&ft."> liststyle=".w:netrw_liststyle." g:netrw_cursor=".g:netrw_cursor." s:netrw_usercuc=".s:netrw_usercuc." s:netrw_usercul=".s:netrw_usercul)
|
" call Dfunc("s:NetrwCursor() ft<".&ft."> liststyle=".w:netrw_liststyle." g:netrw_cursor=".g:netrw_cursor." s:netrw_usercuc=".s:netrw_usercuc." s:netrw_usercul=".s:netrw_usercul)
|
||||||
|
|
||||||
|
" call Decho("(s:NetrwCursor) COMBAK: cuc=".&l:cuc." cul=".&l:cul)
|
||||||
|
|
||||||
if &ft != "netrw"
|
if &ft != "netrw"
|
||||||
" if the current window isn't a netrw directory listing window, then use user cursorline/column
|
" if the current window isn't a netrw directory listing window, then use user cursorline/column
|
||||||
" settings. Affects when netrw is used to read/write a file using scp/ftp/etc.
|
" settings. Affects when netrw is used to read/write a file using scp/ftp/etc.
|
||||||
" call Decho("case ft!=netrw: use user cul,cuc",'~'.expand("<slnum>"))
|
" call Decho("case ft!=netrw: use user cul,cuc",'~'.expand("<slnum>"))
|
||||||
let &l:cursorline = s:netrw_usercul
|
|
||||||
let &l:cursorcolumn = s:netrw_usercuc
|
|
||||||
|
|
||||||
|
elseif g:netrw_cursor == 8
|
||||||
|
if w:netrw_liststyle == s:WIDELIST
|
||||||
|
setl cursorline
|
||||||
|
setl cursorcolumn
|
||||||
|
else
|
||||||
|
setl cursorline
|
||||||
|
endif
|
||||||
|
elseif g:netrw_cursor == 7
|
||||||
|
setl cursorline
|
||||||
|
elseif g:netrw_cursor == 6
|
||||||
|
if w:netrw_liststyle == s:WIDELIST
|
||||||
|
setl cursorline
|
||||||
|
endif
|
||||||
elseif g:netrw_cursor == 4
|
elseif g:netrw_cursor == 4
|
||||||
" all styles: cursorline, cursorcolumn
|
" all styles: cursorline, cursorcolumn
|
||||||
" call Decho("case g:netrw_cursor==4: setl cul cuc",'~'.expand("<slnum>"))
|
" call Decho("case g:netrw_cursor==4: setl cul cuc",'~'.expand("<slnum>"))
|
||||||
@@ -11775,26 +11885,22 @@ fun! s:NetrwCursor()
|
|||||||
else
|
else
|
||||||
" call Decho("case g:netrw_cursor==3 and not wide: setl cul (use user's cuc)",'~'.expand("<slnum>"))
|
" call Decho("case g:netrw_cursor==3 and not wide: setl cul (use user's cuc)",'~'.expand("<slnum>"))
|
||||||
setl cursorline
|
setl cursorline
|
||||||
let &l:cursorcolumn = s:netrw_usercuc
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
elseif g:netrw_cursor == 2
|
elseif g:netrw_cursor == 2
|
||||||
" thin-long-tree: cursorline, user's cursorcolumn
|
" thin-long-tree: cursorline, user's cursorcolumn
|
||||||
" wide : cursorline, user's cursorcolumn
|
" wide : cursorline, user's cursorcolumn
|
||||||
" call Decho("case g:netrw_cursor==2: setl cuc (use user's cul)",'~'.expand("<slnum>"))
|
" call Decho("case g:netrw_cursor==2: setl cuc (use user's cul)",'~'.expand("<slnum>"))
|
||||||
let &l:cursorcolumn = s:netrw_usercuc
|
|
||||||
setl cursorline
|
setl cursorline
|
||||||
|
|
||||||
elseif g:netrw_cursor == 1
|
elseif g:netrw_cursor == 1
|
||||||
" thin-long-tree: user's cursorline, user's cursorcolumn
|
" thin-long-tree: user's cursorline, user's cursorcolumn
|
||||||
" wide : cursorline, user's cursorcolumn
|
" wide : cursorline, user's cursorcolumn
|
||||||
let &l:cursorcolumn = s:netrw_usercuc
|
|
||||||
if w:netrw_liststyle == s:WIDELIST
|
if w:netrw_liststyle == s:WIDELIST
|
||||||
" call Decho("case g:netrw_cursor==2 and wide: setl cul (use user's cuc)",'~'.expand("<slnum>"))
|
" call Decho("case g:netrw_cursor==2 and wide: setl cul (use user's cuc)",'~'.expand("<slnum>"))
|
||||||
setl cursorline
|
setl cursorline
|
||||||
else
|
else
|
||||||
" call Decho("case g:netrw_cursor==2 and not wide: (use user's cul,cuc)",'~'.expand("<slnum>"))
|
" call Decho("case g:netrw_cursor==2 and not wide: (use user's cul,cuc)",'~'.expand("<slnum>"))
|
||||||
let &l:cursorline = s:netrw_usercul
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
else
|
else
|
||||||
@@ -11804,6 +11910,7 @@ fun! s:NetrwCursor()
|
|||||||
let &l:cursorcolumn = s:netrw_usercuc
|
let &l:cursorcolumn = s:netrw_usercuc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" call Decho("(s:NetrwCursor) COMBAK: cuc=".&l:cuc." cul=".&l:cul)
|
||||||
" call Dret("s:NetrwCursor : l:cursorline=".&l:cursorline." l:cursorcolumn=".&l:cursorcolumn)
|
" call Dret("s:NetrwCursor : l:cursorline=".&l:cursorline." l:cursorcolumn=".&l:cursorcolumn)
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
@@ -11817,6 +11924,7 @@ fun! s:RestoreCursorline()
|
|||||||
if exists("s:netrw_usercuc")
|
if exists("s:netrw_usercuc")
|
||||||
let &l:cursorcolumn = s:netrw_usercuc
|
let &l:cursorcolumn = s:netrw_usercuc
|
||||||
endif
|
endif
|
||||||
|
" call Decho("(s:RestoreCursorline) COMBAK: cuc=".&l:cuc." cul=".&l:cul)
|
||||||
" call Dret("s:RestoreCursorline : restored cul=".&l:cursorline." cuc=".&l:cursorcolumn)
|
" call Dret("s:RestoreCursorline : restored cul=".&l:cursorline." cuc=".&l:cursorcolumn)
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
@@ -11851,12 +11959,38 @@ fun! s:NetrwDelete(path)
|
|||||||
return result
|
return result
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------
|
||||||
|
" s:NetrwBufRemover: removes a buffer that: {{{2s
|
||||||
|
" has buffer-id > 1
|
||||||
|
" is unlisted
|
||||||
|
" is unnamed
|
||||||
|
" does not appear in any window
|
||||||
|
fun! s:NetrwBufRemover(bufid)
|
||||||
|
" call Dfunc("s:NetrwBufRemover(".a:bufid.")")
|
||||||
|
" call Decho("buf#".a:bufid." ".((a:bufid > 1)? ">" : "≯")." must be >1 for removal","~".expand("<slnum>"))
|
||||||
|
" call Decho("buf#".a:bufid." is ".(buflisted(a:bufid)? "listed" : "unlisted"),"~".expand("<slnum>"))
|
||||||
|
" call Decho("buf#".a:bufid." has name <".bufname(a:bufid).">","~".expand("<slnum>"))
|
||||||
|
" call Decho("buf#".a:bufid." has winid#".bufwinid(a:bufid),"~".expand("<slnum>"))
|
||||||
|
|
||||||
|
if a:bufid > 1 && !buflisted(a:bufid) && bufname(a:bufid) == "" && bufwinid(a:bufid) == -1
|
||||||
|
" call Decho("(s:NetrwBufRemover) removing buffer#".a:bufid,"~".expand("<slnum>"))
|
||||||
|
exe "bd! ".a:bufid
|
||||||
|
endif
|
||||||
|
|
||||||
|
" call Dret("s:NetrwBufRemover")
|
||||||
|
endfun
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" s:NetrwEnew: opens a new buffer, passes netrw buffer variables through {{{2
|
" s:NetrwEnew: opens a new buffer, passes netrw buffer variables through {{{2
|
||||||
fun! s:NetrwEnew(...)
|
fun! s:NetrwEnew(...)
|
||||||
" call Dfunc("s:NetrwEnew() a:0=".a:0." win#".winnr()." winnr($)=".winnr("$")." bufnr($)=".bufnr("$")." expand(%)<".expand("%").">")
|
" call Dfunc("s:NetrwEnew() a:0=".a:0." win#".winnr()." winnr($)=".winnr("$")." bufnr($)=".bufnr("$")." expand(%)<".expand("%").">")
|
||||||
" call Decho("curdir<".((a:0>0)? a:1 : "")."> buf#".bufnr("%")."<".bufname("%").">",'~'.expand("<slnum>"))
|
" call Decho("curdir<".((a:0>0)? a:1 : "")."> buf#".bufnr("%")."<".bufname("%").">",'~'.expand("<slnum>"))
|
||||||
|
|
||||||
|
" Clean out the last buffer:
|
||||||
|
" Check if the last buffer has # > 1, is unlisted, is unnamed, and does not appear in a window
|
||||||
|
" If so, delete it.
|
||||||
|
call s:NetrwBufRemover(bufnr("$"))
|
||||||
|
|
||||||
" grab a function-local-variable copy of buffer variables
|
" grab a function-local-variable copy of buffer variables
|
||||||
" call Decho("make function-local copy of netrw variables",'~'.expand("<slnum>"))
|
" call Decho("make function-local copy of netrw variables",'~'.expand("<slnum>"))
|
||||||
if exists("b:netrw_bannercnt") |let netrw_bannercnt = b:netrw_bannercnt |endif
|
if exists("b:netrw_bannercnt") |let netrw_bannercnt = b:netrw_bannercnt |endif
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" netrwSettings.vim: makes netrw settings simpler
|
" netrwSettings.vim: makes netrw settings simpler
|
||||||
" Date: Nov 09, 2016
|
" Date: Aug 12, 2021
|
||||||
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||||
" Version: 16
|
" Version: 17 ASTRO-ONLY
|
||||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
||||||
" Permission is hereby granted to use and distribute this code,
|
" Permission is hereby granted to use and distribute this code,
|
||||||
" with or without modifications, provided that this copyright
|
" with or without modifications, provided that this copyright
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
if exists("g:loaded_netrwSettings") || &cp
|
if exists("g:loaded_netrwSettings") || &cp
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_netrwSettings = "v16"
|
let g:loaded_netrwSettings = "v17"
|
||||||
if v:version < 700
|
if v:version < 700
|
||||||
echohl WarningMsg
|
echohl WarningMsg
|
||||||
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
||||||
@@ -31,7 +31,7 @@ endif
|
|||||||
" NetrwSettings: {{{1
|
" NetrwSettings: {{{1
|
||||||
fun! netrwSettings#NetrwSettings()
|
fun! netrwSettings#NetrwSettings()
|
||||||
" this call is here largely just to insure that netrw has been loaded
|
" this call is here largely just to insure that netrw has been loaded
|
||||||
call netrw#SavePosn()
|
call netrw#WinPath("")
|
||||||
if !exists("g:loaded_netrw")
|
if !exists("g:loaded_netrw")
|
||||||
echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
|
echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
"
|
"
|
||||||
" let g:phpcomplete_relax_static_constraint = 1/0 [default 0]
|
" let g:phpcomplete_relax_static_constraint = 1/0 [default 0]
|
||||||
" Enables completion for non-static methods when completing for static context (::).
|
" Enables completion for non-static methods when completing for static context (::).
|
||||||
" This generates E_STRICT level warning, but php calls these methods nontheless.
|
" This generates E_STRICT level warning, but php calls these methods nonetheless.
|
||||||
"
|
"
|
||||||
" let g:phpcomplete_complete_for_unknown_classes = 1/0 [default 0]
|
" let g:phpcomplete_complete_for_unknown_classes = 1/0 [default 0]
|
||||||
" Enables completion of variables and functions in "everything under the sun" fashion
|
" Enables completion of variables and functions in "everything under the sun" fashion
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
" This option controls the number of characters the user needs to type before
|
" This option controls the number of characters the user needs to type before
|
||||||
" the tags will be searched for namespaces and classes in typed out namespaces in
|
" the tags will be searched for namespaces and classes in typed out namespaces in
|
||||||
" "use ..." context. Setting this to 0 is not recommended because that means the code
|
" "use ..." context. Setting this to 0 is not recommended because that means the code
|
||||||
" have to scan every tag, and vim's taglist() function runs extremly slow with a
|
" have to scan every tag, and vim's taglist() function runs extremely slow with a
|
||||||
" "match everything" pattern.
|
" "match everything" pattern.
|
||||||
"
|
"
|
||||||
" let g:phpcomplete_parse_docblock_comments = 1/0 [default 0]
|
" let g:phpcomplete_parse_docblock_comments = 1/0 [default 0]
|
||||||
@@ -263,7 +263,7 @@ function! phpcomplete#CompleteUse(base) " {{{
|
|||||||
call add(no_namespace_matches, {'word': namespace_for_class.'\'.tag.name, 'kind': tag.kind, 'menu': tag.filename, 'info': tag.filename })
|
call add(no_namespace_matches, {'word': namespace_for_class.'\'.tag.name, 'kind': tag.kind, 'menu': tag.filename, 'info': tag.filename })
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
" if it seems that the tags file have namespace informations we can safely throw
|
" if it seems that the tags file have namespace information we can safely throw
|
||||||
" away namespaceless tag matches since we can be sure they are invalid
|
" away namespaceless tag matches since we can be sure they are invalid
|
||||||
if patched_ctags_detected
|
if patched_ctags_detected
|
||||||
no_namespace_matches = []
|
no_namespace_matches = []
|
||||||
@@ -805,7 +805,7 @@ function! phpcomplete#CompleteClassName(base, kinds, current_namespace, imports)
|
|||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
" resolve the typed in part with namespaces (if theres a \ in it)
|
" resolve the typed in part with namespaces (if there's a \ in it)
|
||||||
let [tag_match_pattern, namespace_for_class] = phpcomplete#ExpandClassName(a:base, a:current_namespace, a:imports)
|
let [tag_match_pattern, namespace_for_class] = phpcomplete#ExpandClassName(a:base, a:current_namespace, a:imports)
|
||||||
|
|
||||||
let tags = []
|
let tags = []
|
||||||
@@ -921,11 +921,11 @@ function! s:getNextCharWithPos(filelines, current_pos) " {{{
|
|||||||
endfunction " }}}
|
endfunction " }}}
|
||||||
|
|
||||||
function! phpcomplete#EvaluateModifiers(modifiers, required_modifiers, prohibited_modifiers) " {{{
|
function! phpcomplete#EvaluateModifiers(modifiers, required_modifiers, prohibited_modifiers) " {{{
|
||||||
" if theres no modifier, and no modifier is allowed and no modifier is required
|
" if there's no modifier, and no modifier is allowed and no modifier is required
|
||||||
if len(a:modifiers) == 0 && len(a:required_modifiers) == 0
|
if len(a:modifiers) == 0 && len(a:required_modifiers) == 0
|
||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
" check if every requred modifier is present
|
" check if every required modifier is present
|
||||||
for required_modifier in a:required_modifiers
|
for required_modifier in a:required_modifiers
|
||||||
if index(a:modifiers, required_modifier) == -1
|
if index(a:modifiers, required_modifier) == -1
|
||||||
return 0
|
return 0
|
||||||
@@ -1253,7 +1253,7 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" save the coma position for later use if theres a "naked" , possibly separating a parameter and it is not in a parented part
|
" save the coma position for later use if there's a "naked" , possibly separating a parameter and it is not in a parented part
|
||||||
if first_coma_break_pos == -1 && current_char == ','
|
if first_coma_break_pos == -1 && current_char == ','
|
||||||
let first_coma_break_pos = len(instruction)
|
let first_coma_break_pos = len(instruction)
|
||||||
endif
|
endif
|
||||||
@@ -1299,7 +1299,7 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
|
|||||||
|
|
||||||
" there were a "naked" coma in the instruction
|
" there were a "naked" coma in the instruction
|
||||||
if first_coma_break_pos != -1
|
if first_coma_break_pos != -1
|
||||||
if instruction !~? '^use' && instruction !~? '^class' " use ... statements and class delcarations should not be broken up by comas
|
if instruction !~? '^use' && instruction !~? '^class' " use ... statements and class declarations should not be broken up by comas
|
||||||
let pos = (-1 * first_coma_break_pos) + 1
|
let pos = (-1 * first_coma_break_pos) + 1
|
||||||
let instruction = instruction[pos :]
|
let instruction = instruction[pos :]
|
||||||
endif
|
endif
|
||||||
@@ -1311,7 +1311,7 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
|
|||||||
" clear everything up until the first (
|
" clear everything up until the first (
|
||||||
let instruction = substitute(instruction, '^\(if\|while\|foreach\|for\)\s*(\s*', '', '')
|
let instruction = substitute(instruction, '^\(if\|while\|foreach\|for\)\s*(\s*', '', '')
|
||||||
|
|
||||||
" lets iterate trough the instruction until we can find the pair for the opening (
|
" lets iterate through the instruction until we can find the pair for the opening (
|
||||||
let i = 0
|
let i = 0
|
||||||
let depth = 1
|
let depth = 1
|
||||||
while i < len(instruction)
|
while i < len(instruction)
|
||||||
@@ -1419,7 +1419,7 @@ function! phpcomplete#GetCallChainReturnType(classname_candidate, class_candidat
|
|||||||
let parts = split(substitute(type, '^\\', '', ''), '\')
|
let parts = split(substitute(type, '^\\', '', ''), '\')
|
||||||
let class_candidate_namespace = join(parts[0:-2], '\')
|
let class_candidate_namespace = join(parts[0:-2], '\')
|
||||||
let classname_candidate = parts[-1]
|
let classname_candidate = parts[-1]
|
||||||
" check for renamed namepsace in imports
|
" check for renamed namespace in imports
|
||||||
if has_key(classstructure.imports, class_candidate_namespace)
|
if has_key(classstructure.imports, class_candidate_namespace)
|
||||||
let class_candidate_namespace = classstructure.imports[class_candidate_namespace].name
|
let class_candidate_namespace = classstructure.imports[class_candidate_namespace].name
|
||||||
endif
|
endif
|
||||||
@@ -2018,7 +2018,7 @@ function! phpcomplete#GetCachedClassContents(classlocation, class_name) " {{{
|
|||||||
if getftime(classstructure.file) != classstructure.mtime
|
if getftime(classstructure.file) != classstructure.mtime
|
||||||
let valid = 0
|
let valid = 0
|
||||||
" we could break here, but the time required for checking probably worth
|
" we could break here, but the time required for checking probably worth
|
||||||
" the the memory we can free by checking every file in the cached hirearchy
|
" the the memory we can free by checking every file in the cached hierarchy
|
||||||
call phpcomplete#ClearCachedClassContents(classstructure.file)
|
call phpcomplete#ClearCachedClassContents(classstructure.file)
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
@@ -2032,7 +2032,7 @@ function! phpcomplete#GetCachedClassContents(classlocation, class_name) " {{{
|
|||||||
call remove(s:cache_classstructures, cache_key)
|
call remove(s:cache_classstructures, cache_key)
|
||||||
call phpcomplete#ClearCachedClassContents(full_file_path)
|
call phpcomplete#ClearCachedClassContents(full_file_path)
|
||||||
|
|
||||||
" fall trough for the read from files path
|
" fall through for the read from files path
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
call phpcomplete#ClearCachedClassContents(full_file_path)
|
call phpcomplete#ClearCachedClassContents(full_file_path)
|
||||||
@@ -2141,7 +2141,7 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
|||||||
let l = lnum
|
let l = lnum
|
||||||
let search_line = trait_line
|
let search_line = trait_line
|
||||||
|
|
||||||
" add lines from the file until theres no ';' in them
|
" add lines from the file until there's no ';' in them
|
||||||
while search_line !~? ';' && l > 0
|
while search_line !~? ';' && l > 0
|
||||||
" file lines are reversed so we need to go backwards
|
" file lines are reversed so we need to go backwards
|
||||||
let l += 1
|
let l += 1
|
||||||
@@ -2573,7 +2573,7 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
|||||||
let search_line = line
|
let search_line = line
|
||||||
let use_line = line
|
let use_line = line
|
||||||
|
|
||||||
" add lines from the file until theres no ';' in them
|
" add lines from the file until there's no ';' in them
|
||||||
while search_line !~? ';' && l > 0
|
while search_line !~? ';' && l > 0
|
||||||
" file lines are reversed so we need to go backwards
|
" file lines are reversed so we need to go backwards
|
||||||
let l -= 1
|
let l -= 1
|
||||||
@@ -2605,7 +2605,7 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
|||||||
" find kind flags from tags or built in methods for the objects we extracted
|
" find kind flags from tags or built in methods for the objects we extracted
|
||||||
" they can be either classes, interfaces or namespaces, no other thing is importable in php
|
" they can be either classes, interfaces or namespaces, no other thing is importable in php
|
||||||
for [key, import] in items(imports)
|
for [key, import] in items(imports)
|
||||||
" if theres a \ in the name we have it's definitely not a built in thing, look for tags
|
" if there's a \ in the name we have it's definitely not a built in thing, look for tags
|
||||||
if import.name =~ '\\'
|
if import.name =~ '\\'
|
||||||
let patched_ctags_detected = 0
|
let patched_ctags_detected = 0
|
||||||
let [classname, namespace_for_classes] = phpcomplete#ExpandClassName(import.name, '\', {})
|
let [classname, namespace_for_classes] = phpcomplete#ExpandClassName(import.name, '\', {})
|
||||||
@@ -2662,10 +2662,10 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
|||||||
let import['kind'] = 'i'
|
let import['kind'] = 'i'
|
||||||
let import['builtin'] = 1
|
let import['builtin'] = 1
|
||||||
else
|
else
|
||||||
" or can be a tag with exactly matchign name
|
" or can be a tag with exactly matching name
|
||||||
let tags = phpcomplete#GetTaglist('^'.import['name'].'$')
|
let tags = phpcomplete#GetTaglist('^'.import['name'].'$')
|
||||||
for tag in tags
|
for tag in tags
|
||||||
" search for the first matchin namespace, class, interface with no namespace
|
" search for the first matching namespace, class, interface with no namespace
|
||||||
if !has_key(tag, 'namespace') && (tag.kind == 'n' || tag.kind == 'c' || tag.kind == 'i' || tag.kind == 't')
|
if !has_key(tag, 'namespace') && (tag.kind == 'n' || tag.kind == 'c' || tag.kind == 'i' || tag.kind == 't')
|
||||||
call extend(import, tag)
|
call extend(import, tag)
|
||||||
let import['builtin'] = 0
|
let import['builtin'] = 0
|
||||||
@@ -2883,7 +2883,7 @@ for [ext, data] in items(php_builtin['functions'])
|
|||||||
call extend(g:php_builtin_functions, data)
|
call extend(g:php_builtin_functions, data)
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
" Built in classs
|
" Built in class
|
||||||
let g:php_builtin_classes = {}
|
let g:php_builtin_classes = {}
|
||||||
for [ext, data] in items(php_builtin['classes'])
|
for [ext, data] in items(php_builtin['classes'])
|
||||||
call extend(g:php_builtin_classes, data)
|
call extend(g:php_builtin_classes, data)
|
||||||
@@ -2901,10 +2901,10 @@ for [ext, data] in items(php_builtin['constants'])
|
|||||||
call extend(g:php_constants, data)
|
call extend(g:php_constants, data)
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
" When the classname not found or found but the tags dosen't contain that
|
" When the classname not found or found but the tags doesn't contain that
|
||||||
" class we will try to complate any method of any builtin class. To speed up
|
" class we will try to complete any method of any builtin class. To speed up
|
||||||
" that lookup we compile a 'ClassName::MethodName':'info' dictionary from the
|
" that lookup we compile a 'ClassName::MethodName':'info' dictionary from the
|
||||||
" builtin class informations
|
" builtin class information
|
||||||
let g:php_builtin_object_functions = {}
|
let g:php_builtin_object_functions = {}
|
||||||
|
|
||||||
" When completing for 'everyting imaginable' (no class context, not a
|
" When completing for 'everyting imaginable' (no class context, not a
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ class Completer(object):
|
|||||||
pass
|
pass
|
||||||
if len(arg_text) == 0:
|
if len(arg_text) == 0:
|
||||||
# The doc string sometimes contains the function signature
|
# The doc string sometimes contains the function signature
|
||||||
# this works for alot of C modules that are part of the
|
# this works for a lot of C modules that are part of the
|
||||||
# standard library
|
# standard library
|
||||||
doc = func_obj.__doc__
|
doc = func_obj.__doc__
|
||||||
if doc:
|
if doc:
|
||||||
|
|||||||
@@ -191,7 +191,7 @@ class Completer(object):
|
|||||||
pass
|
pass
|
||||||
if len(arg_text) == 0:
|
if len(arg_text) == 0:
|
||||||
# The doc string sometimes contains the function signature
|
# The doc string sometimes contains the function signature
|
||||||
# this works for alot of C modules that are part of the
|
# this works for a lot of C modules that are part of the
|
||||||
# standard library
|
# standard library
|
||||||
doc = func_obj.__doc__
|
doc = func_obj.__doc__
|
||||||
if doc:
|
if doc:
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
" Maintainer: Mark Guzman <segfault@hasno.info>
|
" Maintainer: Mark Guzman <segfault@hasno.info>
|
||||||
" URL: https://github.com/vim-ruby/vim-ruby
|
" URL: https://github.com/vim-ruby/vim-ruby
|
||||||
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
|
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
|
||||||
" Last Change: 2019 Feb 25
|
" Last Change: 2020 Apr 12
|
||||||
" ----------------------------------------------------------------------------
|
" ----------------------------------------------------------------------------
|
||||||
"
|
"
|
||||||
" Ruby IRB/Complete author: Keiju ISHITSUKA(keiju@ishitsuka.com)
|
" Ruby IRB/Complete author: Keiju ISHITSUKA(keiju@ishitsuka.com)
|
||||||
@@ -501,13 +501,8 @@ class VimRubyCompletion
|
|||||||
return if rails_base == nil
|
return if rails_base == nil
|
||||||
$:.push rails_base unless $:.index( rails_base )
|
$:.push rails_base unless $:.index( rails_base )
|
||||||
|
|
||||||
rails_config = rails_base + "config/"
|
bootfile = rails_base + "config/boot.rb"
|
||||||
rails_lib = rails_base + "lib/"
|
envfile = rails_base + "config/environment.rb"
|
||||||
$:.push rails_config unless $:.index( rails_config )
|
|
||||||
$:.push rails_lib unless $:.index( rails_lib )
|
|
||||||
|
|
||||||
bootfile = rails_config + "boot.rb"
|
|
||||||
envfile = rails_config + "environment.rb"
|
|
||||||
if File.exists?( bootfile ) && File.exists?( envfile )
|
if File.exists?( bootfile ) && File.exists?( envfile )
|
||||||
begin
|
begin
|
||||||
require bootfile
|
require bootfile
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
" and complete it.
|
" and complete it.
|
||||||
"
|
"
|
||||||
" Version 16.0 (Dec 2015)
|
" Version 16.0 (Dec 2015)
|
||||||
" - NF: If reseting the cache and table, procedure or view completion
|
" - NF: If resetting the cache and table, procedure or view completion
|
||||||
" had been used via dbext, have dbext delete or recreate the
|
" had been used via dbext, have dbext delete or recreate the
|
||||||
" dictionary so that new objects are picked up for the
|
" dictionary so that new objects are picked up for the
|
||||||
" next completion.
|
" next completion.
|
||||||
@@ -554,7 +554,7 @@ function! sqlcomplete#PreCacheSyntax(...)
|
|||||||
let syn_group_arr = g:omni_sql_precache_syntax_groups
|
let syn_group_arr = g:omni_sql_precache_syntax_groups
|
||||||
endif
|
endif
|
||||||
" For each group specified in the list, precache all
|
" For each group specified in the list, precache all
|
||||||
" the sytnax items.
|
" the syntax items.
|
||||||
if !empty(syn_group_arr)
|
if !empty(syn_group_arr)
|
||||||
for group_name in syn_group_arr
|
for group_name in syn_group_arr
|
||||||
let syn_items = extend( syn_items, s:SQLCGetSyntaxList(group_name) )
|
let syn_items = extend( syn_items, s:SQLCGetSyntaxList(group_name) )
|
||||||
@@ -577,7 +577,7 @@ function! sqlcomplete#ResetCacheSyntax(...)
|
|||||||
let syn_group_arr = g:omni_sql_precache_syntax_groups
|
let syn_group_arr = g:omni_sql_precache_syntax_groups
|
||||||
endif
|
endif
|
||||||
" For each group specified in the list, precache all
|
" For each group specified in the list, precache all
|
||||||
" the sytnax items.
|
" the syntax items.
|
||||||
if !empty(syn_group_arr)
|
if !empty(syn_group_arr)
|
||||||
for group_name in syn_group_arr
|
for group_name in syn_group_arr
|
||||||
let list_idx = index(s:syn_list, group_name, 0, &ignorecase)
|
let list_idx = index(s:syn_list, group_name, 0, &ignorecase)
|
||||||
@@ -617,7 +617,7 @@ function! sqlcomplete#DrillIntoTable()
|
|||||||
else
|
else
|
||||||
" If the popup is not visible, simple perform the normal
|
" If the popup is not visible, simple perform the normal
|
||||||
" key behaviour.
|
" key behaviour.
|
||||||
" Must use exec since they key must be preceeded by "\"
|
" Must use exec since the key must be preceded by "\"
|
||||||
" or feedkeys will simply push each character of the string
|
" or feedkeys will simply push each character of the string
|
||||||
" rather than the "key press".
|
" rather than the "key press".
|
||||||
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")'
|
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")'
|
||||||
@@ -634,7 +634,7 @@ function! sqlcomplete#DrillOutOfColumns()
|
|||||||
else
|
else
|
||||||
" If the popup is not visible, simple perform the normal
|
" If the popup is not visible, simple perform the normal
|
||||||
" key behaviour.
|
" key behaviour.
|
||||||
" Must use exec since they key must be preceeded by "\"
|
" Must use exec since the key must be preceded by "\"
|
||||||
" or feedkeys will simply push each character of the string
|
" or feedkeys will simply push each character of the string
|
||||||
" rather than the "key press".
|
" rather than the "key press".
|
||||||
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")'
|
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")'
|
||||||
@@ -843,7 +843,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
|||||||
let curline = line(".")
|
let curline = line(".")
|
||||||
let curcol = col(".")
|
let curcol = col(".")
|
||||||
|
|
||||||
" Do not let searchs wrap
|
" Do not let searches wrap
|
||||||
setlocal nowrapscan
|
setlocal nowrapscan
|
||||||
" If . was entered, look at the word just before the .
|
" If . was entered, look at the word just before the .
|
||||||
" We are looking for something like this:
|
" We are looking for something like this:
|
||||||
@@ -863,7 +863,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
|||||||
" Search forward until one of the following:
|
" Search forward until one of the following:
|
||||||
" 1. Another select/update/delete statement
|
" 1. Another select/update/delete statement
|
||||||
" 2. A ; at the end of a line (the delimiter)
|
" 2. A ; at the end of a line (the delimiter)
|
||||||
" 3. The end of the file (incase no delimiter)
|
" 3. The end of the file (in case no delimiter)
|
||||||
" Yank the visually selected text into the "y register.
|
" Yank the visually selected text into the "y register.
|
||||||
exec 'silent! normal! vl/\c\(\<select\>\|\<update\>\|\<delete\>\|;\s*$\|\%$\)'."\n".'"yy'
|
exec 'silent! normal! vl/\c\(\<select\>\|\<update\>\|\<delete\>\|;\s*$\|\%$\)'."\n".'"yy'
|
||||||
|
|
||||||
|
|||||||
@@ -778,7 +778,7 @@ fun! tar#Vimuntar(...)
|
|||||||
elseif executable("gzip")
|
elseif executable("gzip")
|
||||||
silent exe "!gzip -d ".shellescape(tartail)
|
silent exe "!gzip -d ".shellescape(tartail)
|
||||||
else
|
else
|
||||||
echoerr "unable to decompress<".tartail."> on this sytem"
|
echoerr "unable to decompress<".tartail."> on this system"
|
||||||
if simplify(curdir) != simplify(tarhome)
|
if simplify(curdir) != simplify(tarhome)
|
||||||
" remove decompressed tarball, restore directory
|
" remove decompressed tarball, restore directory
|
||||||
" call Decho("delete(".tartail.".tar)")
|
" call Decho("delete(".tartail.".tar)")
|
||||||
|
|||||||
@@ -693,7 +693,7 @@ func! tohtml#GetUserSettings() "{{{
|
|||||||
let user_settings = {}
|
let user_settings = {}
|
||||||
|
|
||||||
" Define the correct option if the old option name exists and we haven't
|
" Define the correct option if the old option name exists and we haven't
|
||||||
" already defined the correct one. Maybe I'll put out a warnig message about
|
" already defined the correct one. Maybe I'll put out a warning message about
|
||||||
" this sometime and remove the old option entirely at some even later time,
|
" this sometime and remove the old option entirely at some even later time,
|
||||||
" but for now just silently accept the old option.
|
" but for now just silently accept the old option.
|
||||||
if exists('g:use_xhtml') && !exists("g:html_use_xhtml")
|
if exists('g:use_xhtml') && !exists("g:html_use_xhtml")
|
||||||
|
|||||||
@@ -199,7 +199,7 @@ function! xmlcomplete#CompleteTags(findstart, base)
|
|||||||
" 1. Events attributes
|
" 1. Events attributes
|
||||||
if context =~ '\s'
|
if context =~ '\s'
|
||||||
|
|
||||||
" If attr contains =\s*[\"'] we catched value of attribute
|
" If attr contains =\s*[\"'] we catch value of attribute
|
||||||
if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
|
if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
|
||||||
" Let do attribute specific completion
|
" Let do attribute specific completion
|
||||||
let attrname = matchstr(attr, '.*\ze\s*=')
|
let attrname = matchstr(attr, '.*\ze\s*=')
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ fun! zip#Browse(zipfile)
|
|||||||
" sanity checks
|
" sanity checks
|
||||||
if !exists("*fnameescape")
|
if !exists("*fnameescape")
|
||||||
if &verbose > 1
|
if &verbose > 1
|
||||||
echoerr "the zip plugin is not available (your vim doens't support fnameescape())"
|
echoerr "the zip plugin is not available (your vim doesn't support fnameescape())"
|
||||||
endif
|
endif
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -12,6 +12,6 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
|||||||
command -nargs=* CompilerSet setlocal <args>
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" NOTE: compiler must be runned with -vb to write whole source path, not only file
|
" NOTE: compiler must be run with -vb to write whole source path, not only file
|
||||||
" name.
|
" name.
|
||||||
CompilerSet errorformat=%f(%l\\,%c)\ %m
|
CompilerSet errorformat=%f(%l\\,%c)\ %m
|
||||||
|
|||||||
16
runtime/compiler/scdoc.vim
Normal file
16
runtime/compiler/scdoc.vim
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
" scdoc compiler for Vim
|
||||||
|
" Compiler: scdoc
|
||||||
|
" Maintainer: Greg Anders <greg@gpanders.com>
|
||||||
|
" Last Updated: 2019-10-24
|
||||||
|
|
||||||
|
if exists('current_compiler')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = 'scdoc'
|
||||||
|
|
||||||
|
if exists(':CompilerSet') != 2
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
CompilerSet makeprg=scdoc\ <\ %\ 2>&1
|
||||||
|
CompilerSet errorformat=Error\ at\ %l:%c:\ %m,%-G%.%#
|
||||||
17
runtime/compiler/spectral.vim
Normal file
17
runtime/compiler/spectral.vim
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
" Vim compiler file
|
||||||
|
" Compiler: Spectral for YAML
|
||||||
|
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
|
||||||
|
" Last Change: 2021 July 21
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "spectral"
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
CompilerSet makeprg=spectral\ lint\ %\ -f\ text
|
||||||
|
CompilerSet errorformat=%f:%l:%c\ %t%.%\\{-}\ %m
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ endif
|
|||||||
if exists('b:tex_ignore_makefile') || exists('g:tex_ignore_makefile') ||
|
if exists('b:tex_ignore_makefile') || exists('g:tex_ignore_makefile') ||
|
||||||
\(!filereadable('Makefile') && !filereadable('makefile'))
|
\(!filereadable('Makefile') && !filereadable('makefile'))
|
||||||
" If buffer-local variable 'tex_flavor' exists, it defines TeX flavor,
|
" If buffer-local variable 'tex_flavor' exists, it defines TeX flavor,
|
||||||
" otherwize the same for global variable with same name, else it will be
|
" otherwise the same for global variable with same name, else it will be
|
||||||
" LaTeX
|
" LaTeX
|
||||||
if exists("b:tex_flavor")
|
if exists("b:tex_flavor")
|
||||||
let current_compiler = b:tex_flavor
|
let current_compiler = b:tex_flavor
|
||||||
|
|||||||
16
runtime/compiler/yamllint.vim
Normal file
16
runtime/compiler/yamllint.vim
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
" Vim compiler file
|
||||||
|
" Compiler: Yamllint for YAML
|
||||||
|
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
|
||||||
|
" Last Change: 2021 July 21
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "yamllint"
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
CompilerSet makeprg=yamllint\ -f\ parsable
|
||||||
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
*arabic.txt* For Vim version 8.2. Last change: 2019 May 05
|
*arabic.txt* For Vim version 8.2. Last change: 2021 Jun 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Nadim Shaikli
|
VIM REFERENCE MANUAL by Nadim Shaikli
|
||||||
@@ -176,6 +176,13 @@ o Enable Arabic settings [short-cut]
|
|||||||
and its support is preferred due to its level of offerings.
|
and its support is preferred due to its level of offerings.
|
||||||
'arabic' when 'termbidi' is enabled only sets the keymap.
|
'arabic' when 'termbidi' is enabled only sets the keymap.
|
||||||
|
|
||||||
|
For vertical window isolation while setting 'termbidi' an LTR
|
||||||
|
vertical separator like "l" or "𝖨" may be used. It may also be
|
||||||
|
hidden by changing its color to the foreground color: >
|
||||||
|
:set fillchars=vert:l
|
||||||
|
:hi VertSplit ctermbg=White
|
||||||
|
< Note that this is a workaround, not a proper solution.
|
||||||
|
|
||||||
If, on the other hand, you'd like to be verbose and explicit and
|
If, on the other hand, you'd like to be verbose and explicit and
|
||||||
are opting not to use the 'arabic' short-cut command, here's what
|
are opting not to use the 'arabic' short-cut command, here's what
|
||||||
is needed (i.e. if you use ':set arabic' you can skip this section) -
|
is needed (i.e. if you use ':set arabic' you can skip this section) -
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*autocmd.txt* For Vim version 8.2. Last change: 2021 May 29
|
*autocmd.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -54,7 +54,7 @@ effects. Be careful not to destroy your text.
|
|||||||
:au[tocmd] [group] {event} {pat} [++once] [++nested] {cmd}
|
:au[tocmd] [group] {event} {pat} [++once] [++nested] {cmd}
|
||||||
Add {cmd} to the list of commands that Vim will
|
Add {cmd} to the list of commands that Vim will
|
||||||
execute automatically on {event} for a file matching
|
execute automatically on {event} for a file matching
|
||||||
{pat} |autocmd-patterns|.
|
{pat} |autocmd-patterns|.
|
||||||
Here {event} cannot be "*". *E1155*
|
Here {event} cannot be "*". *E1155*
|
||||||
Note: A quote character is seen as argument to the
|
Note: A quote character is seen as argument to the
|
||||||
:autocmd and won't start a comment.
|
:autocmd and won't start a comment.
|
||||||
@@ -76,6 +76,12 @@ and in a `:def` function) then {cmd} will be executed as in Vim9
|
|||||||
script. Thus this depends on where the autocmd is defined, not where it is
|
script. Thus this depends on where the autocmd is defined, not where it is
|
||||||
triggered.
|
triggered.
|
||||||
|
|
||||||
|
{cmd} can be a block, like with `:command`, see |:command-repl|. Example: >
|
||||||
|
au BufReadPost *.xml {
|
||||||
|
setlocal matchpairs+=<:>
|
||||||
|
/<start
|
||||||
|
}
|
||||||
|
|
||||||
Note: The ":autocmd" command can only be followed by another command when the
|
Note: The ":autocmd" command can only be followed by another command when the
|
||||||
'|' appears before {cmd}. This works: >
|
'|' appears before {cmd}. This works: >
|
||||||
:augroup mine | au! BufRead | augroup END
|
:augroup mine | au! BufRead | augroup END
|
||||||
@@ -360,6 +366,8 @@ Name triggered by ~
|
|||||||
|InsertCharPre| when a character was typed in Insert mode, before
|
|InsertCharPre| when a character was typed in Insert mode, before
|
||||||
inserting it
|
inserting it
|
||||||
|
|
||||||
|
|ModeChanged| after changing the mode
|
||||||
|
|
||||||
|TextChanged| after a change was made to the text in Normal mode
|
|TextChanged| after a change was made to the text in Normal mode
|
||||||
|TextChangedI| after a change was made to the text in Insert mode
|
|TextChangedI| after a change was made to the text in Insert mode
|
||||||
when popup menu is not visible
|
when popup menu is not visible
|
||||||
@@ -679,8 +687,11 @@ CursorHoldI Just like CursorHold, but in Insert mode.
|
|||||||
CursorMoved After the cursor was moved in Normal or Visual
|
CursorMoved After the cursor was moved in Normal or Visual
|
||||||
mode. Also when the text of the cursor line
|
mode. Also when the text of the cursor line
|
||||||
has been changed, e.g., with "x", "rx" or "p".
|
has been changed, e.g., with "x", "rx" or "p".
|
||||||
Not triggered when there is typeahead or when
|
Not triggered when there is typeahead, while
|
||||||
an operator is pending.
|
executing commands in a script file, when
|
||||||
|
an operator is pending or when moving to
|
||||||
|
another window while remaining at the same
|
||||||
|
cursor position.
|
||||||
For an example see |match-parens|.
|
For an example see |match-parens|.
|
||||||
Note: This can not be skipped with
|
Note: This can not be skipped with
|
||||||
`:noautocmd`.
|
`:noautocmd`.
|
||||||
@@ -697,7 +708,7 @@ EncodingChanged Fires off after the 'encoding' option has been
|
|||||||
*FileAppendCmd*
|
*FileAppendCmd*
|
||||||
FileAppendCmd Before appending to a file. Should do the
|
FileAppendCmd Before appending to a file. Should do the
|
||||||
appending to the file. Use the '[ and ']
|
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*
|
||||||
FileAppendPost After appending to a file.
|
FileAppendPost After appending to a file.
|
||||||
*FileAppendPre*
|
*FileAppendPre*
|
||||||
@@ -825,7 +836,7 @@ FilterReadPre Before reading a file from a filter command.
|
|||||||
*FilterWritePost*
|
*FilterWritePost*
|
||||||
FilterWritePost After writing a file for a filter command or
|
FilterWritePost After writing a file for a filter command or
|
||||||
making a diff with an external diff (see
|
making a diff with an external diff (see
|
||||||
DiffUpdated for internal diff).
|
|DiffUpdated| for internal diff).
|
||||||
Vim checks the pattern against the name of
|
Vim checks the pattern against the name of
|
||||||
the current buffer as with FilterWritePre.
|
the current buffer as with FilterWritePre.
|
||||||
Not triggered when 'shelltemp' is off.
|
Not triggered when 'shelltemp' is off.
|
||||||
@@ -916,7 +927,27 @@ MenuPopup Just before showing the popup menu (under the
|
|||||||
i Insert
|
i Insert
|
||||||
c Command line
|
c Command line
|
||||||
tl Terminal
|
tl Terminal
|
||||||
*OptionSet*
|
*ModeChanged*
|
||||||
|
ModeChanged After changing the mode. The pattern is
|
||||||
|
matched against `'old_mode:new_mode'`, for
|
||||||
|
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()| 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: >
|
||||||
|
: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
|
OptionSet After setting an option. The pattern is
|
||||||
matched against the long option name.
|
matched against the long option name.
|
||||||
|<amatch>| indicates what option has been set.
|
|<amatch>| indicates what option has been set.
|
||||||
@@ -1169,9 +1200,9 @@ TextYankPost After text has been yanked or deleted in the
|
|||||||
register, as a list of lines,
|
register, as a list of lines,
|
||||||
like with: >
|
like with: >
|
||||||
getreg(r, 1, 1)
|
getreg(r, 1, 1)
|
||||||
< regname Name of the |register| or
|
< regname Name of the register or empty
|
||||||
empty string for the unnamed
|
string for the unnamed
|
||||||
register.
|
register, see |registers|.
|
||||||
regtype Type of the register, see
|
regtype Type of the register, see
|
||||||
|getregtype()|.
|
|getregtype()|.
|
||||||
visual True if the operation is
|
visual True if the operation is
|
||||||
@@ -1476,6 +1507,13 @@ Example: >
|
|||||||
This prevents having the autocommands defined twice (e.g., after sourcing the
|
This prevents having the autocommands defined twice (e.g., after sourcing the
|
||||||
.vimrc file again).
|
.vimrc file again).
|
||||||
|
|
||||||
|
*FileExplorer*
|
||||||
|
There is one group that is recognized by Vim: FileExplorer. If this group
|
||||||
|
exists Vim assumes that editing a directory is possible and will trigger a
|
||||||
|
plugin that lists the files in that directory. This is used by the |netrw|
|
||||||
|
plugin. This allows you to do: >
|
||||||
|
browse edit
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
9. Executing autocommands *autocmd-execute*
|
9. Executing autocommands *autocmd-execute*
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*change.txt* For Vim version 8.2. Last change: 2021 Mar 01
|
*change.txt* For Vim version 8.2. Last change: 2021 Jun 23
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -780,12 +780,15 @@ For compatibility with Vi these two exceptions are allowed:
|
|||||||
"\/{string}/" and "\?{string}?" do the same as "//{string}/r".
|
"\/{string}/" and "\?{string}?" do the same as "//{string}/r".
|
||||||
"\&{string}&" does the same as "//{string}/".
|
"\&{string}&" does the same as "//{string}/".
|
||||||
*pattern-delimiter* *E146*
|
*pattern-delimiter* *E146*
|
||||||
Instead of the '/' which surrounds the pattern and replacement string, you
|
Instead of the '/' which surrounds the pattern and replacement string, you can
|
||||||
can use any other single-byte character, but not an alphanumeric character,
|
use another single-byte character. This is useful if you want to include a
|
||||||
'\', '"' or '|'. This is useful if you want to include a '/' in the search
|
'/' in the search pattern or replacement string. Example: >
|
||||||
pattern or replacement string. Example: >
|
|
||||||
:s+/+//+
|
:s+/+//+
|
||||||
|
|
||||||
|
You can use most characters, but not an alphanumeric character, '\', '"' or
|
||||||
|
'|'. In Vim9 script you should not use '#' because it may be recognized as
|
||||||
|
the start of a comment.
|
||||||
|
|
||||||
For the definition of a pattern, see |pattern|. In Visual block mode, use
|
For the definition of a pattern, see |pattern|. In Visual block mode, use
|
||||||
|/\%V| in the pattern to have the substitute work in the block only.
|
|/\%V| in the pattern to have the substitute work in the block only.
|
||||||
Otherwise it works on whole lines anyway.
|
Otherwise it works on whole lines anyway.
|
||||||
@@ -1181,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
|
each of the selected lines (thus replacing the blockwise selected region by a
|
||||||
block of the pasted line).
|
block of the pasted line).
|
||||||
|
|
||||||
Use |zP|/|zp| to paste a blockwise yanked register without appending trailing
|
|
||||||
spaces.
|
|
||||||
|
|
||||||
*blockwise-register*
|
*blockwise-register*
|
||||||
If you use a blockwise Visual mode command to get the text into the 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
|
the block of text will be inserted before ("P") or after ("p") the cursor
|
||||||
@@ -1194,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
|
width and the text after the inserted block contains <Tab>s, that text may be
|
||||||
misaligned.
|
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
|
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
|
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
|
that "yl" doesn't move the cursor, but "yh" moves the cursor one character
|
||||||
|
|||||||
@@ -536,7 +536,7 @@ ch_evalraw({handle}, {string} [, {options}]) *ch_evalraw()*
|
|||||||
GetChannel()->ch_evalraw(rawstring)
|
GetChannel()->ch_evalraw(rawstring)
|
||||||
|
|
||||||
ch_getbufnr({handle}, {what}) *ch_getbufnr()*
|
ch_getbufnr({handle}, {what}) *ch_getbufnr()*
|
||||||
Get the buffer number that {handle} is using for {what}.
|
Get the buffer number that {handle} is using for String {what}.
|
||||||
{handle} can be a Channel or a Job that has a Channel.
|
{handle} can be a Channel or a Job that has a Channel.
|
||||||
{what} can be "err" for stderr, "out" for stdout or empty for
|
{what} can be "err" for stderr, "out" for stdout or empty for
|
||||||
socket output.
|
socket output.
|
||||||
@@ -586,8 +586,8 @@ ch_info({handle}) *ch_info()*
|
|||||||
|
|
||||||
|
|
||||||
ch_log({msg} [, {handle}]) *ch_log()*
|
ch_log({msg} [, {handle}]) *ch_log()*
|
||||||
Write {msg} in the channel log file, if it was opened with
|
Write String {msg} in the channel log file, if it was opened
|
||||||
|ch_logfile()|.
|
with |ch_logfile()|.
|
||||||
When {handle} is passed the channel number is used for the
|
When {handle} is passed the channel number is used for the
|
||||||
message.
|
message.
|
||||||
{handle} can be a Channel or a Job that has a Channel. The
|
{handle} can be a Channel or a Job that has a Channel. The
|
||||||
@@ -625,7 +625,7 @@ ch_open({address} [, {options}]) *ch_open()*
|
|||||||
Open a channel to {address}. See |channel|.
|
Open a channel to {address}. See |channel|.
|
||||||
Returns a Channel. Use |ch_status()| to check for failure.
|
Returns a Channel. Use |ch_status()| to check for failure.
|
||||||
|
|
||||||
{address} has the form "hostname:port", e.g.,
|
{address} is a String and has the form "hostname:port", e.g.,
|
||||||
"localhost:8765".
|
"localhost:8765".
|
||||||
|
|
||||||
When using an IPv6 address, enclose it within square brackets.
|
When using an IPv6 address, enclose it within square brackets.
|
||||||
@@ -852,7 +852,7 @@ available.
|
|||||||
job_getchannel({job}) *job_getchannel()*
|
job_getchannel({job}) *job_getchannel()*
|
||||||
Get the channel handle that {job} is using.
|
Get the channel handle that {job} is using.
|
||||||
To check if the job has no channel: >
|
To check if the job has no channel: >
|
||||||
if string(job_getchannel()) == 'channel fail'
|
if string(job_getchannel(job)) == 'channel fail'
|
||||||
<
|
<
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetJob()->job_getchannel()
|
GetJob()->job_getchannel()
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*cmdline.txt* For Vim version 8.2. Last change: 2021 May 30
|
*cmdline.txt* For Vim version 8.2. Last change: 2021 Aug 06
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -170,7 +170,12 @@ CTRL-R {register} *c_CTRL-R* *c_<C-R>*
|
|||||||
too.
|
too.
|
||||||
When the result is a Float it's automatically
|
When the result is a Float it's automatically
|
||||||
converted to a String.
|
converted to a String.
|
||||||
See |registers| about registers.
|
Note that when you only want to move the
|
||||||
|
cursor and not insert anything, you must make
|
||||||
|
sure the expression evaluates to an empty
|
||||||
|
string. E.g.: >
|
||||||
|
<C-R><C-R>=setcmdpos(2)[-1]<CR>
|
||||||
|
< See |registers| about registers.
|
||||||
Implementation detail: When using the |expression| register
|
Implementation detail: When using the |expression| register
|
||||||
and invoking setcmdpos(), this sets the position before
|
and invoking setcmdpos(), this sets the position before
|
||||||
inserting the resulting string. Use CTRL-R CTRL-R to set the
|
inserting the resulting string. Use CTRL-R CTRL-R to set the
|
||||||
@@ -798,7 +803,7 @@ three lines: >
|
|||||||
3:d<CR> is translated into: .,.+2d<CR>
|
3:d<CR> is translated into: .,.+2d<CR>
|
||||||
<
|
<
|
||||||
|
|
||||||
Visual Mode and Range
|
Visual Mode and Range
|
||||||
*v_:*
|
*v_:*
|
||||||
{Visual}: Starts a command-line with the Visual selected lines as a
|
{Visual}: Starts a command-line with the Visual selected lines as a
|
||||||
range. The code `:'<,'>` is used for this range, which makes
|
range. The code `:'<,'>` is used for this range, which makes
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*digraph.txt* For Vim version 8.2. Last change: 2020 Jul 16
|
*digraph.txt* For Vim version 8.2. Last change: 2021 Jul 19
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -38,6 +38,9 @@ An alternative is using the 'keymap' option.
|
|||||||
< Avoid defining a digraph with '_' (underscore) as the
|
< Avoid defining a digraph with '_' (underscore) as the
|
||||||
first character, it has a special meaning in the
|
first character, it has a special meaning in the
|
||||||
future.
|
future.
|
||||||
|
NOTE: This command cannot add a digraph that starts
|
||||||
|
with a white space. If you want to add such digraph,
|
||||||
|
you can use |digraph_set()| instead.
|
||||||
|
|
||||||
Vim is normally compiled with the |+digraphs| feature. If the feature is
|
Vim is normally compiled with the |+digraphs| feature. If the feature is
|
||||||
disabled, the ":digraph" command will display an error message.
|
disabled, the ":digraph" command will display an error message.
|
||||||
@@ -348,8 +351,8 @@ $ DO 0x24 36 DOLLAR SIGN
|
|||||||
þ th 0xfe 254 LATIN SMALL LETTER THORN (Icelandic)
|
þ th 0xfe 254 LATIN SMALL LETTER THORN (Icelandic)
|
||||||
ÿ y: 0xff 255 LATIN SMALL LETTER Y WITH DIAERESIS
|
ÿ y: 0xff 255 LATIN SMALL LETTER Y WITH DIAERESIS
|
||||||
|
|
||||||
If your Vim is compiled with |multibyte| support and you are using a multibyte
|
If you are using a |multibyte| 'encoding', Vim provides this enhanced set of
|
||||||
'encoding', Vim provides this enhanced set of additional digraphs:
|
additional digraphs:
|
||||||
|
|
||||||
*digraph-table-mbyte*
|
*digraph-table-mbyte*
|
||||||
char digraph hex dec official name ~
|
char digraph hex dec official name ~
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*editing.txt* For Vim version 8.2. Last change: 2021 May 27
|
*editing.txt* For Vim version 8.2. Last change: 2021 Oct 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1225,7 +1225,9 @@ If you want to always use ":confirm", set the 'confirm' option.
|
|||||||
|:diffsplit|, |:diffpatch|, |:open|, |:pedit|,
|
|:diffsplit|, |:diffpatch|, |:open|, |:pedit|,
|
||||||
|:redir|, |:source|, |:update|, |:visual|, |:vsplit|,
|
|:redir|, |:source|, |:update|, |:visual|, |:vsplit|,
|
||||||
and |:qall| if 'confirm' is set.
|
and |:qall| if 'confirm' is set.
|
||||||
{only in Win32, Athena, Motif, GTK and Mac GUI}
|
{only in Win32, Athena, Motif, GTK and Mac GUI, in
|
||||||
|
console `browse edit` works if the FileExplorer
|
||||||
|
autocommand group exists}
|
||||||
When ":browse" is not possible you get an error
|
When ":browse" is not possible you get an error
|
||||||
message. If the |+browse| feature is missing or the
|
message. If the |+browse| feature is missing or the
|
||||||
{command} doesn't support browsing, the {command} is
|
{command} doesn't support browsing, the {command} is
|
||||||
@@ -1327,26 +1329,26 @@ present in 'cpoptions' and "!" is not used in the command.
|
|||||||
other tabs and for windows in the current tab that
|
other tabs and for windows in the current tab that
|
||||||
have their own window-local directory.
|
have their own window-local directory.
|
||||||
|
|
||||||
*:tch* *:tchdir*
|
|
||||||
:tch[dir][!] Same as |:tcd|.
|
|
||||||
|
|
||||||
*:tcd-*
|
*:tcd-*
|
||||||
:tc[d][!] - Change to the previous current directory, before the
|
:tc[d][!] - Change to the previous current directory, before the
|
||||||
last ":tcd {path}" command.
|
last ":tcd {path}" command.
|
||||||
|
|
||||||
|
*:tch* *:tchdir*
|
||||||
|
:tch[dir][!] Same as |:tcd|.
|
||||||
|
|
||||||
*:lc* *:lcd*
|
*:lc* *:lcd*
|
||||||
:lc[d][!] {path} Like |:cd|, but only set the current directory when
|
:lc[d][!] {path} Like |:cd|, but only set the current directory when
|
||||||
the cursor is in the current window. The current
|
the cursor is in the current window. The current
|
||||||
directory for other windows is not changed, switching
|
directory for other windows is not changed, switching
|
||||||
to another window will stop using {path}.
|
to another window will stop using {path}.
|
||||||
|
|
||||||
*:lch* *:lchdir*
|
|
||||||
:lch[dir][!] Same as |:lcd|.
|
|
||||||
|
|
||||||
*:lcd-*
|
*:lcd-*
|
||||||
:lcd[!] - Change to the previous current directory, before the
|
:lcd[!] - Change to the previous current directory, before the
|
||||||
last ":lcd {path}" command.
|
last ":lcd {path}" command.
|
||||||
|
|
||||||
|
*:lch* *:lchdir*
|
||||||
|
:lch[dir][!] Same as |:lcd|.
|
||||||
|
|
||||||
*:pw* *:pwd* *E187*
|
*:pw* *:pwd* *E187*
|
||||||
:pw[d] Print the current directory name.
|
:pw[d] Print the current directory name.
|
||||||
Also see |getcwd()|.
|
Also see |getcwd()|.
|
||||||
@@ -1373,14 +1375,14 @@ change anything for the current directory.
|
|||||||
When a |:lcd| command has been used for a window, the specified 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|
|
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.
|
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
|
specified local current directory. If none was specified, the global or
|
||||||
tab-local current directory is used.
|
tab-local current directory is used.
|
||||||
|
|
||||||
When a |:tcd| command has been used for a tab page, the specified directory
|
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.
|
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
|
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
|
directory for that tab page. If the current tab has no local current directory
|
||||||
the global current directory is used.
|
the global current directory is used.
|
||||||
|
|
||||||
@@ -1469,8 +1471,11 @@ be readable again. If you use a wrong key, it will be a mess.
|
|||||||
:X Prompt for an encryption key. The typing is done without showing the
|
:X Prompt for an encryption key. The typing is done without showing the
|
||||||
actual text, so that someone looking at the display won't see it.
|
actual text, so that someone looking at the display won't see it.
|
||||||
The typed key is stored in the 'key' option, which is used to encrypt
|
The typed key is stored in the 'key' option, which is used to encrypt
|
||||||
the file when it is written. The file will remain unchanged until you
|
the file when it is written.
|
||||||
write it. See also |-x|.
|
The file will remain unchanged until you write it. Note that commands
|
||||||
|
such as `:xit` and `ZZ` will NOT write the file unless there are other
|
||||||
|
changes.
|
||||||
|
See also |-x|.
|
||||||
|
|
||||||
The value of the 'key' options is used when text is written. When the option
|
The value of the 'key' options is used when text is written. When the option
|
||||||
is not empty, the written file will be encrypted, using the value as the
|
is not empty, the written file will be encrypted, using the value as the
|
||||||
@@ -1671,6 +1676,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
|
session or with another command (e.g., a filter command). Then you will know
|
||||||
which version of the file you want to keep.
|
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:
|
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
|
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
|
in the Win32 libraries that confuses Vim about the hour time difference. The
|
||||||
@@ -1749,6 +1759,12 @@ There are three different types of searching:
|
|||||||
/u/user_x/work/include
|
/u/user_x/work/include
|
||||||
/u/user_x/include
|
/u/user_x/include
|
||||||
|
|
||||||
|
< Note: If your 'path' setting includes an non-existing directory, Vim will
|
||||||
|
skip the non-existing directory, but continues searching in the parent of
|
||||||
|
the non-existing directory if upwards searching is used. E.g. when
|
||||||
|
searching "../include" and that doesn't exist, and upward searching is
|
||||||
|
used, also searches in "..".
|
||||||
|
|
||||||
3) Combined up/downward search:
|
3) Combined up/downward search:
|
||||||
If Vim's current path is /u/user_x/work/release and you do >
|
If Vim's current path is /u/user_x/work/release and you do >
|
||||||
set path=**;/u/user_x
|
set path=**;/u/user_x
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
*filetype.txt* For Vim version 8.2. Last change: 2021 Mar 11
|
*filetype.txt* For Vim version 8.2. Last change: 2021 Sep 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -146,6 +146,7 @@ can be used to overrule the filetype used for certain extensions:
|
|||||||
*.inc g:filetype_inc
|
*.inc g:filetype_inc
|
||||||
*.w g:filetype_w |ft-cweb-syntax|
|
*.w g:filetype_w |ft-cweb-syntax|
|
||||||
*.i g:filetype_i |ft-progress-syntax|
|
*.i g:filetype_i |ft-progress-syntax|
|
||||||
|
*.m g:filetype_m |ft-mathematica-syntax|
|
||||||
*.p g:filetype_p |ft-pascal-syntax|
|
*.p g:filetype_p |ft-pascal-syntax|
|
||||||
*.pp g:filetype_pp |ft-pascal-syntax|
|
*.pp g:filetype_pp |ft-pascal-syntax|
|
||||||
*.sh g:bash_is_sh |ft-sh-syntax|
|
*.sh g:bash_is_sh |ft-sh-syntax|
|
||||||
@@ -544,6 +545,14 @@ One command, :DiffGitCached, is provided to show a diff of the current commit
|
|||||||
in the preview window. It is equivalent to calling "git diff --cached" plus
|
in the preview window. It is equivalent to calling "git diff --cached" plus
|
||||||
any arguments given to the command.
|
any arguments given to the command.
|
||||||
|
|
||||||
|
GPROF *ft-gprof-plugin*
|
||||||
|
|
||||||
|
The gprof filetype plugin defines a mapping <C-]> to jump from a function
|
||||||
|
entry in the gprof flat profile or from a function entry in the call graph
|
||||||
|
to the details of that function in the call graph.
|
||||||
|
|
||||||
|
The mapping can be disabled with: >
|
||||||
|
let g:no_gprof_maps = 1
|
||||||
|
|
||||||
MAIL *ft-mail-plugin*
|
MAIL *ft-mail-plugin*
|
||||||
|
|
||||||
@@ -632,7 +641,7 @@ For fish, add to the config file
|
|||||||
MARKDOWN *ft-markdown-plugin*
|
MARKDOWN *ft-markdown-plugin*
|
||||||
|
|
||||||
To enable folding use this: >
|
To enable folding use this: >
|
||||||
let g:markdown_folding = 1
|
let g:markdown_folding = 1
|
||||||
<
|
<
|
||||||
|
|
||||||
PDF *ft-pdf-plugin*
|
PDF *ft-pdf-plugin*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*fold.txt* For Vim version 8.2. Last change: 2019 Jun 02
|
*fold.txt* For Vim version 8.2. Last change: 2021 Jul 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -541,6 +541,8 @@ nest, the nested fold is one character right of the fold it's contained in.
|
|||||||
|
|
||||||
A closed fold is indicated with a '+'.
|
A closed fold is indicated with a '+'.
|
||||||
|
|
||||||
|
These characters can be changed with the 'fillchars' option.
|
||||||
|
|
||||||
Where the fold column is too narrow to display all nested folds, digits are
|
Where the fold column is too narrow to display all nested folds, digits are
|
||||||
shown to indicate the nesting level.
|
shown to indicate the nesting level.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*ps1.txt* A Windows PowerShell syntax plugin for Vim
|
*ft_ps1.txt* A Windows PowerShell syntax plugin for Vim
|
||||||
|
|
||||||
Author: Peter Provost <https://www.github.com/PProvost>
|
Author: Peter Provost <https://www.github.com/PProvost>
|
||||||
License: Apache 2.0
|
License: Apache 2.0
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*vim-raku.txt* The Raku programming language filetype
|
*ft_raku.txt* The Raku programming language filetype
|
||||||
|
|
||||||
*vim-raku*
|
*vim-raku*
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ Numbers, subscripts and superscripts are available with 's' and 'S':
|
|||||||
1s ₁ 1S ¹ ~
|
1s ₁ 1S ¹ ~
|
||||||
2s ₂ 9S ⁹ ~
|
2s ₂ 9S ⁹ ~
|
||||||
|
|
||||||
But some don´t come defined by default. Those are digraph definitions you can
|
But some don't come defined by default. Those are digraph definitions you can
|
||||||
add in your ~/.vimrc file. >
|
add in your ~/.vimrc file. >
|
||||||
exec 'digraph \\ '.char2nr('∖')
|
exec 'digraph \\ '.char2nr('∖')
|
||||||
exec 'digraph \< '.char2nr('≼')
|
exec 'digraph \< '.char2nr('≼')
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*gui.txt* For Vim version 8.2. Last change: 2021 May 01
|
*gui.txt* For Vim version 8.2. Last change: 2021 Jun 27
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -411,7 +411,8 @@ Mouse mapping with modifiers does not work for modeless selection.
|
|||||||
3.7 Drag and drop *drag-n-drop*
|
3.7 Drag and drop *drag-n-drop*
|
||||||
|
|
||||||
You can drag and drop one or more files into the Vim window, where they will
|
You can drag and drop one or more files into the Vim window, where they will
|
||||||
be opened as if a |:drop| command was used.
|
be opened as if a |:drop| command was used. You can check if this is
|
||||||
|
supported with the *drop_file* feature: `has('drop_file')`.
|
||||||
|
|
||||||
If you hold down Shift while doing this, Vim changes to the first dropped
|
If you hold down Shift while doing this, Vim changes to the first dropped
|
||||||
file's directory. If you hold Ctrl Vim will always split a new window for the
|
file's directory. If you hold Ctrl Vim will always split a new window for the
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ Tuning Vim ~
|
|||||||
|usr_43.txt| Using filetypes
|
|usr_43.txt| Using filetypes
|
||||||
|usr_44.txt| Your own syntax highlighted
|
|usr_44.txt| Your own syntax highlighted
|
||||||
|usr_45.txt| Select your language
|
|usr_45.txt| Select your language
|
||||||
|
|usr_46.txt| Write plugins using Vim9 script
|
||||||
|
|
||||||
Making Vim Run ~
|
Making Vim Run ~
|
||||||
|usr_90.txt| Installing Vim
|
|usr_90.txt| Installing Vim
|
||||||
@@ -132,7 +133,7 @@ Advanced editing ~
|
|||||||
|windows.txt| commands for using multiple windows and buffers
|
|windows.txt| commands for using multiple windows and buffers
|
||||||
|tabpage.txt| commands for using multiple tab pages
|
|tabpage.txt| commands for using multiple tab pages
|
||||||
|spell.txt| spell checking
|
|spell.txt| spell checking
|
||||||
|diff.txt| working with two to four versions of the same file
|
|diff.txt| working with two to eight versions of the same file
|
||||||
|autocmd.txt| automatically executing commands on an event
|
|autocmd.txt| automatically executing commands on an event
|
||||||
|eval.txt| expression evaluation, conditional commands
|
|eval.txt| expression evaluation, conditional commands
|
||||||
|channel.txt| Jobs, Channels, inter-process communication
|
|channel.txt| Jobs, Channels, inter-process communication
|
||||||
@@ -145,6 +146,7 @@ Special issues ~
|
|||||||
|term.txt| using different terminals and mice
|
|term.txt| using different terminals and mice
|
||||||
|terminal.txt| Terminal window support
|
|terminal.txt| Terminal window support
|
||||||
|popup.txt| popup window support
|
|popup.txt| popup window support
|
||||||
|
|vim9.txt| using Vim9 script
|
||||||
|
|
||||||
Programming language support ~
|
Programming language support ~
|
||||||
|indent.txt| automatic indenting for C and other languages
|
|indent.txt| automatic indenting for C and other languages
|
||||||
@@ -153,6 +155,8 @@ Programming language support ~
|
|||||||
|filetype.txt| settings done specifically for a type of file
|
|filetype.txt| settings done specifically for a type of file
|
||||||
|quickfix.txt| commands for a quick edit-compile-fix cycle
|
|quickfix.txt| commands for a quick edit-compile-fix cycle
|
||||||
|ft_ada.txt| Ada (the programming language) support
|
|ft_ada.txt| Ada (the programming language) support
|
||||||
|
|ft_ps1.txt| Filetype plugin for Windows PowerShell
|
||||||
|
|ft_raku.txt| Filetype plugin for Raku
|
||||||
|ft_rust.txt| Filetype plugin for Rust
|
|ft_rust.txt| Filetype plugin for Rust
|
||||||
|ft_sql.txt| about the SQL filetype plugin
|
|ft_sql.txt| about the SQL filetype plugin
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*if_lua.txt* For Vim version 8.2. Last change: 2021 Apr 07
|
*if_lua.txt* For Vim version 8.2. Last change: 2021 Aug 06
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Luis Carvalho
|
VIM REFERENCE MANUAL by Luis Carvalho
|
||||||
@@ -175,10 +175,17 @@ Vim evaluation and command execution, and others.
|
|||||||
:lua print(type(l), vim.type(l))
|
:lua print(type(l), vim.type(l))
|
||||||
:" list
|
:" list
|
||||||
<
|
<
|
||||||
vim.command({cmd}) Executes the vim (ex-mode) command {cmd}.
|
vim.command({cmds}) Executes one or more lines of Ex-mode commands
|
||||||
|
in {cmds}.
|
||||||
Examples: >
|
Examples: >
|
||||||
:lua vim.command"set tw=60"
|
:lua vim.command"set tw=60"
|
||||||
:lua vim.command"normal ddp"
|
:lua vim.command"normal ddp"
|
||||||
|
lua << trim END
|
||||||
|
vim.command([[
|
||||||
|
new Myfile.js
|
||||||
|
call search('start')
|
||||||
|
]])
|
||||||
|
END
|
||||||
<
|
<
|
||||||
vim.eval({expr}) Evaluates expression {expr} (see |expression|),
|
vim.eval({expr}) Evaluates expression {expr} (see |expression|),
|
||||||
converts the result to Lua, and returns it.
|
converts the result to Lua, and returns it.
|
||||||
@@ -211,6 +218,44 @@ Vim evaluation and command execution, and others.
|
|||||||
vim.lua_version The Lua version Vim was compiled with, in the
|
vim.lua_version The Lua version Vim was compiled with, in the
|
||||||
form {major}.{minor}.{patch}, e.g. "5.1.4".
|
form {major}.{minor}.{patch}, e.g. "5.1.4".
|
||||||
|
|
||||||
|
vim.version() Returns a Lua table with the Vim version.
|
||||||
|
The table will have the following keys:
|
||||||
|
major - major Vim version.
|
||||||
|
minor - minor Vim version.
|
||||||
|
patch - latest patch included.
|
||||||
|
|
||||||
|
*lua-vim-variables*
|
||||||
|
The Vim editor global dictionaries |g:| |w:| |b:| |t:| |v:| can be accessed
|
||||||
|
from Lua conveniently and idiomatically by referencing the `vim.*` Lua tables
|
||||||
|
described below. In this way you can easily read and modify global Vim script
|
||||||
|
variables from Lua.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
|
||||||
|
vim.g.foo = 5 -- Set the g:foo Vim script variable.
|
||||||
|
print(vim.g.foo) -- Get and print the g:foo Vim script variable.
|
||||||
|
vim.g.foo = nil -- Delete (:unlet) the Vim script variable.
|
||||||
|
|
||||||
|
vim.g *vim.g*
|
||||||
|
Global (|g:|) editor variables.
|
||||||
|
Key with no value returns `nil`.
|
||||||
|
|
||||||
|
vim.b *vim.b*
|
||||||
|
Buffer-scoped (|b:|) variables for the current buffer.
|
||||||
|
Invalid or unset key returns `nil`.
|
||||||
|
|
||||||
|
vim.w *vim.w*
|
||||||
|
Window-scoped (|w:|) variables for the current window.
|
||||||
|
Invalid or unset key returns `nil`.
|
||||||
|
|
||||||
|
vim.t *vim.t*
|
||||||
|
Tabpage-scoped (|t:|) variables for the current tabpage.
|
||||||
|
Invalid or unset key returns `nil`.
|
||||||
|
|
||||||
|
vim.v *vim.v*
|
||||||
|
|v:| variables.
|
||||||
|
Invalid or unset key returns `nil`.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. List userdata *lua-list*
|
3. List userdata *lua-list*
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*index.txt* For Vim version 8.2. Last change: 2021 May 27
|
*index.txt* For Vim version 8.2. Last change: 2021 Aug 31
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -168,6 +168,7 @@ commands in CTRL-X submode *i_CTRL-X_index*
|
|||||||
|i_CTRL-X_CTRL-Y| CTRL-X CTRL-Y scroll down
|
|i_CTRL-X_CTRL-Y| CTRL-X CTRL-Y scroll down
|
||||||
|i_CTRL-X_CTRL-U| CTRL-X CTRL-U complete with 'completefunc'
|
|i_CTRL-X_CTRL-U| CTRL-X CTRL-U complete with 'completefunc'
|
||||||
|i_CTRL-X_CTRL-V| CTRL-X CTRL-V complete like in : command line
|
|i_CTRL-X_CTRL-V| CTRL-X CTRL-V complete like in : command line
|
||||||
|
|i_CTRL-X_CTRL-Z| CTRL-X CTRL-Z stop completion, keeping the text as-is
|
||||||
|i_CTRL-X_CTRL-]| CTRL-X CTRL-] complete tags
|
|i_CTRL-X_CTRL-]| CTRL-X CTRL-] complete tags
|
||||||
|i_CTRL-X_s| CTRL-X s spelling suggestions
|
|i_CTRL-X_s| CTRL-X s spelling suggestions
|
||||||
|
|
||||||
@@ -1312,6 +1313,7 @@ tag command action ~
|
|||||||
|:endtry| :endt[ry] end previous :try
|
|:endtry| :endt[ry] end previous :try
|
||||||
|:endwhile| :endw[hile] end previous :while
|
|:endwhile| :endw[hile] end previous :while
|
||||||
|:enew| :ene[w] edit a new, unnamed buffer
|
|:enew| :ene[w] edit a new, unnamed buffer
|
||||||
|
|:eval| :ev[al] evaluate an expression and discard the result
|
||||||
|:ex| :ex same as ":edit"
|
|:ex| :ex same as ":edit"
|
||||||
|:execute| :exe[cute] execute result of expressions
|
|:execute| :exe[cute] execute result of expressions
|
||||||
|:exit| :exi[t] same as ":xit"
|
|:exit| :exi[t] same as ":xit"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*insert.txt* For Vim version 8.2. Last change: 2020 Oct 16
|
*insert.txt* For Vim version 8.2. Last change: 2021 Oct 18
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -640,6 +640,8 @@ Completion can be done for:
|
|||||||
12. Spelling suggestions |i_CTRL-X_s|
|
12. Spelling suggestions |i_CTRL-X_s|
|
||||||
13. keywords in 'complete' |i_CTRL-N| |i_CTRL-P|
|
13. keywords in 'complete' |i_CTRL-N| |i_CTRL-P|
|
||||||
|
|
||||||
|
Additionally, |i_CTRL-X_CTRL-Z| stops completion without changing the text.
|
||||||
|
|
||||||
All these, except CTRL-N and CTRL-P, are done in CTRL-X mode. This is a
|
All these, except CTRL-N and CTRL-P, are done in CTRL-X mode. This is a
|
||||||
sub-mode of Insert and Replace modes. You enter CTRL-X mode by typing CTRL-X
|
sub-mode of Insert and Replace modes. You enter CTRL-X mode by typing CTRL-X
|
||||||
and one of the CTRL-X commands. You exit CTRL-X mode by typing a key that is
|
and one of the CTRL-X commands. You exit CTRL-X mode by typing a key that is
|
||||||
@@ -822,6 +824,9 @@ CTRL-X CTRL-K Search the files given with the 'dictionary' option
|
|||||||
CTRL-P Search backwards for next matching keyword. This
|
CTRL-P Search backwards for next matching keyword. This
|
||||||
keyword replaces the previous matching keyword.
|
keyword replaces the previous matching keyword.
|
||||||
|
|
||||||
|
|
||||||
|
Completing words in 'thesaurus' *compl-thesaurus*
|
||||||
|
|
||||||
*i_CTRL-X_CTRL-T*
|
*i_CTRL-X_CTRL-T*
|
||||||
CTRL-X CTRL-T Works as CTRL-X CTRL-K, but in a special way. It uses
|
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
|
the 'thesaurus' option instead of 'dictionary'. If a
|
||||||
@@ -830,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.
|
matches, even though they don't complete the word.
|
||||||
Thus a word can be completely replaced.
|
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-T or
|
||||||
CTRL-N Search forward for next matching keyword. This
|
CTRL-N Search forward for next matching keyword. This
|
||||||
keyword replaces the previous matching keyword.
|
keyword replaces the previous matching keyword.
|
||||||
@@ -847,6 +842,61 @@ 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
|
CTRL-P Search backwards for next matching keyword. This
|
||||||
keyword replaces the previous matching keyword.
|
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
|
||||||
|
let line = getline('.')
|
||||||
|
let start = col('.') - 1
|
||||||
|
while start > 0 && line[start - 1] =~ '\a'
|
||||||
|
let start -= 1
|
||||||
|
endwhile
|
||||||
|
return start
|
||||||
|
else
|
||||||
|
let res = []
|
||||||
|
let h = ''
|
||||||
|
for l in split(system('aiksaurus '.shellescape(a:base)), '\n')
|
||||||
|
if l[:3] == '=== '
|
||||||
|
let h = substitute(l[4:], ' =*$', '', '')
|
||||||
|
elseif l[0] =~ '\a'
|
||||||
|
call extend(res, map(split(l, ', '), {_, val -> {'word': val, 'menu': '('.h.')'}}))
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
return res
|
||||||
|
endif
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
if exists('+thesaurusfunc')
|
||||||
|
set thesaurusfunc=Thesaur
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
Completing keywords in the current and included files *compl-keyword*
|
Completing keywords in the current and included files *compl-keyword*
|
||||||
|
|
||||||
@@ -1042,9 +1092,15 @@ CTRL-P Find previous match for words that start with the
|
|||||||
other contexts unless a double CTRL-X is used.
|
other contexts unless a double CTRL-X is used.
|
||||||
|
|
||||||
|
|
||||||
|
Stop completion *compl-stop*
|
||||||
|
|
||||||
|
*i_CTRL-X_CTRL-Z*
|
||||||
|
CTRL-X CTRL-Z Stop completion without changing the text.
|
||||||
|
|
||||||
|
|
||||||
FUNCTIONS FOR FINDING COMPLETIONS *complete-functions*
|
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:
|
The function is called in two different ways:
|
||||||
- First the function is called to find the start of the text to be completed.
|
- First the function is called to find the start of the text to be completed.
|
||||||
@@ -1073,7 +1129,8 @@ On the second invocation the arguments are:
|
|||||||
|
|
||||||
The function must return a List with the matching words. These matches
|
The function must return a List with the matching words. These matches
|
||||||
usually include the "a:base" text. When there are no matches return an empty
|
usually include the "a:base" text. When there are no matches return an empty
|
||||||
List.
|
List. Note that the cursor may have moved since the first invocation, the
|
||||||
|
text may have been changed.
|
||||||
|
|
||||||
In order to return more information than the matching words, return a Dict
|
In order to return more information than the matching words, return a Dict
|
||||||
that contains the List. The Dict can have these items:
|
that contains the List. The Dict can have these items:
|
||||||
@@ -1193,7 +1250,7 @@ match to the total list. These matches should then not appear in the returned
|
|||||||
list! Call |complete_check()| now and then to allow the user to press a key
|
list! Call |complete_check()| now and then to allow the user to press a key
|
||||||
while still searching for matches. Stop searching when it returns non-zero.
|
while still searching for matches. Stop searching when it returns non-zero.
|
||||||
|
|
||||||
*E839* *E840*
|
*E840*
|
||||||
The function is allowed to move the cursor, it is restored afterwards.
|
The function is allowed to move the cursor, it is restored afterwards.
|
||||||
The function is not allowed to move to another window or delete text.
|
The function is not allowed to move to another window or delete text.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*intro.txt* For Vim version 8.2. Last change: 2020 Dec 29
|
*intro.txt* For Vim version 8.2. Last change: 2021 Sep 29
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -421,7 +421,6 @@ notation meaning equivalent decimal value(s) ~
|
|||||||
<Tab> tab CTRL-I 9 *tab* *Tab*
|
<Tab> tab CTRL-I 9 *tab* *Tab*
|
||||||
*linefeed*
|
*linefeed*
|
||||||
<NL> linefeed CTRL-J 10 (used for <Nul>)
|
<NL> linefeed CTRL-J 10 (used for <Nul>)
|
||||||
<FF> formfeed CTRL-L 12 *formfeed*
|
|
||||||
<CR> carriage return CTRL-M 13 *carriage-return*
|
<CR> carriage return CTRL-M 13 *carriage-return*
|
||||||
<Return> same as <CR> *<Return>*
|
<Return> same as <CR> *<Return>*
|
||||||
<Enter> same as <CR> *<Enter>*
|
<Enter> same as <CR> *<Enter>*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*map.txt* For Vim version 8.2. Last change: 2021 May 16
|
*map.txt* For Vim version 8.2. Last change: 2021 Oct 19
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1004,6 +1004,9 @@ Also note that the 'clipboard' option is temporarily emptied to avoid
|
|||||||
clobbering the `"*` or `"+` registers, if its value contains the item `unnamed`
|
clobbering the `"*` or `"+` registers, if its value contains the item `unnamed`
|
||||||
or `unnamedplus`.
|
or `unnamedplus`.
|
||||||
|
|
||||||
|
The `mode()` function will return the state as it will be after applying the
|
||||||
|
operator.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
2. Abbreviations *abbreviations* *Abbreviations*
|
2. Abbreviations *abbreviations* *Abbreviations*
|
||||||
|
|
||||||
@@ -1368,6 +1371,10 @@ See |:verbose-cmd| for more information.
|
|||||||
:delc[ommand] {cmd} *:delc* *:delcommand* *E184*
|
:delc[ommand] {cmd} *:delc* *:delcommand* *E184*
|
||||||
Delete the user-defined command {cmd}.
|
Delete the user-defined command {cmd}.
|
||||||
|
|
||||||
|
:delc[ommand] -buffer {cmd} *E1237*
|
||||||
|
Delete the user-defined command {cmd} that was defined
|
||||||
|
for the current buffer.
|
||||||
|
|
||||||
:comc[lear] *:comc* *:comclear*
|
:comc[lear] *:comc* *:comclear*
|
||||||
Delete all user-defined commands.
|
Delete all user-defined commands.
|
||||||
|
|
||||||
@@ -1571,6 +1578,20 @@ feature. Use the full name for new scripts.
|
|||||||
|
|
||||||
|
|
||||||
Replacement text ~
|
Replacement text ~
|
||||||
|
*:command-repl*
|
||||||
|
The {repl} argument is normally one long string, possibly with "|" separated
|
||||||
|
commands. A special case is when the argument is "{", then the following
|
||||||
|
lines, up to a line starting with "}" are used and |Vim9| syntax applies.
|
||||||
|
Example: >
|
||||||
|
:command MyCommand {
|
||||||
|
echo 'hello'
|
||||||
|
g:calledMyCommand = true
|
||||||
|
}
|
||||||
|
< *E1231*
|
||||||
|
There must be white space before the "{". No nesting is supported, inline
|
||||||
|
functions cannot be used. Commands where a "|" may appear in the argument,
|
||||||
|
such as commands with an expression argument, cannot be followed by a "|" and
|
||||||
|
another command.
|
||||||
|
|
||||||
The replacement text {repl} for a user defined command is scanned for special
|
The replacement text {repl} for a user defined command is scanned for special
|
||||||
escape sequences, using <...> notation. Escape sequences are replaced with
|
escape sequences, using <...> notation. Escape sequences are replaced with
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*mbyte.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
*mbyte.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||||
@@ -1132,7 +1132,7 @@ This file explains what characters are available in UTF-8 and CP1255 encodings,
|
|||||||
and what the keymaps are to get those characters:
|
and what the keymaps are to get those characters:
|
||||||
|
|
||||||
glyph encoding keymap ~
|
glyph encoding keymap ~
|
||||||
Char utf-8 cp1255 hebrew hebrewp name ~
|
Char UTF-8 cp1255 hebrew hebrewp name ~
|
||||||
א 0x5d0 0xe0 t a 'alef
|
א 0x5d0 0xe0 t a 'alef
|
||||||
ב 0x5d1 0xe1 c b bet
|
ב 0x5d1 0xe1 c b bet
|
||||||
ג 0x5d2 0xe2 d g gimel
|
ג 0x5d2 0xe2 d g gimel
|
||||||
@@ -1185,11 +1185,11 @@ Vowel marks and special punctuation:
|
|||||||
ױ 0x5f1 0xd5 VY VY vav-yod
|
ױ 0x5f1 0xd5 VY VY vav-yod
|
||||||
ײ 0x5f2 0xd6 YY YY yod-yod
|
ײ 0x5f2 0xd6 YY YY yod-yod
|
||||||
|
|
||||||
The following are only available in utf-8
|
The following are only available in UTF-8
|
||||||
|
|
||||||
Cantillation marks:
|
Cantillation marks:
|
||||||
glyph
|
glyph
|
||||||
Char utf-8 hebrew name
|
Char UTF-8 hebrew name
|
||||||
ב֑ 0x591 C: etnahta
|
ב֑ 0x591 C: etnahta
|
||||||
ב֒ 0x592 Cs segol
|
ב֒ 0x592 Cs segol
|
||||||
ב֓ 0x593 CS shalshelet
|
ב֓ 0x593 CS shalshelet
|
||||||
@@ -1300,7 +1300,7 @@ ASCII. On MS-Windows UTF-16 is also used (previously UCS-2), which uses
|
|||||||
internally.
|
internally.
|
||||||
|
|
||||||
Vim has comprehensive UTF-8 support. It works well in:
|
Vim has comprehensive UTF-8 support. It works well in:
|
||||||
- xterm with utf-8 support enabled
|
- xterm with UTF-8 support enabled
|
||||||
- Athena, Motif and GTK GUI
|
- Athena, Motif and GTK GUI
|
||||||
- MS-Windows GUI
|
- MS-Windows GUI
|
||||||
- several other platforms
|
- several other platforms
|
||||||
@@ -1313,13 +1313,13 @@ is no longer relevant in the GTK+ 2 GUI.
|
|||||||
*bom-bytes*
|
*bom-bytes*
|
||||||
When reading a file a BOM (Byte Order Mark) can be used to recognize the
|
When reading a file a BOM (Byte Order Mark) can be used to recognize the
|
||||||
Unicode encoding:
|
Unicode encoding:
|
||||||
EF BB BF utf-8
|
EF BB BF UTF-8
|
||||||
FE FF utf-16 big endian
|
FE FF UTF-16 big endian
|
||||||
FF FE utf-16 little endian
|
FF FE UTF-16 little endian
|
||||||
00 00 FE FF utf-32 big endian
|
00 00 FE FF UTF-32 big endian
|
||||||
FF FE 00 00 utf-32 little endian
|
FF FE 00 00 UTF-32 little endian
|
||||||
|
|
||||||
Utf-8 is the recommended encoding. Note that it's difficult to tell utf-16
|
UTF-8 is the recommended encoding. Note that it's difficult to tell utf-16
|
||||||
and utf-32 apart. Utf-16 is often used on MS-Windows, utf-32 is not
|
and utf-32 apart. Utf-16 is often used on MS-Windows, utf-32 is not
|
||||||
widespread as file format.
|
widespread as file format.
|
||||||
|
|
||||||
@@ -1365,8 +1365,8 @@ Useful commands:
|
|||||||
|
|
||||||
STARTING VIM
|
STARTING VIM
|
||||||
|
|
||||||
If your current locale is in an utf-8 encoding, Vim will automatically start
|
If your current locale is in an UTF-8 encoding, Vim will automatically start
|
||||||
in utf-8 mode.
|
in UTF-8 mode.
|
||||||
|
|
||||||
If you are using another locale: >
|
If you are using another locale: >
|
||||||
|
|
||||||
@@ -1399,10 +1399,10 @@ Motif. Use the ":hi Menu font={fontname}" command for this. |:highlight|
|
|||||||
TYPING UTF-8 *utf-8-typing*
|
TYPING UTF-8 *utf-8-typing*
|
||||||
|
|
||||||
If you are using X-Windows, you should find an input method that supports
|
If you are using X-Windows, you should find an input method that supports
|
||||||
utf-8.
|
UTF-8.
|
||||||
|
|
||||||
If your system does not provide support for typing utf-8, you can use the
|
If your system does not provide support for typing UTF-8, you can use the
|
||||||
'keymap' feature. This allows writing a keymap file, which defines a utf-8
|
'keymap' feature. This allows writing a keymap file, which defines a UTF-8
|
||||||
character as a sequence of ASCII characters. See |mbyte-keymap|.
|
character as a sequence of ASCII characters. See |mbyte-keymap|.
|
||||||
|
|
||||||
Another method is to set the current locale to the language you want to use
|
Another method is to set the current locale to the language you want to use
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*message.txt* For Vim version 8.2. Last change: 2020 Dec 29
|
*message.txt* For Vim version 8.2. Last change: 2021 Jul 31
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -774,6 +774,14 @@ a user-defined command.
|
|||||||
This can only happen when changing the source code, when adding a command in
|
This can only happen when changing the source code, when adding a command in
|
||||||
src/ex_cmds.h. The lookup table then needs to be updated, by running: >
|
src/ex_cmds.h. The lookup table then needs to be updated, by running: >
|
||||||
make cmdidxs
|
make cmdidxs
|
||||||
|
<
|
||||||
|
*E928* *E889* *E839* >
|
||||||
|
E928: String required
|
||||||
|
E889: Number required
|
||||||
|
E839: Bool required
|
||||||
|
|
||||||
|
These happen when a value or expression is used that does not have the
|
||||||
|
expected type.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Messages *messages*
|
3. Messages *messages*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*motion.txt* For Vim version 8.2. Last change: 2021 Mar 28
|
*motion.txt* For Vim version 8.2. Last change: 2021 Jun 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -59,9 +59,14 @@ or change text. The following operators are available:
|
|||||||
|<| < shift left
|
|<| < shift left
|
||||||
|zf| zf define a fold
|
|zf| zf define a fold
|
||||||
|g@| g@ call function set with the 'operatorfunc' option
|
|g@| g@ call function set with the 'operatorfunc' option
|
||||||
|
*motion-count-multiplied*
|
||||||
If the motion includes a count and the operator also had a count before it,
|
If the motion includes a count and the operator also had a count before it,
|
||||||
the two counts are multiplied. For example: "2d3w" deletes six words.
|
the two counts are multiplied. For example: "2d3w" deletes six words.
|
||||||
|
*operator-doubled*
|
||||||
|
When doubling the operator it operates on a line. When using a count, before
|
||||||
|
or after the first character, that many lines are operated upon. Thus `3dd`
|
||||||
|
deletes three lines. A count before and after the first character is
|
||||||
|
multiplied, thus `2y3y` yanks six lines.
|
||||||
|
|
||||||
After applying the operator the cursor is mostly left at the start of the text
|
After applying the operator the cursor is mostly left at the start of the text
|
||||||
that was operated upon. For example, "yfe" doesn't move the cursor, but "yFe"
|
that was operated upon. For example, "yfe" doesn't move the cursor, but "yFe"
|
||||||
@@ -195,9 +200,9 @@ l or *l*
|
|||||||
*$* *<End>* *<kEnd>*
|
*$* *<End>* *<kEnd>*
|
||||||
$ or <End> To the end of the line. When a count is given also go
|
$ or <End> To the end of the line. When a count is given also go
|
||||||
[count - 1] lines downward, or as far is possible.
|
[count - 1] lines downward, or as far is possible.
|
||||||
|inclusive| motion. If a count of 2 of larger is
|
|inclusive| motion. If a count of 2 or larger is
|
||||||
given and the cursor is on the last line, that is an
|
given and the cursor is on the last line, that is an
|
||||||
error an the cursor doesn't move.
|
error and the cursor doesn't move.
|
||||||
In Visual mode the cursor goes to just after the last
|
In Visual mode the cursor goes to just after the last
|
||||||
character in the line.
|
character in the line.
|
||||||
When 'virtualedit' is active, "$" may move the cursor
|
When 'virtualedit' is active, "$" may move the cursor
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*options.txt* For Vim version 8.2. Last change: 2021 May 16
|
*options.txt* For Vim version 8.2. Last change: 2021 Oct 20
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -195,11 +195,18 @@ include the "|" in the option value, use "\|" instead. This example sets the
|
|||||||
This sets the 'titlestring' option to "hi" and 'iconstring' to "there": >
|
This sets the 'titlestring' option to "hi" and 'iconstring' to "there": >
|
||||||
:set titlestring=hi|set iconstring=there
|
:set titlestring=hi|set iconstring=there
|
||||||
|
|
||||||
Similarly, the double quote character starts a comment. To include the '"' in
|
Similarly, in legacy script the double quote character starts a comment. To
|
||||||
the option value, use '\"' instead. This example sets the 'titlestring'
|
include the '"' in the option value, use '\"' instead. This example sets the
|
||||||
option to 'hi "there"': >
|
'titlestring' option to 'hi "there"': >
|
||||||
:set titlestring=hi\ \"there\"
|
:set titlestring=hi\ \"there\"
|
||||||
|
|
||||||
|
In |Vim9| script it's simpler, comments start with a '#' character, and only
|
||||||
|
when preceded by white space. A backslash is needed less often: >
|
||||||
|
vim9script
|
||||||
|
set titlestring=hi\ "there"
|
||||||
|
set titlestring=hi#there#
|
||||||
|
set titlestring=hi\ \#there#
|
||||||
|
|
||||||
For Win32 backslashes in file names are mostly not removed. More precise: For
|
For Win32 backslashes in file names are mostly not removed. More precise: For
|
||||||
options that expect a file name (those where environment variables are
|
options that expect a file name (those where environment variables are
|
||||||
expanded) a backslash before a normal file name character is not removed. But
|
expanded) a backslash before a normal file name character is not removed. But
|
||||||
@@ -541,6 +548,15 @@ chance that a normal word like "lex:" is caught. There is one exception:
|
|||||||
version 3.0). Using "ex:" at the start of the line will be ignored (this
|
version 3.0). Using "ex:" at the start of the line will be ignored (this
|
||||||
could be short for "example:").
|
could be short for "example:").
|
||||||
|
|
||||||
|
If the modeline is disabled within a modeline, subsequent modelines will be
|
||||||
|
ignored. This is to allow turning off modeline on a per-file basis. This is
|
||||||
|
useful when a line looks like a modeline but isn't. For example, it would be
|
||||||
|
good to start a YAML file containing strings like "vim:" with
|
||||||
|
# vim: nomodeline ~
|
||||||
|
so as to avoid modeline misdetection. Following options on the same line
|
||||||
|
after modeline deactivation, if any, are still evaluated (but you would
|
||||||
|
normally not have any).
|
||||||
|
|
||||||
*modeline-local*
|
*modeline-local*
|
||||||
The options are set like with ":setlocal": The new value only applies to the
|
The options are set like with ":setlocal": The new value only applies to the
|
||||||
buffer and window that contain the file. Although it's possible to set global
|
buffer and window that contain the file. Although it's possible to set global
|
||||||
@@ -701,7 +717,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.
|
"double": Use twice the width of ASCII characters.
|
||||||
*E834* *E835*
|
*E834* *E835*
|
||||||
The value "double" cannot be used if 'listchars' or 'fillchars'
|
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
|
The values are overruled for characters specified with
|
||||||
|setcellwidths()|.
|
|setcellwidths()|.
|
||||||
@@ -1326,7 +1343,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
continuation (positive).
|
continuation (positive).
|
||||||
sbr Display the 'showbreak' value before applying the
|
sbr Display the 'showbreak' value before applying the
|
||||||
additional indent.
|
additional indent.
|
||||||
The default value for min is 20 and shift is 0.
|
list:{n} Adds an additional indent for lines that match a
|
||||||
|
numbered or bulleted list (using the
|
||||||
|
'formatlistpat' setting).
|
||||||
|
list:-1 Uses the length of a match with 'formatlistpat'
|
||||||
|
for indentation.
|
||||||
|
The default value for min is 20, shift and list is 0.
|
||||||
|
|
||||||
*'browsedir'* *'bsdir'*
|
*'browsedir'* *'bsdir'*
|
||||||
'browsedir' 'bsdir' string (default: "last")
|
'browsedir' 'bsdir' string (default: "last")
|
||||||
@@ -2384,6 +2406,23 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
you write the file the encrypted bytes will be
|
you write the file the encrypted bytes will be
|
||||||
different. The whole undo file is encrypted, not just
|
different. The whole undo file is encrypted, not just
|
||||||
the pieces of text.
|
the pieces of text.
|
||||||
|
*E1193* *E1194* *E1195* *E1196*
|
||||||
|
*E1197* *E1198* *E1199* *E1200* *E1201*
|
||||||
|
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|.
|
||||||
|
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.
|
||||||
|
Encryption of swap files is not supported, therefore
|
||||||
|
no swap file will be used when xchacha20 encryption is
|
||||||
|
enabled.
|
||||||
|
Encryption of undo files is not yet supported,
|
||||||
|
therefore no undo file will currently be written.
|
||||||
|
CURRENTLY EXPERIMENTAL: Files written with this method
|
||||||
|
might have to be read back with the same version of
|
||||||
|
Vim if the binary format changes later.
|
||||||
|
|
||||||
You should use "blowfish2", also to re-encrypt older files.
|
You should use "blowfish2", also to re-encrypt older files.
|
||||||
|
|
||||||
@@ -3572,8 +3611,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
|
systems without an fsync() implementation, this variable is always
|
||||||
off.
|
off.
|
||||||
Also see 'swapsync' for controlling fsync() on swap files.
|
Also see 'swapsync' for controlling fsync() on swap files.
|
||||||
'fsync' also applies to |writefile()|, unless a flag is used to
|
'fsync' also applies to |writefile()| (unless a flag is used to
|
||||||
overrule it.
|
overrule it) and when writing undo files (see |undo-persistence|).
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
@@ -3752,6 +3791,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. Set it to a negative value to allow windows taller than the
|
||||||
screen.
|
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'*
|
||||||
'guioptions' 'go' string (default "egmrLtT" (MS-Windows,
|
'guioptions' 'go' string (default "egmrLtT" (MS-Windows,
|
||||||
"t" is removed in |defaults.vim|),
|
"t" is removed in |defaults.vim|),
|
||||||
@@ -4901,16 +4952,25 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
*lcs-space*
|
*lcs-space*
|
||||||
space:c Character to show for a space. When omitted, spaces
|
space:c Character to show for a space. When omitted, spaces
|
||||||
are left blank.
|
are left blank.
|
||||||
|
*lcs-multispace*
|
||||||
|
multispace:c...
|
||||||
|
One or more characters to use cyclically to show for
|
||||||
|
multiple consecutive spaces. Overrides the "space"
|
||||||
|
setting, except for single spaces. When omitted, the
|
||||||
|
"space" setting is used. For example,
|
||||||
|
`:set listchars=multispace:---+` shows ten consecutive
|
||||||
|
spaces as:
|
||||||
|
---+---+--
|
||||||
*lcs-lead*
|
*lcs-lead*
|
||||||
lead:c Character to show for leading spaces. When omitted,
|
lead:c Character to show for leading spaces. When omitted,
|
||||||
leading spaces are blank. Overrides the "space"
|
leading spaces are blank. Overrides the "space" and
|
||||||
setting for leading spaces. You can combine it with
|
"multispace" settings for leading spaces. You can
|
||||||
"tab:", for example: >
|
combine it with "tab:", for example: >
|
||||||
:set listchars+=tab:>-,lead:.
|
:set listchars+=tab:>-,lead:.
|
||||||
< *lcs-trail*
|
< *lcs-trail*
|
||||||
trail:c Character to show for trailing spaces. When omitted,
|
trail:c Character to show for trailing spaces. When omitted,
|
||||||
trailing spaces are blank. Overrides the "space"
|
trailing spaces are blank. Overrides the "space" and
|
||||||
setting for trailing spaces.
|
"multispace" settings for trailing spaces.
|
||||||
*lcs-extends*
|
*lcs-extends*
|
||||||
extends:c Character to show in the last column, when 'wrap' is
|
extends:c Character to show in the last column, when 'wrap' is
|
||||||
off and the line continues beyond the right of the
|
off and the line continues beyond the right of the
|
||||||
@@ -4931,12 +4991,20 @@ 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
|
be used when 'encoding' is "utf-8", otherwise only printable
|
||||||
characters are allowed. All characters must be single width.
|
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: >
|
Examples: >
|
||||||
:set lcs=tab:>-,trail:-
|
:set lcs=tab:>-,trail:-
|
||||||
:set lcs=tab:>-,eol:<,nbsp:%
|
:set lcs=tab:>-,eol:<,nbsp:%
|
||||||
:set lcs=extends:>,precedes:<
|
:set lcs=extends:>,precedes:<
|
||||||
< The "NonText" highlighting will be used for "eol", "extends" and
|
< The "NonText" highlighting will be used for "eol", "extends" and
|
||||||
"precedes". "SpecialKey" for "nbsp", "space", "tab" and "trail".
|
"precedes". "SpecialKey" will be used for "tab", "nbsp", "space",
|
||||||
|
"multispace", "lead" and "trail".
|
||||||
|hl-NonText| |hl-SpecialKey|
|
|hl-NonText| |hl-SpecialKey|
|
||||||
|
|
||||||
*'lpl'* *'nolpl'* *'loadplugins'* *'noloadplugins'*
|
*'lpl'* *'nolpl'* *'loadplugins'* *'noloadplugins'*
|
||||||
@@ -5595,19 +5663,21 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
- abbreviations are disabled
|
- abbreviations are disabled
|
||||||
- 'autoindent' is reset
|
- 'autoindent' is reset
|
||||||
- 'expandtab' is reset
|
- 'expandtab' is reset
|
||||||
- 'formatoptions' is used like it is empty
|
- 'hkmap' is reset
|
||||||
- 'revins' is reset
|
- 'revins' is reset
|
||||||
- 'ruler' is reset
|
- 'ruler' is reset
|
||||||
- 'showmatch' is reset
|
- 'showmatch' is reset
|
||||||
- 'smartindent' is reset
|
|
||||||
- 'smarttab' is reset
|
- 'smarttab' is reset
|
||||||
- 'softtabstop' is set to 0
|
- 'softtabstop' is set to 0
|
||||||
- 'textwidth' is set to 0
|
- 'textwidth' is set to 0
|
||||||
- 'wrapmargin' is set to 0
|
- 'wrapmargin' is set to 0
|
||||||
|
- 'varsofttabstop' is made empty
|
||||||
These options keep their value, but their effect is disabled:
|
These options keep their value, but their effect is disabled:
|
||||||
- 'cindent'
|
- 'cindent'
|
||||||
|
- 'formatoptions' is used like it is empty
|
||||||
- 'indentexpr'
|
- 'indentexpr'
|
||||||
- 'lisp'
|
- 'lisp'
|
||||||
|
- 'smartindent'
|
||||||
NOTE: When you start editing another file while the 'paste' option is
|
NOTE: When you start editing another file while the 'paste' option is
|
||||||
on, settings from the modelines or autocommands may change the
|
on, settings from the modelines or autocommands may change the
|
||||||
settings again, causing trouble when pasting text. You might want to
|
settings again, causing trouble when pasting text. You might want to
|
||||||
@@ -6575,23 +6645,25 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|
|
||||||
*'shellcmdflag'* *'shcf'*
|
*'shellcmdflag'* *'shcf'*
|
||||||
'shellcmdflag' 'shcf' string (default: "-c";
|
'shellcmdflag' 'shcf' string (default: "-c";
|
||||||
Win32, when 'shell' does not contain "sh"
|
Win32, when 'shell' contains "powershell":
|
||||||
|
"-Command", or when it does not contain "sh"
|
||||||
somewhere: "/c")
|
somewhere: "/c")
|
||||||
global
|
global
|
||||||
Flag passed to the shell to execute "!" and ":!" commands; e.g.,
|
Flag passed to the shell to execute "!" and ":!" commands; e.g.,
|
||||||
"bash.exe -c ls" or "cmd.exe /c dir". For MS-Windows, the default is
|
"bash.exe -c ls", "powershell.exe -Command dir", or "cmd.exe /c dir".
|
||||||
set according to the value of 'shell', to reduce the need to set this
|
For MS-Windows, the default is set according to the value of 'shell',
|
||||||
option by the user.
|
to reduce the need to set this option by the user.
|
||||||
On Unix it can have more than one flag. Each white space separated
|
On Unix it can have more than one flag. Each white space separated
|
||||||
part is passed as an argument to the shell command.
|
part is passed as an argument to the shell command.
|
||||||
See |option-backslash| about including spaces and backslashes.
|
See |option-backslash| about including spaces and backslashes.
|
||||||
Also see |dos-shell| for MS-Windows.
|
Also see |dos-shell| and |dos-powershell| for MS-Windows.
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
*'shellpipe'* *'sp'*
|
*'shellpipe'* *'sp'*
|
||||||
'shellpipe' 'sp' string (default ">", ">%s 2>&1", "| tee", "|& tee" or
|
'shellpipe' 'sp' string (default ">", ">%s 2>&1", "| tee", "|& tee"
|
||||||
"2>&1| tee")
|
"2>&1| tee", or
|
||||||
|
"2>&1 | Out-File -Encoding default")
|
||||||
global
|
global
|
||||||
{not available when compiled without the |+quickfix|
|
{not available when compiled without the |+quickfix|
|
||||||
feature}
|
feature}
|
||||||
@@ -6601,9 +6673,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
The name of the temporary file can be represented by "%s" if necessary
|
The name of the temporary file can be represented by "%s" if necessary
|
||||||
(the file name is appended automatically if no %s appears in the value
|
(the file name is appended automatically if no %s appears in the value
|
||||||
of this option).
|
of this option).
|
||||||
For the Amiga the default is ">". For MS-Windows the default is
|
For the Amiga the default is ">". For MS-Windows using powershell the
|
||||||
">%s 2>&1". The output is directly saved in a file and not echoed to
|
default is "2>&1 | Out-File -Encoding default", otherwise the default
|
||||||
the screen.
|
is ">%s 2>&1". The output is directly saved in a file and not echoed
|
||||||
|
to the screen.
|
||||||
For Unix the default is "| tee". The stdout of the compiler is saved
|
For Unix the default is "| tee". The stdout of the compiler is saved
|
||||||
in a file and echoed to the screen. If the 'shell' option is "csh" or
|
in a file and echoed to the screen. If the 'shell' option is "csh" or
|
||||||
"tcsh" after initializations, the default becomes "|& tee". If the
|
"tcsh" after initializations, the default becomes "|& tee". If the
|
||||||
@@ -6611,6 +6684,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
"bash", "fish", "ash" or "dash" the default becomes "2>&1| tee". This
|
"bash", "fish", "ash" or "dash" the default becomes "2>&1| tee". This
|
||||||
means that stderr is also included. Before using the 'shell' option a
|
means that stderr is also included. Before using the 'shell' option a
|
||||||
path is removed, thus "/bin/sh" uses "sh".
|
path is removed, thus "/bin/sh" uses "sh".
|
||||||
|
For Unix and MS-Windows, when the 'shell' option is "pwsh" the default
|
||||||
|
becomes ">%s 2>&1" and the output is not echoed to the screen.
|
||||||
The initialization of this option is done after reading the ".vimrc"
|
The initialization of this option is done after reading the ".vimrc"
|
||||||
and the other initializations, so that when the 'shell' option is set
|
and the other initializations, so that when the 'shell' option is set
|
||||||
there, the 'shellpipe' option changes automatically, unless it was
|
there, the 'shellpipe' option changes automatically, unless it was
|
||||||
@@ -6626,8 +6701,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
*'shellquote'* *'shq'*
|
*'shellquote'* *'shq'*
|
||||||
'shellquote' 'shq' string (default: ""; Win32, when 'shell'
|
'shellquote' 'shq' string (default: "")
|
||||||
contains "sh" somewhere: "\"")
|
|
||||||
global
|
global
|
||||||
Quoting character(s), put around the command passed to the shell, for
|
Quoting character(s), put around the command passed to the shell, for
|
||||||
the "!" and ":!" commands. The redirection is kept outside of the
|
the "!" and ":!" commands. The redirection is kept outside of the
|
||||||
@@ -6635,14 +6709,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
probably not useful to set both options.
|
probably not useful to set both options.
|
||||||
This is an empty string by default. Only known to be useful for
|
This is an empty string by default. Only known to be useful for
|
||||||
third-party shells on MS-Windows-like systems, such as the MKS Korn
|
third-party shells on MS-Windows-like systems, such as the MKS Korn
|
||||||
Shell or bash, where it should be "\"". The default is adjusted
|
Shell or bash, where it should be "\"". See |dos-shell|.
|
||||||
according the value of 'shell', to reduce the need to set this option
|
|
||||||
by the user. See |dos-shell|.
|
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
*'shellredir'* *'srr'*
|
*'shellredir'* *'srr'*
|
||||||
'shellredir' 'srr' string (default ">", ">&" or ">%s 2>&1")
|
'shellredir' 'srr' string (default ">", ">&", ">%s 2>&1", or
|
||||||
|
"2>&1 | Out-File -Encoding default")
|
||||||
global
|
global
|
||||||
String to be used to put the output of a filter command in a temporary
|
String to be used to put the output of a filter command in a temporary
|
||||||
file. See also |:!|. See |option-backslash| about including spaces
|
file. See also |:!|. See |option-backslash| about including spaces
|
||||||
@@ -6653,10 +6726,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
The default is ">". For Unix, if the 'shell' option is "csh" or
|
The default is ">". For Unix, if the 'shell' option is "csh" or
|
||||||
"tcsh" during initializations, the default becomes ">&". If the
|
"tcsh" during initializations, the default becomes ">&". If the
|
||||||
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh", "zsh-beta",
|
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh", "zsh-beta",
|
||||||
"bash" or "fish", the default becomes ">%s 2>&1". This means that
|
"bash", "fish", or "pwsh", the default becomes ">%s 2>&1". This means
|
||||||
stderr is also included. For Win32, the Unix checks are done and
|
that stderr is also included. For Win32, the Unix checks are done and
|
||||||
additionally "cmd" is checked for, which makes the default ">%s 2>&1".
|
additionally "cmd" is checked for, which makes the default ">%s 2>&1",
|
||||||
Also, the same names with ".exe" appended are checked for.
|
and "powershell" is checked for which makes the default
|
||||||
|
"2>&1 | Out-File -Encoding default" (see |dos-powershell|). Also, the
|
||||||
|
same names with ".exe" appended are checked for.
|
||||||
The initialization of this option is done after reading the ".vimrc"
|
The initialization of this option is done after reading the ".vimrc"
|
||||||
and the other initializations, so that when the 'shell' option is set
|
and the other initializations, so that when the 'shell' option is set
|
||||||
there, the 'shellredir' option changes automatically unless it was
|
there, the 'shellredir' option changes automatically unless it was
|
||||||
@@ -6671,9 +6746,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
global
|
global
|
||||||
{only for MS-Windows}
|
{only for MS-Windows}
|
||||||
When set, a forward slash is used when expanding file names. This is
|
When set, a forward slash is used when expanding file names. This is
|
||||||
useful when a Unix-like shell is used instead of cmd.exe. Backward
|
useful when a Unix-like shell is used instead of cmd.exe, pwsh.exe, or
|
||||||
slashes can still be typed, but they are changed to forward slashes by
|
powershell.exe. Backward slashes can still be typed, but they are
|
||||||
Vim.
|
changed to forward slashes by Vim.
|
||||||
Note that setting or resetting this option has no effect for some
|
Note that setting or resetting this option has no effect for some
|
||||||
existing file names, thus this option needs to be set before opening
|
existing file names, thus this option needs to be set before opening
|
||||||
any file for best results. This might change in the future.
|
any file for best results. This might change in the future.
|
||||||
@@ -6727,6 +6802,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
*'shellxquote'* *'sxq'*
|
*'shellxquote'* *'sxq'*
|
||||||
'shellxquote' 'sxq' string (default: "";
|
'shellxquote' 'sxq' string (default: "";
|
||||||
for Win32, when 'shell' is cmd.exe: "("
|
for Win32, when 'shell' is cmd.exe: "("
|
||||||
|
for Win32, when 'shell' is
|
||||||
|
powershell.exe: "\""
|
||||||
for Win32, when 'shell' contains "sh"
|
for Win32, when 'shell' contains "sh"
|
||||||
somewhere: "\""
|
somewhere: "\""
|
||||||
for Unix, when using system(): "\"")
|
for Unix, when using system(): "\"")
|
||||||
@@ -6739,11 +6816,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
then ')"' is appended.
|
then ')"' is appended.
|
||||||
When the value is '(' then also see 'shellxescape'.
|
When the value is '(' then also see 'shellxescape'.
|
||||||
This is an empty string by default on most systems, but is known to be
|
This is an empty string by default on most systems, but is known to be
|
||||||
useful for on Win32 version, either for cmd.exe which automatically
|
useful for on Win32 version, either for cmd.exe, powershell.exe, or
|
||||||
strips off the first and last quote on a command, or 3rd-party shells
|
pwsh.exe which automatically strips off the first and last quote on a
|
||||||
such as the MKS Korn Shell or bash, where it should be "\"". The
|
command, or 3rd-party shells such as the MKS Korn Shell or bash, where
|
||||||
default is adjusted according the value of 'shell', to reduce the need
|
it should be "\"". The default is adjusted according the value of
|
||||||
to set this option by the user. See |dos-shell|.
|
'shell', to reduce the need to set this option by the user. See
|
||||||
|
|dos-shell|.
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
@@ -7128,6 +7206,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
If the name "cjk" is included East Asian characters are excluded from
|
If the name "cjk" is included East Asian characters are excluded from
|
||||||
spell checking. This is useful when editing text that also has Asian
|
spell checking. This is useful when editing text that also has Asian
|
||||||
words.
|
words.
|
||||||
|
Note that the "medical" dictionary does not exist, it is just an
|
||||||
|
example of a longer name.
|
||||||
*E757*
|
*E757*
|
||||||
As a special case the name of a .spl file can be given as-is. The
|
As a special case the name of a .spl file can be given as-is. The
|
||||||
first "_xx" in the name is removed and used as the region name
|
first "_xx" in the name is removed and used as the region name
|
||||||
@@ -7346,13 +7426,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.
|
return value of expr contains % items they will get expanded.
|
||||||
The expression can contain the } character, the end of
|
The expression can contain the } character, the end of
|
||||||
expression is denoted by %}.
|
expression is denoted by %}.
|
||||||
The For example: >
|
For example: >
|
||||||
func! Stl_filename() abort
|
func! Stl_filename() abort
|
||||||
return "%t"
|
return "%t"
|
||||||
endfunc
|
endfunc
|
||||||
< `stl=%{Stl_filename()}` results in `"%t"`
|
< `stl=%{Stl_filename()}` results in `"%t"`
|
||||||
`stl=%{%Stl_filename()%}` results in `"Name of current file"`
|
`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
|
( - Start of item group. Can be used for setting the width and
|
||||||
alignment of a section. Must be followed by %) somewhere.
|
alignment of a section. Must be followed by %) somewhere.
|
||||||
) - End of item group. No width fields allowed.
|
) - End of item group. No width fields allowed.
|
||||||
@@ -7948,25 +8028,30 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'thesaurus' 'tsr' string (default "")
|
'thesaurus' 'tsr' string (default "")
|
||||||
global or local to buffer |global-local|
|
global or local to buffer |global-local|
|
||||||
List of file names, separated by commas, that are used to lookup words
|
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,
|
This option is not used if 'thesaurusfunc' is set, either for the
|
||||||
separated by non-keyword characters (white space is preferred).
|
buffer or globally.
|
||||||
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.
|
|
||||||
|
|
||||||
To include a comma in a file name precede it with a backslash. Spaces
|
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
|
after a comma are ignored, otherwise spaces are included in the file
|
||||||
name. See |option-backslash| about using backslashes.
|
name. See |option-backslash| about using backslashes. The use of
|
||||||
The use of |:set+=| and |:set-=| is preferred when adding or removing
|
|:set+=| and |:set-=| is preferred when adding or removing directories
|
||||||
directories from the list. This avoids problems when a future version
|
from the list. This avoids problems when a future version uses
|
||||||
uses another default.
|
another default. Backticks cannot be used in this option for security
|
||||||
Backticks cannot be used in this option for security reasons.
|
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|.
|
||||||
|
|
||||||
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
|
security reasons.
|
||||||
|
|
||||||
*'tildeop'* *'top'* *'notildeop'* *'notop'*
|
*'tildeop'* *'top'* *'notildeop'* *'notop'*
|
||||||
'tildeop' 'top' boolean (default off)
|
'tildeop' 'top' boolean (default off)
|
||||||
@@ -8611,12 +8696,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|
|
||||||
*'virtualedit'* *'ve'*
|
*'virtualedit'* *'ve'*
|
||||||
'virtualedit' 've' string (default "")
|
'virtualedit' 've' string (default "")
|
||||||
global
|
global or local to window |global-local|
|
||||||
A comma separated list of these words:
|
A comma separated list of these words:
|
||||||
block Allow virtual editing in Visual block mode.
|
block Allow virtual editing in Visual block mode.
|
||||||
insert Allow virtual editing in Insert mode.
|
insert Allow virtual editing in Insert mode.
|
||||||
all Allow virtual editing in all modes.
|
all Allow virtual editing in all modes.
|
||||||
onemore Allow the cursor to move just past the end of the line
|
onemore Allow the cursor to move just past the end of the line
|
||||||
|
none When used as the local value, do not allow virtual
|
||||||
|
editing even when the global value is set. When used
|
||||||
|
as the global value, "none" is the same as "".
|
||||||
|
NONE Alternative spelling of "none".
|
||||||
|
|
||||||
Virtual editing means that the cursor can be positioned where there is
|
Virtual editing means that the cursor can be positioned where there is
|
||||||
no actual character. This can be halfway into a tab or beyond the end
|
no actual character. This can be halfway into a tab or beyond the end
|
||||||
@@ -8633,6 +8722,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
The `g$` command will move to the end of the screen line.
|
The `g$` command will move to the end of the screen line.
|
||||||
It doesn't make sense to combine "all" with "onemore", but you will
|
It doesn't make sense to combine "all" with "onemore", but you will
|
||||||
not get a warning for it.
|
not get a warning for it.
|
||||||
|
When combined with other words, "none" is ignored.
|
||||||
NOTE: This option is set to "" when 'compatible' is set.
|
NOTE: This option is set to "" when 'compatible' is set.
|
||||||
|
|
||||||
*'visualbell'* *'vb'* *'novisualbell'* *'novb'* *beep*
|
*'visualbell'* *'vb'* *'novisualbell'* *'novb'* *beep*
|
||||||
@@ -8716,8 +8806,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
More info here: |cmdline-completion|.
|
More info here: |cmdline-completion|.
|
||||||
The character is not recognized when used inside a macro. See
|
The character is not recognized when used inside a macro. See
|
||||||
'wildcharm' for that.
|
'wildcharm' for that.
|
||||||
|
Some keys will not work, such as CTRL-C, <CR> and Enter.
|
||||||
Although 'wc' is a number option, you can set it to a special key: >
|
Although 'wc' is a number option, you can set it to a special key: >
|
||||||
:set wc=<Esc>
|
:set wc=<Tab>
|
||||||
< NOTE: This option is set to the Vi default value when 'compatible' is
|
< NOTE: This option is set to the Vi default value when 'compatible' is
|
||||||
set and to the Vim default value when 'compatible' is reset.
|
set and to the Vim default value when 'compatible' is reset.
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ versions of Vim. Also see |os_win32.txt| and |os_msdos.txt|.
|
|||||||
7. Interrupting |dos-CTRL-Break|
|
7. Interrupting |dos-CTRL-Break|
|
||||||
8. Temp files |dos-temp-files|
|
8. Temp files |dos-temp-files|
|
||||||
9. Shell option default |dos-shell|
|
9. Shell option default |dos-shell|
|
||||||
|
10. PowerShell |dos-powershell|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
1. File locations *dos-locations*
|
1. File locations *dos-locations*
|
||||||
@@ -297,8 +298,86 @@ For Win32 as:
|
|||||||
<shell> -c "command name >file"
|
<shell> -c "command name >file"
|
||||||
For DOS 32 bit, DJGPP does this internally somehow.
|
For DOS 32 bit, DJGPP does this internally somehow.
|
||||||
|
|
||||||
When starting up, Vim checks for the presence of "sh" anywhere in the 'shell'
|
When starting up, if Vim does not recognise a standard Windows shell it checks
|
||||||
option. If it is present, Vim sets the 'shellcmdflag' and 'shellquote' or
|
for the presence of "sh" anywhere in the 'shell' option. If it is present,
|
||||||
'shellxquote' options will be set as described above.
|
Vim sets the 'shellcmdflag' and 'shellquote' or 'shellxquote' options will be
|
||||||
|
set as described above.
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
10. PowerShell *dos-powershell* *dos-pwsh*
|
||||||
|
|
||||||
|
Vim supports PowerShell Desktop and PowerShell Core. PowerShell Desktop is
|
||||||
|
the version of PowerShell that is installed with Windows, while PowerShell
|
||||||
|
Core is a separate downloadable version that works cross-platform. To see
|
||||||
|
which version you are using then enter the following in a PowerShell prompt -
|
||||||
|
$PSVersionTable.PSEdition
|
||||||
|
|
||||||
|
If 'shell' includes "powershell" in the filename at startup then VIM sets
|
||||||
|
'shellcmdflag', 'shellxquote', 'shellpipe', and 'shellredir' options to the
|
||||||
|
following values:
|
||||||
|
|
||||||
|
'shellcmdflag' -Command
|
||||||
|
'shellxquote' "
|
||||||
|
'shellpipe' 2>&1 | Out-File -Encoding default
|
||||||
|
'shellredir' 2>&1 | Out-File -Encoding default
|
||||||
|
|
||||||
|
If 'shell' includes "pwsh" in the filename at startup then VIM sets
|
||||||
|
'shellcmdflag', 'shellxquote', 'shellpipe', and 'shellredir' options to the
|
||||||
|
following values:
|
||||||
|
|
||||||
|
'shellcmdflag' -c
|
||||||
|
'shellxquote' "
|
||||||
|
'shellpipe' >%s 2>&1
|
||||||
|
'shellredir' >%s 2>&1
|
||||||
|
|
||||||
|
If you find that PowerShell commands are taking a long time to run then try
|
||||||
|
with "-NoProfile" at the beginning of the 'shellcmdflag'. Note this will
|
||||||
|
prevent any PowerShell environment setup by the profile from taking place.
|
||||||
|
|
||||||
|
If you have problems running PowerShell scripts through the 'shell' then try
|
||||||
|
with "-ExecutionPolicy RemoteSigned -Command" at the beginning of
|
||||||
|
'shellcmdflag'. See online Windows documentation for more information on
|
||||||
|
PowerShell Execution Policy settings.
|
||||||
|
|
||||||
|
See |option-backslash| about including spaces in 'shellcmdflag' when using
|
||||||
|
multiple flags.
|
||||||
|
|
||||||
|
The 'shellpipe' and 'shellredir' option values re-encode the UTF-16le output
|
||||||
|
from PowerShell Desktop to your currently configured console codepage. The
|
||||||
|
output can be forced into a different encoding by changing "default" to one of
|
||||||
|
the following:
|
||||||
|
|
||||||
|
unicode - UTF-16le (default output from PowerShell 5.1)
|
||||||
|
bigendianunicode - UTF-16
|
||||||
|
utf8 - UTF-8
|
||||||
|
utf7 - UTF-7 (no BOM)
|
||||||
|
utf32 - UTF-32
|
||||||
|
ascii - 7-bit ASCII character set
|
||||||
|
default - System's active code page (typically ANSI)
|
||||||
|
oem - System's current OEM code page
|
||||||
|
|
||||||
|
Note The abovce multi-byte Unicode encodings include a leading BOM unless
|
||||||
|
otherwise indicated.
|
||||||
|
|
||||||
|
By default PowerShell Core's output is UTF-8 encoded without a BOM. If you
|
||||||
|
want to force the output of PowerShell Core into a different encoding then set
|
||||||
|
'shellredir' and 'shellpipe' to "2>&1 | Out-File -Encoding encoding" where
|
||||||
|
encoding is one of the following:
|
||||||
|
|
||||||
|
ascii - 7-bit ASCII character set
|
||||||
|
bigendianunicode - UTF-16be
|
||||||
|
bigendianutf32 - UTF-32be
|
||||||
|
oem - System's current OEM code page
|
||||||
|
unicode - UTF-16le
|
||||||
|
utf7 - UTF-7
|
||||||
|
utf8 - UTF-8
|
||||||
|
utf8BOM - UTF-8, with BOM
|
||||||
|
utf8NoBOM - UTF-8, no BOM (default output from PowerShell Core)
|
||||||
|
utf32 - UTF-32
|
||||||
|
|
||||||
|
Since PowerShell Core 6.2, the Encoding parameter also supports specifying a
|
||||||
|
numeric ID of a registered code page (-Encoding 1251) or string names of
|
||||||
|
registered code pages (-Encoding "windows-1251"). The .NET documentation for
|
||||||
|
Encoding.CodePage has more information
|
||||||
|
|
||||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
|
|||||||
@@ -767,12 +767,12 @@ GNU_TOOLS.ZIP package downloadable from http://www.polarhome.com/vim/
|
|||||||
|
|
||||||
Version 8.2
|
Version 8.2
|
||||||
- make all changes needed for clean compile build of v8.2 on VMS on all platforms
|
- make all changes needed for clean compile build of v8.2 on VMS on all platforms
|
||||||
- fix the call mkdir bug (vicente_polo@yahoo.es)
|
- fix the call mkdir bug (vicente_polo@yahoo.es)
|
||||||
- test on VSI OpenVMS Alpha and Itanium platforms
|
- test on VSI OpenVMS Alpha and Itanium platforms
|
||||||
- added LUA support
|
- added LUA support
|
||||||
- added XPM support - Motif GUI with toolbar on all platforms
|
- added XPM support - Motif GUI with toolbar on all platforms
|
||||||
- XPM v3.4.11 libraries for IA64, AXP and VAX are added
|
- XPM v3.4.11 libraries for IA64, AXP and VAX are added
|
||||||
- start integrating the new test scripts
|
- start integrating the new test scripts
|
||||||
|
|
||||||
Version 8.1
|
Version 8.1
|
||||||
- make necessary changes to build v8.1 on VMS
|
- make necessary changes to build v8.1 on VMS
|
||||||
|
|||||||
@@ -18,7 +18,8 @@ The 32 bit version also runs on 64 bit MS-Windows systems.
|
|||||||
4. Using the mouse |win32-mouse|
|
4. Using the mouse |win32-mouse|
|
||||||
5. Running under Windows 95 |win32-win95|
|
5. Running under Windows 95 |win32-win95|
|
||||||
6. Running under Windows 3.1 |win32-win3.1|
|
6. Running under Windows 3.1 |win32-win3.1|
|
||||||
7. Win32 mini FAQ |win32-faq|
|
7. Installation package |win32-installer|
|
||||||
|
8. Win32 mini FAQ |win32-faq|
|
||||||
|
|
||||||
Additionally, there are a number of common Win32 and DOS items:
|
Additionally, there are a number of common Win32 and DOS items:
|
||||||
File locations |dos-locations|
|
File locations |dos-locations|
|
||||||
@@ -30,6 +31,7 @@ File formats |dos-file-formats|
|
|||||||
Interrupting |dos-CTRL-Break|
|
Interrupting |dos-CTRL-Break|
|
||||||
Temp files |dos-temp-files|
|
Temp files |dos-temp-files|
|
||||||
Shell option default |dos-shell|
|
Shell option default |dos-shell|
|
||||||
|
PowerShell defaults |dos-powershell|
|
||||||
|
|
||||||
Win32 GUI |gui-w32|
|
Win32 GUI |gui-w32|
|
||||||
|
|
||||||
@@ -174,7 +176,29 @@ There was a special version of gvim that runs under Windows 3.1 and 3.11.
|
|||||||
Support was removed in patch 7.4.1364.
|
Support was removed in patch 7.4.1364.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
7. Win32 mini FAQ *win32-faq*
|
7. Installation package *win32-installer*
|
||||||
|
|
||||||
|
A simple installer for windows is available at http://www.vim.org/download.php
|
||||||
|
(stable version) and nightly builds are also available at
|
||||||
|
https://github.com/vim/vim-win32-installer/releases/
|
||||||
|
|
||||||
|
The nightly builds include 32bit and 64bit builds, have most features enabled
|
||||||
|
and usually also contain an extra cryptographic signed installer, so Windows
|
||||||
|
will not complain.
|
||||||
|
|
||||||
|
To use the installer, simply run the exe file. The following switches are
|
||||||
|
also supported: >
|
||||||
|
|
||||||
|
gvim_<version>.exe /S -> silent install without any dialogues
|
||||||
|
gvim_<version>.exe /D=C:\vim -> Install into directory c:\vim
|
||||||
|
-> /D must be the last argument
|
||||||
|
gvim_<version>.exe /S /D=c:\vim -> silent install into c:\vim
|
||||||
|
<
|
||||||
|
The default installation directory can alternatively be given by setting the
|
||||||
|
$VIM environment variable.
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
8. Win32 mini FAQ *win32-faq*
|
||||||
|
|
||||||
Q. How do I change the font?
|
Q. How do I change the font?
|
||||||
A. In the GUI version, you can use the 'guifont' option. Example: >
|
A. In the GUI version, you can use the 'guifont' option. Example: >
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*pattern.txt* For Vim version 8.2. Last change: 2021 May 02
|
*pattern.txt* For Vim version 8.2. Last change: 2021 Jul 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -929,13 +929,20 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
\%23l Matches in a specific line.
|
\%23l Matches in a specific line.
|
||||||
\%<23l Matches above a specific line (lower line number).
|
\%<23l Matches above a specific line (lower line number).
|
||||||
\%>23l Matches below a specific line (higher line number).
|
\%>23l Matches below a specific line (higher line number).
|
||||||
These three can be used to match specific lines in a buffer. The "23"
|
\%.l Matches at the cursor line.
|
||||||
|
\%<.l Matches above the cursor line.
|
||||||
|
\%>.l Matches below the cursor line.
|
||||||
|
These six can be used to match specific lines in a buffer. The "23"
|
||||||
can be any line number. The first line is 1.
|
can be any line number. The first line is 1.
|
||||||
WARNING: When inserting or deleting lines Vim does not automatically
|
WARNING: When inserting or deleting lines Vim does not automatically
|
||||||
update the matches. This means Syntax highlighting quickly becomes
|
update the matches. This means Syntax highlighting quickly becomes
|
||||||
wrong.
|
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 line where the cursor currently is: >
|
Example, to highlight the line where the cursor currently is: >
|
||||||
:exe '/\%' . line(".") . 'l.*'
|
:exe '/\%' . line(".") . 'l'
|
||||||
|
< Alternatively use: >
|
||||||
|
/\%.l
|
||||||
< When 'hlsearch' is set and you move the cursor around and make changes
|
< When 'hlsearch' is set and you move the cursor around and make changes
|
||||||
this will clearly show when the match is updated or not.
|
this will clearly show when the match is updated or not.
|
||||||
|
|
||||||
@@ -943,15 +950,22 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
\%23c Matches in a specific column.
|
\%23c Matches in a specific column.
|
||||||
\%<23c Matches before a specific column.
|
\%<23c Matches before a specific column.
|
||||||
\%>23c Matches after a specific column.
|
\%>23c Matches after a specific column.
|
||||||
These three can be used to match specific columns in a buffer or
|
\%.c Matches at the cursor column.
|
||||||
string. The "23" can be any column number. The first column is 1.
|
\%<.c Matches before the cursor column.
|
||||||
Actually, the column is the byte number (thus it's not exactly right
|
\%>.c Matches after the cursor column.
|
||||||
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
|
WARNING: When inserting or deleting text Vim does not automatically
|
||||||
update the matches. This means Syntax highlighting quickly becomes
|
update the matches. This means Syntax highlighting quickly becomes
|
||||||
wrong.
|
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: >
|
Example, to highlight the column where the cursor currently is: >
|
||||||
:exe '/\%' . col(".") . 'c'
|
:exe '/\%' . col(".") . 'c'
|
||||||
|
< Alternatively use: >
|
||||||
|
/\%.c
|
||||||
< When 'hlsearch' is set and you move the cursor around and make changes
|
< When 'hlsearch' is set and you move the cursor around and make changes
|
||||||
this will clearly show when the match is updated or not.
|
this will clearly show when the match is updated or not.
|
||||||
Example for matching a single byte in column 44: >
|
Example for matching a single byte in column 44: >
|
||||||
@@ -962,8 +976,11 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
\%23v Matches in a specific virtual column.
|
\%23v Matches in a specific virtual column.
|
||||||
\%<23v Matches before a specific virtual column.
|
\%<23v Matches before a specific virtual column.
|
||||||
\%>23v Matches after a specific virtual column.
|
\%>23v Matches after a specific virtual column.
|
||||||
These three can be used to match specific virtual columns in a buffer
|
\%.v Matches at the current virtual column.
|
||||||
or string. When not matching with a buffer in a window, the option
|
\%<.v Matches before the current virtual column.
|
||||||
|
\%>.v Matches after the current virtual column.
|
||||||
|
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').
|
values of the current window are used (e.g., 'tabstop').
|
||||||
The "23" can be any column number. The first column is 1.
|
The "23" can be any column number. The first column is 1.
|
||||||
Note that some virtual column positions will never match, because they
|
Note that some virtual column positions will never match, because they
|
||||||
@@ -971,13 +988,18 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
one screen character.
|
one screen character.
|
||||||
WARNING: When inserting or deleting text Vim does not automatically
|
WARNING: When inserting or deleting text Vim does not automatically
|
||||||
update highlighted matches. This means Syntax highlighting quickly
|
update highlighted matches. This means Syntax highlighting quickly
|
||||||
becomes wrong.
|
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 all the characters after virtual column 72: >
|
Example, to highlight all the characters after virtual column 72: >
|
||||||
/\%>72v.*
|
/\%>72v.*
|
||||||
< When 'hlsearch' is set and you move the cursor around and make changes
|
< When 'hlsearch' is set and you move the cursor around and make changes
|
||||||
this will clearly show when the match is updated or not.
|
this will clearly show when the match is updated or not.
|
||||||
To match the text up to column 17: >
|
To match the text up to column 17: >
|
||||||
/^.*\%17v
|
/^.*\%17v
|
||||||
|
< To match all characters after the current virtual column (where the
|
||||||
|
cursor is): >
|
||||||
|
/\%>.v.*
|
||||||
< Column 17 is not included, because this is a |/zero-width| match. To
|
< Column 17 is not included, because this is a |/zero-width| match. To
|
||||||
include the column use: >
|
include the column use: >
|
||||||
/^.*\%17v.
|
/^.*\%17v.
|
||||||
@@ -989,7 +1011,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
/.*\%17v
|
/.*\%17v
|
||||||
< Column 17 is highlighted by 'hlsearch' because there is another match
|
< Column 17 is highlighted by 'hlsearch' because there is another match
|
||||||
where ".*" matches zero characters.
|
where ".*" matches zero characters.
|
||||||
<
|
|
||||||
|
|
||||||
Character classes:
|
Character classes:
|
||||||
\i identifier character (see 'isident' option) */\i*
|
\i identifier character (see 'isident' option) */\i*
|
||||||
@@ -1217,7 +1239,7 @@ x A single character, with no special meaning, matches itself
|
|||||||
|
|
||||||
\%d123 Matches the character specified with a decimal number. Must be
|
\%d123 Matches the character specified with a decimal number. Must be
|
||||||
followed by a non-digit.
|
followed by a non-digit.
|
||||||
\%o40 Matches the character specified with an octal number up to 0377.
|
\%o40 Matches the character specified with an octal number up to 0o377.
|
||||||
Numbers below 0o40 must be followed by a non-octal digit or a
|
Numbers below 0o40 must be followed by a non-octal digit or a
|
||||||
non-digit.
|
non-digit.
|
||||||
\%x2a Matches the character specified with up to two hexadecimal characters.
|
\%x2a Matches the character specified with up to two hexadecimal characters.
|
||||||
@@ -1449,7 +1471,8 @@ criteria:
|
|||||||
- The number of characters (distance) between two consecutive matching
|
- The number of characters (distance) between two consecutive matching
|
||||||
characters.
|
characters.
|
||||||
- Matches at the beginning of a word
|
- Matches at the beginning of a word
|
||||||
- Matches after a camel case character or a path separator or a hyphen.
|
- Matches at a camel case character (e.g. Case in CamelCase)
|
||||||
|
- Matches after a path separator or a hyphen.
|
||||||
- The number of unmatched characters in a string.
|
- The number of unmatched characters in a string.
|
||||||
The matching string with the highest score is returned first.
|
The matching string with the highest score is returned first.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*pi_netrw.txt* For Vim version 8.2. Last change: 2020 Sep 19
|
*pi_netrw.txt* For Vim version 8.2. Last change: 2021 Aug 16
|
||||||
|
|
||||||
------------------------------------------------
|
------------------------------------------------
|
||||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||||
@@ -54,6 +54,7 @@ Copyright: Copyright (C) 2017 Charles E Campbell *netrw-copyright*
|
|||||||
Browsing With A Horizontally Split Window...........|netrw-o|
|
Browsing With A Horizontally Split Window...........|netrw-o|
|
||||||
Browsing With A New Tab.............................|netrw-t|
|
Browsing With A New Tab.............................|netrw-t|
|
||||||
Browsing With A Vertically Split Window.............|netrw-v|
|
Browsing With A Vertically Split Window.............|netrw-v|
|
||||||
|
Change File Permission..............................|netrw-gp|
|
||||||
Change Listing Style.(thin wide long tree)..........|netrw-i|
|
Change Listing Style.(thin wide long tree)..........|netrw-i|
|
||||||
Changing To A Bookmarked Directory..................|netrw-gb|
|
Changing To A Bookmarked Directory..................|netrw-gb|
|
||||||
Changing To A Predecessor Directory.................|netrw-u|
|
Changing To A Predecessor Directory.................|netrw-u|
|
||||||
@@ -1095,6 +1096,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
|||||||
gf Force treatment as file |netrw-gf|
|
gf Force treatment as file |netrw-gf|
|
||||||
gh Quick hide/unhide of dot-files |netrw-gh|
|
gh Quick hide/unhide of dot-files |netrw-gh|
|
||||||
gn Make top of tree the directory below the cursor |netrw-gn|
|
gn Make top of tree the directory below the cursor |netrw-gn|
|
||||||
|
gp Change local-only file permissions |netrw-gp|
|
||||||
i Cycle between thin, long, wide, and tree listings |netrw-i|
|
i Cycle between thin, long, wide, and tree listings |netrw-i|
|
||||||
I Toggle the displaying of the banner |netrw-I|
|
I Toggle the displaying of the banner |netrw-I|
|
||||||
mb Bookmark current directory |netrw-mb|
|
mb Bookmark current directory |netrw-mb|
|
||||||
@@ -1510,6 +1512,8 @@ Netrw determines which special handler by the following method:
|
|||||||
If g:netrw_browsex_viewer == '-', then netrwFileHandlers#Invoke() will be
|
If g:netrw_browsex_viewer == '-', then netrwFileHandlers#Invoke() will be
|
||||||
used instead (see |netrw_filehandler|).
|
used instead (see |netrw_filehandler|).
|
||||||
|
|
||||||
|
If the viewer you wish to use does not support handling of a remote URL
|
||||||
|
directory, set |g:netrw_browsex_support_remote| to 0.
|
||||||
* for Windows 32 or 64, the URL and FileProtocolHandler dlls are used.
|
* for Windows 32 or 64, the URL and FileProtocolHandler dlls are used.
|
||||||
* for Gnome (with gnome-open): gnome-open is used.
|
* for Gnome (with gnome-open): gnome-open is used.
|
||||||
* for KDE (with kfmclient) : kfmclient is used
|
* for KDE (with kfmclient) : kfmclient is used
|
||||||
@@ -2104,8 +2108,8 @@ the two directories the same, use the "cd" map (type cd). That map will
|
|||||||
set Vim's notion of the current directory to netrw's current browsing
|
set Vim's notion of the current directory to netrw's current browsing
|
||||||
directory.
|
directory.
|
||||||
|
|
||||||
|netrw-cd|: This map's name was changed from "c" to cd (see |netrw-cd|).
|
|netrw-cd| : This map's name was changed from "c" to cd (see |netrw-cd|).
|
||||||
This change was done to allow for |netrw-cb| and |netrw-cB| maps.
|
This change was done to allow for |netrw-cb| and |netrw-cB| maps.
|
||||||
|
|
||||||
Associated setting variable: |g:netrw_keepdir|
|
Associated setting variable: |g:netrw_keepdir|
|
||||||
|
|
||||||
@@ -2607,13 +2611,29 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
a script/function to handle the given
|
a script/function to handle the given
|
||||||
extension. (see |netrw_filehandler|).
|
extension. (see |netrw_filehandler|).
|
||||||
|
|
||||||
|
*g:netrw_browsex_support_remote*
|
||||||
|
specify if the specified viewer supports a
|
||||||
|
remote URL. (see |netrw-handler|).
|
||||||
|
|
||||||
*g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME"
|
*g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME"
|
||||||
Windows: "cacls FILENAME /e /p PERM"
|
Windows: "cacls FILENAME /e /p PERM"
|
||||||
Used to change access permission for a file.
|
Used to change access permission for a file.
|
||||||
|
|
||||||
|
*g:netrw_clipboard* =1
|
||||||
|
By default, netrw will attempt to insure that
|
||||||
|
the clipboard's values will remain unchanged.
|
||||||
|
However, some users report that they have
|
||||||
|
speed problems with this; consequently, this
|
||||||
|
option, when set to zero, lets such users
|
||||||
|
prevent netrw from saving and restoring the
|
||||||
|
clipboard (the latter is done only as needed).
|
||||||
|
That means that if the clipboard is changed
|
||||||
|
(inadvertently) by normal netrw operation that
|
||||||
|
it will not be restored to its prior state.
|
||||||
|
|
||||||
*g:netrw_compress* ="gzip"
|
*g:netrw_compress* ="gzip"
|
||||||
Will compress marked files with this
|
Will compress marked files with this
|
||||||
command
|
command
|
||||||
|
|
||||||
*g:Netrw_corehandler* Allows one to specify something additional
|
*g:Netrw_corehandler* Allows one to specify something additional
|
||||||
to do when handling <core> files via netrw's
|
to do when handling <core> files via netrw's
|
||||||
@@ -2639,12 +2659,23 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
=2 cul u-cuc cul u-cuc
|
=2 cul u-cuc cul u-cuc
|
||||||
=3 cul u-cuc cul cuc
|
=3 cul u-cuc cul cuc
|
||||||
=4 cul cuc cul cuc
|
=4 cul cuc cul cuc
|
||||||
|
=5 U-cul U-cuc U-cul U-cuc
|
||||||
|
=6 U-cul U-cuc cul U-cuc
|
||||||
|
=7 cul U-cuc cul U-cuc
|
||||||
|
=8 cul U-cuc cul cuc
|
||||||
|
|
||||||
Where
|
Where
|
||||||
u-cul : user's |'cursorline'| setting used
|
u-cul : user's |'cursorline'| initial setting used
|
||||||
u-cuc : user's |'cursorcolumn'| setting used
|
u-cuc : user's |'cursorcolumn'| initial setting used
|
||||||
cul : |'cursorline'| locally set
|
U-cul : user's |'cursorline'| current setting used
|
||||||
cuc : |'cursorcolumn'| locally set
|
U-cuc : user's |'cursorcolumn'| current setting used
|
||||||
|
cul : |'cursorline'| will be locally set
|
||||||
|
cuc : |'cursorcolumn'| will be locally set
|
||||||
|
|
||||||
|
The "initial setting" means the values of
|
||||||
|
the |'cuc'| and |'cul'| settings in effect when
|
||||||
|
netrw last saw |g:netrw_cursor| >= 5 or when
|
||||||
|
netrw was initially run.
|
||||||
|
|
||||||
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
||||||
".bz2" : "bunzip2" ,
|
".bz2" : "bunzip2" ,
|
||||||
@@ -2654,7 +2685,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
decompression programs.
|
decompression programs.
|
||||||
|
|
||||||
*g:netrw_dirhistmax* =10: controls maximum quantity of past
|
*g:netrw_dirhistmax* =10: controls maximum quantity of past
|
||||||
history. May be zero to supppress
|
history. May be zero to suppress
|
||||||
history.
|
history.
|
||||||
(related: |netrw-qb| |netrw-u| |netrw-U|)
|
(related: |netrw-qb| |netrw-u| |netrw-U|)
|
||||||
|
|
||||||
@@ -3142,6 +3173,9 @@ To open a new file in netrw's current directory, press "%". This map
|
|||||||
will query the user for a new filename; an empty file by that name will
|
will query the user for a new filename; an empty file by that name will
|
||||||
be placed in the netrw's current directory (ie. b:netrw_curdir).
|
be placed in the netrw's current directory (ie. b:netrw_curdir).
|
||||||
|
|
||||||
|
If Lexplore (|netrw-:Lexplore|) is in use, the new file will be generated
|
||||||
|
in the |g:netrw_chgwin| window.
|
||||||
|
|
||||||
Related topics: |netrw-d|
|
Related topics: |netrw-d|
|
||||||
|
|
||||||
|
|
||||||
@@ -3877,6 +3911,32 @@ netrw:
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
12. History *netrw-history* {{{1
|
12. History *netrw-history* {{{1
|
||||||
|
|
||||||
|
v171: Oct 09, 2020 * included code in s:NetrwOptionsSafe()
|
||||||
|
to allow |'bh'| to be set to delete when
|
||||||
|
rather than hide when g:netrw_fastbrowse
|
||||||
|
was zero.
|
||||||
|
* Installed |g:netrw_clipboard| setting
|
||||||
|
* Installed option bypass for |'guioptions'|
|
||||||
|
a/A settings
|
||||||
|
* Changed popup_beval() to |popup_atcursor|()
|
||||||
|
in netrw#ErrorMsg (lacygoill). Apparently
|
||||||
|
popup_beval doesn't reliably close the
|
||||||
|
popup when the mouse is moved.
|
||||||
|
* VimEnter() now using win_execute to examine
|
||||||
|
buffers for an attempt to open a directory.
|
||||||
|
Avoids issues with popups/terminal from
|
||||||
|
command line. (lacygoill)
|
||||||
|
Jun 28, 2021 * (zeertzjq) provided a patch for use of
|
||||||
|
xmap,xno instead of vmap,vno in
|
||||||
|
netrwPlugin.vim. Avoids entanglement with
|
||||||
|
select mode.
|
||||||
|
Jul 14, 2021 * Fixed problem addressed by tst976; opening
|
||||||
|
a file using tree mode, going up a
|
||||||
|
directory, and opening a file there was
|
||||||
|
opening the file in the wrong directory.
|
||||||
|
Jul 28, 2021 * (Ingo Karkat) provided a patch fixing an
|
||||||
|
E488 error with netrwPlugin.vim
|
||||||
|
(occurred for vim versions < 8.02)
|
||||||
v170: Mar 11, 2020 * (reported by Reiner Herrmann) netrw+tree
|
v170: Mar 11, 2020 * (reported by Reiner Herrmann) netrw+tree
|
||||||
would not hide with the ^\..* pattern
|
would not hide with the ^\..* pattern
|
||||||
correctly.
|
correctly.
|
||||||
@@ -3893,7 +3953,7 @@ netrw:
|
|||||||
Jun 07, 2020 * (reported by Jo Totland) repeatedly invoking
|
Jun 07, 2020 * (reported by Jo Totland) repeatedly invoking
|
||||||
:Lexplore and quitting it left unused
|
:Lexplore and quitting it left unused
|
||||||
hidden buffers. Netrw will now set netrw
|
hidden buffers. Netrw will now set netrw
|
||||||
buffers created by :Lexplore to |bh|=wipe.
|
buffers created by :Lexplore to |'bh'|=wipe.
|
||||||
v169: Dec 20, 2019 * (reported by amkarthik) that netrw's x
|
v169: Dec 20, 2019 * (reported by amkarthik) that netrw's x
|
||||||
(|netrw-x|) would throw an error when
|
(|netrw-x|) would throw an error when
|
||||||
attempting to open a local directory.
|
attempting to open a local directory.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*popup.txt* For Vim version 8.2. Last change: 2021 Feb 21
|
*popup.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -260,6 +260,7 @@ popup_close({id} [, {result}]) *popup_close()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_close()
|
GetPopup()->popup_close()
|
||||||
|
|
||||||
|
|
||||||
popup_create({what}, {options}) *popup_create()*
|
popup_create({what}, {options}) *popup_create()*
|
||||||
Open a popup window showing {what}, which is either:
|
Open a popup window showing {what}, which is either:
|
||||||
- a buffer number
|
- a buffer number
|
||||||
@@ -284,6 +285,7 @@ popup_create({what}, {options}) *popup_create()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetText()->popup_create({})
|
GetText()->popup_create({})
|
||||||
|
|
||||||
|
|
||||||
popup_dialog({what}, {options}) *popup_dialog()*
|
popup_dialog({what}, {options}) *popup_dialog()*
|
||||||
Just like |popup_create()| but with these default options: >
|
Just like |popup_create()| but with these default options: >
|
||||||
call popup_create({what}, #{
|
call popup_create({what}, #{
|
||||||
@@ -307,6 +309,7 @@ popup_dialog({what}, {options}) *popup_dialog()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetText()->popup_dialog({})
|
GetText()->popup_dialog({})
|
||||||
|
|
||||||
|
|
||||||
popup_filter_menu({id}, {key}) *popup_filter_menu()*
|
popup_filter_menu({id}, {key}) *popup_filter_menu()*
|
||||||
Filter that can be used for a popup. These keys can be used:
|
Filter that can be used for a popup. These keys can be used:
|
||||||
j <Down> <C-N> select item below
|
j <Down> <C-N> select item below
|
||||||
@@ -386,6 +389,7 @@ popup_getoptions({id}) *popup_getoptions()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_getoptions()
|
GetPopup()->popup_getoptions()
|
||||||
|
|
||||||
|
|
||||||
popup_getpos({id}) *popup_getpos()*
|
popup_getpos({id}) *popup_getpos()*
|
||||||
Return the position and size of popup {id}. Returns a Dict
|
Return the position and size of popup {id}. Returns a Dict
|
||||||
with these entries:
|
with these entries:
|
||||||
@@ -414,6 +418,7 @@ popup_getpos({id}) *popup_getpos()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_getpos()
|
GetPopup()->popup_getpos()
|
||||||
|
|
||||||
|
|
||||||
popup_hide({id}) *popup_hide()*
|
popup_hide({id}) *popup_hide()*
|
||||||
If {id} is a displayed popup, hide it now. If the popup has a
|
If {id} is a displayed popup, hide it now. If the popup has a
|
||||||
filter it will not be invoked for so long as the popup is
|
filter it will not be invoked for so long as the popup is
|
||||||
@@ -425,6 +430,7 @@ popup_hide({id}) *popup_hide()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_hide()
|
GetPopup()->popup_hide()
|
||||||
|
|
||||||
|
|
||||||
popup_list() *popup_list()*
|
popup_list() *popup_list()*
|
||||||
Return a List with the |window-ID| of all existing popups.
|
Return a List with the |window-ID| of all existing popups.
|
||||||
|
|
||||||
@@ -468,6 +474,7 @@ popup_menu({what}, {options}) *popup_menu()*
|
|||||||
< Can also be used as a |method|: >
|
< Can also be used as a |method|: >
|
||||||
GetChoices()->popup_menu({})
|
GetChoices()->popup_menu({})
|
||||||
|
|
||||||
|
|
||||||
popup_move({id}, {options}) *popup_move()*
|
popup_move({id}, {options}) *popup_move()*
|
||||||
Move popup {id} to the position specified with {options}.
|
Move popup {id} to the position specified with {options}.
|
||||||
{options} may contain the items from |popup_create()| that
|
{options} may contain the items from |popup_create()| that
|
||||||
@@ -486,6 +493,7 @@ popup_move({id}, {options}) *popup_move()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_move(options)
|
GetPopup()->popup_move(options)
|
||||||
|
|
||||||
|
|
||||||
popup_notification({what}, {options}) *popup_notification()*
|
popup_notification({what}, {options}) *popup_notification()*
|
||||||
Show the {what} for 3 seconds at the top of the Vim window.
|
Show the {what} for 3 seconds at the top of the Vim window.
|
||||||
This works like: >
|
This works like: >
|
||||||
@@ -515,12 +523,6 @@ popup_notification({what}, {options}) *popup_notification()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetText()->popup_notification({})
|
GetText()->popup_notification({})
|
||||||
|
|
||||||
popup_show({id}) *popup_show()*
|
|
||||||
If {id} is a hidden popup, show it now.
|
|
||||||
For {id} see `popup_hide()`.
|
|
||||||
If {id} is the info popup it will be positioned next to the
|
|
||||||
current popup menu item.
|
|
||||||
|
|
||||||
|
|
||||||
popup_setoptions({id}, {options}) *popup_setoptions()*
|
popup_setoptions({id}, {options}) *popup_setoptions()*
|
||||||
Override options in popup {id} with entries in {options}.
|
Override options in popup {id} with entries in {options}.
|
||||||
@@ -557,6 +559,7 @@ popup_setoptions({id}, {options}) *popup_setoptions()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_setoptions(options)
|
GetPopup()->popup_setoptions(options)
|
||||||
|
|
||||||
|
|
||||||
popup_settext({id}, {text}) *popup_settext()*
|
popup_settext({id}, {text}) *popup_settext()*
|
||||||
Set the text of the buffer in popup win {id}. {text} is the
|
Set the text of the buffer in popup win {id}. {text} is the
|
||||||
same as supplied to |popup_create()|, except that a buffer
|
same as supplied to |popup_create()|, except that a buffer
|
||||||
@@ -567,6 +570,14 @@ popup_settext({id}, {text}) *popup_settext()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetPopup()->popup_settext('hello')
|
GetPopup()->popup_settext('hello')
|
||||||
|
|
||||||
|
|
||||||
|
popup_show({id}) *popup_show()*
|
||||||
|
If {id} is a hidden popup, show it now.
|
||||||
|
For {id} see `popup_hide()`.
|
||||||
|
If {id} is the info popup it will be positioned next to the
|
||||||
|
current popup menu item.
|
||||||
|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Usage *popup-usage*
|
3. Usage *popup-usage*
|
||||||
|
|
||||||
@@ -904,6 +915,8 @@ Some recommended key actions:
|
|||||||
cursor keys select another entry
|
cursor keys select another entry
|
||||||
Tab accept current suggestion
|
Tab accept current suggestion
|
||||||
|
|
||||||
|
When CTRL-C is pressed the popup is closed, the filter will not be invoked.
|
||||||
|
|
||||||
A mouse click arrives as <LeftMouse>. The coordinates can be obtained with
|
A mouse click arrives as <LeftMouse>. The coordinates can be obtained with
|
||||||
|getmousepos()|.
|
|getmousepos()|.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*print.txt* For Vim version 8.2. Last change: 2020 Aug 15
|
*print.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -717,7 +717,7 @@ There are a couple of points to bear in mind:
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
8. Formfeed Characters *printing-formfeed*
|
8. Formfeed Characters *printing-formfeed*
|
||||||
|
|
||||||
By default Vim does not do any special processing of |formfeed| control
|
By default Vim does not do any special processing of formfeed control
|
||||||
characters. Setting the 'printoptions' formfeed item will make Vim recognize
|
characters. Setting the 'printoptions' formfeed item will make Vim recognize
|
||||||
formfeed characters and continue printing the current line at the beginning
|
formfeed characters and continue printing the current line at the beginning
|
||||||
of the first line on a new page. The use of formfeed characters provides
|
of the first line on a new page. The use of formfeed characters provides
|
||||||
|
|||||||
@@ -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
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -732,6 +732,7 @@ Short explanation of each option: *option-list*
|
|||||||
'guifontset' 'gfs' GUI: Names of multibyte fonts to be used
|
'guifontset' 'gfs' GUI: Names of multibyte fonts to be used
|
||||||
'guifontwide' 'gfw' list of font names for double-wide characters
|
'guifontwide' 'gfw' list of font names for double-wide characters
|
||||||
'guiheadroom' 'ghr' GUI: pixels room for window decorations
|
'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
|
'guioptions' 'go' GUI: Which components and options are used
|
||||||
'guipty' GUI: try to use a pseudo-tty for ":!" commands
|
'guipty' GUI: try to use a pseudo-tty for ":!" commands
|
||||||
'guitablabel' 'gtl' GUI: custom label for a tab page
|
'guitablabel' 'gtl' GUI: custom label for a tab page
|
||||||
@@ -948,6 +949,7 @@ Short explanation of each option: *option-list*
|
|||||||
'textmode' 'tx' obsolete, use 'fileformat'
|
'textmode' 'tx' obsolete, use 'fileformat'
|
||||||
'textwidth' 'tw' maximum width of text that is being inserted
|
'textwidth' 'tw' maximum width of text that is being inserted
|
||||||
'thesaurus' 'tsr' list of thesaurus files for keyword completion
|
'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
|
'tildeop' 'top' tilde command "~" behaves like an operator
|
||||||
'timeout' 'to' time out on mappings and key codes
|
'timeout' 'to' time out on mappings and key codes
|
||||||
'timeoutlen' 'tm' time out time in milliseconds
|
'timeoutlen' 'tm' time out time in milliseconds
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*repeat.txt* For Vim version 8.2. Last change: 2021 May 08
|
*repeat.txt* For Vim version 8.2. Last change: 2021 Sep 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -279,7 +279,9 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
ftdetect scripts are loaded, only the matching
|
ftdetect scripts are loaded, only the matching
|
||||||
directories are added to 'runtimepath'. This is
|
directories are added to 'runtimepath'. This is
|
||||||
useful in your .vimrc. The plugins will then be
|
useful in your .vimrc. The plugins will then be
|
||||||
loaded during initialization, see |load-plugins|.
|
loaded during initialization, see |load-plugins| (note
|
||||||
|
that the loading order will be reversed, because each
|
||||||
|
directory is inserted before others).
|
||||||
Note that for ftdetect scripts to be loaded
|
Note that for ftdetect scripts to be loaded
|
||||||
you will need to write `filetype plugin indent on`
|
you will need to write `filetype plugin indent on`
|
||||||
AFTER all `packadd!` commands.
|
AFTER all `packadd!` commands.
|
||||||
@@ -372,7 +374,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
for some commands.
|
for some commands.
|
||||||
See |:vim9cmd| for executing one command with Vim9
|
See |:vim9cmd| for executing one command with Vim9
|
||||||
syntax and semantics.
|
syntax and semantics.
|
||||||
|
|
||||||
*:scr* *:scriptnames*
|
*:scr* *:scriptnames*
|
||||||
:scr[iptnames] List all sourced script names, in the order they were
|
:scr[iptnames] List all sourced script names, in the order they were
|
||||||
first sourced. The number is used for the script ID
|
first sourced. The number is used for the script ID
|
||||||
@@ -842,6 +844,16 @@ About the additional commands in debug mode:
|
|||||||
is reset (because it's not clear what you want to repeat).
|
is reset (because it's not clear what you want to repeat).
|
||||||
- When you want to use the Ex command with the same name, prepend a colon:
|
- When you want to use the Ex command with the same name, prepend a colon:
|
||||||
":cont", ":next", ":finish" (or shorter).
|
":cont", ":next", ":finish" (or shorter).
|
||||||
|
*vim9-debug*
|
||||||
|
When debugging a compiled :def function, "step" will stop before every
|
||||||
|
executed line, not every single instruction. Thus it works mostly like a not
|
||||||
|
compiled function. Access to local variables is limited you can use: >
|
||||||
|
echo varname
|
||||||
|
But not much else.
|
||||||
|
When executing a command that is not a specific bytecode instruction but
|
||||||
|
executed like a normal Ex command, "step" will stop once in the compiled
|
||||||
|
context, where local variables can be inspected, and once just before
|
||||||
|
executing the command.
|
||||||
|
|
||||||
The backtrace shows the hierarchy of function calls, e.g.:
|
The backtrace shows the hierarchy of function calls, e.g.:
|
||||||
>bt ~
|
>bt ~
|
||||||
@@ -881,8 +893,12 @@ DEFINING BREAKPOINTS
|
|||||||
Sets a breakpoint, that will break whenever the {expression}
|
Sets a breakpoint, that will break whenever the {expression}
|
||||||
evaluates to a different value. Example: >
|
evaluates to a different value. Example: >
|
||||||
:breakadd expr g:lnum
|
:breakadd expr g:lnum
|
||||||
|
|
||||||
< Will break, whenever the global variable lnum changes.
|
< Will break, whenever the global variable lnum changes.
|
||||||
|
|
||||||
|
Errors in evaluation are suppressed, you can use the name of a
|
||||||
|
variable that does not exist yet. This also means you will
|
||||||
|
not notice anything if the expression has a mistake.
|
||||||
|
|
||||||
Note if you watch a |script-variable| this will break
|
Note if you watch a |script-variable| this will break
|
||||||
when switching scripts, since the script variable is only
|
when switching scripts, since the script variable is only
|
||||||
valid in the script where it has been defined and if that
|
valid in the script where it has been defined and if that
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*rileft.txt* For Vim version 8.2. Last change: 2019 May 05
|
*rileft.txt* For Vim version 8.2. Last change: 2021 Jun 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Avner Lottem
|
VIM REFERENCE MANUAL by Avner Lottem
|
||||||
@@ -75,7 +75,7 @@ o Invocations
|
|||||||
|
|
||||||
o Typing backwards *ins-reverse*
|
o Typing backwards *ins-reverse*
|
||||||
----------------
|
----------------
|
||||||
In lieu of using full-fledged the 'rightleft' option, one can opt for
|
In lieu of using the full-fledged 'rightleft' option, one can opt for
|
||||||
reverse insertion. When the 'revins' (reverse insert) option is set,
|
reverse insertion. When the 'revins' (reverse insert) option is set,
|
||||||
inserting happens backwards. This can be used to type right-to-left
|
inserting happens backwards. This can be used to type right-to-left
|
||||||
text. When inserting characters the cursor is not moved and the text
|
text. When inserting characters the cursor is not moved and the text
|
||||||
|
|||||||
@@ -451,13 +451,13 @@ sign_getdefined([{name}]) *sign_getdefined()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetSignList()->sign_getdefined()
|
GetSignList()->sign_getdefined()
|
||||||
|
|
||||||
sign_getplaced([{expr} [, {dict}]]) *sign_getplaced()*
|
sign_getplaced([{buf} [, {dict}]]) *sign_getplaced()*
|
||||||
Return a list of signs placed in a buffer or all the buffers.
|
Return a list of signs placed in a buffer or all the buffers.
|
||||||
This is similar to the |:sign-place-list| command.
|
This is similar to the |:sign-place-list| command.
|
||||||
|
|
||||||
If the optional buffer name {expr} is specified, then only the
|
If the optional buffer name {buf} is specified, then only the
|
||||||
list of signs placed in that buffer is returned. For the use
|
list of signs placed in that buffer is returned. For the use
|
||||||
of {expr}, see |bufname()|. The optional {dict} can contain
|
of {buf}, see |bufname()|. The optional {dict} can contain
|
||||||
the following entries:
|
the following entries:
|
||||||
group select only signs in this group
|
group select only signs in this group
|
||||||
id select sign with this identifier
|
id select sign with this identifier
|
||||||
@@ -515,12 +515,13 @@ sign_getplaced([{expr} [, {dict}]]) *sign_getplaced()*
|
|||||||
GetBufname()->sign_getplaced()
|
GetBufname()->sign_getplaced()
|
||||||
<
|
<
|
||||||
*sign_jump()*
|
*sign_jump()*
|
||||||
sign_jump({id}, {group}, {expr})
|
sign_jump({id}, {group}, {buf})
|
||||||
Open the buffer {expr} or jump to the window that contains
|
Open the buffer {buf} or jump to the window that contains
|
||||||
{expr} and position the cursor at sign {id} in group {group}.
|
{buf} and position the cursor at sign {id} in group {group}.
|
||||||
This is similar to the |:sign-jump| command.
|
This is similar to the |:sign-jump| command.
|
||||||
|
|
||||||
For the use of {expr}, see |bufname()|.
|
If {group} is an empty string, then the global group is used.
|
||||||
|
For the use of {buf}, see |bufname()|.
|
||||||
|
|
||||||
Returns the line number of the sign. Returns -1 if the
|
Returns the line number of the sign. Returns -1 if the
|
||||||
arguments are invalid.
|
arguments are invalid.
|
||||||
@@ -533,9 +534,9 @@ sign_jump({id}, {group}, {expr})
|
|||||||
GetSignid()->sign_jump()
|
GetSignid()->sign_jump()
|
||||||
<
|
<
|
||||||
*sign_place()*
|
*sign_place()*
|
||||||
sign_place({id}, {group}, {name}, {expr} [, {dict}])
|
sign_place({id}, {group}, {name}, {buf} [, {dict}])
|
||||||
Place the sign defined as {name} at line {lnum} in file or
|
Place the sign defined as {name} at line {lnum} in file or
|
||||||
buffer {expr} and assign {id} and {group} to sign. This is
|
buffer {buf} and assign {id} and {group} to sign. This is
|
||||||
similar to the |:sign-place| command.
|
similar to the |:sign-place| command.
|
||||||
|
|
||||||
If the sign identifier {id} is zero, then a new identifier is
|
If the sign identifier {id} is zero, then a new identifier is
|
||||||
@@ -546,12 +547,12 @@ sign_place({id}, {group}, {name}, {expr} [, {dict}])
|
|||||||
and |sign-group| for more information.
|
and |sign-group| for more information.
|
||||||
|
|
||||||
{name} refers to a defined sign.
|
{name} refers to a defined sign.
|
||||||
{expr} refers to a buffer name or number. For the accepted
|
{buf} refers to a buffer name or number. For the accepted
|
||||||
values, see |bufname()|.
|
values, see |bufname()|.
|
||||||
|
|
||||||
The optional {dict} argument supports the following entries:
|
The optional {dict} argument supports the following entries:
|
||||||
lnum line number in the file or buffer
|
lnum line number in the file or buffer
|
||||||
{expr} where the sign is to be placed.
|
{buf} where the sign is to be placed.
|
||||||
For the accepted values, see |line()|.
|
For the accepted values, see |line()|.
|
||||||
priority priority of the sign. See
|
priority priority of the sign. See
|
||||||
|sign-priority| for more information.
|
|sign-priority| for more information.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*sponsor.txt* For Vim version 8.2. Last change: 2008 Jun 21
|
*sponsor.txt* For Vim version 8.2. Last change: 2021 Jul 07
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -11,9 +11,8 @@ Fixing bugs and adding new features takes a lot of time and effort. To show
|
|||||||
your appreciation for the work and motivate Bram and others to continue
|
your appreciation for the work and motivate Bram and others to continue
|
||||||
working on Vim please send a donation.
|
working on Vim please send a donation.
|
||||||
|
|
||||||
Since Bram is back to a paid job the money will now be used to help children
|
Since Bram does not need the money it will be used to help children in Uganda,
|
||||||
in Uganda. See |uganda|. But at the same time donations increase Bram's
|
see |uganda|. Donations increase Bram's motivation to keep working on Vim!
|
||||||
motivation to keep working on Vim!
|
|
||||||
|
|
||||||
For the most recent information about sponsoring look on the Vim web site:
|
For the most recent information about sponsoring look on the Vim web site:
|
||||||
|
|
||||||
@@ -74,19 +73,6 @@ Other methods See |iccf-donations|.
|
|||||||
amount you transferred if you want to vote for features and
|
amount you transferred if you want to vote for features and
|
||||||
show others you are a registered Vim user or sponsor.
|
show others you are a registered Vim user or sponsor.
|
||||||
|
|
||||||
Cash Small amounts can be sent with ordinary mail. Put something
|
|
||||||
around the money, so that it's not noticeable from the
|
|
||||||
outside. Mention your e-mail address if you want to vote for
|
|
||||||
features and show others you are a registered Vim user or
|
|
||||||
sponsor.
|
|
||||||
|
|
||||||
You can use this permanent address:
|
|
||||||
Bram Moolenaar
|
|
||||||
Finsterruetihof 1
|
|
||||||
8134 Adliswil
|
|
||||||
Switzerland
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
QUESTIONS AND ANSWERS *sponsor-faq* *register-faq*
|
QUESTIONS AND ANSWERS *sponsor-faq* *register-faq*
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*syntax.txt* For Vim version 8.2. Last change: 2021 May 30
|
*syntax.txt* For Vim version 8.2. Last change: 2021 Aug 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -923,7 +923,7 @@ For Visual Basic use: >
|
|||||||
|
|
||||||
BAAN *baan.vim* *baan-syntax*
|
BAAN *baan.vim* *baan-syntax*
|
||||||
|
|
||||||
The baan.vim gives syntax support for BaanC of release BaanIV upto SSA ERP LN
|
The baan.vim gives syntax support for BaanC of release BaanIV up to SSA ERP LN
|
||||||
for both 3 GL and 4 GL programming. Large number of standard defines/constants
|
for both 3 GL and 4 GL programming. Large number of standard defines/constants
|
||||||
are supported.
|
are supported.
|
||||||
|
|
||||||
@@ -1132,11 +1132,13 @@ The ColdFusion syntax file is based on the HTML syntax file.
|
|||||||
|
|
||||||
CPP *cpp.vim* *ft-cpp-syntax*
|
CPP *cpp.vim* *ft-cpp-syntax*
|
||||||
|
|
||||||
Most of things are same as |ft-c-syntax|.
|
Most things are the same as |ft-c-syntax|.
|
||||||
|
|
||||||
Variable Highlight ~
|
Variable Highlight ~
|
||||||
cpp_no_cpp11 don't highlight C++11 standard items
|
cpp_no_cpp11 don't highlight C++11 standard items
|
||||||
cpp_no_cpp14 don't highlight C++14 standard items
|
cpp_no_cpp14 don't highlight C++14 standard items
|
||||||
|
cpp_no_cpp17 don't highlight C++17 standard items
|
||||||
|
cpp_no_cpp20 don't highlight C++20 standard items
|
||||||
|
|
||||||
|
|
||||||
CSH *csh.vim* *ft-csh-syntax*
|
CSH *csh.vim* *ft-csh-syntax*
|
||||||
@@ -1420,11 +1422,17 @@ To select syntax highlighting file for Euphoria, as well as for
|
|||||||
auto-detecting the *.e and *.E file extensions as Euphoria file type,
|
auto-detecting the *.e and *.E file extensions as Euphoria file type,
|
||||||
add the following line to your startup file: >
|
add the following line to your startup file: >
|
||||||
|
|
||||||
:let filetype_euphoria="euphoria3"
|
:let g:filetype_euphoria = "euphoria3"
|
||||||
|
|
||||||
or
|
< or >
|
||||||
|
|
||||||
:let filetype_euphoria="euphoria4"
|
:let g:filetype_euphoria = "euphoria4"
|
||||||
|
|
||||||
|
Elixir and Euphoria share the *.ex file extension. If the filetype is
|
||||||
|
specifically set as Euphoria with the g:filetype_euphoria variable, or the
|
||||||
|
file is determined to be Euphoria based on keywords in the file, then the
|
||||||
|
filetype will be set as Euphoria. Otherwise, the filetype will default to
|
||||||
|
Elixir.
|
||||||
|
|
||||||
|
|
||||||
ERLANG *erlang.vim* *ft-erlang-syntax*
|
ERLANG *erlang.vim* *ft-erlang-syntax*
|
||||||
@@ -1442,6 +1450,22 @@ To enable highlighting some special atoms, put this in your vimrc: >
|
|||||||
:let g:erlang_highlight_special_atoms = 1
|
:let g:erlang_highlight_special_atoms = 1
|
||||||
|
|
||||||
|
|
||||||
|
ELIXIR *elixir.vim* *ft-elixir-syntax*
|
||||||
|
|
||||||
|
Elixir is a dynamic, functional language for building scalable and maintainable
|
||||||
|
applications.
|
||||||
|
|
||||||
|
The following file extensions are auto-detected as Elixir file types:
|
||||||
|
|
||||||
|
*.ex, *.exs, *.eex, *.leex, *.lock
|
||||||
|
|
||||||
|
Elixir and Euphoria share the *.ex file extension. If the filetype is
|
||||||
|
specifically set as Euphoria with the g:filetype_euphoria variable, or the
|
||||||
|
file is determined to be Euphoria based on keywords in the file, then the
|
||||||
|
filetype will be set as Euphoria. Otherwise, the filetype will default to
|
||||||
|
Elixir.
|
||||||
|
|
||||||
|
|
||||||
FLEXWIKI *flexwiki.vim* *ft-flexwiki-syntax*
|
FLEXWIKI *flexwiki.vim* *ft-flexwiki-syntax*
|
||||||
|
|
||||||
FlexWiki is an ASP.NET-based wiki package available at http://www.flexwiki.com
|
FlexWiki is an ASP.NET-based wiki package available at http://www.flexwiki.com
|
||||||
@@ -3430,8 +3454,8 @@ syntax highlighting script handles this with the following logic:
|
|||||||
Tex: Match Check Control~
|
Tex: Match Check Control~
|
||||||
|
|
||||||
Sometimes one actually wants mismatched parentheses, square braces,
|
Sometimes one actually wants mismatched parentheses, square braces,
|
||||||
and or curly braces; for example, \text{(1,10] is a range from but
|
and or curly braces; for example, \text{(1,10]} is a range from but
|
||||||
not including 1 to and including 10}. This wish, of course, conflicts
|
not including 1 to and including 10. This wish, of course, conflicts
|
||||||
with the desire to provide delimiter mismatch detection. To
|
with the desire to provide delimiter mismatch detection. To
|
||||||
accommodate these conflicting goals, syntax/tex.vim provides >
|
accommodate these conflicting goals, syntax/tex.vim provides >
|
||||||
g:tex_matchcheck = '[({[]'
|
g:tex_matchcheck = '[({[]'
|
||||||
@@ -4084,7 +4108,7 @@ match in the same position overrules an earlier one). The "transparent"
|
|||||||
argument makes the "myVim" match use the same highlighting as "myString". But
|
argument makes the "myVim" match use the same highlighting as "myString". But
|
||||||
it does not contain anything. If the "contains=NONE" argument would be left
|
it does not contain anything. If the "contains=NONE" argument would be left
|
||||||
out, then "myVim" would use the contains argument from myString and allow
|
out, then "myVim" would use the contains argument from myString and allow
|
||||||
"myWord" to be contained, which will be highlighted as a Constant. This
|
"myWord" to be contained, which will be highlighted as a Comment. This
|
||||||
happens because a contained match doesn't match inside itself in the same
|
happens because a contained match doesn't match inside itself in the same
|
||||||
position, thus the "myVim" match doesn't overrule the "myWord" match here.
|
position, thus the "myVim" match doesn't overrule the "myWord" match here.
|
||||||
|
|
||||||
@@ -4970,8 +4994,8 @@ ctermul={color-nr} *highlight-ctermul*
|
|||||||
*tmux*
|
*tmux*
|
||||||
When using tmux you may want to use this in the tmux config: >
|
When using tmux you may want to use this in the tmux config: >
|
||||||
# tmux colors
|
# tmux colors
|
||||||
set -g default-terminal "xterm-256color"
|
set -s default-terminal "tmux-256color"
|
||||||
set -ag terminal-overrides ",xterm-256color:Tc"
|
set -as terminal-overrides ",*-256color:Tc"
|
||||||
< More info at:
|
< More info at:
|
||||||
https://github.com/tmux/tmux/wiki/FAQ#how-do-i-use-a-256-colour-terminal
|
https://github.com/tmux/tmux/wiki/FAQ#how-do-i-use-a-256-colour-terminal
|
||||||
https://github.com/tmux/tmux/wiki/FAQ#how-do-i-use-rgb-colour
|
https://github.com/tmux/tmux/wiki/FAQ#how-do-i-use-rgb-colour
|
||||||
@@ -5179,9 +5203,8 @@ LineNrAbove Line number for when the 'relativenumber'
|
|||||||
LineNrBelow Line number for when the 'relativenumber'
|
LineNrBelow Line number for when the 'relativenumber'
|
||||||
option is set, below the cursor line.
|
option is set, below the cursor line.
|
||||||
*hl-CursorLineNr*
|
*hl-CursorLineNr*
|
||||||
CursorLineNr Like LineNr when 'cursorline' is set and 'cursorlineopt' is
|
CursorLineNr Like LineNr when 'cursorline' is set and 'cursorlineopt'
|
||||||
set to "number" or "both", or 'relativenumber' is set, for
|
contains "number" or is "both", for the cursor line.
|
||||||
the cursor line.
|
|
||||||
*hl-MatchParen*
|
*hl-MatchParen*
|
||||||
MatchParen The character under the cursor or just before it, if it
|
MatchParen The character under the cursor or just before it, if it
|
||||||
is a paired bracket, and its match. |pi_paren.txt|
|
is a paired bracket, and its match. |pi_paren.txt|
|
||||||
|
|||||||
@@ -302,6 +302,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
'gfs' options.txt /*'gfs'*
|
'gfs' options.txt /*'gfs'*
|
||||||
'gfw' options.txt /*'gfw'*
|
'gfw' options.txt /*'gfw'*
|
||||||
'ghr' options.txt /*'ghr'*
|
'ghr' options.txt /*'ghr'*
|
||||||
|
'gli' options.txt /*'gli'*
|
||||||
'go' options.txt /*'go'*
|
'go' options.txt /*'go'*
|
||||||
'go-!' options.txt /*'go-!'*
|
'go-!' options.txt /*'go-!'*
|
||||||
'go-A' options.txt /*'go-A'*
|
'go-A' options.txt /*'go-A'*
|
||||||
@@ -339,6 +340,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
'guifontset' options.txt /*'guifontset'*
|
'guifontset' options.txt /*'guifontset'*
|
||||||
'guifontwide' options.txt /*'guifontwide'*
|
'guifontwide' options.txt /*'guifontwide'*
|
||||||
'guiheadroom' options.txt /*'guiheadroom'*
|
'guiheadroom' options.txt /*'guiheadroom'*
|
||||||
|
'guiligatures' options.txt /*'guiligatures'*
|
||||||
'guioptions' options.txt /*'guioptions'*
|
'guioptions' options.txt /*'guioptions'*
|
||||||
'guipty' options.txt /*'guipty'*
|
'guipty' options.txt /*'guipty'*
|
||||||
'guitablabel' options.txt /*'guitablabel'*
|
'guitablabel' options.txt /*'guitablabel'*
|
||||||
@@ -1138,6 +1140,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
'tgc' options.txt /*'tgc'*
|
'tgc' options.txt /*'tgc'*
|
||||||
'tgst' options.txt /*'tgst'*
|
'tgst' options.txt /*'tgst'*
|
||||||
'thesaurus' options.txt /*'thesaurus'*
|
'thesaurus' options.txt /*'thesaurus'*
|
||||||
|
'thesaurusfunc' options.txt /*'thesaurusfunc'*
|
||||||
'tildeop' options.txt /*'tildeop'*
|
'tildeop' options.txt /*'tildeop'*
|
||||||
'timeout' options.txt /*'timeout'*
|
'timeout' options.txt /*'timeout'*
|
||||||
'timeoutlen' options.txt /*'timeoutlen'*
|
'timeoutlen' options.txt /*'timeoutlen'*
|
||||||
@@ -1384,6 +1387,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
+scrollbind various.txt /*+scrollbind*
|
+scrollbind various.txt /*+scrollbind*
|
||||||
+signs various.txt /*+signs*
|
+signs various.txt /*+signs*
|
||||||
+smartindent various.txt /*+smartindent*
|
+smartindent various.txt /*+smartindent*
|
||||||
|
+sodium various.txt /*+sodium*
|
||||||
+sound various.txt /*+sound*
|
+sound various.txt /*+sound*
|
||||||
+spell various.txt /*+spell*
|
+spell various.txt /*+spell*
|
||||||
+startuptime various.txt /*+startuptime*
|
+startuptime various.txt /*+startuptime*
|
||||||
@@ -1959,7 +1963,9 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:& change.txt /*:&*
|
:& change.txt /*:&*
|
||||||
:&& change.txt /*:&&*
|
:&& change.txt /*:&&*
|
||||||
:' cmdline.txt /*:'*
|
:' cmdline.txt /*:'*
|
||||||
|
:++ vim9.txt /*:++*
|
||||||
:, cmdline.txt /*:,*
|
:, cmdline.txt /*:,*
|
||||||
|
:-- vim9.txt /*:--*
|
||||||
:. cmdline.txt /*:.*
|
:. cmdline.txt /*:.*
|
||||||
:/ cmdline.txt /*:\/*
|
:/ cmdline.txt /*:\/*
|
||||||
:0file editing.txt /*:0file*
|
:0file editing.txt /*:0file*
|
||||||
@@ -2074,6 +2080,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:XMLent insert.txt /*:XMLent*
|
:XMLent insert.txt /*:XMLent*
|
||||||
:XMLns insert.txt /*:XMLns*
|
:XMLns insert.txt /*:XMLns*
|
||||||
:[range] motion.txt /*:[range]*
|
:[range] motion.txt /*:[range]*
|
||||||
|
:[vV\x16] autocmd.txt /*:[vV\\x16]*
|
||||||
:\bar cmdline.txt /*:\\bar*
|
:\bar cmdline.txt /*:\\bar*
|
||||||
:_! cmdline.txt /*:_!*
|
:_! cmdline.txt /*:_!*
|
||||||
:_# cmdline.txt /*:_#*
|
:_# cmdline.txt /*:_#*
|
||||||
@@ -2304,6 +2311,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:command-nargs map.txt /*:command-nargs*
|
:command-nargs map.txt /*:command-nargs*
|
||||||
:command-range map.txt /*:command-range*
|
:command-range map.txt /*:command-range*
|
||||||
:command-register map.txt /*:command-register*
|
:command-register map.txt /*:command-register*
|
||||||
|
:command-repl map.txt /*:command-repl*
|
||||||
:command-verbose map.txt /*:command-verbose*
|
:command-verbose map.txt /*:command-verbose*
|
||||||
:comment cmdline.txt /*:comment*
|
:comment cmdline.txt /*:comment*
|
||||||
:comp quickfix.txt /*:comp*
|
:comp quickfix.txt /*:comp*
|
||||||
@@ -2317,6 +2325,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:cope quickfix.txt /*:cope*
|
:cope quickfix.txt /*:cope*
|
||||||
:copen quickfix.txt /*:copen*
|
:copen quickfix.txt /*:copen*
|
||||||
:copy change.txt /*:copy*
|
:copy change.txt /*:copy*
|
||||||
|
:count_quit windows.txt /*:count_quit*
|
||||||
:cp quickfix.txt /*:cp*
|
:cp quickfix.txt /*:cp*
|
||||||
:cpf quickfix.txt /*:cpf*
|
:cpf quickfix.txt /*:cpf*
|
||||||
:cpfile quickfix.txt /*:cpfile*
|
:cpfile quickfix.txt /*:cpfile*
|
||||||
@@ -3498,6 +3507,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:y change.txt /*:y*
|
:y change.txt /*:y*
|
||||||
:yank change.txt /*:yank*
|
:yank change.txt /*:yank*
|
||||||
:z various.txt /*:z*
|
:z various.txt /*:z*
|
||||||
|
:z! various.txt /*:z!*
|
||||||
:z# various.txt /*:z#*
|
:z# various.txt /*:z#*
|
||||||
:~ change.txt /*:~*
|
:~ change.txt /*:~*
|
||||||
; motion.txt /*;*
|
; motion.txt /*;*
|
||||||
@@ -3964,12 +3974,29 @@ E118 eval.txt /*E118*
|
|||||||
E1187 starting.txt /*E1187*
|
E1187 starting.txt /*E1187*
|
||||||
E1188 cmdline.txt /*E1188*
|
E1188 cmdline.txt /*E1188*
|
||||||
E119 eval.txt /*E119*
|
E119 eval.txt /*E119*
|
||||||
|
E1193 options.txt /*E1193*
|
||||||
|
E1194 options.txt /*E1194*
|
||||||
|
E1195 options.txt /*E1195*
|
||||||
|
E1196 options.txt /*E1196*
|
||||||
|
E1197 options.txt /*E1197*
|
||||||
|
E1198 options.txt /*E1198*
|
||||||
|
E1199 options.txt /*E1199*
|
||||||
E12 message.txt /*E12*
|
E12 message.txt /*E12*
|
||||||
E120 eval.txt /*E120*
|
E120 eval.txt /*E120*
|
||||||
|
E1200 options.txt /*E1200*
|
||||||
|
E1201 options.txt /*E1201*
|
||||||
|
E1205 eval.txt /*E1205*
|
||||||
E121 eval.txt /*E121*
|
E121 eval.txt /*E121*
|
||||||
|
E1214 eval.txt /*E1214*
|
||||||
E122 eval.txt /*E122*
|
E122 eval.txt /*E122*
|
||||||
E123 eval.txt /*E123*
|
E123 eval.txt /*E123*
|
||||||
|
E1231 map.txt /*E1231*
|
||||||
|
E1232 eval.txt /*E1232*
|
||||||
|
E1233 eval.txt /*E1233*
|
||||||
|
E1237 map.txt /*E1237*
|
||||||
|
E1239 eval.txt /*E1239*
|
||||||
E124 eval.txt /*E124*
|
E124 eval.txt /*E124*
|
||||||
|
E1243 options.txt /*E1243*
|
||||||
E125 eval.txt /*E125*
|
E125 eval.txt /*E125*
|
||||||
E126 eval.txt /*E126*
|
E126 eval.txt /*E126*
|
||||||
E127 eval.txt /*E127*
|
E127 eval.txt /*E127*
|
||||||
@@ -4726,7 +4753,7 @@ E835 options.txt /*E835*
|
|||||||
E836 if_pyth.txt /*E836*
|
E836 if_pyth.txt /*E836*
|
||||||
E837 if_pyth.txt /*E837*
|
E837 if_pyth.txt /*E837*
|
||||||
E838 netbeans.txt /*E838*
|
E838 netbeans.txt /*E838*
|
||||||
E839 insert.txt /*E839*
|
E839 message.txt /*E839*
|
||||||
E84 windows.txt /*E84*
|
E84 windows.txt /*E84*
|
||||||
E840 insert.txt /*E840*
|
E840 insert.txt /*E840*
|
||||||
E841 map.txt /*E841*
|
E841 map.txt /*E841*
|
||||||
@@ -4779,6 +4806,7 @@ E885 sign.txt /*E885*
|
|||||||
E886 starting.txt /*E886*
|
E886 starting.txt /*E886*
|
||||||
E887 if_pyth.txt /*E887*
|
E887 if_pyth.txt /*E887*
|
||||||
E888 pattern.txt /*E888*
|
E888 pattern.txt /*E888*
|
||||||
|
E889 message.txt /*E889*
|
||||||
E89 message.txt /*E89*
|
E89 message.txt /*E89*
|
||||||
E890 syntax.txt /*E890*
|
E890 syntax.txt /*E890*
|
||||||
E891 eval.txt /*E891*
|
E891 eval.txt /*E891*
|
||||||
@@ -4821,7 +4849,7 @@ E924 quickfix.txt /*E924*
|
|||||||
E925 quickfix.txt /*E925*
|
E925 quickfix.txt /*E925*
|
||||||
E926 quickfix.txt /*E926*
|
E926 quickfix.txt /*E926*
|
||||||
E927 eval.txt /*E927*
|
E927 eval.txt /*E927*
|
||||||
E928 eval.txt /*E928*
|
E928 message.txt /*E928*
|
||||||
E929 starting.txt /*E929*
|
E929 starting.txt /*E929*
|
||||||
E93 windows.txt /*E93*
|
E93 windows.txt /*E93*
|
||||||
E930 eval.txt /*E930*
|
E930 eval.txt /*E930*
|
||||||
@@ -4920,6 +4948,7 @@ FileChangedRO autocmd.txt /*FileChangedRO*
|
|||||||
FileChangedShell autocmd.txt /*FileChangedShell*
|
FileChangedShell autocmd.txt /*FileChangedShell*
|
||||||
FileChangedShellPost autocmd.txt /*FileChangedShellPost*
|
FileChangedShellPost autocmd.txt /*FileChangedShellPost*
|
||||||
FileEncoding autocmd.txt /*FileEncoding*
|
FileEncoding autocmd.txt /*FileEncoding*
|
||||||
|
FileExplorer autocmd.txt /*FileExplorer*
|
||||||
FileReadCmd autocmd.txt /*FileReadCmd*
|
FileReadCmd autocmd.txt /*FileReadCmd*
|
||||||
FileReadPost autocmd.txt /*FileReadPost*
|
FileReadPost autocmd.txt /*FileReadPost*
|
||||||
FileReadPre autocmd.txt /*FileReadPre*
|
FileReadPre autocmd.txt /*FileReadPre*
|
||||||
@@ -4994,6 +5023,7 @@ Macintosh os_mac.txt /*Macintosh*
|
|||||||
Mark motion.txt /*Mark*
|
Mark motion.txt /*Mark*
|
||||||
MenuPopup autocmd.txt /*MenuPopup*
|
MenuPopup autocmd.txt /*MenuPopup*
|
||||||
MiNT os_mint.txt /*MiNT*
|
MiNT os_mint.txt /*MiNT*
|
||||||
|
ModeChanged autocmd.txt /*ModeChanged*
|
||||||
Moolenaar intro.txt /*Moolenaar*
|
Moolenaar intro.txt /*Moolenaar*
|
||||||
MorphOS os_amiga.txt /*MorphOS*
|
MorphOS os_amiga.txt /*MorphOS*
|
||||||
Motif gui_x11.txt /*Motif*
|
Motif gui_x11.txt /*Motif*
|
||||||
@@ -5151,6 +5181,10 @@ TabNew autocmd.txt /*TabNew*
|
|||||||
Tcl if_tcl.txt /*Tcl*
|
Tcl if_tcl.txt /*Tcl*
|
||||||
TermChanged autocmd.txt /*TermChanged*
|
TermChanged autocmd.txt /*TermChanged*
|
||||||
TermResponse autocmd.txt /*TermResponse*
|
TermResponse autocmd.txt /*TermResponse*
|
||||||
|
TermdebugStartPost terminal.txt /*TermdebugStartPost*
|
||||||
|
TermdebugStartPre terminal.txt /*TermdebugStartPre*
|
||||||
|
TermdebugStopPost terminal.txt /*TermdebugStopPost*
|
||||||
|
TermdebugStopPre terminal.txt /*TermdebugStopPre*
|
||||||
Terminal-Job terminal.txt /*Terminal-Job*
|
Terminal-Job terminal.txt /*Terminal-Job*
|
||||||
Terminal-Normal terminal.txt /*Terminal-Normal*
|
Terminal-Normal terminal.txt /*Terminal-Normal*
|
||||||
Terminal-mode terminal.txt /*Terminal-mode*
|
Terminal-mode terminal.txt /*Terminal-mode*
|
||||||
@@ -5528,10 +5562,12 @@ beval_winnr-variable eval.txt /*beval_winnr-variable*
|
|||||||
binary-number eval.txt /*binary-number*
|
binary-number eval.txt /*binary-number*
|
||||||
bitwise-function usr_41.txt /*bitwise-function*
|
bitwise-function usr_41.txt /*bitwise-function*
|
||||||
blob eval.txt /*blob*
|
blob eval.txt /*blob*
|
||||||
|
blob-functions usr_41.txt /*blob-functions*
|
||||||
blob-identity eval.txt /*blob-identity*
|
blob-identity eval.txt /*blob-identity*
|
||||||
blob-index eval.txt /*blob-index*
|
blob-index eval.txt /*blob-index*
|
||||||
blob-literal eval.txt /*blob-literal*
|
blob-literal eval.txt /*blob-literal*
|
||||||
blob-modification eval.txt /*blob-modification*
|
blob-modification eval.txt /*blob-modification*
|
||||||
|
blob2list() eval.txt /*blob2list()*
|
||||||
blockwise-examples visual.txt /*blockwise-examples*
|
blockwise-examples visual.txt /*blockwise-examples*
|
||||||
blockwise-operators visual.txt /*blockwise-operators*
|
blockwise-operators visual.txt /*blockwise-operators*
|
||||||
blockwise-register change.txt /*blockwise-register*
|
blockwise-register change.txt /*blockwise-register*
|
||||||
@@ -5897,7 +5933,10 @@ compl-keyword insert.txt /*compl-keyword*
|
|||||||
compl-omni insert.txt /*compl-omni*
|
compl-omni insert.txt /*compl-omni*
|
||||||
compl-omni-filetypes insert.txt /*compl-omni-filetypes*
|
compl-omni-filetypes insert.txt /*compl-omni-filetypes*
|
||||||
compl-spelling insert.txt /*compl-spelling*
|
compl-spelling insert.txt /*compl-spelling*
|
||||||
|
compl-stop insert.txt /*compl-stop*
|
||||||
compl-tag insert.txt /*compl-tag*
|
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-vim insert.txt /*compl-vim*
|
||||||
compl-whole-line insert.txt /*compl-whole-line*
|
compl-whole-line insert.txt /*compl-whole-line*
|
||||||
complete() eval.txt /*complete()*
|
complete() eval.txt /*complete()*
|
||||||
@@ -6149,6 +6188,10 @@ digraph-encoding digraph.txt /*digraph-encoding*
|
|||||||
digraph-table digraph.txt /*digraph-table*
|
digraph-table digraph.txt /*digraph-table*
|
||||||
digraph-table-mbyte digraph.txt /*digraph-table-mbyte*
|
digraph-table-mbyte digraph.txt /*digraph-table-mbyte*
|
||||||
digraph.txt digraph.txt /*digraph.txt*
|
digraph.txt digraph.txt /*digraph.txt*
|
||||||
|
digraph_get() eval.txt /*digraph_get()*
|
||||||
|
digraph_getlist() eval.txt /*digraph_getlist()*
|
||||||
|
digraph_set() eval.txt /*digraph_set()*
|
||||||
|
digraph_setlist() eval.txt /*digraph_setlist()*
|
||||||
digraphs digraph.txt /*digraphs*
|
digraphs digraph.txt /*digraphs*
|
||||||
digraphs-changed version6.txt /*digraphs-changed*
|
digraphs-changed version6.txt /*digraphs-changed*
|
||||||
digraphs-default digraph.txt /*digraphs-default*
|
digraphs-default digraph.txt /*digraphs-default*
|
||||||
@@ -6178,6 +6221,8 @@ dos-backslash os_dos.txt /*dos-backslash*
|
|||||||
dos-colors os_dos.txt /*dos-colors*
|
dos-colors os_dos.txt /*dos-colors*
|
||||||
dos-file-formats os_dos.txt /*dos-file-formats*
|
dos-file-formats os_dos.txt /*dos-file-formats*
|
||||||
dos-locations os_dos.txt /*dos-locations*
|
dos-locations os_dos.txt /*dos-locations*
|
||||||
|
dos-powershell os_dos.txt /*dos-powershell*
|
||||||
|
dos-pwsh os_dos.txt /*dos-pwsh*
|
||||||
dos-shell os_dos.txt /*dos-shell*
|
dos-shell os_dos.txt /*dos-shell*
|
||||||
dos-standard-mappings os_dos.txt /*dos-standard-mappings*
|
dos-standard-mappings os_dos.txt /*dos-standard-mappings*
|
||||||
dos-temp-files os_dos.txt /*dos-temp-files*
|
dos-temp-files os_dos.txt /*dos-temp-files*
|
||||||
@@ -6190,6 +6235,7 @@ dp diff.txt /*dp*
|
|||||||
drag-n-drop gui.txt /*drag-n-drop*
|
drag-n-drop gui.txt /*drag-n-drop*
|
||||||
drag-n-drop-win32 gui_w32.txt /*drag-n-drop-win32*
|
drag-n-drop-win32 gui_w32.txt /*drag-n-drop-win32*
|
||||||
drag-status-line term.txt /*drag-status-line*
|
drag-status-line term.txt /*drag-status-line*
|
||||||
|
drop_file gui.txt /*drop_file*
|
||||||
dtd.vim syntax.txt /*dtd.vim*
|
dtd.vim syntax.txt /*dtd.vim*
|
||||||
dtd2vim insert.txt /*dtd2vim*
|
dtd2vim insert.txt /*dtd2vim*
|
||||||
dying-variable eval.txt /*dying-variable*
|
dying-variable eval.txt /*dying-variable*
|
||||||
@@ -6210,6 +6256,7 @@ efm-%> quickfix.txt /*efm-%>*
|
|||||||
efm-entries quickfix.txt /*efm-entries*
|
efm-entries quickfix.txt /*efm-entries*
|
||||||
efm-ignore quickfix.txt /*efm-ignore*
|
efm-ignore quickfix.txt /*efm-ignore*
|
||||||
eiffel.vim syntax.txt /*eiffel.vim*
|
eiffel.vim syntax.txt /*eiffel.vim*
|
||||||
|
elixir.vim syntax.txt /*elixir.vim*
|
||||||
emacs-keys tips.txt /*emacs-keys*
|
emacs-keys tips.txt /*emacs-keys*
|
||||||
emacs-tags tagsrch.txt /*emacs-tags*
|
emacs-tags tagsrch.txt /*emacs-tags*
|
||||||
emacs_tags tagsrch.txt /*emacs_tags*
|
emacs_tags tagsrch.txt /*emacs_tags*
|
||||||
@@ -6290,6 +6337,7 @@ execute-menus gui.txt /*execute-menus*
|
|||||||
exepath() eval.txt /*exepath()*
|
exepath() eval.txt /*exepath()*
|
||||||
exim starting.txt /*exim*
|
exim starting.txt /*exim*
|
||||||
exists() eval.txt /*exists()*
|
exists() eval.txt /*exists()*
|
||||||
|
exists_compiled() eval.txt /*exists_compiled()*
|
||||||
exiting starting.txt /*exiting*
|
exiting starting.txt /*exiting*
|
||||||
exiting-variable eval.txt /*exiting-variable*
|
exiting-variable eval.txt /*exiting-variable*
|
||||||
exp() eval.txt /*exp()*
|
exp() eval.txt /*exp()*
|
||||||
@@ -6510,7 +6558,6 @@ format-bullet-list tips.txt /*format-bullet-list*
|
|||||||
format-comments change.txt /*format-comments*
|
format-comments change.txt /*format-comments*
|
||||||
format-formatexpr change.txt /*format-formatexpr*
|
format-formatexpr change.txt /*format-formatexpr*
|
||||||
formatting change.txt /*formatting*
|
formatting change.txt /*formatting*
|
||||||
formfeed intro.txt /*formfeed*
|
|
||||||
fortran.vim syntax.txt /*fortran.vim*
|
fortran.vim syntax.txt /*fortran.vim*
|
||||||
friendship intro.txt /*friendship*
|
friendship intro.txt /*friendship*
|
||||||
frombook usr_01.txt /*frombook*
|
frombook usr_01.txt /*frombook*
|
||||||
@@ -6559,6 +6606,7 @@ ft-docbkxml-syntax syntax.txt /*ft-docbkxml-syntax*
|
|||||||
ft-dosbatch-syntax syntax.txt /*ft-dosbatch-syntax*
|
ft-dosbatch-syntax syntax.txt /*ft-dosbatch-syntax*
|
||||||
ft-dtd-syntax syntax.txt /*ft-dtd-syntax*
|
ft-dtd-syntax syntax.txt /*ft-dtd-syntax*
|
||||||
ft-eiffel-syntax syntax.txt /*ft-eiffel-syntax*
|
ft-eiffel-syntax syntax.txt /*ft-eiffel-syntax*
|
||||||
|
ft-elixir-syntax syntax.txt /*ft-elixir-syntax*
|
||||||
ft-erlang-syntax syntax.txt /*ft-erlang-syntax*
|
ft-erlang-syntax syntax.txt /*ft-erlang-syntax*
|
||||||
ft-euphoria-syntax syntax.txt /*ft-euphoria-syntax*
|
ft-euphoria-syntax syntax.txt /*ft-euphoria-syntax*
|
||||||
ft-flexwiki-syntax syntax.txt /*ft-flexwiki-syntax*
|
ft-flexwiki-syntax syntax.txt /*ft-flexwiki-syntax*
|
||||||
@@ -6568,6 +6616,7 @@ ft-fortran-plugin filetype.txt /*ft-fortran-plugin*
|
|||||||
ft-fortran-syntax syntax.txt /*ft-fortran-syntax*
|
ft-fortran-syntax syntax.txt /*ft-fortran-syntax*
|
||||||
ft-fvwm-syntax syntax.txt /*ft-fvwm-syntax*
|
ft-fvwm-syntax syntax.txt /*ft-fvwm-syntax*
|
||||||
ft-gitcommit-plugin filetype.txt /*ft-gitcommit-plugin*
|
ft-gitcommit-plugin filetype.txt /*ft-gitcommit-plugin*
|
||||||
|
ft-gprof-plugin filetype.txt /*ft-gprof-plugin*
|
||||||
ft-groff-syntax syntax.txt /*ft-groff-syntax*
|
ft-groff-syntax syntax.txt /*ft-groff-syntax*
|
||||||
ft-gsp-syntax syntax.txt /*ft-gsp-syntax*
|
ft-gsp-syntax syntax.txt /*ft-gsp-syntax*
|
||||||
ft-haskell-syntax syntax.txt /*ft-haskell-syntax*
|
ft-haskell-syntax syntax.txt /*ft-haskell-syntax*
|
||||||
@@ -6674,6 +6723,8 @@ ft-yaml-syntax syntax.txt /*ft-yaml-syntax*
|
|||||||
ft-zimbu-plugin filetype.txt /*ft-zimbu-plugin*
|
ft-zimbu-plugin filetype.txt /*ft-zimbu-plugin*
|
||||||
ft-zsh-syntax syntax.txt /*ft-zsh-syntax*
|
ft-zsh-syntax syntax.txt /*ft-zsh-syntax*
|
||||||
ft_ada.txt ft_ada.txt /*ft_ada.txt*
|
ft_ada.txt ft_ada.txt /*ft_ada.txt*
|
||||||
|
ft_ps1.txt ft_ps1.txt /*ft_ps1.txt*
|
||||||
|
ft_raku.txt ft_raku.txt /*ft_raku.txt*
|
||||||
ft_rust.txt ft_rust.txt /*ft_rust.txt*
|
ft_rust.txt ft_rust.txt /*ft_rust.txt*
|
||||||
ft_sql.txt ft_sql.txt /*ft_sql.txt*
|
ft_sql.txt ft_sql.txt /*ft_sql.txt*
|
||||||
ftdetect filetype.txt /*ftdetect*
|
ftdetect filetype.txt /*ftdetect*
|
||||||
@@ -6799,10 +6850,12 @@ g:netrw_altv pi_netrw.txt /*g:netrw_altv*
|
|||||||
g:netrw_banner pi_netrw.txt /*g:netrw_banner*
|
g:netrw_banner pi_netrw.txt /*g:netrw_banner*
|
||||||
g:netrw_bannerbackslash pi_netrw.txt /*g:netrw_bannerbackslash*
|
g:netrw_bannerbackslash pi_netrw.txt /*g:netrw_bannerbackslash*
|
||||||
g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split*
|
g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split*
|
||||||
|
g:netrw_browsex_support_remote pi_netrw.txt /*g:netrw_browsex_support_remote*
|
||||||
g:netrw_browsex_viewer pi_netrw.txt /*g:netrw_browsex_viewer*
|
g:netrw_browsex_viewer pi_netrw.txt /*g:netrw_browsex_viewer*
|
||||||
g:netrw_bufsettings pi_netrw.txt /*g:netrw_bufsettings*
|
g:netrw_bufsettings pi_netrw.txt /*g:netrw_bufsettings*
|
||||||
g:netrw_chgperm pi_netrw.txt /*g:netrw_chgperm*
|
g:netrw_chgperm pi_netrw.txt /*g:netrw_chgperm*
|
||||||
g:netrw_chgwin pi_netrw.txt /*g:netrw_chgwin*
|
g:netrw_chgwin pi_netrw.txt /*g:netrw_chgwin*
|
||||||
|
g:netrw_clipboard pi_netrw.txt /*g:netrw_clipboard*
|
||||||
g:netrw_compress pi_netrw.txt /*g:netrw_compress*
|
g:netrw_compress pi_netrw.txt /*g:netrw_compress*
|
||||||
g:netrw_ctags pi_netrw.txt /*g:netrw_ctags*
|
g:netrw_ctags pi_netrw.txt /*g:netrw_ctags*
|
||||||
g:netrw_cursor pi_netrw.txt /*g:netrw_cursor*
|
g:netrw_cursor pi_netrw.txt /*g:netrw_cursor*
|
||||||
@@ -6917,6 +6970,7 @@ g:tar_nomax pi_tar.txt /*g:tar_nomax*
|
|||||||
g:tar_readoptions pi_tar.txt /*g:tar_readoptions*
|
g:tar_readoptions pi_tar.txt /*g:tar_readoptions*
|
||||||
g:tar_secure pi_tar.txt /*g:tar_secure*
|
g:tar_secure pi_tar.txt /*g:tar_secure*
|
||||||
g:tar_writeoptions pi_tar.txt /*g:tar_writeoptions*
|
g:tar_writeoptions pi_tar.txt /*g:tar_writeoptions*
|
||||||
|
g:termdebugger terminal.txt /*g:termdebugger*
|
||||||
g:terminal_ansi_colors terminal.txt /*g:terminal_ansi_colors*
|
g:terminal_ansi_colors terminal.txt /*g:terminal_ansi_colors*
|
||||||
g:tex_comment_nospell syntax.txt /*g:tex_comment_nospell*
|
g:tex_comment_nospell syntax.txt /*g:tex_comment_nospell*
|
||||||
g:tex_conceal syntax.txt /*g:tex_conceal*
|
g:tex_conceal syntax.txt /*g:tex_conceal*
|
||||||
@@ -7000,6 +7054,7 @@ getchar() eval.txt /*getchar()*
|
|||||||
getcharmod() eval.txt /*getcharmod()*
|
getcharmod() eval.txt /*getcharmod()*
|
||||||
getcharpos() eval.txt /*getcharpos()*
|
getcharpos() eval.txt /*getcharpos()*
|
||||||
getcharsearch() eval.txt /*getcharsearch()*
|
getcharsearch() eval.txt /*getcharsearch()*
|
||||||
|
getcharstr() eval.txt /*getcharstr()*
|
||||||
getcmdline() eval.txt /*getcmdline()*
|
getcmdline() eval.txt /*getcmdline()*
|
||||||
getcmdpos() eval.txt /*getcmdpos()*
|
getcmdpos() eval.txt /*getcmdpos()*
|
||||||
getcmdtype() eval.txt /*getcmdtype()*
|
getcmdtype() eval.txt /*getcmdtype()*
|
||||||
@@ -7158,6 +7213,7 @@ gui-x11-printing gui_x11.txt /*gui-x11-printing*
|
|||||||
gui-x11-start gui_x11.txt /*gui-x11-start*
|
gui-x11-start gui_x11.txt /*gui-x11-start*
|
||||||
gui-x11-various gui_x11.txt /*gui-x11-various*
|
gui-x11-various gui_x11.txt /*gui-x11-various*
|
||||||
gui.txt gui.txt /*gui.txt*
|
gui.txt gui.txt /*gui.txt*
|
||||||
|
gui_running eval.txt /*gui_running*
|
||||||
gui_w32.txt gui_w32.txt /*gui_w32.txt*
|
gui_w32.txt gui_w32.txt /*gui_w32.txt*
|
||||||
gui_x11.txt gui_x11.txt /*gui_x11.txt*
|
gui_x11.txt gui_x11.txt /*gui_x11.txt*
|
||||||
guifontwide_gtk gui.txt /*guifontwide_gtk*
|
guifontwide_gtk gui.txt /*guifontwide_gtk*
|
||||||
@@ -7440,6 +7496,7 @@ i_CTRL-X_CTRL-T insert.txt /*i_CTRL-X_CTRL-T*
|
|||||||
i_CTRL-X_CTRL-U insert.txt /*i_CTRL-X_CTRL-U*
|
i_CTRL-X_CTRL-U insert.txt /*i_CTRL-X_CTRL-U*
|
||||||
i_CTRL-X_CTRL-V insert.txt /*i_CTRL-X_CTRL-V*
|
i_CTRL-X_CTRL-V insert.txt /*i_CTRL-X_CTRL-V*
|
||||||
i_CTRL-X_CTRL-Y insert.txt /*i_CTRL-X_CTRL-Y*
|
i_CTRL-X_CTRL-Y insert.txt /*i_CTRL-X_CTRL-Y*
|
||||||
|
i_CTRL-X_CTRL-Z insert.txt /*i_CTRL-X_CTRL-Z*
|
||||||
i_CTRL-X_CTRL-] insert.txt /*i_CTRL-X_CTRL-]*
|
i_CTRL-X_CTRL-] insert.txt /*i_CTRL-X_CTRL-]*
|
||||||
i_CTRL-X_index index.txt /*i_CTRL-X_index*
|
i_CTRL-X_index index.txt /*i_CTRL-X_index*
|
||||||
i_CTRL-X_s insert.txt /*i_CTRL-X_s*
|
i_CTRL-X_s insert.txt /*i_CTRL-X_s*
|
||||||
@@ -7658,6 +7715,7 @@ lcs-conceal options.txt /*lcs-conceal*
|
|||||||
lcs-eol options.txt /*lcs-eol*
|
lcs-eol options.txt /*lcs-eol*
|
||||||
lcs-extends options.txt /*lcs-extends*
|
lcs-extends options.txt /*lcs-extends*
|
||||||
lcs-lead options.txt /*lcs-lead*
|
lcs-lead options.txt /*lcs-lead*
|
||||||
|
lcs-multispace options.txt /*lcs-multispace*
|
||||||
lcs-nbsp options.txt /*lcs-nbsp*
|
lcs-nbsp options.txt /*lcs-nbsp*
|
||||||
lcs-precedes options.txt /*lcs-precedes*
|
lcs-precedes options.txt /*lcs-precedes*
|
||||||
lcs-space options.txt /*lcs-space*
|
lcs-space options.txt /*lcs-space*
|
||||||
@@ -7692,6 +7750,7 @@ list-identity eval.txt /*list-identity*
|
|||||||
list-index eval.txt /*list-index*
|
list-index eval.txt /*list-index*
|
||||||
list-modification eval.txt /*list-modification*
|
list-modification eval.txt /*list-modification*
|
||||||
list-repeat windows.txt /*list-repeat*
|
list-repeat windows.txt /*list-repeat*
|
||||||
|
list2blob() eval.txt /*list2blob()*
|
||||||
list2str() eval.txt /*list2str()*
|
list2str() eval.txt /*list2str()*
|
||||||
listener_add() eval.txt /*listener_add()*
|
listener_add() eval.txt /*listener_add()*
|
||||||
listener_flush() eval.txt /*listener_flush()*
|
listener_flush() eval.txt /*listener_flush()*
|
||||||
@@ -7744,6 +7803,7 @@ lua-funcref if_lua.txt /*lua-funcref*
|
|||||||
lua-list if_lua.txt /*lua-list*
|
lua-list if_lua.txt /*lua-list*
|
||||||
lua-luaeval if_lua.txt /*lua-luaeval*
|
lua-luaeval if_lua.txt /*lua-luaeval*
|
||||||
lua-vim if_lua.txt /*lua-vim*
|
lua-vim if_lua.txt /*lua-vim*
|
||||||
|
lua-vim-variables if_lua.txt /*lua-vim-variables*
|
||||||
lua-window if_lua.txt /*lua-window*
|
lua-window if_lua.txt /*lua-window*
|
||||||
lua.vim syntax.txt /*lua.vim*
|
lua.vim syntax.txt /*lua.vim*
|
||||||
luaeval() eval.txt /*luaeval()*
|
luaeval() eval.txt /*luaeval()*
|
||||||
@@ -7901,6 +7961,7 @@ moo.vim syntax.txt /*moo.vim*
|
|||||||
more-compatible version5.txt /*more-compatible*
|
more-compatible version5.txt /*more-compatible*
|
||||||
more-prompt message.txt /*more-prompt*
|
more-prompt message.txt /*more-prompt*
|
||||||
more-variables eval.txt /*more-variables*
|
more-variables eval.txt /*more-variables*
|
||||||
|
motion-count-multiplied motion.txt /*motion-count-multiplied*
|
||||||
motion.txt motion.txt /*motion.txt*
|
motion.txt motion.txt /*motion.txt*
|
||||||
mouse-mode-table term.txt /*mouse-mode-table*
|
mouse-mode-table term.txt /*mouse-mode-table*
|
||||||
mouse-overview term.txt /*mouse-overview*
|
mouse-overview term.txt /*mouse-overview*
|
||||||
@@ -8348,6 +8409,7 @@ omni-sql-completion ft_sql.txt /*omni-sql-completion*
|
|||||||
online-help helphelp.txt /*online-help*
|
online-help helphelp.txt /*online-help*
|
||||||
opening-window windows.txt /*opening-window*
|
opening-window windows.txt /*opening-window*
|
||||||
operator motion.txt /*operator*
|
operator motion.txt /*operator*
|
||||||
|
operator-doubled motion.txt /*operator-doubled*
|
||||||
operator-pending-index index.txt /*operator-pending-index*
|
operator-pending-index index.txt /*operator-pending-index*
|
||||||
operator-variable eval.txt /*operator-variable*
|
operator-variable eval.txt /*operator-variable*
|
||||||
option-backslash options.txt /*option-backslash*
|
option-backslash options.txt /*option-backslash*
|
||||||
@@ -8401,6 +8463,7 @@ page_up intro.txt /*page_up*
|
|||||||
pager message.txt /*pager*
|
pager message.txt /*pager*
|
||||||
papp.vim syntax.txt /*papp.vim*
|
papp.vim syntax.txt /*papp.vim*
|
||||||
paragraph motion.txt /*paragraph*
|
paragraph motion.txt /*paragraph*
|
||||||
|
partial eval.txt /*partial*
|
||||||
pascal.vim syntax.txt /*pascal.vim*
|
pascal.vim syntax.txt /*pascal.vim*
|
||||||
patches-8 version8.txt /*patches-8*
|
patches-8 version8.txt /*patches-8*
|
||||||
patches-8.1 version8.txt /*patches-8.1*
|
patches-8.1 version8.txt /*patches-8.1*
|
||||||
@@ -8584,6 +8647,7 @@ prompt_setprompt() eval.txt /*prompt_setprompt()*
|
|||||||
promptbuffer-functions usr_41.txt /*promptbuffer-functions*
|
promptbuffer-functions usr_41.txt /*promptbuffer-functions*
|
||||||
pronounce intro.txt /*pronounce*
|
pronounce intro.txt /*pronounce*
|
||||||
prop_add() textprop.txt /*prop_add()*
|
prop_add() textprop.txt /*prop_add()*
|
||||||
|
prop_add_list() textprop.txt /*prop_add_list()*
|
||||||
prop_clear() textprop.txt /*prop_clear()*
|
prop_clear() textprop.txt /*prop_clear()*
|
||||||
prop_find() textprop.txt /*prop_find()*
|
prop_find() textprop.txt /*prop_find()*
|
||||||
prop_list() textprop.txt /*prop_list()*
|
prop_list() textprop.txt /*prop_list()*
|
||||||
@@ -8598,7 +8662,6 @@ ps1-compiler ft_ps1.txt /*ps1-compiler*
|
|||||||
ps1-folding ft_ps1.txt /*ps1-folding*
|
ps1-folding ft_ps1.txt /*ps1-folding*
|
||||||
ps1-keyword ft_ps1.txt /*ps1-keyword*
|
ps1-keyword ft_ps1.txt /*ps1-keyword*
|
||||||
ps1-syntax ft_ps1.txt /*ps1-syntax*
|
ps1-syntax ft_ps1.txt /*ps1-syntax*
|
||||||
ps1.txt ft_ps1.txt /*ps1.txt*
|
|
||||||
psql ft_sql.txt /*psql*
|
psql ft_sql.txt /*psql*
|
||||||
ptcap.vim syntax.txt /*ptcap.vim*
|
ptcap.vim syntax.txt /*ptcap.vim*
|
||||||
pterm-mouse options.txt /*pterm-mouse*
|
pterm-mouse options.txt /*pterm-mouse*
|
||||||
@@ -9618,6 +9681,7 @@ termcap-title term.txt /*termcap-title*
|
|||||||
termdebug-commands terminal.txt /*termdebug-commands*
|
termdebug-commands terminal.txt /*termdebug-commands*
|
||||||
termdebug-communication terminal.txt /*termdebug-communication*
|
termdebug-communication terminal.txt /*termdebug-communication*
|
||||||
termdebug-customizing terminal.txt /*termdebug-customizing*
|
termdebug-customizing terminal.txt /*termdebug-customizing*
|
||||||
|
termdebug-events terminal.txt /*termdebug-events*
|
||||||
termdebug-example terminal.txt /*termdebug-example*
|
termdebug-example terminal.txt /*termdebug-example*
|
||||||
termdebug-prompt terminal.txt /*termdebug-prompt*
|
termdebug-prompt terminal.txt /*termdebug-prompt*
|
||||||
termdebug-starting terminal.txt /*termdebug-starting*
|
termdebug-starting terminal.txt /*termdebug-starting*
|
||||||
@@ -9673,6 +9737,8 @@ test_feedinput() testing.txt /*test_feedinput()*
|
|||||||
test_garbagecollect_now() testing.txt /*test_garbagecollect_now()*
|
test_garbagecollect_now() testing.txt /*test_garbagecollect_now()*
|
||||||
test_garbagecollect_soon() testing.txt /*test_garbagecollect_soon()*
|
test_garbagecollect_soon() testing.txt /*test_garbagecollect_soon()*
|
||||||
test_getvalue() testing.txt /*test_getvalue()*
|
test_getvalue() testing.txt /*test_getvalue()*
|
||||||
|
test_gui_drop_files() testing.txt /*test_gui_drop_files()*
|
||||||
|
test_gui_mouse_event() testing.txt /*test_gui_mouse_event()*
|
||||||
test_ignore_error() testing.txt /*test_ignore_error()*
|
test_ignore_error() testing.txt /*test_ignore_error()*
|
||||||
test_null_blob() testing.txt /*test_null_blob()*
|
test_null_blob() testing.txt /*test_null_blob()*
|
||||||
test_null_channel() testing.txt /*test_null_channel()*
|
test_null_channel() testing.txt /*test_null_channel()*
|
||||||
@@ -9745,6 +9811,7 @@ timestamps editing.txt /*timestamps*
|
|||||||
tips tips.txt /*tips*
|
tips tips.txt /*tips*
|
||||||
tips.txt tips.txt /*tips.txt*
|
tips.txt tips.txt /*tips.txt*
|
||||||
tmux syntax.txt /*tmux*
|
tmux syntax.txt /*tmux*
|
||||||
|
tmux-integration term.txt /*tmux-integration*
|
||||||
todo todo.txt /*todo*
|
todo todo.txt /*todo*
|
||||||
todo.txt todo.txt /*todo.txt*
|
todo.txt todo.txt /*todo.txt*
|
||||||
toggle options.txt /*toggle*
|
toggle options.txt /*toggle*
|
||||||
@@ -9766,6 +9833,7 @@ try-echoerr eval.txt /*try-echoerr*
|
|||||||
try-finally eval.txt /*try-finally*
|
try-finally eval.txt /*try-finally*
|
||||||
try-nested eval.txt /*try-nested*
|
try-nested eval.txt /*try-nested*
|
||||||
try-nesting eval.txt /*try-nesting*
|
try-nesting eval.txt /*try-nesting*
|
||||||
|
tsrfu' options.txt /*tsrfu'*
|
||||||
tutor usr_01.txt /*tutor*
|
tutor usr_01.txt /*tutor*
|
||||||
twice if_cscop.txt /*twice*
|
twice if_cscop.txt /*twice*
|
||||||
two-engines pattern.txt /*two-engines*
|
two-engines pattern.txt /*two-engines*
|
||||||
@@ -10066,6 +10134,7 @@ v_u change.txt /*v_u*
|
|||||||
v_v visual.txt /*v_v*
|
v_v visual.txt /*v_v*
|
||||||
v_x change.txt /*v_x*
|
v_x change.txt /*v_x*
|
||||||
v_y change.txt /*v_y*
|
v_y change.txt /*v_y*
|
||||||
|
v_zy change.txt /*v_zy*
|
||||||
v_~ change.txt /*v_~*
|
v_~ change.txt /*v_~*
|
||||||
vab motion.txt /*vab*
|
vab motion.txt /*vab*
|
||||||
val-variable eval.txt /*val-variable*
|
val-variable eval.txt /*val-variable*
|
||||||
@@ -10135,28 +10204,35 @@ vim-8.2 version8.txt /*vim-8.2*
|
|||||||
vim-additions vi_diff.txt /*vim-additions*
|
vim-additions vi_diff.txt /*vim-additions*
|
||||||
vim-announce intro.txt /*vim-announce*
|
vim-announce intro.txt /*vim-announce*
|
||||||
vim-arguments starting.txt /*vim-arguments*
|
vim-arguments starting.txt /*vim-arguments*
|
||||||
|
vim-changelog version8.txt /*vim-changelog*
|
||||||
vim-default-editor gui_w32.txt /*vim-default-editor*
|
vim-default-editor gui_w32.txt /*vim-default-editor*
|
||||||
vim-dev intro.txt /*vim-dev*
|
vim-dev intro.txt /*vim-dev*
|
||||||
vim-mac intro.txt /*vim-mac*
|
vim-mac intro.txt /*vim-mac*
|
||||||
vim-modes intro.txt /*vim-modes*
|
vim-modes intro.txt /*vim-modes*
|
||||||
vim-modes-intro intro.txt /*vim-modes-intro*
|
vim-modes-intro intro.txt /*vim-modes-intro*
|
||||||
vim-raku ft_raku.txt /*vim-raku*
|
vim-raku ft_raku.txt /*vim-raku*
|
||||||
vim-raku.txt ft_raku.txt /*vim-raku.txt*
|
|
||||||
vim-script-intro usr_41.txt /*vim-script-intro*
|
vim-script-intro usr_41.txt /*vim-script-intro*
|
||||||
vim-use intro.txt /*vim-use*
|
vim-use intro.txt /*vim-use*
|
||||||
vim-variable eval.txt /*vim-variable*
|
vim-variable eval.txt /*vim-variable*
|
||||||
|
vim.b if_lua.txt /*vim.b*
|
||||||
|
vim.g if_lua.txt /*vim.g*
|
||||||
|
vim.t if_lua.txt /*vim.t*
|
||||||
|
vim.v if_lua.txt /*vim.v*
|
||||||
vim.vim syntax.txt /*vim.vim*
|
vim.vim syntax.txt /*vim.vim*
|
||||||
|
vim.w if_lua.txt /*vim.w*
|
||||||
vim7 version7.txt /*vim7*
|
vim7 version7.txt /*vim7*
|
||||||
vim8 version8.txt /*vim8*
|
vim8 version8.txt /*vim8*
|
||||||
vim9 vim9.txt /*vim9*
|
vim9 vim9.txt /*vim9*
|
||||||
vim9-classes vim9.txt /*vim9-classes*
|
vim9-classes vim9.txt /*vim9-classes*
|
||||||
vim9-const vim9.txt /*vim9-const*
|
vim9-const vim9.txt /*vim9-const*
|
||||||
vim9-curly vim9.txt /*vim9-curly*
|
vim9-curly vim9.txt /*vim9-curly*
|
||||||
|
vim9-debug repeat.txt /*vim9-debug*
|
||||||
vim9-declaration vim9.txt /*vim9-declaration*
|
vim9-declaration vim9.txt /*vim9-declaration*
|
||||||
vim9-declarations usr_46.txt /*vim9-declarations*
|
vim9-declarations usr_46.txt /*vim9-declarations*
|
||||||
vim9-differences vim9.txt /*vim9-differences*
|
vim9-differences vim9.txt /*vim9-differences*
|
||||||
vim9-export vim9.txt /*vim9-export*
|
vim9-export vim9.txt /*vim9-export*
|
||||||
vim9-final vim9.txt /*vim9-final*
|
vim9-final vim9.txt /*vim9-final*
|
||||||
|
vim9-function-defined-later vim9.txt /*vim9-function-defined-later*
|
||||||
vim9-gotchas vim9.txt /*vim9-gotchas*
|
vim9-gotchas vim9.txt /*vim9-gotchas*
|
||||||
vim9-ignored-argument vim9.txt /*vim9-ignored-argument*
|
vim9-ignored-argument vim9.txt /*vim9-ignored-argument*
|
||||||
vim9-import vim9.txt /*vim9-import*
|
vim9-import vim9.txt /*vim9-import*
|
||||||
@@ -10164,6 +10240,7 @@ vim9-lambda vim9.txt /*vim9-lambda*
|
|||||||
vim9-lambda-arguments vim9.txt /*vim9-lambda-arguments*
|
vim9-lambda-arguments vim9.txt /*vim9-lambda-arguments*
|
||||||
vim9-mix vim9.txt /*vim9-mix*
|
vim9-mix vim9.txt /*vim9-mix*
|
||||||
vim9-namespace vim9.txt /*vim9-namespace*
|
vim9-namespace vim9.txt /*vim9-namespace*
|
||||||
|
vim9-no-dict-function vim9.txt /*vim9-no-dict-function*
|
||||||
vim9-rationale vim9.txt /*vim9-rationale*
|
vim9-rationale vim9.txt /*vim9-rationale*
|
||||||
vim9-reload vim9.txt /*vim9-reload*
|
vim9-reload vim9.txt /*vim9-reload*
|
||||||
vim9-scopes vim9.txt /*vim9-scopes*
|
vim9-scopes vim9.txt /*vim9-scopes*
|
||||||
@@ -10280,6 +10357,7 @@ win32-faq os_win32.txt /*win32-faq*
|
|||||||
win32-gettext mlang.txt /*win32-gettext*
|
win32-gettext mlang.txt /*win32-gettext*
|
||||||
win32-gui gui_w32.txt /*win32-gui*
|
win32-gui gui_w32.txt /*win32-gui*
|
||||||
win32-hidden-menus gui.txt /*win32-hidden-menus*
|
win32-hidden-menus gui.txt /*win32-hidden-menus*
|
||||||
|
win32-installer os_win32.txt /*win32-installer*
|
||||||
win32-mouse os_win32.txt /*win32-mouse*
|
win32-mouse os_win32.txt /*win32-mouse*
|
||||||
win32-open-with-menu gui_w32.txt /*win32-open-with-menu*
|
win32-open-with-menu gui_w32.txt /*win32-open-with-menu*
|
||||||
win32-popup-menu gui_w32.txt /*win32-popup-menu*
|
win32-popup-menu gui_w32.txt /*win32-popup-menu*
|
||||||
@@ -10435,6 +10513,7 @@ zOS-PuTTY os_390.txt /*zOS-PuTTY*
|
|||||||
zOS-has-ebcdic os_390.txt /*zOS-has-ebcdic*
|
zOS-has-ebcdic os_390.txt /*zOS-has-ebcdic*
|
||||||
zOS-limitations os_390.txt /*zOS-limitations*
|
zOS-limitations os_390.txt /*zOS-limitations*
|
||||||
zOS-open-source os_390.txt /*zOS-open-source*
|
zOS-open-source os_390.txt /*zOS-open-source*
|
||||||
|
zP change.txt /*zP*
|
||||||
zR fold.txt /*zR*
|
zR fold.txt /*zR*
|
||||||
zW spell.txt /*zW*
|
zW spell.txt /*zW*
|
||||||
zX fold.txt /*zX*
|
zX fold.txt /*zX*
|
||||||
@@ -10462,6 +10541,7 @@ zl scroll.txt /*zl*
|
|||||||
zm fold.txt /*zm*
|
zm fold.txt /*zm*
|
||||||
zn fold.txt /*zn*
|
zn fold.txt /*zn*
|
||||||
zo fold.txt /*zo*
|
zo fold.txt /*zo*
|
||||||
|
zp change.txt /*zp*
|
||||||
zr fold.txt /*zr*
|
zr fold.txt /*zr*
|
||||||
zs scroll.txt /*zs*
|
zs scroll.txt /*zs*
|
||||||
zsh.vim syntax.txt /*zsh.vim*
|
zsh.vim syntax.txt /*zsh.vim*
|
||||||
@@ -10473,6 +10553,7 @@ zuw spell.txt /*zuw*
|
|||||||
zv fold.txt /*zv*
|
zv fold.txt /*zv*
|
||||||
zw spell.txt /*zw*
|
zw spell.txt /*zw*
|
||||||
zx fold.txt /*zx*
|
zx fold.txt /*zx*
|
||||||
|
zy change.txt /*zy*
|
||||||
zz scroll.txt /*zz*
|
zz scroll.txt /*zz*
|
||||||
{ motion.txt /*{*
|
{ motion.txt /*{*
|
||||||
{Visual} intro.txt /*{Visual}*
|
{Visual} intro.txt /*{Visual}*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*term.txt* For Vim version 8.2. Last change: 2021 Jan 14
|
*term.txt* For Vim version 8.2. Last change: 2021 Aug 29
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -126,6 +126,37 @@ automatically, you can try using something like this: >
|
|||||||
exec "set t_PS=\e[200~"
|
exec "set t_PS=\e[200~"
|
||||||
exec "set t_PE=\e[201~"
|
exec "set t_PE=\e[201~"
|
||||||
endif
|
endif
|
||||||
|
<
|
||||||
|
*tmux-integration*
|
||||||
|
If you experience issues when running Vim inside tmux, here are a few hints.
|
||||||
|
You can comment-out parts if something doesn't work (it may depend on the
|
||||||
|
terminal that tmux is running in): >
|
||||||
|
|
||||||
|
if !has('gui_running') && &term =~ '^\%(screen\|tmux\)'
|
||||||
|
" Better mouse support, see :help 'ttymouse'
|
||||||
|
set ttymouse=sgr
|
||||||
|
|
||||||
|
" Enable true colors, see :help xterm-true-color
|
||||||
|
let &termguicolors = v:true
|
||||||
|
let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
|
||||||
|
let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
|
||||||
|
|
||||||
|
" Enable bracketed paste mode, see :help xterm-bracketed-paste
|
||||||
|
let &t_BE = "\<Esc>[?2004h"
|
||||||
|
let &t_BD = "\<Esc>[?2004l"
|
||||||
|
let &t_PS = "\<Esc>[200~"
|
||||||
|
let &t_PE = "\<Esc>[201~"
|
||||||
|
|
||||||
|
" Enable focus event tracking, see :help xterm-focus-event
|
||||||
|
let &t_fe = "\<Esc>[?1004h"
|
||||||
|
let &t_fd = "\<Esc>[?1004l"
|
||||||
|
|
||||||
|
" Enable modified arrow keys, see :help xterm-modifier-keys
|
||||||
|
execute "silent! set <xUp>=\<Esc>[@;*A"
|
||||||
|
execute "silent! set <xDown>=\<Esc>[@;*B"
|
||||||
|
execute "silent! set <xRight>=\<Esc>[@;*C"
|
||||||
|
execute "silent! set <xLeft>=\<Esc>[@;*D"
|
||||||
|
endif
|
||||||
<
|
<
|
||||||
*cs7-problem*
|
*cs7-problem*
|
||||||
Note: If the terminal settings are changed after running Vim, you might have
|
Note: If the terminal settings are changed after running Vim, you might have
|
||||||
@@ -373,10 +404,10 @@ Added by Vim (there are no standard codes for these):
|
|||||||
t_Ri restore icon text from stack *t_Ri* *'t_Ri'*
|
t_Ri restore icon text from stack *t_Ri* *'t_Ri'*
|
||||||
t_TE end of "raw" mode *t_TE* *'t_TE'*
|
t_TE end of "raw" mode *t_TE* *'t_TE'*
|
||||||
t_TI put terminal into "raw" mode *t_TI* *'t_TI'*
|
t_TI put terminal into "raw" mode *t_TI* *'t_TI'*
|
||||||
t_fd disable focus-event tracking *t_fd* *'t_fd'*
|
|
||||||
|xterm-focus-event|
|
|
||||||
t_fe enable focus-event tracking *t_fe* *'t_fe'*
|
t_fe enable focus-event tracking *t_fe* *'t_fe'*
|
||||||
|xterm-focus-event|
|
|xterm-focus-event|
|
||||||
|
t_fd disable focus-event tracking *t_fd* *'t_fd'*
|
||||||
|
|xterm-focus-event|
|
||||||
|
|
||||||
Some codes have a start, middle and end part. The start and end are defined
|
Some codes have a start, middle and end part. The start and end are defined
|
||||||
by the termcap option, the middle part is text.
|
by the termcap option, the middle part is text.
|
||||||
@@ -559,6 +590,11 @@ Focus event tracking is disabled by a 't_fd' sequence when exiting "raw" mode.
|
|||||||
If you would like to disable this feature, add the following to your .vimrc:
|
If you would like to disable this feature, add the following to your .vimrc:
|
||||||
`set t_fd=`
|
`set t_fd=`
|
||||||
`set t_fe=`
|
`set t_fe=`
|
||||||
|
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"
|
||||||
|
If this causes garbage to show when Vim starts up then it doesn't work.
|
||||||
|
|
||||||
*termcap-colors*
|
*termcap-colors*
|
||||||
Note about colors: The 't_Co' option tells Vim the number of colors available.
|
Note about colors: The 't_Co' option tells Vim the number of colors available.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*terminal.txt* For Vim version 8.2. Last change: 2021 Feb 13
|
*terminal.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
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
|
To use a different color the Terminal highlight group can be used, for
|
||||||
example: >
|
example: >
|
||||||
hi Terminal ctermbg=lightgrey ctermfg=blue guibg=lightgrey guifg=blue
|
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"
|
Instead of Terminal another group can be specified with the "term_highlight"
|
||||||
option for `term_start()`.
|
option for `term_start()`.
|
||||||
|
|
||||||
@@ -752,18 +749,6 @@ term_sendkeys({buf}, {keys}) *term_sendkeys()*
|
|||||||
GetBufnr()->term_sendkeys(keys)
|
GetBufnr()->term_sendkeys(keys)
|
||||||
|
|
||||||
|
|
||||||
term_setapi({buf}, {expr}) *term_setapi()*
|
|
||||||
Set the function name prefix to be used for the |terminal-api|
|
|
||||||
function in terminal {buf}. For example: >
|
|
||||||
:call term_setapi(buf, "Myapi_")
|
|
||||||
:call term_setapi(buf, "")
|
|
||||||
<
|
|
||||||
The default is "Tapi_". When {expr} is an empty string then
|
|
||||||
no |terminal-api| function can be used for {buf}.
|
|
||||||
|
|
||||||
When used as a method the base is used for {buf}: >
|
|
||||||
GetBufnr()->term_setapi({expr})
|
|
||||||
|
|
||||||
term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
||||||
Set the ANSI color palette used by terminal {buf}.
|
Set the ANSI color palette used by terminal {buf}.
|
||||||
{colors} must be a List of 16 valid color names or hexadecimal
|
{colors} must be a List of 16 valid color names or hexadecimal
|
||||||
@@ -799,6 +784,20 @@ term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
|||||||
< {only available with GUI enabled and/or the |+termguicolors|
|
< {only available with GUI enabled and/or the |+termguicolors|
|
||||||
feature}
|
feature}
|
||||||
|
|
||||||
|
|
||||||
|
term_setapi({buf}, {expr}) *term_setapi()*
|
||||||
|
Set the function name prefix to be used for the |terminal-api|
|
||||||
|
function in terminal {buf}. For example: >
|
||||||
|
:call term_setapi(buf, "Myapi_")
|
||||||
|
:call term_setapi(buf, "")
|
||||||
|
<
|
||||||
|
The default is "Tapi_". When {expr} is an empty string then
|
||||||
|
no |terminal-api| function can be used for {buf}.
|
||||||
|
|
||||||
|
When used as a method the base is used for {buf}: >
|
||||||
|
GetBufnr()->term_setapi({expr})
|
||||||
|
|
||||||
|
|
||||||
term_setkill({buf}, {how}) *term_setkill()*
|
term_setkill({buf}, {how}) *term_setkill()*
|
||||||
When exiting Vim or trying to close the terminal window in
|
When exiting Vim or trying to close the terminal window in
|
||||||
another way, {how} defines whether the job in the terminal can
|
another way, {how} defines whether the job in the terminal can
|
||||||
@@ -1352,6 +1351,33 @@ Other commands ~
|
|||||||
*:Asm* jump to the window with the disassembly, create it if there
|
*:Asm* jump to the window with the disassembly, create it if there
|
||||||
isn't one
|
isn't one
|
||||||
|
|
||||||
|
Events ~
|
||||||
|
*termdebug-events*
|
||||||
|
Four autocommands can be used: >
|
||||||
|
au User TermdebugStartPre echomsg 'debugging starting'
|
||||||
|
au User TermdebugStartPost echomsg 'debugging started'
|
||||||
|
au User TermdebugStopPre echomsg 'debugging stopping'
|
||||||
|
au User TermdebugStopPost echomsg 'debugging stopped'
|
||||||
|
<
|
||||||
|
*TermdebugStartPre*
|
||||||
|
TermdebugStartPre Before starting debugging.
|
||||||
|
Not triggered if the debugger is already
|
||||||
|
running or |g:termdebugger| cannot be
|
||||||
|
executed.
|
||||||
|
*TermdebugStartPost*
|
||||||
|
TermdebugStartPost After debugging has initialized.
|
||||||
|
If a "!" bang is passed to `:Termdebug` or
|
||||||
|
`:TermdebugCommand` the event is triggered
|
||||||
|
before running the provided command in gdb.
|
||||||
|
*TermdebugStopPre*
|
||||||
|
TermdebugStopPre Before debugging ends, when gdb is terminated,
|
||||||
|
most likely after issuing a "quit" command in
|
||||||
|
the gdb window.
|
||||||
|
*TermdebugStopPost*
|
||||||
|
TermdebugStopPost After debugging has ended, gdb-related windows
|
||||||
|
are closed, debug buffers wiped out and
|
||||||
|
the state before the debugging was restored.
|
||||||
|
|
||||||
|
|
||||||
Prompt mode ~
|
Prompt mode ~
|
||||||
*termdebug-prompt*
|
*termdebug-prompt*
|
||||||
@@ -1396,11 +1422,11 @@ communication channel.
|
|||||||
|
|
||||||
Customizing ~
|
Customizing ~
|
||||||
|
|
||||||
GDB command *termdebug-customizing*
|
GDB command *termdebug-customizing*
|
||||||
|
*g:termdebugger*
|
||||||
To change the name of the gdb command, set the "termdebugger" variable before
|
To change the name of the gdb command, set the "g:termdebugger" variable before
|
||||||
invoking `:Termdebug`: >
|
invoking `:Termdebug`: >
|
||||||
let termdebugger = "mygdb"
|
let g:termdebugger = "mygdb"
|
||||||
< *gdb-version*
|
< *gdb-version*
|
||||||
Only debuggers fully compatible with gdb will work. Vim uses the GDB/MI
|
Only debuggers fully compatible with gdb will work. Vim uses the GDB/MI
|
||||||
interface. The "new-ui" command requires gdb version 7.12 or later. if you
|
interface. The "new-ui" command requires gdb version 7.12 or later. if you
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*testing.txt* For Vim version 8.2. Last change: 2021 Apr 02
|
*testing.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -46,6 +46,7 @@ test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetAllocId()->test_alloc_fail()
|
GetAllocId()->test_alloc_fail()
|
||||||
|
|
||||||
|
|
||||||
test_autochdir() *test_autochdir()*
|
test_autochdir() *test_autochdir()*
|
||||||
Set a flag to enable the effect of 'autochdir' before Vim
|
Set a flag to enable the effect of 'autochdir' before Vim
|
||||||
startup has finished.
|
startup has finished.
|
||||||
@@ -59,6 +60,7 @@ test_feedinput({string}) *test_feedinput()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetText()->test_feedinput()
|
GetText()->test_feedinput()
|
||||||
|
|
||||||
|
|
||||||
test_garbagecollect_now() *test_garbagecollect_now()*
|
test_garbagecollect_now() *test_garbagecollect_now()*
|
||||||
Like garbagecollect(), but executed right away. This must
|
Like garbagecollect(), but executed right away. This must
|
||||||
only be called directly to avoid any structure to exist
|
only be called directly to avoid any structure to exist
|
||||||
@@ -78,6 +80,46 @@ test_getvalue({name}) *test_getvalue()*
|
|||||||
|
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetName()->test_getvalue()
|
GetName()->test_getvalue()
|
||||||
|
<
|
||||||
|
*test_gui_drop_files()*
|
||||||
|
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
|
||||||
|
|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
|
||||||
|
information.
|
||||||
|
|
||||||
|
*test_gui_mouse_event()*
|
||||||
|
test_gui_mouse_event({button}, {row}, {col}, {multiclick}, {modifiers})
|
||||||
|
Inject a mouse button click event. This function only works
|
||||||
|
when the GUI is running.
|
||||||
|
The supported values for {button} are:
|
||||||
|
0 right mouse button
|
||||||
|
1 middle mouse button
|
||||||
|
2 left mouse button
|
||||||
|
3 mouse button release
|
||||||
|
4 scroll wheel down
|
||||||
|
5 scroll wheel up
|
||||||
|
6 scroll wheel left
|
||||||
|
7 scroll wheel right
|
||||||
|
{row} and {col} specify the location of the mouse click. The
|
||||||
|
first row of the Vim window is 1 and the last row is 'lines'.
|
||||||
|
The maximum value of {col} is 'columns'.
|
||||||
|
To inject a multiclick event, set {multiclick} to 1.
|
||||||
|
The supported values for {modifiers} are:
|
||||||
|
4 shift is pressed
|
||||||
|
8 alt is pressed
|
||||||
|
16 ctrl is pressed
|
||||||
|
After injecting the mouse event you probably should call
|
||||||
|
|feedkeys()| to have them processed, e.g.: >
|
||||||
|
call feedkeys("y", 'Lx!')
|
||||||
|
|
||||||
|
|
||||||
test_ignore_error({expr}) *test_ignore_error()*
|
test_ignore_error({expr}) *test_ignore_error()*
|
||||||
Ignore any error containing {expr}. A normal message is given
|
Ignore any error containing {expr}. A normal message is given
|
||||||
@@ -92,6 +134,7 @@ test_ignore_error({expr}) *test_ignore_error()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetErrorText()->test_ignore_error()
|
GetErrorText()->test_ignore_error()
|
||||||
|
|
||||||
|
|
||||||
test_null_blob() *test_null_blob()*
|
test_null_blob() *test_null_blob()*
|
||||||
Return a |Blob| that is null. Only useful for testing.
|
Return a |Blob| that is null. Only useful for testing.
|
||||||
|
|
||||||
@@ -126,13 +169,6 @@ test_null_string() *test_null_string()*
|
|||||||
Return a |String| that is null. Only useful for testing.
|
Return a |String| that is null. Only useful for testing.
|
||||||
|
|
||||||
|
|
||||||
test_unknown() *test_unknown()*
|
|
||||||
Return a value with unknown type. Only useful for testing.
|
|
||||||
|
|
||||||
test_void() *test_void()*
|
|
||||||
Return a value with void type. Only useful for testing.
|
|
||||||
|
|
||||||
|
|
||||||
test_option_not_set({name}) *test_option_not_set()*
|
test_option_not_set({name}) *test_option_not_set()*
|
||||||
Reset the flag that indicates option {name} was set. Thus it
|
Reset the flag that indicates option {name} was set. Thus it
|
||||||
looks like it still has the default value. Use like this: >
|
looks like it still has the default value. Use like this: >
|
||||||
@@ -184,6 +220,7 @@ test_override({name}, {val}) *test_override()*
|
|||||||
< Can also be used as a |method|: >
|
< Can also be used as a |method|: >
|
||||||
GetOverrideVal()-> test_override('starting')
|
GetOverrideVal()-> test_override('starting')
|
||||||
|
|
||||||
|
|
||||||
test_refcount({expr}) *test_refcount()*
|
test_refcount({expr}) *test_refcount()*
|
||||||
Return the reference count of {expr}. When {expr} is of a
|
Return the reference count of {expr}. When {expr} is of a
|
||||||
type that does not have a reference count, returns -1. Only
|
type that does not have a reference count, returns -1. Only
|
||||||
@@ -213,6 +250,7 @@ test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetValue()->test_scrollbar('right', 0)
|
GetValue()->test_scrollbar('right', 0)
|
||||||
|
|
||||||
|
|
||||||
test_setmouse({row}, {col}) *test_setmouse()*
|
test_setmouse({row}, {col}) *test_setmouse()*
|
||||||
Set the mouse position to be used for the next mouse action.
|
Set the mouse position to be used for the next mouse action.
|
||||||
{row} and {col} are one based.
|
{row} and {col} are one based.
|
||||||
@@ -220,6 +258,7 @@ test_setmouse({row}, {col}) *test_setmouse()*
|
|||||||
call test_setmouse(4, 20)
|
call test_setmouse(4, 20)
|
||||||
call feedkeys("\<LeftMouse>", "xt")
|
call feedkeys("\<LeftMouse>", "xt")
|
||||||
|
|
||||||
|
|
||||||
test_settime({expr}) *test_settime()*
|
test_settime({expr}) *test_settime()*
|
||||||
Set the time Vim uses internally. Currently only used for
|
Set the time Vim uses internally. Currently only used for
|
||||||
timestamps in the history, as they are used in viminfo, and
|
timestamps in the history, as they are used in viminfo, and
|
||||||
@@ -232,10 +271,19 @@ test_settime({expr}) *test_settime()*
|
|||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetTime()->test_settime()
|
GetTime()->test_settime()
|
||||||
|
|
||||||
|
|
||||||
test_srand_seed([seed]) *test_srand_seed()*
|
test_srand_seed([seed]) *test_srand_seed()*
|
||||||
When [seed] is given this sets the seed value used by
|
When [seed] is given this sets the seed value used by
|
||||||
`srand()`. When omitted the test seed is removed.
|
`srand()`. When omitted the test seed is removed.
|
||||||
|
|
||||||
|
|
||||||
|
test_unknown() *test_unknown()*
|
||||||
|
Return a value with unknown type. Only useful for testing.
|
||||||
|
|
||||||
|
|
||||||
|
test_void() *test_void()*
|
||||||
|
Return a value with void type. Only useful for testing.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Assert functions *assert-functions-details*
|
3. Assert functions *assert-functions-details*
|
||||||
|
|
||||||
@@ -406,7 +454,7 @@ assert_notmatch({pattern}, {actual} [, {msg}])
|
|||||||
|
|
||||||
|
|
||||||
assert_report({msg}) *assert_report()*
|
assert_report({msg}) *assert_report()*
|
||||||
Report a test failure directly, using {msg}.
|
Report a test failure directly, using String {msg}.
|
||||||
Always returns one.
|
Always returns one.
|
||||||
|
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*textprop.txt* For Vim version 8.2. Last change: 2021 May 26
|
*textprop.txt* For Vim version 8.2. Last change: 2021 Aug 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -108,6 +108,9 @@ prop_type_list([{props}]) get list of property types
|
|||||||
Manipulating text properties:
|
Manipulating text properties:
|
||||||
|
|
||||||
prop_add({lnum}, {col}, {props}) add a text property
|
prop_add({lnum}, {col}, {props}) add a text property
|
||||||
|
prop_add_list({props}, [[{lnum}, {col}, {end-lnum}, {end-col}], ...])
|
||||||
|
add a text property at multiple
|
||||||
|
positions.
|
||||||
prop_clear({lnum} [, {lnum-end} [, {bufnr}]])
|
prop_clear({lnum} [, {lnum-end} [, {bufnr}]])
|
||||||
remove all text properties
|
remove all text properties
|
||||||
prop_find({props} [, {direction}]) search for a text property
|
prop_find({props} [, {direction}]) search for a text property
|
||||||
@@ -157,6 +160,35 @@ prop_add({lnum}, {col}, {props})
|
|||||||
|
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetLnum()->prop_add(col, props)
|
GetLnum()->prop_add(col, props)
|
||||||
|
<
|
||||||
|
*prop_add_list()*
|
||||||
|
prop_add_list({props}, [[{lnum}, {col}, {end-lnum}, {end-col}], ...])
|
||||||
|
Similar to prop_add(), but attaches a text property at
|
||||||
|
multiple positions in a buffer.
|
||||||
|
|
||||||
|
{props} is a dictionary with these fields:
|
||||||
|
bufnr buffer to add the property to; when omitted
|
||||||
|
the current buffer is used
|
||||||
|
id user defined ID for the property; must be a
|
||||||
|
number; when omitted zero is used
|
||||||
|
type name of the text property type
|
||||||
|
All fields except "type" are optional.
|
||||||
|
|
||||||
|
The second argument is a List of Lists where each list
|
||||||
|
specifies the starting and ending position of the text. The
|
||||||
|
first two items {lnum} and {col} specify the starting position
|
||||||
|
of the text where the property will be attached and the last
|
||||||
|
two items {end-lnum} and {end-col} specify the position just
|
||||||
|
after the text.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
call prop_add_list(#{type: 'MyProp', id: 2},
|
||||||
|
\ [[1, 4, 1, 7],
|
||||||
|
\ [1, 15, 1, 20],
|
||||||
|
\ [2, 30, 3, 30]]
|
||||||
|
|
||||||
|
Can also be used as a |method|: >
|
||||||
|
GetProp()->prop_add_list([[1, 1, 1, 2], [1, 4, 1, 8]])
|
||||||
|
|
||||||
|
|
||||||
prop_clear({lnum} [, {lnum-end} [, {props}]]) *prop_clear()*
|
prop_clear({lnum} [, {lnum-end} [, {props}]]) *prop_clear()*
|
||||||
@@ -211,6 +243,8 @@ prop_list({lnum} [, {props}]) *prop_list()*
|
|||||||
id property ID
|
id property ID
|
||||||
type name of the property type, omitted if
|
type name of the property type, omitted if
|
||||||
the type was deleted
|
the type was deleted
|
||||||
|
type_bufnr buffer number for which this type was defined;
|
||||||
|
0 if the type is global
|
||||||
start when TRUE property starts in this line
|
start when TRUE property starts in this line
|
||||||
end when TRUE property ends in this line
|
end when TRUE property ends in this line
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 8.2. Last change: 2021 May 28
|
*todo.txt* For Vim version 8.2. Last change: 2021 Oct 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -38,31 +38,12 @@ browser use: https://github.com/vim/vim/issues/1234
|
|||||||
*known-bugs*
|
*known-bugs*
|
||||||
-------------------- Known bugs and current work -----------------------
|
-------------------- Known bugs and current work -----------------------
|
||||||
|
|
||||||
Geen memory leak?
|
|
||||||
|
|
||||||
Crash using outer var from nested lambda:
|
|
||||||
vim9script
|
|
||||||
def F(text: string): func(string): func(string): string
|
|
||||||
return (arg: string): func(string): string => ((sep: string): string => {
|
|
||||||
return text .. ' ' .. arg
|
|
||||||
})
|
|
||||||
enddef
|
|
||||||
|
|
||||||
echo F('hello')(' ')('there')
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Vim9 - Make everything work:
|
Vim9 - Make everything work:
|
||||||
- function returning nothing should return void instead of zero
|
- "filter #pat# ls" should work, #pat# is not a comment
|
||||||
- compile "expr" and "call" expression of a channel in channel_exe_cmd()?
|
vim9script
|
||||||
- Need some solution for dict function. Can we implement part of classes?
|
edit foobar
|
||||||
- A lambda without {} does not require a return type, using { return x } does.
|
filter #foobar# ls
|
||||||
That's unexpected, since the arguments are not required to have a type.
|
- Check TODO items in vim9compile.c and vim9execute.c
|
||||||
alt 1: not require a return type, figure it out from the common type of all
|
|
||||||
the return statements found
|
|
||||||
alt 2: also require argument types
|
|
||||||
- Using "windo echo expr" does not accept a line break inside "expr" (in a
|
|
||||||
:def function and at script level in a not executed block). #7681
|
|
||||||
- use CheckLegacyAndVim9Success(lines) in many more places
|
- use CheckLegacyAndVim9Success(lines) in many more places
|
||||||
- For builtin functions using tv_get_string*() use check_for_string() to be
|
- For builtin functions using tv_get_string*() use check_for_string() to be
|
||||||
more strict about the argument type (not a bool).
|
more strict about the argument type (not a bool).
|
||||||
@@ -70,25 +51,21 @@ Vim9 - Make everything work:
|
|||||||
- Check many more builtin function arguments at compile time.
|
- Check many more builtin function arguments at compile time.
|
||||||
map() could check that the return type of the function argument matches
|
map() could check that the return type of the function argument matches
|
||||||
the type of the list or dict member. (#8092)
|
the type of the list or dict member. (#8092)
|
||||||
- Allow for using an autoload function name without quotes. It is then loaded
|
Same for other functions, such as searchpair().
|
||||||
(and compiled) right away. #8124
|
|
||||||
- Test more expressions in legacy and Vim9 script, using
|
|
||||||
CheckLegacyAndVim9Success()
|
|
||||||
- Test try/catch and throw better, also nested.
|
- Test try/catch and throw better, also nested.
|
||||||
Test that return inside try/finally jumps to finally and then returns.
|
Test that return inside try/finally jumps to finally and then returns.
|
||||||
- Test that a function defined inside a :def function is local to that
|
- Test that a function defined inside a :def function is local to that
|
||||||
function, g: functions can be defined and script-local functions cannot be
|
function, g: functions can be defined and script-local functions cannot be
|
||||||
defined.
|
defined.
|
||||||
- Make debugging work - at least per function. Need to recompile a function
|
- Unexpected error message when using "var x: any | x.key = 9", because "x" is
|
||||||
to step through it line-by-line? Evaluate the stack and variables on the
|
given the type number. Can we use VAR_ANY?
|
||||||
stack?
|
- Check performance with callgrind and kcachegrind.
|
||||||
- Reserve command for future use: :type, :class, :enum
|
|
||||||
|
|
||||||
Once Vim9 is stable:
|
Once Vim9 is stable:
|
||||||
|
- Add the "vim9script" feature, can use has('vim9script')
|
||||||
- Change the help to prefer Vim9 syntax where appropriate
|
- Change the help to prefer Vim9 syntax where appropriate
|
||||||
- Add all the error numbers in a good place in documentation.
|
- Add all the error numbers in a good place in documentation.
|
||||||
- In the generic eval docs, point out the Vim9 syntax where it differs.
|
- In the generic eval docs, point out the Vim9 syntax where it differs.
|
||||||
- Add the "vim9script" feature, can use has('vim9script')
|
|
||||||
- Use Vim9 for runtime files.
|
- Use Vim9 for runtime files.
|
||||||
PR #7497 for autoload/ccomplete.vim
|
PR #7497 for autoload/ccomplete.vim
|
||||||
|
|
||||||
@@ -98,15 +75,17 @@ Further Vim9 improvements, possibly after launch:
|
|||||||
'foldexpr', 'foldtext', 'printexpr', 'diffexpr', 'patchexpr', 'charconvert',
|
'foldexpr', 'foldtext', 'printexpr', 'diffexpr', 'patchexpr', 'charconvert',
|
||||||
'balloonexpr', 'includeexpr', 'indentexpr', 'formatexpr'.
|
'balloonexpr', 'includeexpr', 'indentexpr', 'formatexpr'.
|
||||||
Give an error if compilation fails. (#7625)
|
Give an error if compilation fails. (#7625)
|
||||||
|
Alternatively: Detect a compiled function call and skip the expression
|
||||||
|
evaluation.
|
||||||
Use the location where the option was set for deciding whether it's to be
|
Use the location where the option was set for deciding whether it's to be
|
||||||
evaluated in Vim9 script context.
|
evaluated in Vim9 script context.
|
||||||
- implement :type, import type declaration.
|
- Handle command that is only a range more efficient than calling ISN_EXEC
|
||||||
- implement enum, import enum.
|
- implement :type, "import type"
|
||||||
- Future work: See |vim9-classes|
|
- implement enum, "import enum".
|
||||||
|
- implement class and interface: See |vim9-classes|
|
||||||
- For range: make table of first ASCII character with flag to quickly check if
|
- For range: make table of first ASCII character with flag to quickly check if
|
||||||
it can be a Vim9 command. E.g. "+" can, but "." can't.
|
it can be a Vim9 command. E.g. "+" can, but "." can't.
|
||||||
- compile get_lambda_tv() in popup_add_timeout()
|
- Inline call to map() and filter(), better type checking.
|
||||||
- inline call to map() and filter()
|
|
||||||
- Make accessing varargs faster: arg[expr]
|
- Make accessing varargs faster: arg[expr]
|
||||||
EVAL expr
|
EVAL expr
|
||||||
LOADVARARG (varargs idx)
|
LOADVARARG (varargs idx)
|
||||||
@@ -241,10 +220,16 @@ Terminal emulator window:
|
|||||||
|
|
||||||
Include patch #6290: recognize shell directory change.
|
Include patch #6290: recognize shell directory change.
|
||||||
|
|
||||||
MS-Windows GUI: default 'encoding' to "utf-8" ? (#8221)
|
When using 'cryptmethod' xchaha20 the undo file is not encrypted.
|
||||||
Add #ifdef MSWIN before enc_locale() in set_init_1().
|
Need to handle extra bytes.
|
||||||
Or just always for MS-Windows? Conversion to 'termencoding' should always
|
|
||||||
work?
|
Test_communicate_ipv6(): is flaky on many systems
|
||||||
|
Fails in line 64 of Ch_communicate, no exception is thrown.
|
||||||
|
|
||||||
|
Patch for Template string: #4634
|
||||||
|
Have another look at the implementation.
|
||||||
|
|
||||||
|
Rename getdigraphlist -> digraph_getlist() etc.
|
||||||
|
|
||||||
Valgrind reports memory leaks in test_options.
|
Valgrind reports memory leaks in test_options.
|
||||||
Valgrind reports overlapping memcpy in
|
Valgrind reports overlapping memcpy in
|
||||||
@@ -256,7 +241,6 @@ Valgrind reports overlapping memcpy in
|
|||||||
test_normal
|
test_normal
|
||||||
test_popupwin.35 et al.
|
test_popupwin.35 et al.
|
||||||
test_search_stat
|
test_search_stat
|
||||||
Using uninitialized value in test_crypt (can't explain why).
|
|
||||||
Memory leak in test_debugger
|
Memory leak in test_debugger
|
||||||
Memory leak in test_paste, using XtOpenDisplay several times
|
Memory leak in test_paste, using XtOpenDisplay several times
|
||||||
OLD:
|
OLD:
|
||||||
@@ -265,16 +249,21 @@ Memory leak in test_alot with pyeval() (allocating partial)
|
|||||||
Memory leak in test_alot with expand()
|
Memory leak in test_alot with expand()
|
||||||
Memory leaks in test_channel? (or is it because of fork())
|
Memory leaks in test_channel? (or is it because of fork())
|
||||||
|
|
||||||
|
Idea: when typing ":e /some/dir/" and "dir" does not exist, highlight in red.
|
||||||
|
|
||||||
":set &shellpipe" and ":set &shellredir" should use the logic from
|
":set &shellpipe" and ":set &shellredir" should use the logic from
|
||||||
initialization to figure out the default value from 'shell'. Add a test for
|
initialization to figure out the default value from 'shell'. Add a test for
|
||||||
this.
|
this.
|
||||||
|
|
||||||
|
MS-Windows: did path modifier :p:8 stop working? #8600
|
||||||
|
|
||||||
test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows.
|
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)
|
Mapping with partial match not executed properly in GTK. (Ingo Karkat, #7082)
|
||||||
|
|
||||||
Patch for Template string: #4634
|
Problem that a previous silent ":throw" causes a following try/catch not to
|
||||||
Have another look at the implementation.
|
work. (ZyX, 2013 Sep 28) With examples: (Malcolm Rowe, 2015 Dec 24)
|
||||||
|
Also see #8487 for an example.
|
||||||
|
|
||||||
Patch to implement the vimtutor with a plugin: #6414
|
Patch to implement the vimtutor with a plugin: #6414
|
||||||
Was originally written by Felipe Morales.
|
Was originally written by Felipe Morales.
|
||||||
@@ -292,6 +281,9 @@ Remove SPACE_IN_FILENAME ? It is only used for completion.
|
|||||||
Searching for \%'> does not find anything when using line Visual selection.
|
Searching for \%'> does not find anything when using line Visual selection.
|
||||||
Probably because it's using MAXCOL. #8238
|
Probably because it's using MAXCOL. #8238
|
||||||
|
|
||||||
|
Make "g>" and "g<" in Visual mode move the text right or left.
|
||||||
|
Also for a block selection. #8558
|
||||||
|
|
||||||
Add optional argument to virtcol() that specifies "start", "cursor" or "end"
|
Add optional argument to virtcol() that specifies "start", "cursor" or "end"
|
||||||
to tell which value from getvvcol() should be used. (#7964)
|
to tell which value from getvvcol() should be used. (#7964)
|
||||||
Value returned by virtcol() changes depending on how lines wrap. This is
|
Value returned by virtcol() changes depending on how lines wrap. This is
|
||||||
@@ -300,10 +292,13 @@ inconsistent with the documentation.
|
|||||||
Making breakat support multibyte characters (Yasuhiro Matsumoto, #6598)
|
Making breakat support multibyte characters (Yasuhiro Matsumoto, #6598)
|
||||||
Scroll doesn't work correctly, why?
|
Scroll doesn't work correctly, why?
|
||||||
|
|
||||||
|
glob() and globfile() do not always honor 'wildignorecase'. #8350
|
||||||
|
globpath() does not use 'wildignorecase' at all?
|
||||||
|
|
||||||
Add 'termguiattr' option, use "gui=" attributes in the terminal? Would work
|
Add 'termguiattr' option, use "gui=" attributes in the terminal? Would work
|
||||||
with 'termguicolors'. #1740
|
with 'termguicolors'. #1740
|
||||||
|
|
||||||
Patch for blockwise paste reporting changes: #6660.
|
Patch for blockwise paste reporting changes: #6660. Asked for a PR.
|
||||||
|
|
||||||
Patch to make fillchars global-local. (#5206)
|
Patch to make fillchars global-local. (#5206)
|
||||||
|
|
||||||
@@ -344,6 +339,12 @@ Should also work without any group:
|
|||||||
:echo matchstr('aaa bbb', '.\{-1,}\>\|.*')
|
:echo matchstr('aaa bbb', '.\{-1,}\>\|.*')
|
||||||
aaa bbb (should be aaa)
|
aaa bbb (should be aaa)
|
||||||
|
|
||||||
|
Should add a match/str/list/pos method that also returns the test and position
|
||||||
|
of submatches. #8355
|
||||||
|
|
||||||
|
Syntax highlight for a region does not work with a "nextgroup" if the start
|
||||||
|
match is empty. #8449
|
||||||
|
|
||||||
Check out PR #543 (Roland Puntaier).
|
Check out PR #543 (Roland Puntaier).
|
||||||
Patch for multibyte characters in langmap and applying a mapping on them.
|
Patch for multibyte characters in langmap and applying a mapping on them.
|
||||||
(Christian Brabandt, 2015 Jun 12, update July 25)
|
(Christian Brabandt, 2015 Jun 12, update July 25)
|
||||||
@@ -366,9 +367,6 @@ autocommands for the buffer lifecycle:
|
|||||||
BufIsRenamed (after buffer ID gets another name)
|
BufIsRenamed (after buffer ID gets another name)
|
||||||
The buffer list and windows are locked, no changes possible
|
The buffer list and windows are locked, no changes possible
|
||||||
|
|
||||||
Add a ModeChanged autocommand that has an argument indicating the old and new
|
|
||||||
mode, as what's returned from mode(). Also used for switching Terminal mode.
|
|
||||||
|
|
||||||
Matchparen doesn't remove highlight after undo. (#7054)
|
Matchparen doesn't remove highlight after undo. (#7054)
|
||||||
Is OK when syntax HL is active.
|
Is OK when syntax HL is active.
|
||||||
|
|
||||||
@@ -380,6 +378,10 @@ work.
|
|||||||
Using "au!" after "filetype on" is a bit slow. Can the matching of
|
Using "au!" after "filetype on" is a bit slow. Can the matching of
|
||||||
autocommands be made faster? (#7056)
|
autocommands be made faster? (#7056)
|
||||||
|
|
||||||
|
Append in Visual block mode inserts the wrong character.
|
||||||
|
Test_visual_block_mode() already has the proper check, which is commented out.
|
||||||
|
(#8288)
|
||||||
|
|
||||||
Add the <=> (spaceship) operator and "cond ?< expr ?= expr ?> expr"
|
Add the <=> (spaceship) operator and "cond ?< expr ?= expr ?> expr"
|
||||||
replace this:
|
replace this:
|
||||||
let left = GetLeftFunc()
|
let left = GetLeftFunc()
|
||||||
@@ -426,6 +428,9 @@ undo result wrong: Masato Nishihata, #4798
|
|||||||
After recovering from a swap file the undofile should not be used, it causes
|
After recovering from a swap file the undofile should not be used, it causes
|
||||||
corruption. (#6631)
|
corruption. (#6631)
|
||||||
|
|
||||||
|
When the computer crashes while writing the undofile, the contents may be
|
||||||
|
lost. Write to a temp file, fsync and rename. (#8879)
|
||||||
|
|
||||||
When 'lazyredraw' is set sometimes the title is not updated.
|
When 'lazyredraw' is set sometimes the title is not updated.
|
||||||
(Jason Franklin, 2020 Feb 3) Looks like a race condition.
|
(Jason Franklin, 2020 Feb 3) Looks like a race condition.
|
||||||
|
|
||||||
@@ -623,24 +628,27 @@ Window size changes after closing a tab. (#4741)
|
|||||||
|
|
||||||
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
|
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
|
||||||
|
|
||||||
Lifepillar: Updated/cleaned up color schemes:
|
Color schemes:
|
||||||
https://github.com/lifepillar/vim8-colorschemes.
|
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
|
||||||
Include a few color schemes, based on popularity:
|
reach out if you want to lend a hand.
|
||||||
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
- 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
|
http://vimawesome.com/?q=tag:color-scheme
|
||||||
Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
- Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||||
- monokai - Xia Crusoe (2017 Aug 4)
|
- monokai - Xia Crusoe (2017 Aug 4)
|
||||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||||
Lifepillar, 2018 Jan 22, #2573)
|
Lifepillar, 2018 Jan 22, #2573)
|
||||||
- janah - Marco Hinz (2017 Aug 4)
|
- janah - Marco Hinz (2017 Aug 4)
|
||||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||||
Suggested by Hiroki Kokubun:
|
- Suggested by Hiroki Kokubun:
|
||||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||||
Include solarized color scheme?, it does not support termguicolors.
|
- Include solarized color scheme?, it does not support termguicolors.
|
||||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||||
|
|
||||||
Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
|
Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
|
||||||
Mar 5)
|
Mar 5)
|
||||||
@@ -717,9 +725,6 @@ tab page. (Ingo Karkat, #4324)
|
|||||||
This modeline throws unexpected errors: (#4165)
|
This modeline throws unexpected errors: (#4165)
|
||||||
vim: syn=nosyntax
|
vim: syn=nosyntax
|
||||||
|
|
||||||
":doau SomeEvent" gives "No matching autocommands". This message doesn't give
|
|
||||||
a hint about how to fix it. (#4300)
|
|
||||||
|
|
||||||
Make balloon_show() work outside of 'balloonexpr'? Users expect it to work:
|
Make balloon_show() work outside of 'balloonexpr'? Users expect it to work:
|
||||||
#2948. (related to #1512?)
|
#2948. (related to #1512?)
|
||||||
Also see #2352, want better control over balloon, perhaps set the position.
|
Also see #2352, want better control over balloon, perhaps set the position.
|
||||||
@@ -1039,6 +1044,9 @@ matchit hasn't been maintained for a long time. #955.
|
|||||||
|
|
||||||
Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
|
Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
|
||||||
|
|
||||||
|
'delcombine' does not work for the command line. (Tony Mechelynck, 2009 Jul
|
||||||
|
20)
|
||||||
|
|
||||||
MS-Windows: buffer completion doesn't work when using backslash (or slash)
|
MS-Windows: buffer completion doesn't work when using backslash (or slash)
|
||||||
for a path separator. (xtal8, #2201)
|
for a path separator. (xtal8, #2201)
|
||||||
|
|
||||||
@@ -1428,9 +1436,6 @@ Appveyor build with self-installing executable, includes getting most
|
|||||||
interfaces: https://github.com/k-takata/vim/tree/chrisbra-appveyor-build
|
interfaces: https://github.com/k-takata/vim/tree/chrisbra-appveyor-build
|
||||||
result: https://ci.appveyor.com/project/k-takata/vim/history
|
result: https://ci.appveyor.com/project/k-takata/vim/history
|
||||||
|
|
||||||
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)
|
|
||||||
|
|
||||||
Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
|
Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
|
||||||
|
|
||||||
Patch to make tests pass with EBCDIC. (Owen Leibman, 2016 Apr 10)
|
Patch to make tests pass with EBCDIC. (Owen Leibman, 2016 Apr 10)
|
||||||
@@ -2263,9 +2268,6 @@ Win32: Improved Makefile for MSVC. (Leonardo Valeri Manera, 2010 Aug 18)
|
|||||||
|
|
||||||
Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15)
|
Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15)
|
||||||
|
|
||||||
Win32: Patch for enabling quick edit mode in console. (Craig Barkhouse, 2010
|
|
||||||
Sep 1)
|
|
||||||
|
|
||||||
Win32: Patch for using .png files for icons. (Charles Peacech, 2012 Feb 5)
|
Win32: Patch for using .png files for icons. (Charles Peacech, 2012 Feb 5)
|
||||||
|
|
||||||
Putting a Visual block while 'visualedit' is "all" does not leave the cursor
|
Putting a Visual block while 'visualedit' is "all" does not leave the cursor
|
||||||
@@ -2306,9 +2308,6 @@ for GTK clipboard. Avoid requirement for iconv.
|
|||||||
|
|
||||||
Now that colnr_T is int instead of unsigned, more type casts can be removed.
|
Now that colnr_T is int instead of unsigned, more type casts can be removed.
|
||||||
|
|
||||||
'delcombine' does not work for the command line. (Tony Mechelynck, 2009 Jul
|
|
||||||
20)
|
|
||||||
|
|
||||||
Don't load macmap.vim on startup, turn it into a plugin. (Ron Aaron,
|
Don't load macmap.vim on startup, turn it into a plugin. (Ron Aaron,
|
||||||
2009 Apr 7) Reminder Apr 14.
|
2009 Apr 7) Reminder Apr 14.
|
||||||
|
|
||||||
@@ -3081,7 +3080,7 @@ Awaiting updated patches:
|
|||||||
7 When 'rightleft' is set, the search pattern should be displayed right
|
7 When 'rightleft' is set, the search pattern should be displayed right
|
||||||
to left as well? See patch of Dec 26. (Nadim Shaikli)
|
to left as well? See patch of Dec 26. (Nadim Shaikli)
|
||||||
8 Option to lock all used memory so that it doesn't get swapped to disk
|
8 Option to lock all used memory so that it doesn't get swapped to disk
|
||||||
(uncrypted). Patch by Jason Holt, 2003 May 23. Uses mlock.
|
(unencrypted). Patch by Jason Holt, 2003 May 23. Uses mlock.
|
||||||
7 Add ! register, for shell commands. (patch from Grenie)
|
7 Add ! register, for shell commands. (patch from Grenie)
|
||||||
8 In the gzip plugin, also recognize *.gz.orig, *.gz.bak, etc. Like it's
|
8 In the gzip plugin, also recognize *.gz.orig, *.gz.bak, etc. Like it's
|
||||||
done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1.
|
done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1.
|
||||||
@@ -4849,7 +4848,6 @@ Autocommands:
|
|||||||
command used dos fileformat. Same for 'fileencoding'.
|
command used dos fileformat. Same for 'fileencoding'.
|
||||||
- Add events to autocommands:
|
- Add events to autocommands:
|
||||||
Error - When an error happens
|
Error - When an error happens
|
||||||
ModeChange - after changing mode (before waiting for a char)
|
|
||||||
VimLeaveCheck - Before Vim decides to exit, so that it can be cancelled
|
VimLeaveCheck - Before Vim decides to exit, so that it can be cancelled
|
||||||
when exiting isn't a good idea.
|
when exiting isn't a good idea.
|
||||||
CursorHoldC - CursorHold while command-line editing
|
CursorHoldC - CursorHold while command-line editing
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_41.txt* For Vim version 8.2. Last change: 2021 Apr 19
|
*usr_41.txt* For Vim version 8.2. Last change: 2021 Sep 10
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -723,6 +723,10 @@ Floating point computation: *float-functions*
|
|||||||
isinf() check for infinity
|
isinf() check for infinity
|
||||||
isnan() check for not a number
|
isnan() check for not a number
|
||||||
|
|
||||||
|
Blob manipulation: *blob-functions*
|
||||||
|
blob2list() get a list of numbers from a blob
|
||||||
|
list2blob() get a blob from a list of numbers
|
||||||
|
|
||||||
Other computation: *bitwise-function*
|
Other computation: *bitwise-function*
|
||||||
and() bitwise AND
|
and() bitwise AND
|
||||||
invert() bitwise invert
|
invert() bitwise invert
|
||||||
@@ -994,6 +998,10 @@ Window size and position: *window-size-functions*
|
|||||||
winrestview() restore saved view of current window
|
winrestview() restore saved view of current window
|
||||||
|
|
||||||
Mappings and Menus: *mapping-functions*
|
Mappings and Menus: *mapping-functions*
|
||||||
|
digraph_get() get |digraph|
|
||||||
|
digraph_getlist() get all |digraph|s
|
||||||
|
digraph_set() register |digraph|
|
||||||
|
digraph_setlist() register multiple |digraph|s
|
||||||
hasmapto() check if a mapping exists
|
hasmapto() check if a mapping exists
|
||||||
mapcheck() check if a matching mapping exists
|
mapcheck() check if a matching mapping exists
|
||||||
maparg() get rhs of a mapping
|
maparg() get rhs of a mapping
|
||||||
@@ -1021,6 +1029,8 @@ Testing: *test-functions*
|
|||||||
test_garbagecollect_now() free memory right now
|
test_garbagecollect_now() free memory right now
|
||||||
test_garbagecollect_soon() set a flag to free memory soon
|
test_garbagecollect_soon() set a flag to free memory soon
|
||||||
test_getvalue() get value of an internal variable
|
test_getvalue() get value of an internal variable
|
||||||
|
test_gui_drop_files() drop file(s) in a window
|
||||||
|
test_gui_mouse_event() add a GUI mouse event to the input buffer
|
||||||
test_ignore_error() ignore a specific error message
|
test_ignore_error() ignore a specific error message
|
||||||
test_null_blob() return a null Blob
|
test_null_blob() return a null Blob
|
||||||
test_null_channel() return a null Channel
|
test_null_channel() return a null Channel
|
||||||
@@ -1155,6 +1165,7 @@ Prompt Buffer: *promptbuffer-functions*
|
|||||||
|
|
||||||
Text Properties: *text-property-functions*
|
Text Properties: *text-property-functions*
|
||||||
prop_add() attach a property at a position
|
prop_add() attach a property at a position
|
||||||
|
prop_add_list() attach a property at multiple positions
|
||||||
prop_clear() remove all properties from a line or lines
|
prop_clear() remove all properties from a line or lines
|
||||||
prop_find() search for a property
|
prop_find() search for a property
|
||||||
prop_list() return a list of all properties in a line
|
prop_list() return a list of all properties in a line
|
||||||
@@ -1176,6 +1187,7 @@ Various: *various-functions*
|
|||||||
state() get current busy state
|
state() get current busy state
|
||||||
visualmode() last visual mode used
|
visualmode() last visual mode used
|
||||||
exists() check if a variable, function, etc. exists
|
exists() check if a variable, function, etc. exists
|
||||||
|
exists_compiled() like exists() but check at compile time
|
||||||
has() check if a feature is supported in Vim
|
has() check if a feature is supported in Vim
|
||||||
changenr() return number of most recent change
|
changenr() return number of most recent change
|
||||||
cscope_connection() check if a cscope connection exists
|
cscope_connection() check if a cscope connection exists
|
||||||
@@ -1441,6 +1453,8 @@ is a List with arguments.
|
|||||||
Function references are most useful in combination with a Dictionary, as is
|
Function references are most useful in combination with a Dictionary, as is
|
||||||
explained in the next section.
|
explained in the next section.
|
||||||
|
|
||||||
|
More information about defining your own functions here: |user-functions|.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
*41.8* Lists and Dictionaries
|
*41.8* Lists and Dictionaries
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*various.txt* For Vim version 8.2. Last change: 2021 Mar 23
|
*various.txt* For Vim version 8.2. Last change: 2021 Sep 06
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -170,8 +170,13 @@ g8 Print the hex values of the bytes used in the
|
|||||||
If the mark is "=", a line of dashes is printed
|
If the mark is "=", a line of dashes is printed
|
||||||
around the current line.
|
around the current line.
|
||||||
|
|
||||||
:[range]z#[+-^.=][count] *:z#*
|
*:z!*
|
||||||
Like ":z", but number the lines.
|
:[range]z![+-^.=][count]
|
||||||
|
Like ":z", but when [count] is not specified, it
|
||||||
|
defaults to the Vim window height minus one.
|
||||||
|
|
||||||
|
:[range]z[!]#[+-^.=][count] *:z#*
|
||||||
|
Like ":z" or ":z!", but number the lines.
|
||||||
|
|
||||||
*:=*
|
*:=*
|
||||||
:= [flags] Print the last line number.
|
:= [flags] Print the last line number.
|
||||||
@@ -418,7 +423,7 @@ N *+multi_lang* non-English language support |multi-lang|
|
|||||||
m *+mzscheme* Mzscheme interface |mzscheme|
|
m *+mzscheme* Mzscheme interface |mzscheme|
|
||||||
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
||||||
m *+netbeans_intg* |netbeans|
|
m *+netbeans_intg* |netbeans|
|
||||||
*+num64* 64-bit Number support |Number|
|
*+num64* 64-bit Number support |Number|
|
||||||
Always enabled since 8.2.0271, use v:numbersize to
|
Always enabled since 8.2.0271, use v:numbersize to
|
||||||
check the actual size of a Number.
|
check the actual size of a Number.
|
||||||
m *+ole* Win32 GUI only: |ole-interface|
|
m *+ole* Win32 GUI only: |ole-interface|
|
||||||
@@ -444,6 +449,7 @@ m *+ruby/dyn* Ruby interface |ruby-dynamic| |/dyn|
|
|||||||
T *+scrollbind* |'scrollbind'|
|
T *+scrollbind* |'scrollbind'|
|
||||||
B *+signs* |:sign|
|
B *+signs* |:sign|
|
||||||
N *+smartindent* |'smartindent'|
|
N *+smartindent* |'smartindent'|
|
||||||
|
B *+sodium* compiled with libsodium for better encryption support
|
||||||
B *+sound* |sound_playevent()|, |sound_playfile()| functions, etc.
|
B *+sound* |sound_playevent()|, |sound_playfile()| functions, etc.
|
||||||
N *+spell* spell checking support, see |spell|
|
N *+spell* spell checking support, see |spell|
|
||||||
N *+startuptime* |--startuptime| argument
|
N *+startuptime* |--startuptime| argument
|
||||||
@@ -724,7 +730,7 @@ K Run a program to lookup the keyword under the
|
|||||||
feature}
|
feature}
|
||||||
|
|
||||||
*:sl!* *:sleep!*
|
*:sl!* *:sleep!*
|
||||||
:[N]sl[eep]! [N] [m] Same as above, but hide the cursor.
|
:[N]sl[eep]! [N][m] Same as above, but hide the cursor.
|
||||||
|
|
||||||
*:xrestore* *:xr*
|
*:xrestore* *:xr*
|
||||||
:xr[estore] [display] Reinitializes the connection to the X11 server. Useful
|
:xr[estore] [display] Reinitializes the connection to the X11 server. Useful
|
||||||
|
|||||||
@@ -2696,7 +2696,7 @@ Multi-byte:
|
|||||||
double-wide character.
|
double-wide character.
|
||||||
- Overstrike mode for the cmdline replaced only the first byte of a multibyte
|
- Overstrike mode for the cmdline replaced only the first byte of a multibyte
|
||||||
character.
|
character.
|
||||||
- The cursor in Replace mode (also in the cmdline) was to small on a
|
- The cursor in Replace mode (also in the cmdline) was too small on a
|
||||||
double-wide character.
|
double-wide character.
|
||||||
- When a multibyte character contained a 0x80 byte, it didn't work (was using
|
- When a multibyte character contained a 0x80 byte, it didn't work (was using
|
||||||
a CSI byte instead). (Muraoka Taro)
|
a CSI byte instead). (Muraoka Taro)
|
||||||
@@ -3546,7 +3546,7 @@ Added Simplified Chinese translation of the tutor. (Mendel L Chan)
|
|||||||
Added Russian keymap for yawerty keyboard.
|
Added Russian keymap for yawerty keyboard.
|
||||||
|
|
||||||
Added an explanation of using the vimrc file in the tutor.
|
Added an explanation of using the vimrc file in the tutor.
|
||||||
Changed tutor.vim to get the right encoding for the Taiwainese tutor.
|
Changed tutor.vim to get the right encoding for the Taiwanese tutor.
|
||||||
|
|
||||||
Added Russian tutor. (Andrey Kiselev)
|
Added Russian tutor. (Andrey Kiselev)
|
||||||
Added Polish tutor. (Mikolaj Machowski)
|
Added Polish tutor. (Mikolaj Machowski)
|
||||||
@@ -5465,7 +5465,7 @@ Files: src/fileio.c
|
|||||||
Patch 6.0.267
|
Patch 6.0.267
|
||||||
Problem: UTF-8: Although 'isprint' says a character is printable,
|
Problem: UTF-8: Although 'isprint' says a character is printable,
|
||||||
utf_char2cells() still considers it unprintable.
|
utf_char2cells() still considers it unprintable.
|
||||||
Solution: Use vim_isprintc() for characters upto 0x100. (Yasuhiro Matsumoto)
|
Solution: Use vim_isprintc() for characters up to 0x100. (Yasuhiro Matsumoto)
|
||||||
Files: src/mbyte.c
|
Files: src/mbyte.c
|
||||||
|
|
||||||
Patch 6.0.268 (extra) (depends on patch 6.0.255)
|
Patch 6.0.268 (extra) (depends on patch 6.0.255)
|
||||||
@@ -12232,7 +12232,7 @@ Files: Makefile, src/gvim.exe.mnf, src/vim.rc
|
|||||||
|
|
||||||
Patch 6.2.348
|
Patch 6.2.348
|
||||||
Problem: Win32: "vim c:\dir\(test)" doesn't work, because the 'isfname'
|
Problem: Win32: "vim c:\dir\(test)" doesn't work, because the 'isfname'
|
||||||
default value doesn't contain parenthesis.
|
default value doesn't contain parentheses.
|
||||||
Solution: Temporarily add '(' and ')' to 'isfname' when expanding file name
|
Solution: Temporarily add '(' and ')' to 'isfname' when expanding file name
|
||||||
arguments.
|
arguments.
|
||||||
Files: src/main.c
|
Files: src/main.c
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*version7.txt* For Vim version 8.2. Last change: 2021 May 13
|
*version7.txt* For Vim version 8.2. Last change: 2021 May 17
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -16225,7 +16225,7 @@ Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok,
|
|||||||
Patch 7.3.1018
|
Patch 7.3.1018
|
||||||
Problem: New regexp engine wastes memory.
|
Problem: New regexp engine wastes memory.
|
||||||
Solution: Allocate prog with actual number of states, not estimated maximum
|
Solution: Allocate prog with actual number of states, not estimated maximum
|
||||||
number of sates.
|
number of states.
|
||||||
Files: src/regexp_nfa.c
|
Files: src/regexp_nfa.c
|
||||||
|
|
||||||
Patch 7.3.1019
|
Patch 7.3.1019
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*version8.txt* For Vim version 8.2. Last change: 2021 May 13
|
*version8.txt* For Vim version 8.2. Last change: 2021 Jul 24
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -41,6 +41,10 @@ See |vi_diff.txt| for an overview of differences between Vi and Vim 8.0.
|
|||||||
See |version4.txt|, |version5.txt|, |version6.txt| and |version7.txt| for
|
See |version4.txt|, |version5.txt|, |version6.txt| and |version7.txt| for
|
||||||
differences between other versions.
|
differences between other versions.
|
||||||
|
|
||||||
|
*vim-changelog*
|
||||||
|
You can find an overview of the most important changes (according to Martin
|
||||||
|
Tournoij) on this site: https://www.arp242.net/vimlog/
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
NEW FEATURES *new-8*
|
NEW FEATURES *new-8*
|
||||||
|
|
||||||
@@ -12980,7 +12984,7 @@ Files: src/evalfunc.c, src/testdir/test_cmdline.vim
|
|||||||
Patch 7.4.2113
|
Patch 7.4.2113
|
||||||
Problem: Test for undo is flaky.
|
Problem: Test for undo is flaky.
|
||||||
Solution: Turn it into a new style test. Use test_settime() to avoid
|
Solution: Turn it into a new style test. Use test_settime() to avoid
|
||||||
flakyness.
|
flakiness.
|
||||||
Files: src/Makefile, src/undo.c, src/testdir/test61.in,
|
Files: src/Makefile, src/undo.c, src/testdir/test61.in,
|
||||||
src/testdir/test61.ok, src/testdir/test_undo.vim,
|
src/testdir/test61.ok, src/testdir/test_undo.vim,
|
||||||
src/testdir/test_undolevels.vim, src/testdir/Make_all.mak,
|
src/testdir/test_undolevels.vim, src/testdir/Make_all.mak,
|
||||||
@@ -30906,7 +30910,7 @@ Files: src/eval.c, src/testdir/test_assert.vim
|
|||||||
Patch 8.1.0820
|
Patch 8.1.0820
|
||||||
Problem: Test for sending large data over channel sometimes fails.
|
Problem: Test for sending large data over channel sometimes fails.
|
||||||
Solution: Handle that the job may have finished early. Also fix that file
|
Solution: Handle that the job may have finished early. Also fix that file
|
||||||
changed test doesn't work in the GUI and reduce flakyness. (Ozaki
|
changed test doesn't work in the GUI and reduce flakiness. (Ozaki
|
||||||
Kiichi, closes #3861)
|
Kiichi, closes #3861)
|
||||||
Files: src/testdir/test_channel.vim, src/testdir/test_filechanged.vim
|
Files: src/testdir/test_channel.vim, src/testdir/test_filechanged.vim
|
||||||
|
|
||||||
@@ -35504,7 +35508,7 @@ Files: Filelist, src/testdir/Make_all.mak, src/testdir/check.vim,
|
|||||||
src/testdir/test_xxd.vim
|
src/testdir/test_xxd.vim
|
||||||
|
|
||||||
Patch 8.1.1545
|
Patch 8.1.1545
|
||||||
Problem: When the screen is to small there is no message about that.
|
Problem: When the screen is too small there is no message about that.
|
||||||
(Daniel Hahler)
|
(Daniel Hahler)
|
||||||
Solution: Do not use :cquit. (closes #4534)
|
Solution: Do not use :cquit. (closes #4534)
|
||||||
Files: src/testdir/runtest.vim
|
Files: src/testdir/runtest.vim
|
||||||
@@ -39253,7 +39257,7 @@ Files: src/option.c
|
|||||||
|
|
||||||
Patch 8.1.2117
|
Patch 8.1.2117
|
||||||
Problem: CursorLine highlight used while 'cursorline' is off.
|
Problem: CursorLine highlight used while 'cursorline' is off.
|
||||||
Solution: Check 'cursorline' is set. (cloes #5017)
|
Solution: Check 'cursorline' is set. (closes #5017)
|
||||||
Files: src/drawline.c, src/testdir/test_cursorline.vim
|
Files: src/drawline.c, src/testdir/test_cursorline.vim
|
||||||
|
|
||||||
Patch 8.1.2118
|
Patch 8.1.2118
|
||||||
@@ -41104,7 +41108,7 @@ Files: src/buffer.c, src/testdir/test_popupwin.vim
|
|||||||
Patch 8.1.2419
|
Patch 8.1.2419
|
||||||
Problem: With a long file name the hit-enter prompt appears. (J. Lewis
|
Problem: With a long file name the hit-enter prompt appears. (J. Lewis
|
||||||
Muir)
|
Muir)
|
||||||
Solution: When checking for text to wrap don't do this when outputing a CR.
|
Solution: When checking for text to wrap don't do this when outputting a CR.
|
||||||
Files: src/message.c, src/testdir/test_display.vim,
|
Files: src/message.c, src/testdir/test_display.vim,
|
||||||
src/testdir/dumps/Test_long_file_name_1.dump
|
src/testdir/dumps/Test_long_file_name_1.dump
|
||||||
|
|
||||||
|
|||||||
@@ -186,7 +186,7 @@ behave mostly like Vi, even though a .vimrc file exists.
|
|||||||
.TP
|
.TP
|
||||||
\-d
|
\-d
|
||||||
Start in diff mode.
|
Start in diff mode.
|
||||||
There should be two, three or four file name arguments.
|
There should between two to eight file name arguments.
|
||||||
.B Vim
|
.B Vim
|
||||||
will open all the files and show differences between them.
|
will open all the files and show differences between them.
|
||||||
Works like vimdiff(1).
|
Works like vimdiff(1).
|
||||||
|
|||||||
@@ -135,9 +135,9 @@ OPTIONS
|
|||||||
Vim behave mostly like Vi, even though a .vimrc file ex‐
|
Vim behave mostly like Vi, even though a .vimrc file ex‐
|
||||||
ists.
|
ists.
|
||||||
|
|
||||||
-d Start in diff mode. There should be two, three or four
|
-d Start in diff mode. There should between two to eight file
|
||||||
file name arguments. Vim will open all the files and show
|
name arguments. Vim will open all the files and show dif‐
|
||||||
differences between them. Works like vimdiff(1).
|
ferences between them. Works like vimdiff(1).
|
||||||
|
|
||||||
-d {device} Open {device} for use as a terminal. Only on the Amiga.
|
-d {device} Open {device} for use as a terminal. Only on the Amiga.
|
||||||
Example: "-d con:20/30/600/150".
|
Example: "-d con:20/30/600/150".
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*vim9.txt* For Vim version 8.2. Last change: 2021 May 26
|
*vim9.txt* For Vim version 8.2. Last change: 2021 Sep 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -103,9 +103,12 @@ script and `:def` functions; details are below:
|
|||||||
writefile(['done'], 'file.txt')
|
writefile(['done'], 'file.txt')
|
||||||
- You cannot use `:xit`, `:t`, `:k`, `:append`, `:change`, `:insert`, `:open`,
|
- You cannot use `:xit`, `:t`, `:k`, `:append`, `:change`, `:insert`, `:open`,
|
||||||
and `:s` or `:d` with only flags.
|
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: >
|
- A range before a command must be prefixed with a colon: >
|
||||||
:%s/this/that
|
:%s/this/that
|
||||||
|
- Executing a register with "@r" does not work, you can prepend a colon or use
|
||||||
|
`:exe`: >
|
||||||
|
:exe @a
|
||||||
- Unless mentioned specifically, the highest |scriptversion| is used.
|
- Unless mentioned specifically, the highest |scriptversion| is used.
|
||||||
|
|
||||||
|
|
||||||
@@ -154,7 +157,7 @@ Compilation is done when any of these is encountered:
|
|||||||
function was defined
|
function was defined
|
||||||
- `:disassemble` is used for the function.
|
- `:disassemble` is used for the function.
|
||||||
- a function that is compiled calls the function or uses it as a function
|
- a function that is compiled calls the function or uses it as a function
|
||||||
reference
|
reference (so that the argument and return types can be checked)
|
||||||
*E1091*
|
*E1091*
|
||||||
If compilation fails it is not tried again on the next call, instead this
|
If compilation fails it is not tried again on the next call, instead this
|
||||||
error is given: "E1091: Function is not compiled: {name}".
|
error is given: "E1091: Function is not compiled: {name}".
|
||||||
@@ -168,6 +171,23 @@ created yet. In this case you can call `execute()` to invoke it at runtime. >
|
|||||||
"closure". A `:def` function always aborts on an error (unless `:silent!` was
|
"closure". A `:def` function always aborts on an error (unless `:silent!` was
|
||||||
used for the command or inside a `:try` block), does not get a range passed
|
used for the command or inside a `:try` block), does not get a range passed
|
||||||
cannot be a "dict" function, and can always be a closure.
|
cannot be a "dict" function, and can always be a closure.
|
||||||
|
*vim9-no-dict-function*
|
||||||
|
Later classes will be added, which replaces the "dict function" mechanism.
|
||||||
|
For now you will need to pass the dictionary explicitly: >
|
||||||
|
def DictFunc(d: dict<any>, arg: string)
|
||||||
|
echo d[arg]
|
||||||
|
enddef
|
||||||
|
var d = {item: 'value', func: DictFunc}
|
||||||
|
d.func(d, 'item')
|
||||||
|
|
||||||
|
You can call a legacy dict function though: >
|
||||||
|
func Legacy() dict
|
||||||
|
echo self.value
|
||||||
|
endfunc
|
||||||
|
def CallLegacy()
|
||||||
|
var d = {func: Legacy, value: 'text'}
|
||||||
|
d.func()
|
||||||
|
enddef
|
||||||
|
|
||||||
The argument types and return type need to be specified. The "any" type can
|
The argument types and return type need to be specified. The "any" type can
|
||||||
be used, type checking will then be done at runtime, like with legacy
|
be used, type checking will then be done at runtime, like with legacy
|
||||||
@@ -186,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
|
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
|
want to specify a value for an argument that comes after an argument that
|
||||||
should use its default value. Example: >
|
should use its default value. Example: >
|
||||||
def MyFunc(one = 'one', last = 'last)
|
def MyFunc(one = 'one', last = 'last')
|
||||||
...
|
...
|
||||||
enddef
|
enddef
|
||||||
MyFunc(v:none, 'LAST') # first argument uses default value 'one'
|
MyFunc(v:none, 'LAST') # first argument uses default value 'one'
|
||||||
@@ -313,6 +333,25 @@ used: >
|
|||||||
}
|
}
|
||||||
echo temp # Error!
|
echo temp # Error!
|
||||||
|
|
||||||
|
This is especially useful in a user command: >
|
||||||
|
|
||||||
|
command -range Rename {
|
||||||
|
var save = @a
|
||||||
|
@a = 'some expression'
|
||||||
|
echo 'do something with ' .. @a
|
||||||
|
@a = save
|
||||||
|
}
|
||||||
|
|
||||||
|
And with autocommands: >
|
||||||
|
|
||||||
|
au BufWritePre *.go {
|
||||||
|
var save = winsaveview()
|
||||||
|
silent! exe ':%! some formatting command'
|
||||||
|
winrestview(save)
|
||||||
|
}
|
||||||
|
|
||||||
|
Although using a :def function probably works better.
|
||||||
|
|
||||||
Declaring a variable with a type but without an initializer will initialize to
|
Declaring a variable with a type but without an initializer will initialize to
|
||||||
zero, false or empty.
|
zero, false or empty.
|
||||||
|
|
||||||
@@ -324,6 +363,9 @@ with `:unlet`.
|
|||||||
`:lockvar` does not work on local variables. Use `:const` and `:final`
|
`:lockvar` does not work on local variables. Use `:const` and `:final`
|
||||||
instead.
|
instead.
|
||||||
|
|
||||||
|
The `exists()` and `exists_compiled()` functions do not work on local variables
|
||||||
|
or arguments.
|
||||||
|
|
||||||
Variables, functions and function arguments cannot shadow previously defined
|
Variables, functions and function arguments cannot shadow previously defined
|
||||||
or imported variables and functions in the same script file.
|
or imported variables and functions in the same script file.
|
||||||
Variables may shadow Ex commands, rename the variable if needed.
|
Variables may shadow Ex commands, rename the variable if needed.
|
||||||
@@ -343,6 +385,32 @@ called without "g:". >
|
|||||||
echo GlobalFunc()
|
echo GlobalFunc()
|
||||||
The "g:" prefix is not needed for auto-load functions.
|
The "g:" prefix is not needed for auto-load functions.
|
||||||
|
|
||||||
|
*vim9-function-defined-later*
|
||||||
|
Although global functions can be called without the "g:" prefix, they must
|
||||||
|
exist when compiled. By adding the "g:" prefix the function can be defined
|
||||||
|
later. Example: >
|
||||||
|
def CallPluginFunc()
|
||||||
|
if exists('g:loaded_plugin')
|
||||||
|
g:PluginFunc()
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
|
|
||||||
|
If you would do it like this you get an error at compile time that
|
||||||
|
"PluginFunc" does not exist, even when "g:loaded_plugin" does not exist: >
|
||||||
|
def CallPluginFunc()
|
||||||
|
if exists('g:loaded_plugin')
|
||||||
|
PluginFunc() # Error - function not found
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
|
|
||||||
|
You can use exists_compiled() to avoid the error, but then the function would
|
||||||
|
not be called, even when "g:loaded_plugin" is defined later: >
|
||||||
|
def CallPluginFunc()
|
||||||
|
if exists_compiled('g:loaded_plugin')
|
||||||
|
PluginFunc() # Function may never be called
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
|
|
||||||
Since `&opt = value` is now assigning a value to option "opt", ":&" cannot be
|
Since `&opt = value` is now assigning a value to option "opt", ":&" cannot be
|
||||||
used to repeat a `:substitute` command.
|
used to repeat a `:substitute` command.
|
||||||
*vim9-unpack-ignore*
|
*vim9-unpack-ignore*
|
||||||
@@ -418,6 +486,12 @@ line starts with `substitute(` this will use the function. Prepend a colon to
|
|||||||
use the command instead: >
|
use the command instead: >
|
||||||
:substitute(pattern (replacement (
|
:substitute(pattern (replacement (
|
||||||
|
|
||||||
|
If the expression starts with "!" this is interpreted as a shell command, not
|
||||||
|
negation of a condition. Thus this is a shell command: >
|
||||||
|
!shellCommand->something
|
||||||
|
Put the expression in parentheses to use the "!" for negation: >
|
||||||
|
(!expression)->Method()
|
||||||
|
|
||||||
Note that while variables need to be defined before they can be used,
|
Note that while variables need to be defined before they can be used,
|
||||||
functions can be called before being defined. This is required to allow
|
functions can be called before being defined. This is required to allow
|
||||||
for cyclic dependencies between functions. It is slightly less efficient,
|
for cyclic dependencies between functions. It is slightly less efficient,
|
||||||
@@ -434,7 +508,8 @@ The function must already have been defined. >
|
|||||||
var Funcref = MyFunction
|
var Funcref = MyFunction
|
||||||
|
|
||||||
When using `function()` the resulting type is "func", a function with any
|
When using `function()` the resulting type is "func", a function with any
|
||||||
number of arguments and any return type. The function can be defined later.
|
number of arguments and any return type (including void). The function can be
|
||||||
|
defined later.
|
||||||
|
|
||||||
|
|
||||||
Lambda using => instead of -> ~
|
Lambda using => instead of -> ~
|
||||||
@@ -445,11 +520,12 @@ it is the start of a lambda or a dictionary, which is now more complicated
|
|||||||
because of the use of argument types.
|
because of the use of argument types.
|
||||||
|
|
||||||
To avoid these problems Vim9 script uses a different syntax for a lambda,
|
To avoid these problems Vim9 script uses a different syntax for a lambda,
|
||||||
which is similar to Javascript: >
|
which is similar to JavaScript: >
|
||||||
var Lambda = (arg) => expression
|
var Lambda = (arg) => expression
|
||||||
|
|
||||||
No line break is allowed in the arguments of a lambda up to and including the
|
No line break is allowed in the arguments of a lambda up to and including the
|
||||||
"=>". This is OK: >
|
"=>" (so that Vim can tell the difference between an expression in parentheses
|
||||||
|
and lambda arguments). This is OK: >
|
||||||
filter(list, (k, v) =>
|
filter(list, (k, v) =>
|
||||||
v > 0)
|
v > 0)
|
||||||
This does not work: >
|
This does not work: >
|
||||||
@@ -522,7 +598,7 @@ And when a dict spans multiple lines: >
|
|||||||
one: 1,
|
one: 1,
|
||||||
two: 2,
|
two: 2,
|
||||||
}
|
}
|
||||||
Function call: >
|
With a function call: >
|
||||||
var result = Func(
|
var result = Func(
|
||||||
arg1,
|
arg1,
|
||||||
arg2
|
arg2
|
||||||
@@ -555,10 +631,36 @@ at the start of the line indicates line continuation: >
|
|||||||
| echo 'match'
|
| echo 'match'
|
||||||
| endif
|
| endif
|
||||||
|
|
||||||
< *E1050*
|
Note that this means that in heredoc the first line cannot start with a bar: >
|
||||||
|
var lines =<< trim END
|
||||||
|
| this doesn't work
|
||||||
|
END
|
||||||
|
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 works
|
||||||
|
END
|
||||||
|
set cpo-=C
|
||||||
|
If the heredoc is inside a function 'cpoptions' must be set before :def and
|
||||||
|
restored after the :enddef.
|
||||||
|
|
||||||
|
In places where line continuation with a backslash is still needed, such as
|
||||||
|
splitting up a long Ex command, comments can start with '#\ ': >
|
||||||
|
syn region Text
|
||||||
|
\ start='foo'
|
||||||
|
#\ comment
|
||||||
|
\ end='bar'
|
||||||
|
Like with legacy script '"\ ' is used. This is also needed when line
|
||||||
|
continuation is used without a backslash and a line starts with a bar: >
|
||||||
|
au CursorHold * echom 'BEFORE bar'
|
||||||
|
#\ some comment
|
||||||
|
| echom 'AFTER bar'
|
||||||
|
<
|
||||||
|
*E1050*
|
||||||
To make it possible for the operator at the start of the line to be
|
To make it possible for the operator at the start of the line to be
|
||||||
recognized, it is required to put a colon before a range. This will add
|
recognized, it is required to put a colon before a range. This example will
|
||||||
"start" and print: >
|
add "start" and print: >
|
||||||
var result = start
|
var result = start
|
||||||
+ print
|
+ print
|
||||||
Like this: >
|
Like this: >
|
||||||
@@ -610,6 +712,9 @@ Notes:
|
|||||||
< This does not work: >
|
< This does not work: >
|
||||||
echo [1, 2]
|
echo [1, 2]
|
||||||
[3, 4]
|
[3, 4]
|
||||||
|
- In some cases it is difficult for Vim to parse a command, especially when
|
||||||
|
commands are used as an argument to another command, such as `windo`. In
|
||||||
|
those cases the line continuation with a backslash has to be used.
|
||||||
|
|
||||||
|
|
||||||
White space ~
|
White space ~
|
||||||
@@ -648,6 +753,9 @@ White space is not allowed:
|
|||||||
arg # OK
|
arg # OK
|
||||||
)
|
)
|
||||||
|
|
||||||
|
White space is not allowed in a `:set` command between the option name and a
|
||||||
|
following "&", "!", "<", "=", "+=", "-=" or "^=".
|
||||||
|
|
||||||
|
|
||||||
No curly braces expansion ~
|
No curly braces expansion ~
|
||||||
|
|
||||||
@@ -834,9 +942,22 @@ Ex command ranges need to be prefixed with a colon. >
|
|||||||
|
|
||||||
Some Ex commands can be confused with assignments in Vim9 script: >
|
Some Ex commands can be confused with assignments in Vim9 script: >
|
||||||
g:name = value # assignment
|
g:name = value # assignment
|
||||||
g:pattern:cmd # invalid command - ERROR
|
|
||||||
:g:pattern:cmd # :global command
|
: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
|
Functions defined with `:def` compile the whole function. Legacy functions
|
||||||
can bail out, and the following lines are not parsed: >
|
can bail out, and the following lines are not parsed: >
|
||||||
func Maybe()
|
func Maybe()
|
||||||
@@ -870,7 +991,8 @@ evaluates to false: >
|
|||||||
use-feature
|
use-feature
|
||||||
endif
|
endif
|
||||||
enddef
|
enddef
|
||||||
< *vim9-user-command*
|
The `exists_compiled()` function can also be used for this.
|
||||||
|
*vim9-user-command*
|
||||||
Another side effect of compiling a function is that the presence of a user
|
Another side effect of compiling a function is that the presence of a user
|
||||||
command is checked at compile time. If the user command is defined later an
|
command is checked at compile time. If the user command is defined later an
|
||||||
error will result. This works: >
|
error will result. This works: >
|
||||||
@@ -904,6 +1026,16 @@ The 'gdefault' option value is not used.
|
|||||||
You may also find this wiki useful. It was written by an early adopter of
|
You may also find this wiki useful. It was written by an early adopter of
|
||||||
Vim9 script: https://github.com/lacygoill/wiki/blob/master/vim/vim9.md
|
Vim9 script: https://github.com/lacygoill/wiki/blob/master/vim/vim9.md
|
||||||
|
|
||||||
|
*:++* *:--*
|
||||||
|
The ++ and -- commands have been added. They are very similar to adding or
|
||||||
|
subtracting one: >
|
||||||
|
++var
|
||||||
|
var += 1
|
||||||
|
--var
|
||||||
|
var -= 1
|
||||||
|
|
||||||
|
Using ++var or --var in an expression is not supported yet.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
3. New style functions *fast-functions*
|
3. New style functions *fast-functions*
|
||||||
@@ -966,9 +1098,14 @@ prefix if they do not exist at the time of compiling.
|
|||||||
Note that for command line completion of {func} you
|
Note that for command line completion of {func} you
|
||||||
can prepend "s:" to find script-local functions.
|
can prepend "s:" to find script-local functions.
|
||||||
|
|
||||||
:disa[ssemble]! {func} Like `:disassemble` but with the instructions used for
|
:disa[ssemble] profile {func}
|
||||||
|
Like `:disassemble` but with the instructions used for
|
||||||
profiling.
|
profiling.
|
||||||
|
|
||||||
|
:disa[ssemble] debug {func}
|
||||||
|
Like `:disassemble` but with the instructions used for
|
||||||
|
debugging.
|
||||||
|
|
||||||
Limitations ~
|
Limitations ~
|
||||||
|
|
||||||
Local variables will not be visible to string evaluation. For example: >
|
Local variables will not be visible to string evaluation. For example: >
|
||||||
@@ -981,7 +1118,7 @@ The map argument is a string expression, which is evaluated without the
|
|||||||
function scope. Instead, use a lambda: >
|
function scope. Instead, use a lambda: >
|
||||||
def MapList(): list<string>
|
def MapList(): list<string>
|
||||||
var list = ['aa', 'bb', 'cc', 'dd']
|
var list = ['aa', 'bb', 'cc', 'dd']
|
||||||
return range(1, 2)->map(( _, v) => list[v])
|
return range(1, 2)->map((_, v) => list[v])
|
||||||
enddef
|
enddef
|
||||||
|
|
||||||
The same is true for commands that are not compiled, such as `:global`.
|
The same is true for commands that are not compiled, such as `:global`.
|
||||||
@@ -991,26 +1128,36 @@ For these the backtick expansion can be used. Example: >
|
|||||||
g/pattern/s/^/`=newText`/
|
g/pattern/s/^/`=newText`/
|
||||||
enddef
|
enddef
|
||||||
|
|
||||||
|
Or a script variable can be used: >
|
||||||
|
var newText = 'blah'
|
||||||
|
def Replace()
|
||||||
|
g/pattern/s/^/\=newText/
|
||||||
|
enddef
|
||||||
|
|
||||||
Closures defined in a loop will share the same context. For example: >
|
Closures defined in a loop will share the same context. For example: >
|
||||||
var flist: list<func>
|
var flist: list<func>
|
||||||
for i in range(10)
|
for i in range(5)
|
||||||
var inloop = i
|
var inloop = i
|
||||||
flist[i] = () => inloop
|
flist[i] = () => inloop
|
||||||
endfor
|
endfor
|
||||||
|
echo range(5)->map((i, _) => flist[i]())
|
||||||
|
# Result: [4, 4, 4, 4, 4]
|
||||||
|
|
||||||
The "inloop" variable will exist only once, all closures put in the list refer
|
The "inloop" variable will exist only once, all closures put in the list refer
|
||||||
to the same instance, which in the end will have the value 9. This is
|
to the same instance, which in the end will have the value 4. This is
|
||||||
efficient. If you do want a separate context for each closure call a function
|
efficient, also when looping many times. If you do want a separate context
|
||||||
to define it: >
|
for each closure call a function to define it: >
|
||||||
def GetFunc(i: number): func
|
def GetClosure(i: number): func
|
||||||
var inloop = i
|
var infunc = i
|
||||||
return () => inloop
|
return () => infunc
|
||||||
enddef
|
enddef
|
||||||
|
|
||||||
var flist: list<func>
|
var flist: list<func>
|
||||||
for i in range(10)
|
for i in range(5)
|
||||||
flist[i] = GetFunc(i)
|
flist[i] = GetClosure(i)
|
||||||
endfor
|
endfor
|
||||||
|
echo range(5)->map((i, _) => flist[i]())
|
||||||
|
# Result: [0, 1, 2, 3, 4]
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@@ -1036,10 +1183,8 @@ The following builtin types are supported:
|
|||||||
Not supported yet:
|
Not supported yet:
|
||||||
tuple<a: {type}, b: {type}, ...>
|
tuple<a: {type}, b: {type}, ...>
|
||||||
|
|
||||||
These types can be used in declarations, but no value will have this type:
|
These types can be used in declarations, but no simple value will actually
|
||||||
{type}|{type} {not implemented yet}
|
have the "void" type.
|
||||||
void
|
|
||||||
any
|
|
||||||
|
|
||||||
There is no array type, use list<{type}> instead. For a list constant an
|
There is no array type, use list<{type}> instead. For a list constant an
|
||||||
efficient implementation is used that avoids allocating lot of small pieces of
|
efficient implementation is used that avoids allocating lot of small pieces of
|
||||||
@@ -1048,8 +1193,16 @@ memory.
|
|||||||
A partial and function can be declared in more or less specific ways:
|
A partial and function can be declared in more or less specific ways:
|
||||||
func any kind of function reference, no type
|
func any kind of function reference, no type
|
||||||
checking for arguments or return value
|
checking for arguments or return value
|
||||||
|
func: void any number and type of arguments, no return
|
||||||
|
value
|
||||||
func: {type} any number and type of arguments with specific
|
func: {type} any number and type of arguments with specific
|
||||||
return type
|
return type
|
||||||
|
|
||||||
|
func() function with no argument, does not return a
|
||||||
|
value
|
||||||
|
func(): void same
|
||||||
|
func(): {type} function with no argument and return type
|
||||||
|
|
||||||
func({type}) function with argument type, does not return
|
func({type}) function with argument type, does not return
|
||||||
a value
|
a value
|
||||||
func({type}): {type} function with argument type and return type
|
func({type}): {type} function with argument type and return type
|
||||||
@@ -1138,6 +1291,18 @@ dictionary. If there is a mix of types, the "any" type is used. >
|
|||||||
['a', 'b', 'c'] list<string>
|
['a', 'b', 'c'] list<string>
|
||||||
[1, 'x', 3] list<any>
|
[1, 'x', 3] list<any>
|
||||||
|
|
||||||
|
The common type of function references, if they do not all have the same
|
||||||
|
number of arguments, uses "(...)" to indicate the number of arguments is not
|
||||||
|
specified. For example: >
|
||||||
|
def Foo(x: bool)
|
||||||
|
enddef
|
||||||
|
def Bar(x: bool, y: bool)
|
||||||
|
enddef
|
||||||
|
var funclist = [Foo, Bar]
|
||||||
|
echo funclist->typename()
|
||||||
|
Results in:
|
||||||
|
list<func(...)>
|
||||||
|
|
||||||
For script-local variables in Vim9 script the type is checked, also when the
|
For script-local variables in Vim9 script the type is checked, also when the
|
||||||
variable was declared in a legacy function.
|
variable was declared in a legacy function.
|
||||||
|
|
||||||
@@ -1154,16 +1319,24 @@ In Vim9 script this has been made stricter. In most places it works just as
|
|||||||
before, if the value used matches the expected type. There will sometimes be
|
before, if the value used matches the expected type. There will sometimes be
|
||||||
an error, thus breaking backwards compatibility. For example:
|
an error, thus breaking backwards compatibility. For example:
|
||||||
- Using a number other than 0 or 1 where a boolean is expected. *E1023*
|
- Using a number other than 0 or 1 where a boolean is expected. *E1023*
|
||||||
- Using a string value when setting a number options.
|
- Using a string value when setting a number option.
|
||||||
- Using a number where a string is expected. *E1024*
|
- 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: >
|
not change. This will give an error in Vim9 script: >
|
||||||
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
|
E1012: Type mismatch; expected number but got string
|
||||||
Instead use |mapnew()|. If the item type was determined to be "any" it can
|
Instead use |mapnew()|: >
|
||||||
change to a more specific type. E.g. when a list of mixed types gets changed
|
echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
|
||||||
to a list of numbers.
|
['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 strings: >
|
||||||
|
var mylist = [1, 2.0, '3']
|
||||||
|
# typename(mylist) == "list<any>"
|
||||||
|
map(mylist, (i, v) => 'item ' .. i)
|
||||||
|
# typename(mylist) == "list<string>", no error
|
||||||
|
|
||||||
Same for |extend()|, use |extendnew()| instead, and for |flatten()|, use
|
Same for |extend()|, use |extendnew()| instead, and for |flatten()|, use
|
||||||
|flattennew()| instead.
|
|flattennew()| instead.
|
||||||
|
|
||||||
@@ -1240,9 +1413,10 @@ Exporting an item can be written as: >
|
|||||||
export const someValue = ...
|
export const someValue = ...
|
||||||
export def MyFunc() ...
|
export def MyFunc() ...
|
||||||
export class MyClass ...
|
export class MyClass ...
|
||||||
|
export interface MyClass ...
|
||||||
|
|
||||||
As this suggests, only constants, variables, `:def` functions and classes can
|
As this suggests, only constants, variables, `:def` functions and classes can
|
||||||
be exported. {not implemented yet: export class}
|
be exported. {not implemented yet: class, interface}
|
||||||
|
|
||||||
*E1042*
|
*E1042*
|
||||||
`:export` can only be used in Vim9 script, at the script level.
|
`:export` can only be used in Vim9 script, at the script level.
|
||||||
@@ -1264,15 +1438,17 @@ In case the name is ambiguous, another name can be specified: >
|
|||||||
To import all exported items under a specific identifier: >
|
To import all exported items under a specific identifier: >
|
||||||
import * as That from 'thatscript.vim'
|
import * as That from 'thatscript.vim'
|
||||||
|
|
||||||
{not implemented yet: using "This as That"}
|
|
||||||
|
|
||||||
Then you can use "That.EXPORTED_CONST", "That.someValue", etc. You are free
|
Then you can use "That.EXPORTED_CONST", "That.someValue", etc. You are free
|
||||||
to choose the name "That", but it is highly recommended to use the name of the
|
to choose the name "That", but it is highly recommended to use the name of the
|
||||||
script file to avoid confusion.
|
script file to avoid confusion. Also avoid command names, because the name
|
||||||
|
will shadow them.
|
||||||
|
|
||||||
`:import` can also be used in legacy Vim script. The imported items still
|
`:import` can also be used in legacy Vim script. The imported items still
|
||||||
become script-local, even when the "s:" prefix is not given.
|
become script-local, even when the "s:" prefix is not given.
|
||||||
|
|
||||||
|
`:import` can not be used in a function. Imported items are intended to exist
|
||||||
|
at the script level and only imported once.
|
||||||
|
|
||||||
The script name after `import` can be:
|
The script name after `import` can be:
|
||||||
- A relative path, starting "." or "..". This finds a file relative to the
|
- A relative path, starting "." or "..". This finds a file relative to the
|
||||||
location of the script file itself. This is useful to split up a large
|
location of the script file itself. This is useful to split up a large
|
||||||
@@ -1282,6 +1458,7 @@ The script name after `import` can be:
|
|||||||
- A path not being relative or absolute. This will be found in the
|
- A path not being relative or absolute. This will be found in the
|
||||||
"import" subdirectories of 'runtimepath' entries. The name will usually be
|
"import" subdirectories of 'runtimepath' entries. The name will usually be
|
||||||
longer and unique, to avoid loading the wrong file.
|
longer and unique, to avoid loading the wrong file.
|
||||||
|
Note that "after/import" is not used.
|
||||||
|
|
||||||
Once a vim9 script file has been imported, the result is cached and used the
|
Once a vim9 script file has been imported, the result is cached and used the
|
||||||
next time the same script is imported. It will not be read again.
|
next time the same script is imported. It will not be read again.
|
||||||
@@ -1342,27 +1519,46 @@ implementing classes is going to be a lot of work, it is left for the future.
|
|||||||
For now we'll just make sure classes can be added later.
|
For now we'll just make sure classes can be added later.
|
||||||
|
|
||||||
Thoughts:
|
Thoughts:
|
||||||
- `class` / `endclass`, everything in one file
|
- `class` / `endclass`, the whole class must be in one file
|
||||||
- Class names are always CamelCase
|
- Class names are always CamelCase (to avoid a name clash with builtin types)
|
||||||
- Single constructor
|
- A single constructor called "constructor"
|
||||||
- Single inheritance with `class ThisClass extends BaseClass`
|
- Single inheritance with `class ThisClass extends BaseClass`
|
||||||
- `abstract class`
|
- `abstract class` (class with incomplete implementation)
|
||||||
- `interface` (Abstract class without any implementation)
|
- `interface` / `endinterface` (abstract class without any implementation)
|
||||||
- `class SomeClass implements SomeInterface`
|
- `class SomeClass implements SomeInterface`
|
||||||
- Generics for class: `class <Tkey, Tentry>`
|
- Generics for class: `class <Tkey, Tentry>`
|
||||||
- Generics for function: `def <Tkey> GetLast(key: Tkey)`
|
- Generics for function: `def <Tkey> GetLast(key: Tkey)`
|
||||||
|
|
||||||
Again, much of this is from TypeScript.
|
Again, much of this is from TypeScript with a slightly different syntax.
|
||||||
|
|
||||||
Some things that look like good additions:
|
Some things that look like good additions:
|
||||||
- Use a class as an interface (like Dart)
|
- Use a class as an interface (like Dart)
|
||||||
- Extend a class with methods, using an import (like Dart)
|
- Extend a class with methods, using an import (like Dart)
|
||||||
|
- Mixins
|
||||||
|
- For testing: Mock mechanism
|
||||||
|
|
||||||
An important class that will be provided is "Promise". Since Vim is single
|
An important class that will be provided is "Promise". Since Vim is single
|
||||||
threaded, connecting asynchronous operations is a natural way of allowing
|
threaded, connecting asynchronous operations is a natural way of allowing
|
||||||
plugins to do their work without blocking the user. It's a uniform way to
|
plugins to do their work without blocking the user. It's a uniform way to
|
||||||
invoke callbacks and handle timeouts and errors.
|
invoke callbacks and handle timeouts and errors.
|
||||||
|
|
||||||
|
Some examples: >
|
||||||
|
|
||||||
|
abstract class Person
|
||||||
|
static const prefix = 'xxx'
|
||||||
|
var name: string
|
||||||
|
|
||||||
|
def constructor(name: string)
|
||||||
|
this.name = name
|
||||||
|
enddef
|
||||||
|
|
||||||
|
def display(): void
|
||||||
|
echo name
|
||||||
|
enddef
|
||||||
|
|
||||||
|
abstract def find(string): Person
|
||||||
|
endclass
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
9. Rationale *vim9-rationale*
|
9. Rationale *vim9-rationale*
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
.TH VIMDIFF 1 "2001 March 30"
|
.TH VIMDIFF 1 "2001 March 30"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
vimdiff \- edit two, three or four versions of a file with Vim and show differences
|
vimdiff \- edit between two and eight versions of a file with Vim and show differences
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.br
|
.br
|
||||||
.B vimdiff
|
.B vimdiff
|
||||||
[options] file1 file2 [file3 [file4]]
|
[options] file1 file2 [file3 [file4 [file5 [file6 [file7 [file8]]]]]]
|
||||||
.PP
|
.PP
|
||||||
.B gvimdiff
|
.B gvimdiff
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.B Vimdiff
|
.B Vimdiff
|
||||||
starts
|
starts
|
||||||
.B Vim
|
.B Vim
|
||||||
on two (or three or four) files.
|
on two up to eight files.
|
||||||
Each file gets its own window.
|
Each file gets its own window.
|
||||||
The differences between the files are highlighted.
|
The differences between the files are highlighted.
|
||||||
This is a nice way to inspect changes and to move changes from one version
|
This is a nice way to inspect changes and to move changes from one version
|
||||||
|
|||||||
@@ -1,27 +1,28 @@
|
|||||||
VIMDIFF(1) VIMDIFF(1)
|
VIMDIFF(1) General Commands Manual VIMDIFF(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
NAME
|
NAME
|
||||||
vimdiff - edit two, three or four versions of a file with Vim and show
|
vimdiff - edit between two and eight versions of a file with Vim and
|
||||||
differences
|
show differences
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
vimdiff [options] file1 file2 [file3 [file4]]
|
vimdiff [options] file1 file2 [file3 [file4 [file5 [file6 [file7
|
||||||
|
[file8]]]]]]
|
||||||
|
|
||||||
gvimdiff
|
gvimdiff
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
Vimdiff starts Vim on two (or three or four) files. Each file gets its
|
Vimdiff starts Vim on two up to eight files. Each file gets its own
|
||||||
own window. The differences between the files are highlighted. This
|
window. The differences between the files are highlighted. This is a
|
||||||
is a nice way to inspect changes and to move changes from one version
|
nice way to inspect changes and to move changes from one version to an‐
|
||||||
to another version of the same file.
|
other version of the same file.
|
||||||
|
|
||||||
See vim(1) for details about Vim itself.
|
See vim(1) for details about Vim itself.
|
||||||
|
|
||||||
When started as gvimdiff the GUI will be started, if available.
|
When started as gvimdiff the GUI will be started, if available.
|
||||||
|
|
||||||
In each window the 'diff' option will be set, which causes the differ-
|
In each window the 'diff' option will be set, which causes the differ‐
|
||||||
ences to be highlighted.
|
ences to be highlighted.
|
||||||
The 'wrap' and 'scrollbind' options are set to make the text look good.
|
The 'wrap' and 'scrollbind' options are set to make the text look good.
|
||||||
The 'foldmethod' option is set to "diff", which puts ranges of lines
|
The 'foldmethod' option is set to "diff", which puts ranges of lines
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*windows.txt* For Vim version 8.2. Last change: 2021 Apr 10
|
*windows.txt* For Vim version 8.2. Last change: 2021 Sep 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -296,7 +296,7 @@ Closing a window
|
|||||||
----------------
|
----------------
|
||||||
|
|
||||||
:q[uit]
|
:q[uit]
|
||||||
:{count}q[uit]
|
:{count}q[uit] *:count_quit*
|
||||||
CTRL-W q *CTRL-W_q*
|
CTRL-W q *CTRL-W_q*
|
||||||
CTRL-W CTRL-Q *CTRL-W_CTRL-Q*
|
CTRL-W CTRL-Q *CTRL-W_CTRL-Q*
|
||||||
Without {count}: Quit the current window. If {count} is
|
Without {count}: Quit the current window. If {count} is
|
||||||
@@ -390,7 +390,8 @@ CTRL-W CTRL-C *CTRL-W_CTRL-C*
|
|||||||
CTRL-W o *CTRL-W_o* *E445*
|
CTRL-W o *CTRL-W_o* *E445*
|
||||||
CTRL-W CTRL-O *CTRL-W_CTRL-O* *:on* *:only*
|
CTRL-W CTRL-O *CTRL-W_CTRL-O* *:on* *:only*
|
||||||
Make the current window the only one on the screen. All other
|
Make the current window the only one on the screen. All other
|
||||||
windows are closed. For {count} see |:quit| command.
|
windows are closed. For {count} see the `:quit` command
|
||||||
|
above |:count_quit|.
|
||||||
|
|
||||||
When the 'hidden' option is set, all buffers in closed windows
|
When the 'hidden' option is set, all buffers in closed windows
|
||||||
become hidden.
|
become hidden.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" Vim support file to detect file types
|
" Vim support file to detect file types
|
||||||
"
|
"
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2021 Apr 17
|
" Last Change: 2021 Oct 03
|
||||||
|
|
||||||
" Listen very carefully, I will say this only once
|
" Listen very carefully, I will say this only once
|
||||||
if exists("did_load_filetypes")
|
if exists("did_load_filetypes")
|
||||||
@@ -393,7 +393,7 @@ au BufNewFile,BufRead *.cfm,*.cfi,*.cfc setf cf
|
|||||||
" Configure scripts
|
" Configure scripts
|
||||||
au BufNewFile,BufRead configure.in,configure.ac setf config
|
au BufNewFile,BufRead configure.in,configure.ac setf config
|
||||||
|
|
||||||
" CUDA Cumpute Unified Device Architecture
|
" CUDA Compute Unified Device Architecture
|
||||||
au BufNewFile,BufRead *.cu,*.cuh setf cuda
|
au BufNewFile,BufRead *.cu,*.cuh setf cuda
|
||||||
|
|
||||||
" Dockerfile; Podman uses the same syntax with name Containerfile
|
" Dockerfile; Podman uses the same syntax with name Containerfile
|
||||||
@@ -408,8 +408,15 @@ au BufNewFile,BufRead *enlightenment/*.cfg setf c
|
|||||||
" Eterm
|
" Eterm
|
||||||
au BufNewFile,BufRead *Eterm/*.cfg setf eterm
|
au BufNewFile,BufRead *Eterm/*.cfg setf eterm
|
||||||
|
|
||||||
|
" Elixir or Euphoria
|
||||||
|
au BufNewFile,BufRead *.ex call dist#ft#ExCheck()
|
||||||
|
|
||||||
|
" Elixir
|
||||||
|
au BufRead,BufNewFile mix.lock,*.exs setf elixir
|
||||||
|
au BufRead,BufNewFile *.eex,*.leex setf eelixir
|
||||||
|
|
||||||
" Euphoria 3 or 4
|
" Euphoria 3 or 4
|
||||||
au BufNewFile,BufRead *.eu,*.ew,*.ex,*.exu,*.exw call dist#ft#EuphoriaCheck()
|
au BufNewFile,BufRead *.eu,*.ew,*.exu,*.exw call dist#ft#EuphoriaCheck()
|
||||||
if has("fname_case")
|
if has("fname_case")
|
||||||
au BufNewFile,BufRead *.EU,*.EW,*.EX,*.EXU,*.EXW call dist#ft#EuphoriaCheck()
|
au BufNewFile,BufRead *.EU,*.EW,*.EX,*.EXU,*.EXW call dist#ft#EuphoriaCheck()
|
||||||
endif
|
endif
|
||||||
@@ -481,7 +488,7 @@ au BufNewFile,BufRead *.desktop,*.directory setf desktop
|
|||||||
au BufNewFile,BufRead dict.conf,.dictrc setf dictconf
|
au BufNewFile,BufRead dict.conf,.dictrc setf dictconf
|
||||||
|
|
||||||
" Dictd config
|
" Dictd config
|
||||||
au BufNewFile,BufRead dictd.conf setf dictdconf
|
au BufNewFile,BufRead dictd*.conf setf dictdconf
|
||||||
|
|
||||||
" Diff files
|
" Diff files
|
||||||
au BufNewFile,BufRead *.diff,*.rej setf diff
|
au BufNewFile,BufRead *.diff,*.rej setf diff
|
||||||
@@ -530,8 +537,13 @@ au BufNewFile,BufRead *.drac,*.drc,*lvs,*lpe setf dracula
|
|||||||
" Datascript
|
" Datascript
|
||||||
au BufNewFile,BufRead *.ds setf datascript
|
au BufNewFile,BufRead *.ds setf datascript
|
||||||
|
|
||||||
" dsl
|
" dsl: DSSSL or Structurizr
|
||||||
au BufNewFile,BufRead *.dsl setf dsl
|
au BufNewFile,BufRead *.dsl
|
||||||
|
\ if getline(1) =~ '^\s*<\!' |
|
||||||
|
\ setf dsl |
|
||||||
|
\ else |
|
||||||
|
\ setf structurizr |
|
||||||
|
\ endif
|
||||||
|
|
||||||
" DTD (Document Type Definition for XML)
|
" DTD (Document Type Definition for XML)
|
||||||
au BufNewFile,BufRead *.dtd setf dtd
|
au BufNewFile,BufRead *.dtd setf dtd
|
||||||
@@ -643,6 +655,9 @@ au BufNewFile,BufRead *.mo,*.gdmo setf gdmo
|
|||||||
" Gedcom
|
" Gedcom
|
||||||
au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
|
au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
|
||||||
|
|
||||||
|
" Gemtext
|
||||||
|
au BufNewFile,BufRead *.gmi,*.gemini setf gemtext
|
||||||
|
|
||||||
" Gift (Moodle)
|
" Gift (Moodle)
|
||||||
autocmd BufRead,BufNewFile *.gift setf gift
|
autocmd BufRead,BufNewFile *.gift setf gift
|
||||||
|
|
||||||
@@ -692,6 +707,7 @@ au BufNewFile,BufRead *.gpi setf gnuplot
|
|||||||
|
|
||||||
" Go (Google)
|
" Go (Google)
|
||||||
au BufNewFile,BufRead *.go setf go
|
au BufNewFile,BufRead *.go setf go
|
||||||
|
au BufNewFile,BufRead Gopkg.lock setf toml
|
||||||
|
|
||||||
" GrADS scripts
|
" GrADS scripts
|
||||||
au BufNewFile,BufRead *.gs setf grads
|
au BufNewFile,BufRead *.gs setf grads
|
||||||
@@ -855,6 +871,21 @@ au BufNewFile,BufRead *.jov,*.j73,*.jovial setf jovial
|
|||||||
" JSON
|
" JSON
|
||||||
au BufNewFile,BufRead *.json,*.jsonp,*.webmanifest setf json
|
au BufNewFile,BufRead *.json,*.jsonp,*.webmanifest setf json
|
||||||
|
|
||||||
|
" JSON Patch (RFC 6902)
|
||||||
|
au BufNewFile,BufRead *.json-patch setf json
|
||||||
|
|
||||||
|
" Jupyter Notebook is also json
|
||||||
|
au BufNewFile,BufRead *.ipynb setf json
|
||||||
|
|
||||||
|
" Other files that look like json
|
||||||
|
au BufNewFile,BufRead .babelrc,.eslintrc,.prettierrc,.firebaserc setf json
|
||||||
|
|
||||||
|
" JSONC
|
||||||
|
au BufNewFile,BufRead *.jsonc setf jsonc
|
||||||
|
|
||||||
|
" Julia
|
||||||
|
au BufNewFile,BufRead *.jl setf julia
|
||||||
|
|
||||||
" Kixtart
|
" Kixtart
|
||||||
au BufNewFile,BufRead *.kix setf kix
|
au BufNewFile,BufRead *.kix setf kix
|
||||||
|
|
||||||
@@ -1002,7 +1033,7 @@ au BufNewFile,BufRead *.markdown,*.mdown,*.mkd,*.mkdn,*.mdwn,*.md setf markdown
|
|||||||
" Mason
|
" Mason
|
||||||
au BufNewFile,BufRead *.mason,*.mhtml,*.comp setf mason
|
au BufNewFile,BufRead *.mason,*.mhtml,*.comp setf mason
|
||||||
|
|
||||||
" Mathematica, Matlab, Murphi or Objective C
|
" Mathematica, Matlab, Murphi, Objective C or Octave
|
||||||
au BufNewFile,BufRead *.m call dist#ft#FTm()
|
au BufNewFile,BufRead *.m call dist#ft#FTm()
|
||||||
|
|
||||||
" Mathematica notebook
|
" Mathematica notebook
|
||||||
@@ -1065,6 +1096,9 @@ au BufNewFile,BufRead *.moo setf moo
|
|||||||
" Modconf
|
" Modconf
|
||||||
au BufNewFile,BufRead */etc/modules.conf,*/etc/modules,*/etc/conf.modules setf modconf
|
au BufNewFile,BufRead */etc/modules.conf,*/etc/modules,*/etc/conf.modules setf modconf
|
||||||
|
|
||||||
|
" MPD is based on XML
|
||||||
|
au BufNewFile,BufRead *.mpd setf xml
|
||||||
|
|
||||||
" Mplayer config
|
" Mplayer config
|
||||||
au BufNewFile,BufRead mplayer.conf,*/.mplayer/config setf mplayerconf
|
au BufNewFile,BufRead mplayer.conf,*/.mplayer/config setf mplayerconf
|
||||||
|
|
||||||
@@ -1083,6 +1117,9 @@ au BufNewFile,BufRead *.mysql setf mysql
|
|||||||
" Mutt setup files (must be before catch *.rc)
|
" Mutt setup files (must be before catch *.rc)
|
||||||
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
||||||
|
|
||||||
|
" Tcl Shell RC file
|
||||||
|
au BufNewFile,BufRead tclsh.rc setf tcl
|
||||||
|
|
||||||
" M$ Resource files
|
" M$ Resource files
|
||||||
au BufNewFile,BufRead *.rc,*.rch setf rc
|
au BufNewFile,BufRead *.rc,*.rch setf rc
|
||||||
|
|
||||||
@@ -1113,6 +1150,9 @@ au BufNewFile,BufRead Neomuttrc setf neomuttrc
|
|||||||
" Netrc
|
" Netrc
|
||||||
au BufNewFile,BufRead .netrc setf netrc
|
au BufNewFile,BufRead .netrc setf netrc
|
||||||
|
|
||||||
|
" Nginx
|
||||||
|
au BufNewFile,BufRead *.nginx,nginx*.conf,*nginx.conf,*/etc/nginx/*,*/usr/local/nginx/conf/*,*/nginx/*.conf setf nginx
|
||||||
|
|
||||||
" Ninja file
|
" Ninja file
|
||||||
au BufNewFile,BufRead *.ninja setf ninja
|
au BufNewFile,BufRead *.ninja setf ninja
|
||||||
|
|
||||||
@@ -1148,6 +1188,9 @@ au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly,.ocamlinit,*.mlt,*.mlp,*.mlip,*.mli
|
|||||||
" Occam
|
" Occam
|
||||||
au BufNewFile,BufRead *.occ setf occam
|
au BufNewFile,BufRead *.occ setf occam
|
||||||
|
|
||||||
|
" Octave
|
||||||
|
au BufNewFile,BufRead octave.conf,.octaverc,octaverc setf octave
|
||||||
|
|
||||||
" Omnimark
|
" Omnimark
|
||||||
au BufNewFile,BufRead *.xom,*.xin setf omnimark
|
au BufNewFile,BufRead *.xom,*.xin setf omnimark
|
||||||
|
|
||||||
@@ -1248,7 +1291,7 @@ au BufNewFile,BufRead *.rcp setf pilrc
|
|||||||
au BufNewFile,BufRead .pinerc,pinerc,.pinercex,pinercex setf pine
|
au BufNewFile,BufRead .pinerc,pinerc,.pinercex,pinercex setf pine
|
||||||
|
|
||||||
" Pipenv Pipfiles
|
" Pipenv Pipfiles
|
||||||
au BufNewFile,BufRead Pipfile setf config
|
au BufNewFile,BufRead Pipfile setf toml
|
||||||
au BufNewFile,BufRead Pipfile.lock setf json
|
au BufNewFile,BufRead Pipfile.lock setf json
|
||||||
|
|
||||||
" PL/1, PL/I
|
" PL/1, PL/I
|
||||||
@@ -1356,6 +1399,9 @@ au BufNewFile,BufRead *.pk setf poke
|
|||||||
" Protocols
|
" Protocols
|
||||||
au BufNewFile,BufRead */etc/protocols setf protocols
|
au BufNewFile,BufRead */etc/protocols setf protocols
|
||||||
|
|
||||||
|
" Pyret
|
||||||
|
au BufNewFile,BufRead *.arr setf pyret
|
||||||
|
|
||||||
" Pyrex
|
" Pyrex
|
||||||
au BufNewFile,BufRead *.pyx,*.pxd setf pyrex
|
au BufNewFile,BufRead *.pyx,*.pxd setf pyrex
|
||||||
|
|
||||||
@@ -1367,7 +1413,7 @@ au BufNewFile,BufRead *.ptl,*.pyi,SConstruct setf python
|
|||||||
" Radiance
|
" Radiance
|
||||||
au BufNewFile,BufRead *.rad,*.mat setf radiance
|
au BufNewFile,BufRead *.rad,*.mat setf radiance
|
||||||
|
|
||||||
" Raku (formelly Perl6)
|
" Raku (formerly Perl6)
|
||||||
au BufNewFile,BufRead *.pm6,*.p6,*.t6,*.pod6,*.raku,*.rakumod,*.rakudoc,*.rakutest setf raku
|
au BufNewFile,BufRead *.pm6,*.p6,*.t6,*.pod6,*.raku,*.rakumod,*.rakudoc,*.rakutest setf raku
|
||||||
|
|
||||||
" Ratpoison config/command files
|
" Ratpoison config/command files
|
||||||
@@ -1479,6 +1525,7 @@ au BufNewFile,BufRead [rR]antfile,*.rant,[rR]akefile,*.rake setf ruby
|
|||||||
|
|
||||||
" Rust
|
" Rust
|
||||||
au BufNewFile,BufRead *.rs setf 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)
|
" S-lang (or shader language, or SmallLisp)
|
||||||
au BufNewFile,BufRead *.sl setf slang
|
au BufNewFile,BufRead *.sl setf slang
|
||||||
@@ -1504,6 +1551,9 @@ au BufNewFile,BufRead *.sbt setf sbt
|
|||||||
" Scilab
|
" Scilab
|
||||||
au BufNewFile,BufRead *.sci,*.sce setf scilab
|
au BufNewFile,BufRead *.sci,*.sce setf scilab
|
||||||
|
|
||||||
|
" scdoc
|
||||||
|
au BufNewFile,BufRead *.scd setf scdoc
|
||||||
|
|
||||||
" SCSS
|
" SCSS
|
||||||
au BufNewFile,BufRead *.scss setf scss
|
au BufNewFile,BufRead *.scss setf scss
|
||||||
|
|
||||||
@@ -1593,7 +1643,7 @@ au BufNewFile,BufRead .zshrc,.zshenv,.zlogin,.zlogout,.zcompdump setf zsh
|
|||||||
au BufNewFile,BufRead *.zsh setf zsh
|
au BufNewFile,BufRead *.zsh setf zsh
|
||||||
|
|
||||||
" Scheme
|
" Scheme
|
||||||
au BufNewFile,BufRead *.scm,*.ss,*.rkt setf scheme
|
au BufNewFile,BufRead *.scm,*.ss,*.rkt,*.rktd,*.rktl setf scheme
|
||||||
|
|
||||||
" Screen RC
|
" Screen RC
|
||||||
au BufNewFile,BufRead .screenrc,screenrc setf screen
|
au BufNewFile,BufRead .screenrc,screenrc setf screen
|
||||||
@@ -1766,7 +1816,7 @@ au BufRead,BufNewFile {pending,completed,undo}.data setf taskdata
|
|||||||
au BufRead,BufNewFile *.task setf taskedit
|
au BufRead,BufNewFile *.task setf taskedit
|
||||||
|
|
||||||
" Tcl (JACL too)
|
" Tcl (JACL too)
|
||||||
au BufNewFile,BufRead *.tcl,*.tk,*.itcl,*.itk,*.jacl setf tcl
|
au BufNewFile,BufRead *.tcl,*.tm,*.tk,*.itcl,*.itk,*.jacl,.tclshrc,.wishrc setf tcl
|
||||||
|
|
||||||
" TealInfo
|
" TealInfo
|
||||||
au BufNewFile,BufRead *.tli setf tli
|
au BufNewFile,BufRead *.tli setf tli
|
||||||
@@ -1960,14 +2010,15 @@ au BufNewFile,BufRead *.ws[fc] setf wsh
|
|||||||
" XHTML
|
" XHTML
|
||||||
au BufNewFile,BufRead *.xhtml,*.xht setf xhtml
|
au BufNewFile,BufRead *.xhtml,*.xht setf xhtml
|
||||||
|
|
||||||
" X Pixmap (dynamically sets colors, use BufEnter to make it work better)
|
" X Pixmap (dynamically sets colors, this used to trigger on BufEnter to make
|
||||||
au BufEnter *.xpm
|
" it work better, but that breaks setting 'filetype' manually)
|
||||||
|
au BufNewFile,BufRead *.xpm
|
||||||
\ if getline(1) =~ "XPM2" |
|
\ if getline(1) =~ "XPM2" |
|
||||||
\ setf xpm2 |
|
\ setf xpm2 |
|
||||||
\ else |
|
\ else |
|
||||||
\ setf xpm |
|
\ setf xpm |
|
||||||
\ endif
|
\ endif
|
||||||
au BufEnter *.xpm2 setf xpm2
|
au BufNewFile,BufRead *.xpm2 setf xpm2
|
||||||
|
|
||||||
" XFree86 config
|
" XFree86 config
|
||||||
au BufNewFile,BufRead XF86Config
|
au BufNewFile,BufRead XF86Config
|
||||||
@@ -2102,7 +2153,7 @@ au BufNewFile,BufRead proftpd.conf* call s:StarSetf('apachestyle')
|
|||||||
|
|
||||||
" More Apache config files
|
" More Apache config files
|
||||||
au BufNewFile,BufRead access.conf*,apache.conf*,apache2.conf*,httpd.conf*,srm.conf* call s:StarSetf('apache')
|
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.d/*.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')
|
||||||
|
|
||||||
" Asterisk config file
|
" Asterisk config file
|
||||||
au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk')
|
au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk')
|
||||||
@@ -2256,6 +2307,9 @@ au BufNewFile,BufRead .tcshrc* call dist#ft#SetFileTypeShell("tcsh")
|
|||||||
" csh scripts ending in a star
|
" csh scripts ending in a star
|
||||||
au BufNewFile,BufRead .login*,.cshrc* call dist#ft#CSH()
|
au BufNewFile,BufRead .login*,.cshrc* call dist#ft#CSH()
|
||||||
|
|
||||||
|
" tmux configuration with arbitrary extension
|
||||||
|
au BufNewFile,BufRead {.,}tmux*.conf* setf tmux
|
||||||
|
|
||||||
" VHDL
|
" VHDL
|
||||||
au BufNewFile,BufRead *.vhdl_[0-9]* call s:StarSetf('vhdl')
|
au BufNewFile,BufRead *.vhdl_[0-9]* call s:StarSetf('vhdl')
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
" Vim ftplugin file
|
" Vim ftplugin file
|
||||||
" Language: 8th
|
" Language: 8th
|
||||||
" Version: any
|
" Version: any
|
||||||
" Last Change: 2015/11/08
|
" Last Change: 2021 Sep 20
|
||||||
|
" Last Change: 2021/09/20
|
||||||
" Maintainer: Ron Aaron <ron@aaron-tech.com>
|
" Maintainer: Ron Aaron <ron@aaron-tech.com>
|
||||||
" URL: https://8th-dev.com/
|
" URL: https://8th-dev.com/
|
||||||
" Filetypes: *.8th
|
" Filetypes: *.8th
|
||||||
" NOTE: 8th allows any non-whitespace in a name, so you need to do:
|
" NOTE: 8th allows any non-whitespace in a name, so you need to do:
|
||||||
" setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
" setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||||
@@ -14,12 +15,13 @@ if exists("b:did_8thplugin")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Don't load another plugin for this buffer
|
" Don't load another 8th plugin for this buffer
|
||||||
let b:did_8thplugin = 1
|
let b:did_8thplugin = 1
|
||||||
|
|
||||||
setlocal ts=2 sts=2 sw=2 et
|
setlocal ts=2 sts=2 sw=2 et
|
||||||
setlocal com=s1:/*,mb:*,ex:*/,:\|,:\\
|
setlocal com=s1:/*,mb:*,ex:*/,b:--,be:\\
|
||||||
setlocal fo=tcrqol
|
setlocal fo=tcrqol
|
||||||
setlocal matchpairs+=\::;
|
setlocal matchpairs+=\::;
|
||||||
setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||||
setlocal suffixesadd=.8th
|
setlocal suffixesadd=.8th
|
||||||
|
let b:undo_ftplugin = "setlocal ts< sts< sw< et< com< fo< mps< isk< sua<"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" Vim filetype plugin file
|
" Vim filetype plugin file
|
||||||
" Language: C
|
" Language: C
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2020 Feb 01
|
" Last Change: 2021 Sep 21
|
||||||
|
|
||||||
" Only do this when not done yet for this buffer
|
" Only do this when not done yet for this buffer
|
||||||
if exists("b:did_ftplugin")
|
if exists("b:did_ftplugin")
|
||||||
@@ -40,8 +40,11 @@ endif
|
|||||||
|
|
||||||
" When the matchit plugin is loaded, this makes the % command skip parens and
|
" When the matchit plugin is loaded, this makes the % command skip parens and
|
||||||
" braces in comments properly.
|
" braces in comments properly.
|
||||||
let b:match_words = '^\s*#\s*if\(\|def\|ndef\)\>:^\s*#\s*elif\>:^\s*#\s*else\>:^\s*#\s*endif\>'
|
if !exists("b:match_words")
|
||||||
let b:match_skip = 's:comment\|string\|character\|special'
|
let b:match_words = '^\s*#\s*if\(\|def\|ndef\)\>:^\s*#\s*elif\>:^\s*#\s*else\>:^\s*#\s*endif\>'
|
||||||
|
let b:match_skip = 's:comment\|string\|character\|special'
|
||||||
|
let b:undo_ftplugin ..= " | unlet! b:match_skip b:match_words"
|
||||||
|
endif
|
||||||
|
|
||||||
" Win32 can filter files in the browse dialog
|
" Win32 can filter files in the browse dialog
|
||||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||||
@@ -62,6 +65,7 @@ if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
|||||||
\ "C++ Source Files (*.cpp *.c++)\t*.cpp;*.c++\n" .
|
\ "C++ Source Files (*.cpp *.c++)\t*.cpp;*.c++\n" .
|
||||||
\ "All Files (*.*)\t*.*\n"
|
\ "All Files (*.*)\t*.*\n"
|
||||||
endif
|
endif
|
||||||
|
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let &cpo = s:cpo_save
|
let &cpo = s:cpo_save
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
" Language: generic Changelog file
|
" Language: generic Changelog file
|
||||||
" Maintainer: Martin Florian <marfl@posteo.de>
|
" Maintainer: Martin Florian <marfl@posteo.de>
|
||||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||||
" Latest Revision: 2015-10-25
|
" Latest Revision: 2021-10-17
|
||||||
" Variables:
|
" Variables:
|
||||||
" g:changelog_timeformat (deprecated: use g:changelog_dateformat instead) -
|
" g:changelog_timeformat (deprecated: use g:changelog_dateformat instead) -
|
||||||
" description: the timeformat used in ChangeLog entries.
|
" description: the timeformat used in ChangeLog entries.
|
||||||
@@ -55,7 +55,7 @@ if &filetype == 'changelog'
|
|||||||
elseif $EMAIL_ADDRESS != ""
|
elseif $EMAIL_ADDRESS != ""
|
||||||
return $EMAIL_ADDRESS
|
return $EMAIL_ADDRESS
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let login = s:login()
|
let login = s:login()
|
||||||
return printf('%s <%s@%s>', s:name(login), login, s:hostname())
|
return printf('%s <%s@%s>', s:name(login), login, s:hostname())
|
||||||
endfunction
|
endfunction
|
||||||
@@ -223,12 +223,6 @@ if &filetype == 'changelog'
|
|||||||
let &paste = save_paste
|
let &paste = save_paste
|
||||||
endfunction
|
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<"
|
let b:undo_ftplugin = "setl com< fo< et< ai<"
|
||||||
|
|
||||||
setlocal comments=
|
setlocal comments=
|
||||||
@@ -241,14 +235,26 @@ if &filetype == 'changelog'
|
|||||||
let b:undo_ftplugin .= " tw<"
|
let b:undo_ftplugin .= " tw<"
|
||||||
endif
|
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
|
let &cpo = s:cpo_save
|
||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
else
|
else
|
||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
" Add the Changelog opening mapping
|
if !exists("no_plugin_maps") && !exists("no_changelog_maps")
|
||||||
nnoremap <silent> <Leader>o :call <SID>open_changelog()<CR>
|
" 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()
|
function! s:open_changelog()
|
||||||
let path = expand('%:p:h')
|
let path = expand('%:p:h')
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
" Last Change: 2018-03-05
|
" Last Change: 2018-03-05
|
||||||
" Author: Evan Hanson <evhan@foldling.org>
|
" Author: Evan Hanson <evhan@foldling.org>
|
||||||
" Maintainer: Evan Hanson <evhan@foldling.org>
|
" Maintainer: Evan Hanson <evhan@foldling.org>
|
||||||
|
" Repository: https://git.foldling.org/vim-scheme.git
|
||||||
" URL: https://foldling.org/vim/ftplugin/chicken.vim
|
" URL: https://foldling.org/vim/ftplugin/chicken.vim
|
||||||
" Notes: These are supplemental settings, to be loaded after the core
|
" Notes: These are supplemental settings, to be loaded after the core
|
||||||
" Scheme ftplugin file (ftplugin/scheme.vim). Enable it by setting
|
" Scheme ftplugin file (ftplugin/scheme.vim). Enable it by setting
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
" Language: ConTeXt typesetting engine
|
" Language: ConTeXt typesetting engine
|
||||||
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||||
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
||||||
" Latest Revision: 2016 Oct 30
|
" Latest Revision: 2021 Oct 15
|
||||||
|
|
||||||
if exists("b:did_ftplugin")
|
if exists("b:did_ftplugin")
|
||||||
finish
|
finish
|
||||||
@@ -17,7 +17,6 @@ if !exists('current_compiler')
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
let b:undo_ftplugin = "setl com< cms< def< inc< sua< fo< ofu<"
|
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
|
setlocal comments=b:%D,b:%C,b:%M,:% commentstring=%\ %s formatoptions+=tjcroql2
|
||||||
if get(b:, 'context_metapost', get(g:, 'context_metapost', 1))
|
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
|
setlocal suffixesadd=.tex
|
||||||
|
|
||||||
if exists("loaded_matchit")
|
if exists("loaded_matchit") && !exists("b:match_words")
|
||||||
let b:match_ignorecase = 0
|
let b:match_ignorecase = 0
|
||||||
let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
|
let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
|
||||||
let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
|
let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
|
||||||
\ '\\start\(\a\+\):\\stop\1'
|
\ '\\start\(\a\+\):\\stop\1'
|
||||||
|
let b:undo_ftplugin .= " | unlet! b:match_ignorecase b:match_words b:match_skip"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let s:context_regex = {
|
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)')
|
call map(range(2, a:count), 'search(s:context_regex[a:what], a:flags)')
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" Move around macros.
|
if !exists("no_plugin_maps") && !exists("no_context_maps")
|
||||||
nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
|
" Move around macros.
|
||||||
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", "bW", v:false) <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", "bW", v:true) <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, "beginsection", "W", v:false) <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, "beginsection", "W", v:true) <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", "bW", v:false) <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", "bW", v:true) <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, "endsection", "W", v:false) <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, "endsection", "W", v:true) <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, "beginblock", "bW", v:false) <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, "beginblock", "bW", v:true) <CR>
|
||||||
vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", 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
|
" Other useful mappings
|
||||||
if get(g:, 'context_mappings', 1)
|
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)
|
call cursor(search(s:tp_regex, 'W') - 1, 1)
|
||||||
endf
|
endf
|
||||||
|
|
||||||
" Reflow paragraphs with commands like gqtp ("gq TeX paragraph")
|
if !exists("no_plugin_maps") && !exists("no_context_maps")
|
||||||
onoremap <silent><buffer> tp :<c-u>call <sid>tp()<cr>
|
" Reflow paragraphs with commands like gqtp ("gq TeX paragraph")
|
||||||
" Select TeX paragraph
|
onoremap <silent><buffer> tp :<c-u>call <sid>tp()<cr>
|
||||||
vnoremap <silent><buffer> tp <esc>:<c-u>call <sid>tp()<cr>
|
" Select TeX paragraph
|
||||||
|
vnoremap <silent><buffer> tp <esc>:<c-u>call <sid>tp()<cr>
|
||||||
|
|
||||||
" $...$ text object
|
" $...$ text object
|
||||||
onoremap <silent><buffer> i$ :<c-u>normal! T$vt$<cr>
|
onoremap <silent><buffer> i$ :<c-u>normal! T$vt$<cr>
|
||||||
onoremap <silent><buffer> a$ :<c-u>normal! F$vf$<cr>
|
onoremap <silent><buffer> a$ :<c-u>normal! F$vf$<cr>
|
||||||
vnoremap <buffer> i$ T$ot$
|
vnoremap <buffer> i$ T$ot$
|
||||||
vnoremap <buffer> a$ F$of$
|
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
|
endif
|
||||||
|
|
||||||
" Commands for asynchronous typesetting
|
" Commands for asynchronous typesetting
|
||||||
|
|||||||
@@ -1,21 +1,23 @@
|
|||||||
" Vim filetype plugin file
|
" Vim filetype plugin file
|
||||||
" Language: csh
|
" Language: csh
|
||||||
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
" Last Changed: 20 Jan 2009
|
" Previous Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
||||||
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
|
" Contributor: Johannes Zellner <johannes@zellner.org>
|
||||||
|
" Last Change: 2021 Oct 15
|
||||||
|
|
||||||
if exists("b:did_ftplugin") | finish | endif
|
if exists("b:did_ftplugin") | finish | endif
|
||||||
let b:did_ftplugin = 1
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
" Make sure the continuation lines below do not cause problems in
|
|
||||||
" compatibility mode.
|
|
||||||
let s:save_cpo = &cpo
|
let s:save_cpo = &cpo
|
||||||
set cpo-=C
|
set cpo-=C
|
||||||
|
|
||||||
|
setlocal comments=:#
|
||||||
setlocal commentstring=#%s
|
setlocal commentstring=#%s
|
||||||
setlocal formatoptions-=t
|
setlocal formatoptions-=t
|
||||||
setlocal formatoptions+=crql
|
setlocal formatoptions+=crql
|
||||||
|
|
||||||
|
let b:undo_ftplugin = "setlocal com< cms< fo<"
|
||||||
|
|
||||||
" Csh: thanks to Johannes Zellner
|
" Csh: thanks to Johannes Zellner
|
||||||
" - Both foreach and end must appear alone on separate lines.
|
" - Both foreach and end must appear alone on separate lines.
|
||||||
" - The words else and endif must appear at the beginning of input 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
|
" - Each case label and the default label must appear at the start of a
|
||||||
" line.
|
" line.
|
||||||
" - while and end must appear alone on their input lines.
|
" - while and end must appear alone on their input lines.
|
||||||
if exists("loaded_matchit")
|
if exists("loaded_matchit") && !exists("b:match_words")
|
||||||
let b:match_words =
|
let s:line_start = '\%(^\s*\)\@<='
|
||||||
\ '^\s*\<if\>.*(.*).*\<then\>:'.
|
let b:match_words =
|
||||||
\ '^\s*\<else\>\s\+\<if\>.*(.*).*\<then\>:^\s*\<else\>:'.
|
\ s:line_start .. 'if\s*(.*)\s*then\>:' ..
|
||||||
\ '^\s*\<endif\>,'.
|
\ s:line_start .. 'else\s\+if\s*(.*)\s*then\>:' .. s:line_start .. 'else\>:' ..
|
||||||
\ '\%(^\s*\<foreach\>\s\+\S\+\|^s*\<while\>\).*(.*):'.
|
\ s:line_start .. 'endif\>,' ..
|
||||||
\ '\<break\>:\<continue\>:^\s*\<end\>,'.
|
\ s:line_start .. '\%(\<foreach\s\+\h\w*\|while\)\s*(:' ..
|
||||||
\ '^\s*\<switch\>.*(.*):^\s*\<case\>\s\+:^\s*\<default\>:^\s*\<endsw\>'
|
\ '\<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
|
endif
|
||||||
|
|
||||||
" Change the :browse e filter to primarily show csh-related files.
|
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||||
if has("gui_win32")
|
let b:browsefilter="csh Scripts (*.csh)\t*.csh\n" ..
|
||||||
let b:browsefilter="csh Scripts (*.csh)\t*.csh\n" .
|
\ "All Files (*.*)\t*.*\n"
|
||||||
\ "All Files (*.*)\t*.*\n"
|
let b:undo_ftplugin ..= " | unlet b:browsefilter"
|
||||||
endif
|
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
|
let &cpo = s:save_cpo
|
||||||
unlet s:save_cpo
|
unlet s:save_cpo
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
" Vim filetype plugin file
|
" Vim filetype plugin file
|
||||||
" Language: Configuration File (ini file) for MSDOS/MS Windows
|
" Language: Configuration File (ini file) for MS-DOS/MS Windows
|
||||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||||
" Latest Revision: 2008-07-09
|
" Latest Revision: 2008-07-09
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user