mirror of
https://github.com/zoriya/vim.git
synced 2025-12-12 02:06:18 +00:00
Compare commits
961 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 | ||
|
|
3044324e8d | ||
|
|
7b4f76c030 | ||
|
|
544a38e44d | ||
|
|
31e299c08f | ||
|
|
a42e6e0082 | ||
|
|
54656015d3 | ||
|
|
c04f2a4cd4 | ||
|
|
e3f50ad640 | ||
|
|
b55d618f19 | ||
|
|
a733042b12 | ||
|
|
445f11d5bc | ||
|
|
dc73b4b75d | ||
|
|
c41badb748 | ||
|
|
8cf02e5cf8 | ||
|
|
2f9c209ba0 | ||
|
|
f7a023e580 | ||
|
|
3a7503c34c | ||
|
|
f05d2fc539 | ||
|
|
e729ce294f | ||
|
|
6db7b6375a | ||
|
|
518df27ebe | ||
|
|
99285550a9 | ||
|
|
2067733b5c | ||
|
|
c64ed2b714 | ||
|
|
3cfa5b16b0 | ||
|
|
7a2217bedd | ||
|
|
f5bfa8faa7 | ||
|
|
2752360646 | ||
|
|
59b262362f | ||
|
|
1328bde9d4 | ||
|
|
c6d71532dd | ||
|
|
8da6d6db34 | ||
|
|
b288ba9f1d | ||
|
|
4f2417ffee | ||
|
|
84e9ade826 | ||
|
|
21492743e8 | ||
|
|
56cddb3879 | ||
|
|
5fa9b24440 | ||
|
|
6c4c404c58 | ||
|
|
24951a67c2 | ||
|
|
6e0b553fa1 | ||
|
|
4f3c57f798 | ||
|
|
5072b47a22 | ||
|
|
85eee5b969 | ||
|
|
0a808598e4 | ||
|
|
01c798c31a | ||
|
|
a83d06026d | ||
|
|
c3cb1c92a3 | ||
|
|
0f37e3561d | ||
|
|
a2e468fcac | ||
|
|
eecf2b35a1 | ||
|
|
eeec254878 | ||
|
|
b54abeeafb | ||
|
|
6f1d2aa437 | ||
|
|
6a43b37b76 | ||
|
|
3d9c4eefe6 | ||
|
|
bb162367ac | ||
|
|
2ac7184d34 | ||
|
|
ef8706fb84 | ||
|
|
2fa9384ca1 | ||
|
|
d2ea7cf10a | ||
|
|
6ef5ab5904 | ||
|
|
f883d9027c | ||
|
|
e71c0ebe2c | ||
|
|
0b49648486 | ||
|
|
e0a7658bc8 | ||
|
|
e5b4486c42 | ||
|
|
28cf44f761 | ||
|
|
a5787c3742 | ||
|
|
1d3a14ecf0 | ||
|
|
74ede80aeb | ||
|
|
a06e345af5 | ||
|
|
5a6cfb3ff2 | ||
|
|
3e72dcad8b | ||
|
|
1174b018a6 | ||
|
|
f89be8de14 | ||
|
|
3552e74289 | ||
|
|
d0edaf9dc2 | ||
|
|
dc3275a1ac | ||
|
|
4ac198c61c | ||
|
|
2c4a1d0a61 | ||
|
|
bc869874fe | ||
|
|
89dcb4dce3 | ||
|
|
543467136f | ||
|
|
840f91f110 | ||
|
|
c512599b22 | ||
|
|
7d840e9ac7 | ||
|
|
4c8e8c6e19 | ||
|
|
34fcb69724 | ||
|
|
872bee557e | ||
|
|
1e469c72ee | ||
|
|
e97c7c962c | ||
|
|
15bbb8f4f3 | ||
|
|
611728f806 | ||
|
|
ad5c178a19 | ||
|
|
f5409dbf66 | ||
|
|
b777da9be8 | ||
|
|
1e615669c0 | ||
|
|
23c0192166 | ||
|
|
5cf94577cf | ||
|
|
4eb1914e1b | ||
|
|
46aa6f93ac | ||
|
|
56c9fd0107 | ||
|
|
4781d6fd86 | ||
|
|
796139ae3a | ||
|
|
485b627100 | ||
|
|
cbe178e3dc | ||
|
|
082a3bf961 | ||
|
|
ecb664501d | ||
|
|
d87c21a918 | ||
|
|
074f84c01f | ||
|
|
965c04486c | ||
|
|
fc643e6016 | ||
|
|
3b1373b193 | ||
|
|
1764faa386 | ||
|
|
dcfc311198 | ||
|
|
6b02b38ed0 | ||
|
|
ff65288aa8 | ||
|
|
3ec3217f04 | ||
|
|
50157ef1c2 | ||
|
|
0820f4de58 | ||
|
|
30e3de21fc | ||
|
|
d832c3c56e | ||
|
|
761ead497f | ||
|
|
847fe7d750 | ||
|
|
71c6f7a665 | ||
|
|
36f96a5151 | ||
|
|
fe8ebdbe5c | ||
|
|
588cf7547b | ||
|
|
68db996b62 | ||
|
|
918b08957c | ||
|
|
24f720998f | ||
|
|
f06ab6ba38 | ||
|
|
f18332fb9e | ||
|
|
e08795e1ec | ||
|
|
261417b872 | ||
|
|
5631836975 | ||
|
|
e3e598e82b | ||
|
|
6d37e8e3ba | ||
|
|
b7c978154e | ||
|
|
dc3e2e65c9 | ||
|
|
5f7d4c049e | ||
|
|
3a00659db7 | ||
|
|
1ad72c8eb6 | ||
|
|
0279510444 | ||
|
|
ad43199572 | ||
|
|
df36514a64 | ||
|
|
97a6c6a1fb | ||
|
|
5f8ed7408a | ||
|
|
551c1aed65 | ||
|
|
2bf6034e5c | ||
|
|
1bb0da25a6 | ||
|
|
4c295027a4 | ||
|
|
5f628a12e5 | ||
|
|
4a22897591 | ||
|
|
3d0e7a956a | ||
|
|
b6c2e9a010 | ||
|
|
4934ed34c3 | ||
|
|
aeed2a6359 | ||
|
|
227c58a486 | ||
|
|
03717bf6a2 | ||
|
|
b80d2fb0e7 | ||
|
|
b06b50dfa0 | ||
|
|
bb01a1ef3a | ||
|
|
5930ddcd25 | ||
|
|
b98cec28d9 | ||
|
|
d386e923c7 | ||
|
|
dc4c2309f2 | ||
|
|
730bf30020 | ||
|
|
340c59ec6f | ||
|
|
bdc0f1c698 | ||
|
|
96cf4ba8fb | ||
|
|
7ba1e4d363 | ||
|
|
e0c03c8e10 | ||
|
|
a6aa16423f | ||
|
|
f6d9935a13 | ||
|
|
9f28416e54 | ||
|
|
11e3c5ba82 | ||
|
|
459fbdbf92 | ||
|
|
a369c3d9c1 | ||
|
|
2d5f385cee | ||
|
|
753bcf8c7d | ||
|
|
169502fb0b | ||
|
|
16678eb50f | ||
|
|
d23f8bde5c | ||
|
|
9ce47ec0b6 | ||
|
|
5c787fb792 | ||
|
|
63276685f9 | ||
|
|
8238f08838 | ||
|
|
3f88e71fa2 | ||
|
|
6d4c1c7ba8 | ||
|
|
4f2df37a0d | ||
|
|
2d1c57ed3d | ||
|
|
4c13721482 | ||
|
|
e8209b91b9 | ||
|
|
39211cba72 | ||
|
|
b7c21afef1 | ||
|
|
d551d6c268 | ||
|
|
f7e92aae15 | ||
|
|
d23b714d8b | ||
|
|
51e933261b | ||
|
|
0995c81f2f | ||
|
|
c70fe460b0 | ||
|
|
6c7cc347af | ||
|
|
56994d2158 | ||
|
|
112a006417 | ||
|
|
635bd60804 | ||
|
|
aa1959bd5e | ||
|
|
fe090eb58f | ||
|
|
6bc00699c5 | ||
|
|
f387f5dfbc | ||
|
|
bd6406f15d | ||
|
|
b141926890 | ||
|
|
0e3ff19196 | ||
|
|
b47bed2f7a | ||
|
|
a3589a0d6c | ||
|
|
f62d73933a | ||
|
|
2e240bd428 | ||
|
|
f6a8d420a8 | ||
|
|
f2253963c2 | ||
|
|
f48b2fa33c | ||
|
|
68452177ca | ||
|
|
cfc3023cb6 | ||
|
|
af8ea0d066 | ||
|
|
09f067fca3 | ||
|
|
f93bbd0262 | ||
|
|
e8e3078184 | ||
|
|
fed9e830fc | ||
|
|
da479c7597 | ||
|
|
fe95b94ffa | ||
|
|
c429769776 | ||
|
|
bb8a7ce0a1 | ||
|
|
87795939d0 | ||
|
|
51e7e78de7 | ||
|
|
962c43bf0d | ||
|
|
599410cb3c | ||
|
|
701cc6ca9e | ||
|
|
1088b69451 | ||
|
|
2a38908b05 | ||
|
|
767034c5b8 | ||
|
|
dcae51facc | ||
|
|
d8db838392 | ||
|
|
175a41c13f | ||
|
|
fa5963880d | ||
|
|
15e5e53ef2 | ||
|
|
130cbfc312 | ||
|
|
125ed2745c | ||
|
|
e5b0b98a90 | ||
|
|
8dddc1f0e2 | ||
|
|
c9605f0595 | ||
|
|
643ce6c0c6 | ||
|
|
e3d1f4c982 | ||
|
|
e9b8b78e04 | ||
|
|
86cdb8a4bd | ||
|
|
e8c4660a55 | ||
|
|
0d351a04e1 | ||
|
|
58fb7c39a0 | ||
|
|
b9c0cd897a | ||
|
|
2927c07b0e | ||
|
|
01ac0a1f66 | ||
|
|
e42939af87 | ||
|
|
0865b15bc6 | ||
|
|
ce5b06a6a9 | ||
|
|
0b94e297af | ||
|
|
886e5e737d | ||
|
|
409da842db | ||
|
|
68ffe8cade | ||
|
|
f2dd9cb995 | ||
|
|
3c49e74e18 | ||
|
|
90193e6140 | ||
|
|
26af8e54ff | ||
|
|
3a6aadb328 | ||
|
|
ceb0619433 | ||
|
|
a7511c0f4f | ||
|
|
77709b194c | ||
|
|
440cf096fa | ||
|
|
6e50ec2f0a | ||
|
|
c17ba791a9 | ||
|
|
26f201345d | ||
|
|
6437475ffb | ||
|
|
c48f2dc0be | ||
|
|
b9c6b6fb73 | ||
|
|
0df6030145 | ||
|
|
f65ed86f6f | ||
|
|
1e6bbfb560 | ||
|
|
5b8cabfef7 | ||
|
|
dcf29ac87f | ||
|
|
f5906aa780 | ||
|
|
3fa5e64e0e | ||
|
|
ef38bcf051 | ||
|
|
160a2b4dac | ||
|
|
ca51cc0a33 | ||
|
|
d877a5700f | ||
|
|
ce0b75711a | ||
|
|
49c51b825a | ||
|
|
5c504f680e | ||
|
|
b91d3f857f | ||
|
|
529fb5a5f6 | ||
|
|
12be734faf | ||
|
|
e535db86e7 | ||
|
|
dad4473f02 | ||
|
|
ae0f151ddf | ||
|
|
82820d9bf1 | ||
|
|
38a3bfa9a2 | ||
|
|
9ea7e55ab9 | ||
|
|
8b9abfd86c | ||
|
|
9dbe701fe1 | ||
|
|
3215466af9 | ||
|
|
b2cb6c8bbd | ||
|
|
f6bdd82c7e | ||
|
|
b2ac7d0663 | ||
|
|
df749a2b9c | ||
|
|
f49a1fcdb9 | ||
|
|
24f21fdfca | ||
|
|
c580943965 | ||
|
|
7b45d46cf7 | ||
|
|
32105ae88f | ||
|
|
79efa2e3b3 | ||
|
|
7007e31bde | ||
|
|
bb5d87c850 | ||
|
|
ccc25aa285 | ||
|
|
c61cb8bfe1 | ||
|
|
74e54fcb44 | ||
|
|
522eefd9a2 | ||
|
|
a2b3e7dc92 | ||
|
|
0a1a6a1aa4 | ||
|
|
ff87140046 | ||
|
|
3a0f092ac0 | ||
|
|
fa984418e7 | ||
|
|
a91a71322d | ||
|
|
2fecb53115 | ||
|
|
1ff89deeaa | ||
|
|
c54f347d63 | ||
|
|
f4a2ed0714 | ||
|
|
f28f2ac425 | ||
|
|
49f1e9ec3e | ||
|
|
da1dbed0df | ||
|
|
1f448d906b | ||
|
|
e98f60a591 | ||
|
|
2cec027af4 | ||
|
|
f1387285e2 | ||
|
|
5ea79a2599 | ||
|
|
4c86830fc5 | ||
|
|
09f8b3a022 | ||
|
|
67da21a147 | ||
|
|
7a6eaa06f9 | ||
|
|
f90c855c71 | ||
|
|
196a1f7409 | ||
|
|
c5cf369e95 | ||
|
|
a0c8aea479 | ||
|
|
592f57f5fe | ||
|
|
a0399efa72 | ||
|
|
5c7a299c16 | ||
|
|
4355894869 | ||
|
|
240014321b | ||
|
|
af125866db | ||
|
|
74b99f6ab6 | ||
|
|
17709e280a | ||
|
|
a555e6fcb6 | ||
|
|
108cf0153c | ||
|
|
4b3e1964d8 | ||
|
|
5f91e74bf9 | ||
|
|
3f32788000 | ||
|
|
8863bda25d | ||
|
|
3e1916947d | ||
|
|
a4c81bea38 | ||
|
|
c970e4225b | ||
|
|
6ccfd99b92 | ||
|
|
18b7d86d7f | ||
|
|
f8c52e8d08 | ||
|
|
1e448465e1 | ||
|
|
3214812997 | ||
|
|
f4fcedc59d | ||
|
|
02b4d9b18a | ||
|
|
70ce8a1561 | ||
|
|
0289a093a4 | ||
|
|
240309c9bf | ||
|
|
77b10ffad4 | ||
|
|
2e34c34be1 | ||
|
|
6bce5856b5 | ||
|
|
93e1cae739 | ||
|
|
edba70703b | ||
|
|
6508880d6c | ||
|
|
cb4e80fab9 | ||
|
|
41cd80335c | ||
|
|
9e813b3dea | ||
|
|
0756f757ed | ||
|
|
0de8e2d6a3 | ||
|
|
c8cdf0f80b | ||
|
|
6fd367a97c | ||
|
|
c80f647512 | ||
|
|
12bce95887 | ||
|
|
776b954622 | ||
|
|
23b32a8d6b | ||
|
|
6635ae1437 | ||
|
|
f52f0606ed | ||
|
|
c23555de34 | ||
|
|
d345fb9216 | ||
|
|
7ad67d1150 | ||
|
|
ffb7dcdb77 | ||
|
|
37294bd6a2 | ||
|
|
e3ffcd9902 | ||
|
|
d00a7fb81a | ||
|
|
86c3a2162c | ||
|
|
9355ae4149 | ||
|
|
608d78fb45 | ||
|
|
6914e87d3c | ||
|
|
04947cc6ed | ||
|
|
a974953443 | ||
|
|
18062fcad6 | ||
|
|
8c801b374b | ||
|
|
f9a65505d1 | ||
|
|
008bff967f | ||
|
|
6057748a1a | ||
|
|
6c3843ca8a | ||
|
|
2e2d758902 | ||
|
|
f76ec1eeb5 | ||
|
|
51b477f74f | ||
|
|
4fa1175765 | ||
|
|
37096afd3f | ||
|
|
3dc3474f00 | ||
|
|
39d4cab494 | ||
|
|
3650fd7098 | ||
|
|
057e84afe5 | ||
|
|
087b5ff35d | ||
|
|
0a84284e60 | ||
|
|
3f1e9f000f | ||
|
|
0f2a5cc68b | ||
|
|
9faec4e3d4 | ||
|
|
0abc6e471a | ||
|
|
9f646c2e11 | ||
|
|
d0bce504ec | ||
|
|
0e62a6742b | ||
|
|
1bd3cb2019 | ||
|
|
7d41410a45 | ||
|
|
2c6553498e | ||
|
|
21a83bd53d | ||
|
|
eba13e4ea2 | ||
|
|
bc327ccc3d | ||
|
|
9cb577a682 | ||
|
|
41f0895c6e | ||
|
|
6bfc475f71 | ||
|
|
b4893b8450 | ||
|
|
7e82c5f338 | ||
|
|
21578271bb | ||
|
|
027c4ab4d2 | ||
|
|
dc167465f8 | ||
|
|
723ef5db98 | ||
|
|
a1070eae77 | ||
|
|
5b5ae29bd3 | ||
|
|
ada1d870b4 | ||
|
|
10b9421f3b | ||
|
|
12d265315f | ||
|
|
d3f8a9ee65 | ||
|
|
c7dac8534e | ||
|
|
064095012c | ||
|
|
527ed38cfa | ||
|
|
e0890d678d | ||
|
|
3aca5a6fbc | ||
|
|
c0fcb6e0b1 | ||
|
|
9bbd883b35 | ||
|
|
333bd56422 | ||
|
|
04ea7e9049 | ||
|
|
b8554304c3 | ||
|
|
eed9d46293 | ||
|
|
7c5b3c0369 | ||
|
|
4afa77419f | ||
|
|
6281815ecc | ||
|
|
2379f87eb4 | ||
|
|
9979fcd72e | ||
|
|
03dfde2b5f | ||
|
|
39f3b14110 | ||
|
|
10ccfb2a17 | ||
|
|
8d4be89011 | ||
|
|
a98f8a2305 | ||
|
|
942db23c9c | ||
|
|
0fa09676c2 | ||
|
|
c150c09ec4 | ||
|
|
31842cd077 | ||
|
|
44ec21c467 | ||
|
|
d9d7789b6f | ||
|
|
ca753ec862 | ||
|
|
f785aa1354 | ||
|
|
0bcadf14aa | ||
|
|
3b678047bc | ||
|
|
5affc03468 | ||
|
|
418a29f0ff | ||
|
|
5202929dab | ||
|
|
8f33ebfade | ||
|
|
3ff656f6b4 | ||
|
|
f3fa18468c | ||
|
|
b17ec4d427 | ||
|
|
82db31c104 | ||
|
|
4223d43c0f | ||
|
|
963ffa0a5a | ||
|
|
a853089479 | ||
|
|
4549dad874 | ||
|
|
ba98fb54ae | ||
|
|
0123cc1e14 | ||
|
|
dee37dc733 | ||
|
|
6628b7ebff | ||
|
|
a5a1ec1826 | ||
|
|
4f53b79bf5 | ||
|
|
c3fc75db02 | ||
|
|
00385114db | ||
|
|
0dc5f603e9 | ||
|
|
dd07c02232 | ||
|
|
983d83ff1c | ||
|
|
dfc3db76b9 | ||
|
|
2c7080bf1c | ||
|
|
8c6951fa28 | ||
|
|
aad5f9d79a | ||
|
|
efa1923565 | ||
|
|
6502643677 | ||
|
|
f5a5116a96 | ||
|
|
038e09ee76 | ||
|
|
139348f3e8 | ||
|
|
ab65fc77c5 | ||
|
|
92bb83e41c | ||
|
|
8ab375706e | ||
|
|
6bcb877ec1 | ||
|
|
2c363a2e95 | ||
|
|
fef8064b54 | ||
|
|
fc1dafa91c | ||
|
|
8bead9a058 | ||
|
|
0dcd39bad5 | ||
|
|
4dba04256b | ||
|
|
7b6903f02c | ||
|
|
2e5910bfbb | ||
|
|
91478ae49a | ||
|
|
148be9bc1c | ||
|
|
d5e8c92816 | ||
|
|
e7bebc495d | ||
|
|
7781ebe50f | ||
|
|
3b69006973 | ||
|
|
9d20daffc2 | ||
|
|
f9547eb6ef | ||
|
|
5daa911626 | ||
|
|
0346b799fc | ||
|
|
e507ff15d5 | ||
|
|
80ad3e2569 | ||
|
|
f272ae12ac | ||
|
|
c03f5c677a | ||
|
|
853886722c | ||
|
|
3d2bb8b6f1 | ||
|
|
6a12e3342d | ||
|
|
4d8479b335 | ||
|
|
206c2a6e19 | ||
|
|
3445320839 | ||
|
|
f2b26bcf8f | ||
|
|
b63f3ca66d | ||
|
|
76ab5446d5 | ||
|
|
ebd211c8a3 | ||
|
|
f8c6a17180 | ||
|
|
59ff64079b | ||
|
|
92e5df8047 | ||
|
|
3eb6bd9c2b | ||
|
|
28976e2acc | ||
|
|
df2c2988bb | ||
|
|
97202d9516 | ||
|
|
61015162ba | ||
|
|
1d859e2421 | ||
|
|
5ed58c7b70 | ||
|
|
9a046fd08b | ||
|
|
d697ddea14 | ||
|
|
2e6cdb91e8 | ||
|
|
3e492c2d5f | ||
|
|
bed72df3e6 | ||
|
|
21829c5f2c | ||
|
|
b7e2670b6a | ||
|
|
bb4b93ed85 | ||
|
|
ce0370d9e6 | ||
|
|
98989a0014 | ||
|
|
ff0e57fe77 | ||
|
|
e0e3917554 | ||
|
|
e5ea346a07 | ||
|
|
5c829bf229 | ||
|
|
ab55f11d9b | ||
|
|
c05fe07529 | ||
|
|
4efd994829 | ||
|
|
107e9cecf7 | ||
|
|
ced68a0070 | ||
|
|
8323cab31c | ||
|
|
f002a41d12 | ||
|
|
b204990346 | ||
|
|
7cf0c114d6 | ||
|
|
40be52ba71 | ||
|
|
dfbc5fd879 | ||
|
|
7cebe8ba7d | ||
|
|
9a562c184d | ||
|
|
9ae3705b6e | ||
|
|
4bce26bb70 | ||
|
|
402115f1c2 | ||
|
|
0d3de8cb59 | ||
|
|
b3005ce191 | ||
|
|
9b6344613e | ||
|
|
57d5a01cb4 | ||
|
|
e32e516dfa | ||
|
|
f904133e1a | ||
|
|
e71996bd08 | ||
|
|
5e6a7aa2b2 | ||
|
|
ccb47a2899 | ||
|
|
b1f2857096 | ||
|
|
c5f59fab23 | ||
|
|
a0f7f73ebb | ||
|
|
77a849c4b3 | ||
|
|
99880f96cf | ||
|
|
a28639e711 | ||
|
|
e64f83cc6a | ||
|
|
09fbedc8dc | ||
|
|
98a29d00a4 | ||
|
|
82aa6e09e0 | ||
|
|
f30a14db3b | ||
|
|
585587dadb | ||
|
|
036d07144e | ||
|
|
1430ceeb2d | ||
|
|
3af15ab788 | ||
|
|
85773bf32b | ||
|
|
239f8d9326 | ||
|
|
e2edc2ed4a |
51
.github/CODEOWNERS
vendored
51
.github/CODEOWNERS
vendored
@@ -9,9 +9,6 @@
|
|||||||
# So if a pull request only touches javascript files, only these owners
|
# So if a pull request only touches javascript files, only these owners
|
||||||
# will be requested to review.
|
# will be requested to review.
|
||||||
|
|
||||||
src/iscygpty.* @k-takata
|
|
||||||
src/libvterm/ @leonerd
|
|
||||||
|
|
||||||
runtime/autoload/getscript.vim @cecamp
|
runtime/autoload/getscript.vim @cecamp
|
||||||
runtime/autoload/netrw.vim @cecamp
|
runtime/autoload/netrw.vim @cecamp
|
||||||
runtime/autoload/netrwFileHandlers.vim @cecamp
|
runtime/autoload/netrwFileHandlers.vim @cecamp
|
||||||
@@ -22,6 +19,7 @@ runtime/autoload/vimball.vim @cecamp
|
|||||||
runtime/autoload/xmlformat.vim @chrisbra
|
runtime/autoload/xmlformat.vim @chrisbra
|
||||||
runtime/autoload/zip.vim @cecamp
|
runtime/autoload/zip.vim @cecamp
|
||||||
runtime/compiler/checkstyle.vim @dkearns
|
runtime/compiler/checkstyle.vim @dkearns
|
||||||
|
runtime/compiler/cm3.vim @dkearns
|
||||||
runtime/compiler/cucumber.vim @tpope
|
runtime/compiler/cucumber.vim @tpope
|
||||||
runtime/compiler/dart.vim @dkearns
|
runtime/compiler/dart.vim @dkearns
|
||||||
runtime/compiler/dart2js.vim @dkearns
|
runtime/compiler/dart2js.vim @dkearns
|
||||||
@@ -31,6 +29,7 @@ runtime/compiler/dartdevc.vim @dkearns
|
|||||||
runtime/compiler/dartdoc.vim @dkearns
|
runtime/compiler/dartdoc.vim @dkearns
|
||||||
runtime/compiler/dartfmt.vim @dkearns
|
runtime/compiler/dartfmt.vim @dkearns
|
||||||
runtime/compiler/eruby.vim @dkearns
|
runtime/compiler/eruby.vim @dkearns
|
||||||
|
runtime/compiler/fbc.vim @dkearns
|
||||||
runtime/compiler/gawk.vim @dkearns
|
runtime/compiler/gawk.vim @dkearns
|
||||||
runtime/compiler/gjs.vim @dkearns
|
runtime/compiler/gjs.vim @dkearns
|
||||||
runtime/compiler/haml.vim @tpope
|
runtime/compiler/haml.vim @tpope
|
||||||
@@ -41,6 +40,7 @@ runtime/compiler/jshint.vim @dkearns
|
|||||||
runtime/compiler/jsonlint.vim @dkearns
|
runtime/compiler/jsonlint.vim @dkearns
|
||||||
runtime/compiler/lazbuild.vim @dkearns
|
runtime/compiler/lazbuild.vim @dkearns
|
||||||
runtime/compiler/php.vim @dkearns
|
runtime/compiler/php.vim @dkearns
|
||||||
|
runtime/compiler/powershell.vim @heaths
|
||||||
runtime/compiler/rake.vim @tpope @dkearns
|
runtime/compiler/rake.vim @tpope @dkearns
|
||||||
runtime/compiler/rhino.vim @dkearns
|
runtime/compiler/rhino.vim @dkearns
|
||||||
runtime/compiler/rspec.vim @tpope @dkearns
|
runtime/compiler/rspec.vim @tpope @dkearns
|
||||||
@@ -50,6 +50,8 @@ runtime/compiler/rubyunit.vim @dkearns
|
|||||||
runtime/compiler/sass.vim @tpope
|
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/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
|
||||||
@@ -58,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
|
||||||
@@ -65,13 +68,17 @@ runtime/doc/pi_netrw.txt @cecamp
|
|||||||
runtime/doc/pi_tar.txt @cecamp
|
runtime/doc/pi_tar.txt @cecamp
|
||||||
runtime/doc/pi_vimball.txt @cecamp
|
runtime/doc/pi_vimball.txt @cecamp
|
||||||
runtime/doc/pi_zip.txt @cecamp
|
runtime/doc/pi_zip.txt @cecamp
|
||||||
|
runtime/doc/ps1.txt @heaths
|
||||||
runtime/ftplugin/awk.vim @dkearns
|
runtime/ftplugin/awk.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/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
|
||||||
runtime/ftplugin/eruby.vim @tpope @dkearns
|
runtime/ftplugin/eruby.vim @tpope @dkearns
|
||||||
|
runtime/ftplugin/fpcmake.vim @dkearns
|
||||||
|
runtime/ftplugin/freebasic.vim @dkearns
|
||||||
runtime/ftplugin/git.vim @tpope
|
runtime/ftplugin/git.vim @tpope
|
||||||
runtime/ftplugin/gitcommit.vim @tpope
|
runtime/ftplugin/gitcommit.vim @tpope
|
||||||
runtime/ftplugin/gitconfig.vim @tpope
|
runtime/ftplugin/gitconfig.vim @tpope
|
||||||
@@ -84,15 +91,25 @@ runtime/ftplugin/javascript.vim @dkearns
|
|||||||
runtime/ftplugin/javascriptreact.vim @dkearns
|
runtime/ftplugin/javascriptreact.vim @dkearns
|
||||||
runtime/ftplugin/kconfig.vim @chrisbra
|
runtime/ftplugin/kconfig.vim @chrisbra
|
||||||
runtime/ftplugin/liquid.vim @tpope
|
runtime/ftplugin/liquid.vim @tpope
|
||||||
|
runtime/ftplugin/m3build.vim @dkearns
|
||||||
|
runtime/ftplugin/m3quake.vim @dkearns
|
||||||
runtime/ftplugin/markdown.vim @tpope
|
runtime/ftplugin/markdown.vim @tpope
|
||||||
runtime/ftplugin/matlab.vim @cecamp
|
runtime/ftplugin/matlab.vim @cecamp
|
||||||
|
runtime/ftplugin/meson.vim @Liambeguin
|
||||||
|
runtime/ftplugin/modula3.vim @dkearns
|
||||||
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/pascal.vim @dkearns
|
||||||
|
runtime/ftplugin/pbtxt.vim @lakshayg
|
||||||
runtime/ftplugin/pdf.vim @tpope
|
runtime/ftplugin/pdf.vim @tpope
|
||||||
|
runtime/ftplugin/ps1.vim @heaths
|
||||||
|
runtime/ftplugin/ps1xml.vim @heaths
|
||||||
runtime/ftplugin/ruby.vim @tpope @dkearns
|
runtime/ftplugin/ruby.vim @tpope @dkearns
|
||||||
runtime/ftplugin/sass.vim @tpope
|
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/tidy.vim @dkearns
|
||||||
runtime/ftplugin/tmux.vim @ericpruitt
|
runtime/ftplugin/tmux.vim @ericpruitt
|
||||||
runtime/ftplugin/typescript.vim @dkearns
|
runtime/ftplugin/typescript.vim @dkearns
|
||||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||||
@@ -105,11 +122,14 @@ runtime/indent/eruby.vim @tpope @dkearns
|
|||||||
runtime/indent/gitconfig.vim @tpope
|
runtime/indent/gitconfig.vim @tpope
|
||||||
runtime/indent/haml.vim @tpope
|
runtime/indent/haml.vim @tpope
|
||||||
runtime/indent/liquid.vim @tpope
|
runtime/indent/liquid.vim @tpope
|
||||||
|
runtime/indent/meson.vim @Liambeguin
|
||||||
runtime/indent/nsis.vim @k-takata
|
runtime/indent/nsis.vim @k-takata
|
||||||
|
runtime/indent/ps1.vim @heaths
|
||||||
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/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
|
||||||
@@ -126,7 +146,9 @@ runtime/syntax/aidl.vim @dpelle
|
|||||||
runtime/syntax/amiga.vim @cecamp
|
runtime/syntax/amiga.vim @cecamp
|
||||||
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/awk.vim @dkearns
|
runtime/syntax/awk.vim @dkearns
|
||||||
|
runtime/syntax/basic.vim @dkearns
|
||||||
runtime/syntax/bst.vim @tpope
|
runtime/syntax/bst.vim @tpope
|
||||||
runtime/syntax/cabal.vim @coot
|
runtime/syntax/cabal.vim @coot
|
||||||
runtime/syntax/cabalconfig.vim @coot
|
runtime/syntax/cabalconfig.vim @coot
|
||||||
@@ -136,35 +158,50 @@ runtime/syntax/csh.vim @cecamp
|
|||||||
runtime/syntax/cucumber.vim @tpope
|
runtime/syntax/cucumber.vim @tpope
|
||||||
runtime/syntax/datascript.vim @dpelle
|
runtime/syntax/datascript.vim @dpelle
|
||||||
runtime/syntax/dcl.vim @cecamp
|
runtime/syntax/dcl.vim @cecamp
|
||||||
|
runtime/syntax/desktop.vim @e-kwsm
|
||||||
|
runtime/syntax/dot.vim @mmottl
|
||||||
runtime/syntax/doxygen.vim @frogonwheels
|
runtime/syntax/doxygen.vim @frogonwheels
|
||||||
runtime/syntax/dtd.vim @chrisbra
|
runtime/syntax/dtd.vim @chrisbra
|
||||||
|
runtime/syntax/dts.vim @zonque
|
||||||
runtime/syntax/elmfilt.vim @cecamp
|
runtime/syntax/elmfilt.vim @cecamp
|
||||||
runtime/syntax/eruby.vim @tpope @dkearns
|
runtime/syntax/eruby.vim @tpope @dkearns
|
||||||
runtime/syntax/exports.vim @cecamp
|
runtime/syntax/exports.vim @cecamp
|
||||||
|
runtime/syntax/fpcmake.vim @dkearns
|
||||||
runtime/syntax/git.vim @tpope
|
runtime/syntax/git.vim @tpope
|
||||||
runtime/syntax/gitcommit.vim @tpope
|
runtime/syntax/gitcommit.vim @tpope
|
||||||
runtime/syntax/gitconfig.vim @tpope
|
runtime/syntax/gitconfig.vim @tpope
|
||||||
runtime/syntax/gitrebase.vim @tpope
|
runtime/syntax/gitrebase.vim @tpope
|
||||||
runtime/syntax/gprof.vim @dpelle
|
runtime/syntax/gprof.vim @dpelle
|
||||||
|
runtime/syntax/groff.vim @jmarshall
|
||||||
runtime/syntax/haml.vim @tpope
|
runtime/syntax/haml.vim @tpope
|
||||||
runtime/syntax/haskell.vim @coot
|
runtime/syntax/haskell.vim @coot
|
||||||
runtime/syntax/hgcommit.vim @k-takata
|
runtime/syntax/hgcommit.vim @k-takata
|
||||||
runtime/syntax/kconfig.vim @chrisbra
|
runtime/syntax/kconfig.vim @chrisbra
|
||||||
|
runtime/syntax/less.vim @genoma
|
||||||
runtime/syntax/lex.vim @cecamp
|
runtime/syntax/lex.vim @cecamp
|
||||||
runtime/syntax/liquid.vim @tpope
|
runtime/syntax/liquid.vim @tpope
|
||||||
runtime/syntax/lisp.vim @cecamp
|
runtime/syntax/lisp.vim @cecamp
|
||||||
runtime/syntax/lynx.vim @dkearns
|
runtime/syntax/lynx.vim @dkearns
|
||||||
|
runtime/syntax/m3build.vim @dkearns
|
||||||
|
runtime/syntax/m3quake.vim @dkearns
|
||||||
runtime/syntax/mailcap.vim @dkearns
|
runtime/syntax/mailcap.vim @dkearns
|
||||||
runtime/syntax/make.vim @rohieb
|
runtime/syntax/make.vim @rohieb
|
||||||
runtime/syntax/make.vim @rohieb
|
|
||||||
runtime/syntax/maple.vim @cecamp
|
runtime/syntax/maple.vim @cecamp
|
||||||
runtime/syntax/markdown.vim @tpope
|
runtime/syntax/markdown.vim @tpope
|
||||||
|
runtime/syntax/meson.vim @Liambeguin
|
||||||
|
runtime/syntax/modula3.vim @dkearns
|
||||||
runtime/syntax/netrw.vim @cecamp
|
runtime/syntax/netrw.vim @cecamp
|
||||||
|
runtime/syntax/nroff.vim @jmarshall
|
||||||
runtime/syntax/nsis.vim @k-takata
|
runtime/syntax/nsis.vim @k-takata
|
||||||
|
runtime/syntax/pascal.vim @dkearns
|
||||||
|
runtime/syntax/pbtxt.vim @lakshayg
|
||||||
runtime/syntax/pdf.vim @tpope
|
runtime/syntax/pdf.vim @tpope
|
||||||
runtime/syntax/php.vim @TysonAndre
|
runtime/syntax/php.vim @TysonAndre
|
||||||
runtime/syntax/privoxy.vim @dkearns
|
runtime/syntax/privoxy.vim @dkearns
|
||||||
runtime/syntax/prolog.vim @XVilka
|
runtime/syntax/prolog.vim @XVilka
|
||||||
|
runtime/syntax/ps1.vim @heaths
|
||||||
|
runtime/syntax/ps1xml.vim @heaths
|
||||||
|
runtime/syntax/psl.vim @danielkho
|
||||||
runtime/syntax/rc.vim @chrisbra
|
runtime/syntax/rc.vim @chrisbra
|
||||||
runtime/syntax/rpcgen.vim @cecamp
|
runtime/syntax/rpcgen.vim @cecamp
|
||||||
runtime/syntax/ruby.vim @dkearns
|
runtime/syntax/ruby.vim @dkearns
|
||||||
@@ -174,7 +211,10 @@ runtime/syntax/sh.vim @cecamp
|
|||||||
runtime/syntax/sm.vim @cecamp
|
runtime/syntax/sm.vim @cecamp
|
||||||
runtime/syntax/spec.vim @ignatenkobrain
|
runtime/syntax/spec.vim @ignatenkobrain
|
||||||
runtime/syntax/sqloracle.vim @chrisbra
|
runtime/syntax/sqloracle.vim @chrisbra
|
||||||
|
runtime/syntax/sshconfig.vim @Jakuje
|
||||||
runtime/syntax/sshdconfig.vim @Jakuje
|
runtime/syntax/sshdconfig.vim @Jakuje
|
||||||
|
runtime/syntax/sudoers.vim @e-kwsm
|
||||||
|
runtime/syntax/systemverilog.vim @Kocha
|
||||||
runtime/syntax/tags.vim @cecamp
|
runtime/syntax/tags.vim @cecamp
|
||||||
runtime/syntax/teraterm.vim @k-takata
|
runtime/syntax/teraterm.vim @k-takata
|
||||||
runtime/syntax/tex.vim @cecamp
|
runtime/syntax/tex.vim @cecamp
|
||||||
@@ -193,6 +233,9 @@ runtime/tutor/tutor.eo @dpelle
|
|||||||
runtime/tutor/tutor.eo.utf-8 @dpelle
|
runtime/tutor/tutor.eo.utf-8 @dpelle
|
||||||
runtime/tutor/tutor.fr @dpelle
|
runtime/tutor/tutor.fr @dpelle
|
||||||
runtime/tutor/tutor.fr.utf-8 @dpelle
|
runtime/tutor/tutor.fr.utf-8 @dpelle
|
||||||
|
src/iscygpty.* @k-takata
|
||||||
|
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
|
||||||
|
|||||||
12
.github/workflows/ci.yml
vendored
12
.github/workflows/ci.yml
vendored
@@ -7,7 +7,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
linux:
|
linux:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-18.04
|
||||||
|
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.compiler }}
|
CC: ${{ matrix.compiler }}
|
||||||
@@ -56,7 +56,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 +71,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'
|
||||||
@@ -208,6 +209,7 @@ jobs:
|
|||||||
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
|
||||||
# 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
|
||||||
@@ -227,7 +229,7 @@ jobs:
|
|||||||
done
|
done
|
||||||
|
|
||||||
coveralls:
|
coveralls:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-18.04
|
||||||
|
|
||||||
needs: linux
|
needs: linux
|
||||||
if: always() && github.event_name != 'pull_request'
|
if: always() && github.event_name != 'pull_request'
|
||||||
@@ -364,7 +366,7 @@ jobs:
|
|||||||
features: NORMAL
|
features: NORMAL
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Initalize
|
- name: Initialize
|
||||||
id: init
|
id: init
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
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 ${SRCDIR}/auto/config.mk
|
||||||
|
sed -i -f ci/config.mk.${CC}.sed ${SRCDIR}/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 }}
|
||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -25,7 +25,6 @@ src/auto/pathdef.c
|
|||||||
# Windows
|
# Windows
|
||||||
*.exe
|
*.exe
|
||||||
*.idb
|
*.idb
|
||||||
*.manifest
|
|
||||||
*.exp
|
*.exp
|
||||||
*.map
|
*.map
|
||||||
*.obj
|
*.obj
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ src/auto/pathdef.c
|
|||||||
# Windows
|
# Windows
|
||||||
*.exe
|
*.exe
|
||||||
*.idb
|
*.idb
|
||||||
*.manifest
|
|
||||||
*.exp
|
*.exp
|
||||||
*.map
|
*.map
|
||||||
*.obj
|
*.obj
|
||||||
|
|||||||
16
Filelist
16
Filelist
@@ -9,11 +9,13 @@ 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 \
|
||||||
.travis.yml \
|
.travis.yml \
|
||||||
appveyor.yml \
|
.appveyor.yml \
|
||||||
|
.codecov.yml \
|
||||||
ci/appveyor.bat \
|
ci/appveyor.bat \
|
||||||
ci/build-snd-dummy.sh \
|
ci/build-snd-dummy.sh \
|
||||||
ci/config.mk*.sed \
|
ci/config.mk*.sed \
|
||||||
@@ -22,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 \
|
||||||
@@ -67,6 +70,7 @@ SRC_ALL = \
|
|||||||
src/fileio.c \
|
src/fileio.c \
|
||||||
src/filepath.c \
|
src/filepath.c \
|
||||||
src/findfile.c \
|
src/findfile.c \
|
||||||
|
src/float.c \
|
||||||
src/fold.c \
|
src/fold.c \
|
||||||
src/getchar.c \
|
src/getchar.c \
|
||||||
src/globals.h \
|
src/globals.h \
|
||||||
@@ -132,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 \
|
||||||
@@ -207,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 \
|
||||||
@@ -245,6 +251,7 @@ SRC_ALL = \
|
|||||||
src/proto/fileio.pro \
|
src/proto/fileio.pro \
|
||||||
src/proto/filepath.pro \
|
src/proto/filepath.pro \
|
||||||
src/proto/findfile.pro \
|
src/proto/findfile.pro \
|
||||||
|
src/proto/float.pro \
|
||||||
src/proto/fold.pro \
|
src/proto/fold.pro \
|
||||||
src/proto/getchar.pro \
|
src/proto/getchar.pro \
|
||||||
src/proto/gui.pro \
|
src/proto/gui.pro \
|
||||||
@@ -293,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 \
|
||||||
@@ -436,7 +444,6 @@ SRC_UNIX = \
|
|||||||
src/gui_gtk_x11.c \
|
src/gui_gtk_x11.c \
|
||||||
src/gui_gtk_res.xml \
|
src/gui_gtk_res.xml \
|
||||||
src/gui_motif.c \
|
src/gui_motif.c \
|
||||||
src/gui_xim.c \
|
|
||||||
src/gui_xmdlg.c \
|
src/gui_xmdlg.c \
|
||||||
src/gui_xmebw.c \
|
src/gui_xmebw.c \
|
||||||
src/gui_xmebw.h \
|
src/gui_xmebw.h \
|
||||||
@@ -460,7 +467,6 @@ SRC_UNIX = \
|
|||||||
src/proto/gui_gtk_x11.pro \
|
src/proto/gui_gtk_x11.pro \
|
||||||
src/proto/gui_gtk_gresources.pro \
|
src/proto/gui_gtk_gresources.pro \
|
||||||
src/proto/gui_motif.pro \
|
src/proto/gui_motif.pro \
|
||||||
src/proto/gui_xim.pro \
|
|
||||||
src/proto/gui_xmdlg.pro \
|
src/proto/gui_xmdlg.pro \
|
||||||
src/proto/gui_x11.pro \
|
src/proto/gui_x11.pro \
|
||||||
src/proto/if_xcmdsrv.pro \
|
src/proto/if_xcmdsrv.pro \
|
||||||
@@ -480,6 +486,7 @@ SRC_UNIX = \
|
|||||||
|
|
||||||
# source files for both DOS and Unix
|
# source files for both DOS and Unix
|
||||||
SRC_DOS_UNIX = \
|
SRC_DOS_UNIX = \
|
||||||
|
src/gui_xim.c \
|
||||||
src/if_cscope.c \
|
src/if_cscope.c \
|
||||||
src/if_cscope.h \
|
src/if_cscope.h \
|
||||||
src/if_lua.c \
|
src/if_lua.c \
|
||||||
@@ -492,6 +499,7 @@ SRC_DOS_UNIX = \
|
|||||||
src/if_py_both.h \
|
src/if_py_both.h \
|
||||||
src/if_ruby.c \
|
src/if_ruby.c \
|
||||||
src/if_tcl.c \
|
src/if_tcl.c \
|
||||||
|
src/proto/gui_xim.pro \
|
||||||
src/proto/if_cscope.pro \
|
src/proto/if_cscope.pro \
|
||||||
src/proto/if_lua.pro \
|
src/proto/if_lua.pro \
|
||||||
src/proto/if_mzsch.pro \
|
src/proto/if_mzsch.pro \
|
||||||
@@ -566,7 +574,7 @@ SRC_DOS = \
|
|||||||
src/uninstall.c \
|
src/uninstall.c \
|
||||||
src/vim.def \
|
src/vim.def \
|
||||||
src/vim.rc \
|
src/vim.rc \
|
||||||
src/gvim.exe.mnf \
|
src/vim.manifest \
|
||||||
src/vimrun.c \
|
src/vimrun.c \
|
||||||
src/xpm_w32.c \
|
src/xpm_w32.c \
|
||||||
src/xpm_w32.h \
|
src/xpm_w32.h \
|
||||||
|
|||||||
2
Makefile
2
Makefile
@@ -94,7 +94,7 @@ MINOR = 2
|
|||||||
# src/Makefile, README.txt, README.md, src/README.md, READMEdir/README*.txt,
|
# src/Makefile, README.txt, README.md, src/README.md, READMEdir/README*.txt,
|
||||||
# runtime/doc/*.txt and make nsis/gvim_version.nsh.
|
# runtime/doc/*.txt and make nsis/gvim_version.nsh.
|
||||||
# For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.def,
|
# For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.def,
|
||||||
# src/gvim.exe.mnf.
|
# src/vim.manifest.
|
||||||
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, Lua, Cscope and
|
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, Lua, Cscope and
|
||||||
# "huge" features. Add MZscheme if you can make it work.
|
# "huge" features. Add MZscheme if you can make it work.
|
||||||
# Use "make reconfig" after selecting the configure arguments.
|
# Use "make reconfig" after selecting the configure arguments.
|
||||||
|
|||||||
35
README.md
35
README.md
@@ -4,15 +4,23 @@
|
|||||||
|
|
||||||
<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? ##
|
||||||
|
|
||||||
Vim is a greatly improved version of the good old UNIX editor Vi. Many new
|
Vim is a greatly improved version of the good old UNIX editor
|
||||||
|
[Vi](https://en.wikipedia.org/wiki/Vi). Many new
|
||||||
features have been added: multi-level undo, syntax highlighting, command line
|
features have been added: multi-level undo, syntax highlighting, command line
|
||||||
history, on-line help, spell checking, filename completion, block operations,
|
history, on-line help, spell checking, filename completion, block operations,
|
||||||
script language, etc. There is also a Graphical User Interface (GUI)
|
script language, etc. There is also a Graphical User Interface (GUI)
|
||||||
available. Still, Vi compatibility is maintained, those who have Vi "in the
|
available. Still, Vi compatibility is maintained, those who have Vi "in the
|
||||||
fingers" will feel at home. See `runtime/doc/vi_diff.txt` for differences with
|
fingers" will feel at home.
|
||||||
|
See [`runtime/doc/vi_diff.txt`](runtime/doc/vi_diff.txt) for differences with
|
||||||
Vi.
|
Vi.
|
||||||
|
|
||||||
This editor is very useful for editing programs and other plain text files.
|
This editor is very useful for editing programs and other plain text files.
|
||||||
@@ -42,7 +50,7 @@ want or must compile it yourself. Check http://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:
|
||||||
* Check out the git repository from [github](https://github.com/vim/vim).
|
* Check out the git repository from [GitHub](https://github.com/vim/vim).
|
||||||
* Get the source code as an [archive](https://github.com/vim/vim/releases).
|
* Get the source code as an [archive](https://github.com/vim/vim/releases).
|
||||||
* Get a Windows executable from the
|
* Get a Windows executable from the
|
||||||
[vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository.
|
[vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository.
|
||||||
@@ -53,14 +61,14 @@ Some popular places to get the latest Vim:
|
|||||||
|
|
||||||
If you obtained a binary distribution you don't need to compile Vim. If you
|
If you obtained a binary distribution you don't need to compile Vim. If you
|
||||||
obtained a source distribution, all the stuff for compiling Vim is in the
|
obtained a source distribution, all the stuff for compiling Vim is in the
|
||||||
`src` directory. See `src/INSTALL` for instructions.
|
[`src`](/src) directory. See [`src/INSTALL`](src/INSTALL) for instructions.
|
||||||
|
|
||||||
|
|
||||||
## Installation ##
|
## Installation ##
|
||||||
|
|
||||||
See one of these files for system-specific instructions. Either in the
|
See one of these files for system-specific instructions. Either in the
|
||||||
READMEdir directory (in the repository) or the top directory (if you unpack an
|
[READMEdir directory](./READMEdir/) (in the repository) or
|
||||||
archive):
|
the top directory (if you unpack an archive):
|
||||||
|
|
||||||
README_ami.txt Amiga
|
README_ami.txt Amiga
|
||||||
README_unix.txt Unix
|
README_unix.txt Unix
|
||||||
@@ -78,8 +86,9 @@ 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`. It contains pointers to the other documentation
|
[`runtime/doc/help.txt`](/runtime/doc/help.txt).
|
||||||
files. The User Manual reads like a book and is recommended to learn to use
|
It contains pointers to the other documentation files.
|
||||||
|
The User Manual reads like a book and is recommended to learn to use
|
||||||
Vim. See `:help user-manual`.
|
Vim. See `:help user-manual`.
|
||||||
|
|
||||||
|
|
||||||
@@ -87,7 +96,8 @@ Vim. See `:help user-manual`.
|
|||||||
|
|
||||||
Vim is Charityware. You can use and copy it as much as you like, but you are
|
Vim is Charityware. You can use and copy it as much as you like, but you are
|
||||||
encouraged to make a donation to help orphans in Uganda. Please read the file
|
encouraged to make a donation to help orphans in Uganda. Please read the file
|
||||||
`runtime/doc/uganda.txt` for details (do `:help uganda` inside Vim).
|
[`runtime/doc/uganda.txt`](runtime/doc/uganda.txt)
|
||||||
|
for details (do `:help uganda` inside Vim).
|
||||||
|
|
||||||
Summary of the license: There are no restrictions on using or distributing an
|
Summary of the license: There are no restrictions on using or distributing an
|
||||||
unmodified copy of Vim. Parts of Vim may also be distributed, but the license
|
unmodified copy of Vim. Parts of Vim may also be distributed, but the license
|
||||||
@@ -103,8 +113,8 @@ 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 is back to a paid job the money will now be used to help children
|
||||||
in Uganda. See `runtime/doc/uganda.txt`. But at the same time donations
|
in Uganda. See [`runtime/doc/uganda.txt`](runtime/doc/uganda.txt). But
|
||||||
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/
|
http://www.vim.org/sponsor/
|
||||||
@@ -112,7 +122,8 @@ For the most recent information about sponsoring look on the Vim web site:
|
|||||||
|
|
||||||
## Contributing ##
|
## Contributing ##
|
||||||
|
|
||||||
If you would like to help making Vim better, see the [CONTRIBUTING.md](https://github.com/vim/vim/blob/master/CONTRIBUTING.md) file.
|
If you would like to help making Vim better, see the
|
||||||
|
[CONTRIBUTING.md](/CONTRIBUTING.md) file.
|
||||||
|
|
||||||
|
|
||||||
## Information ##
|
## Information ##
|
||||||
|
|||||||
@@ -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,12 +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 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
|
||||||
|
|||||||
@@ -1,28 +1,12 @@
|
|||||||
README_mac.txt for version 8.2 of Vim: Vi IMproved.
|
README_mac.txt for version 8.2 of Vim: Vi IMproved.
|
||||||
|
|
||||||
This file explains the installation of Vim on Macintosh systems.
|
This file explains the installation of Vim on MacOS systems.
|
||||||
See "README.txt" for general information about Vim.
|
See "README.txt" for general information about Vim.
|
||||||
|
|
||||||
|
To build from source get the files with git from https://github.com/vim/vim.
|
||||||
|
The find the instructions in src/INSTALLmac.txt.
|
||||||
|
|
||||||
To build from sources, like on Unix
|
Installing Vim using Homebrew:
|
||||||
|
|
||||||
1. Get the build tools: "clang" and "make". These can be installed with the
|
|
||||||
"CommandLineTools" package. If you don't have one, do
|
|
||||||
xcode-select --install
|
|
||||||
Just like for any software development with OS X.
|
|
||||||
|
|
||||||
2. Get the source code. Best is to use git (which you need to install first),
|
|
||||||
see http://www.vim.org/git.php
|
|
||||||
Or you can download and unpack the Unix tar archive, see
|
|
||||||
http://www.vim.org/download.php
|
|
||||||
|
|
||||||
3. Go to the top directory of the source tree, do
|
|
||||||
make
|
|
||||||
sudo make install
|
|
||||||
A newly built vim will be installed under "/usr/local".
|
|
||||||
|
|
||||||
|
|
||||||
If you can't manage to make this work, there is a fallback using Homebrew:
|
|
||||||
|
|
||||||
1. Install Homebrew from http://brew.sh/
|
1. Install Homebrew from http://brew.sh/
|
||||||
2. Install latest Vim with: brew install vim
|
2. Install the latest Vim with:
|
||||||
|
brew install vim
|
||||||
|
|||||||
@@ -11,7 +11,11 @@ sed -e "s/@<<$/@<< | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
|
|||||||
echo "Building MSVC 64bit console Version"
|
echo "Building MSVC 64bit console Version"
|
||||||
nmake -f Make_mvc2.mak CPU=AMD64 ^
|
nmake -f Make_mvc2.mak CPU=AMD64 ^
|
||||||
OLE=no GUI=no IME=yes ICONV=yes DEBUG=no ^
|
OLE=no GUI=no IME=yes ICONV=yes DEBUG=no ^
|
||||||
FEATURES=%FEATURE% || exit 1
|
FEATURES=%FEATURE%
|
||||||
|
if not exist vim.exe (
|
||||||
|
echo Build failure.
|
||||||
|
exit 1
|
||||||
|
)
|
||||||
|
|
||||||
:: build MSVC huge version with python and channel support
|
:: build MSVC huge version with python and channel support
|
||||||
:: GUI needs to be last, so that testing works
|
:: GUI needs to be last, so that testing works
|
||||||
@@ -21,16 +25,20 @@ if "%FEATURE%" == "HUGE" (
|
|||||||
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no POSTSCRIPT=yes ^
|
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no POSTSCRIPT=yes ^
|
||||||
PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 ^
|
PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 ^
|
||||||
PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 ^
|
PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 ^
|
||||||
FEATURES=%FEATURE% || exit 1
|
FEATURES=%FEATURE%
|
||||||
) ELSE (
|
) ELSE (
|
||||||
nmake -f Make_mvc2.mak CPU=AMD64 ^
|
nmake -f Make_mvc2.mak CPU=AMD64 ^
|
||||||
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no ^
|
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no ^
|
||||||
FEATURES=%FEATURE% || exit 1
|
FEATURES=%FEATURE%
|
||||||
)
|
)
|
||||||
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt
|
if not exist gvim.exe (
|
||||||
|
echo Build failure.
|
||||||
|
exit 1
|
||||||
|
)
|
||||||
|
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt || exit 1
|
||||||
|
|
||||||
echo "version output MSVC console"
|
echo "version output MSVC console"
|
||||||
.\vim --version
|
.\vim --version || exit 1
|
||||||
echo "version output MSVC GUI"
|
echo "version output MSVC GUI"
|
||||||
type ver_msvc.txt
|
type ver_msvc.txt || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ if 1
|
|||||||
echo "*** Interface versions ***\n"
|
echo "*** Interface versions ***\n"
|
||||||
|
|
||||||
echo 'Lua:'
|
echo 'Lua:'
|
||||||
PrintVer lua print(_VERSION)
|
PrintVer lua print(vim.lua_version, jit and "(LuaJIT)" or "")
|
||||||
|
|
||||||
echo 'MzScheme:'
|
echo 'MzScheme:'
|
||||||
PrintVer mzscheme (display (version))
|
PrintVer mzscheme (display (version))
|
||||||
|
|||||||
@@ -66,12 +66,15 @@ To build the installable .exe:
|
|||||||
|
|
||||||
Install NSIS if you didn't do that already.
|
Install NSIS if you didn't do that already.
|
||||||
Also install UPX, if you want a compressed file.
|
Also install UPX, if you want a compressed file.
|
||||||
|
Download and include the ShellExecAsUser.dll Unicode version which can be
|
||||||
|
sourced from: https://nsis.sourceforge.io/ShellExecAsUser_plug-in
|
||||||
|
|
||||||
|
|
||||||
Unpack the images:
|
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
|
||||||
|
|||||||
@@ -119,17 +119,18 @@ RequestExecutionLevel highest
|
|||||||
|
|
||||||
!define MUI_COMPONENTSPAGE_SMALLDESC
|
!define MUI_COMPONENTSPAGE_SMALLDESC
|
||||||
!define MUI_LICENSEPAGE_CHECKBOX
|
!define MUI_LICENSEPAGE_CHECKBOX
|
||||||
!define MUI_FINISHPAGE_RUN "$0\gvim.exe"
|
!define MUI_FINISHPAGE_RUN
|
||||||
|
!define MUI_FINISHPAGE_RUN_FUNCTION LaunchApplication
|
||||||
!define MUI_FINISHPAGE_RUN_TEXT $(str_show_readme)
|
!define MUI_FINISHPAGE_RUN_TEXT $(str_show_readme)
|
||||||
!define MUI_FINISHPAGE_RUN_PARAMETERS "-R $\"$0\README.txt$\""
|
|
||||||
|
|
||||||
# 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)
|
||||||
@@ -300,6 +301,11 @@ Function CheckOldVim
|
|||||||
Exch $0 # put $0 on top of stack, restore $0 to original value
|
Exch $0 # put $0 on top of stack, restore $0 to original value
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|
||||||
|
Function LaunchApplication
|
||||||
|
SetOutPath $0
|
||||||
|
ShellExecAsUser::ShellExecAsUser "" "$0\gvim.exe" '-R "$0\README.txt"'
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
##########################################################
|
##########################################################
|
||||||
Section "$(str_section_old_ver)" id_section_old_ver
|
Section "$(str_section_old_ver)" id_section_old_ver
|
||||||
SectionIn 1 2 3 RO
|
SectionIn 1 2 3 RO
|
||||||
@@ -359,6 +365,8 @@ Section "$(str_section_exe)" id_section_exe
|
|||||||
|
|
||||||
SetOutPath $0\colors
|
SetOutPath $0\colors
|
||||||
File ${VIMRT}\colors\*.*
|
File ${VIMRT}\colors\*.*
|
||||||
|
SetOutPath $0\colors\tools
|
||||||
|
File ${VIMRT}\colors\tools\*.*
|
||||||
|
|
||||||
SetOutPath $0\compiler
|
SetOutPath $0\compiler
|
||||||
File ${VIMRT}\compiler\*.*
|
File ${VIMRT}\compiler\*.*
|
||||||
@@ -703,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
|
||||||
@@ -714,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}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ LangString ^UninstallCaption ${LANG_ENGLISH} \
|
|||||||
# "Destination Folder (Must end with $\"vim$\")"
|
# "Destination Folder (Must end with $\"vim$\")"
|
||||||
|
|
||||||
LangString str_show_readme ${LANG_ENGLISH} \
|
LangString str_show_readme ${LANG_ENGLISH} \
|
||||||
"Show README after installation finish"
|
"Show README after installation finished"
|
||||||
|
|
||||||
# Install types:
|
# Install types:
|
||||||
LangString str_type_typical ${LANG_ENGLISH} \
|
LangString str_type_typical ${LANG_ENGLISH} \
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
11
runtime/autoload/dist/ft.vim
vendored
11
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
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
|
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
|
||||||
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||||
" URL: https://github.com/shawncplus/phpcomplete.vim
|
" URL: https://github.com/shawncplus/phpcomplete.vim
|
||||||
" Last Change: 2018 Oct 10
|
" Last Change: 2021 Feb 08
|
||||||
"
|
"
|
||||||
" OPTIONS:
|
" OPTIONS:
|
||||||
"
|
"
|
||||||
@@ -122,7 +122,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
" If exists b:php_menu it means completion was already constructed we
|
" If exists b:php_menu it means completion was already constructed we
|
||||||
" don't need to do anything more
|
" don't need to do anything more
|
||||||
if exists("b:php_menu")
|
if exists("b:php_menu")
|
||||||
@@ -148,8 +147,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
|
|||||||
try
|
try
|
||||||
let eventignore = &eventignore
|
let eventignore = &eventignore
|
||||||
let &eventignore = 'all'
|
let &eventignore = 'all'
|
||||||
let winheight = winheight(0)
|
|
||||||
let winnr = winnr()
|
|
||||||
|
|
||||||
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(getline(0, line('.')))
|
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(getline(0, line('.')))
|
||||||
|
|
||||||
@@ -183,7 +180,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if filereadable(classlocation)
|
if filereadable(classlocation)
|
||||||
let classfile = readfile(classlocation)
|
|
||||||
let classcontent = ''
|
let classcontent = ''
|
||||||
let classcontent .= "\n".phpcomplete#GetClassContents(classlocation, classname)
|
let classcontent .= "\n".phpcomplete#GetClassContents(classlocation, classname)
|
||||||
let sccontent = split(classcontent, "\n")
|
let sccontent = split(classcontent, "\n")
|
||||||
@@ -217,7 +213,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
|
|||||||
return phpcomplete#CompleteGeneral(a:base, current_namespace, imports)
|
return phpcomplete#CompleteGeneral(a:base, current_namespace, imports)
|
||||||
endif
|
endif
|
||||||
finally
|
finally
|
||||||
silent! exec winnr.'resize '.winheight
|
|
||||||
let &eventignore = eventignore
|
let &eventignore = eventignore
|
||||||
endtry
|
endtry
|
||||||
endfunction
|
endfunction
|
||||||
@@ -1025,7 +1020,7 @@ function! phpcomplete#CompleteUserClass(context, base, sccontent, visibility) "
|
|||||||
let c_var = '$'.c_var
|
let c_var = '$'.c_var
|
||||||
endif
|
endif
|
||||||
let c_variables[c_var] = ''
|
let c_variables[c_var] = ''
|
||||||
if g:phpcomplete_parse_docblock_comments && len(get(variables, var_index)) > 0
|
if g:phpcomplete_parse_docblock_comments && len(get(variables, var_index, '')) > 0
|
||||||
let c_doc[c_var] = phpcomplete#GetDocBlock(a:sccontent, variables[var_index])
|
let c_doc[c_var] = phpcomplete#GetDocBlock(a:sccontent, variables[var_index])
|
||||||
endif
|
endif
|
||||||
let var_index += 1
|
let var_index += 1
|
||||||
@@ -2082,26 +2077,17 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
|||||||
" ...
|
" ...
|
||||||
" ]
|
" ]
|
||||||
"
|
"
|
||||||
let full_file_path = fnamemodify(a:file_path, ':p')
|
|
||||||
let class_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
|
let class_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
|
||||||
let cfile = join(a:file_lines, "\n")
|
let full_file_path = fnamemodify(a:file_path, ':p')
|
||||||
let result = []
|
let result = []
|
||||||
" We use new buffer and (later) normal! because
|
let popup_id = popup_create(a:file_lines, {'hidden': v:true})
|
||||||
" this is the most efficient way. The other way
|
|
||||||
" is to go through the looong string looking for
|
|
||||||
" matching {}
|
|
||||||
|
|
||||||
" remember the window we started at
|
call win_execute(popup_id, 'call search(''\c\(class\|interface\|trait\)\_s\+'.a:class_name.'\(\>\|$\)'')')
|
||||||
let phpcomplete_original_window = winnr()
|
call win_execute(popup_id, "let cfline = line('.')")
|
||||||
|
call win_execute(popup_id, "call search('{')")
|
||||||
|
call win_execute(popup_id, "let endline = line('.')")
|
||||||
|
|
||||||
silent! below 1new
|
call win_execute(popup_id, 'let content = join(getline('.cfline.', '.endline.'), "\n")')
|
||||||
silent! 0put =cfile
|
|
||||||
call search('\c\(class\|interface\|trait\)\_s\+'.a:class_name.'\(\>\|$\)')
|
|
||||||
let cfline = line('.')
|
|
||||||
call search('{')
|
|
||||||
let endline = line('.')
|
|
||||||
|
|
||||||
let content = join(getline(cfline, endline), "\n")
|
|
||||||
" Catch extends
|
" Catch extends
|
||||||
if content =~? 'extends'
|
if content =~? 'extends'
|
||||||
let extends_string = matchstr(content, '\(class\|interface\)\_s\+'.a:class_name.'\_.\+extends\_s\+\zs\('.class_name_pattern.'\(,\|\_s\)*\)\+\ze\(extends\|{\)')
|
let extends_string = matchstr(content, '\(class\|interface\)\_s\+'.a:class_name.'\_.\+extends\_s\+\zs\('.class_name_pattern.'\(,\|\_s\)*\)\+\ze\(extends\|{\)')
|
||||||
@@ -2117,14 +2103,16 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
|||||||
else
|
else
|
||||||
let implemented_interfaces = []
|
let implemented_interfaces = []
|
||||||
endif
|
endif
|
||||||
call searchpair('{', '', '}', 'W')
|
|
||||||
let class_closing_bracket_line = line('.')
|
call win_execute(popup_id, 'let [class_closing_bracket_line, class_closing_bracket_col] = searchpairpos("{", "", "}", "W")')
|
||||||
|
|
||||||
" Include class docblock
|
" Include class docblock
|
||||||
let doc_line = cfline - 1
|
let doc_line = cfline - 1
|
||||||
if getline(doc_line) =~? '^\s*\*/'
|
call win_execute(popup_id, 'let l = getline('.doc_line.')')
|
||||||
|
if l =~? '^\s*\*/'
|
||||||
while doc_line != 0
|
while doc_line != 0
|
||||||
if getline(doc_line) =~? '^\s*/\*\*'
|
call win_execute(popup_id, 'let l = getline('.doc_line.')')
|
||||||
|
if l =~? '^\s*/\*\*'
|
||||||
let cfline = doc_line
|
let cfline = doc_line
|
||||||
break
|
break
|
||||||
endif
|
endif
|
||||||
@@ -2132,22 +2120,22 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
|||||||
endwhile
|
endwhile
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let classcontent = join(getline(cfline, class_closing_bracket_line), "\n")
|
call win_execute(popup_id, 'let classcontent = join(getline('.cfline.', '.class_closing_bracket_line.'), "\n")')
|
||||||
|
|
||||||
let used_traits = []
|
let used_traits = []
|
||||||
" move back to the line next to the class's definition
|
" move back to the line next to the class's definition
|
||||||
call cursor(endline + 1, 1)
|
call win_execute(popup_id, 'call cursor('.(endline + 1).', 1)')
|
||||||
let keep_searching = 1
|
let keep_searching = 1
|
||||||
while keep_searching != 0
|
while keep_searching != 0
|
||||||
" try to grab "use..." keywords
|
" try to grab "use..." keywords
|
||||||
let [lnum, col] = searchpos('\c^\s\+use\s\+'.class_name_pattern, 'cW', class_closing_bracket_line)
|
call win_execute(popup_id, 'let [lnum, col] = searchpos(''\c^\s\+use\s\+'.class_name_pattern.''', "cW", '.class_closing_bracket_line.')')
|
||||||
let syn_name = synIDattr(synID(lnum, col, 0), "name")
|
call win_execute(popup_id, 'let syn_name = synIDattr(synID('.lnum.', '.col.', 0), "name")')
|
||||||
if syn_name =~? 'string\|comment'
|
if syn_name =~? 'string\|comment'
|
||||||
call cursor(lnum + 1, 1)
|
call win_execute(popup_id, 'call cursor('.(lnum + 1).', 1)')
|
||||||
continue
|
continue
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let trait_line = getline(lnum)
|
call win_execute(popup_id, 'let trait_line = getline('.lnum.')')
|
||||||
if trait_line !~? ';'
|
if trait_line !~? ';'
|
||||||
" try to find the next line containing ';'
|
" try to find the next line containing ';'
|
||||||
let l = lnum
|
let l = lnum
|
||||||
@@ -2157,25 +2145,23 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
|||||||
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
|
||||||
let search_line = getline(l)
|
call win_execute(popup_id, 'let search_line = getline('.l.')')
|
||||||
let trait_line .= ' '.substitute(search_line, '\(^\s\+\|\s\+$\)', '', 'g')
|
let trait_line .= ' '.substitute(search_line, '\(^\s\+\|\s\+$\)', '', 'g')
|
||||||
endwhile
|
endwhile
|
||||||
endif
|
endif
|
||||||
let use_expression = matchstr(trait_line, '^\s*use\s\+\zs.\{-}\ze;')
|
let use_expression = matchstr(trait_line, '^\s*use\s\+\zs.\{-}\ze;')
|
||||||
let use_parts = map(split(use_expression, '\s*,\s*'), 'substitute(v:val, "\\s+", " ", "g")')
|
let use_parts = map(split(use_expression, '\s*,\s*'), 'substitute(v:val, "\\s+", " ", "g")')
|
||||||
let used_traits += map(use_parts, 'substitute(v:val, "\\s", "", "g")')
|
let used_traits += map(use_parts, 'substitute(v:val, "\\s", "", "g")')
|
||||||
call cursor(lnum + 1, 1)
|
call win_execute(popup_id, 'call cursor('.(lnum + 1).', 1)')
|
||||||
|
|
||||||
if [lnum, col] == [0, 0]
|
if [lnum, col] == [0, 0]
|
||||||
let keep_searching = 0
|
let keep_searching = 0
|
||||||
endif
|
endif
|
||||||
endwhile
|
endwhile
|
||||||
|
|
||||||
silent! bw! %
|
call popup_close(popup_id)
|
||||||
|
|
||||||
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(a:file_lines[0:cfline])
|
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(a:file_lines[0:cfline])
|
||||||
" go back to original window
|
|
||||||
exe phpcomplete_original_window.'wincmd w'
|
|
||||||
call add(result, {
|
call add(result, {
|
||||||
\ 'class': a:class_name,
|
\ 'class': a:class_name,
|
||||||
\ 'content': classcontent,
|
\ 'content': classcontent,
|
||||||
@@ -2532,40 +2518,37 @@ function! phpcomplete#FormatDocBlock(info) " {{{
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
return res
|
return res
|
||||||
endfunction!
|
endfunction
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
||||||
let original_window = winnr()
|
let popup_id = popup_create(a:file_lines, {'hidden': v:true})
|
||||||
|
call win_execute(popup_id, 'normal! G')
|
||||||
silent! below 1new
|
|
||||||
silent! 0put =a:file_lines
|
|
||||||
normal! G
|
|
||||||
|
|
||||||
" clear out classes, functions and other blocks
|
" clear out classes, functions and other blocks
|
||||||
while 1
|
while 1
|
||||||
let block_start_pos = searchpos('\c\(class\|trait\|function\|interface\)\s\+\_.\{-}\zs{', 'Web')
|
call win_execute(popup_id, 'let block_start_pos = searchpos(''\c\(class\|trait\|function\|interface\)\s\+\_.\{-}\zs{'', "Web")')
|
||||||
if block_start_pos == [0, 0]
|
if block_start_pos == [0, 0]
|
||||||
break
|
break
|
||||||
endif
|
endif
|
||||||
let block_end_pos = searchpairpos('{', '', '}\|\%$', 'W', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')
|
call win_execute(popup_id, 'let block_end_pos = searchpairpos("{", "", ''}\|\%$'', "W", ''synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"'')')
|
||||||
|
|
||||||
|
let popup_lines = winbufnr(popup_id)->getbufline(1, '$')
|
||||||
if block_end_pos != [0, 0]
|
if block_end_pos != [0, 0]
|
||||||
" end of the block found, just delete it
|
" end of the block found, just delete it
|
||||||
silent! exec block_start_pos[0].','.block_end_pos[0].'d _'
|
call remove(popup_lines, block_start_pos[0] - 1, block_end_pos[0] - 1)
|
||||||
else
|
else
|
||||||
" block pair not found, use block start as beginning and the end
|
" block pair not found, use block start as beginning and the end
|
||||||
" of the buffer instead
|
" of the buffer instead
|
||||||
silent! exec block_start_pos[0].',$d _'
|
call remove(popup_lines, block_start_pos[0] - 1, -1)
|
||||||
endif
|
endif
|
||||||
|
call popup_settext(popup_id, popup_lines)
|
||||||
endwhile
|
endwhile
|
||||||
normal! G
|
call win_execute(popup_id, 'normal! G', 'silent!')
|
||||||
|
|
||||||
" grab the remains
|
" grab the remains
|
||||||
let file_lines = reverse(getline(1, line('.') - 1))
|
call win_execute(popup_id, "let file_lines = reverse(getline(1, line('.')-1))")
|
||||||
|
call popup_close(popup_id)
|
||||||
silent! bw! %
|
|
||||||
exe original_window.'wincmd w'
|
|
||||||
|
|
||||||
let namespace_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
|
let namespace_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
|
||||||
let i = 0
|
let i = 0
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -1,12 +1,20 @@
|
|||||||
" Vim completion script
|
" Vim completion script
|
||||||
" Language: All languages, uses existing syntax highlighting rules
|
" Language: All languages, uses existing syntax highlighting rules
|
||||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||||
" Version: 13.0
|
" Version: 15.0
|
||||||
" Last Change: 2019 Aug 08
|
" Last Change: 2021 Apr 27
|
||||||
" Usage: For detailed help, ":help ft-syntax-omni"
|
" Usage: For detailed help, ":help ft-syntax-omni"
|
||||||
|
|
||||||
" History
|
" History
|
||||||
"
|
"
|
||||||
|
" Version 15.0
|
||||||
|
" - SyntaxComplete ignored all buffer specific overrides, always used global
|
||||||
|
" https://github.com/vim/vim/issues/8153
|
||||||
|
"
|
||||||
|
" Version 14.0
|
||||||
|
" - Fixed issue with single quotes and is_keyword
|
||||||
|
" https://github.com/vim/vim/issues/7463
|
||||||
|
"
|
||||||
" Version 13.0
|
" Version 13.0
|
||||||
" - Extended the option omni_syntax_group_include_{filetype}
|
" - Extended the option omni_syntax_group_include_{filetype}
|
||||||
" to accept a comma separated list of regex's rather than
|
" to accept a comma separated list of regex's rather than
|
||||||
@@ -38,7 +46,7 @@
|
|||||||
" let g:omni_syntax_use_single_byte = 1
|
" let g:omni_syntax_use_single_byte = 1
|
||||||
" - This by default will only allow single byte ASCII
|
" - This by default will only allow single byte ASCII
|
||||||
" characters to be added and an additional check to ensure
|
" characters to be added and an additional check to ensure
|
||||||
" the charater is printable (see documentation for isprint).
|
" the character is printable (see documentation for isprint).
|
||||||
"
|
"
|
||||||
" Version 9.0
|
" Version 9.0
|
||||||
" - Add the check for cpo.
|
" - Add the check for cpo.
|
||||||
@@ -86,7 +94,7 @@ endif
|
|||||||
if exists('g:loaded_syntax_completion')
|
if exists('g:loaded_syntax_completion')
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_syntax_completion = 130
|
let g:loaded_syntax_completion = 150
|
||||||
|
|
||||||
" Turn on support for line continuations when creating the script
|
" Turn on support for line continuations when creating the script
|
||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
@@ -141,14 +149,10 @@ let s:prepended = ''
|
|||||||
" This function is used for the 'omnifunc' option.
|
" This function is used for the 'omnifunc' option.
|
||||||
function! syntaxcomplete#Complete(findstart, base)
|
function! syntaxcomplete#Complete(findstart, base)
|
||||||
|
|
||||||
" Only display items in the completion window that are at least
|
" Allow user to override ignorecase per buffer
|
||||||
" this many characters in length
|
let l:omni_syntax_ignorecase = g:omni_syntax_ignorecase
|
||||||
if !exists('b:omni_syntax_ignorecase')
|
if exists('b:omni_syntax_ignorecase')
|
||||||
if exists('g:omni_syntax_ignorecase')
|
let l:omni_syntax_ignorecase = b:omni_syntax_ignorecase
|
||||||
let b:omni_syntax_ignorecase = g:omni_syntax_ignorecase
|
|
||||||
else
|
|
||||||
let b:omni_syntax_ignorecase = &ignorecase
|
|
||||||
endif
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if a:findstart
|
if a:findstart
|
||||||
@@ -179,7 +183,7 @@ function! syntaxcomplete#Complete(findstart, base)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
" let base = s:prepended . a:base
|
" let base = s:prepended . a:base
|
||||||
let base = s:prepended
|
let base = substitute(s:prepended, "'", "''", 'g')
|
||||||
|
|
||||||
let filetype = substitute(&filetype, '\.', '_', 'g')
|
let filetype = substitute(&filetype, '\.', '_', 'g')
|
||||||
let list_idx = index(s:cache_name, filetype, 0, &ignorecase)
|
let list_idx = index(s:cache_name, filetype, 0, &ignorecase)
|
||||||
@@ -195,13 +199,13 @@ function! syntaxcomplete#Complete(findstart, base)
|
|||||||
|
|
||||||
if base != ''
|
if base != ''
|
||||||
" let compstr = join(compl_list, ' ')
|
" let compstr = join(compl_list, ' ')
|
||||||
" let expr = (b:omni_syntax_ignorecase==0?'\C':'').'\<\%('.base.'\)\@!\w\+\s*'
|
" let expr = (l:omni_syntax_ignorecase==0?'\C':'').'\<\%('.base.'\)\@!\w\+\s*'
|
||||||
" let compstr = substitute(compstr, expr, '', 'g')
|
" let compstr = substitute(compstr, expr, '', 'g')
|
||||||
" let compl_list = split(compstr, '\s\+')
|
" let compl_list = split(compstr, '\s\+')
|
||||||
|
|
||||||
" Filter the list based on the first few characters the user
|
" Filter the list based on the first few characters the user
|
||||||
" entered
|
" entered
|
||||||
let expr = 'v:val '.(g:omni_syntax_ignorecase==1?'=~?':'=~#')." '^".escape(base, '\\/.*$^~[]').".*'"
|
let expr = 'v:val '.(l:omni_syntax_ignorecase==1?'=~?':'=~#')." '^".escape(base, '\\/.*$^~[]').".*'"
|
||||||
let compl_list = filter(deepcopy(compl_list), expr)
|
let compl_list = filter(deepcopy(compl_list), expr)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -222,6 +226,26 @@ function! syntaxcomplete#OmniSyntaxList(...)
|
|||||||
endif
|
endif
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
function! syntaxcomplete#OmniSyntaxClearCache()
|
||||||
|
let s:cache_name = []
|
||||||
|
let s:cache_list = []
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" To retrieve all syntax items regardless of syntax group:
|
||||||
|
" echo OmniSyntaxList( [] )
|
||||||
|
"
|
||||||
|
" To retrieve only the syntax items for the sqlOperator syntax group:
|
||||||
|
" echo OmniSyntaxList( ['sqlOperator'] )
|
||||||
|
"
|
||||||
|
" To retrieve all syntax items for both the sqlOperator and sqlType groups:
|
||||||
|
" echo OmniSyntaxList( ['sqlOperator', 'sqlType'] )
|
||||||
|
"
|
||||||
|
" A regular expression can also be used:
|
||||||
|
" echo OmniSyntaxList( ['sql\w\+'] )
|
||||||
|
"
|
||||||
|
" From within a plugin, you would typically assign the output to a List: >
|
||||||
|
" let myKeywords = []
|
||||||
|
" let myKeywords = OmniSyntaxList( ['sqlKeyword'] )
|
||||||
function! OmniSyntaxList(...)
|
function! OmniSyntaxList(...)
|
||||||
let list_parms = []
|
let list_parms = []
|
||||||
if a:0 > 0
|
if a:0 > 0
|
||||||
@@ -239,37 +263,25 @@ function! OmniSyntaxList(...)
|
|||||||
" let use_dictionary = a:1
|
" let use_dictionary = a:1
|
||||||
" endif
|
" endif
|
||||||
|
|
||||||
" Only display items in the completion window that are at least
|
|
||||||
" this many characters in length
|
|
||||||
if !exists('b:omni_syntax_use_iskeyword')
|
|
||||||
if exists('g:omni_syntax_use_iskeyword')
|
|
||||||
let b:omni_syntax_use_iskeyword = g:omni_syntax_use_iskeyword
|
|
||||||
else
|
|
||||||
let b:omni_syntax_use_iskeyword = 1
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Only display items in the completion window that are at least
|
|
||||||
" this many characters in length
|
|
||||||
if !exists('b:omni_syntax_minimum_length')
|
|
||||||
if exists('g:omni_syntax_minimum_length')
|
|
||||||
let b:omni_syntax_minimum_length = g:omni_syntax_minimum_length
|
|
||||||
else
|
|
||||||
let b:omni_syntax_minimum_length = 0
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
let saveL = @l
|
let saveL = @l
|
||||||
let filetype = substitute(&filetype, '\.', '_', 'g')
|
let filetype = substitute(&filetype, '\.', '_', 'g')
|
||||||
|
|
||||||
if empty(list_parms)
|
if empty(list_parms)
|
||||||
|
" Allow user to override per buffer
|
||||||
|
if exists('g:omni_syntax_group_include_'.filetype)
|
||||||
|
let l:omni_syntax_group_include_{filetype} = g:omni_syntax_group_include_{filetype}
|
||||||
|
endif
|
||||||
|
if exists('b:omni_syntax_group_include_'.filetype)
|
||||||
|
let l:omni_syntax_group_include_{filetype} = b:omni_syntax_group_include_{filetype}
|
||||||
|
endif
|
||||||
|
|
||||||
" Default the include group to include the requested syntax group
|
" Default the include group to include the requested syntax group
|
||||||
let syntax_group_include_{filetype} = ''
|
let syntax_group_include_{filetype} = ''
|
||||||
" Check if there are any overrides specified for this filetype
|
" Check if there are any overrides specified for this filetype
|
||||||
if exists('g:omni_syntax_group_include_'.filetype)
|
if exists('l:omni_syntax_group_include_'.filetype)
|
||||||
let syntax_group_include_{filetype} =
|
let syntax_group_include_{filetype} =
|
||||||
\ substitute( g:omni_syntax_group_include_{filetype},'\s\+','','g')
|
\ substitute( l:omni_syntax_group_include_{filetype},'\s\+','','g')
|
||||||
let list_parms = split(g:omni_syntax_group_include_{filetype}, ',')
|
let list_parms = split(l:omni_syntax_group_include_{filetype}, ',')
|
||||||
if syntax_group_include_{filetype} =~ '\w'
|
if syntax_group_include_{filetype} =~ '\w'
|
||||||
let syntax_group_include_{filetype} =
|
let syntax_group_include_{filetype} =
|
||||||
\ substitute( syntax_group_include_{filetype},
|
\ substitute( syntax_group_include_{filetype},
|
||||||
@@ -324,11 +336,20 @@ function! OmniSyntaxList(...)
|
|||||||
else
|
else
|
||||||
" Default the exclude group to nothing
|
" Default the exclude group to nothing
|
||||||
let syntax_group_exclude_{filetype} = ''
|
let syntax_group_exclude_{filetype} = ''
|
||||||
" Check if there are any overrides specified for this filetype
|
|
||||||
|
" Allow user to override per buffer
|
||||||
if exists('g:omni_syntax_group_exclude_'.filetype)
|
if exists('g:omni_syntax_group_exclude_'.filetype)
|
||||||
|
let l:omni_syntax_group_exclude_{filetype} = g:omni_syntax_group_exclude_{filetype}
|
||||||
|
endif
|
||||||
|
if exists('b:omni_syntax_group_exclude_'.filetype)
|
||||||
|
let l:omni_syntax_group_exclude_{filetype} = b:omni_syntax_group_exclude_{filetype}
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Check if there are any overrides specified for this filetype
|
||||||
|
if exists('l:omni_syntax_group_exclude_'.filetype)
|
||||||
let syntax_group_exclude_{filetype} =
|
let syntax_group_exclude_{filetype} =
|
||||||
\ substitute( g:omni_syntax_group_exclude_{filetype},'\s\+','','g')
|
\ substitute( l:omni_syntax_group_exclude_{filetype},'\s\+','','g')
|
||||||
let list_exclude_groups = split(g:omni_syntax_group_exclude_{filetype}, ',')
|
let list_exclude_groups = split(l:omni_syntax_group_exclude_{filetype}, ',')
|
||||||
if syntax_group_exclude_{filetype} =~ '\w'
|
if syntax_group_exclude_{filetype} =~ '\w'
|
||||||
let syntax_group_exclude_{filetype} =
|
let syntax_group_exclude_{filetype} =
|
||||||
\ substitute( syntax_group_exclude_{filetype},
|
\ substitute( syntax_group_exclude_{filetype},
|
||||||
@@ -524,6 +545,30 @@ endfunction
|
|||||||
|
|
||||||
function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
||||||
|
|
||||||
|
" Allow user to override iskeyword per buffer
|
||||||
|
let l:omni_syntax_use_iskeyword = g:omni_syntax_use_iskeyword
|
||||||
|
if exists('b:omni_syntax_use_iskeyword')
|
||||||
|
let l:omni_syntax_use_iskeyword = b:omni_syntax_use_iskeyword
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Allow user to override iskeyword_numeric per buffer
|
||||||
|
let l:omni_syntax_use_iskeyword_numeric = g:omni_syntax_use_iskeyword_numeric
|
||||||
|
if exists('b:omni_syntax_use_iskeyword_numeric')
|
||||||
|
let l:omni_syntax_use_iskeyword_numeric = b:omni_syntax_use_iskeyword_numeric
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Allow user to override iskeyword_numeric per buffer
|
||||||
|
let l:omni_syntax_use_single_byte = g:omni_syntax_use_single_byte
|
||||||
|
if exists('b:omni_syntax_use_single_byte')
|
||||||
|
let l:omni_syntax_use_single_byte = b:omni_syntax_use_single_byte
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Allow user to override minimum_length per buffer
|
||||||
|
let l:omni_syntax_minimum_length = g:omni_syntax_minimum_length
|
||||||
|
if exists('b:omni_syntax_minimum_length')
|
||||||
|
let l:omni_syntax_minimum_length = b:omni_syntax_minimum_length
|
||||||
|
endif
|
||||||
|
|
||||||
let syn_list = ""
|
let syn_list = ""
|
||||||
|
|
||||||
" From the full syntax listing, strip out the portion for the
|
" From the full syntax listing, strip out the portion for the
|
||||||
@@ -548,7 +593,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
|||||||
" let syn_list = substitute( @l, '^.*xxx\s*\%(contained\s*\)\?', "", '' )
|
" let syn_list = substitute( @l, '^.*xxx\s*\%(contained\s*\)\?', "", '' )
|
||||||
" let syn_list = substitute( @l, '^.*xxx\s*', "", '' )
|
" let syn_list = substitute( @l, '^.*xxx\s*', "", '' )
|
||||||
|
|
||||||
" We only want the words for the lines begining with
|
" We only want the words for the lines beginning with
|
||||||
" containedin, but there could be other items.
|
" containedin, but there could be other items.
|
||||||
|
|
||||||
" Tried to remove all lines that do not begin with contained
|
" Tried to remove all lines that do not begin with contained
|
||||||
@@ -642,14 +687,23 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
|||||||
\ syn_list, '\%(^\|\n\)\@<=\s*\(@\w\+\)'
|
\ syn_list, '\%(^\|\n\)\@<=\s*\(@\w\+\)'
|
||||||
\ , "", 'g'
|
\ , "", 'g'
|
||||||
\ )
|
\ )
|
||||||
|
|
||||||
if b:omni_syntax_use_iskeyword == 0
|
if l:omni_syntax_use_iskeyword == 0
|
||||||
" There are a number of items which have non-word characters in
|
" There are a number of items which have non-word characters in
|
||||||
" them, *'T_F1'*. vim.vim is one such file.
|
" them, *'T_F1'*. vim.vim is one such file.
|
||||||
" This will replace non-word characters with spaces.
|
" This will replace non-word characters with spaces.
|
||||||
|
" setlocal filetype=forth
|
||||||
|
" let g:omni_syntax_use_iskeyword = 1
|
||||||
|
" let g:omni_syntax_use_iskeyword_numeric = 1
|
||||||
|
" You will see entries like
|
||||||
|
" #>>
|
||||||
|
" (.local)
|
||||||
|
" These were found doing a grep in vim82\syntax
|
||||||
|
" grep iskeyword *
|
||||||
|
" forth.vim:setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||||
let syn_list = substitute( syn_list, '[^0-9A-Za-z_ ]', ' ', 'g' )
|
let syn_list = substitute( syn_list, '[^0-9A-Za-z_ ]', ' ', 'g' )
|
||||||
else
|
else
|
||||||
if g:omni_syntax_use_iskeyword_numeric == 1
|
if l:omni_syntax_use_iskeyword_numeric == 1
|
||||||
" iskeyword can contain value like this
|
" iskeyword can contain value like this
|
||||||
" 38,42,43,45,47-58,60-62,64-90,97-122,_,+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
|
" 38,42,43,45,47-58,60-62,64-90,97-122,_,+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
|
||||||
" Numeric values convert to their ASCII equivalent using the
|
" Numeric values convert to their ASCII equivalent using the
|
||||||
@@ -669,7 +723,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
|||||||
" cycle through each character within the range
|
" cycle through each character within the range
|
||||||
let [b:start, b:end] = split(item, '-')
|
let [b:start, b:end] = split(item, '-')
|
||||||
for range_item in range( b:start, b:end )
|
for range_item in range( b:start, b:end )
|
||||||
if range_item <= 127 || g:omni_syntax_use_single_byte == 0
|
if range_item <= 127 || l:omni_syntax_use_single_byte == 0
|
||||||
if nr2char(range_item) =~ '\p'
|
if nr2char(range_item) =~ '\p'
|
||||||
let accepted_chars = accepted_chars . nr2char(range_item)
|
let accepted_chars = accepted_chars . nr2char(range_item)
|
||||||
endif
|
endif
|
||||||
@@ -677,13 +731,13 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
|||||||
endfor
|
endfor
|
||||||
elseif item =~ '^\d\+$'
|
elseif item =~ '^\d\+$'
|
||||||
" Only numeric, translate to a character
|
" Only numeric, translate to a character
|
||||||
if item < 127 || g:omni_syntax_use_single_byte == 0
|
if item < 127 || l:omni_syntax_use_single_byte == 0
|
||||||
if nr2char(item) =~ '\p'
|
if nr2char(item) =~ '\p'
|
||||||
let accepted_chars = accepted_chars . nr2char(item)
|
let accepted_chars = accepted_chars . nr2char(item)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
if char2nr(item) < 127 || g:omni_syntax_use_single_byte == 0
|
if char2nr(item) < 127 || l:omni_syntax_use_single_byte == 0
|
||||||
if item =~ '\p'
|
if item =~ '\p'
|
||||||
let accepted_chars = accepted_chars . item
|
let accepted_chars = accepted_chars . item
|
||||||
endif
|
endif
|
||||||
@@ -719,9 +773,9 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if b:omni_syntax_minimum_length > 0
|
if l:omni_syntax_minimum_length > 0
|
||||||
" If the user specified a minimum length, enforce it
|
" If the user specified a minimum length, enforce it
|
||||||
let syn_list = substitute(' '.syn_list.' ', ' \S\{,'.b:omni_syntax_minimum_length.'}\ze ', ' ', 'g')
|
let syn_list = substitute(' '.syn_list.' ', ' \S\{,'.l:omni_syntax_minimum_length.'}\ze ', ' ', 'g')
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
let syn_list = ''
|
let syn_list = ''
|
||||||
@@ -751,5 +805,6 @@ function! OmniSyntaxShowChars(spec)
|
|||||||
endfor
|
endfor
|
||||||
return join(map(result, 'nr2char(v:val)'), ', ')
|
return join(map(result, 'nr2char(v:val)'), ', ')
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
let &cpo = s:cpo_save
|
let &cpo = s:cpo_save
|
||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|||||||
26
runtime/compiler/cm3.vim
Normal file
26
runtime/compiler/cm3.vim
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
" Vim compiler file
|
||||||
|
" Compiler: Critical Mass Modula-3 Compiler
|
||||||
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
|
" Last Change: 2021 Apr 08
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "cm3"
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
" TODO: better handling of Quake errors
|
||||||
|
CompilerSet makeprg=cm3
|
||||||
|
CompilerSet errorformat=%D---\ building\ in\ %f\ ---,
|
||||||
|
\%W\"%f\"\\,\ line\ %l:\ warning:\ %m,
|
||||||
|
\%E\"%f\"\\,\ line\ %l:\ %m,
|
||||||
|
\%-G%.%#
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
27
runtime/compiler/fbc.vim
Normal file
27
runtime/compiler/fbc.vim
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
" Vim compiler file
|
||||||
|
" Compiler: FreeBASIC Compiler
|
||||||
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
|
" Last Change: 2015 Jan 10
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "fbc"
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
CompilerSet makeprg=fbc
|
||||||
|
CompilerSet errorformat=%-G%.%#Too\ many\ errors\\,\ exiting,
|
||||||
|
\%f(%l)\ %tarning\ %n(%\\d%\\+):\ %m,
|
||||||
|
\%E%f(%l)\ error\ %n:\ %m,
|
||||||
|
\%-Z%p^,
|
||||||
|
\%-C%.%#,
|
||||||
|
\%-G%.%#
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
84
runtime/compiler/powershell.vim
Normal file
84
runtime/compiler/powershell.vim
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
" Vim compiler file
|
||||||
|
" Compiler: powershell
|
||||||
|
" URL: https://github.com/PProvost/vim-ps1
|
||||||
|
" Last Change: 2020 Mar 30
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "powershell"
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo-=C
|
||||||
|
|
||||||
|
if !exists("g:ps1_makeprg_cmd")
|
||||||
|
if executable('pwsh')
|
||||||
|
" pwsh is the future
|
||||||
|
let g:ps1_makeprg_cmd = 'pwsh'
|
||||||
|
elseif executable('pwsh.exe')
|
||||||
|
let g:ps1_makeprg_cmd = 'pwsh.exe'
|
||||||
|
elseif executable('powershell.exe')
|
||||||
|
let g:ps1_makeprg_cmd = 'powershell.exe'
|
||||||
|
else
|
||||||
|
let g:ps1_makeprg_cmd = ''
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !executable(g:ps1_makeprg_cmd)
|
||||||
|
echoerr "To use the powershell compiler, please set g:ps1_makeprg_cmd to the powershell executable!"
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Show CategoryInfo, FullyQualifiedErrorId, etc?
|
||||||
|
let g:ps1_efm_show_error_categories = get(g:, 'ps1_efm_show_error_categories', 0)
|
||||||
|
|
||||||
|
" Use absolute path because powershell requires explicit relative paths
|
||||||
|
" (./file.ps1 is okay, but # expands to file.ps1)
|
||||||
|
let &l:makeprg = g:ps1_makeprg_cmd .' %:p:S'
|
||||||
|
|
||||||
|
" Parse file, line, char from callstacks:
|
||||||
|
" Write-Ouput : The term 'Write-Ouput' is not recognized as the name of a
|
||||||
|
" cmdlet, function, script file, or operable program. Check the spelling
|
||||||
|
" of the name, or if a path was included, verify that the path is correct
|
||||||
|
" and try again.
|
||||||
|
" At C:\script.ps1:11 char:5
|
||||||
|
" + Write-Ouput $content
|
||||||
|
" + ~~~~~~~~~~~
|
||||||
|
" + CategoryInfo : ObjectNotFound: (Write-Ouput:String) [], CommandNotFoundException
|
||||||
|
" + FullyQualifiedErrorId : CommandNotFoundException
|
||||||
|
|
||||||
|
" Showing error in context with underlining.
|
||||||
|
CompilerSet errorformat=%+G+%m
|
||||||
|
" Error summary.
|
||||||
|
CompilerSet errorformat+=%E%*\\S\ :\ %m
|
||||||
|
" Error location.
|
||||||
|
CompilerSet errorformat+=%CAt\ %f:%l\ char:%c
|
||||||
|
" Errors that span multiple lines (may be wrapped to width of terminal).
|
||||||
|
CompilerSet errorformat+=%C%m
|
||||||
|
" Ignore blank/whitespace-only lines.
|
||||||
|
CompilerSet errorformat+=%Z\\s%#
|
||||||
|
|
||||||
|
if g:ps1_efm_show_error_categories
|
||||||
|
CompilerSet errorformat^=%+G\ \ \ \ +\ %.%#\\s%#:\ %m
|
||||||
|
else
|
||||||
|
CompilerSet errorformat^=%-G\ \ \ \ +\ %.%#\\s%#:\ %m
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
" Parse file, line, char from of parse errors:
|
||||||
|
" At C:\script.ps1:22 char:16
|
||||||
|
" + Stop-Process -Name "invalidprocess
|
||||||
|
" + ~~~~~~~~~~~~~~~
|
||||||
|
" The string is missing the terminator: ".
|
||||||
|
" + CategoryInfo : ParserError: (:) [], ParseException
|
||||||
|
" + FullyQualifiedErrorId : TerminatorExpectedAtEndOfString
|
||||||
|
CompilerSet errorformat+=At\ %f:%l\ char:%c
|
||||||
|
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
|
" vim:set sw=2 sts=2:
|
||||||
28
runtime/compiler/sml.vim
Normal file
28
runtime/compiler/sml.vim
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
" Vim compiler file
|
||||||
|
" Compiler: SML/NJ Compiler
|
||||||
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
|
" Last Change: 2020 Feb 10
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "sml"
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
CompilerSet makeprg=sml
|
||||||
|
CompilerSet errorformat=%f:%l.%c-%\\d%\\+.%\\d%\\+\ %trror:\ %m,
|
||||||
|
\%f:%l.%c\ %trror:\ %m,
|
||||||
|
\%trror:\ %m
|
||||||
|
\%f:%l.%c-%\\d%\\+.%\\d%\\+\ %tarning:\ %m,
|
||||||
|
\%f:%l.%c\ %tarning:\ %m,
|
||||||
|
\%tarning:\ %m,
|
||||||
|
\%-G%.%#
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
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
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: HTML Tidy
|
" Compiler: HTML Tidy
|
||||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
" Last Change: 2016 Apr 21
|
" Last Change: 2020 Sep 4
|
||||||
|
|
||||||
if exists("current_compiler")
|
if exists("current_compiler")
|
||||||
finish
|
finish
|
||||||
@@ -12,8 +12,15 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
|||||||
command -nargs=* CompilerSet setlocal <args>
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes\ %:S
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
" foo.html:8:1: Warning: inserting missing 'foobar' element
|
CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes
|
||||||
" foo.html:9:2: Error: <foobar> is not recognized!
|
CompilerSet errorformat=%f:%l:%c:\ %trror:\ %m,
|
||||||
CompilerSet errorformat=%f:%l:%c:\ %trror:%m,%f:%l:%c:\ %tarning:%m,%-G%.%#
|
\%f:%l:%c:\ %tarning:\ %m,
|
||||||
|
\%f:%l:%c:\ %tnfo:\ %m,
|
||||||
|
\%f:%l:%c:\ %m,
|
||||||
|
\%-G%.%#
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|||||||
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
|
||||||
|
|
||||||
@@ -30,6 +30,8 @@ DOCS = \
|
|||||||
filetype.txt \
|
filetype.txt \
|
||||||
fold.txt \
|
fold.txt \
|
||||||
ft_ada.txt \
|
ft_ada.txt \
|
||||||
|
ft_ps1.txt \
|
||||||
|
ft_raku.txt \
|
||||||
ft_rust.txt \
|
ft_rust.txt \
|
||||||
ft_sql.txt \
|
ft_sql.txt \
|
||||||
gui.txt \
|
gui.txt \
|
||||||
@@ -173,6 +175,8 @@ HTMLS = \
|
|||||||
filetype.html \
|
filetype.html \
|
||||||
fold.html \
|
fold.html \
|
||||||
ft_ada.html \
|
ft_ada.html \
|
||||||
|
ft_ps1.html \
|
||||||
|
ft_raku.html \
|
||||||
ft_rust.html \
|
ft_rust.html \
|
||||||
ft_sql.html \
|
ft_sql.html \
|
||||||
gui.html \
|
gui.html \
|
||||||
|
|||||||
@@ -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: 2020 Dec 19
|
*autocmd.txt* For Vim version 8.2. Last change: 2021 Jul 27
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -55,6 +55,7 @@ effects. Be careful not to destroy your text.
|
|||||||
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*
|
||||||
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.
|
||||||
Vim always adds the {cmd} after existing autocommands,
|
Vim always adds the {cmd} after existing autocommands,
|
||||||
@@ -75,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 use 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
|
||||||
@@ -678,8 +685,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`.
|
||||||
@@ -984,9 +994,10 @@ QuickFixCmdPost Like QuickFixCmdPre, but after a quickfix
|
|||||||
*QuitPre*
|
*QuitPre*
|
||||||
QuitPre When using `:quit`, `:wq` or `:qall`, before
|
QuitPre When using `:quit`, `:wq` or `:qall`, before
|
||||||
deciding whether it closes the current window
|
deciding whether it closes the current window
|
||||||
or quits Vim. Can be used to close any
|
or quits Vim. For `:wq` the buffer is written
|
||||||
non-essential window if the current window is
|
before QuitPre is triggered. Can be used to
|
||||||
the last ordinary window.
|
close any non-essential window if the current
|
||||||
|
window is the last ordinary window.
|
||||||
Also see |ExitPre|.
|
Also see |ExitPre|.
|
||||||
*RemoteReply*
|
*RemoteReply*
|
||||||
RemoteReply When a reply from a Vim that functions as
|
RemoteReply When a reply from a Vim that functions as
|
||||||
@@ -1518,9 +1529,18 @@ option will not cause any commands to be executed.
|
|||||||
*:doautoa* *:doautoall*
|
*:doautoa* *:doautoall*
|
||||||
:doautoa[ll] [<nomodeline>] [group] {event} [fname]
|
:doautoa[ll] [<nomodeline>] [group] {event} [fname]
|
||||||
Like ":doautocmd", but apply the autocommands to each
|
Like ":doautocmd", but apply the autocommands to each
|
||||||
loaded buffer. Note that [fname] is used to select
|
loaded buffer. The current buffer is done last.
|
||||||
the autocommands, not the buffers to which they are
|
|
||||||
applied.
|
Note that [fname] is used to select the autocommands,
|
||||||
|
not the buffers to which they are applied. Example: >
|
||||||
|
augroup mine
|
||||||
|
autocmd!
|
||||||
|
autocmd FileType * echo expand('<amatch>')
|
||||||
|
augroup END
|
||||||
|
doautoall mine FileType Loaded-Buffer
|
||||||
|
< Sourcing this script, you'll see as many
|
||||||
|
"Loaded-Buffer" echoed as there are loaded buffers.
|
||||||
|
|
||||||
Careful: Don't use this for autocommands that delete a
|
Careful: Don't use this for autocommands that delete a
|
||||||
buffer, change to another buffer or change the
|
buffer, change to another buffer or change the
|
||||||
contents of a buffer; the result is unpredictable.
|
contents of a buffer; the result is unpredictable.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*change.txt* For Vim version 8.2. Last change: 2020 Nov 21
|
*change.txt* For Vim version 8.2. Last change: 2021 Jun 23
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -649,6 +649,8 @@ For other systems the tmpnam() library function is used.
|
|||||||
The space between `:substitute` and the 'c', 'g',
|
The space between `:substitute` and the 'c', 'g',
|
||||||
'i', 'I' and 'r' flags isn't required, but in scripts
|
'i', 'I' and 'r' flags isn't required, but in scripts
|
||||||
it's a good idea to keep it to avoid confusion.
|
it's a good idea to keep it to avoid confusion.
|
||||||
|
Also see the two and three letter commands to repeat
|
||||||
|
:substitute below |:substitute-repeat|.
|
||||||
|
|
||||||
:[range]~[&][flags] [count] *:~*
|
:[range]~[&][flags] [count] *:~*
|
||||||
Repeat last substitute with same substitute string
|
Repeat last substitute with same substitute string
|
||||||
@@ -778,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.
|
||||||
@@ -877,20 +882,26 @@ either the first or second pattern in parentheses did not match, so either
|
|||||||
*:sge* *:sgi* *:sgI* *:sgl* *:sgn* *:sgp* *:sgr* *:sI* *:si*
|
*:sge* *:sgi* *:sgI* *:sgl* *:sgn* *:sgp* *:sgr* *:sI* *:si*
|
||||||
*:sic* *:sIc* *:sie* *:sIe* *:sIg* *:sIl* *:sin* *:sIn* *:sIp*
|
*:sic* *:sIc* *:sie* *:sIe* *:sIg* *:sIl* *:sin* *:sIn* *:sIp*
|
||||||
*:sip* *:sIr* *:sir* *:sr* *:src* *:srg* *:sri* *:srI* *:srl*
|
*:sip* *:sIr* *:sir* *:sr* *:src* *:srg* *:sri* *:srI* *:srl*
|
||||||
*:srn* *:srp*
|
*:srn* *:srp* *:substitute-repeat*
|
||||||
2-letter and 3-letter :substitute commands ~
|
2-letter and 3-letter :substitute commands ~
|
||||||
|
|
||||||
|
These commands repeat the previous `:substitute` command with the given flags.
|
||||||
|
The first letter is always "s", followed by one or two of the possible flag
|
||||||
|
characters. For example `:sce` works like `:s///ce`. The table lists the
|
||||||
|
possible combinations, not all flags are possible, because the command is
|
||||||
|
short for another command.
|
||||||
|
|
||||||
List of :substitute commands
|
List of :substitute commands
|
||||||
| c e g i I n p l r
|
| c e g i I n p l r
|
||||||
| c :sc :sce :scg :sci :scI :scn :scp :scl ---
|
| c :sc :sce :scg :sci :scI :scn :scp :scl
|
||||||
| e
|
| e
|
||||||
| g :sgc :sge :sg :sgi :sgI :sgn :sgp :sgl :sgr
|
| g :sgc :sge :sg :sgi :sgI :sgn :sgp :sgl :sgr
|
||||||
| i :sic :sie --- :si :siI :sin :sip --- :sir
|
| i :sic :sie :si :siI :sin :sip :sir
|
||||||
| I :sIc :sIe :sIg :sIi :sI :sIn :sIp :sIl :sIr
|
| I :sIc :sIe :sIg :sIi :sI :sIn :sIp :sIl :sIr
|
||||||
| n
|
| n
|
||||||
| p
|
| p
|
||||||
| l
|
| l
|
||||||
| r :src --- :srg :sri :srI :srn :srp :srl :sr
|
| r :src :srg :sri :srI :srn :srp :srl :sr
|
||||||
|
|
||||||
Exceptions:
|
Exceptions:
|
||||||
:scr is `:scriptnames`
|
:scr is `:scriptnames`
|
||||||
@@ -1034,6 +1045,10 @@ inside of strings can change! Also see 'softtabstop' option. >
|
|||||||
cursor to the end of line (which is more logical,
|
cursor to the end of line (which is more logical,
|
||||||
but not Vi-compatible) use ":map Y y$".
|
but not Vi-compatible) use ":map Y y$".
|
||||||
|
|
||||||
|
*zy*
|
||||||
|
["x]zy{motion} Yank {motion} text [into register x]. Only differs
|
||||||
|
from `y` when selecting a block of text, see |v_zy|.
|
||||||
|
|
||||||
*v_y*
|
*v_y*
|
||||||
{Visual}["x]y Yank the highlighted text [into register x] (for
|
{Visual}["x]y Yank the highlighted text [into register x] (for
|
||||||
{Visual} see |Visual-mode|).
|
{Visual} see |Visual-mode|).
|
||||||
@@ -1042,6 +1057,12 @@ inside of strings can change! Also see 'softtabstop' option. >
|
|||||||
{Visual}["x]Y Yank the highlighted lines [into register x] (for
|
{Visual}["x]Y Yank the highlighted lines [into register x] (for
|
||||||
{Visual} see |Visual-mode|).
|
{Visual} see |Visual-mode|).
|
||||||
|
|
||||||
|
*v_zy*
|
||||||
|
{Visual}["x]zy Yank the highlighted text [into register x]. Trailing
|
||||||
|
whitespace at the end of each line of a selected block
|
||||||
|
won't be yanked. Especially useful in combination
|
||||||
|
with `zp`. (for {Visual} see |Visual-mode|)
|
||||||
|
|
||||||
*:y* *:yank* *E850*
|
*:y* *:yank* *E850*
|
||||||
:[range]y[ank] [x] Yank [range] lines [into register x]. Yanking to the
|
:[range]y[ank] [x] Yank [range] lines [into register x]. Yanking to the
|
||||||
"* or "+ registers is possible only when the
|
"* or "+ registers is possible only when the
|
||||||
@@ -1118,6 +1139,12 @@ inside of strings can change! Also see 'softtabstop' option. >
|
|||||||
Using the mouse only works when 'mouse' contains 'n'
|
Using the mouse only works when 'mouse' contains 'n'
|
||||||
or 'a'.
|
or 'a'.
|
||||||
|
|
||||||
|
["x]zp or *zp* *zP*
|
||||||
|
["x]zP Like "p" and "P", except without adding trailing spaces
|
||||||
|
when pasting a block. Thus the inserted text will not
|
||||||
|
always be a rectangle. Especially useful in
|
||||||
|
combination with |v_zy|.
|
||||||
|
|
||||||
You can use these commands to copy text from one place to another. Do this
|
You can use these commands to copy text from one place to another. Do this
|
||||||
by first getting the text into a register with a yank, delete or change
|
by first getting the text into a register with a yank, delete or change
|
||||||
command, then inserting the register contents with a put command. You can
|
command, then inserting the register contents with a put command. You can
|
||||||
@@ -1157,6 +1184,9 @@ 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
|
||||||
@@ -1631,24 +1661,31 @@ default setting is "tcq". You can separate the option letters with commas for
|
|||||||
readability.
|
readability.
|
||||||
|
|
||||||
letter meaning when present in 'formatoptions' ~
|
letter meaning when present in 'formatoptions' ~
|
||||||
|
*fo-t*
|
||||||
t Auto-wrap text using textwidth
|
t Auto-wrap text using textwidth
|
||||||
|
*fo-c*
|
||||||
c Auto-wrap comments using textwidth, inserting the current comment
|
c Auto-wrap comments using textwidth, inserting the current comment
|
||||||
leader automatically.
|
leader automatically.
|
||||||
|
*fo-r*
|
||||||
r Automatically insert the current comment leader after hitting
|
r Automatically insert the current comment leader after hitting
|
||||||
<Enter> in Insert mode.
|
<Enter> in Insert mode.
|
||||||
|
*fo-o*
|
||||||
o Automatically insert the current comment leader after hitting 'o' or
|
o Automatically insert the current comment leader after hitting 'o' or
|
||||||
'O' in Normal mode.
|
'O' in Normal mode.
|
||||||
|
*fo-q*
|
||||||
q Allow formatting of comments with "gq".
|
q Allow formatting of comments with "gq".
|
||||||
Note that formatting will not change blank lines or lines containing
|
Note that formatting will not change blank lines or lines containing
|
||||||
only the comment leader. A new paragraph starts after such a line,
|
only the comment leader. A new paragraph starts after such a line,
|
||||||
or when the comment leader changes.
|
or when the comment leader changes.
|
||||||
|
*fo-w*
|
||||||
w Trailing white space indicates a paragraph continues in the next line.
|
w Trailing white space indicates a paragraph continues in the next line.
|
||||||
A line that ends in a non-white character ends a paragraph.
|
A line that ends in a non-white character ends a paragraph.
|
||||||
|
*fo-a*
|
||||||
a Automatic formatting of paragraphs. Every time text is inserted or
|
a Automatic formatting of paragraphs. Every time text is inserted or
|
||||||
deleted the paragraph will be reformatted. See |auto-format|.
|
deleted the paragraph will be reformatted. See |auto-format|.
|
||||||
When the 'c' flag is present this only happens for recognized
|
When the 'c' flag is present this only happens for recognized
|
||||||
comments.
|
comments.
|
||||||
|
*fo-n*
|
||||||
n When formatting text, recognize numbered lists. This actually uses
|
n When formatting text, recognize numbered lists. This actually uses
|
||||||
the 'formatlistpat' option, thus any kind of list can be used. The
|
the 'formatlistpat' option, thus any kind of list can be used. The
|
||||||
indent of the text after the number is used for the next line. The
|
indent of the text after the number is used for the next line. The
|
||||||
@@ -1659,6 +1696,7 @@ n When formatting text, recognize numbered lists. This actually uses
|
|||||||
1. the first item
|
1. the first item
|
||||||
wraps
|
wraps
|
||||||
2. the second item
|
2. the second item
|
||||||
|
< *fo-2*
|
||||||
2 When formatting text, use the indent of the second line of a paragraph
|
2 When formatting text, use the indent of the second line of a paragraph
|
||||||
for the rest of the paragraph, instead of the indent of the first
|
for the rest of the paragraph, instead of the indent of the first
|
||||||
line. This supports paragraphs in which the first line has a
|
line. This supports paragraphs in which the first line has a
|
||||||
@@ -1668,36 +1706,46 @@ n When formatting text, recognize numbered lists. This actually uses
|
|||||||
second line of the same paragraph
|
second line of the same paragraph
|
||||||
third line.
|
third line.
|
||||||
< This also works inside comments, ignoring the comment leader.
|
< This also works inside comments, ignoring the comment leader.
|
||||||
|
*fo-v*
|
||||||
v Vi-compatible auto-wrapping in insert mode: Only break a line at a
|
v Vi-compatible auto-wrapping in insert mode: Only break a line at a
|
||||||
blank that you have entered during the current insert command. (Note:
|
blank that you have entered during the current insert command. (Note:
|
||||||
this is not 100% Vi compatible. Vi has some "unexpected features" or
|
this is not 100% Vi compatible. Vi has some "unexpected features" or
|
||||||
bugs in this area. It uses the screen column instead of the line
|
bugs in this area. It uses the screen column instead of the line
|
||||||
column.)
|
column.)
|
||||||
|
*fo-b*
|
||||||
b Like 'v', but only auto-wrap if you enter a blank at or before
|
b Like 'v', but only auto-wrap if you enter a blank at or before
|
||||||
the wrap margin. If the line was longer than 'textwidth' when you
|
the wrap margin. If the line was longer than 'textwidth' when you
|
||||||
started the insert, or you do not enter a blank in the insert before
|
started the insert, or you do not enter a blank in the insert before
|
||||||
reaching 'textwidth', Vim does not perform auto-wrapping.
|
reaching 'textwidth', Vim does not perform auto-wrapping.
|
||||||
|
*fo-l*
|
||||||
l Long lines are not broken in insert mode: When a line was longer than
|
l Long lines are not broken in insert mode: When a line was longer than
|
||||||
'textwidth' when the insert command started, Vim does not
|
'textwidth' when the insert command started, Vim does not
|
||||||
automatically format it.
|
automatically format it.
|
||||||
|
*fo-m*
|
||||||
m Also break at a multibyte character above 255. This is useful for
|
m Also break at a multibyte character above 255. This is useful for
|
||||||
Asian text where every character is a word on its own.
|
Asian text where every character is a word on its own.
|
||||||
|
*fo-M*
|
||||||
M When joining lines, don't insert a space before or after a multibyte
|
M When joining lines, don't insert a space before or after a multibyte
|
||||||
character. Overrules the 'B' flag.
|
character. Overrules the 'B' flag.
|
||||||
|
*fo-B*
|
||||||
B When joining lines, don't insert a space between two multibyte
|
B When joining lines, don't insert a space between two multibyte
|
||||||
characters. Overruled by the 'M' flag.
|
characters. Overruled by the 'M' flag.
|
||||||
|
*fo-1*
|
||||||
1 Don't break a line after a one-letter word. It's broken before it
|
1 Don't break a line after a one-letter word. It's broken before it
|
||||||
instead (if possible).
|
instead (if possible).
|
||||||
|
*fo-]*
|
||||||
] Respect textwidth rigorously. With this flag set, no line can be
|
] Respect textwidth rigorously. With this flag set, no line can be
|
||||||
longer than textwidth, unless line-break-prohibition rules make this
|
longer than textwidth, unless line-break-prohibition rules make this
|
||||||
impossible. Mainly for CJK scripts and works only if 'encoding' is
|
impossible. Mainly for CJK scripts and works only if 'encoding' is
|
||||||
"utf-8".
|
"utf-8".
|
||||||
|
*fo-j*
|
||||||
j Where it makes sense, remove a comment leader when joining lines. For
|
j Where it makes sense, remove a comment leader when joining lines. For
|
||||||
example, joining:
|
example, joining:
|
||||||
int i; // the index ~
|
int i; // the index ~
|
||||||
// in the list ~
|
// in the list ~
|
||||||
Becomes:
|
Becomes:
|
||||||
int i; // the index in the list ~
|
int i; // the index in the list ~
|
||||||
|
*fo-p*
|
||||||
p Don't break lines at single spaces that follow periods. This is
|
p Don't break lines at single spaces that follow periods. This is
|
||||||
intended to complement 'joinspaces' and |cpo-J|, for prose with
|
intended to complement 'joinspaces' and |cpo-J|, for prose with
|
||||||
sentences separated by two spaces. For example, with 'textwidth' set
|
sentences separated by two spaces. For example, with 'textwidth' set
|
||||||
|
|||||||
@@ -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: 2020 Dec 26
|
*cmdline.txt* For Vim version 8.2. Last change: 2021 May 30
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -597,9 +597,11 @@ followed by another Vim command:
|
|||||||
:global
|
:global
|
||||||
:help
|
:help
|
||||||
:helpfind
|
:helpfind
|
||||||
|
:helpgrep
|
||||||
:lcscope
|
:lcscope
|
||||||
:ldo
|
:ldo
|
||||||
:lfdo
|
:lfdo
|
||||||
|
:lhelpgrep
|
||||||
:make
|
:make
|
||||||
:normal
|
:normal
|
||||||
:perl
|
:perl
|
||||||
@@ -796,18 +798,20 @@ three lines: >
|
|||||||
3:d<CR> is translated into: .,.+2d<CR>
|
3:d<CR> is translated into: .,.+2d<CR>
|
||||||
<
|
<
|
||||||
|
|
||||||
Visual Mode and Range *v_:*
|
Visual Mode and Range
|
||||||
*:star-visual-range*
|
*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
|
||||||
it possible to select a similar line from the command-line
|
it possible to select a similar line from the command-line
|
||||||
history for repeating a command on different Visually selected
|
history for repeating a command on different Visually selected
|
||||||
lines.
|
lines.
|
||||||
|
|
||||||
|
:* *:star* *:star-visual-range*
|
||||||
When Visual mode was already ended, a short way to use the
|
When Visual mode was already ended, a short way to use the
|
||||||
Visual area for a range is `:*`. This requires that "*" does
|
Visual area for a range is `:*`. This requires that "*" does
|
||||||
not appear in 'cpo', see |cpo-star|. Otherwise you will have
|
not appear in 'cpo', see |cpo-star|. Otherwise you will have
|
||||||
to type `:'<,'>`
|
to type `:'<,'>`
|
||||||
|
For when "*" is in 'cpo' see |:star-compatible|.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
5. Ex command-line flags *ex-flags*
|
5. Ex command-line flags *ex-flags*
|
||||||
@@ -1096,7 +1100,7 @@ Also see |`=|.
|
|||||||
In the command-line window the command line can be edited just like editing
|
In the command-line window the command line can be edited just like editing
|
||||||
text in any window. It is a special kind of window, because you cannot leave
|
text in any window. It is a special kind of window, because you cannot leave
|
||||||
it in a normal way.
|
it in a normal way.
|
||||||
{not available when compiled without the |+cmdline_hist| feature}
|
{not available when compiled without the |+cmdwin| feature}
|
||||||
|
|
||||||
|
|
||||||
OPEN *c_CTRL-F* *q:* *q/* *q?*
|
OPEN *c_CTRL-F* *q:* *q/* *q?*
|
||||||
@@ -1130,7 +1134,7 @@ in Normal mode and Insert mode.
|
|||||||
It is possible to use ":", "/" and other commands that use the command-line,
|
It is possible to use ":", "/" and other commands that use the command-line,
|
||||||
but it's not possible to open another command-line window then. There is no
|
but it's not possible to open another command-line window then. There is no
|
||||||
nesting.
|
nesting.
|
||||||
*E11*
|
*E11* *E1188*
|
||||||
The command-line window is not a normal window. It is not possible to move to
|
The command-line window is not a normal window. It is not possible to move to
|
||||||
another window or edit another buffer. All commands that would do this are
|
another window or edit another buffer. All commands that would do this are
|
||||||
disabled in the command-line window. Of course it _is_ possible to execute
|
disabled in the command-line window. Of course it _is_ possible to execute
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*diff.txt* For Vim version 8.2. Last change: 2019 Nov 10
|
*diff.txt* For Vim version 8.2. Last change: 2021 May 24
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -59,7 +59,7 @@ In each of the edited files these options are set:
|
|||||||
'scrollbind' on
|
'scrollbind' on
|
||||||
'cursorbind' on
|
'cursorbind' on
|
||||||
'scrollopt' includes "hor"
|
'scrollopt' includes "hor"
|
||||||
'wrap' off
|
'wrap' off, or leave as-is if 'diffopt' includes "followwrap"
|
||||||
'foldmethod' "diff"
|
'foldmethod' "diff"
|
||||||
'foldcolumn' value from 'diffopt', default is 2
|
'foldcolumn' value from 'diffopt', default is 2
|
||||||
|
|
||||||
@@ -144,7 +144,7 @@ Otherwise they are set to their default value:
|
|||||||
'scrollbind' off
|
'scrollbind' off
|
||||||
'cursorbind' off
|
'cursorbind' off
|
||||||
'scrollopt' without "hor"
|
'scrollopt' without "hor"
|
||||||
'wrap' on
|
'wrap' on, or leave as-is if 'diffopt' includes "followwrap"
|
||||||
'foldmethod' "manual"
|
'foldmethod' "manual"
|
||||||
'foldcolumn' 0
|
'foldcolumn' 0
|
||||||
|
|
||||||
@@ -345,9 +345,11 @@ between file1 and file2: >
|
|||||||
|
|
||||||
The ">" is replaced with the value of 'shellredir'.
|
The ">" is replaced with the value of 'shellredir'.
|
||||||
|
|
||||||
The output of "diff" must be a normal "ed" style diff or a unified diff. Do
|
The output of "diff" must be a normal "ed" style diff or a unified diff. A
|
||||||
NOT use a context diff. This example explains the format that Vim expects for
|
context diff will NOT work. For a unified diff no context lines can be used.
|
||||||
the "ed" style diff: >
|
Using "diff -u" will NOT work, use "diff -U0".
|
||||||
|
|
||||||
|
This example explains the format that Vim expects for the "ed" style diff: >
|
||||||
|
|
||||||
1a2
|
1a2
|
||||||
> bbb
|
> bbb
|
||||||
|
|||||||
@@ -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.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*editing.txt* For Vim version 8.2. Last change: 2021 Jan 08
|
*editing.txt* For Vim version 8.2. Last change: 2021 Jul 25
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1253,7 +1253,7 @@ For versions of Vim where browsing is not supported, the command is executed
|
|||||||
unmodified.
|
unmodified.
|
||||||
|
|
||||||
*browsefilter*
|
*browsefilter*
|
||||||
For MS Windows and GTK, you can modify the filters that are used in the browse
|
For MS-Windows and GTK, you can modify the filters that are used in the browse
|
||||||
dialog. By setting the g:browsefilter or b:browsefilter variables, you can
|
dialog. By setting the g:browsefilter or b:browsefilter variables, you can
|
||||||
change the filters globally or locally to the buffer. The variable is set to
|
change the filters globally or locally to the buffer. The variable is set to
|
||||||
a string in the format "{filter label}\t{pattern};{pattern}\n" where {filter
|
a string in the format "{filter label}\t{pattern};{pattern}\n" where {filter
|
||||||
@@ -1320,8 +1320,8 @@ present in 'cpoptions' and "!" is not used in the command.
|
|||||||
*:chd* *:chdir*
|
*:chd* *:chdir*
|
||||||
:chd[ir][!] [path] Same as |:cd|.
|
:chd[ir][!] [path] Same as |:cd|.
|
||||||
|
|
||||||
*:tcd*
|
*:tc* *:tcd*
|
||||||
:tcd[!] {path} Like |:cd|, but only set the directory for the current
|
:tc[d][!] {path} Like |:cd|, but only set the directory for the current
|
||||||
tab. The current window will also use this directory.
|
tab. The current window will also use this directory.
|
||||||
The current directory is not changed for windows in
|
The current directory is not changed for windows in
|
||||||
other tabs and for windows in the current tab that
|
other tabs and for windows in the current tab that
|
||||||
@@ -1331,7 +1331,7 @@ present in 'cpoptions' and "!" is not used in the command.
|
|||||||
:tch[dir][!] Same as |:tcd|.
|
:tch[dir][!] Same as |:tcd|.
|
||||||
|
|
||||||
*:tcd-*
|
*:tcd-*
|
||||||
:tcd[!] - 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.
|
||||||
|
|
||||||
*:lc* *:lcd*
|
*:lc* *:lcd*
|
||||||
@@ -1469,8 +1469,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
|
||||||
@@ -1749,6 +1752,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: 2020 Sep 28
|
*filetype.txt* For Vim version 8.2. Last change: 2021 Mar 11
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -147,6 +147,7 @@ can be used to overrule the filetype used for certain extensions:
|
|||||||
*.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|
|
||||||
*.p g:filetype_p |ft-pascal-syntax|
|
*.p g:filetype_p |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|
|
||||||
*.tex g:tex_flavor |ft-tex-plugin|
|
*.tex g:tex_flavor |ft-tex-plugin|
|
||||||
|
|
||||||
@@ -627,6 +628,13 @@ For fish, add to the config file
|
|||||||
|
|
||||||
set -x MANPAGER "vim -M +MANPAGER -"
|
set -x MANPAGER "vim -M +MANPAGER -"
|
||||||
|
|
||||||
|
|
||||||
|
MARKDOWN *ft-markdown-plugin*
|
||||||
|
|
||||||
|
To enable folding use this: >
|
||||||
|
let g:markdown_folding = 1
|
||||||
|
<
|
||||||
|
|
||||||
PDF *ft-pdf-plugin*
|
PDF *ft-pdf-plugin*
|
||||||
|
|
||||||
Two maps, <C-]> and <C-T>, are provided to simulate a tag stack for navigating
|
Two maps, <C-]> and <C-T>, are provided to simulate a tag stack for navigating
|
||||||
|
|||||||
@@ -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.
|
||||||
|
|
||||||
|
|||||||
64
runtime/doc/ft_ps1.txt
Normal file
64
runtime/doc/ft_ps1.txt
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
*ft_ps1.txt* A Windows PowerShell syntax plugin for Vim
|
||||||
|
|
||||||
|
Author: Peter Provost <https://www.github.com/PProvost>
|
||||||
|
License: Apache 2.0
|
||||||
|
URL: https://github.com/PProvost/vim-ps1
|
||||||
|
|
||||||
|
INTRODUCTION *ps1-syntax*
|
||||||
|
|
||||||
|
This plugin provides Vim syntax, indent and filetype detection for Windows
|
||||||
|
PowerShell scripts, modules, and XML configuration files.
|
||||||
|
|
||||||
|
|
||||||
|
ABOUT *ps1-about*
|
||||||
|
|
||||||
|
Grab the latest version or report a bug on GitHub:
|
||||||
|
|
||||||
|
https://github.com/PProvost/vim-ps1
|
||||||
|
|
||||||
|
|
||||||
|
FOLDING *ps1-folding*
|
||||||
|
|
||||||
|
The ps1 syntax file provides syntax folding (see |:syn-fold|) for script blocks
|
||||||
|
and digital signatures in scripts.
|
||||||
|
|
||||||
|
When 'foldmethod' is set to "syntax" then function script blocks will be
|
||||||
|
folded unless you use the following in your .vimrc or before opening a script: >
|
||||||
|
|
||||||
|
:let g:ps1_nofold_blocks = 1
|
||||||
|
<
|
||||||
|
Digital signatures in scripts will also be folded unless you use: >
|
||||||
|
|
||||||
|
:let g:ps1_nofold_sig = 1
|
||||||
|
<
|
||||||
|
Note: syntax folding might slow down syntax highlighting significantly,
|
||||||
|
especially for large files.
|
||||||
|
|
||||||
|
|
||||||
|
COMPILER *ps1-compiler*
|
||||||
|
|
||||||
|
The powershell `:compiler` script configures |:make| to execute the script in
|
||||||
|
PowerShell.
|
||||||
|
|
||||||
|
It tries to pick a smart default PowerShell command: `pwsh` if available and
|
||||||
|
`powershell` otherwise, but you can customize the command: >
|
||||||
|
|
||||||
|
:let g:ps1_makeprg_cmd = '/path/to/pwsh'
|
||||||
|
<
|
||||||
|
To configure whether to show the exception type information: >
|
||||||
|
|
||||||
|
:let g:ps1_efm_show_error_categories = 1
|
||||||
|
<
|
||||||
|
|
||||||
|
KEYWORD LOOKUP *ps1-keyword*
|
||||||
|
|
||||||
|
To look up keywords using PowerShell's Get-Help, press the |K| key. For more
|
||||||
|
convenient paging, the pager `less` should be installed, which is included in
|
||||||
|
many Linux distributions and in macOS.
|
||||||
|
|
||||||
|
Many other distributions are available for Windows like
|
||||||
|
https://chocolatey.org/packages/less/. Make sure `less` is in a directory
|
||||||
|
listed in the `PATH` environment variable, which chocolatey above does.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
vim:ft=help:
|
||||||
126
runtime/doc/ft_raku.txt
Normal file
126
runtime/doc/ft_raku.txt
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
*ft_raku.txt* The Raku programming language filetype
|
||||||
|
|
||||||
|
*vim-raku*
|
||||||
|
|
||||||
|
Vim-raku provides syntax highlighting, indentation, and other support for
|
||||||
|
editing Raku programs.
|
||||||
|
|
||||||
|
1. Using Unicode in your Raku files |raku-unicode|
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
1. Using Unicode in your Raku files *raku-unicode*
|
||||||
|
|
||||||
|
Defining new operators using Unicode symbols is a good way to make your
|
||||||
|
Raku program easy to read. See:
|
||||||
|
https://perl6advent.wordpress.com/2012/12/18/day-18-formulas-resistance-is-futile/
|
||||||
|
|
||||||
|
While Raku does define ASCII alternatives for some common operators (see
|
||||||
|
https://docs.raku.org/language/unicode_ascii), using the full range of
|
||||||
|
Unicode operators is highly desirable. Your operating system provides input
|
||||||
|
facilities, but using the features built in to Vim may be preferable.
|
||||||
|
|
||||||
|
The natural way to produce these symbols in Vim is to use digraph shortcuts
|
||||||
|
(:help |digraphs-use|). Many of them are defined; type `:digraphs` to get
|
||||||
|
the list. A convenient way to read the list of digraphs is to save them in a
|
||||||
|
file. From the shell: >
|
||||||
|
vim +'redir >/tmp/vim-digraphs-listing.txt' +digraphs +'redir END' +q
|
||||||
|
|
||||||
|
Some of them are available with standard Vim digraphs:
|
||||||
|
<< « /0 ∅ !< ≮ ~
|
||||||
|
>> » Ob ∘ !> ≯ ~
|
||||||
|
., … 00 ∞ (C ⊂ ~
|
||||||
|
(U ∩ -: ÷ )C ⊃ ~
|
||||||
|
)U ∪ (_ ⊆ >= ≥ ~
|
||||||
|
?= ≅ )_ ⊇ =< ≤ ~
|
||||||
|
(- ∈ ?= ≅ != ≠ ~
|
||||||
|
-) ∋ ?- ≃ ~
|
||||||
|
|
||||||
|
The Greek alphabet is available with '*' followed by a similar Latin symbol:
|
||||||
|
*p π ~
|
||||||
|
*t τ ~
|
||||||
|
*X × ~
|
||||||
|
|
||||||
|
Numbers, subscripts and superscripts are available with 's' and 'S':
|
||||||
|
0s ₀ 0S ⁰ ~
|
||||||
|
1s ₁ 1S ¹ ~
|
||||||
|
2s ₂ 9S ⁹ ~
|
||||||
|
|
||||||
|
But some don't come defined by default. Those are digraph definitions you can
|
||||||
|
add in your ~/.vimrc file. >
|
||||||
|
exec 'digraph \\ '.char2nr('∖')
|
||||||
|
exec 'digraph \< '.char2nr('≼')
|
||||||
|
exec 'digraph \> '.char2nr('≽')
|
||||||
|
exec 'digraph (L '.char2nr('⊈')
|
||||||
|
exec 'digraph )L '.char2nr('⊉')
|
||||||
|
exec 'digraph (/ '.char2nr('⊄')
|
||||||
|
exec 'digraph )/ '.char2nr('⊅')
|
||||||
|
exec 'digraph )/ '.char2nr('⊅')
|
||||||
|
exec 'digraph U+ '.char2nr('⊎')
|
||||||
|
exec 'digraph 0- '.char2nr('⊖')
|
||||||
|
" Euler's constant
|
||||||
|
exec 'digraph ne '.char2nr('𝑒')
|
||||||
|
" Raku's atomic operations marker
|
||||||
|
exec 'digraph @@ '.char2nr('⚛')
|
||||||
|
|
||||||
|
Alternatively, you can write Insert mode abbreviations that convert ASCII-
|
||||||
|
based operators into their single-character Unicode equivalent. >
|
||||||
|
iabbrev <buffer> !(<) ⊄
|
||||||
|
iabbrev <buffer> !(<=) ⊈
|
||||||
|
iabbrev <buffer> !(>) ⊅
|
||||||
|
iabbrev <buffer> !(>=) ⊉
|
||||||
|
iabbrev <buffer> !(cont) ∌
|
||||||
|
iabbrev <buffer> !(elem) ∉
|
||||||
|
iabbrev <buffer> != ≠
|
||||||
|
iabbrev <buffer> (&) ∩
|
||||||
|
iabbrev <buffer> (+) ⊎
|
||||||
|
iabbrev <buffer> (-) ∖
|
||||||
|
iabbrev <buffer> (.) ⊍
|
||||||
|
iabbrev <buffer> (<) ⊂
|
||||||
|
iabbrev <buffer> (<+) ≼
|
||||||
|
iabbrev <buffer> (<=) ⊆
|
||||||
|
iabbrev <buffer> (>) ⊃
|
||||||
|
iabbrev <buffer> (>+) ≽
|
||||||
|
iabbrev <buffer> (>=) ⊇
|
||||||
|
iabbrev <buffer> (\|) ∪
|
||||||
|
iabbrev <buffer> (^) ⊖
|
||||||
|
iabbrev <buffer> (atomic) ⚛
|
||||||
|
iabbrev <buffer> (cont) ∋
|
||||||
|
iabbrev <buffer> (elem) ∈
|
||||||
|
iabbrev <buffer> * ×
|
||||||
|
iabbrev <buffer> **0 ⁰
|
||||||
|
iabbrev <buffer> **1 ¹
|
||||||
|
iabbrev <buffer> **2 ²
|
||||||
|
iabbrev <buffer> **3 ³
|
||||||
|
iabbrev <buffer> **4 ⁴
|
||||||
|
iabbrev <buffer> **5 ⁵
|
||||||
|
iabbrev <buffer> **6 ⁶
|
||||||
|
iabbrev <buffer> **7 ⁷
|
||||||
|
iabbrev <buffer> **8 ⁸
|
||||||
|
iabbrev <buffer> **9 ⁹
|
||||||
|
iabbrev <buffer> ... …
|
||||||
|
iabbrev <buffer> / ÷
|
||||||
|
iabbrev <buffer> << «
|
||||||
|
iabbrev <buffer> <<[=]<< «=«
|
||||||
|
iabbrev <buffer> <<[=]>> «=»
|
||||||
|
iabbrev <buffer> <= ≤
|
||||||
|
iabbrev <buffer> =~= ≅
|
||||||
|
iabbrev <buffer> >= ≥
|
||||||
|
iabbrev <buffer> >> »
|
||||||
|
iabbrev <buffer> >>[=]<< »=«
|
||||||
|
iabbrev <buffer> >>[=]>> »=»
|
||||||
|
iabbrev <buffer> Inf ∞
|
||||||
|
iabbrev <buffer> atomic-add-fetch ⚛+=
|
||||||
|
iabbrev <buffer> atomic-assign ⚛=
|
||||||
|
iabbrev <buffer> atomic-fetch ⚛
|
||||||
|
iabbrev <buffer> atomic-dec-fetch --⚛
|
||||||
|
iabbrev <buffer> atomic-fetch-dec ⚛--
|
||||||
|
iabbrev <buffer> atomic-fetch-inc ⚛++
|
||||||
|
iabbrev <buffer> atomic-inc-fetch ++⚛
|
||||||
|
iabbrev <buffer> atomic-sub-fetch ⚛−=
|
||||||
|
iabbrev <buffer> e 𝑒
|
||||||
|
iabbrev <buffer> o ∘
|
||||||
|
iabbrev <buffer> pi π
|
||||||
|
iabbrev <buffer> set() ∅
|
||||||
|
iabbrev <buffer> tau τ
|
||||||
|
<
|
||||||
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
@@ -440,7 +440,7 @@ the space bar):
|
|||||||
replace the column list with the list of tables.
|
replace the column list with the list of tables.
|
||||||
- This allows you to quickly drill down into a
|
- This allows you to quickly drill down into a
|
||||||
table to view its columns and back again.
|
table to view its columns and back again.
|
||||||
- <Right> and <Left> can be also be chosen via
|
- <Right> and <Left> can also be chosen via
|
||||||
your |.vimrc| >
|
your |.vimrc| >
|
||||||
let g:ftplugin_sql_omni_key_right = '<Right>'
|
let g:ftplugin_sql_omni_key_right = '<Right>'
|
||||||
let g:ftplugin_sql_omni_key_left = '<Left>'
|
let g:ftplugin_sql_omni_key_left = '<Left>'
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*gui.txt* For Vim version 8.2. Last change: 2020 Sep 28
|
*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
|
||||||
@@ -620,6 +621,11 @@ expression register: >
|
|||||||
|
|
||||||
:amenu Insert.foobar "='foobar'<CR>P
|
:amenu Insert.foobar "='foobar'<CR>P
|
||||||
|
|
||||||
|
The special text <Cmd> begins a "command menu", it executes the command
|
||||||
|
directly without changing modes. Where you might use ":...<CR>" you can
|
||||||
|
instead use "<Cmd>...<CR>". See |<Cmd>| for more info. Example: >
|
||||||
|
anoremenu File.Next <Cmd>next<CR>
|
||||||
|
|
||||||
Note that the '<' and 'k' flags in 'cpoptions' also apply here (when
|
Note that the '<' and 'k' flags in 'cpoptions' also apply here (when
|
||||||
included they make the <> form and raw key codes not being recognized).
|
included they make the <> form and raw key codes not being recognized).
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*gui_w32.txt* For Vim version 8.2. Last change: 2020 Mar 25
|
*gui_w32.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -403,7 +403,7 @@ The "File/Print" menu prints the text with syntax highlighting, see
|
|||||||
printer installed this should also work: >
|
printer installed this should also work: >
|
||||||
:w >>prn
|
:w >>prn
|
||||||
|
|
||||||
Vim supports a number of standard MS Windows features. Some of these are
|
Vim supports a number of standard MS-Windows features. Some of these are
|
||||||
detailed elsewhere: see |'mouse'|, |win32-hidden-menus|.
|
detailed elsewhere: see |'mouse'|, |win32-hidden-menus|.
|
||||||
|
|
||||||
*drag-n-drop-win32*
|
*drag-n-drop-win32*
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ Vim had built-in support for hangul, the Korean language, for users without
|
|||||||
XIM (X Input Method). Since it didn't work well and was not maintained it was
|
XIM (X Input Method). Since it didn't work well and was not maintained it was
|
||||||
removed in Vim 8.1.2327.
|
removed in Vim 8.1.2327.
|
||||||
|
|
||||||
If you want this hangul input mehod you can go back to Vim 8.1.2326 or
|
If you want this hangul input method you can go back to Vim 8.1.2326 or
|
||||||
earlier. If you think this code is still useful and want to maintain it, make
|
earlier. If you think this code is still useful and want to maintain it, make
|
||||||
a patch to add it back. However, making it work with UTF-8 encoding would be
|
a patch to add it back. However, making it work with UTF-8 encoding would be
|
||||||
best.
|
best.
|
||||||
|
|||||||
@@ -132,7 +132,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 +145,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 +154,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: 2020 Jun 28
|
*if_lua.txt* For Vim version 8.2. Last change: 2021 Apr 07
|
||||||
|
|
||||||
|
|
||||||
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.
|
||||||
@@ -208,6 +215,46 @@ Vim evaluation and command execution, and others.
|
|||||||
created on demand. Example: >
|
created on demand. Example: >
|
||||||
:lua print(vim.fn.has('timers'))
|
:lua print(vim.fn.has('timers'))
|
||||||
<
|
<
|
||||||
|
vim.lua_version The Lua version Vim was compiled with, in the
|
||||||
|
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 Vimscript
|
||||||
|
variables from Lua.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
|
||||||
|
vim.g.foo = 5 -- Set the g:foo Vimscript variable.
|
||||||
|
print(vim.g.foo) -- Get and print the g:foo Vimscript variable.
|
||||||
|
vim.g.foo = nil -- Delete (:unlet) the Vimscript 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 @@
|
|||||||
*if_tcl.txt* For Vim version 8.2. Last change: 2019 Jul 21
|
*if_tcl.txt* For Vim version 8.2. Last change: 2021 May 27
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Ingo Wilken
|
VIM REFERENCE MANUAL by Ingo Wilken
|
||||||
@@ -25,12 +25,12 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
1. Commands *tcl-ex-commands* *E571* *E572*
|
1. Commands *tcl-ex-commands* *E571* *E572*
|
||||||
|
|
||||||
*:tcl* *:tc*
|
*:tcl*
|
||||||
:tc[l] {cmd} Execute Tcl command {cmd}. A simple check if `:tcl`
|
:tcl {cmd} Execute Tcl command {cmd}. A simple check if `:tcl`
|
||||||
is working: >
|
is working: >
|
||||||
:tcl puts "Hello"
|
:tcl puts "Hello"
|
||||||
|
|
||||||
:[range]tc[l] << [trim] [{endmarker}]
|
:[range]tcl << [trim] [{endmarker}]
|
||||||
{script}
|
{script}
|
||||||
{endmarker}
|
{endmarker}
|
||||||
Execute Tcl script {script}.
|
Execute Tcl script {script}.
|
||||||
|
|||||||
@@ -610,14 +610,14 @@ the use of square and curly brackets, and otherwise by community convention.
|
|||||||
These conventions are not universally followed, so the Clojure indent script
|
These conventions are not universally followed, so the Clojure indent script
|
||||||
offers a few configurable options, listed below.
|
offers a few configurable options, listed below.
|
||||||
|
|
||||||
If the current vim does not include |searchpairpos()|, the indent script falls
|
If the current vim does not include searchpairpos(), the indent script falls
|
||||||
back to normal 'lisp' indenting, and the following options are ignored.
|
back to normal 'lisp' indenting, and the following options are ignored.
|
||||||
|
|
||||||
*g:clojure_maxlines*
|
*g:clojure_maxlines*
|
||||||
|
|
||||||
Set maximum scan distance of |searchpairpos()|. Larger values trade
|
Set maximum scan distance of searchpairpos(). Larger values trade performance
|
||||||
performance for correctness when dealing with very long forms. A value of 0
|
for correctness when dealing with very long forms. A value of 0 will scan
|
||||||
will scan without limits.
|
without limits.
|
||||||
>
|
>
|
||||||
" Default
|
" Default
|
||||||
let g:clojure_maxlines = 100
|
let g:clojure_maxlines = 100
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*index.txt* For Vim version 8.2. Last change: 2020 Oct 05
|
*index.txt* For Vim version 8.2. Last change: 2021 Jun 19
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -864,6 +864,8 @@ tag char note action in Normal mode ~
|
|||||||
|zm| zm subtract one from 'foldlevel'
|
|zm| zm subtract one from 'foldlevel'
|
||||||
|zn| zn reset 'foldenable'
|
|zn| zn reset 'foldenable'
|
||||||
|zo| zo open fold
|
|zo| zo open fold
|
||||||
|
|zp| zp paste in block-mode without trailing spaces
|
||||||
|
|zP| zP paste in block-mode without trailing spaces
|
||||||
|zr| zr add one to 'foldlevel'
|
|zr| zr add one to 'foldlevel'
|
||||||
|zs| zs when 'wrap' off scroll horizontally to
|
|zs| zs when 'wrap' off scroll horizontally to
|
||||||
position the cursor at the start (left
|
position the cursor at the start (left
|
||||||
@@ -876,6 +878,7 @@ tag char note action in Normal mode ~
|
|||||||
|zv| zv open enough folds to view the cursor line
|
|zv| zv open enough folds to view the cursor line
|
||||||
|zw| zw permanently mark word as incorrectly spelled
|
|zw| zw permanently mark word as incorrectly spelled
|
||||||
|zx| zx re-apply 'foldlevel' and do "zv"
|
|zx| zx re-apply 'foldlevel' and do "zv"
|
||||||
|
|zy| zy yank without trailing spaces
|
||||||
|zz| zz redraw, cursor line at center of window
|
|zz| zz redraw, cursor line at center of window
|
||||||
|z<Left>| z<Left> same as "zh"
|
|z<Left>| z<Left> same as "zh"
|
||||||
|z<Right>| z<Right> same as "zl"
|
|z<Right>| z<Right> same as "zl"
|
||||||
@@ -1176,6 +1179,7 @@ tag command action ~
|
|||||||
|:bNext| :bN[ext] go to previous buffer in the buffer list
|
|:bNext| :bN[ext] go to previous buffer in the buffer list
|
||||||
|:ball| :ba[ll] open a window for each buffer in the buffer list
|
|:ball| :ba[ll] open a window for each buffer in the buffer list
|
||||||
|:badd| :bad[d] add buffer to the buffer list
|
|:badd| :bad[d] add buffer to the buffer list
|
||||||
|
|:balt| :balt like ":badd" but also set the alternate file
|
||||||
|:bdelete| :bd[elete] remove a buffer from the buffer list
|
|:bdelete| :bd[elete] remove a buffer from the buffer list
|
||||||
|:behave| :be[have] set mouse and selection behavior
|
|:behave| :be[have] set mouse and selection behavior
|
||||||
|:belowright| :bel[owright] make split window appear right or below
|
|:belowright| :bel[owright] make split window appear right or below
|
||||||
@@ -1293,6 +1297,7 @@ tag command action ~
|
|||||||
|:edit| :e[dit] edit a file
|
|:edit| :e[dit] edit a file
|
||||||
|:earlier| :ea[rlier] go to older change, undo
|
|:earlier| :ea[rlier] go to older change, undo
|
||||||
|:echo| :ec[ho] echoes the result of expressions
|
|:echo| :ec[ho] echoes the result of expressions
|
||||||
|
|:echoconsole| :echoc[onsole] like :echomsg but write to stdout
|
||||||
|:echoerr| :echoe[rr] like :echo, show like an error and use history
|
|:echoerr| :echoe[rr] like :echo, show like an error and use history
|
||||||
|:echohl| :echoh[l] set highlighting for echo commands
|
|:echohl| :echoh[l] set highlighting for echo commands
|
||||||
|:echomsg| :echom[sg] same as :echo, put message in history
|
|:echomsg| :echom[sg] same as :echo, put message in history
|
||||||
@@ -1307,6 +1312,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"
|
||||||
@@ -1394,6 +1400,7 @@ tag command action ~
|
|||||||
|:lfdo| :lfd[o] execute command in each file in location list
|
|:lfdo| :lfd[o] execute command in each file in location list
|
||||||
|:left| :le[ft] left align lines
|
|:left| :le[ft] left align lines
|
||||||
|:leftabove| :lefta[bove] make split window appear left or above
|
|:leftabove| :lefta[bove] make split window appear left or above
|
||||||
|
|:legacy| :leg[acy] make following command use legacy script syntax
|
||||||
|:let| :let assign a value to a variable or option
|
|:let| :let assign a value to a variable or option
|
||||||
|:lexpr| :lex[pr] read locations from expr and jump to first
|
|:lexpr| :lex[pr] read locations from expr and jump to first
|
||||||
|:lfile| :lf[ile] read file with locations and jump to first
|
|:lfile| :lf[ile] read file with locations and jump to first
|
||||||
@@ -1590,6 +1597,8 @@ tag command action ~
|
|||||||
|:sign| :sig[n] manipulate signs
|
|:sign| :sig[n] manipulate signs
|
||||||
|:silent| :sil[ent] run a command silently
|
|:silent| :sil[ent] run a command silently
|
||||||
|:sleep| :sl[eep] do nothing for a few seconds
|
|:sleep| :sl[eep] do nothing for a few seconds
|
||||||
|
|:sleep!| :sl[eep]! do nothing for a few seconds, without the
|
||||||
|
cursor visible
|
||||||
|:slast| :sla[st] split window and go to last file in the
|
|:slast| :sla[st] split window and go to last file in the
|
||||||
argument list
|
argument list
|
||||||
|:smagic| :sm[agic] :substitute with 'magic'
|
|:smagic| :sm[agic] :substitute with 'magic'
|
||||||
@@ -1652,9 +1661,9 @@ tag command action ~
|
|||||||
|:tab| :tab create new tab when opening new window
|
|:tab| :tab create new tab when opening new window
|
||||||
|:tag| :ta[g] jump to tag
|
|:tag| :ta[g] jump to tag
|
||||||
|:tags| :tags show the contents of the tag stack
|
|:tags| :tags show the contents of the tag stack
|
||||||
|:tcd| :tcd change directory for tab page
|
|:tcd| :tc[d] change directory for tab page
|
||||||
|:tchdir| :tch[dir] change directory for tab page
|
|:tchdir| :tch[dir] change directory for tab page
|
||||||
|:tcl| :tc[l] execute Tcl command
|
|:tcl| :tcl execute Tcl command
|
||||||
|:tcldo| :tcld[o] execute Tcl command for each line
|
|:tcldo| :tcld[o] execute Tcl command for each line
|
||||||
|:tclfile| :tclf[ile] execute Tcl script file
|
|:tclfile| :tclf[ile] execute Tcl script file
|
||||||
|:tearoff| :te[aroff] tear-off a menu
|
|:tearoff| :te[aroff] tear-off a menu
|
||||||
@@ -1696,7 +1705,8 @@ tag command action ~
|
|||||||
|:version| :ve[rsion] print version number and other info
|
|:version| :ve[rsion] print version number and other info
|
||||||
|:verbose| :verb[ose] execute command with 'verbose' set
|
|:verbose| :verb[ose] execute command with 'verbose' set
|
||||||
|:vertical| :vert[ical] make following command split vertically
|
|:vertical| :vert[ical] make following command split vertically
|
||||||
|:vim9script| :vim9[script] indicates Vim9 script file
|
|:vim9cmd| :vim9[cmd] make following command use Vim9 script syntax
|
||||||
|
|:vim9script| :vim9s[cript] indicates Vim9 script file
|
||||||
|:vimgrep| :vim[grep] search for pattern in files
|
|:vimgrep| :vim[grep] search for pattern in files
|
||||||
|:vimgrepadd| :vimgrepa[dd] like :vimgrep, but append to current list
|
|:vimgrepadd| :vimgrepa[dd] like :vimgrep, but append to current list
|
||||||
|:visual| :vi[sual] same as ":edit", but turns off "Ex" mode
|
|:visual| :vi[sual] same as ":edit", but turns off "Ex" mode
|
||||||
|
|||||||
@@ -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 Jul 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1073,7 +1073,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:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*map.txt* For Vim version 8.2. Last change: 2020 Dec 10
|
*map.txt* For Vim version 8.2. Last change: 2021 Aug 01
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -244,9 +244,12 @@ have a look at |maparg()|.
|
|||||||
If the first argument to one of these commands is "<expr>" and it is used to
|
If the first argument to one of these commands is "<expr>" and it is used to
|
||||||
define a new mapping or abbreviation, the argument is an expression. The
|
define a new mapping or abbreviation, the argument is an expression. The
|
||||||
expression is evaluated to obtain the {rhs} that is used. Example: >
|
expression is evaluated to obtain the {rhs} that is used. Example: >
|
||||||
:inoremap <expr> . InsertDot()
|
:inoremap <expr> . <SID>InsertDot()
|
||||||
The result of the InsertDot() function will be inserted. It could check the
|
The result of the s:InsertDot() function will be inserted. It could check the
|
||||||
text before the cursor and start omni completion when some condition is met.
|
text before the cursor and start omni completion when some condition is met.
|
||||||
|
Using a script-local function is preferred, to avoid polluting the global
|
||||||
|
namespace. Use <SID> in the RHS so that the script that the mapping was
|
||||||
|
defined in can be found.
|
||||||
|
|
||||||
For abbreviations |v:char| is set to the character that was typed to trigger
|
For abbreviations |v:char| is set to the character that was typed to trigger
|
||||||
the abbreviation. You can use this to decide how to expand the {lhs}. You
|
the abbreviation. You can use this to decide how to expand the {lhs}. You
|
||||||
@@ -261,7 +264,21 @@ input. Example: >
|
|||||||
call popup_create(... arguments ...)
|
call popup_create(... arguments ...)
|
||||||
return "\<Ignore>"
|
return "\<Ignore>"
|
||||||
endfunc
|
endfunc
|
||||||
nnoremap <expr> <F3> <Sid>OpenPopup()
|
nnoremap <expr> <F3> <SID>OpenPopup()
|
||||||
|
|
||||||
|
Also, keep in mind that the expression may be evaluated when looking for
|
||||||
|
typeahead, before the previous command has been executed. For example: >
|
||||||
|
func StoreColumn()
|
||||||
|
let g:column = col('.')
|
||||||
|
return 'x'
|
||||||
|
endfunc
|
||||||
|
nnoremap <expr> x StoreColumn()
|
||||||
|
nmap ! f!x
|
||||||
|
You will notice that g:column has the value from before executing "f!",
|
||||||
|
because "x" is evaluated before "f!" is executed.
|
||||||
|
This can be solved by inserting <Ignore> before the character that is
|
||||||
|
expression-mapped: >
|
||||||
|
nmap ! f!<Ignore>x
|
||||||
|
|
||||||
Be very careful about side effects! The expression is evaluated while
|
Be very careful about side effects! The expression is evaluated while
|
||||||
obtaining characters, you may very well make the command dysfunctional.
|
obtaining characters, you may very well make the command dysfunctional.
|
||||||
@@ -372,6 +389,22 @@ Overview of which map command works in which mode. More details below.
|
|||||||
:cmap :cnoremap :cunmap Command-line
|
:cmap :cnoremap :cunmap Command-line
|
||||||
:tmap :tnoremap :tunmap Terminal-Job
|
:tmap :tnoremap :tunmap Terminal-Job
|
||||||
|
|
||||||
|
Same information in a table:
|
||||||
|
*map-table*
|
||||||
|
Mode | Norm | Ins | Cmd | Vis | Sel | Opr | Term | Lang | ~
|
||||||
|
Command +------+-----+-----+-----+-----+-----+------+------+ ~
|
||||||
|
[nore]map | yes | - | - | yes | yes | yes | - | - |
|
||||||
|
n[nore]map | yes | - | - | - | - | - | - | - |
|
||||||
|
[nore]map! | - | yes | yes | - | - | - | - | - |
|
||||||
|
i[nore]map | - | yes | - | - | - | - | - | - |
|
||||||
|
c[nore]map | - | - | yes | - | - | - | - | - |
|
||||||
|
v[nore]map | - | - | - | yes | yes | - | - | - |
|
||||||
|
x[nore]map | - | - | - | yes | - | - | - | - |
|
||||||
|
s[nore]map | - | - | - | - | yes | - | - | - |
|
||||||
|
o[nore]map | - | - | - | - | - | yes | - | - |
|
||||||
|
t[nore]map | - | - | - | - | - | - | yes | - |
|
||||||
|
l[nore]map | - | yes | yes | - | - | - | - | yes |
|
||||||
|
|
||||||
|
|
||||||
COMMANDS MODES ~
|
COMMANDS MODES ~
|
||||||
Normal Visual+Select Operator-pending ~
|
Normal Visual+Select Operator-pending ~
|
||||||
@@ -1538,6 +1571,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: 2020 Aug 15
|
*mbyte.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||||
@@ -770,7 +770,7 @@ is suitable for complex input, such as CJK.
|
|||||||
of the two ways: FrontEnd system and BackEnd system. In the FrontEnd
|
of the two ways: FrontEnd system and BackEnd system. In the FrontEnd
|
||||||
system, input events are snatched by the |IM-server| first, then |IM-server|
|
system, input events are snatched by the |IM-server| first, then |IM-server|
|
||||||
give the application the result of input. On the other hand, the BackEnd
|
give the application the result of input. On the other hand, the BackEnd
|
||||||
system works reverse order. MS Windows adopt BackEnd system. In X, most of
|
system works reverse order. MS-Windows adopt BackEnd system. In X, most of
|
||||||
|IM-server|s adopt FrontEnd system. The demerit of BackEnd system is the
|
|IM-server|s adopt FrontEnd system. The demerit of BackEnd system is the
|
||||||
large overhead in communication, but it provides safe synchronization with
|
large overhead in communication, but it provides safe synchronization with
|
||||||
no restrictions on applications.
|
no restrictions on applications.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*motion.txt* For Vim version 8.2. Last change: 2020 Oct 18
|
*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
|
||||||
@@ -942,8 +947,7 @@ These commands are not marks themselves, but jump to a mark:
|
|||||||
line.
|
line.
|
||||||
|
|
||||||
*]`*
|
*]`*
|
||||||
]` [count] times to lowercase mark after the cursor. {not
|
]` [count] times to lowercase mark after the cursor.
|
||||||
in Vi}
|
|
||||||
|
|
||||||
*['*
|
*['*
|
||||||
[' [count] times to previous line with a lowercase mark
|
[' [count] times to previous line with a lowercase mark
|
||||||
@@ -1037,6 +1041,12 @@ CTRL-I Go to [count] newer cursor position in jump list
|
|||||||
(not a motion command).
|
(not a motion command).
|
||||||
{not available without the |+jumplist| feature}
|
{not available without the |+jumplist| feature}
|
||||||
|
|
||||||
|
NOTE: In the GUI and in a terminal supporting
|
||||||
|
|modifyOtherKeys|, CTRL-I can be mapped separately
|
||||||
|
from <Tab>, on the condition that CTRL-I is
|
||||||
|
mapped before <Tab>, otherwise the mapping applies to
|
||||||
|
both.
|
||||||
|
|
||||||
*:ju* *:jumps*
|
*:ju* *:jumps*
|
||||||
:ju[mps] Print the jump list (not a motion command).
|
:ju[mps] Print the jump list (not a motion command).
|
||||||
{not available without the |+jumplist| feature}
|
{not available without the |+jumplist| feature}
|
||||||
@@ -1054,11 +1064,11 @@ The maximum number of entries is fixed at 100.
|
|||||||
|
|
||||||
For example, after three jump commands you have this jump list:
|
For example, after three jump commands you have this jump list:
|
||||||
|
|
||||||
jump line col file/text ~
|
jump line col file/text ~
|
||||||
3 1 0 some text ~
|
3 1 0 some text ~
|
||||||
2 70 0 another line ~
|
2 70 0 another line ~
|
||||||
1 1154 23 end. ~
|
1 1154 23 end. ~
|
||||||
> ~
|
> ~
|
||||||
|
|
||||||
The "file/text" column shows the file name, or the text at the jump if it is
|
The "file/text" column shows the file name, or the text at the jump if it is
|
||||||
in the current file (an indent is removed and a long line is truncated to fit
|
in the current file (an indent is removed and a long line is truncated to fit
|
||||||
@@ -1067,11 +1077,11 @@ in the window).
|
|||||||
You are currently in line 1167. If you then use the CTRL-O command, the
|
You are currently in line 1167. If you then use the CTRL-O command, the
|
||||||
cursor is put in line 1154. This results in:
|
cursor is put in line 1154. This results in:
|
||||||
|
|
||||||
jump line col file/text ~
|
jump line col file/text ~
|
||||||
2 1 0 some text ~
|
2 1 0 some text ~
|
||||||
1 70 0 another line ~
|
1 70 0 another line ~
|
||||||
> 0 1154 23 end. ~
|
> 0 1154 23 end. ~
|
||||||
1 1167 0 foo bar ~
|
1 1167 0 foo bar ~
|
||||||
|
|
||||||
The pointer will be set at the last used jump position. The next CTRL-O
|
The pointer will be set at the last used jump position. The next CTRL-O
|
||||||
command will use the entry above it, the next CTRL-I command will use the
|
command will use the entry above it, the next CTRL-I command will use the
|
||||||
@@ -1098,12 +1108,12 @@ that calling setpos() does not do this.
|
|||||||
After the CTRL-O command that got you into line 1154 you could give another
|
After the CTRL-O command that got you into line 1154 you could give another
|
||||||
jump command (e.g., "G"). The jump list would then become:
|
jump command (e.g., "G"). The jump list would then become:
|
||||||
|
|
||||||
jump line col file/text ~
|
jump line col file/text ~
|
||||||
4 1 0 some text ~
|
4 1 0 some text ~
|
||||||
3 70 0 another line ~
|
3 70 0 another line ~
|
||||||
2 1167 0 foo bar ~
|
2 1167 0 foo bar ~
|
||||||
1 1154 23 end. ~
|
1 1154 23 end. ~
|
||||||
> ~
|
> ~
|
||||||
|
|
||||||
The line numbers will be adjusted for deleted and inserted lines. This fails
|
The line numbers will be adjusted for deleted and inserted lines. This fails
|
||||||
if you stop editing a file without writing, like with ":n!".
|
if you stop editing a file without writing, like with ":n!".
|
||||||
@@ -1152,7 +1162,7 @@ Note that when text has been inserted or deleted the cursor position might be
|
|||||||
a bit different from the position of the change. Especially when lines have
|
a bit different from the position of the change. Especially when lines have
|
||||||
been deleted.
|
been deleted.
|
||||||
|
|
||||||
When the |:keepjumps| command modifier is used the position of a change is not
|
When the `:keepjumps` command modifier is used the position of a change is not
|
||||||
remembered.
|
remembered.
|
||||||
|
|
||||||
*:changes*
|
*:changes*
|
||||||
@@ -1193,7 +1203,7 @@ remembered.
|
|||||||
#if, #ifdef, #else, #elif, #endif
|
#if, #ifdef, #else, #elif, #endif
|
||||||
C preprocessor conditionals (when the
|
C preprocessor conditionals (when the
|
||||||
cursor is on the # or no ([{
|
cursor is on the # or no ([{
|
||||||
following)
|
is following)
|
||||||
For other items the matchit plugin can be used, see
|
For other items the matchit plugin can be used, see
|
||||||
|matchit-install|. This plugin also helps to skip
|
|matchit-install|. This plugin also helps to skip
|
||||||
matches in comments.
|
matches in comments.
|
||||||
@@ -1222,19 +1232,16 @@ remembered.
|
|||||||
#if/#else/#endif makes the movement linewise.
|
#if/#else/#endif makes the movement linewise.
|
||||||
|
|
||||||
*[(*
|
*[(*
|
||||||
[( go to [count] previous unmatched '('.
|
[( Go to [count] previous unmatched '('.
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
*[{*
|
*[{*
|
||||||
[{ go to [count] previous unmatched '{'.
|
[{ Go to [count] previous unmatched '{'.
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
*])*
|
*])*
|
||||||
]) go to [count] next unmatched ')'.
|
]) Go to [count] next unmatched ')'.
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
*]}*
|
*]}*
|
||||||
]} go to [count] next unmatched '}'.
|
]} Go to [count] next unmatched '}'.
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
The above four commands can be used to go to the start or end of the current
|
The above four commands can be used to go to the start or end of the current
|
||||||
@@ -1268,7 +1275,7 @@ bring you back to the switch statement.
|
|||||||
class. When no '}' is found before the cursor this is
|
class. When no '}' is found before the cursor this is
|
||||||
an error. |exclusive| motion.
|
an error. |exclusive| motion.
|
||||||
|
|
||||||
The above two commands assume that the file contains a class with methods.
|
The above four commands assume that the file contains a class with methods.
|
||||||
The class definition is surrounded in '{' and '}'. Each method in the class
|
The class definition is surrounded in '{' and '}'. Each method in the class
|
||||||
is also surrounded with '{' and '}'. This applies to the Java language. The
|
is also surrounded with '{' and '}'. This applies to the Java language. The
|
||||||
file looks like this: >
|
file looks like this: >
|
||||||
@@ -1282,17 +1289,21 @@ file looks like this: >
|
|||||||
body_two();
|
body_two();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[To try this out copy the text and put it in a new buffer, the help text above
|
||||||
|
confuses the jump commands]
|
||||||
|
|
||||||
Starting with the cursor on "body_two()", using "[m" will jump to the '{' at
|
Starting with the cursor on "body_two()", using "[m" will jump to the '{' at
|
||||||
the start of "method_two()" (obviously this is much more useful when the
|
the start of "method_two()" (obviously this is much more useful when the
|
||||||
method is long!). Using "2[m" will jump to the start of "method_one()".
|
method is long!). Using "2[m" will jump to the start of "method_one()".
|
||||||
Using "3[m" will jump to the start of the class.
|
Using "3[m" will jump to the start of the class.
|
||||||
|
|
||||||
*[#*
|
*[#*
|
||||||
[# go to [count] previous unmatched "#if" or "#else".
|
[# Go to [count] previous unmatched "#if" or "#else".
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
*]#*
|
*]#*
|
||||||
]# go to [count] next unmatched "#else" or "#endif".
|
]# Go to [count] next unmatched "#else" or "#endif".
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
These two commands work in C programs that contain #if/#else/#endif
|
These two commands work in C programs that contain #if/#else/#endif
|
||||||
@@ -1300,11 +1311,11 @@ constructs. It brings you to the start or end of the #if/#else/#endif where
|
|||||||
the current line is included. You can then use "%" to go to the matching line.
|
the current line is included. You can then use "%" to go to the matching line.
|
||||||
|
|
||||||
*[star* *[/*
|
*[star* *[/*
|
||||||
[* or [/ go to [count] previous start of a C comment "/*".
|
[* or [/ Go to [count] previous start of a C comment "/*".
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
*]star* *]/*
|
*]star* *]/*
|
||||||
]* or ]/ go to [count] next end of a C comment "*/".
|
]* or ]/ Go to [count] next end of a C comment "*/".
|
||||||
|exclusive| motion.
|
|exclusive| motion.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*options.txt* For Vim version 8.2. Last change: 2021 Jan 08
|
*options.txt* For Vim version 8.2. Last change: 2021 Jul 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -749,6 +749,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
or selected.
|
or selected.
|
||||||
Note: When this option is on some plugins may not work.
|
Note: When this option is on some plugins may not work.
|
||||||
|
|
||||||
|
*'autoshelldir'* *'asd'* *'noautoshelldir'* *'noasd'*
|
||||||
|
'autoshelldir' 'asd' boolean (default off)
|
||||||
|
global
|
||||||
|
When on, Vim will change the current working directory whenever you
|
||||||
|
change the directory of the shell running in a terminal window. You
|
||||||
|
need proper setting-up, so whenever the shell's pwd changes an OSC 7
|
||||||
|
escape sequence will be emitted. For example, on Linux, you can source
|
||||||
|
/etc/profile.d/vte.sh in your shell profile if you use bash or zsh.
|
||||||
|
|
||||||
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
|
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
|
||||||
'arabic' 'arab' boolean (default off)
|
'arabic' 'arab' boolean (default off)
|
||||||
local to window
|
local to window
|
||||||
@@ -1317,7 +1326,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")
|
||||||
@@ -1568,7 +1582,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
{only in GUI versions or when the |+xterm_clipboard|
|
{only in GUI versions or when the |+xterm_clipboard|
|
||||||
feature is included}
|
feature is included}
|
||||||
This option is a list of comma separated names.
|
This option is a list of comma separated names.
|
||||||
These names are recognized:
|
Note: if one of the items is "exclude:", then you can't add an item
|
||||||
|
after that. Therefore do append an item with += but use ^= to
|
||||||
|
prepend, e.g.: >
|
||||||
|
set clipboard^=unnamed
|
||||||
|
< These names are recognized:
|
||||||
|
|
||||||
*clipboard-unnamed*
|
*clipboard-unnamed*
|
||||||
unnamed When included, Vim will use the clipboard register '*'
|
unnamed When included, Vim will use the clipboard register '*'
|
||||||
@@ -2371,6 +2389,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.
|
||||||
|
|
||||||
@@ -2677,6 +2712,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
foldcolumn:{n} Set the 'foldcolumn' option to {n} when
|
foldcolumn:{n} Set the 'foldcolumn' option to {n} when
|
||||||
starting diff mode. Without this 2 is used.
|
starting diff mode. Without this 2 is used.
|
||||||
|
|
||||||
|
followwrap Follow the 'wrap' option and leave as it is.
|
||||||
|
|
||||||
internal Use the internal diff library. This is
|
internal Use the internal diff library. This is
|
||||||
ignored when 'diffexpr' is set. *E960*
|
ignored when 'diffexpr' is set. *E960*
|
||||||
When running out of memory when writing a
|
When running out of memory when writing a
|
||||||
@@ -2813,7 +2850,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|setcellwidths()| function to change the behavior.
|
|setcellwidths()| function to change the behavior.
|
||||||
|
|
||||||
*'encoding'* *'enc'* *E543*
|
*'encoding'* *'enc'* *E543*
|
||||||
'encoding' 'enc' string (default: "latin1" or value from $LANG)
|
'encoding' 'enc' string (default for MS-Windows: "utf-8",
|
||||||
|
otherwise: value from $LANG or "latin1")
|
||||||
global
|
global
|
||||||
Sets the character encoding used inside Vim. It applies to text in
|
Sets the character encoding used inside Vim. It applies to text in
|
||||||
the buffers, registers, Strings in expressions, text stored in the
|
the buffers, registers, Strings in expressions, text stored in the
|
||||||
@@ -3100,9 +3138,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
because Vim cannot detect an error, thus the encoding is always
|
because Vim cannot detect an error, thus the encoding is always
|
||||||
accepted.
|
accepted.
|
||||||
The special value "default" can be used for the encoding from the
|
The special value "default" can be used for the encoding from the
|
||||||
environment. This is the default value for 'encoding'. It is useful
|
environment. On MS-Windows this is the system encoding. Otherwise
|
||||||
when 'encoding' is set to "utf-8" and your environment uses a
|
this is the default value for 'encoding'. It is useful when
|
||||||
non-latin1 encoding, such as Russian.
|
'encoding' is set to "utf-8" and your environment uses a non-latin1
|
||||||
|
encoding, such as Russian.
|
||||||
When 'encoding' is "utf-8" and a file contains an illegal byte
|
When 'encoding' is "utf-8" and a file contains an illegal byte
|
||||||
sequence it won't be recognized as UTF-8. You can use the |8g8|
|
sequence it won't be recognized as UTF-8. You can use the |8g8|
|
||||||
command to find the illegal byte sequence.
|
command to find the illegal byte sequence.
|
||||||
@@ -3229,7 +3268,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Only normal file name characters can be used, "/\*?[|<>" are illegal.
|
Only normal file name characters can be used, "/\*?[|<>" are illegal.
|
||||||
|
|
||||||
*'fillchars'* *'fcs'*
|
*'fillchars'* *'fcs'*
|
||||||
'fillchars' 'fcs' string (default "vert:|,fold:-")
|
'fillchars' 'fcs' string (default "vert:|,fold:-,eob:~")
|
||||||
global
|
global
|
||||||
{not available when compiled without the |+folding|
|
{not available when compiled without the |+folding|
|
||||||
feature}
|
feature}
|
||||||
@@ -3241,7 +3280,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
stlnc:c ' ' or '=' statusline of the non-current windows
|
stlnc:c ' ' or '=' statusline of the non-current windows
|
||||||
vert:c '|' vertical separators |:vsplit|
|
vert:c '|' vertical separators |:vsplit|
|
||||||
fold:c '-' filling 'foldtext'
|
fold:c '-' filling 'foldtext'
|
||||||
|
foldopen:c '-' mark the beginning of a fold
|
||||||
|
foldclose:c '+' show a closed fold
|
||||||
|
foldsep:c '|' open fold middle character
|
||||||
diff:c '-' deleted lines of the 'diff' option
|
diff:c '-' deleted lines of the 'diff' option
|
||||||
|
eob:c '~' empty lines below the end of a buffer
|
||||||
|
|
||||||
Any one that is omitted will fall back to the default. For "stl" and
|
Any one that is omitted will fall back to the default. For "stl" and
|
||||||
"stlnc" the space will be used when there is highlighting, '^' or '='
|
"stlnc" the space will be used when there is highlighting, '^' or '='
|
||||||
@@ -3252,7 +3295,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
< This is similar to the default, except that these characters will also
|
< This is similar to the default, except that these characters will also
|
||||||
be used when there is highlighting.
|
be used when there is highlighting.
|
||||||
|
|
||||||
for "stl" and "stlnc" only single-byte values are supported.
|
For "stl" and "stlnc" single-byte and multibyte characters are
|
||||||
|
supported. But double-width characters are not supported.
|
||||||
|
|
||||||
The highlighting used for these items:
|
The highlighting used for these items:
|
||||||
item highlight group ~
|
item highlight group ~
|
||||||
@@ -3261,6 +3305,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
vert:c VertSplit |hl-VertSplit|
|
vert:c VertSplit |hl-VertSplit|
|
||||||
fold:c Folded |hl-Folded|
|
fold:c Folded |hl-Folded|
|
||||||
diff:c DiffDelete |hl-DiffDelete|
|
diff:c DiffDelete |hl-DiffDelete|
|
||||||
|
eob:c EndOfBuffer |hl-EndOfBuffer|
|
||||||
|
|
||||||
*'fixendofline'* *'fixeol'* *'nofixendofline'* *'nofixeol'*
|
*'fixendofline'* *'fixeol'* *'nofixendofline'* *'nofixeol'*
|
||||||
'fixendofline' 'fixeol' boolean (default on)
|
'fixendofline' 'fixeol' boolean (default on)
|
||||||
@@ -3273,7 +3318,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
See the 'endofline' option.
|
See the 'endofline' option.
|
||||||
|
|
||||||
*'fkmap'* *'fk'* *'nofkmap'* *'nofk'*
|
*'fkmap'* *'fk'* *'nofkmap'* *'nofk'*
|
||||||
'fkmap' 'fk' boolean (default off) *E198*
|
'fkmap' 'fk' boolean (default off)
|
||||||
global
|
global
|
||||||
{only available when compiled with the |+rightleft|
|
{only available when compiled with the |+rightleft|
|
||||||
feature}
|
feature}
|
||||||
@@ -3844,7 +3889,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
*'go-v'*
|
*'go-v'*
|
||||||
'v' Use a vertical button layout for dialogs. When not included,
|
'v' Use a vertical button layout for dialogs. When not included,
|
||||||
a horizontal layout is preferred, but when it doesn't fit a
|
a horizontal layout is preferred, but when it doesn't fit a
|
||||||
vertical layout is used anyway.
|
vertical layout is used anyway. Not supported in GTK 3.
|
||||||
*'go-p'*
|
*'go-p'*
|
||||||
'p' Use Pointer callbacks for X11 GUI. This is required for some
|
'p' Use Pointer callbacks for X11 GUI. This is required for some
|
||||||
window managers. If the cursor is not blinking or hollow at
|
window managers. If the cursor is not blinking or hollow at
|
||||||
@@ -4127,7 +4172,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
the window. This happens only when the 'icon' option is on.
|
the window. This happens only when the 'icon' option is on.
|
||||||
Only works if the terminal supports setting window icon text
|
Only works if the terminal supports setting window icon text
|
||||||
(currently only X11 GUI and terminals with a non-empty 't_IS' option).
|
(currently only X11 GUI and terminals with a non-empty 't_IS' option).
|
||||||
Does not work for MS Windows.
|
Does not work for MS-Windows.
|
||||||
When Vim was compiled with HAVE_X11 defined, the original icon will be
|
When Vim was compiled with HAVE_X11 defined, the original icon will be
|
||||||
restored if possible |X11|.
|
restored if possible |X11|.
|
||||||
When this option contains printf-style '%' items, they will be
|
When this option contains printf-style '%' items, they will be
|
||||||
@@ -4543,7 +4588,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Keywords are used in searching and recognizing with many commands:
|
Keywords are used in searching and recognizing with many commands:
|
||||||
"w", "*", "[i", etc. It is also used for "\k" in a |pattern|. See
|
"w", "*", "[i", etc. It is also used for "\k" in a |pattern|. See
|
||||||
'isfname' for a description of the format of this option. For '@'
|
'isfname' for a description of the format of this option. For '@'
|
||||||
characters above 255 check the "word" character class.
|
characters above 255 check the "word" character class (any character
|
||||||
|
that is not white space or punctuation).
|
||||||
For C programs you could use "a-z,A-Z,48-57,_,.,-,>".
|
For C programs you could use "a-z,A-Z,48-57,_,.,-,>".
|
||||||
For a help file it is set to all non-blank printable characters except
|
For a help file it is set to all non-blank printable characters except
|
||||||
'*', '"' and '|' (so that CTRL-] on a command finds the help for that
|
'*', '"' and '|' (so that CTRL-] on a command finds the help for that
|
||||||
@@ -4846,7 +4892,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|
|
||||||
*'listchars'* *'lcs'*
|
*'listchars'* *'lcs'*
|
||||||
'listchars' 'lcs' string (default "eol:$")
|
'listchars' 'lcs' string (default "eol:$")
|
||||||
global
|
global or local to window |global-local|
|
||||||
Strings to use in 'list' mode and for the |:list| command. It is a
|
Strings to use in 'list' mode and for the |:list| command. It is a
|
||||||
comma separated list of string settings.
|
comma separated list of string settings.
|
||||||
*lcs-eol*
|
*lcs-eol*
|
||||||
@@ -4877,7 +4923,13 @@ 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-trail*
|
*lcs-lead*
|
||||||
|
lead:c Character to show for leading spaces. When omitted,
|
||||||
|
leading spaces are blank. Overrides the "space"
|
||||||
|
setting for leading spaces. You can combine it with
|
||||||
|
"tab:", for example: >
|
||||||
|
:set listchars+=tab:>-,lead:.
|
||||||
|
< *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"
|
||||||
setting for trailing spaces.
|
setting for trailing spaces.
|
||||||
@@ -5009,7 +5061,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
jump between two double quotes.
|
jump between two double quotes.
|
||||||
The characters must be separated by a colon.
|
The characters must be separated by a colon.
|
||||||
The pairs must be separated by a comma. Example for including '<' and
|
The pairs must be separated by a comma. Example for including '<' and
|
||||||
'>' (HTML): >
|
'>' (for HTML): >
|
||||||
:set mps+=<:>
|
:set mps+=<:>
|
||||||
|
|
||||||
< A more exotic example, to jump between the '=' and ';' in an
|
< A more exotic example, to jump between the '=' and ';' in an
|
||||||
@@ -5221,7 +5273,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
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.
|
||||||
|
|
||||||
*'mouse'* *E538*
|
*'mouse'*
|
||||||
'mouse' string (default "", "a" for GUI and Win32,
|
'mouse' string (default "", "a" for GUI and Win32,
|
||||||
set to "a" or "nvi" in |defaults.vim|)
|
set to "a" or "nvi" in |defaults.vim|)
|
||||||
global
|
global
|
||||||
@@ -5565,19 +5617,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
|
||||||
@@ -6226,7 +6280,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
<
|
<
|
||||||
*'runtimepath'* *'rtp'* *vimfiles*
|
*'runtimepath'* *'rtp'* *vimfiles*
|
||||||
'runtimepath' 'rtp' string (default:
|
'runtimepath' 'rtp' string (default:
|
||||||
Unix: "$HOME/.vim,
|
Unix: "$HOME/.vim,
|
||||||
$VIM/vimfiles,
|
$VIM/vimfiles,
|
||||||
$VIMRUNTIME,
|
$VIMRUNTIME,
|
||||||
$VIM/vimfiles/after,
|
$VIM/vimfiles/after,
|
||||||
@@ -6236,7 +6290,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
$VIMRUNTIME,
|
$VIMRUNTIME,
|
||||||
$VIM/vimfiles/after,
|
$VIM/vimfiles/after,
|
||||||
home:vimfiles/after"
|
home:vimfiles/after"
|
||||||
PC: "$HOME/vimfiles,
|
MS-Windows: "$HOME/vimfiles,
|
||||||
$VIM/vimfiles,
|
$VIM/vimfiles,
|
||||||
$VIMRUNTIME,
|
$VIMRUNTIME,
|
||||||
$VIM/vimfiles/after,
|
$VIM/vimfiles/after,
|
||||||
@@ -6248,8 +6302,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
$VIM/vimfiles,
|
$VIM/vimfiles,
|
||||||
$VIMRUNTIME,
|
$VIMRUNTIME,
|
||||||
$VIM/vimfiles/after,
|
$VIM/vimfiles/after,
|
||||||
$BE_USER_SETTINGS/vim/after")
|
$BE_USER_SETTINGS/vim/after"
|
||||||
VMS: "sys$login:vimfiles,
|
VMS: "sys$login:vimfiles,
|
||||||
$VIM/vimfiles,
|
$VIM/vimfiles,
|
||||||
$VIMRUNTIME,
|
$VIMRUNTIME,
|
||||||
$VIM/vimfiles/after,
|
$VIM/vimfiles/after,
|
||||||
@@ -6484,6 +6538,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
global values for local options)
|
global values for local options)
|
||||||
options all options and mappings (also global values for local
|
options all options and mappings (also global values for local
|
||||||
options)
|
options)
|
||||||
|
skiprtp exclude 'runtimepath' and 'packpath' from the options
|
||||||
resize size of the Vim window: 'lines' and 'columns'
|
resize size of the Vim window: 'lines' and 'columns'
|
||||||
sesdir the directory in which the session file is located
|
sesdir the directory in which the session file is located
|
||||||
will become the current directory (useful with
|
will become the current directory (useful with
|
||||||
@@ -6544,23 +6599,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}
|
||||||
@@ -6570,16 +6627,19 @@ 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
|
||||||
'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 "2>&1| tee". This means that
|
"bash", "fish", "ash" or "dash" the default becomes "2>&1| tee". This
|
||||||
stderr is also included. Before using the 'shell' option a path is
|
means that stderr is also included. Before using the 'shell' option a
|
||||||
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
|
||||||
@@ -6595,8 +6655,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
|
||||||
@@ -6604,14 +6663,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
|
||||||
@@ -6622,10 +6680,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
|
||||||
@@ -6640,9 +6700,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.
|
||||||
@@ -6696,6 +6756,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(): "\"")
|
||||||
@@ -6708,11 +6770,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.
|
||||||
|
|
||||||
@@ -7310,6 +7373,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Note that there is no '%' before the closing '}'. The
|
Note that there is no '%' before the closing '}'. The
|
||||||
expression cannot contain a '}' character, call a function to
|
expression cannot contain a '}' character, call a function to
|
||||||
work around that. See |stl-%{| below.
|
work around that. See |stl-%{| below.
|
||||||
|
{% - This is almost same as { except the result of the expression is
|
||||||
|
re-evaluated as a statusline format string. Thus if the
|
||||||
|
return value of expr contains % items they will get expanded.
|
||||||
|
The expression can contain the } character, the end of
|
||||||
|
expression is denoted by %}.
|
||||||
|
The For example: >
|
||||||
|
func! Stl_filename() abort
|
||||||
|
return "%t"
|
||||||
|
endfunc
|
||||||
|
< `stl=%{Stl_filename()}` results in `"%t"`
|
||||||
|
`stl=%{%Stl_filename()%}` results in `"Name of current file"`
|
||||||
|
} - End of `{%` expression
|
||||||
( - 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.
|
||||||
@@ -7453,6 +7528,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'switchbuf' 'swb' string (default "")
|
'switchbuf' 'swb' string (default "")
|
||||||
global
|
global
|
||||||
This option controls the behavior when switching between buffers.
|
This option controls the behavior when switching between buffers.
|
||||||
|
Mostly for |quickfix| commands some values are also used for other
|
||||||
|
commands, as mentioned below.
|
||||||
Possible values (comma separated list):
|
Possible values (comma separated list):
|
||||||
useopen If included, jump to the first open window that
|
useopen If included, jump to the first open window that
|
||||||
contains the specified buffer (if there is one).
|
contains the specified buffer (if there is one).
|
||||||
@@ -8566,12 +8643,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
|
||||||
@@ -8588,6 +8669,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*
|
||||||
@@ -8763,23 +8845,31 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
part specifies what to do for each consecutive use of 'wildchar'. The
|
part specifies what to do for each consecutive use of 'wildchar'. The
|
||||||
first part specifies the behavior for the first use of 'wildchar',
|
first part specifies the behavior for the first use of 'wildchar',
|
||||||
The second part for the second use, etc.
|
The second part for the second use, etc.
|
||||||
These are the possible values for each part:
|
|
||||||
|
Each part consists of a colon separated list consisting of the
|
||||||
|
following possible values:
|
||||||
"" Complete only the first match.
|
"" Complete only the first match.
|
||||||
"full" Complete the next full match. After the last match,
|
"full" Complete the next full match. After the last match,
|
||||||
the original string is used and then the first match
|
the original string is used and then the first match
|
||||||
again.
|
again. Will also start 'wildmenu' if it is enabled.
|
||||||
"longest" Complete till longest common string. If this doesn't
|
"longest" Complete till longest common string. If this doesn't
|
||||||
result in a longer string, use the next part.
|
result in a longer string, use the next part.
|
||||||
"longest:full" Like "longest", but also start 'wildmenu' if it is
|
|
||||||
enabled.
|
|
||||||
"list" When more than one match, list all matches.
|
"list" When more than one match, list all matches.
|
||||||
|
"lastused" When completing buffer names and more than one buffer
|
||||||
|
matches, sort buffers by time last used (other than
|
||||||
|
the current buffer).
|
||||||
|
When there is only a single match, it is fully completed in all cases.
|
||||||
|
|
||||||
|
Examples of useful colon-separated values:
|
||||||
|
"longest:full" Like "longest", but also start 'wildmenu' if it is
|
||||||
|
enabled. Will not complete to the next full match.
|
||||||
"list:full" When more than one match, list all matches and
|
"list:full" When more than one match, list all matches and
|
||||||
complete first match.
|
complete first match.
|
||||||
"list:longest" When more than one match, list all matches and
|
"list:longest" When more than one match, list all matches and
|
||||||
complete till longest common string.
|
complete till longest common string.
|
||||||
"list:lastused" When more than one buffer matches, sort buffers
|
"list:lastused" When more than one buffer matches, list all matches
|
||||||
by time last used (other than the current buffer).
|
and sort buffers by time last used (other than the
|
||||||
When there is only a single match, it is fully completed in all cases.
|
current buffer).
|
||||||
|
|
||||||
Examples: >
|
Examples: >
|
||||||
:set wildmode=full
|
:set wildmode=full
|
||||||
@@ -8838,15 +8928,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
*'window'* *'wi'*
|
*'window'* *'wi'*
|
||||||
'window' 'wi' number (default screen height - 1)
|
'window' 'wi' number (default screen height - 1)
|
||||||
global
|
global
|
||||||
Window height. Do not confuse this with the height of the Vim window,
|
Window height used for |CTRL-F| and |CTRL-B| when there is only one
|
||||||
use 'lines' for that.
|
window and the value is smaller than 'lines' minus one. The screen
|
||||||
Used for |CTRL-F| and |CTRL-B| when there is only one window and the
|
will scroll 'window' minus two lines, with a minimum of one.
|
||||||
value is smaller than 'lines' minus one. The screen will scroll
|
|
||||||
'window' minus two lines, with a minimum of one.
|
|
||||||
When 'window' is equal to 'lines' minus one CTRL-F and CTRL-B scroll
|
When 'window' is equal to 'lines' minus one CTRL-F and CTRL-B scroll
|
||||||
in a much smarter way, taking care of wrapping lines.
|
in a much smarter way, taking care of wrapping lines.
|
||||||
When resizing the Vim window, the value is smaller than 1 or more than
|
When resizing the Vim window, the value is smaller than 1 or more than
|
||||||
or equal to 'lines' it will be set to 'lines' minus 1.
|
or equal to 'lines' it will be set to 'lines' minus 1.
|
||||||
|
Note: Do not confuse this with the height of the Vim window, use
|
||||||
|
'lines' for that.
|
||||||
|
|
||||||
*'winheight'* *'wh'* *E591*
|
*'winheight'* *'wh'* *E591*
|
||||||
'winheight' 'wh' number (default 1)
|
'winheight' 'wh' number (default 1)
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*os_win32.txt* For Vim version 8.2. Last change: 2017 Mar 21
|
*os_win32.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by George Reilly
|
VIM REFERENCE MANUAL by George Reilly
|
||||||
@@ -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|
|
||||||
|
|
||||||
@@ -83,7 +85,7 @@ executable() returns 1 the executable can actually be executed.
|
|||||||
|
|
||||||
Command line arguments *win32-cmdargs*
|
Command line arguments *win32-cmdargs*
|
||||||
|
|
||||||
Analysis of a command line into parameters is not standardised in MS Windows.
|
Analysis of a command line into parameters is not standardised in MS-Windows.
|
||||||
Vim and gvim used to use different logic to parse it (before 7.4.432), and the
|
Vim and gvim used to use different logic to parse it (before 7.4.432), and the
|
||||||
logic was also depended on what it was compiled with. Now Vim and gvim both
|
logic was also depended on what it was compiled with. Now Vim and gvim both
|
||||||
use the CommandLineToArgvW() Win32 API, so they behave in the same way.
|
use the CommandLineToArgvW() Win32 API, so they behave in the same way.
|
||||||
@@ -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 Jan 08
|
*pattern.txt* For Vim version 8.2. Last change: 2021 Jul 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -19,6 +19,7 @@ explanations are in chapter 27 |usr_27.txt|.
|
|||||||
8. Composing characters |patterns-composing|
|
8. Composing characters |patterns-composing|
|
||||||
9. Compare with Perl patterns |perl-patterns|
|
9. Compare with Perl patterns |perl-patterns|
|
||||||
10. Highlighting matches |match-highlight|
|
10. Highlighting matches |match-highlight|
|
||||||
|
11. Fuzzy matching |fuzzy-match|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
1. Search commands *search-commands*
|
1. Search commands *search-commands*
|
||||||
@@ -229,7 +230,7 @@ This is like executing two search commands after each other, except that:
|
|||||||
*last-pattern*
|
*last-pattern*
|
||||||
The last used pattern and offset are remembered. They can be used to repeat
|
The last used pattern and offset are remembered. They can be used to repeat
|
||||||
the search, possibly in another direction or with another count. Note that
|
the search, possibly in another direction or with another count. Note that
|
||||||
two patterns are remembered: One for 'normal' search commands and one for the
|
two patterns are remembered: One for "normal" search commands and one for the
|
||||||
substitute command ":s". Each time an empty pattern is given, the previously
|
substitute command ":s". Each time an empty pattern is given, the previously
|
||||||
used pattern is used. However, if there is no previous search command, a
|
used pattern is used. However, if there is no previous search command, a
|
||||||
previous substitute pattern is used, if possible.
|
previous substitute pattern is used, if possible.
|
||||||
@@ -928,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).
|
||||||
|
\%.l Matches at the cursor line.
|
||||||
|
\%<.l Matches above the cursor line.
|
||||||
|
\%>.l Matches below the cursor line.
|
||||||
These three can be used to match specific lines in a buffer. The "23"
|
These three 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.
|
||||||
|
|
||||||
@@ -942,15 +950,23 @@ $ 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.
|
||||||
|
\%.c Matches at the cursor column.
|
||||||
|
\%<.c Matches before the cursor column.
|
||||||
|
\%>.c Matches after the cursor column.
|
||||||
These three can be used to match specific columns in a buffer or
|
These three can be used to match specific columns in a buffer or
|
||||||
string. The "23" can be any column number. The first column is 1.
|
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
|
Actually, the column is the byte number (thus it's not exactly right
|
||||||
for multibyte characters).
|
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: >
|
||||||
@@ -961,6 +977,9 @@ $ 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.
|
||||||
|
\%.v Matches at the current virtual column.
|
||||||
|
\%<.v Matches before the current virtual column.
|
||||||
|
\%>.v Matches after the current virtual column.
|
||||||
These three can be used to match specific virtual columns in a buffer
|
These three can be used to match specific virtual columns in a buffer
|
||||||
or string. When not matching with a buffer in a window, the option
|
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').
|
||||||
@@ -970,13 +989,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.
|
||||||
@@ -1216,7 +1240,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.
|
||||||
@@ -1431,5 +1455,39 @@ Finally, these constructs are unique to Perl:
|
|||||||
are suggested to use ":match" for manual matching and
|
are suggested to use ":match" for manual matching and
|
||||||
":2match" for another plugin.
|
":2match" for another plugin.
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
11. Fuzzy matching *fuzzy-match*
|
||||||
|
|
||||||
|
Fuzzy matching refers to matching strings using a non-exact search string.
|
||||||
|
Fuzzy matching will match a string, if all the characters in the search string
|
||||||
|
are present anywhere in the string in the same order. Case is ignored. In a
|
||||||
|
matched string, other characters can be present between two consecutive
|
||||||
|
characters in the search string. If the search string has multiple words, then
|
||||||
|
each word is matched separately. So the words in the search string can be
|
||||||
|
present in any order in a string.
|
||||||
|
|
||||||
|
Fuzzy matching assigns a score for each matched string based on the following
|
||||||
|
criteria:
|
||||||
|
- The number of sequentially matching characters.
|
||||||
|
- The number of characters (distance) between two consecutive matching
|
||||||
|
characters.
|
||||||
|
- Matches at the beginning of a word
|
||||||
|
- 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 matching string with the highest score is returned first.
|
||||||
|
|
||||||
|
For example, when you search for the "get pat" string using fuzzy matching, it
|
||||||
|
will match the strings "GetPattern", "PatternGet", "getPattern", "patGetter",
|
||||||
|
"getSomePattern", "MatchpatternGet" etc.
|
||||||
|
|
||||||
|
The functions |matchfuzzy()| and |matchfuzzypos()| can be used to fuzzy search
|
||||||
|
a string in a List of strings. The matchfuzzy() function returns a List of
|
||||||
|
matching strings. The matchfuzzypos() functions returns the List of matches,
|
||||||
|
the matching positions and the fuzzy match scores.
|
||||||
|
|
||||||
|
The "f" flag of `:vimgrep` enables fuzzy matching.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
|
|||||||
@@ -3809,7 +3809,7 @@ netrw:
|
|||||||
Decho.vim is provided as a "vimball"; see |vimball-intro|. You
|
Decho.vim is provided as a "vimball"; see |vimball-intro|. You
|
||||||
should edit the Decho.vba.gz file and source it in: >
|
should edit the Decho.vba.gz file and source it in: >
|
||||||
|
|
||||||
vim Decho.vba.gz
|
vim Decho.vba.gz
|
||||||
:so %
|
:so %
|
||||||
:q
|
:q
|
||||||
<
|
<
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*popup.txt* For Vim version 8.2. Last change: 2020 Nov 07
|
*popup.txt* For Vim version 8.2. Last change: 2021 Feb 21
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -588,8 +588,6 @@ properties. It is in one of four forms:
|
|||||||
|
|
||||||
If you want to create a new buffer yourself use |bufadd()| and pass the buffer
|
If you want to create a new buffer yourself use |bufadd()| and pass the buffer
|
||||||
number to popup_create().
|
number to popup_create().
|
||||||
It is not possible to use the buffer of a terminal window. *E278* You CAN
|
|
||||||
create a hidden terminal buffer and use that one in a popup window.
|
|
||||||
|
|
||||||
The second argument of |popup_create()| is a dictionary with options:
|
The second argument of |popup_create()| is a dictionary with options:
|
||||||
line Screen line where to position the popup. Can use a
|
line Screen line where to position the popup. Can use a
|
||||||
@@ -622,7 +620,8 @@ The second argument of |popup_create()| is a dictionary with options:
|
|||||||
property moves. Use an empty string to remove. See
|
property moves. Use an empty string to remove. See
|
||||||
|popup-textprop-pos|.
|
|popup-textprop-pos|.
|
||||||
textpropwin What window to search for the text property. When
|
textpropwin What window to search for the text property. When
|
||||||
omitted or invalid the current window is used.
|
omitted or invalid the current window is used. Used
|
||||||
|
when "textprop" is present.
|
||||||
textpropid Used to identify the text property when "textprop" is
|
textpropid Used to identify the text property when "textprop" is
|
||||||
present. Use zero to reset.
|
present. Use zero to reset.
|
||||||
fixed When FALSE (the default), and:
|
fixed When FALSE (the default), and:
|
||||||
@@ -694,8 +693,8 @@ The second argument of |popup_create()| is a dictionary with options:
|
|||||||
the left.
|
the left.
|
||||||
border List with numbers, defining the border thickness
|
border List with numbers, defining the border thickness
|
||||||
above/right/below/left of the popup (similar to CSS).
|
above/right/below/left of the popup (similar to CSS).
|
||||||
Only values of zero and non-zero are recognized.
|
Only values of zero and non-zero are currently
|
||||||
An empty list uses a border all around.
|
recognized. An empty list uses a border all around.
|
||||||
borderhighlight List of highlight group names to use for the border.
|
borderhighlight List of highlight group names to use for the border.
|
||||||
When one entry it is used for all borders, otherwise
|
When one entry it is used for all borders, otherwise
|
||||||
the highlight for the top/right/bottom/left border.
|
the highlight for the top/right/bottom/left border.
|
||||||
@@ -743,10 +742,10 @@ The second argument of |popup_create()| is a dictionary with options:
|
|||||||
line or to another window.
|
line or to another window.
|
||||||
mousemoved Like "moved" but referring to the mouse pointer
|
mousemoved Like "moved" but referring to the mouse pointer
|
||||||
position
|
position
|
||||||
cursorline non-zero: Highlight the cursor line. Also scrolls the
|
cursorline TRUE: Highlight the cursor line. Also scrolls the
|
||||||
text to show this line (only works properly
|
text to show this line (only works properly
|
||||||
when 'wrap' is off).
|
when 'wrap' is off).
|
||||||
zero: Do not highlight the cursor line.
|
zero: Do not highlight the cursor line.
|
||||||
Default is zero, except for |popup_menu()|.
|
Default is zero, except for |popup_menu()|.
|
||||||
filter A callback that can filter typed characters, see
|
filter A callback that can filter typed characters, see
|
||||||
|popup-filter|.
|
|popup-filter|.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*quickfix.txt* For Vim version 8.2. Last change: 2020 May 31
|
*quickfix.txt* For Vim version 8.2. Last change: 2021 May 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1008,13 +1008,11 @@ commands can be combined to create a NewGrep command: >
|
|||||||
5.1 using Vim's internal grep
|
5.1 using Vim's internal grep
|
||||||
|
|
||||||
*:vim* *:vimgrep* *E682* *E683*
|
*:vim* *:vimgrep* *E682* *E683*
|
||||||
:vim[grep][!] /{pattern}/[g][j] {file} ...
|
:vim[grep][!] /{pattern}/[g][j][f] {file} ...
|
||||||
Search for {pattern} in the files {file} ... and set
|
Search for {pattern} in the files {file} ... and set
|
||||||
the error list to the matches. Files matching
|
the error list to the matches. Files matching
|
||||||
'wildignore' are ignored; files in 'suffixes' are
|
'wildignore' are ignored; files in 'suffixes' are
|
||||||
searched last.
|
searched last.
|
||||||
Without the 'g' flag each line is added only once.
|
|
||||||
With 'g' every match is added.
|
|
||||||
|
|
||||||
{pattern} is a Vim search pattern. Instead of
|
{pattern} is a Vim search pattern. Instead of
|
||||||
enclosing it in / any non-ID character (see
|
enclosing it in / any non-ID character (see
|
||||||
@@ -1025,6 +1023,28 @@ commands can be combined to create a NewGrep command: >
|
|||||||
'smartcase' is not used.
|
'smartcase' is not used.
|
||||||
If {pattern} is empty (e.g. // is specified), the last
|
If {pattern} is empty (e.g. // is specified), the last
|
||||||
used search pattern is used. |last-pattern|
|
used search pattern is used. |last-pattern|
|
||||||
|
|
||||||
|
Flags:
|
||||||
|
'g' Without the 'g' flag each line is added only
|
||||||
|
once. With 'g' every match is added.
|
||||||
|
|
||||||
|
'j' Without the 'j' flag Vim jumps to the first
|
||||||
|
match. With 'j' only the quickfix list is
|
||||||
|
updated. With the [!] any changes in the current
|
||||||
|
buffer are abandoned.
|
||||||
|
|
||||||
|
'f' When the 'f' flag is specified, fuzzy string
|
||||||
|
matching is used to find matching lines. In this
|
||||||
|
case, {pattern} is treated as a literal string
|
||||||
|
instead of a regular expression. See
|
||||||
|
|fuzzy-match| for more information about fuzzy
|
||||||
|
matching strings.
|
||||||
|
|
||||||
|
|QuickFixCmdPre| and |QuickFixCmdPost| are triggered.
|
||||||
|
A file that is opened for matching may use a buffer
|
||||||
|
number, but it is reused if possible to avoid
|
||||||
|
consuming buffer numbers.
|
||||||
|
|
||||||
:{count}vim[grep] ...
|
:{count}vim[grep] ...
|
||||||
When a number is put before the command this is used
|
When a number is put before the command this is used
|
||||||
as the maximum number of matches to find. Use
|
as the maximum number of matches to find. Use
|
||||||
@@ -1032,11 +1052,6 @@ commands can be combined to create a NewGrep command: >
|
|||||||
Useful if you only want to check if there is a match
|
Useful if you only want to check if there is a match
|
||||||
and quit quickly when it's found.
|
and quit quickly when it's found.
|
||||||
|
|
||||||
Without the 'j' flag Vim jumps to the first match.
|
|
||||||
With 'j' only the quickfix list is updated.
|
|
||||||
With the [!] any changes in the current buffer are
|
|
||||||
abandoned.
|
|
||||||
|
|
||||||
Every second or so the searched file name is displayed
|
Every second or so the searched file name is displayed
|
||||||
to give you an idea of the progress made.
|
to give you an idea of the progress made.
|
||||||
Examples: >
|
Examples: >
|
||||||
@@ -1053,20 +1068,20 @@ commands can be combined to create a NewGrep command: >
|
|||||||
:vimgrep Error *.c
|
:vimgrep Error *.c
|
||||||
<
|
<
|
||||||
*:lv* *:lvimgrep*
|
*:lv* *:lvimgrep*
|
||||||
:lv[imgrep][!] /{pattern}/[g][j] {file} ...
|
:lv[imgrep][!] /{pattern}/[g][j][f] {file} ...
|
||||||
:lv[imgrep][!] {pattern} {file} ...
|
:lv[imgrep][!] {pattern} {file} ...
|
||||||
Same as ":vimgrep", except the location list for the
|
Same as ":vimgrep", except the location list for the
|
||||||
current window is used instead of the quickfix list.
|
current window is used instead of the quickfix list.
|
||||||
|
|
||||||
*:vimgrepa* *:vimgrepadd*
|
*:vimgrepa* *:vimgrepadd*
|
||||||
:vimgrepa[dd][!] /{pattern}/[g][j] {file} ...
|
:vimgrepa[dd][!] /{pattern}/[g][j][f] {file} ...
|
||||||
:vimgrepa[dd][!] {pattern} {file} ...
|
:vimgrepa[dd][!] {pattern} {file} ...
|
||||||
Just like ":vimgrep", but instead of making a new list
|
Just like ":vimgrep", but instead of making a new list
|
||||||
of errors the matches are appended to the current
|
of errors the matches are appended to the current
|
||||||
list.
|
list.
|
||||||
|
|
||||||
*:lvimgrepa* *:lvimgrepadd*
|
*:lvimgrepa* *:lvimgrepadd*
|
||||||
:lvimgrepa[dd][!] /{pattern}/[g][j] {file} ...
|
:lvimgrepa[dd][!] /{pattern}/[g][j][f] {file} ...
|
||||||
:lvimgrepa[dd][!] {pattern} {file} ...
|
:lvimgrepa[dd][!] {pattern} {file} ...
|
||||||
Same as ":vimgrepadd", except the location list for
|
Same as ":vimgrepadd", except the location list for
|
||||||
the current window is used instead of the quickfix
|
the current window is used instead of the quickfix
|
||||||
@@ -1371,7 +1386,8 @@ Basic items
|
|||||||
%o module name (finds a string)
|
%o module name (finds a string)
|
||||||
%l line number (finds a number)
|
%l line number (finds a number)
|
||||||
%c column number (finds a number representing character
|
%c column number (finds a number representing character
|
||||||
column of the error, (1 <tab> == 1 character column))
|
column of the error, byte index, a <tab> is 1
|
||||||
|
character column)
|
||||||
%v virtual column number (finds a number representing
|
%v virtual column number (finds a number representing
|
||||||
screen column of the error (1 <tab> == 8 screen
|
screen column of the error (1 <tab> == 8 screen
|
||||||
columns))
|
columns))
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*quickref.txt* For Vim version 8.2. Last change: 2020 Aug 15
|
*quickref.txt* For Vim version 8.2. Last change: 2021 Mar 29
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -605,6 +605,7 @@ Short explanation of each option: *option-list*
|
|||||||
'ambiwidth' 'ambw' what to do with Unicode chars of ambiguous width
|
'ambiwidth' 'ambw' what to do with Unicode chars of ambiguous width
|
||||||
'antialias' 'anti' Mac OS X: use smooth, antialiased fonts
|
'antialias' 'anti' Mac OS X: use smooth, antialiased fonts
|
||||||
'autochdir' 'acd' change directory to the file in the current window
|
'autochdir' 'acd' change directory to the file in the current window
|
||||||
|
'autoshelldir' 'asd' change directory to the shell's current directory
|
||||||
'arabic' 'arab' for Arabic as a default second language
|
'arabic' 'arab' for Arabic as a default second language
|
||||||
'arabicshape' 'arshape' do shaping for Arabic characters
|
'arabicshape' 'arshape' do shaping for Arabic characters
|
||||||
'autoindent' 'ai' take indent for new line from previous line
|
'autoindent' 'ai' take indent for new line from previous line
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*repeat.txt* For Vim version 8.2. Last change: 2021 Jan 02
|
*repeat.txt* For Vim version 8.2. Last change: 2021 Jun 27
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -59,6 +59,11 @@ of area is used, see |visual-repeat|.
|
|||||||
:[range]v[global]/{pattern}/[cmd]
|
:[range]v[global]/{pattern}/[cmd]
|
||||||
Same as :g!.
|
Same as :g!.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
:g/^Obsolete/d _
|
||||||
|
Using the underscore after `:d` avoids clobbering registers or the clipboard.
|
||||||
|
This also makes it faster.
|
||||||
|
|
||||||
Instead of the '/' which surrounds the {pattern}, you can use any other
|
Instead of the '/' which surrounds the {pattern}, you can use any other
|
||||||
single byte character, but not an alphabetic character, '\', '"' or '|'.
|
single byte character, but not an alphabetic character, '\', '"' or '|'.
|
||||||
This is useful if you want to include a '/' in the search pattern or
|
This is useful if you want to include a '/' in the search pattern or
|
||||||
@@ -150,15 +155,12 @@ q Stops recording. (Implementation note: The 'q' that
|
|||||||
*@@* *E748*
|
*@@* *E748*
|
||||||
@@ Repeat the previous @{0-9a-z":*} [count] times.
|
@@ Repeat the previous @{0-9a-z":*} [count] times.
|
||||||
|
|
||||||
:[addr]*{0-9a-z".=+} *:@* *:star*
|
*:@*
|
||||||
:[addr]@{0-9a-z".=*+} Execute the contents of register {0-9a-z".=*+} as an Ex
|
:[addr]@{0-9a-z".=*+} Execute the contents of register {0-9a-z".=*+} as an Ex
|
||||||
command. First set cursor at line [addr] (default is
|
command. First set cursor at line [addr] (default is
|
||||||
current line). When the last line in the register does
|
current line). When the last line in the register does
|
||||||
not have a <CR> it will be added automatically when
|
not have a <CR> it will be added automatically when
|
||||||
the 'e' flag is present in 'cpoptions'.
|
the 'e' flag is present in 'cpoptions'.
|
||||||
Note that the ":*" command is only recognized when the
|
|
||||||
'*' flag is present in 'cpoptions'. This is NOT the
|
|
||||||
default when 'nocompatible' is used.
|
|
||||||
For ":@=" the last used expression is used. The
|
For ":@=" the last used expression is used. The
|
||||||
result of evaluating the expression is executed as an
|
result of evaluating the expression is executed as an
|
||||||
Ex command.
|
Ex command.
|
||||||
@@ -171,6 +173,13 @@ q Stops recording. (Implementation note: The 'q' that
|
|||||||
Future: Will execute the register for each line in the
|
Future: Will execute the register for each line in the
|
||||||
address range.
|
address range.
|
||||||
|
|
||||||
|
:[addr]*{0-9a-z".=+} *:star-compatible*
|
||||||
|
When '*' is present in 'cpoptions' |cpo-star|, use
|
||||||
|
":*" in the same way as ":@". This is NOT the default
|
||||||
|
when 'nocompatible' is used. When the '*' flag is not
|
||||||
|
present in 'cpoptions', ":*" is an alias for ":'<,'>",
|
||||||
|
select the Visual area |:star|.
|
||||||
|
|
||||||
*:@:*
|
*:@:*
|
||||||
:[addr]@: Repeat last command-line. First set cursor at line
|
:[addr]@: Repeat last command-line. First set cursor at line
|
||||||
[addr] (default is current line).
|
[addr] (default is current line).
|
||||||
@@ -270,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.
|
||||||
@@ -354,14 +365,16 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
Vim version, or update Vim to a newer version. See
|
Vim version, or update Vim to a newer version. See
|
||||||
|vimscript-version| for what changed between versions.
|
|vimscript-version| for what changed between versions.
|
||||||
|
|
||||||
:vim9script [noclear] *:vim9* *:vim9script*
|
:vim9s[cript] [noclear] *:vim9s* *:vim9script*
|
||||||
Marks a script file as containing |Vim9-script|
|
Marks a script file as containing |Vim9-script|
|
||||||
commands. Also see |vim9-namespace|.
|
commands. Also see |vim9-namespace|.
|
||||||
Must be the first command in the file.
|
Must be the first command in the file.
|
||||||
For [noclear] see |vim9-reload|.
|
For [noclear] see |vim9-reload|.
|
||||||
Without the |+eval| feature this changes the syntax
|
Without the |+eval| feature this changes the syntax
|
||||||
for some commands.
|
for some commands.
|
||||||
|
See |:vim9cmd| for executing one command with Vim9
|
||||||
|
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
|
||||||
@@ -675,9 +688,9 @@ Your directory layout would be like this:
|
|||||||
opt/fooextra/doc/tags " help tags
|
opt/fooextra/doc/tags " help tags
|
||||||
|
|
||||||
This allows for the user to do: >
|
This allows for the user to do: >
|
||||||
mkdir ~/.vim/pack/myfoobar
|
mkdir ~/.vim/pack
|
||||||
cd ~/.vim/pack/myfoobar
|
cd ~/.vim/pack
|
||||||
git clone https://github.com/you/foobar.git
|
git clone https://github.com/you/foobar.git myfoobar
|
||||||
|
|
||||||
Here "myfoobar" is a name that the user can choose, the only condition is that
|
Here "myfoobar" is a name that the user can choose, the only condition is that
|
||||||
it differs from other packages.
|
it differs from other packages.
|
||||||
@@ -831,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 ~
|
||||||
@@ -877,7 +900,7 @@ DEFINING BREAKPOINTS
|
|||||||
valid in the script where it has been defined and if that
|
valid in the script where it has been defined and if that
|
||||||
script is called from several other scripts, this will stop
|
script is called from several other scripts, this will stop
|
||||||
whenever that particular variable will become visible or
|
whenever that particular variable will become visible or
|
||||||
unaccessible again.
|
inaccessible again.
|
||||||
|
|
||||||
The [lnum] is the line number of the breakpoint. Vim will stop at or after
|
The [lnum] is the line number of the breakpoint. Vim will stop at or after
|
||||||
this line. When omitted line 1 is used.
|
this line. When omitted line 1 is used.
|
||||||
@@ -899,8 +922,9 @@ matches ".../plugin/explorer.vim", ".../plugin/iexplorer.vim", etc. >
|
|||||||
matches ".../plugin/explorer.vim" and "explorer.vim" in any other directory.
|
matches ".../plugin/explorer.vim" and "explorer.vim" in any other directory.
|
||||||
|
|
||||||
The match for functions is done against the name as it's shown in the output
|
The match for functions is done against the name as it's shown in the output
|
||||||
of ":function". For local functions this means that something like "<SNR>99_"
|
of ":function". However, for local functions the script-specific prefix such
|
||||||
is prepended.
|
as "<SNR>99_" is ignored to make it easier to match script-local functions
|
||||||
|
without knowing the ID of the script.
|
||||||
|
|
||||||
Note that functions are first loaded and later executed. When they are loaded
|
Note that functions are first loaded and later executed. When they are loaded
|
||||||
the "file" breakpoints are checked, when they are executed the "func"
|
the "file" breakpoints are checked, when they are executed the "func"
|
||||||
@@ -955,10 +979,10 @@ OBSCURE
|
|||||||
|
|
||||||
Profiling means that Vim measures the time that is spent on executing
|
Profiling means that Vim measures the time that is spent on executing
|
||||||
functions and/or scripts. The |+profile| feature is required for this.
|
functions and/or scripts. The |+profile| feature is required for this.
|
||||||
It is only included when Vim was compiled with "huge" features.
|
It is included when Vim was compiled with "huge" features.
|
||||||
|
|
||||||
You can also use the |reltime()| function to measure time. This only requires
|
You can also use the |reltime()| function to measure time. This only requires
|
||||||
the |+reltime| feature, which is present more often.
|
the |+reltime| feature, which is present in more builds.
|
||||||
|
|
||||||
For profiling syntax highlighting see |:syntime|.
|
For profiling syntax highlighting see |:syntime|.
|
||||||
|
|
||||||
@@ -1005,7 +1029,12 @@ For example, to profile the one_script.vim script file: >
|
|||||||
|
|
||||||
|
|
||||||
You must always start with a ":profile start fname" command. The resulting
|
You must always start with a ":profile start fname" command. The resulting
|
||||||
file is written when Vim exits. Here is an example of the output, with line
|
file is written when Vim exits. For example, to profile one specific
|
||||||
|
function: >
|
||||||
|
profile start /tmp/vimprofile
|
||||||
|
profile func MyFunc
|
||||||
|
|
||||||
|
Here is an example of the output, with line
|
||||||
numbers prepended for the explanation:
|
numbers prepended for the explanation:
|
||||||
|
|
||||||
1 FUNCTION Test2() ~
|
1 FUNCTION Test2() ~
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*sign.txt* For Vim version 8.2. Last change: 2020 Oct 28
|
*sign.txt* For Vim version 8.2. Last change: 2021 Mar 07
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Gordon Prieur
|
VIM REFERENCE MANUAL by Gordon Prieur
|
||||||
@@ -146,6 +146,9 @@ See |sign_define()| for the equivalent Vim script function.
|
|||||||
texthl={group}
|
texthl={group}
|
||||||
Highlighting group used for the text item.
|
Highlighting group used for the text item.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
:sign define MySign text=>> texthl=Search linehl=DiffText
|
||||||
|
<
|
||||||
|
|
||||||
DELETING A SIGN *:sign-undefine* *E155*
|
DELETING A SIGN *:sign-undefine* *E155*
|
||||||
|
|
||||||
@@ -155,7 +158,9 @@ See |sign_undefine()| for the equivalent Vim script function.
|
|||||||
Deletes a previously defined sign. If signs with this {name}
|
Deletes a previously defined sign. If signs with this {name}
|
||||||
are still placed this will cause trouble.
|
are still placed this will cause trouble.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
:sign undefine MySign
|
||||||
|
<
|
||||||
|
|
||||||
LISTING SIGNS *:sign-list* *E156*
|
LISTING SIGNS *:sign-list* *E156*
|
||||||
|
|
||||||
@@ -209,6 +214,10 @@ See |sign_place()| for the equivalent Vim script function.
|
|||||||
Same, but use buffer {nr}. If the buffer argument is not
|
Same, but use buffer {nr}. If the buffer argument is not
|
||||||
given, place the sign in the current buffer.
|
given, place the sign in the current buffer.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
:sign place 10 line=99 name=sign3
|
||||||
|
:sign place 10 line=99 name=sign3 buffer=3
|
||||||
|
<
|
||||||
*E885*
|
*E885*
|
||||||
:sign place {id} name={name} file={fname}
|
:sign place {id} name={name} file={fname}
|
||||||
Change the placed sign {id} in file {fname} to use the defined
|
Change the placed sign {id} in file {fname} to use the defined
|
||||||
@@ -221,10 +230,17 @@ See |sign_place()| for the equivalent Vim script function.
|
|||||||
"priority={prio}" attribute can be used to change the priority
|
"priority={prio}" attribute can be used to change the priority
|
||||||
of an existing sign.
|
of an existing sign.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
:sign place 23 name=sign1 file=/path/to/edit.py
|
||||||
|
<
|
||||||
:sign place {id} name={name} [buffer={nr}]
|
:sign place {id} name={name} [buffer={nr}]
|
||||||
Same, but use buffer {nr}. If the buffer argument is not
|
Same, but use buffer {nr}. If the buffer argument is not
|
||||||
given, use the current buffer.
|
given, use the current buffer.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
:sign place 23 name=sign1
|
||||||
|
:sign place 23 name=sign1 buffer=7
|
||||||
|
<
|
||||||
|
|
||||||
REMOVING SIGNS *:sign-unplace* *E159*
|
REMOVING SIGNS *:sign-unplace* *E159*
|
||||||
|
|
||||||
|
|||||||
@@ -1143,10 +1143,10 @@ flag to avoid lots of errors.
|
|||||||
CIRCUMFIX *spell-CIRCUMFIX*
|
CIRCUMFIX *spell-CIRCUMFIX*
|
||||||
|
|
||||||
The CIRCUMFIX flag means a prefix and suffix must be added at the same time.
|
The CIRCUMFIX flag means a prefix and suffix must be added at the same time.
|
||||||
If a prefix has the CIRCUMFIX flag than only suffixes with the CIRCUMFIX flag
|
If a prefix has the CIRCUMFIX flag then only suffixes with the CIRCUMFIX flag
|
||||||
can be added, and the other way around.
|
can be added, and the other way around.
|
||||||
An alternative is to only specify the suffix, and give the that suffix two
|
An alternative is to only specify the suffix, and give that suffix two flags:
|
||||||
flags: The required prefix and the NEEDAFFIX flag. |spell-NEEDAFFIX|
|
the required prefix and the NEEDAFFIX flag. |spell-NEEDAFFIX|
|
||||||
|
|
||||||
|
|
||||||
PFXPOSTPONE *spell-PFXPOSTPONE*
|
PFXPOSTPONE *spell-PFXPOSTPONE*
|
||||||
|
|||||||
@@ -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 @@
|
|||||||
*starting.txt* For Vim version 8.2. Last change: 2020 Dec 19
|
*starting.txt* For Vim version 8.2. Last change: 2021 May 08
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1036,7 +1036,7 @@ giving the mapping.
|
|||||||
|
|
||||||
|
|
||||||
Defaults without a .vimrc file ~
|
Defaults without a .vimrc file ~
|
||||||
*defaults.vim*
|
*defaults.vim* *E1187*
|
||||||
If Vim is started normally and no user vimrc file is found, the
|
If Vim is started normally and no user vimrc file is found, the
|
||||||
$VIMRUNTIME/defaults.vim script is loaded. This will set 'compatible' off,
|
$VIMRUNTIME/defaults.vim script is loaded. This will set 'compatible' off,
|
||||||
switch on syntax highlighting and a few more things. See the script for
|
switch on syntax highlighting and a few more things. See the script for
|
||||||
@@ -1344,7 +1344,11 @@ resulting file, when executed with a ":source" command:
|
|||||||
"options". Script-local mappings will not be written.
|
"options". Script-local mappings will not be written.
|
||||||
2. Restores global variables that start with an uppercase letter and contain
|
2. Restores global variables that start with an uppercase letter and contain
|
||||||
at least one lowercase letter, if 'sessionoptions' contains "globals".
|
at least one lowercase letter, if 'sessionoptions' contains "globals".
|
||||||
3. Unloads all currently loaded buffers.
|
3. Closes all windows in the current tab page, except the current one; closes
|
||||||
|
all tab pages except the current one (this results in currently loaded
|
||||||
|
buffers to be unloaded, some may become hidden if 'hidden' is set or
|
||||||
|
otherwise specified); wipes out the current buffer, if it is empty
|
||||||
|
and unnamed.
|
||||||
4. Restores the current directory if 'sessionoptions' contains "curdir", or
|
4. Restores the current directory if 'sessionoptions' contains "curdir", or
|
||||||
sets the current directory to where the Session file is if 'sessionoptions'
|
sets the current directory to where the Session file is if 'sessionoptions'
|
||||||
contains "sesdir".
|
contains "sesdir".
|
||||||
@@ -1588,7 +1592,7 @@ VIMINFO FILE NAME *viminfo-file-name*
|
|||||||
file name given is "NONE" (all uppercase), no viminfo file is ever read or
|
file name given is "NONE" (all uppercase), no viminfo file is ever read or
|
||||||
written. Also not for the commands below!
|
written. Also not for the commands below!
|
||||||
- The 'viminfofile' option can be used like the "-i" argument. In fact, the
|
- The 'viminfofile' option can be used like the "-i" argument. In fact, the
|
||||||
value form the "-i" argument is stored in the 'viminfofile' option.
|
value from the "-i" argument is stored in the 'viminfofile' option.
|
||||||
- For the commands below, another file name can be given, overriding the
|
- For the commands below, another file name can be given, overriding the
|
||||||
default and the name given with 'viminfo' or "-i" (unless it's NONE).
|
default and the name given with 'viminfo' or "-i" (unless it's NONE).
|
||||||
|
|
||||||
@@ -1640,13 +1644,17 @@ either have to fix the error, or delete the file (while Vim is running, so
|
|||||||
most of the information will be restored).
|
most of the information will be restored).
|
||||||
|
|
||||||
*:rv* *:rviminfo* *E195*
|
*:rv* *:rviminfo* *E195*
|
||||||
:rv[iminfo][!] [file] Read from viminfo file [file] (default: see above).
|
:rv[iminfo][!] [file] Read from viminfo file [file] (default: see
|
||||||
|
|viminfo-file-name| above).
|
||||||
If [!] is given, then any information that is
|
If [!] is given, then any information that is
|
||||||
already set (registers, marks, |v:oldfiles|, etc.)
|
already set (registers, marks, |v:oldfiles|, etc.)
|
||||||
will be overwritten
|
will be overwritten
|
||||||
|
|
||||||
*:wv* *:wviminfo* *E137* *E138* *E574* *E886* *E929*
|
*:wv* *:wviminfo* *E137* *E138* *E574* *E886* *E929*
|
||||||
:wv[iminfo][!] [file] Write to viminfo file [file] (default: see above).
|
:wv[iminfo][!] [file] Write to viminfo file [file] (default: see
|
||||||
|
|viminfo-file-name| above).
|
||||||
|
This command has no effect when 'viminfofile' has been
|
||||||
|
set to "NONE".
|
||||||
The information in the file is first read in to make
|
The information in the file is first read in to make
|
||||||
a merge between old and new info. When [!] is used,
|
a merge between old and new info. When [!] is used,
|
||||||
the old information is not read first, only the
|
the old information is not read first, only the
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*syntax.txt* For Vim version 8.2. Last change: 2020 Dec 17
|
*syntax.txt* For Vim version 8.2. Last change: 2021 Jul 02
|
||||||
|
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
@@ -1420,11 +1420,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 +1448,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
|
||||||
@@ -1741,8 +1763,8 @@ The coloring scheme for tags in the HTML file works as follows.
|
|||||||
|
|
||||||
The <> of opening tags are colored differently than the </> of a closing tag.
|
The <> of opening tags are colored differently than the </> of a closing tag.
|
||||||
This is on purpose! For opening tags the 'Function' color is used, while for
|
This is on purpose! For opening tags the 'Function' color is used, while for
|
||||||
closing tags the 'Type' color is used (See syntax.vim to check how those are
|
closing tags the 'Identifier' color is used (See syntax.vim to check how those
|
||||||
defined for you)
|
are defined for you)
|
||||||
|
|
||||||
Known tag names are colored the same way as statements in C. Unknown tag
|
Known tag names are colored the same way as statements in C. Unknown tag
|
||||||
names are colored with the same color as the <> or </> respectively which
|
names are colored with the same color as the <> or </> respectively which
|
||||||
@@ -2236,9 +2258,10 @@ can use them.
|
|||||||
|
|
||||||
For example, Linux and BSD distributions use groff as their default text
|
For example, Linux and BSD distributions use groff as their default text
|
||||||
processing package. In order to activate the extra syntax highlighting
|
processing package. In order to activate the extra syntax highlighting
|
||||||
features for groff, add the following option to your start-up files: >
|
features for groff, arrange for files to be recognized as groff (see
|
||||||
|
|ft-groff-syntax|) or add the following option to your start-up files: >
|
||||||
|
|
||||||
:let b:nroff_is_groff = 1
|
:let nroff_is_groff = 1
|
||||||
|
|
||||||
Groff is different from the old AT&T n/troff that you may still find in
|
Groff is different from the old AT&T n/troff that you may still find in
|
||||||
Solaris. Groff macro and request names can be longer than 2 characters and
|
Solaris. Groff macro and request names can be longer than 2 characters and
|
||||||
@@ -2335,11 +2358,12 @@ http://papp.plan9.de.
|
|||||||
|
|
||||||
PASCAL *pascal.vim* *ft-pascal-syntax*
|
PASCAL *pascal.vim* *ft-pascal-syntax*
|
||||||
|
|
||||||
Files matching "*.p" could be Progress or Pascal. If the automatic detection
|
Files matching "*.p" could be Progress or Pascal and those matching "*.pp"
|
||||||
doesn't work for you, or you don't edit Progress at all, use this in your
|
could be Puppet or Pascal. If the automatic detection doesn't work for you,
|
||||||
startup vimrc: >
|
or you only edit Pascal files, use this in your startup vimrc: >
|
||||||
|
|
||||||
:let filetype_p = "pascal"
|
:let filetype_p = "pascal"
|
||||||
|
:let filetype_pp = "pascal"
|
||||||
|
|
||||||
The Pascal syntax file has been extended to take into account some extensions
|
The Pascal syntax file has been extended to take into account some extensions
|
||||||
provided by Turbo Pascal, Free Pascal Compiler and GNU Pascal Compiler.
|
provided by Turbo Pascal, Free Pascal Compiler and GNU Pascal Compiler.
|
||||||
@@ -3428,8 +3452,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 = '[({[]'
|
||||||
@@ -4082,7 +4106,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.
|
||||||
|
|
||||||
@@ -4675,7 +4699,7 @@ matches, nextgroup, etc. But there are a few differences:
|
|||||||
- A line continuation pattern can be given. It is used to decide which group
|
- A line continuation pattern can be given. It is used to decide which group
|
||||||
of lines need to be searched like they were one line. This means that the
|
of lines need to be searched like they were one line. This means that the
|
||||||
search for a match with the specified items starts in the first of the
|
search for a match with the specified items starts in the first of the
|
||||||
consecutive that contain the continuation pattern.
|
consecutive lines that contain the continuation pattern.
|
||||||
- When using "nextgroup" or "contains", this only works within one line (or
|
- When using "nextgroup" or "contains", this only works within one line (or
|
||||||
group of continued lines).
|
group of continued lines).
|
||||||
- When using a region, it must start and end in the same line (or group of
|
- When using a region, it must start and end in the same line (or group of
|
||||||
@@ -4965,6 +4989,14 @@ ctermul={color-nr} *highlight-ctermul*
|
|||||||
colors for a color-xterm can be changed from the .Xdefaults file.
|
colors for a color-xterm can be changed from the .Xdefaults file.
|
||||||
Unfortunately this means that it's not possible to get the same colors
|
Unfortunately this means that it's not possible to get the same colors
|
||||||
for each user. See |xterm-color| for info about color xterms.
|
for each user. See |xterm-color| for info about color xterms.
|
||||||
|
*tmux*
|
||||||
|
When using tmux you may want to use this in the tmux config: >
|
||||||
|
# tmux colors
|
||||||
|
set -s default-terminal "tmux-256color"
|
||||||
|
set -as terminal-overrides ",*-256color:Tc"
|
||||||
|
< 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-rgb-colour
|
||||||
|
|
||||||
The MS-Windows standard colors are fixed (in a console window), so
|
The MS-Windows standard colors are fixed (in a console window), so
|
||||||
these have been used for the names. But the meaning of color names in
|
these have been used for the names. But the meaning of color names in
|
||||||
|
|||||||
126
runtime/doc/tags
126
runtime/doc/tags
@@ -57,11 +57,13 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
'ari' options.txt /*'ari'*
|
'ari' options.txt /*'ari'*
|
||||||
'arshape' options.txt /*'arshape'*
|
'arshape' options.txt /*'arshape'*
|
||||||
'as' todo.txt /*'as'*
|
'as' todo.txt /*'as'*
|
||||||
|
'asd' options.txt /*'asd'*
|
||||||
'autochdir' options.txt /*'autochdir'*
|
'autochdir' options.txt /*'autochdir'*
|
||||||
'autoindent' options.txt /*'autoindent'*
|
'autoindent' options.txt /*'autoindent'*
|
||||||
'autoprint' vi_diff.txt /*'autoprint'*
|
'autoprint' vi_diff.txt /*'autoprint'*
|
||||||
'autoread' options.txt /*'autoread'*
|
'autoread' options.txt /*'autoread'*
|
||||||
'autosave' todo.txt /*'autosave'*
|
'autosave' todo.txt /*'autosave'*
|
||||||
|
'autoshelldir' options.txt /*'autoshelldir'*
|
||||||
'autowrite' options.txt /*'autowrite'*
|
'autowrite' options.txt /*'autowrite'*
|
||||||
'autowriteall' options.txt /*'autowriteall'*
|
'autowriteall' options.txt /*'autowriteall'*
|
||||||
'aw' options.txt /*'aw'*
|
'aw' options.txt /*'aw'*
|
||||||
@@ -508,10 +510,12 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
'noari' options.txt /*'noari'*
|
'noari' options.txt /*'noari'*
|
||||||
'noarshape' options.txt /*'noarshape'*
|
'noarshape' options.txt /*'noarshape'*
|
||||||
'noas' todo.txt /*'noas'*
|
'noas' todo.txt /*'noas'*
|
||||||
|
'noasd' options.txt /*'noasd'*
|
||||||
'noautochdir' options.txt /*'noautochdir'*
|
'noautochdir' options.txt /*'noautochdir'*
|
||||||
'noautoindent' options.txt /*'noautoindent'*
|
'noautoindent' options.txt /*'noautoindent'*
|
||||||
'noautoread' options.txt /*'noautoread'*
|
'noautoread' options.txt /*'noautoread'*
|
||||||
'noautosave' todo.txt /*'noautosave'*
|
'noautosave' todo.txt /*'noautosave'*
|
||||||
|
'noautoshelldir' options.txt /*'noautoshelldir'*
|
||||||
'noautowrite' options.txt /*'noautowrite'*
|
'noautowrite' options.txt /*'noautowrite'*
|
||||||
'noautowriteall' options.txt /*'noautowriteall'*
|
'noautowriteall' options.txt /*'noautowriteall'*
|
||||||
'noaw' options.txt /*'noaw'*
|
'noaw' options.txt /*'noaw'*
|
||||||
@@ -1045,6 +1049,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
't_da' term.txt /*'t_da'*
|
't_da' term.txt /*'t_da'*
|
||||||
't_db' term.txt /*'t_db'*
|
't_db' term.txt /*'t_db'*
|
||||||
't_dl' term.txt /*'t_dl'*
|
't_dl' term.txt /*'t_dl'*
|
||||||
|
't_fd' term.txt /*'t_fd'*
|
||||||
|
't_fe' term.txt /*'t_fe'*
|
||||||
't_fs' term.txt /*'t_fs'*
|
't_fs' term.txt /*'t_fs'*
|
||||||
't_k1' term.txt /*'t_k1'*
|
't_k1' term.txt /*'t_k1'*
|
||||||
't_k2' term.txt /*'t_k2'*
|
't_k2' term.txt /*'t_k2'*
|
||||||
@@ -1290,6 +1296,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
+cmdline_compl various.txt /*+cmdline_compl*
|
+cmdline_compl various.txt /*+cmdline_compl*
|
||||||
+cmdline_hist various.txt /*+cmdline_hist*
|
+cmdline_hist various.txt /*+cmdline_hist*
|
||||||
+cmdline_info various.txt /*+cmdline_info*
|
+cmdline_info various.txt /*+cmdline_info*
|
||||||
|
+cmdwin various.txt /*+cmdwin*
|
||||||
+comments various.txt /*+comments*
|
+comments various.txt /*+comments*
|
||||||
+conceal various.txt /*+conceal*
|
+conceal various.txt /*+conceal*
|
||||||
+cryptv various.txt /*+cryptv*
|
+cryptv various.txt /*+cryptv*
|
||||||
@@ -1377,6 +1384,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*
|
||||||
@@ -1952,7 +1960,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*
|
||||||
@@ -2394,6 +2404,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:ec eval.txt /*:ec*
|
:ec eval.txt /*:ec*
|
||||||
:echo eval.txt /*:echo*
|
:echo eval.txt /*:echo*
|
||||||
:echo-redraw eval.txt /*:echo-redraw*
|
:echo-redraw eval.txt /*:echo-redraw*
|
||||||
|
:echoc eval.txt /*:echoc*
|
||||||
|
:echoconsole eval.txt /*:echoconsole*
|
||||||
:echoe eval.txt /*:echoe*
|
:echoe eval.txt /*:echoe*
|
||||||
:echoerr eval.txt /*:echoerr*
|
:echoerr eval.txt /*:echoerr*
|
||||||
:echoh eval.txt /*:echoh*
|
:echoh eval.txt /*:echoh*
|
||||||
@@ -2621,6 +2633,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:left change.txt /*:left*
|
:left change.txt /*:left*
|
||||||
:lefta windows.txt /*:lefta*
|
:lefta windows.txt /*:lefta*
|
||||||
:leftabove windows.txt /*:leftabove*
|
:leftabove windows.txt /*:leftabove*
|
||||||
|
:leg vim9.txt /*:leg*
|
||||||
|
:legacy vim9.txt /*:legacy*
|
||||||
:let eval.txt /*:let*
|
:let eval.txt /*:let*
|
||||||
:let%= eval.txt /*:let%=*
|
:let%= eval.txt /*:let%=*
|
||||||
:let+= eval.txt /*:let+=*
|
:let+= eval.txt /*:let+=*
|
||||||
@@ -3112,9 +3126,11 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:sip change.txt /*:sip*
|
:sip change.txt /*:sip*
|
||||||
:sir change.txt /*:sir*
|
:sir change.txt /*:sir*
|
||||||
:sl various.txt /*:sl*
|
:sl various.txt /*:sl*
|
||||||
|
:sl! various.txt /*:sl!*
|
||||||
:sla windows.txt /*:sla*
|
:sla windows.txt /*:sla*
|
||||||
:slast windows.txt /*:slast*
|
:slast windows.txt /*:slast*
|
||||||
:sleep various.txt /*:sleep*
|
:sleep various.txt /*:sleep*
|
||||||
|
:sleep! various.txt /*:sleep!*
|
||||||
:sm change.txt /*:sm*
|
:sm change.txt /*:sm*
|
||||||
:smagic change.txt /*:smagic*
|
:smagic change.txt /*:smagic*
|
||||||
:smap map.txt /*:smap*
|
:smap map.txt /*:smap*
|
||||||
@@ -3171,7 +3187,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:st starting.txt /*:st*
|
:st starting.txt /*:st*
|
||||||
:sta windows.txt /*:sta*
|
:sta windows.txt /*:sta*
|
||||||
:stag windows.txt /*:stag*
|
:stag windows.txt /*:stag*
|
||||||
:star repeat.txt /*:star*
|
:star cmdline.txt /*:star*
|
||||||
|
:star-compatible repeat.txt /*:star-compatible*
|
||||||
:star-visual-range cmdline.txt /*:star-visual-range*
|
:star-visual-range cmdline.txt /*:star-visual-range*
|
||||||
:start insert.txt /*:start*
|
:start insert.txt /*:start*
|
||||||
:startgreplace insert.txt /*:startgreplace*
|
:startgreplace insert.txt /*:startgreplace*
|
||||||
@@ -3186,6 +3203,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:stselect tagsrch.txt /*:stselect*
|
:stselect tagsrch.txt /*:stselect*
|
||||||
:su change.txt /*:su*
|
:su change.txt /*:su*
|
||||||
:substitute change.txt /*:substitute*
|
:substitute change.txt /*:substitute*
|
||||||
|
:substitute-repeat change.txt /*:substitute-repeat*
|
||||||
:sun windows.txt /*:sun*
|
:sun windows.txt /*:sun*
|
||||||
:sunhide windows.txt /*:sunhide*
|
:sunhide windows.txt /*:sunhide*
|
||||||
:sunm map.txt /*:sunm*
|
:sunm map.txt /*:sunm*
|
||||||
@@ -3302,7 +3320,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:tabs tabpage.txt /*:tabs*
|
:tabs tabpage.txt /*:tabs*
|
||||||
:tag tagsrch.txt /*:tag*
|
:tag tagsrch.txt /*:tag*
|
||||||
:tags tagsrch.txt /*:tags*
|
:tags tagsrch.txt /*:tags*
|
||||||
:tc if_tcl.txt /*:tc*
|
:tc editing.txt /*:tc*
|
||||||
:tcd editing.txt /*:tcd*
|
:tcd editing.txt /*:tcd*
|
||||||
:tcd- editing.txt /*:tcd-*
|
:tcd- editing.txt /*:tcd-*
|
||||||
:tch editing.txt /*:tch*
|
:tch editing.txt /*:tch*
|
||||||
@@ -3397,7 +3415,9 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
|||||||
:vie editing.txt /*:vie*
|
:vie editing.txt /*:vie*
|
||||||
:view editing.txt /*:view*
|
:view editing.txt /*:view*
|
||||||
:vim quickfix.txt /*:vim*
|
:vim quickfix.txt /*:vim*
|
||||||
:vim9 repeat.txt /*:vim9*
|
:vim9 vim9.txt /*:vim9*
|
||||||
|
:vim9cmd vim9.txt /*:vim9cmd*
|
||||||
|
:vim9s repeat.txt /*:vim9s*
|
||||||
:vim9script repeat.txt /*:vim9script*
|
:vim9script repeat.txt /*:vim9script*
|
||||||
:vimgrep quickfix.txt /*:vimgrep*
|
:vimgrep quickfix.txt /*:vimgrep*
|
||||||
:vimgrepa quickfix.txt /*:vimgrepa*
|
:vimgrepa quickfix.txt /*:vimgrepa*
|
||||||
@@ -3922,6 +3942,7 @@ E1050 vim9.txt /*E1050*
|
|||||||
E107 eval.txt /*E107*
|
E107 eval.txt /*E107*
|
||||||
E108 eval.txt /*E108*
|
E108 eval.txt /*E108*
|
||||||
E109 eval.txt /*E109*
|
E109 eval.txt /*E109*
|
||||||
|
E1091 vim9.txt /*E1091*
|
||||||
E1092 vim9.txt /*E1092*
|
E1092 vim9.txt /*E1092*
|
||||||
E1094 vim9.txt /*E1094*
|
E1094 vim9.txt /*E1094*
|
||||||
E11 cmdline.txt /*E11*
|
E11 cmdline.txt /*E11*
|
||||||
@@ -3939,13 +3960,27 @@ E1136 map.txt /*E1136*
|
|||||||
E1137 map.txt /*E1137*
|
E1137 map.txt /*E1137*
|
||||||
E114 eval.txt /*E114*
|
E114 eval.txt /*E114*
|
||||||
E115 eval.txt /*E115*
|
E115 eval.txt /*E115*
|
||||||
|
E1155 autocmd.txt /*E1155*
|
||||||
E116 eval.txt /*E116*
|
E116 eval.txt /*E116*
|
||||||
E117 eval.txt /*E117*
|
E117 eval.txt /*E117*
|
||||||
E118 eval.txt /*E118*
|
E118 eval.txt /*E118*
|
||||||
|
E1187 starting.txt /*E1187*
|
||||||
|
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*
|
||||||
E124 eval.txt /*E124*
|
E124 eval.txt /*E124*
|
||||||
@@ -4028,7 +4063,6 @@ E194 message.txt /*E194*
|
|||||||
E195 starting.txt /*E195*
|
E195 starting.txt /*E195*
|
||||||
E196 various.txt /*E196*
|
E196 various.txt /*E196*
|
||||||
E197 mlang.txt /*E197*
|
E197 mlang.txt /*E197*
|
||||||
E198 options.txt /*E198*
|
|
||||||
E199 cmdline.txt /*E199*
|
E199 cmdline.txt /*E199*
|
||||||
E20 motion.txt /*E20*
|
E20 motion.txt /*E20*
|
||||||
E200 autocmd.txt /*E200*
|
E200 autocmd.txt /*E200*
|
||||||
@@ -4114,7 +4148,6 @@ E274 eval.txt /*E274*
|
|||||||
E275 textprop.txt /*E275*
|
E275 textprop.txt /*E275*
|
||||||
E276 eval.txt /*E276*
|
E276 eval.txt /*E276*
|
||||||
E277 remote.txt /*E277*
|
E277 remote.txt /*E277*
|
||||||
E278 popup.txt /*E278*
|
|
||||||
E279 terminal.txt /*E279*
|
E279 terminal.txt /*E279*
|
||||||
E28 syntax.txt /*E28*
|
E28 syntax.txt /*E28*
|
||||||
E280 if_tcl.txt /*E280*
|
E280 if_tcl.txt /*E280*
|
||||||
@@ -4180,7 +4213,6 @@ E337 gui.txt /*E337*
|
|||||||
E338 editing.txt /*E338*
|
E338 editing.txt /*E338*
|
||||||
E339 message.txt /*E339*
|
E339 message.txt /*E339*
|
||||||
E34 various.txt /*E34*
|
E34 various.txt /*E34*
|
||||||
E340 vi_diff.txt /*E340*
|
|
||||||
E341 message.txt /*E341*
|
E341 message.txt /*E341*
|
||||||
E342 message.txt /*E342*
|
E342 message.txt /*E342*
|
||||||
E343 options.txt /*E343*
|
E343 options.txt /*E343*
|
||||||
@@ -4388,7 +4420,6 @@ E534 options.txt /*E534*
|
|||||||
E535 options.txt /*E535*
|
E535 options.txt /*E535*
|
||||||
E536 options.txt /*E536*
|
E536 options.txt /*E536*
|
||||||
E537 options.txt /*E537*
|
E537 options.txt /*E537*
|
||||||
E538 options.txt /*E538*
|
|
||||||
E539 options.txt /*E539*
|
E539 options.txt /*E539*
|
||||||
E54 pattern.txt /*E54*
|
E54 pattern.txt /*E54*
|
||||||
E540 options.txt /*E540*
|
E540 options.txt /*E540*
|
||||||
@@ -5423,6 +5454,7 @@ assert_fails() testing.txt /*assert_fails()*
|
|||||||
assert_false() testing.txt /*assert_false()*
|
assert_false() testing.txt /*assert_false()*
|
||||||
assert_inrange() testing.txt /*assert_inrange()*
|
assert_inrange() testing.txt /*assert_inrange()*
|
||||||
assert_match() testing.txt /*assert_match()*
|
assert_match() testing.txt /*assert_match()*
|
||||||
|
assert_nobeep() testing.txt /*assert_nobeep()*
|
||||||
assert_notequal() testing.txt /*assert_notequal()*
|
assert_notequal() testing.txt /*assert_notequal()*
|
||||||
assert_notmatch() testing.txt /*assert_notmatch()*
|
assert_notmatch() testing.txt /*assert_notmatch()*
|
||||||
assert_report() testing.txt /*assert_report()*
|
assert_report() testing.txt /*assert_report()*
|
||||||
@@ -6131,6 +6163,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*
|
||||||
@@ -6160,6 +6196,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*
|
||||||
@@ -6172,6 +6210,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*
|
||||||
@@ -6192,6 +6231,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*
|
||||||
@@ -6351,6 +6391,7 @@ expression-commands eval.txt /*expression-commands*
|
|||||||
expression-syntax eval.txt /*expression-syntax*
|
expression-syntax eval.txt /*expression-syntax*
|
||||||
exrc starting.txt /*exrc*
|
exrc starting.txt /*exrc*
|
||||||
extend() eval.txt /*extend()*
|
extend() eval.txt /*extend()*
|
||||||
|
extendnew() eval.txt /*extendnew()*
|
||||||
extension-removal cmdline.txt /*extension-removal*
|
extension-removal cmdline.txt /*extension-removal*
|
||||||
extensions-improvements todo.txt /*extensions-improvements*
|
extensions-improvements todo.txt /*extensions-improvements*
|
||||||
f motion.txt /*f*
|
f motion.txt /*f*
|
||||||
@@ -6415,6 +6456,7 @@ fixed-7.2 version7.txt /*fixed-7.2*
|
|||||||
fixed-7.3 version7.txt /*fixed-7.3*
|
fixed-7.3 version7.txt /*fixed-7.3*
|
||||||
fixed-7.4 version7.txt /*fixed-7.4*
|
fixed-7.4 version7.txt /*fixed-7.4*
|
||||||
flatten() eval.txt /*flatten()*
|
flatten() eval.txt /*flatten()*
|
||||||
|
flattennew() eval.txt /*flattennew()*
|
||||||
flexwiki.vim syntax.txt /*flexwiki.vim*
|
flexwiki.vim syntax.txt /*flexwiki.vim*
|
||||||
float-e eval.txt /*float-e*
|
float-e eval.txt /*float-e*
|
||||||
float-functions usr_41.txt /*float-functions*
|
float-functions usr_41.txt /*float-functions*
|
||||||
@@ -6424,13 +6466,33 @@ floating-point-format eval.txt /*floating-point-format*
|
|||||||
floating-point-precision eval.txt /*floating-point-precision*
|
floating-point-precision eval.txt /*floating-point-precision*
|
||||||
floor() eval.txt /*floor()*
|
floor() eval.txt /*floor()*
|
||||||
fmod() eval.txt /*fmod()*
|
fmod() eval.txt /*fmod()*
|
||||||
|
fname-variable eval.txt /*fname-variable*
|
||||||
fname_diff-variable eval.txt /*fname_diff-variable*
|
fname_diff-variable eval.txt /*fname_diff-variable*
|
||||||
fname_in-variable eval.txt /*fname_in-variable*
|
fname_in-variable eval.txt /*fname_in-variable*
|
||||||
fname_new-variable eval.txt /*fname_new-variable*
|
fname_new-variable eval.txt /*fname_new-variable*
|
||||||
fname_out-variable eval.txt /*fname_out-variable*
|
fname_out-variable eval.txt /*fname_out-variable*
|
||||||
fnameescape() eval.txt /*fnameescape()*
|
fnameescape() eval.txt /*fnameescape()*
|
||||||
fnamemodify() eval.txt /*fnamemodify()*
|
fnamemodify() eval.txt /*fnamemodify()*
|
||||||
|
fo-1 change.txt /*fo-1*
|
||||||
|
fo-2 change.txt /*fo-2*
|
||||||
|
fo-B change.txt /*fo-B*
|
||||||
|
fo-M change.txt /*fo-M*
|
||||||
|
fo-] change.txt /*fo-]*
|
||||||
|
fo-a change.txt /*fo-a*
|
||||||
|
fo-b change.txt /*fo-b*
|
||||||
|
fo-c change.txt /*fo-c*
|
||||||
|
fo-j change.txt /*fo-j*
|
||||||
|
fo-l change.txt /*fo-l*
|
||||||
|
fo-m change.txt /*fo-m*
|
||||||
|
fo-n change.txt /*fo-n*
|
||||||
|
fo-o change.txt /*fo-o*
|
||||||
|
fo-p change.txt /*fo-p*
|
||||||
|
fo-q change.txt /*fo-q*
|
||||||
|
fo-r change.txt /*fo-r*
|
||||||
|
fo-t change.txt /*fo-t*
|
||||||
fo-table change.txt /*fo-table*
|
fo-table change.txt /*fo-table*
|
||||||
|
fo-v change.txt /*fo-v*
|
||||||
|
fo-w change.txt /*fo-w*
|
||||||
fold-behavior fold.txt /*fold-behavior*
|
fold-behavior fold.txt /*fold-behavior*
|
||||||
fold-colors fold.txt /*fold-colors*
|
fold-colors fold.txt /*fold-colors*
|
||||||
fold-commands fold.txt /*fold-commands*
|
fold-commands fold.txt /*fold-commands*
|
||||||
@@ -6519,6 +6581,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*
|
||||||
@@ -6553,6 +6616,7 @@ ft-mail.vim syntax.txt /*ft-mail.vim*
|
|||||||
ft-make-syntax syntax.txt /*ft-make-syntax*
|
ft-make-syntax syntax.txt /*ft-make-syntax*
|
||||||
ft-man-plugin filetype.txt /*ft-man-plugin*
|
ft-man-plugin filetype.txt /*ft-man-plugin*
|
||||||
ft-maple-syntax syntax.txt /*ft-maple-syntax*
|
ft-maple-syntax syntax.txt /*ft-maple-syntax*
|
||||||
|
ft-markdown-plugin filetype.txt /*ft-markdown-plugin*
|
||||||
ft-masm-syntax syntax.txt /*ft-masm-syntax*
|
ft-masm-syntax syntax.txt /*ft-masm-syntax*
|
||||||
ft-mathematica-syntax syntax.txt /*ft-mathematica-syntax*
|
ft-mathematica-syntax syntax.txt /*ft-mathematica-syntax*
|
||||||
ft-matlab-indent indent.txt /*ft-matlab-indent*
|
ft-matlab-indent indent.txt /*ft-matlab-indent*
|
||||||
@@ -6633,6 +6697,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*
|
||||||
@@ -6643,6 +6709,7 @@ ftplugin-name usr_05.txt /*ftplugin-name*
|
|||||||
ftplugin-overrule filetype.txt /*ftplugin-overrule*
|
ftplugin-overrule filetype.txt /*ftplugin-overrule*
|
||||||
ftplugin-special usr_41.txt /*ftplugin-special*
|
ftplugin-special usr_41.txt /*ftplugin-special*
|
||||||
ftplugins usr_05.txt /*ftplugins*
|
ftplugins usr_05.txt /*ftplugins*
|
||||||
|
fullcommand() eval.txt /*fullcommand()*
|
||||||
funcref() eval.txt /*funcref()*
|
funcref() eval.txt /*funcref()*
|
||||||
function() eval.txt /*function()*
|
function() eval.txt /*function()*
|
||||||
function-argument eval.txt /*function-argument*
|
function-argument eval.txt /*function-argument*
|
||||||
@@ -6652,6 +6719,7 @@ function-range-example eval.txt /*function-range-example*
|
|||||||
function-search-undo eval.txt /*function-search-undo*
|
function-search-undo eval.txt /*function-search-undo*
|
||||||
function_key intro.txt /*function_key*
|
function_key intro.txt /*function_key*
|
||||||
functions eval.txt /*functions*
|
functions eval.txt /*functions*
|
||||||
|
fuzzy-match pattern.txt /*fuzzy-match*
|
||||||
fvwm.vim syntax.txt /*fvwm.vim*
|
fvwm.vim syntax.txt /*fvwm.vim*
|
||||||
fvwm2rc syntax.txt /*fvwm2rc*
|
fvwm2rc syntax.txt /*fvwm2rc*
|
||||||
fvwmrc syntax.txt /*fvwmrc*
|
fvwmrc syntax.txt /*fvwmrc*
|
||||||
@@ -6957,6 +7025,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()*
|
||||||
@@ -7473,6 +7542,7 @@ info-message starting.txt /*info-message*
|
|||||||
inform.vim syntax.txt /*inform.vim*
|
inform.vim syntax.txt /*inform.vim*
|
||||||
informix ft_sql.txt /*informix*
|
informix ft_sql.txt /*informix*
|
||||||
initialization starting.txt /*initialization*
|
initialization starting.txt /*initialization*
|
||||||
|
inline-function vim9.txt /*inline-function*
|
||||||
input() eval.txt /*input()*
|
input() eval.txt /*input()*
|
||||||
inputdialog() eval.txt /*inputdialog()*
|
inputdialog() eval.txt /*inputdialog()*
|
||||||
inputlist() eval.txt /*inputlist()*
|
inputlist() eval.txt /*inputlist()*
|
||||||
@@ -7613,6 +7683,7 @@ lc_time-variable eval.txt /*lc_time-variable*
|
|||||||
lcs-conceal options.txt /*lcs-conceal*
|
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-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*
|
||||||
@@ -7641,6 +7712,7 @@ linewise-visual visual.txt /*linewise-visual*
|
|||||||
lisp.vim syntax.txt /*lisp.vim*
|
lisp.vim syntax.txt /*lisp.vim*
|
||||||
lispindent() eval.txt /*lispindent()*
|
lispindent() eval.txt /*lispindent()*
|
||||||
list eval.txt /*list*
|
list eval.txt /*list*
|
||||||
|
list-concatenation eval.txt /*list-concatenation*
|
||||||
list-functions usr_41.txt /*list-functions*
|
list-functions usr_41.txt /*list-functions*
|
||||||
list-identity eval.txt /*list-identity*
|
list-identity eval.txt /*list-identity*
|
||||||
list-index eval.txt /*list-index*
|
list-index eval.txt /*list-index*
|
||||||
@@ -7748,6 +7820,7 @@ map-return map.txt /*map-return*
|
|||||||
map-self-destroy tips.txt /*map-self-destroy*
|
map-self-destroy tips.txt /*map-self-destroy*
|
||||||
map-space_in_lhs map.txt /*map-space_in_lhs*
|
map-space_in_lhs map.txt /*map-space_in_lhs*
|
||||||
map-space_in_rhs map.txt /*map-space_in_rhs*
|
map-space_in_rhs map.txt /*map-space_in_rhs*
|
||||||
|
map-table map.txt /*map-table*
|
||||||
map-typing map.txt /*map-typing*
|
map-typing map.txt /*map-typing*
|
||||||
map-which-keys map.txt /*map-which-keys*
|
map-which-keys map.txt /*map-which-keys*
|
||||||
map.txt map.txt /*map.txt*
|
map.txt map.txt /*map.txt*
|
||||||
@@ -7854,6 +7927,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*
|
||||||
@@ -8270,6 +8344,8 @@ null vim9.txt /*null*
|
|||||||
null-variable eval.txt /*null-variable*
|
null-variable eval.txt /*null-variable*
|
||||||
number_relativenumber options.txt /*number_relativenumber*
|
number_relativenumber options.txt /*number_relativenumber*
|
||||||
numbered-function eval.txt /*numbered-function*
|
numbered-function eval.txt /*numbered-function*
|
||||||
|
numbermax-variable eval.txt /*numbermax-variable*
|
||||||
|
numbermin-variable eval.txt /*numbermin-variable*
|
||||||
numbersize-variable eval.txt /*numbersize-variable*
|
numbersize-variable eval.txt /*numbersize-variable*
|
||||||
o insert.txt /*o*
|
o insert.txt /*o*
|
||||||
o_CTRL-V motion.txt /*o_CTRL-V*
|
o_CTRL-V motion.txt /*o_CTRL-V*
|
||||||
@@ -8299,6 +8375,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*
|
||||||
@@ -8352,6 +8429,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*
|
||||||
@@ -8544,6 +8622,11 @@ prop_type_change() textprop.txt /*prop_type_change()*
|
|||||||
prop_type_delete() textprop.txt /*prop_type_delete()*
|
prop_type_delete() textprop.txt /*prop_type_delete()*
|
||||||
prop_type_get() textprop.txt /*prop_type_get()*
|
prop_type_get() textprop.txt /*prop_type_get()*
|
||||||
prop_type_list() textprop.txt /*prop_type_list()*
|
prop_type_list() textprop.txt /*prop_type_list()*
|
||||||
|
ps1-about ft_ps1.txt /*ps1-about*
|
||||||
|
ps1-compiler ft_ps1.txt /*ps1-compiler*
|
||||||
|
ps1-folding ft_ps1.txt /*ps1-folding*
|
||||||
|
ps1-keyword ft_ps1.txt /*ps1-keyword*
|
||||||
|
ps1-syntax ft_ps1.txt /*ps1-syntax*
|
||||||
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*
|
||||||
@@ -8671,6 +8754,7 @@ quotestar gui.txt /*quotestar*
|
|||||||
quote~ change.txt /*quote~*
|
quote~ change.txt /*quote~*
|
||||||
r change.txt /*r*
|
r change.txt /*r*
|
||||||
r.vim syntax.txt /*r.vim*
|
r.vim syntax.txt /*r.vim*
|
||||||
|
raku-unicode ft_raku.txt /*raku-unicode*
|
||||||
rand() eval.txt /*rand()*
|
rand() eval.txt /*rand()*
|
||||||
random eval.txt /*random*
|
random eval.txt /*random*
|
||||||
range() eval.txt /*range()*
|
range() eval.txt /*range()*
|
||||||
@@ -8680,6 +8764,7 @@ read-in-close-cb channel.txt /*read-in-close-cb*
|
|||||||
read-messages insert.txt /*read-messages*
|
read-messages insert.txt /*read-messages*
|
||||||
read-only-share editing.txt /*read-only-share*
|
read-only-share editing.txt /*read-only-share*
|
||||||
read-stdin version5.txt /*read-stdin*
|
read-stdin version5.txt /*read-stdin*
|
||||||
|
readblob() eval.txt /*readblob()*
|
||||||
readdir() eval.txt /*readdir()*
|
readdir() eval.txt /*readdir()*
|
||||||
readdirex() eval.txt /*readdirex()*
|
readdirex() eval.txt /*readdirex()*
|
||||||
readfile() eval.txt /*readfile()*
|
readfile() eval.txt /*readfile()*
|
||||||
@@ -8945,6 +9030,7 @@ sinh() eval.txt /*sinh()*
|
|||||||
skeleton autocmd.txt /*skeleton*
|
skeleton autocmd.txt /*skeleton*
|
||||||
skip_defaults_vim starting.txt /*skip_defaults_vim*
|
skip_defaults_vim starting.txt /*skip_defaults_vim*
|
||||||
slice eval.txt /*slice*
|
slice eval.txt /*slice*
|
||||||
|
slice() eval.txt /*slice()*
|
||||||
slow-fast-terminal term.txt /*slow-fast-terminal*
|
slow-fast-terminal term.txt /*slow-fast-terminal*
|
||||||
slow-start starting.txt /*slow-start*
|
slow-start starting.txt /*slow-start*
|
||||||
slow-terminal term.txt /*slow-terminal*
|
slow-terminal term.txt /*slow-terminal*
|
||||||
@@ -9130,6 +9216,7 @@ str2float() eval.txt /*str2float()*
|
|||||||
str2list() eval.txt /*str2list()*
|
str2list() eval.txt /*str2list()*
|
||||||
str2nr() eval.txt /*str2nr()*
|
str2nr() eval.txt /*str2nr()*
|
||||||
strcasestr() eval.txt /*strcasestr()*
|
strcasestr() eval.txt /*strcasestr()*
|
||||||
|
strcharlen() eval.txt /*strcharlen()*
|
||||||
strcharpart() eval.txt /*strcharpart()*
|
strcharpart() eval.txt /*strcharpart()*
|
||||||
strchars() eval.txt /*strchars()*
|
strchars() eval.txt /*strchars()*
|
||||||
strchr() eval.txt /*strchr()*
|
strchr() eval.txt /*strchr()*
|
||||||
@@ -9340,6 +9427,8 @@ t_f6 version4.txt /*t_f6*
|
|||||||
t_f7 version4.txt /*t_f7*
|
t_f7 version4.txt /*t_f7*
|
||||||
t_f8 version4.txt /*t_f8*
|
t_f8 version4.txt /*t_f8*
|
||||||
t_f9 version4.txt /*t_f9*
|
t_f9 version4.txt /*t_f9*
|
||||||
|
t_fd term.txt /*t_fd*
|
||||||
|
t_fe term.txt /*t_fe*
|
||||||
t_float-variable eval.txt /*t_float-variable*
|
t_float-variable eval.txt /*t_float-variable*
|
||||||
t_fs term.txt /*t_fs*
|
t_fs term.txt /*t_fs*
|
||||||
t_func-variable eval.txt /*t_func-variable*
|
t_func-variable eval.txt /*t_func-variable*
|
||||||
@@ -9612,6 +9701,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()*
|
||||||
@@ -9683,6 +9774,7 @@ timestamp editing.txt /*timestamp*
|
|||||||
timestamps editing.txt /*timestamps*
|
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*
|
||||||
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*
|
||||||
@@ -9714,6 +9806,7 @@ type-inference vim9.txt /*type-inference*
|
|||||||
type-mistakes tips.txt /*type-mistakes*
|
type-mistakes tips.txt /*type-mistakes*
|
||||||
typecorr-settings usr_41.txt /*typecorr-settings*
|
typecorr-settings usr_41.txt /*typecorr-settings*
|
||||||
typecorr.txt usr_41.txt /*typecorr.txt*
|
typecorr.txt usr_41.txt /*typecorr.txt*
|
||||||
|
typename() eval.txt /*typename()*
|
||||||
u undo.txt /*u*
|
u undo.txt /*u*
|
||||||
uganda uganda.txt /*uganda*
|
uganda uganda.txt /*uganda*
|
||||||
uganda.txt uganda.txt /*uganda.txt*
|
uganda.txt uganda.txt /*uganda.txt*
|
||||||
@@ -9821,6 +9914,7 @@ v:exiting eval.txt /*v:exiting*
|
|||||||
v:false eval.txt /*v:false*
|
v:false eval.txt /*v:false*
|
||||||
v:fcs_choice eval.txt /*v:fcs_choice*
|
v:fcs_choice eval.txt /*v:fcs_choice*
|
||||||
v:fcs_reason eval.txt /*v:fcs_reason*
|
v:fcs_reason eval.txt /*v:fcs_reason*
|
||||||
|
v:fname eval.txt /*v:fname*
|
||||||
v:fname_diff eval.txt /*v:fname_diff*
|
v:fname_diff eval.txt /*v:fname_diff*
|
||||||
v:fname_in eval.txt /*v:fname_in*
|
v:fname_in eval.txt /*v:fname_in*
|
||||||
v:fname_new eval.txt /*v:fname_new*
|
v:fname_new eval.txt /*v:fname_new*
|
||||||
@@ -9841,6 +9935,8 @@ v:mouse_win eval.txt /*v:mouse_win*
|
|||||||
v:mouse_winid eval.txt /*v:mouse_winid*
|
v:mouse_winid eval.txt /*v:mouse_winid*
|
||||||
v:none eval.txt /*v:none*
|
v:none eval.txt /*v:none*
|
||||||
v:null eval.txt /*v:null*
|
v:null eval.txt /*v:null*
|
||||||
|
v:numbermax eval.txt /*v:numbermax*
|
||||||
|
v:numbermin eval.txt /*v:numbermin*
|
||||||
v:numbersize eval.txt /*v:numbersize*
|
v:numbersize eval.txt /*v:numbersize*
|
||||||
v:oldfiles eval.txt /*v:oldfiles*
|
v:oldfiles eval.txt /*v:oldfiles*
|
||||||
v:operator eval.txt /*v:operator*
|
v:operator eval.txt /*v:operator*
|
||||||
@@ -10000,6 +10096,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*
|
||||||
@@ -10069,11 +10166,13 @@ 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-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*
|
||||||
@@ -10083,20 +10182,28 @@ 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-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-gotchas vim9.txt /*vim9-gotchas*
|
vim9-gotchas vim9.txt /*vim9-gotchas*
|
||||||
|
vim9-ignored-argument vim9.txt /*vim9-ignored-argument*
|
||||||
vim9-import vim9.txt /*vim9-import*
|
vim9-import vim9.txt /*vim9-import*
|
||||||
|
vim9-lambda vim9.txt /*vim9-lambda*
|
||||||
|
vim9-lambda-arguments vim9.txt /*vim9-lambda-arguments*
|
||||||
|
vim9-mix vim9.txt /*vim9-mix*
|
||||||
vim9-namespace vim9.txt /*vim9-namespace*
|
vim9-namespace vim9.txt /*vim9-namespace*
|
||||||
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*
|
||||||
vim9-script-intro usr_46.txt /*vim9-script-intro*
|
vim9-script-intro usr_46.txt /*vim9-script-intro*
|
||||||
vim9-types vim9.txt /*vim9-types*
|
vim9-types vim9.txt /*vim9-types*
|
||||||
|
vim9-unpack-ignore vim9.txt /*vim9-unpack-ignore*
|
||||||
vim9-user-command vim9.txt /*vim9-user-command*
|
vim9-user-command vim9.txt /*vim9-user-command*
|
||||||
|
vim9-variable-arguments vim9.txt /*vim9-variable-arguments*
|
||||||
vim9.txt vim9.txt /*vim9.txt*
|
vim9.txt vim9.txt /*vim9.txt*
|
||||||
vim9script vim9.txt /*vim9script*
|
vim9script vim9.txt /*vim9script*
|
||||||
vim: options.txt /*vim:*
|
vim: options.txt /*vim:*
|
||||||
@@ -10205,6 +10312,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*
|
||||||
@@ -10314,6 +10422,7 @@ xterm-command-server term.txt /*xterm-command-server*
|
|||||||
xterm-copy-paste term.txt /*xterm-copy-paste*
|
xterm-copy-paste term.txt /*xterm-copy-paste*
|
||||||
xterm-cursor-keys term.txt /*xterm-cursor-keys*
|
xterm-cursor-keys term.txt /*xterm-cursor-keys*
|
||||||
xterm-end-home-keys term.txt /*xterm-end-home-keys*
|
xterm-end-home-keys term.txt /*xterm-end-home-keys*
|
||||||
|
xterm-focus-event term.txt /*xterm-focus-event*
|
||||||
xterm-function-keys term.txt /*xterm-function-keys*
|
xterm-function-keys term.txt /*xterm-function-keys*
|
||||||
xterm-modifier-keys term.txt /*xterm-modifier-keys*
|
xterm-modifier-keys term.txt /*xterm-modifier-keys*
|
||||||
xterm-mouse options.txt /*xterm-mouse*
|
xterm-mouse options.txt /*xterm-mouse*
|
||||||
@@ -10359,6 +10468,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*
|
||||||
@@ -10386,6 +10496,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*
|
||||||
@@ -10397,6 +10508,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}*
|
||||||
|
|||||||
@@ -888,19 +888,25 @@ like |CTRL-]|.
|
|||||||
|
|
||||||
The function used for generating the taglist is specified by setting the
|
The function used for generating the taglist is specified by setting the
|
||||||
'tagfunc' option. The function will be called with three arguments:
|
'tagfunc' option. The function will be called with three arguments:
|
||||||
a:pattern The tag identifier used during the tag search.
|
a:pattern The tag identifier or pattern used during the tag search.
|
||||||
a:flags List of flags to control the function behavior.
|
a:flags String containing flags to control the function behavior.
|
||||||
a:info Dict containing the following entries:
|
a:info Dict containing the following entries:
|
||||||
buf_ffname Full filename which can be used for priority.
|
buf_ffname Full filename which can be used for priority.
|
||||||
user_data Custom data String, if stored in the tag
|
user_data Custom data String, if stored in the tag
|
||||||
stack previously by tagfunc.
|
stack previously by tagfunc.
|
||||||
|
|
||||||
Currently two flags may be passed to the tag function:
|
Currently up to three flags may be passed to the tag function:
|
||||||
'c' The function was invoked by a normal command being processed
|
'c' The function was invoked by a normal command being processed
|
||||||
(mnemonic: the tag function may use the context around the
|
(mnemonic: the tag function may use the context around the
|
||||||
cursor to perform a better job of generating the tag list.)
|
cursor to perform a better job of generating the tag list.)
|
||||||
'i' In Insert mode, the user was completing a tag (with
|
'i' In Insert mode, the user was completing a tag (with
|
||||||
|i_CTRL-X_CTRL-]|).
|
|i_CTRL-X_CTRL-]| or 'completeopt' contains `t`).
|
||||||
|
'r' The first argument to tagfunc should be interpreted as a
|
||||||
|
|pattern| (see |tag-regexp|), such as when using: >
|
||||||
|
:tag /pat
|
||||||
|
< It is also given when completing in insert mode.
|
||||||
|
If this flag is not present, the argument is usually taken
|
||||||
|
literally as the full tag name.
|
||||||
|
|
||||||
Note that when 'tagfunc' is set, the priority of the tags described in
|
Note that when 'tagfunc' is set, the priority of the tags described in
|
||||||
|tag-priority| does not apply. Instead, the priority is exactly as the
|
|tag-priority| does not apply. Instead, the priority is exactly as the
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*term.txt* For Vim version 8.2. Last change: 2020 Dec 29
|
*term.txt* For Vim version 8.2. Last change: 2021 Jan 14
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -373,9 +373,9 @@ 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_TI* *'t_TI'*
|
t_fe enable focus-event tracking *t_fe* *'t_fe'*
|
||||||
|xterm-focus-event|
|
|xterm-focus-event|
|
||||||
t_fe enable focus-event tracking *t_TI* *'t_TI'*
|
t_fd disable focus-event tracking *t_fd* *'t_fd'*
|
||||||
|xterm-focus-event|
|
|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
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*terminal.txt* For Vim version 8.2. Last change: 2021 Jan 04
|
*terminal.txt* For Vim version 8.2. Last change: 2021 Feb 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -126,11 +126,28 @@ After opening the terminal window and setting 'buftype' to "terminal" the
|
|||||||
|TerminalWinOpen| autocommand event is triggered. This makes it possible to set
|
|TerminalWinOpen| autocommand event is triggered. This makes it possible to set
|
||||||
options specifically for the terminal window and buffer. Example: >
|
options specifically for the terminal window and buffer. Example: >
|
||||||
au TerminalWinOpen * setlocal bufhidden=hide
|
au TerminalWinOpen * setlocal bufhidden=hide
|
||||||
|
This only works properly if the terminal is not hidden.
|
||||||
|
|
||||||
There is also the |TerminalOpen| event, but this may be triggered for a hidden
|
For both hidden and non-hidden terminals this works, both for buffer-local and
|
||||||
terminal, and the current window and buffer may not be for the new terminal.
|
window-local options: >
|
||||||
|
au TerminalWinOpen,BufWinEnter * if &buftype == 'terminal'
|
||||||
|
\ | setlocal bufhidden=hide colorcolumn=123
|
||||||
|
\ | endif
|
||||||
|
Note that for a hidden terminal the options are not set until the terminal is
|
||||||
|
no longer hidden.
|
||||||
|
|
||||||
|
There is also the |TerminalOpen| event. Keep in mind this may be triggered
|
||||||
|
for a hidden terminal, then the current window and buffer are not that of the
|
||||||
|
new terminal.
|
||||||
You need to use <abuf>, which is set to the terminal buffer. Example: >
|
You need to use <abuf>, which is set to the terminal buffer. Example: >
|
||||||
au TerminalOpen * call setbufvar(+expand('<abuf>'), '&colorcolumn', 123)
|
au TerminalOpen * call setbufvar(expand('<abuf>')->str2nr(),
|
||||||
|
\ '&termwinscroll', 1000)
|
||||||
|
For a window-local option, you need to delay setting the option until the
|
||||||
|
terminal window has been created (this only works for a hidden terminal): >
|
||||||
|
au TerminalOpen * exe printf(
|
||||||
|
\ 'au BufWinEnter <buffer=%d> ++once setlocal colorcolumn=%d',
|
||||||
|
\ expand('<abuf>')->str2nr(), 123)
|
||||||
|
For a non-hidden terminal use |TerminalWinOpen|.
|
||||||
|
|
||||||
Mouse events (click and drag) are passed to the terminal. Mouse move events
|
Mouse events (click and drag) are passed to the terminal. Mouse move events
|
||||||
are only passed when Vim itself is receiving them. For a terminal that is
|
are only passed when Vim itself is receiving them. For a terminal that is
|
||||||
@@ -717,6 +734,8 @@ term_scrape({buf}, {row}) *term_scrape()*
|
|||||||
"attr" attributes of the cell, use |term_getattr()|
|
"attr" attributes of the cell, use |term_getattr()|
|
||||||
to get the individual flags
|
to get the individual flags
|
||||||
"width" cell width: 1 or 2
|
"width" cell width: 1 or 2
|
||||||
|
For a double-width cell there is one item, thus the list can
|
||||||
|
be shorter than the width of the terminal.
|
||||||
|
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetBufnr()->term_scrape(row)
|
GetBufnr()->term_scrape(row)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*testing.txt* For Vim version 8.2. Last change: 2020 Dec 12
|
*testing.txt* For Vim version 8.2. Last change: 2021 Jul 07
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -78,6 +78,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
|
||||||
|
|drag-n-drop| 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
|
||||||
@@ -168,6 +208,7 @@ test_override({name}, {val}) *test_override()*
|
|||||||
wait time of up to 3 seconds for messages
|
wait time of up to 3 seconds for messages
|
||||||
term_props reset all terminal properties when the version
|
term_props reset all terminal properties when the version
|
||||||
string is detected
|
string is detected
|
||||||
|
uptime overrules sysinfo.uptime
|
||||||
ALL clear all overrides ({val} is not used)
|
ALL clear all overrides ({val} is not used)
|
||||||
|
|
||||||
"starting" is to be used when a test should behave like
|
"starting" is to be used when a test should behave like
|
||||||
@@ -242,7 +283,8 @@ test_srand_seed([seed]) *test_srand_seed()*
|
|||||||
assert_beeps({cmd}) *assert_beeps()*
|
assert_beeps({cmd}) *assert_beeps()*
|
||||||
Run {cmd} and add an error message to |v:errors| if it does
|
Run {cmd} and add an error message to |v:errors| if it does
|
||||||
NOT produce a beep or visual bell.
|
NOT produce a beep or visual bell.
|
||||||
Also see |assert_fails()| and |assert-return|.
|
Also see |assert_fails()|, |assert_nobeep()| and
|
||||||
|
|assert-return|.
|
||||||
|
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
GetCmd()->assert_beeps()
|
GetCmd()->assert_beeps()
|
||||||
@@ -375,6 +417,14 @@ assert_match({pattern}, {actual} [, {msg}])
|
|||||||
|
|
||||||
Can also be used as a |method|: >
|
Can also be used as a |method|: >
|
||||||
getFile()->assert_match('foo.*')
|
getFile()->assert_match('foo.*')
|
||||||
|
<
|
||||||
|
assert_nobeep({cmd}) *assert_nobeep()*
|
||||||
|
Run {cmd} and add an error message to |v:errors| if it
|
||||||
|
produces a beep or visual bell.
|
||||||
|
Also see |assert_beeps()|.
|
||||||
|
|
||||||
|
Can also be used as a |method|: >
|
||||||
|
GetCmd()->assert_nobeep()
|
||||||
<
|
<
|
||||||
*assert_notequal()*
|
*assert_notequal()*
|
||||||
assert_notequal({expected}, {actual} [, {msg}])
|
assert_notequal({expected}, {actual} [, {msg}])
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*textprop.txt* For Vim version 8.2. Last change: 2020 Oct 14
|
*textprop.txt* For Vim version 8.2. Last change: 2021 May 26
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -126,7 +126,7 @@ prop_add({lnum}, {col}, {props})
|
|||||||
length length of text in bytes, can only be used
|
length length of text in bytes, can only be used
|
||||||
for a property that does not continue in
|
for a property that does not continue in
|
||||||
another line; can be zero
|
another line; can be zero
|
||||||
end_lnum line number for the end of text
|
end_lnum line number for the end of text (inclusive)
|
||||||
end_col column just after the text; not used when
|
end_col column just after the text; not used when
|
||||||
"length" is present; when {col} and "end_col"
|
"length" is present; when {col} and "end_col"
|
||||||
are equal, and "end_lnum" is omitted or equal
|
are equal, and "end_lnum" is omitted or equal
|
||||||
@@ -175,6 +175,7 @@ prop_find({props} [, {direction}])
|
|||||||
Search for a text property as specified with {props}:
|
Search for a text property as specified with {props}:
|
||||||
id property with this ID
|
id property with this ID
|
||||||
type property with this type name
|
type property with this type name
|
||||||
|
both "id" and "type" must both match
|
||||||
bufnr buffer to search in; when present a
|
bufnr buffer to search in; when present a
|
||||||
start position with "lnum" and "col"
|
start position with "lnum" and "col"
|
||||||
must be given; when omitted the
|
must be given; when omitted the
|
||||||
@@ -187,6 +188,7 @@ prop_find({props} [, {direction}])
|
|||||||
skipstart do not look for a match at the start
|
skipstart do not look for a match at the start
|
||||||
position
|
position
|
||||||
|
|
||||||
|
A property matches when either "id" or "type" matches.
|
||||||
{direction} can be "f" for forward and "b" for backward. When
|
{direction} can be "f" for forward and "b" for backward. When
|
||||||
omitted forward search is performed.
|
omitted forward search is performed.
|
||||||
|
|
||||||
@@ -209,6 +211,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
|
||||||
|
|
||||||
@@ -226,7 +230,8 @@ prop_remove({props} [, {lnum} [, {lnum-end}]])
|
|||||||
{lnum-end} is given, remove matching text properties from line
|
{lnum-end} is given, remove matching text properties from line
|
||||||
{lnum} to {lnum-end} (inclusive).
|
{lnum} to {lnum-end} (inclusive).
|
||||||
When {lnum} is omitted remove matching text properties from
|
When {lnum} is omitted remove matching text properties from
|
||||||
all lines.
|
all lines (this requires going over all lines, thus will be a
|
||||||
|
bit slow for a buffer with many lines).
|
||||||
|
|
||||||
{props} is a dictionary with these fields:
|
{props} is a dictionary with these fields:
|
||||||
id remove text properties with this ID
|
id remove text properties with this ID
|
||||||
@@ -258,8 +263,8 @@ prop_type_add({name}, {props}) *prop_type_add()* *E969* *E970*
|
|||||||
properties the one with the highest priority
|
properties the one with the highest priority
|
||||||
will be used; negative values can be used, the
|
will be used; negative values can be used, the
|
||||||
default priority is zero
|
default priority is zero
|
||||||
combine when TRUE combine the highlight with any
|
combine when omitted or TRUE combine the highlight
|
||||||
syntax highlight; when omitted or FALSE syntax
|
with any syntax highlight; when FALSE syntax
|
||||||
highlight will not be used
|
highlight will not be used
|
||||||
start_incl when TRUE inserts at the start position will
|
start_incl when TRUE inserts at the start position will
|
||||||
be included in the text property
|
be included in the text property
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
*usr_02.txt* For Vim version 8.2. Last change: 2019 Nov 21
|
*usr_02.txt* For Vim version 8.2. Last change: 2021 Apr 24
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -43,7 +43,7 @@ like:
|
|||||||
|~ |
|
|~ |
|
||||||
|"file.txt" [New file] |
|
|"file.txt" [New file] |
|
||||||
+---------------------------------------+
|
+---------------------------------------+
|
||||||
('#" is the cursor position.)
|
('#' is the cursor position.)
|
||||||
|
|
||||||
The tilde (~) lines indicate lines not in the file. In other words, when Vim
|
The tilde (~) lines indicate lines not in the file. In other words, when Vim
|
||||||
runs out of file to display, it displays tilde lines. At the bottom of the
|
runs out of file to display, it displays tilde lines. At the bottom of the
|
||||||
@@ -532,7 +532,7 @@ Summary: *help-summary* >
|
|||||||
< for the corresponding flag of the 'cpoptions' settings, substitute <letter>
|
< for the corresponding flag of the 'cpoptions' settings, substitute <letter>
|
||||||
by a specific flag, e.g.: >
|
by a specific flag, e.g.: >
|
||||||
:help cpo-;
|
:help cpo-;
|
||||||
< And for the guioption flags: >
|
< And for the 'guioptions' flags: >
|
||||||
:help go-<letter>
|
:help go-<letter>
|
||||||
|
|
||||||
4) Normal mode commands do not have a prefix. To go to the help page for the
|
4) Normal mode commands do not have a prefix. To go to the help page for the
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_04.txt* For Vim version 8.2. Last change: 2019 Nov 21
|
*usr_04.txt* For Vim version 8.2. Last change: 2021 Feb 22
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -464,9 +464,9 @@ of characters to replace. It will not continue on the next line.
|
|||||||
|
|
||||||
You can switch between Insert mode and Replace mode with the <Insert> key.
|
You can switch between Insert mode and Replace mode with the <Insert> key.
|
||||||
|
|
||||||
When you use <BS> (backspace) to make correction, you will notice that the
|
When you use <BS> (backspace) to make a correction, you will notice that the
|
||||||
old text is put back. Thus it works like an undo command for the last typed
|
old text is put back. Thus it works like an undo command for the previously
|
||||||
character.
|
typed character.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
*04.10* Conclusion
|
*04.10* Conclusion
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_08.txt* For Vim version 8.2. Last change: 2017 Aug 11
|
*usr_08.txt* For Vim version 8.2. Last change: 2021 May 20
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -235,7 +235,7 @@ windows like this:
|
|||||||
+----------------------------------+
|
+----------------------------------+
|
||||||
|
|
||||||
Clearly the last one should be at the top. Go to that window (using CTRL-W w)
|
Clearly the last one should be at the top. Go to that window (using CTRL-W w)
|
||||||
and the type this command: >
|
and then type this command: >
|
||||||
|
|
||||||
CTRL-W K
|
CTRL-W K
|
||||||
|
|
||||||
|
|||||||
@@ -113,7 +113,7 @@ when the 'wrap' option has been reset (more about that later).
|
|||||||
|
|
||||||
When there are vertically split windows, only the windows on the right side
|
When there are vertically split windows, only the windows on the right side
|
||||||
will have a scrollbar. However, when you move the cursor to a window on the
|
will have a scrollbar. However, when you move the cursor to a window on the
|
||||||
left, it will be this one the that scrollbar controls. This takes a bit of
|
left, it will be this one that the scrollbar controls. This takes a bit of
|
||||||
time to get used to.
|
time to get used to.
|
||||||
When you work with vertically split windows, consider adding a scrollbar on
|
When you work with vertically split windows, consider adding a scrollbar on
|
||||||
the left. This can be done with a menu item, or with the 'guioptions' option:
|
the left. This can be done with a menu item, or with the 'guioptions' option:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_12.txt* For Vim version 8.2. Last change: 2017 Aug 11
|
*usr_12.txt* For Vim version 8.2. Last change: 2021 Apr 19
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -180,14 +180,14 @@ after it. That way you don't have this problem again.
|
|||||||
The |:global| command can be combined with the |:move| command to move all the
|
The |:global| command can be combined with the |:move| command to move all the
|
||||||
lines before the first line, resulting in a reversed file. The command is: >
|
lines before the first line, resulting in a reversed file. The command is: >
|
||||||
|
|
||||||
:global/^/m 0
|
:global/^/move 0
|
||||||
|
|
||||||
Abbreviated: >
|
Abbreviated: >
|
||||||
|
|
||||||
:g/^/m 0
|
:g/^/m 0
|
||||||
|
|
||||||
The "^" regular expression matches the beginning of the line (even if the line
|
The "^" regular expression matches the beginning of the line (even if the line
|
||||||
is blank). The |:move| command moves the matching line to after the mythical
|
is blank). The |:move| command moves the matching line to after the imaginary
|
||||||
zeroth line, so the current matching line becomes the first line of the file.
|
zeroth line, so the current matching line becomes the first line of the file.
|
||||||
As the |:global| command is not confused by the changing line numbering,
|
As the |:global| command is not confused by the changing line numbering,
|
||||||
|:global| proceeds to match all remaining lines of the file and puts each as
|
|:global| proceeds to match all remaining lines of the file and puts each as
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_41.txt* For Vim version 8.2. Last change: 2021 Jan 08
|
*usr_41.txt* For Vim version 8.2. Last change: 2021 Jul 19
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -115,12 +115,20 @@ if you are impatient.
|
|||||||
|
|
||||||
FOUR KINDS OF NUMBERS
|
FOUR KINDS OF NUMBERS
|
||||||
|
|
||||||
Numbers can be decimal, hexadecimal, octal or binary. A hexadecimal number
|
Numbers can be decimal, hexadecimal, octal or binary.
|
||||||
starts with "0x" or "0X". For example "0x1f" is decimal 31. An octal number
|
|
||||||
starts with a zero. "017" is decimal 15. A binary number starts with "0b" or
|
A hexadecimal number starts with "0x" or "0X". For example "0x1f" is decimal
|
||||||
"0B". For example "0b101" is decimal 5. Careful: don't put a zero before a
|
31.
|
||||||
decimal number, it will be interpreted as an octal number!
|
|
||||||
The ":echo" command always prints decimal numbers. Example: >
|
An octal number starts with "0o", "0O" or a zero and another digit. "0o17" is
|
||||||
|
decimal 15. Using just a zero prefix is not supported in Vim9 script.
|
||||||
|
|
||||||
|
A binary number starts with "0b" or "0B". For example "0b101" is decimal 5.
|
||||||
|
|
||||||
|
A decimal number is just digits. Careful: don't put a zero before a decimal
|
||||||
|
number, it will be interpreted as an octal number in legacy script!
|
||||||
|
|
||||||
|
The ":echo" command always prints decimal numbers. Example: >
|
||||||
|
|
||||||
:echo 0x7f 0o36
|
:echo 0x7f 0o36
|
||||||
< 127 30 ~
|
< 127 30 ~
|
||||||
@@ -611,7 +619,8 @@ String manipulation: *string-functions*
|
|||||||
stridx() first index of a short string in a long string
|
stridx() first index of a short string in a long string
|
||||||
strridx() last index of a short string in a long string
|
strridx() last index of a short string in a long string
|
||||||
strlen() length of a string in bytes
|
strlen() length of a string in bytes
|
||||||
strchars() length of a string in characters
|
strcharlen() length of a string in characters
|
||||||
|
strchars() number of characters in a string
|
||||||
strwidth() size of string when displayed
|
strwidth() size of string when displayed
|
||||||
strdisplaywidth() size of string when displayed, deals with tabs
|
strdisplaywidth() size of string when displayed, deals with tabs
|
||||||
setcellwidths() set character cell width overrides
|
setcellwidths() set character cell width overrides
|
||||||
@@ -665,6 +674,7 @@ List manipulation: *list-functions*
|
|||||||
count() count number of times a value appears in a List
|
count() count number of times a value appears in a List
|
||||||
repeat() repeat a List multiple times
|
repeat() repeat a List multiple times
|
||||||
flatten() flatten a List
|
flatten() flatten a List
|
||||||
|
flattennew() flatten a copy of a List
|
||||||
|
|
||||||
Dictionary manipulation: *dict-functions*
|
Dictionary manipulation: *dict-functions*
|
||||||
get() get an entry without an error for a wrong key
|
get() get an entry without an error for a wrong key
|
||||||
@@ -882,6 +892,7 @@ Command line: *command-line-functions*
|
|||||||
getcmdtype() return the current command-line type
|
getcmdtype() return the current command-line type
|
||||||
getcmdwintype() return the current command-line window type
|
getcmdwintype() return the current command-line window type
|
||||||
getcompletion() list of command-line completion matches
|
getcompletion() list of command-line completion matches
|
||||||
|
fullcommand() get full command name
|
||||||
|
|
||||||
Quickfix and location lists: *quickfix-functions*
|
Quickfix and location lists: *quickfix-functions*
|
||||||
getqflist() list of quickfix errors
|
getqflist() list of quickfix errors
|
||||||
@@ -941,6 +952,7 @@ Interactive: *interactive-functions*
|
|||||||
browsedir() put up a directory requester
|
browsedir() put up a directory requester
|
||||||
confirm() let the user make a choice
|
confirm() let the user make a choice
|
||||||
getchar() get a character from the user
|
getchar() get a character from the user
|
||||||
|
getcharstr() get a character from the user as a string
|
||||||
getcharmod() get modifiers for the last typed character
|
getcharmod() get modifiers for the last typed character
|
||||||
getmousepos() get last known mouse position
|
getmousepos() get last known mouse position
|
||||||
echoraw() output characters as-is
|
echoraw() output characters as-is
|
||||||
@@ -982,6 +994,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
|
||||||
@@ -1000,6 +1016,7 @@ Testing: *test-functions*
|
|||||||
assert_true() assert that an expression is true
|
assert_true() assert that an expression is true
|
||||||
assert_exception() assert that a command throws an exception
|
assert_exception() assert that a command throws an exception
|
||||||
assert_beeps() assert that a command beeps
|
assert_beeps() assert that a command beeps
|
||||||
|
assert_nobeep() assert that a command does not cause a beep
|
||||||
assert_fails() assert that a command fails
|
assert_fails() assert that a command fails
|
||||||
assert_report() report a test failure
|
assert_report() report a test failure
|
||||||
test_alloc_fail() make memory allocation fail
|
test_alloc_fail() make memory allocation fail
|
||||||
@@ -1008,6 +1025,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
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*various.txt* For Vim version 8.2. Last change: 2020 Nov 16
|
*various.txt* For Vim version 8.2. Last change: 2021 Mar 23
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -345,8 +345,9 @@ N *+clientserver* Unix and Win32: Remote invocation |clientserver|
|
|||||||
*+clipboard* |clipboard| support compiled-in
|
*+clipboard* |clipboard| support compiled-in
|
||||||
*+clipboard_working* |clipboard| support compiled-in and working
|
*+clipboard_working* |clipboard| support compiled-in and working
|
||||||
T *+cmdline_compl* command line completion |cmdline-completion|
|
T *+cmdline_compl* command line completion |cmdline-completion|
|
||||||
S *+cmdline_hist* command line history |cmdline-history|
|
T *+cmdline_hist* command line history |cmdline-history|
|
||||||
N *+cmdline_info* |'showcmd'| and |'ruler'|
|
N *+cmdline_info* |'showcmd'| and |'ruler'|
|
||||||
|
S *+cmdwin* |cmdline-window| support
|
||||||
T *+comments* |'comments'| support
|
T *+comments* |'comments'| support
|
||||||
B *+conceal* "conceal" support, see |conceal| |:syn-conceal| etc.
|
B *+conceal* "conceal" support, see |conceal| |:syn-conceal| etc.
|
||||||
N *+cryptv* encryption support |encryption|
|
N *+cryptv* encryption support |encryption|
|
||||||
@@ -411,7 +412,7 @@ N *+mouse_sysmouse* Unix only: *BSD console mouse handling |sysmouse|
|
|||||||
B *+mouse_sgr* Unix only: sgr mouse handling |sgr-mouse|
|
B *+mouse_sgr* Unix only: sgr mouse handling |sgr-mouse|
|
||||||
B *+mouse_urxvt* Unix only: urxvt mouse handling |urxvt-mouse|
|
B *+mouse_urxvt* Unix only: urxvt mouse handling |urxvt-mouse|
|
||||||
N *+mouse_xterm* Unix only: xterm mouse handling |xterm-mouse|
|
N *+mouse_xterm* Unix only: xterm mouse handling |xterm-mouse|
|
||||||
N *+multi_byte* 16 and 32 bit characters |multibyte|
|
T *+multi_byte* Unicode support, 16 and 32 bit characters |multibyte|
|
||||||
*+multi_byte_ime* Win32 input method for multibyte chars |multibyte-ime|
|
*+multi_byte_ime* Win32 input method for multibyte chars |multibyte-ime|
|
||||||
N *+multi_lang* non-English language support |multi-lang|
|
N *+multi_lang* non-English language support |multi-lang|
|
||||||
m *+mzscheme* Mzscheme interface |mzscheme|
|
m *+mzscheme* Mzscheme interface |mzscheme|
|
||||||
@@ -443,6 +444,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
|
||||||
@@ -571,7 +573,7 @@ N *+X11* Unix only: can restore window title |X11|
|
|||||||
it in / any non-ID character (see |'isident'|) can be
|
it in / any non-ID character (see |'isident'|) can be
|
||||||
used, so long as it does not appear in {pat}. Without
|
used, so long as it does not appear in {pat}. Without
|
||||||
the enclosing character the pattern cannot include the
|
the enclosing character the pattern cannot include the
|
||||||
bar character.
|
bar character. 'ignorecase' is not used.
|
||||||
|
|
||||||
The pattern is matched against the relevant part of
|
The pattern is matched against the relevant part of
|
||||||
the output, not necessarily the whole line. Only some
|
the output, not necessarily the whole line. Only some
|
||||||
@@ -707,12 +709,12 @@ K Run a program to lookup the keyword under the
|
|||||||
not more than one line.
|
not more than one line.
|
||||||
|
|
||||||
[N]gs *gs* *:sl* *:sleep*
|
[N]gs *gs* *:sl* *:sleep*
|
||||||
:[N]sl[eep] [N] [m] Do nothing for [N] seconds. When [m] is included,
|
:[N]sl[eep] [N][m] Do nothing for [N] seconds. When [m] is included,
|
||||||
sleep for [N] milliseconds. The count for "gs" always
|
sleep for [N] milliseconds. The count for "gs" always
|
||||||
uses seconds. The default is one second. >
|
uses seconds. The default is one second. >
|
||||||
:sleep "sleep for one second
|
:sleep "sleep for one second
|
||||||
:5sleep "sleep for five seconds
|
:5sleep "sleep for five seconds
|
||||||
:sleep 100m "sleep for a hundred milliseconds
|
:sleep 100m "sleep for 100 milliseconds
|
||||||
10gs "sleep for ten seconds
|
10gs "sleep for ten seconds
|
||||||
< Can be interrupted with CTRL-C (CTRL-Break on
|
< Can be interrupted with CTRL-C (CTRL-Break on
|
||||||
MS-Windows). "gs" stands for "goto sleep".
|
MS-Windows). "gs" stands for "goto sleep".
|
||||||
@@ -722,6 +724,9 @@ K Run a program to lookup the keyword under the
|
|||||||
available when compiled with the |+netbeans_intg|
|
available when compiled with the |+netbeans_intg|
|
||||||
feature}
|
feature}
|
||||||
|
|
||||||
|
*:sl!* *:sleep!*
|
||||||
|
:[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
|
||||||
after the X server restarts, e.g. when running Vim for
|
after the X server restarts, e.g. when running Vim for
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*version5.txt* For Vim version 8.2. Last change: 2020 Dec 19
|
*version5.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -405,7 +405,7 @@ Both of these are only available when enabled at compile time.
|
|||||||
Win32 GUI version *added-win32-GUI*
|
Win32 GUI version *added-win32-GUI*
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
The GUI has been ported to MS Windows 95 and NT. All the features of the X11
|
The GUI has been ported to MS-Windows 95 and NT. All the features of the X11
|
||||||
GUI are available to Windows users now. |gui-w32|
|
GUI are available to Windows users now. |gui-w32|
|
||||||
This also fixes problems with running the Win32 console version under Windows
|
This also fixes problems with running the Win32 console version under Windows
|
||||||
95, where console support has always been bad.
|
95, where console support has always been bad.
|
||||||
@@ -4403,7 +4403,7 @@ the last char of the line, "<<" moved an extra line. Also for other operators
|
|||||||
that always work on lines.
|
that always work on lines.
|
||||||
|
|
||||||
link.sh changed "-lnsl_s" to "_s" when looking for "nsl" to be removed.
|
link.sh changed "-lnsl_s" to "_s" when looking for "nsl" to be removed.
|
||||||
Now it only remove whole words.
|
Now it only removes whole words.
|
||||||
|
|
||||||
When jumped to a mark or using "fz", and there is an error, the current column
|
When jumped to a mark or using "fz", and there is an error, the current column
|
||||||
was lost. E.g. when using "$fzj".
|
was lost. E.g. when using "$fzj".
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*version6.txt* For Vim version 8.2. Last change: 2020 Aug 17
|
*version6.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -1025,7 +1025,7 @@ Port to OS/390 Unix (Ralf Schandl)
|
|||||||
Included jsbmouse support. (Darren Garth)
|
Included jsbmouse support. (Darren Garth)
|
||||||
Support for dec mouse in Unix. (Steve Wall)
|
Support for dec mouse in Unix. (Steve Wall)
|
||||||
|
|
||||||
Port to 16-bit MS Windows (Windows 3.1x) (Vince Negri)
|
Port to 16-bit MS-Windows (Windows 3.1x) (Vince Negri)
|
||||||
|
|
||||||
Port to QNX. Supports the Photon GUI, mouse, etc. (Julian Kinraid)
|
Port to QNX. Supports the Photon GUI, mouse, etc. (Julian Kinraid)
|
||||||
|
|
||||||
@@ -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)
|
||||||
@@ -9649,7 +9649,7 @@ Files: src/Make_cyg.mak, src/Make_ming.mak
|
|||||||
|
|
||||||
Patch 6.2f.016
|
Patch 6.2f.016
|
||||||
Problem: "vim --version > ff" on non-Unix systems results in a file with a
|
Problem: "vim --version > ff" on non-Unix systems results in a file with a
|
||||||
missing line break at the end. (Bill McCArthy)
|
missing line break at the end. (Bill McCarthy)
|
||||||
Solution: Add a line break.
|
Solution: Add a line break.
|
||||||
Files: src/main.c
|
Files: src/main.c
|
||||||
|
|
||||||
@@ -9661,7 +9661,7 @@ Solution: Check for tcsetattr() to return an error, retry when it does.
|
|||||||
Files: src/os_unix.c
|
Files: src/os_unix.c
|
||||||
|
|
||||||
Patch 6.2f.018
|
Patch 6.2f.018
|
||||||
Problem: Mac OS X 10.2: OK is defined to zero in cursus.h while Vim uses
|
Problem: Mac OS X 10.2: OK is defined to zero in curses.h while Vim uses
|
||||||
one. Redefining it causes a warning message.
|
one. Redefining it causes a warning message.
|
||||||
Solution: Undefine OK before defining it to one. (Taro Muraoka)
|
Solution: Undefine OK before defining it to one. (Taro Muraoka)
|
||||||
Files: src/vim.h
|
Files: src/vim.h
|
||||||
@@ -12864,7 +12864,7 @@ Files: src/message.c
|
|||||||
Patch 6.2.444
|
Patch 6.2.444
|
||||||
Problem: When adding the 'c' flag to a ":substitute" command it may replace
|
Problem: When adding the 'c' flag to a ":substitute" command it may replace
|
||||||
more times than without the 'c' flag. Happens for a match that
|
more times than without the 'c' flag. Happens for a match that
|
||||||
starts with "\ze" (Marcel Svitalsk) and when using "\@<=" (Klaus
|
starts with "\ze" (Marcel Svitalsky) and when using "\@<=" (Klaus
|
||||||
Bosau).
|
Bosau).
|
||||||
Solution: Correct "prev_matchcol" when replacing the line. Don't replace
|
Solution: Correct "prev_matchcol" when replacing the line. Don't replace
|
||||||
the line when the pattern uses look-behind matching.
|
the line when the pattern uses look-behind matching.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*version7.txt* For Vim version 8.2. Last change: 2020 Oct 25
|
*version7.txt* For Vim version 8.2. Last change: 2021 May 17
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -2300,7 +2300,7 @@ value didn't fill the whole screen. (SungHyun Nam)
|
|||||||
Win32 installer: The generated _vimrc contained an absolute path to diff.exe.
|
Win32 installer: The generated _vimrc contained an absolute path to diff.exe.
|
||||||
After upgrading it becomes invalid. Now use $VIMRUNTIME instead.
|
After upgrading it becomes invalid. Now use $VIMRUNTIME instead.
|
||||||
|
|
||||||
The command line was cleared to often when 'showmode' was set and ":silent
|
The command line was cleared too often when 'showmode' was set and ":silent
|
||||||
normal vy" was used. Don't clear the command line unless the mode was
|
normal vy" was used. Don't clear the command line unless the mode was
|
||||||
actually displayed. Added the "mode_displayed" variable.
|
actually displayed. Added the "mode_displayed" variable.
|
||||||
|
|
||||||
@@ -9826,7 +9826,7 @@ Solution: Add AC_SYS_LARGEFILE to configure. (James Vega)
|
|||||||
Files: src/configure.in, src/config.h.in, src/auto/configure
|
Files: src/configure.in, src/config.h.in, src/auto/configure
|
||||||
|
|
||||||
Patch 7.2.414
|
Patch 7.2.414
|
||||||
Problem: CTRK-K <space> <space> does not produce 0xa0 as expected. (Tony
|
Problem: CTRL-K <space> <space> does not produce 0xa0 as expected. (Tony
|
||||||
Mechelynck)
|
Mechelynck)
|
||||||
Solution: Remove the Unicode range 0xe000 - 0xefff from digraphs, these are
|
Solution: Remove the Unicode range 0xe000 - 0xefff from digraphs, these are
|
||||||
not valid characters.
|
not valid characters.
|
||||||
@@ -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: 2020 Dec 24
|
*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*
|
||||||
|
|
||||||
@@ -1776,7 +1780,7 @@ Files: runtime/doc/change.txt, runtime/doc/eval.txt,
|
|||||||
|
|
||||||
Patch 7.4.219
|
Patch 7.4.219
|
||||||
Problem: When 'relativenumber' or 'cursorline' are set the window is
|
Problem: When 'relativenumber' or 'cursorline' are set the window is
|
||||||
redrawn much to often. (Patrick Hemmer, Dominique Pelle)
|
redrawn much too often. (Patrick Hemmer, Dominique Pelle)
|
||||||
Solution: Check the VALID_CROW flag instead of VALID_WROW.
|
Solution: Check the VALID_CROW flag instead of VALID_WROW.
|
||||||
Files: src/move.c
|
Files: src/move.c
|
||||||
|
|
||||||
@@ -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,
|
||||||
@@ -15341,7 +15345,7 @@ Solution: Link winpthread statically. (jmmerz, closes #1255, closes #1256)
|
|||||||
Files: src/Make_cyg_ming.mak
|
Files: src/Make_cyg_ming.mak
|
||||||
|
|
||||||
Patch 8.0.0116
|
Patch 8.0.0116
|
||||||
Problem: When reading English help and using CTRl-] the language from
|
Problem: When reading English help and using CTRL-] the language from
|
||||||
'helplang' is used.
|
'helplang' is used.
|
||||||
Solution: Make help tag jumps keep the language. (Tatsuki, test by Hirohito
|
Solution: Make help tag jumps keep the language. (Tatsuki, test by Hirohito
|
||||||
Higashi, closes #1249)
|
Higashi, closes #1249)
|
||||||
@@ -16933,7 +16937,7 @@ Solution: Add #ifdefs.
|
|||||||
Files: src/screen.c
|
Files: src/screen.c
|
||||||
|
|
||||||
Patch 8.0.0383 (after 8.0.0382)
|
Patch 8.0.0383 (after 8.0.0382)
|
||||||
Problem: Misplaced #ifdef. (Christ van Willigen)
|
Problem: Misplaced #ifdef. (Christ van Willegen)
|
||||||
Solution: Split assignment.
|
Solution: Split assignment.
|
||||||
Files: src/screen.c
|
Files: src/screen.c
|
||||||
|
|
||||||
@@ -19612,7 +19616,7 @@ Files: Filelist
|
|||||||
|
|
||||||
Patch 8.0.0815
|
Patch 8.0.0815
|
||||||
Problem: Terminal window not correctly updated when 'statusline' invokes
|
Problem: Terminal window not correctly updated when 'statusline' invokes
|
||||||
":sleep". (NIkolay Pavlov)
|
":sleep". (Nikolay Pavlov)
|
||||||
Solution: Clear got_int. Repeat redrawing when needed.
|
Solution: Clear got_int. Repeat redrawing when needed.
|
||||||
Files: src/terminal.c
|
Files: src/terminal.c
|
||||||
|
|
||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*vi_diff.txt* For Vim version 8.2. Last change: 2020 Aug 15
|
*vi_diff.txt* For Vim version 8.2. Last change: 2021 Jan 21
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -73,7 +73,7 @@ edit the termcap entry and try again. Vim has the |terminal-options|.
|
|||||||
Vim has only a few limits for the files that can be edited {Vi: can not handle
|
Vim has only a few limits for the files that can be edited {Vi: can not handle
|
||||||
<Nul> characters and characters above 128, has limited line length, many other
|
<Nul> characters and characters above 128, has limited line length, many other
|
||||||
limits}.
|
limits}.
|
||||||
*E340*
|
|
||||||
Maximum line length 2147483647 characters. Longer lines are split.
|
Maximum line length 2147483647 characters. Longer lines are split.
|
||||||
Maximum number of lines 2147483647 lines.
|
Maximum number of lines 2147483647 lines.
|
||||||
Maximum file size 2147483647 bytes (2 Gbyte) when a long integer is
|
Maximum file size 2147483647 bytes (2 Gbyte) when a long integer is
|
||||||
|
|||||||
@@ -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).
|
||||||
@@ -416,6 +416,10 @@ Denotes the end of the options.
|
|||||||
Arguments after this will be handled as a file name.
|
Arguments after this will be handled as a file name.
|
||||||
This can be used to edit a filename that starts with a '\-'.
|
This can be used to edit a filename that starts with a '\-'.
|
||||||
.TP
|
.TP
|
||||||
|
\-\-clean
|
||||||
|
Do not use any personal configuration (vimrc, plugins, etc.). Useful to see if
|
||||||
|
a problem reproduces with a clean Vim setup.
|
||||||
|
.TP
|
||||||
\-\-echo\-wid
|
\-\-echo\-wid
|
||||||
GTK GUI only: Echo the Window ID on stdout.
|
GTK GUI only: Echo the Window ID on stdout.
|
||||||
.TP
|
.TP
|
||||||
|
|||||||
@@ -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".
|
||||||
@@ -300,6 +300,10 @@ OPTIONS
|
|||||||
be handled as a file name. This can be used to edit a
|
be handled as a file name. This can be used to edit a
|
||||||
filename that starts with a '-'.
|
filename that starts with a '-'.
|
||||||
|
|
||||||
|
--clean Do not use any personal configuration (vimrc, plugins,
|
||||||
|
etc.). Useful to see if a problem reproduces with a clean
|
||||||
|
Vim setup.
|
||||||
|
|
||||||
--echo-wid GTK GUI only: Echo the Window ID on stdout.
|
--echo-wid GTK GUI only: Echo the Window ID on stdout.
|
||||||
|
|
||||||
--help Give a help message and exit, just like "-h".
|
--help Give a help message and exit, just like "-h".
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*vim9.txt* For Vim version 8.2. Last change: 2021 Jan 10
|
*vim9.txt* For Vim version 8.2. Last change: 2021 Jul 28
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -51,6 +51,7 @@ The Vim9 script syntax and semantics are used in:
|
|||||||
- a function defined with the `:def` command
|
- a function defined with the `:def` command
|
||||||
- a script file where the first command is `vim9script`
|
- a script file where the first command is `vim9script`
|
||||||
- an autocommand defined in the context of the above
|
- an autocommand defined in the context of the above
|
||||||
|
- a command prefixed with the `vim9cmd` command modifier
|
||||||
|
|
||||||
When using `:function` in a Vim9 script file the legacy syntax is used, with
|
When using `:function` in a Vim9 script file the legacy syntax is used, with
|
||||||
the highest |scriptversion|. However, this can be confusing and is therefore
|
the highest |scriptversion|. However, this can be confusing and is therefore
|
||||||
@@ -60,6 +61,17 @@ Vim9 script and legacy Vim script can be mixed. There is no requirement to
|
|||||||
rewrite old scripts, they keep working as before. You may want to use a few
|
rewrite old scripts, they keep working as before. You may want to use a few
|
||||||
`:def` functions for code that needs to be fast.
|
`:def` functions for code that needs to be fast.
|
||||||
|
|
||||||
|
:vim9[cmd] {cmd} *:vim9* *:vim9cmd*
|
||||||
|
Execute {cmd} using Vim9 script syntax and semantics.
|
||||||
|
Useful when typing a command and in a legacy script or
|
||||||
|
function.
|
||||||
|
|
||||||
|
:leg[acy] {cmd} *:leg* *:legacy*
|
||||||
|
Execute {cmd} using legacy script syntax and semantics. Only
|
||||||
|
useful in a Vim9 script or a :def function.
|
||||||
|
Note that {cmd} cannot use local variables, since it is parsed
|
||||||
|
with legacy expression syntax.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
2. Differences from legacy Vim script *vim9-differences*
|
2. Differences from legacy Vim script *vim9-differences*
|
||||||
@@ -89,8 +101,9 @@ script and `:def` functions; details are below:
|
|||||||
def CallMe(count: number, message: string): bool
|
def CallMe(count: number, message: string): bool
|
||||||
- Call functions without `:call`: >
|
- Call functions without `:call`: >
|
||||||
writefile(['done'], 'file.txt')
|
writefile(['done'], 'file.txt')
|
||||||
- You cannot use `:xit`, `:t`, `:append`, `:change`, `:insert` or curly-braces
|
- You cannot use `:xit`, `:t`, `:k`, `:append`, `:change`, `:insert`, `:open`,
|
||||||
names.
|
and `:s` or `:d` with only flags.
|
||||||
|
or 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
|
||||||
- Unless mentioned specifically, the highest |scriptversion| is used.
|
- Unless mentioned specifically, the highest |scriptversion| is used.
|
||||||
@@ -118,6 +131,10 @@ that starts a comment: >
|
|||||||
var name = value # comment
|
var name = value # comment
|
||||||
var name = value# error!
|
var name = value# error!
|
||||||
|
|
||||||
|
Do not start a comment with #{, it looks like the legacy dictionary literal
|
||||||
|
and produces an error where this might be confusing. #{{ or #{{{ are OK,
|
||||||
|
these can be used to start a fold.
|
||||||
|
|
||||||
In legacy Vim script # is also used for the alternate file name. In Vim9
|
In legacy Vim script # is also used for the alternate file name. In Vim9
|
||||||
script you need to use %% instead. Instead of ## use %%% (stands for all
|
script you need to use %% instead. Instead of ## use %%% (stands for all
|
||||||
arguments).
|
arguments).
|
||||||
@@ -126,37 +143,71 @@ arguments).
|
|||||||
Vim9 functions ~
|
Vim9 functions ~
|
||||||
|
|
||||||
A function defined with `:def` is compiled. Execution is many times faster,
|
A function defined with `:def` is compiled. Execution is many times faster,
|
||||||
often 10x to 100x times.
|
often 10 to 100 times.
|
||||||
|
|
||||||
Many errors are already found when compiling, before the function is executed.
|
Many errors are already found when compiling, before the function is executed.
|
||||||
The syntax is strict, to enforce code that is easy to read and understand.
|
The syntax is strict, to enforce code that is easy to read and understand.
|
||||||
|
|
||||||
Compilation is done when either of these is encountered:
|
Compilation is done when any of these is encountered:
|
||||||
- the first time the function is called
|
- the first time the function is called
|
||||||
- when the `:defcompile` command is encountered in the script where the
|
- when the `:defcompile` command is encountered in the script after the
|
||||||
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
|
||||||
|
*E1091*
|
||||||
|
If compilation fails it is not tried again on the next call, instead this
|
||||||
|
error is given: "E1091: Function is not compiled: {name}".
|
||||||
|
Compilation will fail when encountering a user command that has not been
|
||||||
|
created yet. In this case you can call `execute()` to invoke it at runtime. >
|
||||||
|
def MyFunc()
|
||||||
|
execute('DefinedLater')
|
||||||
|
enddef
|
||||||
|
|
||||||
`:def` has no options like `:function` does: "range", "abort", "dict" or
|
`:def` has no options like `:function` does: "range", "abort", "dict" or
|
||||||
"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.
|
||||||
|
|
||||||
|
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')
|
||||||
|
|
||||||
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
|
||||||
functions.
|
functions.
|
||||||
|
|
||||||
Arguments are accessed by name, without "a:", just like any other language.
|
Arguments are accessed by name, without "a:", just like any other language.
|
||||||
There is no "a:" dictionary or "a:000" list.
|
There is no "a:" dictionary or "a:000" list.
|
||||||
|
*vim9-variable-arguments*
|
||||||
Variable arguments are defined as the last argument, with a name and have a
|
Variable arguments are defined as the last argument, with a name and have a
|
||||||
list type, similar to TypeScript. For example, a list of numbers: >
|
list type, similar to TypeScript. For example, a list of numbers: >
|
||||||
def MyFunc(...itemlist: list<number>)
|
def MyFunc(...itemlist: list<number>)
|
||||||
for item in itemlist
|
for item in itemlist
|
||||||
...
|
...
|
||||||
|
|
||||||
|
When a function argument is optional (it has a default value) passing `v:none`
|
||||||
|
as the argument results in using the default value. This is useful when you
|
||||||
|
want to specify a value for an argument that comes after an argument that
|
||||||
|
should use its default value. Example: >
|
||||||
|
def MyFunc(one = 'one', last = 'last)
|
||||||
|
...
|
||||||
|
enddef
|
||||||
|
MyFunc(v:none, 'LAST') # first argument uses default value 'one'
|
||||||
|
<
|
||||||
|
*vim9-ignored-argument*
|
||||||
|
The argument "_" (an underscore) can be used to ignore the argument. This is
|
||||||
|
most useful in callbacks where you don't need it, but do need to give an
|
||||||
|
argument to match the call. E.g. when using map() two arguments are passed,
|
||||||
|
the key and the value, to ignore the key: >
|
||||||
|
map(myList, (_, v) => v * 2)
|
||||||
|
There is no error for using the "_" argument multiple times. No type needs to
|
||||||
|
be given.
|
||||||
|
|
||||||
|
|
||||||
Functions and variables are script-local by default ~
|
Functions and variables are script-local by default ~
|
||||||
*vim9-scopes*
|
*vim9-scopes*
|
||||||
@@ -183,6 +234,12 @@ search for the function:
|
|||||||
However, it is recommended to always use "g:" to refer to a global function
|
However, it is recommended to always use "g:" to refer to a global function
|
||||||
for clarity.
|
for clarity.
|
||||||
|
|
||||||
|
Since a script-local function reference can be used without "s:" the name must
|
||||||
|
start with an upper case letter even when using the "s:" prefix. In legacy
|
||||||
|
script "s:funcref" could be used, because it could not be referred to with
|
||||||
|
"funcref". In Vim9 script it can, therefore "s:Funcref" must be used to avoid
|
||||||
|
that the name interferes with builtin functions.
|
||||||
|
|
||||||
In all cases the function must be defined before used. That is when it is
|
In all cases the function must be defined before used. That is when it is
|
||||||
called, when `:defcompile` causes it to be compiled, or when code that calls
|
called, when `:defcompile` causes it to be compiled, or when code that calls
|
||||||
it is being compiled (to figure out the return type).
|
it is being compiled (to figure out the return type).
|
||||||
@@ -264,6 +321,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.
|
||||||
|
|
||||||
@@ -272,19 +348,46 @@ without any command. The same for global, window, tab, buffer and Vim
|
|||||||
variables, because they are not really declared. They can also be deleted
|
variables, because they are not really declared. They can also be deleted
|
||||||
with `:unlet`.
|
with `:unlet`.
|
||||||
|
|
||||||
Variables and functions cannot shadow previously defined or imported variables
|
`:lockvar` does not work on local variables. Use `:const` and `:final`
|
||||||
and functions.
|
instead.
|
||||||
|
|
||||||
|
The `exists()` function does not work on local variables or arguments. These
|
||||||
|
are visible at compile time only, not at runtime.
|
||||||
|
|
||||||
|
Variables, functions and function arguments cannot shadow previously defined
|
||||||
|
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.
|
||||||
|
|
||||||
Global variables and user defined functions must be prefixed with "g:", also
|
Global variables must be prefixed with "g:", also at the script level. >
|
||||||
at the script level. >
|
|
||||||
vim9script
|
vim9script
|
||||||
var script_local = 'text'
|
var script_local = 'text'
|
||||||
g:global = 'value'
|
g:global = 'value'
|
||||||
var Funcref = g:ThatFunction
|
var Funcref = g:ThatFunction
|
||||||
|
|
||||||
|
Global functions must be prefixed with "g:" when defining them, but can be
|
||||||
|
called without "g:". >
|
||||||
|
vim9script
|
||||||
|
def g:GlobalFunc(): string
|
||||||
|
return 'text'
|
||||||
|
enddef
|
||||||
|
echo GlobalFunc()
|
||||||
|
The "g:" prefix is not needed for auto-load functions.
|
||||||
|
|
||||||
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*
|
||||||
|
For an unpack assignment the underscore can be used to ignore a list item,
|
||||||
|
similar to how a function argument can be ignored: >
|
||||||
|
[a, _, c] = theList
|
||||||
|
To ignore any remaining items: >
|
||||||
|
[a, b; _] = longList
|
||||||
|
|
||||||
|
< *E1092*
|
||||||
|
Declaring more than one variable at a time, using the unpack notation, is
|
||||||
|
currently not supported: >
|
||||||
|
var [v1, v2] = GetValues() # Error!
|
||||||
|
That is because the type needs to be inferred from the list item type, which
|
||||||
|
isn't that easy.
|
||||||
|
|
||||||
|
|
||||||
Constants ~
|
Constants ~
|
||||||
@@ -300,14 +403,14 @@ Example: >
|
|||||||
const myList = [1, 2]
|
const myList = [1, 2]
|
||||||
myList = [3, 4] # Error!
|
myList = [3, 4] # Error!
|
||||||
myList[0] = 9 # Error!
|
myList[0] = 9 # Error!
|
||||||
muList->add(3) # Error!
|
myList->add(3) # Error!
|
||||||
< *:final*
|
< *:final*
|
||||||
`:final` is used for making only the variable a constant, the value can be
|
`:final` is used for making only the variable a constant, the value can be
|
||||||
changed. This is well known from Java. Example: >
|
changed. This is well known from Java. Example: >
|
||||||
final myList = [1, 2]
|
final myList = [1, 2]
|
||||||
myList = [3, 4] # Error!
|
myList = [3, 4] # Error!
|
||||||
myList[0] = 9 # OK
|
myList[0] = 9 # OK
|
||||||
muList->add(3) # OK
|
myList->add(3) # OK
|
||||||
|
|
||||||
It is common to write constants as ALL_CAPS, but you don't have to.
|
It is common to write constants as ALL_CAPS, but you don't have to.
|
||||||
|
|
||||||
@@ -319,13 +422,6 @@ The constant only applies to the value itself, not what it refers to. >
|
|||||||
NAMES[1] = ["Emma"] # Error!
|
NAMES[1] = ["Emma"] # Error!
|
||||||
NAMES[1][0] = "Emma" # OK, now females[0] == "Emma"
|
NAMES[1][0] = "Emma" # OK, now females[0] == "Emma"
|
||||||
|
|
||||||
< *E1092*
|
|
||||||
Declaring more than one variable at a time, using the unpack notation, is
|
|
||||||
currently not supported: >
|
|
||||||
var [v1, v2] = GetValues() # Error!
|
|
||||||
That is because the type needs to be inferred from the list item type, which
|
|
||||||
isn't that easy.
|
|
||||||
|
|
||||||
|
|
||||||
Omitting :call and :eval ~
|
Omitting :call and :eval ~
|
||||||
|
|
||||||
@@ -334,7 +430,8 @@ Functions can be called without `:call`: >
|
|||||||
Using `:call` is still possible, but this is discouraged.
|
Using `:call` is still possible, but this is discouraged.
|
||||||
|
|
||||||
A method call without `eval` is possible, so long as the start is an
|
A method call without `eval` is possible, so long as the start is an
|
||||||
identifier or can't be an Ex command. Examples: >
|
identifier or can't be an Ex command. For a function either "(" or "->" must
|
||||||
|
be following, without a line break. Examples: >
|
||||||
myList->add(123)
|
myList->add(123)
|
||||||
g:myList->add(123)
|
g:myList->add(123)
|
||||||
[1, 2, 3]->Process()
|
[1, 2, 3]->Process()
|
||||||
@@ -351,6 +448,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 parenthesis 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,
|
||||||
@@ -367,22 +470,24 @@ 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 -> ~
|
||||||
|
*vim9-lambda*
|
||||||
In legacy script there can be confusion between using "->" for a method call
|
In legacy script there can be confusion between using "->" for a method call
|
||||||
and for a lambda. Also, when a "{" is found the parser needs to figure out if
|
and for a lambda. Also, when a "{" is found the parser needs to figure out if
|
||||||
it is the start of a lambda or a dictionary, which is now more complicated
|
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: >
|
||||||
@@ -395,18 +500,51 @@ But you can use a backslash to concatenate the lines before parsing: >
|
|||||||
filter(list, (k,
|
filter(list, (k,
|
||||||
\ v)
|
\ v)
|
||||||
\ => v > 0)
|
\ => v > 0)
|
||||||
|
< *vim9-lambda-arguments*
|
||||||
|
In legacy script a lambda could be called with any number of extra arguments,
|
||||||
|
there was no way to warn for not using them. In Vim9 script the number of
|
||||||
|
arguments must match. If you do want to accept any arguments, or any further
|
||||||
|
arguments, use "..._", which makes the function accept
|
||||||
|
|vim9-variable-arguments|. Example: >
|
||||||
|
var Callback = (..._) => 'anything'
|
||||||
|
echo Callback(1, 2, 3) # displays "anything"
|
||||||
|
|
||||||
|
< *inline-function*
|
||||||
Additionally, a lambda can contain statements in {}: >
|
Additionally, a lambda can contain statements in {}: >
|
||||||
var Lambda = (arg) => {
|
var Lambda = (arg) => {
|
||||||
g:was_called = 'yes'
|
g:was_called = 'yes'
|
||||||
return expression
|
return expression
|
||||||
}
|
}
|
||||||
NOT IMPLEMENTED YET
|
This can be useful for a timer, for example: >
|
||||||
|
var count = 0
|
||||||
|
var timer = timer_start(500, (_) => {
|
||||||
|
count += 1
|
||||||
|
echom 'Handler called ' .. count
|
||||||
|
}, {repeat: 3})
|
||||||
|
|
||||||
|
|
||||||
|
The ending "}" must be at the start of a line. It can be followed by other
|
||||||
|
characters, e.g.: >
|
||||||
|
var d = mapnew(dict, (k, v): string => {
|
||||||
|
return 'value'
|
||||||
|
})
|
||||||
|
No command can follow the "{", only a comment can be used there.
|
||||||
|
|
||||||
|
Rationale: The "}" cannot be after a command because it would require parsing
|
||||||
|
the commands to find it. For consistency with that no command can follow the
|
||||||
|
"{". Unfortunately this means using "() => { command }" does not work, line
|
||||||
|
breaks are always required.
|
||||||
|
|
||||||
|
*vim9-curly*
|
||||||
To avoid the "{" of a dictionary literal to be recognized as a statement block
|
To avoid the "{" of a dictionary literal to be recognized as a statement block
|
||||||
wrap it in parenthesis: >
|
wrap it in parentheses: >
|
||||||
var Lambda = (arg) => ({key: 42})
|
var Lambda = (arg) => ({key: 42})
|
||||||
|
|
||||||
|
Also when confused with the start of a command block: >
|
||||||
|
({
|
||||||
|
key: value
|
||||||
|
})->method()
|
||||||
|
|
||||||
|
|
||||||
Automatic line continuation ~
|
Automatic line continuation ~
|
||||||
|
|
||||||
@@ -422,7 +560,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
|
||||||
@@ -455,10 +593,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 be 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 doesn't work
|
||||||
|
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: >
|
||||||
@@ -487,6 +651,9 @@ Now "exit_cb: Func})" is actually a valid command: save any changes to the
|
|||||||
file "_cb: Func})" and exit. To avoid this kind of mistake in Vim9 script
|
file "_cb: Func})" and exit. To avoid this kind of mistake in Vim9 script
|
||||||
there must be white space between most command names and the argument.
|
there must be white space between most command names and the argument.
|
||||||
|
|
||||||
|
However, the argument of a command that is a command won't be recognized. For
|
||||||
|
example, after "windo echo expr" a line break inside "expr" will not be seen.
|
||||||
|
|
||||||
|
|
||||||
Notes:
|
Notes:
|
||||||
- "enddef" cannot be used at the start of a continuation line, it ends the
|
- "enddef" cannot be used at the start of a continuation line, it ends the
|
||||||
@@ -507,49 +674,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
|
||||||
No curly braces expansion ~
|
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.
|
||||||
|curly-braces-names| cannot be used.
|
|
||||||
|
|
||||||
|
|
||||||
Dictionary literals ~
|
|
||||||
|
|
||||||
Traditionally Vim has supported dictionary literals with a {} syntax: >
|
|
||||||
let dict = {'key': value}
|
|
||||||
|
|
||||||
Later it became clear that using a simple text key is very common, thus
|
|
||||||
literal dictionaries were introduced in a backwards compatible way: >
|
|
||||||
let dict = #{key: value}
|
|
||||||
|
|
||||||
However, this #{} syntax is unlike any existing language. As it turns out
|
|
||||||
that using a literal key is much more common than using an expression, and
|
|
||||||
considering that JavaScript uses this syntax, using the {} form for dictionary
|
|
||||||
literals is considered a much more useful syntax. In Vim9 script the {} form
|
|
||||||
uses literal keys: >
|
|
||||||
let dict = {key: value}
|
|
||||||
|
|
||||||
This works for alphanumeric characters, underscore and dash. If you want to
|
|
||||||
use another character, use a single or double quoted string: >
|
|
||||||
let dict = {'key with space': value}
|
|
||||||
let dict = {"key\twith\ttabs": value}
|
|
||||||
let dict = {'': value} # empty key
|
|
||||||
|
|
||||||
In case the key needs to be an expression, square brackets can be used, just
|
|
||||||
like in JavaScript: >
|
|
||||||
let dict = {["key" .. nr]: value}
|
|
||||||
|
|
||||||
|
|
||||||
No :xit, :t, :append, :change or :insert ~
|
|
||||||
|
|
||||||
These commands are too easily confused with local variable names.
|
|
||||||
Instead of `:x` or `:xit` you can use `:exit`.
|
|
||||||
Instead of `:t` you can use `:copy`.
|
|
||||||
|
|
||||||
|
|
||||||
Comparators ~
|
|
||||||
|
|
||||||
The 'ignorecase' option is not used for comparators that use strings.
|
|
||||||
|
|
||||||
|
|
||||||
White space ~
|
White space ~
|
||||||
@@ -576,15 +703,105 @@ the start and end: >
|
|||||||
|
|
||||||
White space is not allowed:
|
White space is not allowed:
|
||||||
- Between a function name and the "(": >
|
- Between a function name and the "(": >
|
||||||
call Func (arg) # Error!
|
Func (arg) # Error!
|
||||||
call Func
|
Func
|
||||||
\ (arg) # Error!
|
\ (arg) # Error!
|
||||||
call Func(arg) # OK
|
Func
|
||||||
call Func(
|
(arg) # Error!
|
||||||
\ arg) # OK
|
Func(arg) # OK
|
||||||
call Func(
|
Func(
|
||||||
\ arg # OK
|
arg) # OK
|
||||||
\ )
|
Func(
|
||||||
|
arg # OK
|
||||||
|
)
|
||||||
|
|
||||||
|
White space space is not allowed in a `:set` command between the option name
|
||||||
|
and a following "&", "!", "<", "=", "+=", "-=" or "^=".
|
||||||
|
|
||||||
|
|
||||||
|
No curly braces expansion ~
|
||||||
|
|
||||||
|
|curly-braces-names| cannot be used.
|
||||||
|
|
||||||
|
|
||||||
|
Dictionary literals ~
|
||||||
|
|
||||||
|
Traditionally Vim has supported dictionary literals with a {} syntax: >
|
||||||
|
let dict = {'key': value}
|
||||||
|
|
||||||
|
Later it became clear that using a simple text key is very common, thus
|
||||||
|
literal dictionaries were introduced in a backwards compatible way: >
|
||||||
|
let dict = #{key: value}
|
||||||
|
|
||||||
|
However, this #{} syntax is unlike any existing language. As it turns out
|
||||||
|
that using a literal key is much more common than using an expression, and
|
||||||
|
considering that JavaScript uses this syntax, using the {} form for dictionary
|
||||||
|
literals is considered a much more useful syntax. In Vim9 script the {} form
|
||||||
|
uses literal keys: >
|
||||||
|
var dict = {key: value}
|
||||||
|
|
||||||
|
This works for alphanumeric characters, underscore and dash. If you want to
|
||||||
|
use another character, use a single or double quoted string: >
|
||||||
|
var dict = {'key with space': value}
|
||||||
|
var dict = {"key\twith\ttabs": value}
|
||||||
|
var dict = {'': value} # empty key
|
||||||
|
|
||||||
|
In case the key needs to be an expression, square brackets can be used, just
|
||||||
|
like in JavaScript: >
|
||||||
|
var dict = {["key" .. nr]: value}
|
||||||
|
|
||||||
|
The key type can be string, number, bool or float. Other types result in an
|
||||||
|
error. A number can be given with and without the []: >
|
||||||
|
var dict = {123: 'without', [456]: 'with'}
|
||||||
|
echo dict
|
||||||
|
{'456': 'with', '123': 'without'}
|
||||||
|
|
||||||
|
|
||||||
|
No :xit, :t, :k, :append, :change or :insert ~
|
||||||
|
|
||||||
|
These commands are too easily confused with local variable names.
|
||||||
|
Instead of `:x` or `:xit` you can use `:exit`.
|
||||||
|
Instead of `:t` you can use `:copy`.
|
||||||
|
Instead of `:k` you can use `:mark`.
|
||||||
|
|
||||||
|
|
||||||
|
Comparators ~
|
||||||
|
|
||||||
|
The 'ignorecase' option is not used for comparators that use strings.
|
||||||
|
|
||||||
|
|
||||||
|
Abort after error ~
|
||||||
|
|
||||||
|
In legacy script, when an error is encountered, Vim continues to execute
|
||||||
|
following lines. This can lead to a long sequence of errors and need to type
|
||||||
|
CTRL-C to stop it. In Vim9 script execution of commands stops at the first
|
||||||
|
error. Example: >
|
||||||
|
vim9script
|
||||||
|
var x = does-not-exist
|
||||||
|
echo 'not executed'
|
||||||
|
|
||||||
|
|
||||||
|
For loop ~
|
||||||
|
|
||||||
|
Legacy Vim script has some tricks to make a for loop over a list handle
|
||||||
|
deleting items at the current or previous item. In Vim9 script it just uses
|
||||||
|
the index, if items are deleted then items in the list will be skipped.
|
||||||
|
Example legacy script: >
|
||||||
|
let l = [1, 2, 3, 4]
|
||||||
|
for i in l
|
||||||
|
echo i
|
||||||
|
call remove(l, index(l, i))
|
||||||
|
endfor
|
||||||
|
Would echo:
|
||||||
|
1
|
||||||
|
2
|
||||||
|
3
|
||||||
|
4
|
||||||
|
In compiled Vim9 script you get:
|
||||||
|
1
|
||||||
|
3
|
||||||
|
Generally, you should not change the list that is iterated over. Make a copy
|
||||||
|
first if needed.
|
||||||
|
|
||||||
|
|
||||||
Conditions and expressions ~
|
Conditions and expressions ~
|
||||||
@@ -648,12 +865,15 @@ for v:null. When converting a boolean to a string "false" and "true" are
|
|||||||
used, not "v:false" and "v:true" like in legacy script. "v:none" is not
|
used, not "v:false" and "v:true" like in legacy script. "v:none" is not
|
||||||
changed, it is only used in JSON and has no equivalent in other languages.
|
changed, it is only used in JSON and has no equivalent in other languages.
|
||||||
|
|
||||||
Indexing a string with [idx] or [idx, idx] uses character indexes instead of
|
Indexing a string with [idx] or taking a slice with [idx : idx] uses character
|
||||||
byte indexes. Example: >
|
indexes instead of byte indexes. Composing characters are included.
|
||||||
|
Example: >
|
||||||
echo 'bár'[1]
|
echo 'bár'[1]
|
||||||
In legacy script this results in the character 0xc3 (an illegal byte), in Vim9
|
In legacy script this results in the character 0xc3 (an illegal byte), in Vim9
|
||||||
script this results in the string 'á'.
|
script this results in the string 'á'.
|
||||||
A negative index is counting from the end, "[-1]" is the last character.
|
A negative index is counting from the end, "[-1]" is the last character.
|
||||||
|
To exclude the last character use |slice()|.
|
||||||
|
To count composing characters separately use |strcharpart()|.
|
||||||
If the index is out of range then an empty string results.
|
If the index is out of range then an empty string results.
|
||||||
|
|
||||||
In legacy script "++var" and "--var" would be silently accepted and have no
|
In legacy script "++var" and "--var" would be silently accepted and have no
|
||||||
@@ -670,21 +890,22 @@ same time tries to support the legacy Vim commands. Some compromises had to
|
|||||||
be made. Here is a summary of what might be unexpected.
|
be made. Here is a summary of what might be unexpected.
|
||||||
|
|
||||||
Ex command ranges need to be prefixed with a colon. >
|
Ex command ranges need to be prefixed with a colon. >
|
||||||
-> # legacy Vim: shifts the previous line to the right
|
-> legacy Vim: shifts the previous line to the right
|
||||||
->func() # Vim9: method call in continuation line
|
->func() Vim9: method call in a continuation line
|
||||||
:-> # Vim9: shifts the previous line to the right
|
:-> Vim9: shifts the previous line to the right
|
||||||
|
|
||||||
%s/a/b # legacy Vim: substitute on all lines
|
%s/a/b legacy Vim: substitute on all lines
|
||||||
x = alongname
|
x = alongname
|
||||||
% another # Vim9: line continuation without a backslash
|
% another Vim9: modulo operator in a continuation line
|
||||||
:%s/a/b # Vim9: substitute on all lines
|
:%s/a/b Vim9: substitute on all lines
|
||||||
'text'->func() # Vim9: method call
|
't legacy Vim: jump to mark t
|
||||||
:'t # legacy Vim: jump to mark m
|
'text'->func() Vim9: method call
|
||||||
|
:'t Vim9: jump to mark t
|
||||||
|
|
||||||
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 # invalid command - ERROR
|
||||||
:g:pattern:cmd # :global command
|
:g:pattern:cmd # :global command
|
||||||
|
|
||||||
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: >
|
||||||
@@ -704,7 +925,7 @@ Vim9 functions are compiled as a whole: >
|
|||||||
For a workaround, split it in two functions: >
|
For a workaround, split it in two functions: >
|
||||||
func Maybe()
|
func Maybe()
|
||||||
if has('feature')
|
if has('feature')
|
||||||
call MaybyInner()
|
call MaybeInner()
|
||||||
endif
|
endif
|
||||||
endfunc
|
endfunc
|
||||||
if has('feature')
|
if has('feature')
|
||||||
@@ -720,7 +941,7 @@ evaluates to false: >
|
|||||||
endif
|
endif
|
||||||
enddef
|
enddef
|
||||||
< *vim9-user-command*
|
< *vim9-user-command*
|
||||||
Another side effect of compiling a function is that the precense 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: >
|
||||||
command -nargs=1 MyCommand echom <q-args>
|
command -nargs=1 MyCommand echom <q-args>
|
||||||
@@ -750,6 +971,18 @@ Patterns are used like 'magic' is set, unless explicitly overruled.
|
|||||||
The 'edcompatible' option value is not used.
|
The 'edcompatible' option value is not used.
|
||||||
The 'gdefault' option value is not used.
|
The 'gdefault' option value is not used.
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
*:++* *:--*
|
||||||
|
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.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@@ -793,12 +1026,14 @@ THIS IS STILL UNDER DEVELOPMENT - ANYTHING CAN BREAK - ANYTHING CAN CHANGE
|
|||||||
:enddef End of a function defined with `:def`. It should be on
|
:enddef End of a function defined with `:def`. It should be on
|
||||||
a line by its own.
|
a line by its own.
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
If the script the function is defined in is Vim9 script, then script-local
|
If the script the function is defined in is Vim9 script, then script-local
|
||||||
variables can be accessed without the "s:" prefix. They must be defined
|
variables can be accessed without the "s:" prefix. They must be defined
|
||||||
before the function is compiled. If the script the function is defined in is
|
before the function is compiled. If the script the function is defined in is
|
||||||
legacy script, then script-local variables must be accessed with the "s:"
|
legacy script, then script-local variables must be accessed with the "s:"
|
||||||
prefix and they do not need to exist (they can be deleted any time).
|
prefix if they do not exist at the time of compiling.
|
||||||
|
|
||||||
*:defc* *:defcompile*
|
*:defc* *:defcompile*
|
||||||
:defc[ompile] Compile functions defined in the current script that
|
:defc[ompile] Compile functions defined in the current script that
|
||||||
@@ -811,6 +1046,14 @@ prefix and they do not need to exist (they can be deleted any time).
|
|||||||
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] profile {func}
|
||||||
|
Like `:disassemble` but with the instructions used for
|
||||||
|
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: >
|
||||||
@@ -833,6 +1076,37 @@ 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: >
|
||||||
|
var flist: list<func>
|
||||||
|
for i in range(5)
|
||||||
|
var inloop = i
|
||||||
|
flist[i] = () => inloop
|
||||||
|
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
|
||||||
|
to the same instance, which in the end will have the value 4. This is
|
||||||
|
efficient, also when looping many times. If you do want a separate context
|
||||||
|
for each closure call a function to define it: >
|
||||||
|
def GetClosure(i: number): func
|
||||||
|
var infunc = i
|
||||||
|
return () => infunc
|
||||||
|
enddef
|
||||||
|
|
||||||
|
var flist: list<func>
|
||||||
|
for i in range(5)
|
||||||
|
flist[i] = GetClosure(i)
|
||||||
|
endfor
|
||||||
|
echo range(5)->map((i, _) => flist[i]())
|
||||||
|
# Result: [0, 1, 2, 3, 4]
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
4. Types *vim9-types*
|
4. Types *vim9-types*
|
||||||
@@ -857,10 +1131,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
|
||||||
@@ -869,8 +1141,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
|
||||||
@@ -959,12 +1239,27 @@ 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
|
||||||
|
variable was declared in a legacy function.
|
||||||
|
|
||||||
|
|
||||||
Stricter type checking ~
|
Stricter type checking ~
|
||||||
*type-checking*
|
*type-checking*
|
||||||
In legacy Vim script, where a number was expected, a string would be
|
In legacy Vim script, where a number was expected, a string would be
|
||||||
automatically converted to a number. This was convenient for an actual number
|
automatically converted to a number. This was convenient for an actual number
|
||||||
such as "123", but leads to unexpected problems (but no error message) if the
|
such as "123", but leads to unexpected problems (and no error message) if the
|
||||||
string doesn't start with a number. Quite often this leads to hard-to-find
|
string doesn't start with a number. Quite often this leads to hard-to-find
|
||||||
bugs.
|
bugs.
|
||||||
|
|
||||||
@@ -972,14 +1267,26 @@ 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 compiled code: >
|
not change. This will give an error in Vim9 script: >
|
||||||
map([1, 2, 3], (i, v) => 'item ' .. i)
|
vim9 echo map([1, 2, 3], (i, v) => 'item ' .. i)
|
||||||
E1012: Type mismatch; expected list<number> but got list<string>
|
E1012: Type mismatch; expected number but got string
|
||||||
Instead use |mapnew()|.
|
Instead use |mapnew(): >
|
||||||
|
vim9 echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
|
||||||
|
['item 0', 'item 1', 'item 2']
|
||||||
|
|
||||||
|
If the item type was determined to be "any" it can change to a more specific
|
||||||
|
type. E.g. when a list of mixed types gets changed to a list of numbers: >
|
||||||
|
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
|
||||||
|
|flattennew()| instead.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@@ -999,9 +1306,9 @@ that you don't do that.
|
|||||||
Namespace ~
|
Namespace ~
|
||||||
*vim9-namespace*
|
*vim9-namespace*
|
||||||
To recognize a file that can be imported the `vim9script` statement must
|
To recognize a file that can be imported the `vim9script` statement must
|
||||||
appear as the first statement in the file. It tells Vim to interpret the
|
appear as the first statement in the file (see |vim9-mix| for an exception).
|
||||||
script in its own namespace, instead of the global namespace. If a file
|
It tells Vim to interpret the script in its own namespace, instead of the
|
||||||
starts with: >
|
global namespace. If a file starts with: >
|
||||||
vim9script
|
vim9script
|
||||||
var myvar = 'yes'
|
var myvar = 'yes'
|
||||||
Then "myvar" will only exist in this file. While without `vim9script` it would
|
Then "myvar" will only exist in this file. While without `vim9script` it would
|
||||||
@@ -1019,7 +1326,30 @@ A side effect of `:vim9script` is that the 'cpoptions' option is set to the
|
|||||||
Vim default value, like with: >
|
Vim default value, like with: >
|
||||||
:set cpo&vim
|
:set cpo&vim
|
||||||
One of the effects is that |line-continuation| is always enabled.
|
One of the effects is that |line-continuation| is always enabled.
|
||||||
The original value of 'cpoptions' is restored at the end of the script.
|
The original value of 'cpoptions' is restored at the end of the script, while
|
||||||
|
flags added or removed in the script are also added to or removed from the
|
||||||
|
original value to get the same effect. The order of flags may change.
|
||||||
|
|
||||||
|
*vim9-mix*
|
||||||
|
There is one way to use both legacy and Vim9 syntax in one script file: >
|
||||||
|
" comments may go here
|
||||||
|
if !has('vim9script')
|
||||||
|
" legacy script commands go here
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
vim9script
|
||||||
|
# Vim9 script commands go here
|
||||||
|
This allows for writing a script that takes advantage of the Vim9 script
|
||||||
|
syntax if possible, but will also work on a Vim version without it.
|
||||||
|
|
||||||
|
This can only work in two ways:
|
||||||
|
1. The "if" statement evaluates to false, the commands up to `endif` are
|
||||||
|
skipped and `vim9script` is then the first command actually executed.
|
||||||
|
2. The "if" statement evaluates to true, the commands up to `endif` are
|
||||||
|
executed and `finish` bails out before reaching `vim9script`.
|
||||||
|
|
||||||
|
TODO: The "vim9script" feature does not exist yet, it will only be added once
|
||||||
|
the Vim9 script syntax has been fully implemented.
|
||||||
|
|
||||||
|
|
||||||
Export ~
|
Export ~
|
||||||
@@ -1031,9 +1361,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. {classes are not implemented yet}
|
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.
|
||||||
@@ -1064,6 +1395,9 @@ script file to avoid confusion.
|
|||||||
`: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
|
||||||
@@ -1073,6 +1407,8 @@ 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, unless it is explicitly added in
|
||||||
|
'runtimepath'.
|
||||||
|
|
||||||
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.
|
||||||
@@ -1090,7 +1426,7 @@ actually needed. A recommended mechanism:
|
|||||||
|
|
||||||
1. In the plugin define user commands, functions and/or mappings that refer to
|
1. In the plugin define user commands, functions and/or mappings that refer to
|
||||||
an autoload script. >
|
an autoload script. >
|
||||||
command -nargs=1 SearchForStuff call searchfor#Stuff(<f-args>)
|
command -nargs=1 SearchForStuff searchfor#Stuff(<f-args>)
|
||||||
|
|
||||||
< This goes in .../plugin/anyname.vim. "anyname.vim" can be freely chosen.
|
< This goes in .../plugin/anyname.vim. "anyname.vim" can be freely chosen.
|
||||||
|
|
||||||
@@ -1133,27 +1469,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*
|
||||||
@@ -1183,12 +1538,12 @@ When compiling lines of Vim commands into instructions as much as possible
|
|||||||
should be done at compile time. Postponing it to runtime makes the execution
|
should be done at compile time. Postponing it to runtime makes the execution
|
||||||
slower and means mistakes are found only later. For example, when
|
slower and means mistakes are found only later. For example, when
|
||||||
encountering the "+" character and compiling this into a generic add
|
encountering the "+" character and compiling this into a generic add
|
||||||
instruction, at execution time the instruction would have to inspect the type
|
instruction, at runtime the instruction would have to inspect the type of the
|
||||||
of the arguments and decide what kind of addition to do. And when the
|
arguments and decide what kind of addition to do. And when the type is
|
||||||
type is dictionary throw an error. If the types are known to be numbers then
|
dictionary throw an error. If the types are known to be numbers then an "add
|
||||||
an "add number" instruction can be used, which is faster. The error can be
|
number" instruction can be used, which is faster. The error can be given at
|
||||||
given at compile time, no error handling is needed at runtime, since adding
|
compile time, no error handling is needed at runtime, since adding two numbers
|
||||||
two numbers cannot fail.
|
cannot fail.
|
||||||
|
|
||||||
The syntax for types, using <type> for compound types, is similar to Java. It
|
The syntax for types, using <type> for compound types, is similar to Java. It
|
||||||
is easy to understand and widely used. The type names are what were used in
|
is easy to understand and widely used. The type names are what were used in
|
||||||
@@ -1342,7 +1697,7 @@ functions return these values.
|
|||||||
|
|
||||||
If you have any type of value and want to use it as a boolean, use the `!!`
|
If you have any type of value and want to use it as a boolean, use the `!!`
|
||||||
operator:
|
operator:
|
||||||
true: !`!'text'`, `!![99]`, `!!{'x': 1}`, `!!99`
|
true: `!!'text'`, `!![99]`, `!!{'x': 1}`, `!!99`
|
||||||
false: `!!''`, `!![]`, `!!{}`
|
false: `!!''`, `!![]`, `!!{}`
|
||||||
|
|
||||||
From a language like JavaScript we have this handy construct: >
|
From a language like JavaScript we have this handy construct: >
|
||||||
|
|||||||
@@ -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 @@
|
|||||||
*visual.txt* For Vim version 8.2. Last change: 2019 Nov 02
|
*visual.txt* For Vim version 8.2. Last change: 2021 May 30
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -429,7 +429,7 @@ abcdefghijklmnopqrstuvwxyz
|
|||||||
|
|
||||||
abcdefghijklmnSTRINGopqrstuvwxyz
|
abcdefghijklmnSTRINGopqrstuvwxyz
|
||||||
abc STRING defghijklmnopqrstuvwxyz
|
abc STRING defghijklmnopqrstuvwxyz
|
||||||
abcdef ghi STRING jklmnopqrstuvwxyz
|
abcdef ghi STRING jklmnopqrstuvwxyz
|
||||||
abcdefghijklmnSTRINGopqrstuvwxyz
|
abcdefghijklmnSTRINGopqrstuvwxyz
|
||||||
|
|
||||||
2. fo<C-v>3j$ASTRING<ESC> *v_b_A_example*
|
2. fo<C-v>3j$ASTRING<ESC> *v_b_A_example*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*windows.txt* For Vim version 8.2. Last change: 2020 Dec 18
|
*windows.txt* For Vim version 8.2. Last change: 2021 Apr 10
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -138,10 +138,12 @@ status line is inverted anyway; you will only see this problem on terminals
|
|||||||
that have termcap codes for italics.
|
that have termcap codes for italics.
|
||||||
|
|
||||||
*filler-lines*
|
*filler-lines*
|
||||||
The lines after the last buffer line in a window are called filler lines.
|
The lines after the last buffer line in a window are called filler lines. By
|
||||||
These lines start with a tilde (~) character. By default, these are
|
default, these lines start with a tilde (~) character. The 'eob' item in the
|
||||||
highlighted as NonText (|hl-NonText|). The EndOfBuffer highlight group
|
'fillchars' option can be used to change this character. By default, these
|
||||||
(|hl-EndOfBuffer|) can be used to change the highlighting of filler lines.
|
characters are highlighted as NonText (|hl-NonText|). The EndOfBuffer
|
||||||
|
highlight group (|hl-EndOfBuffer|) can be used to change the highlighting of
|
||||||
|
the filler characters.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Opening and closing a window *opening-window* *E36*
|
3. Opening and closing a window *opening-window* *E36*
|
||||||
@@ -208,7 +210,9 @@ CTRL-W CTRL_N *CTRL-W_CTRL-N*
|
|||||||
:[N]new [++opt] [+cmd] {file}
|
:[N]new [++opt] [+cmd] {file}
|
||||||
:[N]sp[lit] [++opt] [+cmd] {file} *:split_f*
|
:[N]sp[lit] [++opt] [+cmd] {file} *:split_f*
|
||||||
Create a new window and start editing file {file} in it. This
|
Create a new window and start editing file {file} in it. This
|
||||||
behaves like a ":split" first, and then an ":e" command.
|
behaves almost like a ":split" first, and then an ":edit"
|
||||||
|
command, but the alternate file name in the original window is
|
||||||
|
set to {file}.
|
||||||
If [+cmd] is given, execute the command when the file has been
|
If [+cmd] is given, execute the command when the file has been
|
||||||
loaded |+cmd|.
|
loaded |+cmd|.
|
||||||
Also see |++opt|.
|
Also see |++opt|.
|
||||||
@@ -517,14 +521,14 @@ CTRL-W J Move the current window to be at the very bottom, using the
|
|||||||
CTRL-W H Move the current window to be at the far left, using the
|
CTRL-W H Move the current window to be at the far left, using the
|
||||||
full height of the screen. This works like closing the
|
full height of the screen. This works like closing the
|
||||||
current window and then creating another one with
|
current window and then creating another one with
|
||||||
":vert topleft split", except that the current window contents
|
`:vert topleft split`, except that the current window contents
|
||||||
is used for the new window.
|
is used for the new window.
|
||||||
|
|
||||||
*CTRL-W_L*
|
*CTRL-W_L*
|
||||||
CTRL-W L Move the current window to be at the far right, using the full
|
CTRL-W L Move the current window to be at the far right, using the full
|
||||||
height of the screen. This works like closing the
|
height of the screen. This works like closing the
|
||||||
current window and then creating another one with
|
current window and then creating another one with
|
||||||
":vert botright split", except that the current window
|
`:vert botright split`, except that the current window
|
||||||
contents is used for the new window.
|
contents is used for the new window.
|
||||||
|
|
||||||
*CTRL-W_T*
|
*CTRL-W_T*
|
||||||
@@ -567,7 +571,7 @@ CTRL-W < Decrease current window width by N (default 1).
|
|||||||
*CTRL-W_>*
|
*CTRL-W_>*
|
||||||
CTRL-W > Increase current window width by N (default 1).
|
CTRL-W > Increase current window width by N (default 1).
|
||||||
|
|
||||||
:vertical res[ize] [N] *:vertical-resize* *CTRL-W_bar*
|
:vert[ical] res[ize] [N] *:vertical-resize* *CTRL-W_bar*
|
||||||
CTRL-W | Set current window width to N (default: widest possible).
|
CTRL-W | Set current window width to N (default: widest possible).
|
||||||
|
|
||||||
You can also resize a window by dragging a status line up or down with the
|
You can also resize a window by dragging a status line up or down with the
|
||||||
@@ -786,7 +790,7 @@ can also get to them with the buffer list commands, like ":bnext".
|
|||||||
|
|
||||||
Examples: >
|
Examples: >
|
||||||
|
|
||||||
:windo set nolist nofoldcolumn | normal zn
|
:windo set nolist foldcolumn=0 | normal! zn
|
||||||
|
|
||||||
This resets the 'list' option and disables folding in all windows. >
|
This resets the 'list' option and disables folding in all windows. >
|
||||||
|
|
||||||
@@ -794,7 +798,7 @@ This resets the 'list' option and disables folding in all windows. >
|
|||||||
|
|
||||||
This resets the 'fileencoding' in each buffer and writes it if this changed
|
This resets the 'fileencoding' in each buffer and writes it if this changed
|
||||||
the buffer. The result is that all buffers will use the 'encoding' encoding
|
the buffer. The result is that all buffers will use the 'encoding' encoding
|
||||||
(if conversion works properly).
|
(if conversion succeeds).
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
9. Tag or file name under the cursor *window-tag*
|
9. Tag or file name under the cursor *window-tag*
|
||||||
|
|||||||
@@ -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: 2020 Dec 24
|
" Last Change: 2021 Jul 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")
|
||||||
@@ -168,6 +168,9 @@ au BufNewFile,BufRead *.mar setf vmasm
|
|||||||
" Atlas
|
" Atlas
|
||||||
au BufNewFile,BufRead *.atl,*.as setf atlas
|
au BufNewFile,BufRead *.atl,*.as setf atlas
|
||||||
|
|
||||||
|
" Atom is based on XML
|
||||||
|
au BufNewFile,BufRead *.atom setf xml
|
||||||
|
|
||||||
" Autoit v3
|
" Autoit v3
|
||||||
au BufNewFile,BufRead *.au3 setf autoit
|
au BufNewFile,BufRead *.au3 setf autoit
|
||||||
|
|
||||||
@@ -216,6 +219,9 @@ au BufNewFile,BufRead *.bc setf bc
|
|||||||
" BDF font
|
" BDF font
|
||||||
au BufNewFile,BufRead *.bdf setf bdf
|
au BufNewFile,BufRead *.bdf setf bdf
|
||||||
|
|
||||||
|
" Beancount
|
||||||
|
au BufNewFile,BufRead *.beancount setf beancount
|
||||||
|
|
||||||
" BibTeX bibliography database file
|
" BibTeX bibliography database file
|
||||||
au BufNewFile,BufRead *.bib setf bib
|
au BufNewFile,BufRead *.bib setf bib
|
||||||
|
|
||||||
@@ -387,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
|
||||||
@@ -402,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
|
||||||
@@ -411,6 +424,10 @@ endif
|
|||||||
" Lynx config files
|
" Lynx config files
|
||||||
au BufNewFile,BufRead lynx.cfg setf lynx
|
au BufNewFile,BufRead lynx.cfg setf lynx
|
||||||
|
|
||||||
|
" Modula-3 configuration language (must be before *.cfg and *makefile)
|
||||||
|
au BufNewFile,BufRead *.quake,cm3.cfg setf m3quake
|
||||||
|
au BufNewFile,BufRead m3makefile,m3overrides setf m3build
|
||||||
|
|
||||||
" Quake
|
" Quake
|
||||||
au BufNewFile,BufRead *baseq[2-3]/*.cfg,*id1/*.cfg setf quake
|
au BufNewFile,BufRead *baseq[2-3]/*.cfg,*id1/*.cfg setf quake
|
||||||
au BufNewFile,BufRead *quake[1-3]/*.cfg setf quake
|
au BufNewFile,BufRead *quake[1-3]/*.cfg setf quake
|
||||||
@@ -589,6 +606,9 @@ au BufNewFile,BufRead *.fan,*.fwt setf fan
|
|||||||
" Factor
|
" Factor
|
||||||
au BufNewFile,BufRead *.factor setf factor
|
au BufNewFile,BufRead *.factor setf factor
|
||||||
|
|
||||||
|
" Fennel
|
||||||
|
autocmd BufRead,BufNewFile *.fnl setf fennel
|
||||||
|
|
||||||
" Fetchmail RC file
|
" Fetchmail RC file
|
||||||
au BufNewFile,BufRead .fetchmailrc setf fetchmail
|
au BufNewFile,BufRead .fetchmailrc setf fetchmail
|
||||||
|
|
||||||
@@ -630,8 +650,11 @@ 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
|
||||||
|
|
||||||
" Git
|
" Git
|
||||||
au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit
|
au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit
|
||||||
@@ -702,10 +725,10 @@ au BufNewFile,BufRead .gtkrc,gtkrc setf gtkrc
|
|||||||
au BufNewFile,BufRead *.haml setf haml
|
au BufNewFile,BufRead *.haml setf haml
|
||||||
|
|
||||||
" Hamster Classic | Playground files
|
" Hamster Classic | Playground files
|
||||||
au BufNewFile,BufRead *.hsm setf hamster
|
au BufNewFile,BufRead *.hsm setf hamster
|
||||||
|
|
||||||
" Haskell
|
" Haskell
|
||||||
au BufNewFile,BufRead *.hs,*.hsc,*.hs-boot setf haskell
|
au BufNewFile,BufRead *.hs,*.hsc,*.hs-boot,*.hsig setf haskell
|
||||||
au BufNewFile,BufRead *.lhs setf lhaskell
|
au BufNewFile,BufRead *.lhs setf lhaskell
|
||||||
au BufNewFile,BufRead *.chs setf chaskell
|
au BufNewFile,BufRead *.chs setf chaskell
|
||||||
au BufNewFile,BufRead cabal.project setf cabalproject
|
au BufNewFile,BufRead cabal.project setf cabalproject
|
||||||
@@ -842,6 +865,18 @@ 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
|
||||||
|
|
||||||
|
" 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
|
||||||
|
|
||||||
@@ -1006,6 +1041,7 @@ au BufNewFile,BufRead *.hgrc,*hgrc setf cfg
|
|||||||
|
|
||||||
" Meson Build system config
|
" Meson Build system config
|
||||||
au BufNewFile,BufRead meson.build,meson_options.txt setf meson
|
au BufNewFile,BufRead meson.build,meson_options.txt setf meson
|
||||||
|
au BufNewFile,BufRead *.wrap setf dosini
|
||||||
|
|
||||||
" Messages (logs mostly)
|
" Messages (logs mostly)
|
||||||
au BufNewFile,BufRead */log/{auth,cron,daemon,debug,kern,lpr,mail,messages,news/news,syslog,user}{,.log,.err,.info,.warn,.crit,.notice}{,.[0-9]*,-[0-9]*} setf messages
|
au BufNewFile,BufRead */log/{auth,cron,daemon,debug,kern,lpr,mail,messages,news/news,syslog,user}{,.log,.err,.info,.warn,.crit,.notice}{,.[0-9]*,-[0-9]*} setf messages
|
||||||
@@ -1036,10 +1072,10 @@ au BufNewFile,BufRead *.mod
|
|||||||
\ setf modsim3 |
|
\ setf modsim3 |
|
||||||
\ endif
|
\ endif
|
||||||
|
|
||||||
" Modula 2 (.md removed in favor of Markdown)
|
" Modula-2 (.md removed in favor of Markdown)
|
||||||
au BufNewFile,BufRead *.m2,*.DEF,*.MOD,*.mi setf modula2
|
au BufNewFile,BufRead *.m2,*.DEF,*.MOD,*.mi setf modula2
|
||||||
|
|
||||||
" Modula 3 (.m3, .i3, .mg, .ig)
|
" Modula-3 (.m3, .i3, .mg, .ig)
|
||||||
au BufNewFile,BufRead *.[mi][3g] setf modula3
|
au BufNewFile,BufRead *.[mi][3g] setf modula3
|
||||||
|
|
||||||
" Monk
|
" Monk
|
||||||
@@ -1173,14 +1209,18 @@ au BufNewFile,BufRead *.papp,*.pxml,*.pxsl setf papp
|
|||||||
" Password file
|
" Password file
|
||||||
au BufNewFile,BufRead */etc/passwd,*/etc/passwd-,*/etc/passwd.edit,*/etc/shadow,*/etc/shadow-,*/etc/shadow.edit,*/var/backups/passwd.bak,*/var/backups/shadow.bak setf passwd
|
au BufNewFile,BufRead */etc/passwd,*/etc/passwd-,*/etc/passwd.edit,*/etc/shadow,*/etc/shadow-,*/etc/shadow.edit,*/var/backups/passwd.bak,*/var/backups/shadow.bak setf passwd
|
||||||
|
|
||||||
" Pascal (also *.p)
|
" Pascal (also *.p, *.pp, *.inc)
|
||||||
au BufNewFile,BufRead *.pas setf pascal
|
au BufNewFile,BufRead *.pas setf pascal
|
||||||
|
|
||||||
|
" Pascal or Puppet manifest
|
||||||
au BufNewFile,BufRead *.pp call dist#ft#FTpp()
|
au BufNewFile,BufRead *.pp call dist#ft#FTpp()
|
||||||
|
|
||||||
" Delphi or Lazarus program file
|
" Delphi or Lazarus program file
|
||||||
au BufNewFile,BufRead *.dpr,*.lpr setf pascal
|
au BufNewFile,BufRead *.dpr,*.lpr setf pascal
|
||||||
|
|
||||||
|
" Free Pascal makefile definition file
|
||||||
|
au BufNewFile,BufRead *.fpc setf fpcmake
|
||||||
|
|
||||||
" PDF
|
" PDF
|
||||||
au BufNewFile,BufRead *.pdf setf pdf
|
au BufNewFile,BufRead *.pdf setf pdf
|
||||||
|
|
||||||
@@ -1194,8 +1234,6 @@ else
|
|||||||
au BufNewFile,BufRead *.pl call dist#ft#FTpl()
|
au BufNewFile,BufRead *.pl call dist#ft#FTpl()
|
||||||
endif
|
endif
|
||||||
au BufNewFile,BufRead *.plx,*.al,*.psgi setf perl
|
au BufNewFile,BufRead *.plx,*.al,*.psgi setf perl
|
||||||
au BufNewFile,BufRead *.p6,*.pm6,*.pl6 setf perl6
|
|
||||||
au BufNewFile,BufRead *.raku,*.rakumod setf perl6
|
|
||||||
|
|
||||||
" Perl, XPM or XPM2
|
" Perl, XPM or XPM2
|
||||||
au BufNewFile,BufRead *.pm
|
au BufNewFile,BufRead *.pm
|
||||||
@@ -1209,7 +1247,6 @@ au BufNewFile,BufRead *.pm
|
|||||||
|
|
||||||
" Perl POD
|
" Perl POD
|
||||||
au BufNewFile,BufRead *.pod setf pod
|
au BufNewFile,BufRead *.pod setf pod
|
||||||
au BufNewFile,BufRead *.pod6 setf pod6
|
|
||||||
|
|
||||||
" Php, php3, php4, etc.
|
" Php, php3, php4, etc.
|
||||||
" Also Phtml (was used for PHP 2 in the past)
|
" Also Phtml (was used for PHP 2 in the past)
|
||||||
@@ -1266,22 +1303,33 @@ au BufNewFile,BufRead *.pov setf pov
|
|||||||
" Povray configuration
|
" Povray configuration
|
||||||
au BufNewFile,BufRead .povrayrc setf povini
|
au BufNewFile,BufRead .povrayrc setf povini
|
||||||
|
|
||||||
" Povray, PHP or assembly
|
" Povray, Pascal, PHP or assembly
|
||||||
au BufNewFile,BufRead *.inc call dist#ft#FTinc()
|
au BufNewFile,BufRead *.inc call dist#ft#FTinc()
|
||||||
|
|
||||||
|
" PowerShell
|
||||||
|
au BufNewFile,BufRead *.ps1,*.psd1,*.psm1,*.pssc setf ps1
|
||||||
|
au BufNewFile,BufRead *.ps1xml setf ps1xml
|
||||||
|
au BufNewFile,BufRead *.cdxml,*.psc1 setf xml
|
||||||
|
|
||||||
" Printcap and Termcap
|
" Printcap and Termcap
|
||||||
au BufNewFile,BufRead *printcap
|
au BufNewFile,BufRead *printcap
|
||||||
\ let b:ptcap_type = "print" | setf ptcap
|
\ let b:ptcap_type = "print" | setf ptcap
|
||||||
au BufNewFile,BufRead *termcap
|
au BufNewFile,BufRead *termcap
|
||||||
\ let b:ptcap_type = "term" | setf ptcap
|
\ let b:ptcap_type = "term" | setf ptcap
|
||||||
|
|
||||||
" PCCTS / ANTRL
|
" PCCTS / ANTLR
|
||||||
"au BufNewFile,BufRead *.g setf antrl
|
"au BufNewFile,BufRead *.g setf antlr
|
||||||
au BufNewFile,BufRead *.g setf pccts
|
au BufNewFile,BufRead *.g setf pccts
|
||||||
|
|
||||||
" PPWizard
|
" PPWizard
|
||||||
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
||||||
|
|
||||||
|
" Puppet
|
||||||
|
au BufNewFile,BufRead Puppetfile setf ruby
|
||||||
|
|
||||||
|
" Embedded Puppet
|
||||||
|
au BufNewFile,BufRead *.epp setf epuppet
|
||||||
|
|
||||||
" Obj 3D file format
|
" Obj 3D file format
|
||||||
" TODO: is there a way to avoid MS-Windows Object files?
|
" TODO: is there a way to avoid MS-Windows Object files?
|
||||||
au BufNewFile,BufRead *.obj setf obj
|
au BufNewFile,BufRead *.obj setf obj
|
||||||
@@ -1317,10 +1365,16 @@ au BufNewFile,BufRead *.pdb setf prolog
|
|||||||
" Promela
|
" Promela
|
||||||
au BufNewFile,BufRead *.pml setf promela
|
au BufNewFile,BufRead *.pml setf promela
|
||||||
|
|
||||||
|
" Property Specification Language (PSL)
|
||||||
|
au BufNewFile,BufRead *.psl setf psl
|
||||||
|
|
||||||
" Google protocol buffers
|
" Google protocol buffers
|
||||||
au BufNewFile,BufRead *.proto setf proto
|
au BufNewFile,BufRead *.proto setf proto
|
||||||
au BufNewFile,BufRead *.pbtxt setf pbtxt
|
au BufNewFile,BufRead *.pbtxt setf pbtxt
|
||||||
|
|
||||||
|
" Poke
|
||||||
|
au BufNewFile,BufRead *.pk setf poke
|
||||||
|
|
||||||
" Protocols
|
" Protocols
|
||||||
au BufNewFile,BufRead */etc/protocols setf protocols
|
au BufNewFile,BufRead */etc/protocols setf protocols
|
||||||
|
|
||||||
@@ -1335,6 +1389,9 @@ 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)
|
||||||
|
au BufNewFile,BufRead *.pm6,*.p6,*.t6,*.pod6,*.raku,*.rakumod,*.rakudoc,*.rakutest setf raku
|
||||||
|
|
||||||
" Ratpoison config/command files
|
" Ratpoison config/command files
|
||||||
au BufNewFile,BufRead .ratpoisonrc,ratpoisonrc setf ratpoison
|
au BufNewFile,BufRead .ratpoisonrc,ratpoisonrc setf ratpoison
|
||||||
|
|
||||||
@@ -1378,6 +1435,9 @@ else
|
|||||||
au BufNewFile,BufRead *.rmd,*.smd setf rmd
|
au BufNewFile,BufRead *.rmd,*.smd setf rmd
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" RSS looks like XML
|
||||||
|
au BufNewFile,BufRead *.rss setf xml
|
||||||
|
|
||||||
" R reStructuredText file
|
" R reStructuredText file
|
||||||
if has("fname_case")
|
if has("fname_case")
|
||||||
au BufNewFile,BufRead *.Rrst,*.rrst,*.Srst,*.srst setf rrst
|
au BufNewFile,BufRead *.Rrst,*.rrst,*.Srst,*.srst setf rrst
|
||||||
@@ -1424,8 +1484,8 @@ au BufNewFile,BufRead *.rb,*.rbw setf ruby
|
|||||||
" RubyGems
|
" RubyGems
|
||||||
au BufNewFile,BufRead *.gemspec setf ruby
|
au BufNewFile,BufRead *.gemspec setf ruby
|
||||||
|
|
||||||
" Rust
|
" RBS (Ruby Signature)
|
||||||
au BufNewFile,BufRead *.rs setf rust
|
au BufNewFile,BufRead *.rbs setf rbs
|
||||||
|
|
||||||
" Rackup
|
" Rackup
|
||||||
au BufNewFile,BufRead *.ru setf ruby
|
au BufNewFile,BufRead *.ru setf ruby
|
||||||
@@ -1439,6 +1499,9 @@ au BufNewFile,BufRead *.builder,*.rxml,*.rjs setf ruby
|
|||||||
" Rantfile and Rakefile is like Ruby
|
" Rantfile and Rakefile is like Ruby
|
||||||
au BufNewFile,BufRead [rR]antfile,*.rant,[rR]akefile,*.rake setf ruby
|
au BufNewFile,BufRead [rR]antfile,*.rant,[rR]akefile,*.rake setf ruby
|
||||||
|
|
||||||
|
" Rust
|
||||||
|
au BufNewFile,BufRead *.rs setf rust
|
||||||
|
|
||||||
" 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
|
||||||
|
|
||||||
@@ -1455,7 +1518,7 @@ au BufNewFile,BufRead *.sass setf sass
|
|||||||
au BufNewFile,BufRead *.sa setf sather
|
au BufNewFile,BufRead *.sa setf sather
|
||||||
|
|
||||||
" Scala
|
" Scala
|
||||||
au BufNewFile,BufRead *.scala setf scala
|
au BufNewFile,BufRead *.scala,*.sc setf scala
|
||||||
|
|
||||||
" SBT - Scala Build Tool
|
" SBT - Scala Build Tool
|
||||||
au BufNewFile,BufRead *.sbt setf sbt
|
au BufNewFile,BufRead *.sbt setf sbt
|
||||||
@@ -1463,6 +1526,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
|
||||||
|
|
||||||
@@ -1475,6 +1541,9 @@ au BufNewFile,BufRead *.sdl,*.pr setf sdl
|
|||||||
" sed
|
" sed
|
||||||
au BufNewFile,BufRead *.sed setf sed
|
au BufNewFile,BufRead *.sed setf sed
|
||||||
|
|
||||||
|
" svelte
|
||||||
|
au BufNewFile,BufRead *.svelte setf svelte
|
||||||
|
|
||||||
" Sieve (RFC 3028, 5228)
|
" Sieve (RFC 3028, 5228)
|
||||||
au BufNewFile,BufRead *.siv,*.sieve setf sieve
|
au BufNewFile,BufRead *.siv,*.sieve setf sieve
|
||||||
|
|
||||||
@@ -1524,11 +1593,10 @@ au BufNewFile,BufRead catalog setf catalog
|
|||||||
" Gentoo ebuilds, Arch Linux PKGBUILDs and Alpine Linux APKBUILDs are actually
|
" Gentoo ebuilds, Arch Linux PKGBUILDs and Alpine Linux APKBUILDs are actually
|
||||||
" bash scripts.
|
" bash scripts.
|
||||||
" NOTE: Patterns ending in a star are further down, these have lower priority.
|
" NOTE: Patterns ending in a star are further down, these have lower priority.
|
||||||
au BufNewFile,BufRead .bashrc,bashrc,bash.bashrc,.bash[_-]profile,.bash[_-]logout,.bash[_-]aliases,bash-fc[-.],*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass,PKGBUILD,APKBUILD call dist#ft#SetFileTypeSH("bash")
|
au BufNewFile,BufRead .bashrc,bashrc,bash.bashrc,.bash[_-]profile,.bash[_-]logout,.bash[_-]aliases,bash-fc[-.],*.ebuild,*.bash,*.eclass,PKGBUILD,APKBUILD call dist#ft#SetFileTypeSH("bash")
|
||||||
au BufNewFile,BufRead .kshrc,*.ksh call dist#ft#SetFileTypeSH("ksh")
|
au BufNewFile,BufRead .kshrc,*.ksh call dist#ft#SetFileTypeSH("ksh")
|
||||||
au BufNewFile,BufRead */etc/profile,.profile,*.sh,*.env call dist#ft#SetFileTypeSH(getline(1))
|
au BufNewFile,BufRead */etc/profile,.profile,*.sh,*.env call dist#ft#SetFileTypeSH(getline(1))
|
||||||
|
|
||||||
|
|
||||||
" Shell script (Arch Linux) or PHP file (Drupal)
|
" Shell script (Arch Linux) or PHP file (Drupal)
|
||||||
au BufNewFile,BufRead *.install
|
au BufNewFile,BufRead *.install
|
||||||
\ if getline(1) =~ '<?php' |
|
\ if getline(1) =~ '<?php' |
|
||||||
@@ -1731,8 +1799,13 @@ au BufNewFile,BufRead *.tli setf tli
|
|||||||
" Telix Salt
|
" Telix Salt
|
||||||
au BufNewFile,BufRead *.slt setf tsalt
|
au BufNewFile,BufRead *.slt setf tsalt
|
||||||
|
|
||||||
" Tera Term Language
|
" Tera Term Language or Turtle
|
||||||
au BufRead,BufNewFile *.ttl setf teraterm
|
au BufRead,BufNewFile *.ttl
|
||||||
|
\ if getline(1) =~ '^@\?\(prefix\|base\)' |
|
||||||
|
\ setf turtle |
|
||||||
|
\ else |
|
||||||
|
\ setf teraterm |
|
||||||
|
\ endif
|
||||||
|
|
||||||
" Terminfo
|
" Terminfo
|
||||||
au BufNewFile,BufRead *.ti setf terminfo
|
au BufNewFile,BufRead *.ti setf terminfo
|
||||||
@@ -2194,8 +2267,11 @@ au BufNewFile,BufRead .reminders* call s:StarSetf('remind')
|
|||||||
" SGML catalog file
|
" SGML catalog file
|
||||||
au BufNewFile,BufRead sgml.catalog* call s:StarSetf('catalog')
|
au BufNewFile,BufRead sgml.catalog* call s:StarSetf('catalog')
|
||||||
|
|
||||||
|
" avoid doc files being recognized a shell files
|
||||||
|
au BufNewFile,BufRead */doc/{,.}bash[_-]completion{,.d,.sh}{,/*} setf text
|
||||||
|
|
||||||
" Shell scripts ending in a star
|
" Shell scripts ending in a star
|
||||||
au BufNewFile,BufRead .bashrc*,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,bash-fc[-.]*,PKGBUILD*,APKBUILD* call dist#ft#SetFileTypeSH("bash")
|
au BufNewFile,BufRead .bashrc*,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,bash-fc[-.]*,PKGBUILD*,APKBUILD*,*/{,.}bash[_-]completion{,.d,.sh}{,/*} call dist#ft#SetFileTypeSH("bash")
|
||||||
au BufNewFile,BufRead .kshrc* call dist#ft#SetFileTypeSH("ksh")
|
au BufNewFile,BufRead .kshrc* call dist#ft#SetFileTypeSH("ksh")
|
||||||
au BufNewFile,BufRead .profile* call dist#ft#SetFileTypeSH(getline(1))
|
au BufNewFile,BufRead .profile* call dist#ft#SetFileTypeSH(getline(1))
|
||||||
|
|
||||||
|
|||||||
@@ -159,40 +159,41 @@ if exists("g:ada_abbrev")
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
" Section: Commands, Mapping, Menus {{{1
|
" Section: Commands, Mapping, Menus {{{1
|
||||||
"
|
if !exists(':AdaTagFile')
|
||||||
call ada#Map_Popup (
|
call ada#Map_Popup (
|
||||||
\ 'Tag.List',
|
\ 'Tag.List',
|
||||||
\ 'l',
|
\ 'l',
|
||||||
\ 'call ada#List_Tag ()')
|
\ 'call ada#List_Tag ()')
|
||||||
call ada#Map_Popup (
|
call ada#Map_Popup (
|
||||||
\'Tag.Jump',
|
\'Tag.Jump',
|
||||||
\'j',
|
\'j',
|
||||||
\'call ada#Jump_Tag ()')
|
\'call ada#Jump_Tag ()')
|
||||||
call ada#Map_Menu (
|
call ada#Map_Menu (
|
||||||
\'Tag.Create File',
|
\'Tag.Create File',
|
||||||
\':AdaTagFile',
|
\':AdaTagFile',
|
||||||
\'call ada#Create_Tags (''file'')')
|
\'call ada#Create_Tags (''file'')')
|
||||||
call ada#Map_Menu (
|
call ada#Map_Menu (
|
||||||
\'Tag.Create Dir',
|
\'Tag.Create Dir',
|
||||||
\':AdaTagDir',
|
\':AdaTagDir',
|
||||||
\'call ada#Create_Tags (''dir'')')
|
\'call ada#Create_Tags (''dir'')')
|
||||||
|
|
||||||
call ada#Map_Menu (
|
call ada#Map_Menu (
|
||||||
\'Highlight.Toggle Space Errors',
|
\'Highlight.Toggle Space Errors',
|
||||||
\ ':AdaSpaces',
|
\ ':AdaSpaces',
|
||||||
\'call ada#Switch_Syntax_Option (''space_errors'')')
|
\'call ada#Switch_Syntax_Option (''space_errors'')')
|
||||||
call ada#Map_Menu (
|
call ada#Map_Menu (
|
||||||
\'Highlight.Toggle Lines Errors',
|
\'Highlight.Toggle Lines Errors',
|
||||||
\ ':AdaLines',
|
\ ':AdaLines',
|
||||||
\'call ada#Switch_Syntax_Option (''line_errors'')')
|
\'call ada#Switch_Syntax_Option (''line_errors'')')
|
||||||
call ada#Map_Menu (
|
call ada#Map_Menu (
|
||||||
\'Highlight.Toggle Rainbow Color',
|
\'Highlight.Toggle Rainbow Color',
|
||||||
\ ':AdaRainbow',
|
\ ':AdaRainbow',
|
||||||
\'call ada#Switch_Syntax_Option (''rainbow_color'')')
|
\'call ada#Switch_Syntax_Option (''rainbow_color'')')
|
||||||
call ada#Map_Menu (
|
call ada#Map_Menu (
|
||||||
\'Highlight.Toggle Standard Types',
|
\'Highlight.Toggle Standard Types',
|
||||||
\ ':AdaTypes',
|
\ ':AdaTypes',
|
||||||
\'call ada#Switch_Syntax_Option (''standard_types'')')
|
\'call ada#Switch_Syntax_Option (''standard_types'')')
|
||||||
|
endif
|
||||||
|
|
||||||
" 1}}}
|
" 1}}}
|
||||||
" Reset cpoptions
|
" Reset cpoptions
|
||||||
|
|||||||
27
runtime/ftplugin/basic.vim
Normal file
27
runtime/ftplugin/basic.vim
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
" Vim filetype plugin file
|
||||||
|
" Language: BASIC
|
||||||
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
|
" Last Change: 2015 Jan 10
|
||||||
|
|
||||||
|
if exists("b:did_ftplugin")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
setlocal comments=:REM,:'
|
||||||
|
setlocal commentstring='\ %s
|
||||||
|
setlocal formatoptions-=t formatoptions+=croql
|
||||||
|
|
||||||
|
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||||
|
let b:browsefilter = "BASIC Source Files (*.bas)\t*.bas\n" .
|
||||||
|
\ "All Files (*.*)\t*.*\n"
|
||||||
|
endif
|
||||||
|
|
||||||
|
let b:undo_ftplugin = "setl fo< com< cms< sua<" .
|
||||||
|
\ " | unlet! b:browsefilter"
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
" Vim filetype plugin file
|
" Vim filetype plugin file
|
||||||
" Language: Bazel (http://bazel.io)
|
" Language: Bazel (http://bazel.io)
|
||||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-bzl)
|
" Maintainer: David Barnett (https://github.com/google/vim-ft-bzl)
|
||||||
" Last Change: 2015 Aug 11
|
" Last Change: 2021 Jan 19
|
||||||
|
|
||||||
""
|
""
|
||||||
" @section Introduction, intro
|
" @section Introduction, intro
|
||||||
@@ -51,6 +51,8 @@ if get(g:, 'ft_bzl_fold', 0)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if exists('*BzlFoldText')
|
if exists('*BzlFoldText')
|
||||||
|
let &cpo = s:save_cpo
|
||||||
|
unlet s:save_cpo
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user