mirror of
https://github.com/zoriya/vim.git
synced 2025-12-12 02:06:18 +00:00
Compare commits
910 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
81b573d7e5 | ||
|
|
fe154990c1 | ||
|
|
6f2465d336 | ||
|
|
e7dd0fa2c6 | ||
|
|
35dc17634d | ||
|
|
e18acb02bb | ||
|
|
6d877fe018 | ||
|
|
85b43c6cb7 | ||
|
|
397a87ac1c | ||
|
|
efd73ae5d2 | ||
|
|
6b8c7ba062 | ||
|
|
a4df834a92 | ||
|
|
7e0be3ea21 | ||
|
|
b6643d10d3 | ||
|
|
c670ebddcd | ||
|
|
6f95363677 | ||
|
|
47c532e2bc | ||
|
|
36a5b6867b | ||
|
|
95d2e7634c | ||
|
|
b10ff5c1b3 | ||
|
|
e7a74d5375 | ||
|
|
2995e5cf4e | ||
|
|
2e17fef225 | ||
|
|
f35fd8e5d4 | ||
|
|
61efa16932 | ||
|
|
1d9cef769d | ||
|
|
155b088208 | ||
|
|
da6d42c35a | ||
|
|
4f6e772c9c | ||
|
|
4c8b546da2 | ||
|
|
d597ab00d7 | ||
|
|
21dc8f1527 | ||
|
|
5cffa8df7e | ||
|
|
fe8e9f6740 | ||
|
|
9323ca51c2 | ||
|
|
056678184f | ||
|
|
139575de66 | ||
|
|
48f69cdfa4 | ||
|
|
96923b7a14 | ||
|
|
1a572e9b3b | ||
|
|
8d5e514d77 | ||
|
|
1fdf84e033 | ||
|
|
977525fea6 | ||
|
|
10792feebd | ||
|
|
7a73252063 | ||
|
|
7d42840033 | ||
|
|
6e2e2cc95b | ||
|
|
129e33e44b | ||
|
|
5c68617d39 | ||
|
|
b29b96806f | ||
|
|
424da7aa48 | ||
|
|
5f823d1e73 | ||
|
|
533870a985 | ||
|
|
e850439a56 | ||
|
|
754d2b4036 | ||
|
|
4f3321f704 | ||
|
|
986b0fd0c5 | ||
|
|
badf04f5c2 | ||
|
|
8b530b3158 | ||
|
|
d0b7bfa957 | ||
|
|
bbf84e2737 | ||
|
|
5b4f8a0e84 | ||
|
|
e2adcf3974 | ||
|
|
fb43cfc2c6 | ||
|
|
f52fac2ed9 | ||
|
|
0a4e098f32 | ||
|
|
176711f069 | ||
|
|
dbf8094b17 | ||
|
|
20fb28b1dc | ||
|
|
873f8243f6 | ||
|
|
e406ff87c8 | ||
|
|
1b1df95f1a | ||
|
|
53ba6ca5b2 | ||
|
|
bf40e90dfe | ||
|
|
48f83c31d1 | ||
|
|
cf6662082f | ||
|
|
81da16b53f | ||
|
|
f8691004b0 | ||
|
|
56b84b1728 | ||
|
|
f2832ad965 | ||
|
|
f01a653ac5 | ||
|
|
f3507a517c | ||
|
|
1588bc8ebe | ||
|
|
ed0c62e7b1 | ||
|
|
673bcb10eb | ||
|
|
0b40d086b3 | ||
|
|
8acb9cc620 | ||
|
|
08238045e7 | ||
|
|
d8f8629b1b | ||
|
|
6ca883dd8a | ||
|
|
88dd6523fa | ||
|
|
936dc6014c | ||
|
|
127969cf98 | ||
|
|
d523c7be5c | ||
|
|
655b734ee8 | ||
|
|
9eccee0e85 | ||
|
|
525eba00ef | ||
|
|
9fb7b42935 | ||
|
|
b2175220da | ||
|
|
b29ae15977 | ||
|
|
df1bbea436 | ||
|
|
c12dc47b8f | ||
|
|
204852ae2a | ||
|
|
e1d1211799 | ||
|
|
330a388e18 | ||
|
|
f78ee2b49f | ||
|
|
24d9c0557e | ||
|
|
f07751457c | ||
|
|
196c3850db | ||
|
|
6aca4d3c2b | ||
|
|
d979d64fa2 | ||
|
|
21efafe4c2 | ||
|
|
0e1574c406 | ||
|
|
28bf649a57 | ||
|
|
1fc34225ac | ||
|
|
35d8c2010e | ||
|
|
fe9112e630 | ||
|
|
e4e1a1e1c8 | ||
|
|
2f87a99b6e | ||
|
|
b9c5108593 | ||
|
|
8ccbbeb620 | ||
|
|
7f687aaca9 | ||
|
|
8d5daf267e | ||
|
|
c6e9d7063d | ||
|
|
f6b0c79742 | ||
|
|
7a22224875 | ||
|
|
f01af9c4e6 | ||
|
|
3e7637bd26 | ||
|
|
1983f1aa31 | ||
|
|
5de4c4372d | ||
|
|
afd4ae35d6 | ||
|
|
5c52be40fb | ||
|
|
cbef12e60b | ||
|
|
6caeda2fce | ||
|
|
00333cb3b3 | ||
|
|
29ab6ce9f3 | ||
|
|
c51cf03298 | ||
|
|
e41c1dd889 | ||
|
|
4df5b33f20 | ||
|
|
5a2d4a3ecb | ||
|
|
416b5f4894 | ||
|
|
9383a3afb6 | ||
|
|
62628d97c4 | ||
|
|
ae49aa8434 | ||
|
|
05c1734c4f | ||
|
|
68afde4c9b | ||
|
|
0e71b7d4ce | ||
|
|
5c6edf41f9 | ||
|
|
5ec633b9b0 | ||
|
|
4d56b971cb | ||
|
|
38b85cb4d7 | ||
|
|
9c9be05b17 | ||
|
|
3c620b0c03 | ||
|
|
dea5ab0fc5 | ||
|
|
fa02616718 | ||
|
|
6e1a38745f | ||
|
|
33fc4a6307 | ||
|
|
dd2dfb3cb0 | ||
|
|
2007dd49f5 | ||
|
|
6a8b13614e | ||
|
|
4791fcd825 | ||
|
|
2dada73a4e | ||
|
|
9cd4c0fb98 | ||
|
|
2afeb40831 | ||
|
|
e843efcc35 | ||
|
|
b2c72359dc | ||
|
|
afa048f0d4 | ||
|
|
fe73255c92 | ||
|
|
29a9e69718 | ||
|
|
68eab67119 | ||
|
|
2457b2bbc2 | ||
|
|
70b9e4f4c3 | ||
|
|
16f6c8ac94 | ||
|
|
6456fae9ba | ||
|
|
1349bd712c | ||
|
|
ca0c1caa36 | ||
|
|
0f113e4f7b | ||
|
|
4e889f98e9 | ||
|
|
7842761bba | ||
|
|
16b51d26fe | ||
|
|
83e36c8606 | ||
|
|
592f625001 | ||
|
|
993faa3405 | ||
|
|
101979358f | ||
|
|
c2f17f7e64 | ||
|
|
0f6e28f686 | ||
|
|
944697ae19 | ||
|
|
ad6c45f625 | ||
|
|
c1e6c7bafe | ||
|
|
eddd4fc4f6 | ||
|
|
cdf717283c | ||
|
|
d56eb654f5 | ||
|
|
adbb383e0f | ||
|
|
20563e0f84 | ||
|
|
a42535340a | ||
|
|
a493b6506b | ||
|
|
5921aeb574 | ||
|
|
e89bfd212b | ||
|
|
1fca5f3e86 | ||
|
|
b8fb5bb68d | ||
|
|
97b231541d | ||
|
|
56acd1f8ed | ||
|
|
0257599036 | ||
|
|
8e5ba693ad | ||
|
|
0c7f2610de | ||
|
|
6296d1e60e | ||
|
|
ea5c898b5f | ||
|
|
e08be09a08 | ||
|
|
2438430863 | ||
|
|
8329ab79b2 | ||
|
|
cd1cda2f87 | ||
|
|
9437737833 | ||
|
|
ae6f1d8b14 | ||
|
|
d288eaad84 | ||
|
|
646bb7247a | ||
|
|
f9435e49ef | ||
|
|
b31aec3b93 | ||
|
|
34f8117dec | ||
|
|
f5288c5895 | ||
|
|
8b716f5f22 | ||
|
|
9fdde7992a | ||
|
|
6b43471da4 | ||
|
|
64d95cfc56 | ||
|
|
0e1f36fc59 | ||
|
|
e88c6b7a5d | ||
|
|
4556a2e868 | ||
|
|
7745f14ef3 | ||
|
|
e3846cf1eb | ||
|
|
8991be2ab4 | ||
|
|
b5d2039e00 | ||
|
|
bc51006402 | ||
|
|
7a3b802bab | ||
|
|
e4835bf340 | ||
|
|
0e76714e90 | ||
|
|
774e55702f | ||
|
|
55737c2a31 | ||
|
|
6dd7424c7e | ||
|
|
0cd3e94e2c | ||
|
|
9773db6f9b | ||
|
|
4b1d963972 | ||
|
|
0631bb4ed7 | ||
|
|
c87aa34dfd | ||
|
|
299d8e5eec | ||
|
|
75e27d78f5 | ||
|
|
cf6ad8ea8c | ||
|
|
f7fbeed0ac | ||
|
|
e131496ebf | ||
|
|
4525a57afb | ||
|
|
4d03d87000 | ||
|
|
cdf0485969 | ||
|
|
4549166078 | ||
|
|
8e38555ece | ||
|
|
33f3c59854 | ||
|
|
62b191c387 | ||
|
|
a749a42ed2 | ||
|
|
6e28703a8e | ||
|
|
90a57168a4 | ||
|
|
2a9b62dfa2 | ||
|
|
620d8edba0 | ||
|
|
0f7ff851cb | ||
|
|
d68b2fc034 | ||
|
|
18f7593e57 | ||
|
|
0c3cc2fec3 | ||
|
|
41ee5b1913 | ||
|
|
29c70f612f | ||
|
|
c9e3187d05 | ||
|
|
5b1d6e98c6 | ||
|
|
bd89d44063 | ||
|
|
481acb1141 | ||
|
|
f6246f51e3 | ||
|
|
14f23122bf | ||
|
|
8196e94a8b | ||
|
|
92f645bef7 | ||
|
|
bece72785d | ||
|
|
414acd342f | ||
|
|
949b35d83b | ||
|
|
560dff49c0 | ||
|
|
74a0a5b26d | ||
|
|
9da17d7c57 | ||
|
|
78a8404f8b | ||
|
|
769f5895eb | ||
|
|
28e8f73ae2 | ||
|
|
68cc2b8a37 | ||
|
|
b6a138eb33 | ||
|
|
dce2441a60 | ||
|
|
3a5988c025 | ||
|
|
779aeff5c3 | ||
|
|
e023d49937 | ||
|
|
73a16c22a4 | ||
|
|
e3537aec2f | ||
|
|
51ab7c7d0d | ||
|
|
3908ef5017 | ||
|
|
3787f26c2e | ||
|
|
f681cfb90b | ||
|
|
7aca5ca676 | ||
|
|
92368aad61 | ||
|
|
28f1a51bde | ||
|
|
4e713bafc0 | ||
|
|
54969f4ef5 | ||
|
|
63ff72aab9 | ||
|
|
b247e0622e | ||
|
|
6bf821e8ab | ||
|
|
8cbf249917 | ||
|
|
5f4ef5f5e5 | ||
|
|
107f7325f6 | ||
|
|
160afdb185 | ||
|
|
2626d6a71c | ||
|
|
fe1bfc9b26 | ||
|
|
8164f6ea3c | ||
|
|
0c1550d9e9 | ||
|
|
500761b1cf | ||
|
|
e5b7897585 | ||
|
|
00eb99528e | ||
|
|
cd53eed2c5 | ||
|
|
82e46e5d31 | ||
|
|
e0c2b2ceaa | ||
|
|
4fa1346bf4 | ||
|
|
46f3080e5c | ||
|
|
fc88df42f1 | ||
|
|
21ebb0899e | ||
|
|
83d0cec956 | ||
|
|
3e79c97c18 | ||
|
|
a2baa73d1d | ||
|
|
46950b225f | ||
|
|
972db23279 | ||
|
|
7676c15879 | ||
|
|
02a977ea5e | ||
|
|
5658ca343f | ||
|
|
a8ec4916ca | ||
|
|
5411910c77 | ||
|
|
6e1d31e9e3 | ||
|
|
2d3ac2e030 | ||
|
|
381692b6f1 | ||
|
|
a1c5195180 | ||
|
|
ab8f7c50cf | ||
|
|
73257149d7 | ||
|
|
adbb1bf21d | ||
|
|
9b4a80a665 | ||
|
|
eb4a9ba293 | ||
|
|
8133018f50 | ||
|
|
4e3b318230 | ||
|
|
68854a82fd | ||
|
|
9e0208f51c | ||
|
|
223a950a85 | ||
|
|
c570e9cf68 | ||
|
|
c4573eb12d | ||
|
|
424bcae1fb | ||
|
|
eb6c276595 | ||
|
|
1f47a287ee | ||
|
|
672776dbe8 | ||
|
|
48a604845e | ||
|
|
44d1f89c24 | ||
|
|
4c93aff20f | ||
|
|
5703310e64 | ||
|
|
6a05807092 | ||
|
|
d8fe6d34bb | ||
|
|
ec3637cbaf | ||
|
|
44a4d947bb | ||
|
|
679d66c2d2 | ||
|
|
848faddb87 | ||
|
|
06011e1a55 | ||
|
|
6970e1e36a | ||
|
|
f10911e5db | ||
|
|
62aec93bfd | ||
|
|
135e15251e | ||
|
|
d5cec1f1f0 | ||
|
|
f12b7815f6 | ||
|
|
37f47958b8 | ||
|
|
4dc0dd8699 | ||
|
|
97c554d514 | ||
|
|
24714a1916 | ||
|
|
585ee07cfe | ||
|
|
a0c4e2f2d7 | ||
|
|
06f15416bb | ||
|
|
e96eea7b6a | ||
|
|
652dee4486 | ||
|
|
14cbf77845 | ||
|
|
57ff2b7068 | ||
|
|
fb55207ed1 | ||
|
|
420fabcd4f | ||
|
|
fb80862e49 | ||
|
|
ddd815ba2a | ||
|
|
bd8168c770 | ||
|
|
fbf4f1ca15 | ||
|
|
166788c657 | ||
|
|
37cf413e3e | ||
|
|
b3d83980d2 | ||
|
|
a4bc2dd7cc | ||
|
|
98cd30383a | ||
|
|
35c807df1f | ||
|
|
94373c48e7 | ||
|
|
745b938a48 | ||
|
|
b0ad2d92fd | ||
|
|
e939f5ebba | ||
|
|
fc4c44836a | ||
|
|
70c43d84be | ||
|
|
1080c48ec8 | ||
|
|
1a804528ab | ||
|
|
47d1666d60 | ||
|
|
a827bf3ea8 | ||
|
|
250155ae31 | ||
|
|
44db8213d3 | ||
|
|
806d037671 | ||
|
|
8d02ce1ed7 | ||
|
|
06b77229ca | ||
|
|
dc5490e2cb | ||
|
|
85b6747abc | ||
|
|
76687d2717 | ||
|
|
1450112eef | ||
|
|
3a8ad5918b | ||
|
|
a6c09a7c20 | ||
|
|
3e93a2b075 | ||
|
|
dff97e65eb | ||
|
|
50e0525445 | ||
|
|
fe6fb267e6 | ||
|
|
4663435074 | ||
|
|
7924a17791 | ||
|
|
502d8ae3e8 | ||
|
|
acc4b5648b | ||
|
|
8e4af851fd | ||
|
|
7e765a39b7 | ||
|
|
c351dc1e0c | ||
|
|
058ee7c569 | ||
|
|
2a7aa83458 | ||
|
|
428058ab32 | ||
|
|
79a6e25b79 | ||
|
|
abe628e1bd | ||
|
|
f4e88f2152 | ||
|
|
7ef4a2fe37 | ||
|
|
e15ebeffb3 | ||
|
|
206919191f | ||
|
|
d1c58999c8 | ||
|
|
6f4754b9f7 | ||
|
|
bcfa11b7df | ||
|
|
ff5cbe8133 | ||
|
|
36c2add7f8 | ||
|
|
28e60cc088 | ||
|
|
47bcc5f4c8 | ||
|
|
3ba685eeef | ||
|
|
39b8944539 | ||
|
|
7b29f6a394 | ||
|
|
5600a709f4 | ||
|
|
9530b580a7 | ||
|
|
0bfa84916d | ||
|
|
b697dc295d | ||
|
|
3d8e25a6d2 | ||
|
|
0bd663a380 | ||
|
|
19e69a6330 | ||
|
|
e70dd11ef4 | ||
|
|
6517f14165 | ||
|
|
f0e7e6365e | ||
|
|
b7057bdd09 | ||
|
|
45f9cfbdc7 | ||
|
|
e6a4200ff4 | ||
|
|
dd5893be34 | ||
|
|
e615db0604 | ||
|
|
05386ca1d4 | ||
|
|
6f0ddbf00d | ||
|
|
2017d6f3b1 | ||
|
|
9c7cae66bc | ||
|
|
21f0d6cbca | ||
|
|
4ede01f188 | ||
|
|
92000e2e71 | ||
|
|
14b8d6ac6b | ||
|
|
ae1bd87fe8 | ||
|
|
726f7f91fd | ||
|
|
7e93577a95 | ||
|
|
05b2761548 | ||
|
|
4ac893f321 | ||
|
|
fc6ccebea6 | ||
|
|
57df9e8a9f | ||
|
|
8aa0e6c60d | ||
|
|
ca34db3bde | ||
|
|
f61c89d2e6 | ||
|
|
bed34f0a8a | ||
|
|
f67c717e34 | ||
|
|
937610bc9f | ||
|
|
1a8825d7a3 | ||
|
|
b0b2b73dca | ||
|
|
b4868eddd9 | ||
|
|
17dd519633 | ||
|
|
a9528b39a6 | ||
|
|
94075b2b0e | ||
|
|
ef7aadbe36 | ||
|
|
d02dce2bb5 | ||
|
|
fd218c8a36 | ||
|
|
6079da7cfb | ||
|
|
113b8dc111 | ||
|
|
840f16202e | ||
|
|
1836d61578 | ||
|
|
cbbc48f64b | ||
|
|
31dcc8de46 | ||
|
|
1247126956 | ||
|
|
64283d5e1f | ||
|
|
78f60322f7 | ||
|
|
afa76e1cf2 | ||
|
|
b3d9ceed2b | ||
|
|
6389baa669 | ||
|
|
15d1635e50 | ||
|
|
3f3597be3f | ||
|
|
262898ae43 | ||
|
|
9f8c304c8a | ||
|
|
e8741a73e2 | ||
|
|
0023f82a76 | ||
|
|
47036b6bd7 | ||
|
|
c73499351a | ||
|
|
c665dabdf4 | ||
|
|
c84287d6d8 | ||
|
|
dc98776f89 | ||
|
|
d9b74a2a41 | ||
|
|
d648c01f2f | ||
|
|
8f9956994d | ||
|
|
fd31be29b8 | ||
|
|
c81e9bf4f0 | ||
|
|
f6ebc82004 | ||
|
|
a9725221ac | ||
|
|
fa1a457059 | ||
|
|
b5988e3656 | ||
|
|
bfac409d0b | ||
|
|
38ecd97226 | ||
|
|
857c8bb1bb | ||
|
|
d4e2f50901 | ||
|
|
04b871da80 | ||
|
|
e32c3c462c | ||
|
|
069613c9e8 | ||
|
|
f60a63485e | ||
|
|
1050476ead | ||
|
|
e3ce17a3ca | ||
|
|
e1833bfd01 | ||
|
|
c53b467473 | ||
|
|
ece07639f4 | ||
|
|
0f112052ac | ||
|
|
26ebf1f036 | ||
|
|
7bfa6d698e | ||
|
|
c0a1d370fa | ||
|
|
3e4fa3d7d3 | ||
|
|
d9d2fd0aa3 | ||
|
|
c43e6235c7 | ||
|
|
130f65d46b | ||
|
|
0e3e7ba05f | ||
|
|
3049fcf0a1 | ||
|
|
4050305bfd | ||
|
|
a00e622a29 | ||
|
|
33b25d1317 | ||
|
|
ced2b38a56 | ||
|
|
8d9e470aa9 | ||
|
|
71930f174d | ||
|
|
78a70533c3 | ||
|
|
de05bb2573 | ||
|
|
54598066ca | ||
|
|
d041f4208b | ||
|
|
53c296112e | ||
|
|
f5d639a8af | ||
|
|
5d9826973d | ||
|
|
f479cac084 | ||
|
|
f111cdfae6 | ||
|
|
17d36cbcd3 | ||
|
|
3cf21b3051 | ||
|
|
2284f6cca3 | ||
|
|
b8822442d7 | ||
|
|
0bbca540f7 | ||
|
|
0d47ad4027 | ||
|
|
d6f27c66cc | ||
|
|
19db9e6ba7 | ||
|
|
762838218f | ||
|
|
160aa86a9d | ||
|
|
6990b78f25 | ||
|
|
5e6b9882fe | ||
|
|
577bd85d55 | ||
|
|
fe2ef0b2cd | ||
|
|
ee63031b57 | ||
|
|
b06cfcf5a3 | ||
|
|
dc4451df61 | ||
|
|
5f25c38550 | ||
|
|
c14f667626 | ||
|
|
f85a424c83 | ||
|
|
2f0936cb9a | ||
|
|
b2810f123c | ||
|
|
782b43d894 | ||
|
|
7c24dfddc2 | ||
|
|
04935fb17e | ||
|
|
1433672568 | ||
|
|
aa9b3cacd5 | ||
|
|
9f1a39a5d1 | ||
|
|
67ffb41786 | ||
|
|
748b308eeb | ||
|
|
370791465e | ||
|
|
d844862bce | ||
|
|
48d0ac775c | ||
|
|
62a099cc6d | ||
|
|
a4c96252b1 | ||
|
|
e12406526a | ||
|
|
d1f34e64f0 | ||
|
|
71f21938bc | ||
|
|
b2d85e3784 | ||
|
|
cb1956d6f2 | ||
|
|
2b04d5f1ef | ||
|
|
e664a32701 | ||
|
|
834d41853e | ||
|
|
32884ad753 | ||
|
|
a909c48bec | ||
|
|
11de43d2d4 | ||
|
|
2ef01d929d | ||
|
|
84c62d59a3 | ||
|
|
d5f400c607 | ||
|
|
18f4740f04 | ||
|
|
a33737b6d8 | ||
|
|
58493cfae2 | ||
|
|
269dc63618 | ||
|
|
c689f8c3d9 | ||
|
|
e60b3c47d7 | ||
|
|
d82a47dd04 | ||
|
|
bb8cac56d9 | ||
|
|
9d00e4a814 | ||
|
|
d3a117814d | ||
|
|
677658ae49 | ||
|
|
8e7d9db32b | ||
|
|
c653e4a2bd | ||
|
|
a6f7929e62 | ||
|
|
548911ee14 | ||
|
|
d88be5be80 | ||
|
|
6cac77016b | ||
|
|
d94fbfc74a | ||
|
|
fcd1635a46 | ||
|
|
c024ed9233 | ||
|
|
48824e952f | ||
|
|
10d6f18b2f | ||
|
|
078a46161e | ||
|
|
9acf2d8be9 | ||
|
|
ad8f248585 | ||
|
|
c88e977862 | ||
|
|
0e2508d9e6 | ||
|
|
114dbda785 | ||
|
|
5c75eed758 | ||
|
|
e982586f8e | ||
|
|
475d9521ba | ||
|
|
1d423ef75f | ||
|
|
b09feaa86e | ||
|
|
ac78dd4a35 | ||
|
|
3d0da09bb2 | ||
|
|
eaaac014a0 | ||
|
|
8bfa0eb863 | ||
|
|
2b4ecc2c31 | ||
|
|
b3bd1d39e6 | ||
|
|
a6feb163f0 | ||
|
|
6b1a99dfe3 | ||
|
|
9a846fbaa5 | ||
|
|
b34689010a | ||
|
|
cbadefe25a | ||
|
|
1f4a3457a3 | ||
|
|
0f7a5e758c | ||
|
|
3a846e6bca | ||
|
|
0699b040e6 | ||
|
|
74409f6279 | ||
|
|
56200eed62 | ||
|
|
e70cec9760 | ||
|
|
460ae5dfca | ||
|
|
b37a65e4bf | ||
|
|
b79ee0c299 | ||
|
|
654b729c4c | ||
|
|
096ca73dac | ||
|
|
d0819d11ec | ||
|
|
436b5adc97 | ||
|
|
f1474d801b | ||
|
|
6d0570117a | ||
|
|
ef089f50f9 | ||
|
|
1a9922243a | ||
|
|
4b1478093e | ||
|
|
eb822a280c | ||
|
|
9a015111a5 | ||
|
|
6ad84ab3e4 | ||
|
|
1fa3de1ce8 | ||
|
|
04fb916684 | ||
|
|
d293981d2b | ||
|
|
94f3192b03 | ||
|
|
4c13e5e676 | ||
|
|
cfe3af284a | ||
|
|
f38aad85cf | ||
|
|
1c67f3a977 | ||
|
|
13789bf103 | ||
|
|
5d2e007ccb | ||
|
|
491669701c | ||
|
|
8e7cc6b920 | ||
|
|
ab16ad33ba | ||
|
|
94fb8274ca | ||
|
|
5a664fe57f | ||
|
|
ba26367fea | ||
|
|
edc6f10390 | ||
|
|
ccc1644f95 | ||
|
|
5d20fbf2e7 | ||
|
|
5ea5f37372 | ||
|
|
3d0abad5bf | ||
|
|
264d3ddac0 | ||
|
|
febb78fa17 | ||
|
|
c97f9a55bd | ||
|
|
10c75c4a09 | ||
|
|
11ceb7d949 | ||
|
|
8c697e3698 | ||
|
|
92f246e4f9 | ||
|
|
06f6095623 | ||
|
|
7473a84cf9 | ||
|
|
4bf1006cae | ||
|
|
8bb3fe4d4d | ||
|
|
d9da86e94e | ||
|
|
90c317f224 | ||
|
|
8b6256f6ec | ||
|
|
be4e223ead | ||
|
|
a4d131d110 | ||
|
|
1cae5a0a03 | ||
|
|
8dac2acd6a | ||
|
|
4b28ba3245 | ||
|
|
af4a61a85d | ||
|
|
5da36052a4 | ||
|
|
bf7ff61af4 | ||
|
|
ef8f04b1d1 | ||
|
|
23018f2d4b | ||
|
|
bbdd3fb804 | ||
|
|
27708e6c7b | ||
|
|
c553a21e18 | ||
|
|
1f318c6eac | ||
|
|
c88ac94a0b | ||
|
|
7319981f21 | ||
|
|
71c41255f6 | ||
|
|
9c23f9bb5f | ||
|
|
71eb3ad579 | ||
|
|
8bb65f230d | ||
|
|
ec86520f94 | ||
|
|
fb9dcb080b | ||
|
|
1802405d71 | ||
|
|
db8e5c21b9 | ||
|
|
ae1068afde | ||
|
|
223d0a6bc8 | ||
|
|
5cd647935d | ||
|
|
35cfd793aa | ||
|
|
7f4a628efe | ||
|
|
d787e40fdb | ||
|
|
e7f4abd38b | ||
|
|
73a024209c | ||
|
|
806da5176e | ||
|
|
b6db146762 | ||
|
|
679140c56b | ||
|
|
6f98371532 | ||
|
|
5937c7505f | ||
|
|
fa3b72348d | ||
|
|
d3f00f54bf | ||
|
|
6073f13f55 | ||
|
|
70a120b72b | ||
|
|
51e64b2789 | ||
|
|
310091d20f | ||
|
|
28fbbeac70 | ||
|
|
f2f0bddf30 | ||
|
|
b4168fd917 | ||
|
|
a80aad7174 | ||
|
|
82b3b4c6cf | ||
|
|
080182216e | ||
|
|
f973eeb491 | ||
|
|
1aeccdb464 | ||
|
|
fa46ead31a | ||
|
|
1b5f7a6202 | ||
|
|
d92813a598 | ||
|
|
59618fed4c | ||
|
|
0d807107b6 | ||
|
|
6f79e614b2 | ||
|
|
8d95d7091d | ||
|
|
dab17a0689 | ||
|
|
39713d3acb | ||
|
|
dc7c366f3a | ||
|
|
a99fb23842 | ||
|
|
003312b1d2 | ||
|
|
2f9f4ccfc8 | ||
|
|
fea43e44c0 | ||
|
|
bc404bfb32 | ||
|
|
86b3ab4fa0 | ||
|
|
700e6b1662 | ||
|
|
f47c5a8e2d | ||
|
|
265f811f5a | ||
|
|
2de5371a75 | ||
|
|
389b72196e | ||
|
|
0ccb5842f5 | ||
|
|
605ec91e5a | ||
|
|
60618c8f1a | ||
|
|
0dc4d8eaec | ||
|
|
44a8977de4 | ||
|
|
647ab4cede | ||
|
|
422085f1c8 | ||
|
|
71b7685092 | ||
|
|
ddc80aff57 | ||
|
|
354b23a9f8 | ||
|
|
db1a410b61 | ||
|
|
d2ff705af3 | ||
|
|
02929a372e | ||
|
|
259f443a93 | ||
|
|
deda6441e4 | ||
|
|
c3f91c0648 | ||
|
|
994a0a298b | ||
|
|
23e72369ff | ||
|
|
e124204c4f | ||
|
|
94c785d235 | ||
|
|
8103527da7 | ||
|
|
f79cbf6512 | ||
|
|
b15cf44c1d | ||
|
|
52797bae17 | ||
|
|
0e6adf8a29 | ||
|
|
6df0f2759d | ||
|
|
6ecf58b0d7 | ||
|
|
2d877599ee | ||
|
|
19569ca6d8 | ||
|
|
8ee6028de3 | ||
|
|
427f065a88 | ||
|
|
c479ce032f | ||
|
|
f87dac04c3 | ||
|
|
1821d1498c | ||
|
|
ce7eada12e | ||
|
|
cfabad9bcf | ||
|
|
a5d78d1f11 | ||
|
|
57bc2333b1 | ||
|
|
7c0fb80030 | ||
|
|
b334137acf | ||
|
|
7509ad8b0f | ||
|
|
919c12c19a | ||
|
|
f8a79fc346 | ||
|
|
c2958585f6 | ||
|
|
8176be1598 | ||
|
|
6206877c51 | ||
|
|
829c8e87e2 | ||
|
|
0407d27034 | ||
|
|
3194e5bf87 | ||
|
|
6840a0ffe8 | ||
|
|
80d60910ff | ||
|
|
3b309f11db | ||
|
|
1e78deb077 | ||
|
|
851f86b951 | ||
|
|
739f13a55b | ||
|
|
33b968dc60 | ||
|
|
ef082e12df | ||
|
|
04ef1fb13d | ||
|
|
d2439e0443 | ||
|
|
3bb79dc191 | ||
|
|
fa9a8e0fd1 | ||
|
|
6ae8fae869 | ||
|
|
6e371ecb27 | ||
|
|
9a4ec5a626 | ||
|
|
4e30b5c3bc | ||
|
|
4f16e9de98 | ||
|
|
48c0196378 | ||
|
|
7b1463bca3 | ||
|
|
2ef9156b42 | ||
|
|
052ff291d7 | ||
|
|
a416861c64 | ||
|
|
29f3a45915 | ||
|
|
205f29c3e9 | ||
|
|
9537e37b11 | ||
|
|
1daedc8381 | ||
|
|
f8e9eb8e17 | ||
|
|
9fffef9f35 | ||
|
|
b711814cb6 | ||
|
|
8a7374f8c4 | ||
|
|
ff39a650b2 | ||
|
|
dd297bc11d | ||
|
|
dee78e1ce8 | ||
|
|
4c8c634365 | ||
|
|
95b2dd0c00 | ||
|
|
e8a92b6166 | ||
|
|
c4ec338fb8 | ||
|
|
dcb53be441 | ||
|
|
d0fb907253 | ||
|
|
e50507126f | ||
|
|
56150da687 | ||
|
|
a48d4e44a2 | ||
|
|
48873aebc0 | ||
|
|
78a61068cf | ||
|
|
2172bff364 | ||
|
|
f7f7aaf8aa | ||
|
|
4dc24eb5ad | ||
|
|
92c33eb273 | ||
|
|
ecabb51107 | ||
|
|
3e55a973b5 | ||
|
|
2336c376d5 | ||
|
|
8603be338a | ||
|
|
6409553b6e | ||
|
|
40bcec1bac | ||
|
|
4700398e38 | ||
|
|
12f3c1b77f | ||
|
|
e5710a02cb | ||
|
|
0bac5fc5e1 | ||
|
|
c7d5fc8622 | ||
|
|
f661cee847 | ||
|
|
f645ee47c8 | ||
|
|
5e18ccc60b | ||
|
|
f589fd3e10 | ||
|
|
e031fe90cf | ||
|
|
c7269f8627 | ||
|
|
dea4a61637 | ||
|
|
23bdef2571 | ||
|
|
8dea145e39 | ||
|
|
853a7692d1 | ||
|
|
7645da568c | ||
|
|
01a4dcbcee | ||
|
|
b579f6ebbf | ||
|
|
cd2f8f0e00 | ||
|
|
15a24f0898 | ||
|
|
800b01b0c8 | ||
|
|
6f42cb6e51 | ||
|
|
04b7b4bf7f | ||
|
|
c14b57c079 | ||
|
|
c903695be5 | ||
|
|
8658c759f0 | ||
|
|
021ef351c2 | ||
|
|
acdc911e4e | ||
|
|
5e86964bf4 |
9
.github/CODEOWNERS
vendored
9
.github/CODEOWNERS
vendored
@@ -9,6 +9,7 @@
|
|||||||
# 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.
|
||||||
|
|
||||||
|
runtime/autoload/freebasic.vim @dkearns
|
||||||
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
|
||||||
@@ -89,6 +90,7 @@ runtime/ftplugin/gitsendemail.vim @tpope
|
|||||||
runtime/ftplugin/gprof.vim @dpelle
|
runtime/ftplugin/gprof.vim @dpelle
|
||||||
runtime/ftplugin/haml.vim @tpope
|
runtime/ftplugin/haml.vim @tpope
|
||||||
runtime/ftplugin/hgcommit.vim @k-takata
|
runtime/ftplugin/hgcommit.vim @k-takata
|
||||||
|
runtime/ftplugin/i3config.vim @hiqua
|
||||||
runtime/ftplugin/indent.vim @dkearns
|
runtime/ftplugin/indent.vim @dkearns
|
||||||
runtime/ftplugin/javascript.vim @dkearns
|
runtime/ftplugin/javascript.vim @dkearns
|
||||||
runtime/ftplugin/javascriptreact.vim @dkearns
|
runtime/ftplugin/javascriptreact.vim @dkearns
|
||||||
@@ -110,10 +112,12 @@ runtime/ftplugin/pbtxt.vim @lakshayg
|
|||||||
runtime/ftplugin/pdf.vim @tpope
|
runtime/ftplugin/pdf.vim @tpope
|
||||||
runtime/ftplugin/ps1.vim @heaths
|
runtime/ftplugin/ps1.vim @heaths
|
||||||
runtime/ftplugin/ps1xml.vim @heaths
|
runtime/ftplugin/ps1xml.vim @heaths
|
||||||
|
runtime/ftplugin/qb64.vim @dkearns
|
||||||
runtime/ftplugin/routeros.vim @zainin
|
runtime/ftplugin/routeros.vim @zainin
|
||||||
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/solution.vim @dkearns
|
||||||
runtime/ftplugin/spec.vim @ignatenkobrain
|
runtime/ftplugin/spec.vim @ignatenkobrain
|
||||||
runtime/ftplugin/systemverilog.vim @Kocha
|
runtime/ftplugin/systemverilog.vim @Kocha
|
||||||
runtime/ftplugin/tcsh.vim @dkearns
|
runtime/ftplugin/tcsh.vim @dkearns
|
||||||
@@ -124,6 +128,7 @@ runtime/ftplugin/typescript.vim @dkearns
|
|||||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||||
runtime/ftplugin/xml.vim @chrisbra
|
runtime/ftplugin/xml.vim @chrisbra
|
||||||
runtime/ftplugin/zsh.vim @chrisbra
|
runtime/ftplugin/zsh.vim @chrisbra
|
||||||
|
runtime/indent/basic.vim @dkearns
|
||||||
runtime/indent/bst.vim @tpope
|
runtime/indent/bst.vim @tpope
|
||||||
runtime/indent/cdl.vim @dkearns
|
runtime/indent/cdl.vim @dkearns
|
||||||
runtime/indent/clojure.vim @axvr
|
runtime/indent/clojure.vim @axvr
|
||||||
@@ -138,6 +143,7 @@ runtime/indent/elm.vim @andys8
|
|||||||
runtime/indent/eruby.vim @tpope @dkearns
|
runtime/indent/eruby.vim @tpope @dkearns
|
||||||
runtime/indent/eterm.vim @dkearns
|
runtime/indent/eterm.vim @dkearns
|
||||||
runtime/indent/framescript.vim @dkearns
|
runtime/indent/framescript.vim @dkearns
|
||||||
|
runtime/indent/freebasic.vim @dkearns
|
||||||
runtime/indent/gitconfig.vim @tpope
|
runtime/indent/gitconfig.vim @tpope
|
||||||
runtime/indent/haml.vim @tpope
|
runtime/indent/haml.vim @tpope
|
||||||
runtime/indent/idlang.vim @dkearns
|
runtime/indent/idlang.vim @dkearns
|
||||||
@@ -152,6 +158,7 @@ runtime/indent/occam.vim @dkearns
|
|||||||
runtime/indent/postscr.vim @dkearns
|
runtime/indent/postscr.vim @dkearns
|
||||||
runtime/indent/prolog.vim @dkearns
|
runtime/indent/prolog.vim @dkearns
|
||||||
runtime/indent/ps1.vim @heaths
|
runtime/indent/ps1.vim @heaths
|
||||||
|
runtime/indent/qb64.vim @dkearns
|
||||||
runtime/indent/readline.vim @dkearns
|
runtime/indent/readline.vim @dkearns
|
||||||
runtime/indent/ruby.vim @AndrewRadev @dkearns
|
runtime/indent/ruby.vim @AndrewRadev @dkearns
|
||||||
runtime/indent/sass.vim @tpope
|
runtime/indent/sass.vim @tpope
|
||||||
@@ -208,6 +215,7 @@ 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/i3config.vim @hiqua
|
||||||
runtime/syntax/indent.vim @dkearns
|
runtime/syntax/indent.vim @dkearns
|
||||||
runtime/syntax/kconfig.vim @chrisbra
|
runtime/syntax/kconfig.vim @chrisbra
|
||||||
runtime/syntax/less.vim @genoma
|
runtime/syntax/less.vim @genoma
|
||||||
@@ -236,6 +244,7 @@ runtime/syntax/prolog.vim @XVilka
|
|||||||
runtime/syntax/ps1.vim @heaths
|
runtime/syntax/ps1.vim @heaths
|
||||||
runtime/syntax/ps1xml.vim @heaths
|
runtime/syntax/ps1xml.vim @heaths
|
||||||
runtime/syntax/psl.vim @danielkho
|
runtime/syntax/psl.vim @danielkho
|
||||||
|
runtime/syntax/qb64.vim @dkearns
|
||||||
runtime/syntax/rc.vim @chrisbra
|
runtime/syntax/rc.vim @chrisbra
|
||||||
runtime/syntax/routeros.vim @zainin
|
runtime/syntax/routeros.vim @zainin
|
||||||
runtime/syntax/rpcgen.vim @cecamp
|
runtime/syntax/rpcgen.vim @cecamp
|
||||||
|
|||||||
26
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
26
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@@ -8,6 +8,11 @@ body:
|
|||||||
attributes:
|
attributes:
|
||||||
value: |
|
value: |
|
||||||
Thanks for reporting issues of Vim!
|
Thanks for reporting issues of Vim!
|
||||||
|
|
||||||
|
If you want to report a security issue, instead of reporting it here
|
||||||
|
you can alternatively disclose it on
|
||||||
|
[huntr.dev](https://huntr.dev/bounties/disclose/?utm_campaign=vim%2Fvim&utm_medium=social&utm_source=github&target=https%3A%2F%2Fgithub.com%2Fvim%2Fvim).
|
||||||
|
They have rewards in the form of money, swag and CVEs.
|
||||||
|
|
||||||
To make it easier for us to help you please enter detailed information below.
|
To make it easier for us to help you please enter detailed information below.
|
||||||
- type: textarea
|
- type: textarea
|
||||||
@@ -26,18 +31,23 @@ body:
|
|||||||
placeholder: A clear and concise description of what you expected to happen.
|
placeholder: A clear and concise description of what you expected to happen.
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: input
|
|
||||||
attributes:
|
|
||||||
label: Operating system
|
|
||||||
description: >
|
|
||||||
Your operating system name, version and desktop environment.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: input
|
- type: input
|
||||||
attributes:
|
attributes:
|
||||||
label: Version of Vim
|
label: Version of Vim
|
||||||
description: >
|
description: >
|
||||||
The name of your development environment, version. [e.g. GNOME Terminal (v0.0.0000)]
|
Including patch level, use ":version" to see it [e.g. 8.2.1234]
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
attributes:
|
||||||
|
label: Environment
|
||||||
|
description: >
|
||||||
|
OS [e.g. Ubuntu 21.10], terminal [e.g. GNOME Terminal 3.38.1], value of $TERM, shell [e.g. bash 5.1.8]; anything that might matter
|
||||||
|
placeholder: |
|
||||||
|
Operating system:
|
||||||
|
Terminal:
|
||||||
|
Value of $TERM:
|
||||||
|
Shell:
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: textarea
|
- type: textarea
|
||||||
|
|||||||
220
.github/workflows/ci.yml
vendored
220
.github/workflows/ci.yml
vendored
@@ -5,6 +5,13 @@ on:
|
|||||||
branches: ['**']
|
branches: ['**']
|
||||||
pull_request:
|
pull_request:
|
||||||
|
|
||||||
|
# Cancels all previous workflow runs for pull requests that have not completed.
|
||||||
|
concurrency:
|
||||||
|
# The concurrency group contains the workflow name and the branch name for
|
||||||
|
# pull requests or the commit hash for any other events.
|
||||||
|
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
linux:
|
linux:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
@@ -57,34 +64,41 @@ jobs:
|
|||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
run: |
|
run: |
|
||||||
sudo apt update && sudo apt install -y \
|
PKGS=( \
|
||||||
autoconf \
|
|
||||||
lcov \
|
|
||||||
gettext \
|
gettext \
|
||||||
libcanberra-dev \
|
|
||||||
libperl-dev \
|
|
||||||
python-dev \
|
|
||||||
python3-dev \
|
|
||||||
liblua5.3-dev \
|
|
||||||
lua5.3 \
|
|
||||||
ruby-dev \
|
|
||||||
tcl-dev \
|
|
||||||
cscope \
|
|
||||||
libgtk2.0-dev \
|
libgtk2.0-dev \
|
||||||
desktop-file-utils \
|
desktop-file-utils \
|
||||||
libtool-bin \
|
libtool-bin \
|
||||||
libsodium-dev
|
)
|
||||||
|
if ${{ matrix.features == 'huge' }}; then
|
||||||
|
PKGS+=( \
|
||||||
|
autoconf \
|
||||||
|
lcov \
|
||||||
|
libcanberra-dev \
|
||||||
|
libperl-dev \
|
||||||
|
python-dev \
|
||||||
|
python3-dev \
|
||||||
|
liblua5.3-dev \
|
||||||
|
lua5.3 \
|
||||||
|
ruby-dev \
|
||||||
|
tcl-dev \
|
||||||
|
cscope \
|
||||||
|
libsodium-dev \
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
sudo apt update && sudo apt install -y "${PKGS[@]}"
|
||||||
|
|
||||||
- name: Install clang-11
|
- name: Install clang-13
|
||||||
if: matrix.compiler == 'clang'
|
if: matrix.compiler == 'clang'
|
||||||
run: |
|
run: |
|
||||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||||
. /etc/lsb-release
|
. /etc/lsb-release
|
||||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-11 main"
|
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-13 main"
|
||||||
sudo apt-get install -y clang-11 llvm-11
|
sudo apt-get install -y clang-13 llvm-13
|
||||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-11 100
|
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-13 100
|
||||||
sudo update-alternatives --set clang /usr/bin/clang-11
|
sudo update-alternatives --set clang /usr/bin/clang-13
|
||||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-11 100
|
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-13 100
|
||||||
|
sudo update-alternatives --install /usr/bin/asan_symbolize asan_symbolize /usr/bin/asan_symbolize-13 100
|
||||||
|
|
||||||
- name: Set up environment
|
- name: Set up environment
|
||||||
run: |
|
run: |
|
||||||
@@ -112,7 +126,6 @@ jobs:
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
CFLAGS=""
|
|
||||||
if ${{ matrix.coverage == true }}; then
|
if ${{ matrix.coverage == true }}; then
|
||||||
CFLAGS="$CFLAGS --coverage -DUSE_GCOV_FLUSH"
|
CFLAGS="$CFLAGS --coverage -DUSE_GCOV_FLUSH"
|
||||||
echo "LDFLAGS=--coverage"
|
echo "LDFLAGS=--coverage"
|
||||||
@@ -188,6 +201,10 @@ jobs:
|
|||||||
# Append various warning flags to CFLAGS.
|
# Append various warning flags to CFLAGS.
|
||||||
sed -i -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
sed -i -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
||||||
sed -i -f ci/config.mk.${CC}.sed ${SRCDIR}/auto/config.mk
|
sed -i -f ci/config.mk.${CC}.sed ${SRCDIR}/auto/config.mk
|
||||||
|
if [[ ${CC} = clang ]]; then
|
||||||
|
# Suppress some warnings produced by clang 12 and later.
|
||||||
|
sed -i -f ci/config.mk.clang-12.sed ${SRCDIR}/auto/config.mk
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
if: (!contains(matrix.extra, 'unittests'))
|
if: (!contains(matrix.extra, 'unittests'))
|
||||||
@@ -207,51 +224,57 @@ jobs:
|
|||||||
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||||
do_test make ${SHADOWOPT} ${TEST}
|
do_test make ${SHADOWOPT} ${TEST}
|
||||||
|
|
||||||
# - name: Coveralls
|
# - name: Coveralls
|
||||||
# if: matrix.coverage && success() && github.event_name != 'pull_request'
|
# if: matrix.coverage && github.event_name != 'pull_request'
|
||||||
# env:
|
# env:
|
||||||
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
||||||
# COVERALLS_PARALLEL: true
|
# COVERALLS_PARALLEL: true
|
||||||
# TRAVIS_JOB_ID: ${{ github.run_id }}
|
# TRAVIS_JOB_ID: ${{ github.run_id }}
|
||||||
# run: |
|
# run: |
|
||||||
# sudo apt-get install -y python3-setuptools python3-wheel
|
# sudo apt-get install -y python3-setuptools python3-wheel
|
||||||
# sudo -H pip3 install pip -U
|
# sudo -H pip3 install pip -U
|
||||||
# # needed for https support for coveralls building cffi only works with gcc, not with clang
|
# # needed for https support for coveralls building cffi only works with gcc, not with clang
|
||||||
# CC=gcc pip3 install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
|
# CC=gcc pip3 install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
|
||||||
# ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
# ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
||||||
|
|
||||||
- name: Codecov
|
- name: Generate gcov files
|
||||||
if: matrix.coverage && success()
|
if: matrix.coverage
|
||||||
run: |
|
run: |
|
||||||
cd "${SRCDIR}"
|
cd "${SRCDIR}"
|
||||||
bash <(curl -s https://codecov.io/bash) -F "${{ matrix.features }}-${{ matrix.compiler }}-${{ matrix.extra }}"
|
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||||
|
|
||||||
|
- name: Codecov
|
||||||
|
if: matrix.coverage
|
||||||
|
uses: codecov/codecov-action@v2
|
||||||
|
with:
|
||||||
|
flags: linux,${{ matrix.features }}-${{ matrix.compiler }}-${{ matrix.extra }}
|
||||||
|
|
||||||
- name: ASan logs
|
- name: ASan logs
|
||||||
if: contains(matrix.extra, 'asan') && !cancelled()
|
if: contains(matrix.extra, 'asan') && !cancelled()
|
||||||
run: |
|
run: |
|
||||||
for f in $(grep -lR '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "${LOG_DIR}"); do
|
for f in $(grep -lR '#[[:digit:]]* *0x[[:xdigit:]]*' "${LOG_DIR}"); do
|
||||||
asan_symbolize-11 -l "$f"
|
asan_symbolize -l "$f"
|
||||||
false # in order to fail a job
|
false # in order to fail a job
|
||||||
done
|
done
|
||||||
|
|
||||||
# coveralls:
|
# coveralls:
|
||||||
# runs-on: ubuntu-18.04
|
# runs-on: ubuntu-18.04
|
||||||
#
|
#
|
||||||
# needs: linux
|
# needs: linux
|
||||||
# if: always() && github.event_name != 'pull_request'
|
# if: always() && github.event_name != 'pull_request'
|
||||||
#
|
#
|
||||||
# steps:
|
# steps:
|
||||||
# - name: Parallel finished
|
# - name: Parallel finished
|
||||||
# env:
|
# env:
|
||||||
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
||||||
# run: |
|
# run: |
|
||||||
# curl -k "https://coveralls.io/webhook?repo_token=${COVERALLS_REPO_TOKEN}" -d "payload[build_num]=${GITHUB_RUN_ID}&payload[status]=done"
|
# curl -k "https://coveralls.io/webhook?repo_token=${COVERALLS_REPO_TOKEN}" -d "payload[build_num]=${GITHUB_RUN_ID}&payload[status]=done"
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
|
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.compiler }}
|
CC: clang
|
||||||
TEST: test
|
TEST: test
|
||||||
SRCDIR: ./src
|
SRCDIR: ./src
|
||||||
LEAK_CFLAGS: -DEXITFREE
|
LEAK_CFLAGS: -DEXITFREE
|
||||||
@@ -260,13 +283,13 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
features: [tiny, huge]
|
features: [tiny, normal, huge]
|
||||||
compiler: [clang, gcc]
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
|
if: matrix.features == 'huge'
|
||||||
env:
|
env:
|
||||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||||
run: |
|
run: |
|
||||||
@@ -282,6 +305,8 @@ jobs:
|
|||||||
echo "TEST=testtiny"
|
echo "TEST=testtiny"
|
||||||
echo "CONFOPT=--disable-gui"
|
echo "CONFOPT=--disable-gui"
|
||||||
;;
|
;;
|
||||||
|
normal)
|
||||||
|
;;
|
||||||
huge)
|
huge)
|
||||||
echo "CONFOPT=--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
echo "CONFOPT=--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||||
;;
|
;;
|
||||||
@@ -296,6 +321,10 @@ jobs:
|
|||||||
sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
||||||
# On macOS, the entity of gcc is clang.
|
# On macOS, the entity of gcc is clang.
|
||||||
sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk
|
sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk
|
||||||
|
# Suppress some warnings produced by clang 12 and later.
|
||||||
|
if clang --version | grep -qs 'Apple clang version \(1[3-9]\|[2-9]\)\.'; then
|
||||||
|
sed -i.bak -f ci/config.mk.clang-12.sed ${SRCDIR}/auto/config.mk
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
env:
|
env:
|
||||||
@@ -315,15 +344,14 @@ jobs:
|
|||||||
make ${TEST}
|
make ${TEST}
|
||||||
|
|
||||||
windows:
|
windows:
|
||||||
runs-on: windows-latest
|
runs-on: windows-2019
|
||||||
|
|
||||||
env:
|
env:
|
||||||
VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat
|
|
||||||
# Interfaces
|
# Interfaces
|
||||||
# Lua
|
# Lua
|
||||||
LUA_VER: 54
|
LUA_VER: 54
|
||||||
LUA_VER_DOT: '5.4'
|
LUA_VER_DOT: '5.4'
|
||||||
LUA_RELEASE: 5.4.0
|
LUA_RELEASE: 5.4.2
|
||||||
LUA32_URL: https://downloads.sourceforge.net/luabinaries/lua-%LUA_RELEASE%_Win32_dllw6_lib.zip
|
LUA32_URL: https://downloads.sourceforge.net/luabinaries/lua-%LUA_RELEASE%_Win32_dllw6_lib.zip
|
||||||
LUA64_URL: https://downloads.sourceforge.net/luabinaries/lua-%LUA_RELEASE%_Win64_dllw6_lib.zip
|
LUA64_URL: https://downloads.sourceforge.net/luabinaries/lua-%LUA_RELEASE%_Win64_dllw6_lib.zip
|
||||||
LUA_DIR: D:\Lua
|
LUA_DIR: D:\Lua
|
||||||
@@ -331,8 +359,8 @@ jobs:
|
|||||||
PYTHON_VER: 27
|
PYTHON_VER: 27
|
||||||
PYTHON_VER_DOT: '2.7'
|
PYTHON_VER_DOT: '2.7'
|
||||||
# Python 3
|
# Python 3
|
||||||
PYTHON3_VER: 38
|
PYTHON3_VER: 310
|
||||||
PYTHON3_VER_DOT: '3.8'
|
PYTHON3_VER_DOT: '3.10'
|
||||||
# Other dependencies
|
# Other dependencies
|
||||||
# winpty
|
# winpty
|
||||||
WINPTY_URL: https://github.com/rprichard/winpty/releases/download/0.4.3/winpty-0.4.3-msvc2015.zip
|
WINPTY_URL: https://github.com/rprichard/winpty/releases/download/0.4.3/winpty-0.4.3-msvc2015.zip
|
||||||
@@ -363,6 +391,10 @@ jobs:
|
|||||||
msystem: MINGW32
|
msystem: MINGW32
|
||||||
cygreg: registry32
|
cygreg: registry32
|
||||||
pyreg: "-32"
|
pyreg: "-32"
|
||||||
|
- toolchain: mingw
|
||||||
|
arch: x64
|
||||||
|
features: HUGE
|
||||||
|
coverage: yes
|
||||||
exclude:
|
exclude:
|
||||||
- toolchain: msvc
|
- toolchain: msvc
|
||||||
arch: x64
|
arch: x64
|
||||||
@@ -377,6 +409,7 @@ jobs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
git config --global core.autocrlf input
|
git config --global core.autocrlf input
|
||||||
|
echo "VCVARSALL=$(vswhere -products \* -latest -property installationPath)\\VC\\Auxiliary\\Build\\vcvarsall.bat" >> $GITHUB_ENV
|
||||||
python_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON_VER_DOT}/InstallPath/@")
|
python_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON_VER_DOT}/InstallPath/@")
|
||||||
python3_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}${{ matrix.pyreg }}/InstallPath/@")
|
python3_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}${{ matrix.pyreg }}/InstallPath/@")
|
||||||
echo "PYTHON_DIR=$python_dir" >> $GITHUB_ENV
|
echo "PYTHON_DIR=$python_dir" >> $GITHUB_ENV
|
||||||
@@ -434,8 +467,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Copy src directory to src2
|
- name: Copy src directory to src2
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: xcopy src src2\ /E > nul
|
||||||
xcopy src src2\ /E > nul
|
|
||||||
|
|
||||||
- name: Build (MSVC)
|
- name: Build (MSVC)
|
||||||
if: matrix.toolchain == 'msvc'
|
if: matrix.toolchain == 'msvc'
|
||||||
@@ -443,17 +475,15 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
||||||
cd src
|
cd src
|
||||||
:: Filter out the progress bar from the build log
|
|
||||||
sed -e "s/@<<$/@<< | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
|
|
||||||
if "${{ matrix.features }}"=="HUGE" (
|
if "${{ matrix.features }}"=="HUGE" (
|
||||||
nmake -nologo -f Make_mvc2.mak ^
|
nmake -nologo -f Make_mvc.mak ^
|
||||||
FEATURES=${{ matrix.features }} ^
|
FEATURES=${{ matrix.features }} ^
|
||||||
GUI=yes IME=yes ICONV=yes VIMDLL=yes ^
|
GUI=yes IME=yes ICONV=yes VIMDLL=yes ^
|
||||||
DYNAMIC_LUA=yes LUA=%LUA_DIR% ^
|
DYNAMIC_LUA=yes LUA=%LUA_DIR% ^
|
||||||
DYNAMIC_PYTHON=yes PYTHON=%PYTHON_DIR% ^
|
DYNAMIC_PYTHON=yes PYTHON=%PYTHON_DIR% ^
|
||||||
DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR%
|
DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR%
|
||||||
) else (
|
) else (
|
||||||
nmake -nologo -f Make_mvc2.mak ^
|
nmake -nologo -f Make_mvc.mak ^
|
||||||
FEATURES=${{ matrix.features }} ^
|
FEATURES=${{ matrix.features }} ^
|
||||||
GUI=yes IME=yes ICONV=yes VIMDLL=yes
|
GUI=yes IME=yes ICONV=yes VIMDLL=yes
|
||||||
)
|
)
|
||||||
@@ -474,7 +504,7 @@ jobs:
|
|||||||
DYNAMIC_LUA=yes LUA=${LUA_DIR} \
|
DYNAMIC_LUA=yes LUA=${LUA_DIR} \
|
||||||
DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \
|
DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \
|
||||||
DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \
|
DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \
|
||||||
STATIC_STDCPLUS=yes
|
STATIC_STDCPLUS=yes COVERAGE=${{ matrix.coverage }}
|
||||||
else
|
else
|
||||||
mingw32-make -f Make_ming.mak -j2 \
|
mingw32-make -f Make_ming.mak -j2 \
|
||||||
FEATURES=${{ matrix.features }} \
|
FEATURES=${{ matrix.features }} \
|
||||||
@@ -482,6 +512,14 @@ jobs:
|
|||||||
STATIC_STDCPLUS=yes
|
STATIC_STDCPLUS=yes
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
- name: Check version
|
||||||
|
shell: cmd
|
||||||
|
run: |
|
||||||
|
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
||||||
|
src\vim --version || exit 1
|
||||||
|
src\vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
|
||||||
|
src\vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
|
||||||
|
|
||||||
#- name: Prepare Artifact
|
#- name: Prepare Artifact
|
||||||
# shell: cmd
|
# shell: cmd
|
||||||
# run: |
|
# run: |
|
||||||
@@ -495,27 +533,34 @@ jobs:
|
|||||||
# name: vim${{ matrix.bits }}-${{ matrix.toolchain }}
|
# name: vim${{ matrix.bits }}-${{ matrix.toolchain }}
|
||||||
# path: ./artifacts
|
# path: ./artifacts
|
||||||
|
|
||||||
- name: Test
|
- name: Copy gcov data files to src2
|
||||||
|
if: matrix.coverage
|
||||||
|
shell: msys2 {0}
|
||||||
|
run: find src -name '*.gcno' | tar -c -T - | tar -x -C src2 --strip-components 1
|
||||||
|
|
||||||
|
- name: Test and show the result of testing gVim
|
||||||
shell: cmd
|
shell: cmd
|
||||||
timeout-minutes: 20
|
timeout-minutes: 20
|
||||||
run: |
|
run: |
|
||||||
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
||||||
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
||||||
cd src
|
|
||||||
echo.
|
|
||||||
echo %COL_GREEN%vim version:%COL_RESET%
|
|
||||||
.\vim --version || exit 1
|
|
||||||
|
|
||||||
echo %COL_GREEN%Start testing vim in background.%COL_RESET%
|
echo %COL_GREEN%Start testing Vim in background.%COL_RESET%
|
||||||
start cmd /c "cd ..\src2\testdir & nmake -nologo -f Make_dos.mak VIMPROG=..\..\src\vim > nul & echo done>done.txt"
|
start cmd /c "cd src2\testdir & nmake -nologo -f Make_dos.mak VIMPROG=..\..\src\vim > nul & echo done>done.txt"
|
||||||
|
|
||||||
echo %COL_GREEN%Test gvim:%COL_RESET%
|
echo %COL_GREEN%Test gVim:%COL_RESET%
|
||||||
cd testdir
|
cd src\testdir
|
||||||
nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1
|
nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1
|
||||||
cd ..
|
|
||||||
|
|
||||||
echo %COL_GREEN%Wait for vim tests to finish.%COL_RESET%
|
- name: Show the result of testing Vim
|
||||||
cd ..\src2\testdir
|
shell: cmd
|
||||||
|
timeout-minutes: 20
|
||||||
|
run: |
|
||||||
|
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
||||||
|
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
||||||
|
|
||||||
|
echo %COL_GREEN%Wait for Vim tests to finish.%COL_RESET%
|
||||||
|
cd src2\testdir
|
||||||
:: Wait about 10 minutes.
|
:: Wait about 10 minutes.
|
||||||
for /L %%i in (1,1,60) do (
|
for /L %%i in (1,1,60) do (
|
||||||
if exist done.txt goto exitloop
|
if exist done.txt goto exitloop
|
||||||
@@ -525,10 +570,35 @@ jobs:
|
|||||||
set timeout=1
|
set timeout=1
|
||||||
:exitloop
|
:exitloop
|
||||||
|
|
||||||
echo %COL_GREEN%Test results of vim:%COL_RESET%
|
echo %COL_GREEN%The result of testing Vim:%COL_RESET%
|
||||||
|
cd src2\testdir
|
||||||
if exist messages type messages
|
if exist messages type messages
|
||||||
nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1
|
nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1
|
||||||
|
|
||||||
if "%timeout%"=="1" (
|
if "%timeout%"=="1" (
|
||||||
echo %COL_RED%Timed out.%COL_RESET%
|
echo %COL_RED%Timed out.%COL_RESET%
|
||||||
exit 1
|
exit 1
|
||||||
)
|
)
|
||||||
|
|
||||||
|
- name: Generate gcov files
|
||||||
|
if: matrix.coverage
|
||||||
|
shell: msys2 {0}
|
||||||
|
run: |
|
||||||
|
cd src
|
||||||
|
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||||
|
cd ../src2
|
||||||
|
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||||
|
|
||||||
|
- name: Codecov (gVim)
|
||||||
|
if: matrix.coverage
|
||||||
|
uses: codecov/codecov-action@v2
|
||||||
|
with:
|
||||||
|
directory: src
|
||||||
|
flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}-gui
|
||||||
|
|
||||||
|
- name: Codecov (Vim)
|
||||||
|
if: matrix.coverage
|
||||||
|
uses: codecov/codecov-action@v2
|
||||||
|
with:
|
||||||
|
directory: src2
|
||||||
|
flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}
|
||||||
|
|||||||
7
.github/workflows/codeql-analysis.yml
vendored
7
.github/workflows/codeql-analysis.yml
vendored
@@ -14,6 +14,13 @@ on:
|
|||||||
schedule:
|
schedule:
|
||||||
- cron: '0 18 * * 1'
|
- cron: '0 18 * * 1'
|
||||||
|
|
||||||
|
# Cancels all previous workflow runs for pull requests that have not completed.
|
||||||
|
concurrency:
|
||||||
|
# The concurrency group contains the workflow name and the branch name for
|
||||||
|
# pull requests or the commit hash for any other events.
|
||||||
|
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
analyze:
|
analyze:
|
||||||
name: Analyze
|
name: Analyze
|
||||||
|
|||||||
7
.gitignore
vendored
7
.gitignore
vendored
@@ -96,5 +96,10 @@ src/shadow-*
|
|||||||
src/runtime
|
src/runtime
|
||||||
src/pixmaps
|
src/pixmaps
|
||||||
|
|
||||||
# other possible files build by tools
|
# other files possibly created by tools
|
||||||
src/cscope.out
|
src/cscope.out
|
||||||
|
|
||||||
|
# Linter/language server files
|
||||||
|
/.cache/clangd/
|
||||||
|
/.ccls-cache/
|
||||||
|
/compile_commands.json
|
||||||
|
|||||||
23
Filelist
23
Filelist
@@ -8,6 +8,7 @@ SRC_ALL = \
|
|||||||
.gitattributes \
|
.gitattributes \
|
||||||
.github/CODEOWNERS \
|
.github/CODEOWNERS \
|
||||||
.github/ISSUE_TEMPLATE/bug_report.yml \
|
.github/ISSUE_TEMPLATE/bug_report.yml \
|
||||||
|
.github/ISSUE_TEMPLATE/feature_request.md \
|
||||||
.github/workflows/ci.yml \
|
.github/workflows/ci.yml \
|
||||||
.github/workflows/codeql-analysis.yml \
|
.github/workflows/codeql-analysis.yml \
|
||||||
.github/workflows/coverity.yml \
|
.github/workflows/coverity.yml \
|
||||||
@@ -112,6 +113,8 @@ SRC_ALL = \
|
|||||||
src/nbdebug.h \
|
src/nbdebug.h \
|
||||||
src/netbeans.c \
|
src/netbeans.c \
|
||||||
src/normal.c \
|
src/normal.c \
|
||||||
|
src/nv_cmdidxs.h \
|
||||||
|
src/nv_cmds.h \
|
||||||
src/ops.c \
|
src/ops.c \
|
||||||
src/option.c \
|
src/option.c \
|
||||||
src/option.h \
|
src/option.h \
|
||||||
@@ -159,8 +162,11 @@ SRC_ALL = \
|
|||||||
src/version.h \
|
src/version.h \
|
||||||
src/vim.h \
|
src/vim.h \
|
||||||
src/vim9.h \
|
src/vim9.h \
|
||||||
|
src/vim9cmds.c \
|
||||||
src/vim9compile.c \
|
src/vim9compile.c \
|
||||||
src/vim9execute.c \
|
src/vim9execute.c \
|
||||||
|
src/vim9expr.c \
|
||||||
|
src/vim9instr.c \
|
||||||
src/vim9script.c \
|
src/vim9script.c \
|
||||||
src/vim9type.c \
|
src/vim9type.c \
|
||||||
src/viminfo.c \
|
src/viminfo.c \
|
||||||
@@ -192,7 +198,6 @@ SRC_ALL = \
|
|||||||
src/testdir/view_util.vim \
|
src/testdir/view_util.vim \
|
||||||
src/testdir/test[0-9]*.ok \
|
src/testdir/test[0-9]*.ok \
|
||||||
src/testdir/test77a.ok \
|
src/testdir/test77a.ok \
|
||||||
src/testdir/test83-tags? \
|
|
||||||
src/testdir/test77a.com \
|
src/testdir/test77a.com \
|
||||||
src/testdir/test_*.vim \
|
src/testdir/test_*.vim \
|
||||||
src/testdir/python2/*.py \
|
src/testdir/python2/*.py \
|
||||||
@@ -318,8 +323,11 @@ SRC_ALL = \
|
|||||||
src/proto/usercmd.pro \
|
src/proto/usercmd.pro \
|
||||||
src/proto/userfunc.pro \
|
src/proto/userfunc.pro \
|
||||||
src/proto/version.pro \
|
src/proto/version.pro \
|
||||||
|
src/proto/vim9cmds.pro \
|
||||||
src/proto/vim9compile.pro \
|
src/proto/vim9compile.pro \
|
||||||
src/proto/vim9execute.pro \
|
src/proto/vim9execute.pro \
|
||||||
|
src/proto/vim9expr.pro \
|
||||||
|
src/proto/vim9instr.pro \
|
||||||
src/proto/vim9script.pro \
|
src/proto/vim9script.pro \
|
||||||
src/proto/vim9type.pro \
|
src/proto/vim9type.pro \
|
||||||
src/proto/viminfo.pro \
|
src/proto/viminfo.pro \
|
||||||
@@ -436,6 +444,8 @@ SRC_UNIX = \
|
|||||||
src/configure \
|
src/configure \
|
||||||
src/configure.ac \
|
src/configure.ac \
|
||||||
src/create_cmdidxs.vim \
|
src/create_cmdidxs.vim \
|
||||||
|
src/create_nvcmdidxs.c \
|
||||||
|
src/create_nvcmdidxs.vim \
|
||||||
src/gui_at_fs.c \
|
src/gui_at_fs.c \
|
||||||
src/gui_at_sb.c \
|
src/gui_at_sb.c \
|
||||||
src/gui_at_sb.h \
|
src/gui_at_sb.h \
|
||||||
@@ -490,7 +500,6 @@ SRC_UNIX = \
|
|||||||
SRC_DOS_UNIX = \
|
SRC_DOS_UNIX = \
|
||||||
src/gui_xim.c \
|
src/gui_xim.c \
|
||||||
src/if_cscope.c \
|
src/if_cscope.c \
|
||||||
src/if_cscope.h \
|
|
||||||
src/if_lua.c \
|
src/if_lua.c \
|
||||||
src/if_mzsch.c \
|
src/if_mzsch.c \
|
||||||
src/if_mzsch.h \
|
src/if_mzsch.h \
|
||||||
@@ -537,18 +546,14 @@ SRC_DOS = \
|
|||||||
tools/rename.bat \
|
tools/rename.bat \
|
||||||
src/bigvim.bat \
|
src/bigvim.bat \
|
||||||
src/bigvim64.bat \
|
src/bigvim64.bat \
|
||||||
src/msvcsetup.bat \
|
|
||||||
src/msvc2008.bat \
|
src/msvc2008.bat \
|
||||||
src/msvc2010.bat \
|
src/msvc2010.bat \
|
||||||
src/msvc2015.bat \
|
src/msvc2015.bat \
|
||||||
src/msys32.bat \
|
src/msys32.bat \
|
||||||
src/msys64.bat \
|
src/msys64.bat \
|
||||||
src/dimm.idl \
|
|
||||||
src/dlldata.c \
|
src/dlldata.c \
|
||||||
src/dosinst.c \
|
src/dosinst.c \
|
||||||
src/dosinst.h \
|
src/dosinst.h \
|
||||||
src/glbl_ime.cpp \
|
|
||||||
src/glbl_ime.h \
|
|
||||||
src/gui_dwrite.cpp \
|
src/gui_dwrite.cpp \
|
||||||
src/gui_dwrite.h \
|
src/gui_dwrite.h \
|
||||||
src/gui_w32.c \
|
src/gui_w32.c \
|
||||||
@@ -626,6 +631,7 @@ SRC_DOS_BIN = \
|
|||||||
src/xpm/x86/lib-vc14/libXpm.lib \
|
src/xpm/x86/lib-vc14/libXpm.lib \
|
||||||
src/xpm/x86/lib/libXpm.a \
|
src/xpm/x86/lib/libXpm.a \
|
||||||
src/xpm/x86/lib/libXpm.lib \
|
src/xpm/x86/lib/libXpm.lib \
|
||||||
|
runtime/bitmaps/vim.ico \
|
||||||
nsis/icons.zip \
|
nsis/icons.zip \
|
||||||
|
|
||||||
# source files for Amiga, DOS, etc. (also in the extra archive)
|
# source files for Amiga, DOS, etc. (also in the extra archive)
|
||||||
@@ -657,10 +663,7 @@ SRC_HAIKU = \
|
|||||||
# source files for the Mac (also in the extra archive)
|
# source files for the Mac (also in the extra archive)
|
||||||
SRC_MAC = \
|
SRC_MAC = \
|
||||||
src/INSTALLmac.txt \
|
src/INSTALLmac.txt \
|
||||||
src/dehqx.py \
|
|
||||||
src/os_mac_rsrc/*.icns \
|
|
||||||
src/os_mac.h \
|
src/os_mac.h \
|
||||||
src/os_mac.rsr.hqx \
|
|
||||||
src/os_mac_conv.c \
|
src/os_mac_conv.c \
|
||||||
src/os_macosx.m \
|
src/os_macosx.m \
|
||||||
src/proto/os_mac_conv.pro \
|
src/proto/os_mac_conv.pro \
|
||||||
@@ -698,7 +701,6 @@ SRC_EXTRA = \
|
|||||||
$(SRC_QNX) \
|
$(SRC_QNX) \
|
||||||
$(SRC_VMS) \
|
$(SRC_VMS) \
|
||||||
README_os390.txt \
|
README_os390.txt \
|
||||||
src/infplist.xml \
|
|
||||||
src/link.390 \
|
src/link.390 \
|
||||||
src/os_vms_fix.com \
|
src/os_vms_fix.com \
|
||||||
src/toolbar.phi \
|
src/toolbar.phi \
|
||||||
@@ -998,6 +1000,7 @@ LANG_GEN = \
|
|||||||
runtime/doc/*-tr.1 \
|
runtime/doc/*-tr.1 \
|
||||||
runtime/doc/*-tr.UTF-8.1 \
|
runtime/doc/*-tr.UTF-8.1 \
|
||||||
runtime/lang/README.txt \
|
runtime/lang/README.txt \
|
||||||
|
runtime/lang/Makefile \
|
||||||
runtime/lang/menu_*.vim \
|
runtime/lang/menu_*.vim \
|
||||||
runtime/keymap/README.txt \
|
runtime/keymap/README.txt \
|
||||||
runtime/keymap/*.vim \
|
runtime/keymap/*.vim \
|
||||||
|
|||||||
@@ -5,11 +5,9 @@ setlocal ENABLEDELAYEDEXPANSION
|
|||||||
cd %APPVEYOR_BUILD_FOLDER%
|
cd %APPVEYOR_BUILD_FOLDER%
|
||||||
|
|
||||||
cd src
|
cd src
|
||||||
:: Filter out the progress bar from the build log
|
|
||||||
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_mvc.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%
|
FEATURES=%FEATURE%
|
||||||
if not exist vim.exe (
|
if not exist vim.exe (
|
||||||
@@ -21,13 +19,13 @@ if not exist vim.exe (
|
|||||||
:: GUI needs to be last, so that testing works
|
:: GUI needs to be last, so that testing works
|
||||||
echo "Building MSVC 64bit GUI Version"
|
echo "Building MSVC 64bit GUI Version"
|
||||||
if "%FEATURE%" == "HUGE" (
|
if "%FEATURE%" == "HUGE" (
|
||||||
nmake -f Make_mvc2.mak CPU=AMD64 ^
|
nmake -f Make_mvc.mak CPU=AMD64 ^
|
||||||
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%
|
FEATURES=%FEATURE%
|
||||||
) ELSE (
|
) ELSE (
|
||||||
nmake -f Make_mvc2.mak CPU=AMD64 ^
|
nmake -f Make_mvc.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%
|
FEATURES=%FEATURE%
|
||||||
)
|
)
|
||||||
|
|||||||
3
ci/config.mk.clang-12.sed
Normal file
3
ci/config.mk.clang-12.sed
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# Clang 12 (or Apple clang 13) and later makes a warning '-Wcompound-token-split-by-macro' enable by default.
|
||||||
|
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
|
||||||
|
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
|
||||||
@@ -1,2 +1,2 @@
|
|||||||
/^CFLAGS[[:blank:]]*=/s/$/ -Wno-error=missing-field-initializers/
|
/^CFLAGS[[:blank:]]*=/s/$/ -Wno-error=missing-field-initializers/
|
||||||
/^RUBY_CFLAGS[[:blank:]]*=/s/$/ -Wno-error=unknown-attributes -Wno-error=ignored-attributes/
|
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unknown-attributes -Wno-error=ignored-attributes/
|
||||||
|
|||||||
@@ -1,2 +1,3 @@
|
|||||||
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
|
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
|
||||||
/^PERL_CFLAGS[[:blank:]]*=/s/$/ -Wno-error=unused-function/
|
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function/
|
||||||
|
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter/
|
||||||
|
|||||||
@@ -347,6 +347,9 @@ Section "$(str_section_exe)" id_section_exe
|
|||||||
File /oname=gvim.exe ${VIMSRC}\gvim_ole.exe
|
File /oname=gvim.exe ${VIMSRC}\gvim_ole.exe
|
||||||
!if /FileExists "${VIMSRC}\vim${BIT}.dll"
|
!if /FileExists "${VIMSRC}\vim${BIT}.dll"
|
||||||
File ${VIMSRC}\vim${BIT}.dll
|
File ${VIMSRC}\vim${BIT}.dll
|
||||||
|
!endif
|
||||||
|
!if /FileExists "${VIMRT}\libsodium.dll"
|
||||||
|
File ${VIMRT}\libsodium.dll
|
||||||
!endif
|
!endif
|
||||||
File /oname=install.exe ${VIMSRC}\installw32.exe
|
File /oname=install.exe ${VIMSRC}\installw32.exe
|
||||||
File /oname=uninstall.exe ${VIMSRC}\uninstallw32.exe
|
File /oname=uninstall.exe ${VIMSRC}\uninstallw32.exe
|
||||||
@@ -400,6 +403,9 @@ Section "$(str_section_exe)" id_section_exe
|
|||||||
SetOutPath $0\autoload\xml
|
SetOutPath $0\autoload\xml
|
||||||
File ${VIMRT}\autoload\xml\*.*
|
File ${VIMRT}\autoload\xml\*.*
|
||||||
|
|
||||||
|
SetOutPath $0\bitmaps
|
||||||
|
File ${VIMSRC}\vim.ico
|
||||||
|
|
||||||
SetOutPath $0\syntax
|
SetOutPath $0\syntax
|
||||||
File ${VIMRT}\syntax\*.*
|
File ${VIMRT}\syntax\*.*
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
776
runtime/autoload/dist/ft.vim
vendored
776
runtime/autoload/dist/ft.vim
vendored
File diff suppressed because it is too large
Load Diff
426
runtime/autoload/dist/script.vim
vendored
Normal file
426
runtime/autoload/dist/script.vim
vendored
Normal file
@@ -0,0 +1,426 @@
|
|||||||
|
vim9script
|
||||||
|
|
||||||
|
# Vim function for detecting a filetype from the file contents.
|
||||||
|
# Invoked from "scripts.vim" in 'runtimepath'
|
||||||
|
#
|
||||||
|
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
|
# Last Change: 2022 Feb 13
|
||||||
|
|
||||||
|
export def DetectFiletype()
|
||||||
|
var line1 = getline(1)
|
||||||
|
if line1[0] == '#' && line1[1] == '!'
|
||||||
|
# File that starts with "#!".
|
||||||
|
DetectFromHashBang(line1)
|
||||||
|
else
|
||||||
|
# File does not start with "#!".
|
||||||
|
DetectFromText(line1)
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
|
|
||||||
|
# Called for a script that has "#!" in the first line.
|
||||||
|
def DetectFromHashBang(firstline: string)
|
||||||
|
var line1 = firstline
|
||||||
|
|
||||||
|
# Check for a line like "#!/usr/bin/env {options} bash". Turn it into
|
||||||
|
# "#!/usr/bin/bash" to make matching easier.
|
||||||
|
# Recognize only a few {options} that are commonly used.
|
||||||
|
if line1 =~ '^#!\s*\S*\<env\s'
|
||||||
|
line1 = substitute(line1, '\S\+=\S\+', '', 'g')
|
||||||
|
line1 = substitute(line1, '\(-[iS]\|--ignore-environment\|--split-string\)', '', '')
|
||||||
|
line1 = substitute(line1, '\<env\s\+', '', '')
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Get the program name.
|
||||||
|
# Only accept spaces in PC style paths: "#!c:/program files/perl [args]".
|
||||||
|
# If the word env is used, use the first word after the space:
|
||||||
|
# "#!/usr/bin/env perl [path/args]"
|
||||||
|
# If there is no path use the first word: "#!perl [path/args]".
|
||||||
|
# Otherwise get the last word after a slash: "#!/usr/bin/perl [path/args]".
|
||||||
|
var name: string
|
||||||
|
if line1 =~ '^#!\s*\a:[/\\]'
|
||||||
|
name = substitute(line1, '^#!.*[/\\]\(\i\+\).*', '\1', '')
|
||||||
|
elseif line1 =~ '^#!.*\<env\>'
|
||||||
|
name = substitute(line1, '^#!.*\<env\>\s\+\(\i\+\).*', '\1', '')
|
||||||
|
elseif line1 =~ '^#!\s*[^/\\ ]*\>\([^/\\]\|$\)'
|
||||||
|
name = substitute(line1, '^#!\s*\([^/\\ ]*\>\).*', '\1', '')
|
||||||
|
else
|
||||||
|
name = substitute(line1, '^#!\s*\S*[/\\]\(\i\+\).*', '\1', '')
|
||||||
|
endif
|
||||||
|
|
||||||
|
# tcl scripts may have #!/bin/sh in the first line and "exec wish" in the
|
||||||
|
# third line. Suggested by Steven Atkinson.
|
||||||
|
if getline(3) =~ '^exec wish'
|
||||||
|
name = 'wish'
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Bourne-like shell scripts: bash bash2 ksh ksh93 sh
|
||||||
|
if name =~ '^\(bash\d*\|\|ksh\d*\|sh\)\>'
|
||||||
|
call dist#ft#SetFileTypeSH(line1)
|
||||||
|
|
||||||
|
# csh scripts
|
||||||
|
elseif name =~ '^csh\>'
|
||||||
|
if exists("g:filetype_csh")
|
||||||
|
call dist#ft#SetFileTypeShell(g:filetype_csh)
|
||||||
|
else
|
||||||
|
call dist#ft#SetFileTypeShell("csh")
|
||||||
|
endif
|
||||||
|
|
||||||
|
# tcsh scripts
|
||||||
|
elseif name =~ '^tcsh\>'
|
||||||
|
call dist#ft#SetFileTypeShell("tcsh")
|
||||||
|
|
||||||
|
# Z shell scripts
|
||||||
|
elseif name =~ '^zsh\>'
|
||||||
|
set ft=zsh
|
||||||
|
|
||||||
|
# TCL scripts
|
||||||
|
elseif name =~ '^\(tclsh\|wish\|expectk\|itclsh\|itkwish\)\>'
|
||||||
|
set ft=tcl
|
||||||
|
|
||||||
|
# Expect scripts
|
||||||
|
elseif name =~ '^expect\>'
|
||||||
|
set ft=expect
|
||||||
|
|
||||||
|
# Gnuplot scripts
|
||||||
|
elseif name =~ '^gnuplot\>'
|
||||||
|
set ft=gnuplot
|
||||||
|
|
||||||
|
# Makefiles
|
||||||
|
elseif name =~ 'make\>'
|
||||||
|
set ft=make
|
||||||
|
|
||||||
|
# Pike
|
||||||
|
elseif name =~ '^pike\%(\>\|[0-9]\)'
|
||||||
|
set ft=pike
|
||||||
|
|
||||||
|
# Lua
|
||||||
|
elseif name =~ 'lua'
|
||||||
|
set ft=lua
|
||||||
|
|
||||||
|
# Perl
|
||||||
|
elseif name =~ 'perl'
|
||||||
|
set ft=perl
|
||||||
|
|
||||||
|
# PHP
|
||||||
|
elseif name =~ 'php'
|
||||||
|
set ft=php
|
||||||
|
|
||||||
|
# Python
|
||||||
|
elseif name =~ 'python'
|
||||||
|
set ft=python
|
||||||
|
|
||||||
|
# Groovy
|
||||||
|
elseif name =~ '^groovy\>'
|
||||||
|
set ft=groovy
|
||||||
|
|
||||||
|
# Raku
|
||||||
|
elseif name =~ 'raku'
|
||||||
|
set ft=raku
|
||||||
|
|
||||||
|
# Ruby
|
||||||
|
elseif name =~ 'ruby'
|
||||||
|
set ft=ruby
|
||||||
|
|
||||||
|
# JavaScript
|
||||||
|
elseif name =~ 'node\(js\)\=\>\|js\>' || name =~ 'rhino\>'
|
||||||
|
set ft=javascript
|
||||||
|
|
||||||
|
# BC calculator
|
||||||
|
elseif name =~ '^bc\>'
|
||||||
|
set ft=bc
|
||||||
|
|
||||||
|
# sed
|
||||||
|
elseif name =~ 'sed\>'
|
||||||
|
set ft=sed
|
||||||
|
|
||||||
|
# OCaml-scripts
|
||||||
|
elseif name =~ 'ocaml'
|
||||||
|
set ft=ocaml
|
||||||
|
|
||||||
|
# Awk scripts; also finds "gawk"
|
||||||
|
elseif name =~ 'awk\>'
|
||||||
|
set ft=awk
|
||||||
|
|
||||||
|
# Website MetaLanguage
|
||||||
|
elseif name =~ 'wml'
|
||||||
|
set ft=wml
|
||||||
|
|
||||||
|
# Scheme scripts
|
||||||
|
elseif name =~ 'scheme'
|
||||||
|
set ft=scheme
|
||||||
|
|
||||||
|
# CFEngine scripts
|
||||||
|
elseif name =~ 'cfengine'
|
||||||
|
set ft=cfengine
|
||||||
|
|
||||||
|
# Erlang scripts
|
||||||
|
elseif name =~ 'escript'
|
||||||
|
set ft=erlang
|
||||||
|
|
||||||
|
# Haskell
|
||||||
|
elseif name =~ 'haskell'
|
||||||
|
set ft=haskell
|
||||||
|
|
||||||
|
# Scala
|
||||||
|
elseif name =~ 'scala\>'
|
||||||
|
set ft=scala
|
||||||
|
|
||||||
|
# Clojure
|
||||||
|
elseif name =~ 'clojure'
|
||||||
|
set ft=clojure
|
||||||
|
|
||||||
|
# Free Pascal
|
||||||
|
elseif name =~ 'instantfpc\>'
|
||||||
|
set ft=pascal
|
||||||
|
|
||||||
|
# Fennel
|
||||||
|
elseif name =~ 'fennel\>'
|
||||||
|
set ft=fennel
|
||||||
|
|
||||||
|
# MikroTik RouterOS script
|
||||||
|
elseif name =~ 'rsc\>'
|
||||||
|
set ft=routeros
|
||||||
|
|
||||||
|
# Fish shell
|
||||||
|
elseif name =~ 'fish\>'
|
||||||
|
set ft=fish
|
||||||
|
|
||||||
|
# Gforth
|
||||||
|
elseif name =~ 'gforth\>'
|
||||||
|
set ft=forth
|
||||||
|
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
|
|
||||||
|
|
||||||
|
# Called for a script that does not have "#!" in the first line.
|
||||||
|
def DetectFromText(line1: string)
|
||||||
|
var line2 = getline(2)
|
||||||
|
var line3 = getline(3)
|
||||||
|
var line4 = getline(4)
|
||||||
|
var line5 = getline(5)
|
||||||
|
|
||||||
|
# Bourne-like shell scripts: sh ksh bash bash2
|
||||||
|
if line1 =~ '^:$'
|
||||||
|
call dist#ft#SetFileTypeSH(line1)
|
||||||
|
|
||||||
|
# Z shell scripts
|
||||||
|
elseif line1 =~ '^#compdef\>'
|
||||||
|
|| line1 =~ '^#autoload\>'
|
||||||
|
|| "\n" .. line1 .. "\n" .. line2 .. "\n" .. line3 ..
|
||||||
|
"\n" .. line4 .. "\n" .. line5
|
||||||
|
=~ '\n\s*emulate\s\+\%(-[LR]\s\+\)\=[ckz]\=sh\>'
|
||||||
|
set ft=zsh
|
||||||
|
|
||||||
|
# ELM Mail files
|
||||||
|
elseif line1 =~ '^From \([a-zA-Z][a-zA-Z_0-9\.=-]*\(@[^ ]*\)\=\|-\) .* \(19\|20\)\d\d$'
|
||||||
|
set ft=mail
|
||||||
|
|
||||||
|
# Mason
|
||||||
|
elseif line1 =~ '^<[%&].*>'
|
||||||
|
set ft=mason
|
||||||
|
|
||||||
|
# Vim scripts (must have '" vim' as the first line to trigger this)
|
||||||
|
elseif line1 =~ '^" *[vV]im$'
|
||||||
|
set ft=vim
|
||||||
|
|
||||||
|
# libcxx and libstdc++ standard library headers like "iostream" do not have
|
||||||
|
# an extension, recognize the Emacs file mode.
|
||||||
|
elseif line1 =~? '-\*-.*C++.*-\*-'
|
||||||
|
set ft=cpp
|
||||||
|
|
||||||
|
# MOO
|
||||||
|
elseif line1 =~ '^\*\* LambdaMOO Database, Format Version \%([1-3]\>\)\@!\d\+ \*\*$'
|
||||||
|
set ft=moo
|
||||||
|
|
||||||
|
# Diff file:
|
||||||
|
# - "diff" in first line (context diff)
|
||||||
|
# - "Only in " in first line
|
||||||
|
# - "--- " in first line and "+++ " in second line (unified diff).
|
||||||
|
# - "*** " in first line and "--- " in second line (context diff).
|
||||||
|
# - "# It was generated by makepatch " in the second line (makepatch diff).
|
||||||
|
# - "Index: <filename>" in the first line (CVS file)
|
||||||
|
# - "=== ", line of "=", "---", "+++ " (SVK diff)
|
||||||
|
# - "=== ", "--- ", "+++ " (bzr diff, common case)
|
||||||
|
# - "=== (removed|added|renamed|modified)" (bzr diff, alternative)
|
||||||
|
# - "# HG changeset patch" in first line (Mercurial export format)
|
||||||
|
elseif line1 =~ '^\(diff\>\|Only in \|\d\+\(,\d\+\)\=[cda]\d\+\>\|# It was generated by makepatch \|Index:\s\+\f\+\r\=$\|===== \f\+ \d\+\.\d\+ vs edited\|==== //\f\+#\d\+\|# HG changeset patch\)'
|
||||||
|
|| (line1 =~ '^--- ' && line2 =~ '^+++ ')
|
||||||
|
|| (line1 =~ '^\* looking for ' && line2 =~ '^\* comparing to ')
|
||||||
|
|| (line1 =~ '^\*\*\* ' && line2 =~ '^--- ')
|
||||||
|
|| (line1 =~ '^=== ' && ((line2 =~ '^=\{66\}' && line3 =~ '^--- ' && line4 =~ '^+++') || (line2 =~ '^--- ' && line3 =~ '^+++ ')))
|
||||||
|
|| (line1 =~ '^=== \(removed\|added\|renamed\|modified\)')
|
||||||
|
set ft=diff
|
||||||
|
|
||||||
|
# PostScript Files (must have %!PS as the first line, like a2ps output)
|
||||||
|
elseif line1 =~ '^%![ \t]*PS'
|
||||||
|
set ft=postscr
|
||||||
|
|
||||||
|
# M4 scripts: Guess there is a line that starts with "dnl".
|
||||||
|
elseif line1 =~ '^\s*dnl\>'
|
||||||
|
|| line2 =~ '^\s*dnl\>'
|
||||||
|
|| line3 =~ '^\s*dnl\>'
|
||||||
|
|| line4 =~ '^\s*dnl\>'
|
||||||
|
|| line5 =~ '^\s*dnl\>'
|
||||||
|
set ft=m4
|
||||||
|
|
||||||
|
# AmigaDos scripts
|
||||||
|
elseif $TERM == "amiga" && (line1 =~ "^;" || line1 =~? '^\.bra')
|
||||||
|
set ft=amiga
|
||||||
|
|
||||||
|
# SiCAD scripts (must have procn or procd as the first line to trigger this)
|
||||||
|
elseif line1 =~? '^ *proc[nd] *$'
|
||||||
|
set ft=sicad
|
||||||
|
|
||||||
|
# Purify log files start with "**** Purify"
|
||||||
|
elseif line1 =~ '^\*\*\*\* Purify'
|
||||||
|
set ft=purifylog
|
||||||
|
|
||||||
|
# XML
|
||||||
|
elseif line1 =~ '<?\s*xml.*?>'
|
||||||
|
set ft=xml
|
||||||
|
|
||||||
|
# XHTML (e.g.: PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN")
|
||||||
|
elseif line1 =~ '\<DTD\s\+XHTML\s'
|
||||||
|
set ft=xhtml
|
||||||
|
|
||||||
|
# HTML (e.g.: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN")
|
||||||
|
# Avoid "doctype html", used by slim.
|
||||||
|
elseif line1 =~? '<!DOCTYPE\s\+html\>'
|
||||||
|
set ft=html
|
||||||
|
|
||||||
|
# PDF
|
||||||
|
elseif line1 =~ '^%PDF-'
|
||||||
|
set ft=pdf
|
||||||
|
|
||||||
|
# XXD output
|
||||||
|
elseif line1 =~ '^\x\{7}: \x\{2} \=\x\{2} \=\x\{2} \=\x\{2} '
|
||||||
|
set ft=xxd
|
||||||
|
|
||||||
|
# RCS/CVS log output
|
||||||
|
elseif line1 =~ '^RCS file:' || line2 =~ '^RCS file:'
|
||||||
|
set ft=rcslog
|
||||||
|
|
||||||
|
# CVS commit
|
||||||
|
elseif line2 =~ '^CVS:' || getline("$") =~ '^CVS: '
|
||||||
|
set ft=cvs
|
||||||
|
|
||||||
|
# Prescribe
|
||||||
|
elseif line1 =~ '^!R!'
|
||||||
|
set ft=prescribe
|
||||||
|
|
||||||
|
# Send-pr
|
||||||
|
elseif line1 =~ '^SEND-PR:'
|
||||||
|
set ft=sendpr
|
||||||
|
|
||||||
|
# SNNS files
|
||||||
|
elseif line1 =~ '^SNNS network definition file'
|
||||||
|
set ft=snnsnet
|
||||||
|
elseif line1 =~ '^SNNS pattern definition file'
|
||||||
|
set ft=snnspat
|
||||||
|
elseif line1 =~ '^SNNS result file'
|
||||||
|
set ft=snnsres
|
||||||
|
|
||||||
|
# Virata
|
||||||
|
elseif line1 =~ '^%.\{-}[Vv]irata'
|
||||||
|
|| line2 =~ '^%.\{-}[Vv]irata'
|
||||||
|
|| line3 =~ '^%.\{-}[Vv]irata'
|
||||||
|
|| line4 =~ '^%.\{-}[Vv]irata'
|
||||||
|
|| line5 =~ '^%.\{-}[Vv]irata'
|
||||||
|
set ft=virata
|
||||||
|
|
||||||
|
# Strace
|
||||||
|
elseif line1 =~ '[0-9:.]* *execve(' || line1 =~ '^__libc_start_main'
|
||||||
|
set ft=strace
|
||||||
|
|
||||||
|
# VSE JCL
|
||||||
|
elseif line1 =~ '^\* $$ JOB\>' || line1 =~ '^// *JOB\>'
|
||||||
|
set ft=vsejcl
|
||||||
|
|
||||||
|
# TAK and SINDA
|
||||||
|
elseif line4 =~ 'K & K Associates' || line2 =~ 'TAK 2000'
|
||||||
|
set ft=takout
|
||||||
|
elseif line3 =~ 'S Y S T E M S I M P R O V E D '
|
||||||
|
set ft=sindaout
|
||||||
|
elseif getline(6) =~ 'Run Date: '
|
||||||
|
set ft=takcmp
|
||||||
|
elseif getline(9) =~ 'Node File 1'
|
||||||
|
set ft=sindacmp
|
||||||
|
|
||||||
|
# DNS zone files
|
||||||
|
elseif line1 .. line2 .. line3 .. line4 =~ '^; <<>> DiG [0-9.]\+.* <<>>\|$ORIGIN\|$TTL\|IN\s\+SOA'
|
||||||
|
set ft=bindzone
|
||||||
|
|
||||||
|
# BAAN
|
||||||
|
elseif line1 =~ '|\*\{1,80}' && line2 =~ 'VRC '
|
||||||
|
|| line2 =~ '|\*\{1,80}' && line3 =~ 'VRC '
|
||||||
|
set ft=baan
|
||||||
|
|
||||||
|
# Valgrind
|
||||||
|
elseif line1 =~ '^==\d\+== valgrind' || line3 =~ '^==\d\+== Using valgrind'
|
||||||
|
set ft=valgrind
|
||||||
|
|
||||||
|
# Go docs
|
||||||
|
elseif line1 =~ '^PACKAGE DOCUMENTATION$'
|
||||||
|
set ft=godoc
|
||||||
|
|
||||||
|
# Renderman Interface Bytestream
|
||||||
|
elseif line1 =~ '^##RenderMan'
|
||||||
|
set ft=rib
|
||||||
|
|
||||||
|
# Scheme scripts
|
||||||
|
elseif line1 =~ 'exec\s\+\S*scheme' || line2 =~ 'exec\s\+\S*scheme'
|
||||||
|
set ft=scheme
|
||||||
|
|
||||||
|
# Git output
|
||||||
|
elseif line1 =~ '^\(commit\|tree\|object\) \x\{40,\}\>\|^tag \S\+$'
|
||||||
|
set ft=git
|
||||||
|
|
||||||
|
# Gprof (gnu profiler)
|
||||||
|
elseif line1 == 'Flat profile:'
|
||||||
|
&& line2 == ''
|
||||||
|
&& line3 =~ '^Each sample counts as .* seconds.$'
|
||||||
|
set ft=gprof
|
||||||
|
|
||||||
|
# Erlang terms
|
||||||
|
# (See also: http://www.gnu.org/software/emacs/manual/html_node/emacs/Choosing-Modes.html#Choosing-Modes)
|
||||||
|
elseif line1 =~? '-\*-.*erlang.*-\*-'
|
||||||
|
set ft=erlang
|
||||||
|
|
||||||
|
# YAML
|
||||||
|
elseif line1 =~ '^%YAML'
|
||||||
|
set ft=yaml
|
||||||
|
|
||||||
|
# MikroTik RouterOS script
|
||||||
|
elseif line1 =~ '^#.*by RouterOS.*$'
|
||||||
|
set ft=routeros
|
||||||
|
|
||||||
|
# Sed scripts
|
||||||
|
# #ncomment is allowed but most likely a false positive so require a space
|
||||||
|
# before any trailing comment text
|
||||||
|
elseif line1 =~ '^#n\%($\|\s\)'
|
||||||
|
set ft=sed
|
||||||
|
|
||||||
|
else
|
||||||
|
var lnum = 1
|
||||||
|
while getline(lnum) =~ "^? " && lnum < line("$")
|
||||||
|
lnum += 1
|
||||||
|
endwhile
|
||||||
|
if getline(lnum) =~ '^Index:\s\+\f\+$'
|
||||||
|
# CVS diff
|
||||||
|
set ft=diff
|
||||||
|
|
||||||
|
# locale input files: Formal Definitions of Cultural Conventions
|
||||||
|
# filename must be like en_US, fr_FR@euro or en_US.UTF-8
|
||||||
|
elseif expand("%") =~ '\a\a_\a\a\($\|[.@]\)\|i18n$\|POSIX$\|translit_'
|
||||||
|
lnum = 1
|
||||||
|
while lnum < 100 && lnum < line("$")
|
||||||
|
if getline(lnum) =~ '^LC_\(IDENTIFICATION\|CTYPE\|COLLATE\|MONETARY\|NUMERIC\|TIME\|MESSAGES\|PAPER\|TELEPHONE\|MEASUREMENT\|NAME\|ADDRESS\)$'
|
||||||
|
setf fdcc
|
||||||
|
break
|
||||||
|
endif
|
||||||
|
lnum += 1
|
||||||
|
endwhile
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
41
runtime/autoload/freebasic.vim
Normal file
41
runtime/autoload/freebasic.vim
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
" Vim filetype plugin file
|
||||||
|
" Language: FreeBASIC
|
||||||
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
|
" Last Change: 2021 Mar 16
|
||||||
|
|
||||||
|
" Dialects can be one of fb, qb, fblite, or deprecated
|
||||||
|
" Precedence is forcelang > #lang > lang
|
||||||
|
function! freebasic#GetDialect() abort
|
||||||
|
if exists("g:freebasic_forcelang")
|
||||||
|
return g:freebasic_forcelang
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists("g:freebasic_lang")
|
||||||
|
let dialect = g:freebasic_lang
|
||||||
|
else
|
||||||
|
let dialect = "fb"
|
||||||
|
endif
|
||||||
|
|
||||||
|
" override with #lang directive or metacommand
|
||||||
|
|
||||||
|
let skip = "has('syntax_items') && synIDattr(synID(line('.'), col('.'), 1), 'name') =~ 'Comment$'"
|
||||||
|
let pat = '\c^\s*\%(#\s*lang\s\+\|''\s*$lang\s*:\s*\)"\([^"]*\)"'
|
||||||
|
|
||||||
|
let save_cursor = getcurpos()
|
||||||
|
call cursor(1, 1)
|
||||||
|
let lnum = search(pat, 'n', '', '', skip)
|
||||||
|
call setpos('.', save_cursor)
|
||||||
|
|
||||||
|
if lnum
|
||||||
|
let word = matchlist(getline(lnum), pat)[1]
|
||||||
|
if word =~? '\%(fb\|deprecated\|fblite\|qb\)'
|
||||||
|
let dialect = word
|
||||||
|
else
|
||||||
|
echomsg "freebasic#GetDialect: Invalid lang, found '" .. word .. "' at line " .. lnum .. " " .. getline(lnum)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
return dialect
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker:
|
||||||
BIN
runtime/bitmaps/vim.ico
Normal file
BIN
runtime/bitmaps/vim.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
@@ -1,7 +1,7 @@
|
|||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: Jest
|
" Compiler: Jest
|
||||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
" Last Change: 2018 May 15
|
" Last Change: 2021 Nov 20
|
||||||
|
|
||||||
if exists("current_compiler")
|
if exists("current_compiler")
|
||||||
finish
|
finish
|
||||||
@@ -15,12 +15,14 @@ endif
|
|||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
" CompilerSet makeprg=npx\ jest\ --no-colors
|
" CompilerSet makeprg=npx\ --no-install\ jest\ --no-colors
|
||||||
|
|
||||||
CompilerSet makeprg=jest\ --no-colors
|
CompilerSet makeprg=jest\ --no-colors
|
||||||
CompilerSet errorformat=%E\ \ ●\ %m,
|
CompilerSet errorformat=%-A\ \ ●\ Console,
|
||||||
|
\%E\ \ ●\ %m,
|
||||||
\%Z\ %\\{4}%.%#Error:\ %f:\ %m\ (%l:%c):%\\=,
|
\%Z\ %\\{4}%.%#Error:\ %f:\ %m\ (%l:%c):%\\=,
|
||||||
\%Z\ %\\{6}at\ %\\S%#\ (%f:%l:%c),
|
\%Z\ %\\{6}at\ %\\S%#\ (%f:%l:%c),
|
||||||
|
\%Z\ %\\{6}at\ %\\S%#\ %f:%l:%c,
|
||||||
\%+C\ %\\{4}%\\w%.%#,
|
\%+C\ %\\{4}%\\w%.%#,
|
||||||
\%+C\ %\\{4}%[-+]%.%#,
|
\%+C\ %\\{4}%[-+]%.%#,
|
||||||
\%-C%.%#,
|
\%-C%.%#,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: SML/NJ Compiler
|
" Compiler: SML/NJ Compiler
|
||||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
" Last Change: 2020 Feb 10
|
" Last Change: 2022 Feb 09
|
||||||
|
|
||||||
if exists("current_compiler")
|
if exists("current_compiler")
|
||||||
finish
|
finish
|
||||||
@@ -16,10 +16,10 @@ let s:cpo_save = &cpo
|
|||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
CompilerSet makeprg=sml
|
CompilerSet makeprg=sml
|
||||||
CompilerSet errorformat=%f:%l.%c-%\\d%\\+.%\\d%\\+\ %trror:\ %m,
|
CompilerSet errorformat=%f:%l.%c-%e.%k\ %trror:\ %m,
|
||||||
\%f:%l.%c\ %trror:\ %m,
|
\%f:%l.%c\ %trror:\ %m,
|
||||||
\%trror:\ %m
|
\%trror:\ %m,
|
||||||
\%f:%l.%c-%\\d%\\+.%\\d%\\+\ %tarning:\ %m,
|
\%f:%l.%c-%e.%k\ %tarning:\ %m,
|
||||||
\%f:%l.%c\ %tarning:\ %m,
|
\%f:%l.%c\ %tarning:\ %m,
|
||||||
\%tarning:\ %m,
|
\%tarning:\ %m,
|
||||||
\%-G%.%#
|
\%-G%.%#
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" The default vimrc file.
|
" The default vimrc file.
|
||||||
"
|
"
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last change: 2021 Nov 17
|
" Last change: 2022 Mar 03
|
||||||
"
|
"
|
||||||
" This is loaded if no vimrc file was found.
|
" This is loaded if no vimrc file was found.
|
||||||
" Except when Vim is run with "-u NONE" or "-C".
|
" Except when Vim is run with "-u NONE" or "-C".
|
||||||
@@ -64,9 +64,10 @@ if has('win32')
|
|||||||
set guioptions-=t
|
set guioptions-=t
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Don't use Ex mode, use Q for formatting.
|
" Don't use Q for Ex mode, use it for formatting. Except for Select mode.
|
||||||
" Revert with ":unmap Q".
|
" Revert with ":unmap Q".
|
||||||
map Q gq
|
map Q gq
|
||||||
|
sunmap Q
|
||||||
|
|
||||||
" CTRL-U in insert mode deletes a lot. Use CTRL-G u to first break undo,
|
" CTRL-U in insert mode deletes a lot. Use CTRL-G u to first break undo,
|
||||||
" so that you can undo CTRL-U after inserting a line break.
|
" so that you can undo CTRL-U after inserting a line break.
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ include ../../src/auto/config.mk
|
|||||||
DOCS = \
|
DOCS = \
|
||||||
arabic.txt \
|
arabic.txt \
|
||||||
autocmd.txt \
|
autocmd.txt \
|
||||||
|
builtin.txt \
|
||||||
change.txt \
|
change.txt \
|
||||||
channel.txt \
|
channel.txt \
|
||||||
cmdline.txt \
|
cmdline.txt \
|
||||||
@@ -152,6 +153,7 @@ DOCS = \
|
|||||||
version6.txt \
|
version6.txt \
|
||||||
version7.txt \
|
version7.txt \
|
||||||
version8.txt \
|
version8.txt \
|
||||||
|
version9.txt \
|
||||||
vi_diff.txt \
|
vi_diff.txt \
|
||||||
vim9.txt \
|
vim9.txt \
|
||||||
visual.txt \
|
visual.txt \
|
||||||
@@ -161,6 +163,7 @@ DOCS = \
|
|||||||
HTMLS = \
|
HTMLS = \
|
||||||
arabic.html \
|
arabic.html \
|
||||||
autocmd.html \
|
autocmd.html \
|
||||||
|
builtin.html \
|
||||||
change.html \
|
change.html \
|
||||||
channel.html \
|
channel.html \
|
||||||
cmdline.html \
|
cmdline.html \
|
||||||
@@ -296,6 +299,7 @@ HTMLS = \
|
|||||||
version6.html \
|
version6.html \
|
||||||
version7.html \
|
version7.html \
|
||||||
version8.html \
|
version8.html \
|
||||||
|
version9.html \
|
||||||
vi_diff.html \
|
vi_diff.html \
|
||||||
vimindex.html \
|
vimindex.html \
|
||||||
vim9.html \
|
vim9.html \
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*autocmd.txt* For Vim version 8.2. Last change: 2021 Nov 20
|
*autocmd.txt* For Vim version 8.2. Last change: 2022 Mar 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -51,10 +51,10 @@ effects. Be careful not to destroy your text.
|
|||||||
2. Defining autocommands *autocmd-define*
|
2. Defining autocommands *autocmd-define*
|
||||||
|
|
||||||
*:au* *:autocmd*
|
*:au* *:autocmd*
|
||||||
:au[tocmd] [group] {event} {pat} [++once] [++nested] {cmd}
|
:au[tocmd] [group] {event} {aupat} [++once] [++nested] {cmd}
|
||||||
Add {cmd} to the list of commands that Vim will
|
Add {cmd} to the list of commands that Vim will
|
||||||
execute automatically on {event} for a file matching
|
execute automatically on {event} for a file matching
|
||||||
{pat} |autocmd-patterns|.
|
{aupat} |autocmd-patterns|.
|
||||||
Here {event} cannot be "*". *E1155*
|
Here {event} cannot be "*". *E1155*
|
||||||
Note: A quote character is seen as argument to the
|
Note: A quote character is seen as argument to the
|
||||||
:autocmd and won't start a comment.
|
:autocmd and won't start a comment.
|
||||||
@@ -63,7 +63,7 @@ effects. Be careful not to destroy your text.
|
|||||||
they were given.
|
they were given.
|
||||||
See |autocmd-nested| for [++nested]. "nested"
|
See |autocmd-nested| for [++nested]. "nested"
|
||||||
(without the ++) can also be used, for backwards
|
(without the ++) can also be used, for backwards
|
||||||
compatibility.
|
compatibility, but not in |Vim9| script. *E1078*
|
||||||
*autocmd-once*
|
*autocmd-once*
|
||||||
If [++once] is supplied the command is executed once,
|
If [++once] is supplied the command is executed once,
|
||||||
then removed ("one shot").
|
then removed ("one shot").
|
||||||
@@ -145,19 +145,19 @@ prompt. When one command outputs two messages this can happen anyway.
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
3. Removing autocommands *autocmd-remove*
|
3. Removing autocommands *autocmd-remove*
|
||||||
|
|
||||||
:au[tocmd]! [group] {event} {pat} [++once] [++nested] {cmd}
|
:au[tocmd]! [group] {event} {aupat} [++once] [++nested] {cmd}
|
||||||
Remove all autocommands associated with {event} and
|
Remove all autocommands associated with {event} and
|
||||||
{pat}, and add the command {cmd}.
|
{aupat}, and add the command {cmd}.
|
||||||
See |autocmd-once| for [++once].
|
See |autocmd-once| for [++once].
|
||||||
See |autocmd-nested| for [++nested].
|
See |autocmd-nested| for [++nested].
|
||||||
|
|
||||||
:au[tocmd]! [group] {event} {pat}
|
:au[tocmd]! [group] {event} {aupat}
|
||||||
Remove all autocommands associated with {event} and
|
Remove all autocommands associated with {event} and
|
||||||
{pat}.
|
{aupat}.
|
||||||
|
|
||||||
:au[tocmd]! [group] * {pat}
|
:au[tocmd]! [group] * {aupat}
|
||||||
Remove all autocommands associated with {pat} for all
|
Remove all autocommands associated with {aupat} for
|
||||||
events.
|
all events.
|
||||||
|
|
||||||
:au[tocmd]! [group] {event}
|
:au[tocmd]! [group] {event}
|
||||||
Remove ALL autocommands for {event}.
|
Remove ALL autocommands for {event}.
|
||||||
@@ -177,12 +177,12 @@ with ":augroup"); otherwise, Vim uses the group defined with [group].
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
4. Listing autocommands *autocmd-list*
|
4. Listing autocommands *autocmd-list*
|
||||||
|
|
||||||
:au[tocmd] [group] {event} {pat}
|
:au[tocmd] [group] {event} {aupat}
|
||||||
Show the autocommands associated with {event} and
|
Show the autocommands associated with {event} and
|
||||||
{pat}.
|
{aupat}.
|
||||||
|
|
||||||
:au[tocmd] [group] * {pat}
|
:au[tocmd] [group] * {aupat}
|
||||||
Show the autocommands associated with {pat} for all
|
Show the autocommands associated with {aupat} for all
|
||||||
events.
|
events.
|
||||||
|
|
||||||
:au[tocmd] [group] {event}
|
:au[tocmd] [group] {event}
|
||||||
@@ -326,6 +326,7 @@ Name triggered by ~
|
|||||||
|FileChangedRO| before making the first change to a read-only file
|
|FileChangedRO| before making the first change to a read-only file
|
||||||
|
|
||||||
|DiffUpdated| after diffs have been updated
|
|DiffUpdated| after diffs have been updated
|
||||||
|
|DirChangedPre| before the working directory will change
|
||||||
|DirChanged| after the working directory has changed
|
|DirChanged| after the working directory has changed
|
||||||
|
|
||||||
|ShellCmdPost| after executing a shell command
|
|ShellCmdPost| after executing a shell command
|
||||||
@@ -364,6 +365,7 @@ Name triggered by ~
|
|||||||
|InsertEnter| starting Insert mode
|
|InsertEnter| starting Insert mode
|
||||||
|InsertChange| when typing <Insert> while in Insert or Replace mode
|
|InsertChange| when typing <Insert> while in Insert or Replace mode
|
||||||
|InsertLeave| when leaving Insert mode
|
|InsertLeave| when leaving Insert mode
|
||||||
|
|InsertLeavePre| just before leaving Insert mode
|
||||||
|InsertCharPre| when a character was typed in Insert mode, before
|
|InsertCharPre| when a character was typed in Insert mode, before
|
||||||
inserting it
|
inserting it
|
||||||
|
|
||||||
@@ -738,6 +740,11 @@ DiffUpdated After diffs have been updated. Depending on
|
|||||||
what kind of diff is being used (internal or
|
what kind of diff is being used (internal or
|
||||||
external) this can be triggered on every
|
external) this can be triggered on every
|
||||||
change or when doing |:diffupdate|.
|
change or when doing |:diffupdate|.
|
||||||
|
*DirChangedPre*
|
||||||
|
DirChangedPre The working directory is going to be changed,
|
||||||
|
as with |DirChanged|. The pattern is like
|
||||||
|
with |DirChanged|. The new directory can be
|
||||||
|
found in v:event.directory.
|
||||||
*DirChanged*
|
*DirChanged*
|
||||||
DirChanged The working directory has changed in response
|
DirChanged The working directory has changed in response
|
||||||
to the |:cd| or |:tcd| or |:lcd| commands, or
|
to the |:cd| or |:tcd| or |:lcd| commands, or
|
||||||
@@ -1211,7 +1218,7 @@ TextYankPost After text has been yanked or deleted in the
|
|||||||
Not triggered when |quote_| is used nor when
|
Not triggered when |quote_| is used nor when
|
||||||
called recursively.
|
called recursively.
|
||||||
It is not allowed to change the buffer text,
|
It is not allowed to change the buffer text,
|
||||||
see |textlock|.
|
see |textlock|. *E1064*
|
||||||
{only when compiled with the +eval feature}
|
{only when compiled with the +eval feature}
|
||||||
|
|
||||||
*User*
|
*User*
|
||||||
@@ -1279,8 +1286,8 @@ VimResume When the Vim instance is resumed after being
|
|||||||
:autocmd VimResume * checktime
|
:autocmd VimResume * checktime
|
||||||
< *VimSuspend*
|
< *VimSuspend*
|
||||||
VimSuspend When the Vim instance is suspended. Only when
|
VimSuspend When the Vim instance is suspended. Only when
|
||||||
CTRL-Z was typed inside Vim, not when the
|
CTRL-Z was typed inside Vim, or when the SIGTSTP
|
||||||
SIGSTOP or SIGTSTP signal was sent to Vim.
|
signal was sent to Vim, but not for SIGSTOP.
|
||||||
*WinClosed*
|
*WinClosed*
|
||||||
WinClosed After closing a window. The pattern is
|
WinClosed After closing a window. The pattern is
|
||||||
matched against the |window-ID|. Both
|
matched against the |window-ID|. Both
|
||||||
@@ -1311,16 +1318,16 @@ WinNew When a new window was created. Not done for
|
|||||||
Before a WinEnter event.
|
Before a WinEnter event.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
6. Patterns *autocmd-patterns* *{pat}*
|
6. Patterns *autocmd-patterns* *{aupat}*
|
||||||
|
|
||||||
The {pat} argument can be a comma separated list. This works as if the
|
The {aupat} argument of `:autocmd` can be a comma separated list. This works as
|
||||||
command was given with each pattern separately. Thus this command: >
|
if the command was given with each pattern separately. Thus this command: >
|
||||||
:autocmd BufRead *.txt,*.info set et
|
:autocmd BufRead *.txt,*.info set et
|
||||||
Is equivalent to: >
|
Is equivalent to: >
|
||||||
:autocmd BufRead *.txt set et
|
:autocmd BufRead *.txt set et
|
||||||
:autocmd BufRead *.info set et
|
:autocmd BufRead *.info set et
|
||||||
|
|
||||||
The file pattern {pat} is tested for a match against the file name in one of
|
The file pattern {aupat} is tested for a match against the file name in one of
|
||||||
two ways:
|
two ways:
|
||||||
1. When there is no '/' in the pattern, Vim checks for a match against only
|
1. When there is no '/' in the pattern, Vim checks for a match against only
|
||||||
the tail part of the file name (without its leading directory path).
|
the tail part of the file name (without its leading directory path).
|
||||||
@@ -1633,7 +1640,7 @@ Examples for reading and writing compressed files: >
|
|||||||
: autocmd BufReadPre,FileReadPre *.gz set bin
|
: autocmd BufReadPre,FileReadPre *.gz set bin
|
||||||
: autocmd BufReadPost,FileReadPost *.gz '[,']!gunzip
|
: autocmd BufReadPost,FileReadPost *.gz '[,']!gunzip
|
||||||
: autocmd BufReadPost,FileReadPost *.gz set nobin
|
: autocmd BufReadPost,FileReadPost *.gz set nobin
|
||||||
: autocmd BufReadPost,FileReadPost *.gz execute ":doautocmd BufReadPost " . expand("%:r")
|
: autocmd BufReadPost,FileReadPost *.gz execute ":doautocmd BufReadPost " .. expand("%:r")
|
||||||
: autocmd BufWritePost,FileWritePost *.gz !mv <afile> <afile>:r
|
: autocmd BufWritePost,FileWritePost *.gz !mv <afile> <afile>:r
|
||||||
: autocmd BufWritePost,FileWritePost *.gz !gzip <afile>:r
|
: autocmd BufWritePost,FileWritePost *.gz !gzip <afile>:r
|
||||||
|
|
||||||
@@ -1732,7 +1739,7 @@ To insert the current date and time in a *.html file when writing it: >
|
|||||||
: else
|
: else
|
||||||
: let l = line("$")
|
: let l = line("$")
|
||||||
: endif
|
: endif
|
||||||
: exe "1," . l . "g/Last modified: /s/Last modified: .*/Last modified: " .
|
: exe "1," .. l .. "g/Last modified: /s/Last modified: .*/Last modified: " ..
|
||||||
: \ strftime("%Y %b %d")
|
: \ strftime("%Y %b %d")
|
||||||
:endfun
|
:endfun
|
||||||
|
|
||||||
|
|||||||
10195
runtime/doc/builtin.txt
Normal file
10195
runtime/doc/builtin.txt
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
*change.txt* For Vim version 8.2. Last change: 2021 Jun 23
|
*change.txt* For Vim version 8.2. Last change: 2022 Mar 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -259,6 +259,9 @@ Or use "caw" (see |aw|).
|
|||||||
line.
|
line.
|
||||||
Adding [!] toggles 'autoindent' for the time this
|
Adding [!] toggles 'autoindent' for the time this
|
||||||
command is executed.
|
command is executed.
|
||||||
|
This command is not supported in |Vim9| script,
|
||||||
|
because it is too easily confused with a variable
|
||||||
|
name.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Simple changes *simple-change*
|
3. Simple changes *simple-change*
|
||||||
@@ -775,11 +778,11 @@ matched pattern is deleted. The separator after {pattern} can also be left
|
|||||||
out then. Example: >
|
out then. Example: >
|
||||||
:%s/TESTING
|
:%s/TESTING
|
||||||
This deletes "TESTING" from all lines, but only one per line.
|
This deletes "TESTING" from all lines, but only one per line.
|
||||||
|
*E1270*
|
||||||
For compatibility with Vi these two exceptions are allowed:
|
For compatibility with Vi these two exceptions are allowed in legacy script:
|
||||||
"\/{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* *E1241* *E1242*
|
||||||
Instead of the '/' which surrounds the pattern and replacement string, you can
|
Instead of the '/' which surrounds the pattern and replacement string, you can
|
||||||
use another single-byte character. This is useful if you want to include a
|
use another single-byte character. This is useful if you want to include a
|
||||||
'/' in the search pattern or replacement string. Example: >
|
'/' in the search pattern or replacement string. Example: >
|
||||||
@@ -943,7 +946,7 @@ Consider using a character like "@" or ":". There is no problem if the result
|
|||||||
of the expression contains the separation character.
|
of the expression contains the separation character.
|
||||||
|
|
||||||
Examples: >
|
Examples: >
|
||||||
:s@\n@\="\r" . expand("$HOME") . "\r"@
|
:s@\n@\="\r" .. expand("$HOME") .. "\r"@
|
||||||
This replaces an end-of-line with a new line containing the value of $HOME. >
|
This replaces an end-of-line with a new line containing the value of $HOME. >
|
||||||
|
|
||||||
s/E/\="\<Char-0x20ac>"/g
|
s/E/\="\<Char-0x20ac>"/g
|
||||||
@@ -1073,7 +1076,7 @@ inside of strings can change! Also see 'softtabstop' option. >
|
|||||||
in [range] (default: current line |cmdline-ranges|),
|
in [range] (default: current line |cmdline-ranges|),
|
||||||
[into register x].
|
[into register x].
|
||||||
|
|
||||||
*p* *put* *E353*
|
*p* *put* *E353* *E1240*
|
||||||
["x]p Put the text [from register x] after the cursor
|
["x]p Put the text [from register x] after the cursor
|
||||||
[count] times.
|
[count] times.
|
||||||
|
|
||||||
@@ -1120,7 +1123,7 @@ inside of strings can change! Also see 'softtabstop' option. >
|
|||||||
the command. You need to escape the '|' and '"'
|
the command. You need to escape the '|' and '"'
|
||||||
characters to prevent them from terminating the
|
characters to prevent them from terminating the
|
||||||
command. Example: >
|
command. Example: >
|
||||||
:put ='path' . \",/test\"
|
:put ='path' .. \",/test\"
|
||||||
< If there is no expression after '=', Vim uses the
|
< If there is no expression after '=', Vim uses the
|
||||||
previous expression. You can see it with ":dis =".
|
previous expression. You can see it with ":dis =".
|
||||||
|
|
||||||
@@ -1173,10 +1176,13 @@ register. With blockwise selection it also depends on the size of the block
|
|||||||
and whether the corners are on an existing character. (Implementation detail:
|
and whether the corners are on an existing character. (Implementation detail:
|
||||||
it actually works by first putting the register after the selection and then
|
it actually works by first putting the register after the selection and then
|
||||||
deleting the selection.)
|
deleting the selection.)
|
||||||
The previously selected text is put in the unnamed register. If you want to
|
With 'p' the previously selected text is put in the unnamed register. This is
|
||||||
put the same text into a Visual selection several times you need to use
|
useful if you want to put that text somewhere else. But you cannot repeat the
|
||||||
|
same change.
|
||||||
|
With 'P' the unnamed register is not changed, you can repeat the same change.
|
||||||
|
But the deleted text cannot be used. If you do need it you can use 'p' with
|
||||||
another register. E.g., yank the text to copy, Visually select the text to
|
another register. E.g., yank the text to copy, Visually select the text to
|
||||||
replace and use "0p . You can repeat this as many times as you like, the
|
replace and use "0p . You can repeat this as many times as you like, and the
|
||||||
unnamed register will be changed each time.
|
unnamed register will be changed each time.
|
||||||
|
|
||||||
When you use a blockwise Visual mode command and yank only a single line into
|
When you use a blockwise Visual mode command and yank only a single line into
|
||||||
@@ -1374,6 +1380,9 @@ The next three commands always work on whole lines.
|
|||||||
|
|
||||||
*:t*
|
*:t*
|
||||||
:t Synonym for copy.
|
:t Synonym for copy.
|
||||||
|
This command is not supported in |Vim9| script,
|
||||||
|
because it is too easily confused with a variable
|
||||||
|
name.
|
||||||
|
|
||||||
:[range]m[ove] {address} *:m* *:mo* *:move* *E134*
|
:[range]m[ove] {address} *:m* *:mo* *:move* *E134*
|
||||||
Move the lines given by [range] to below the line
|
Move the lines given by [range] to below the line
|
||||||
@@ -1671,7 +1680,8 @@ r Automatically insert the current comment leader after hitting
|
|||||||
<Enter> in Insert mode.
|
<Enter> in Insert mode.
|
||||||
*fo-o*
|
*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. In case comment is unwanted in a specific place
|
||||||
|
use CTRL-U to quickly delete it. |i_CTRL-U|
|
||||||
*fo-q*
|
*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
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*channel.txt* For Vim version 8.2. Last change: 2020 Oct 17
|
*channel.txt* For Vim version 8.2. Last change: 2022 Feb 27
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -91,7 +91,7 @@ And you should see the message in Vim. You can move the cursor a word forward:
|
|||||||
|
|
||||||
To handle asynchronous communication a callback needs to be used: >
|
To handle asynchronous communication a callback needs to be used: >
|
||||||
func MyHandler(channel, msg)
|
func MyHandler(channel, msg)
|
||||||
echo "from the handler: " . a:msg
|
echo "from the handler: " .. a:msg
|
||||||
endfunc
|
endfunc
|
||||||
call ch_sendexpr(channel, 'hello!', {'callback': "MyHandler"})
|
call ch_sendexpr(channel, 'hello!', {'callback': "MyHandler"})
|
||||||
Vim will not wait for a response. Now the server can send the response later
|
Vim will not wait for a response. Now the server can send the response later
|
||||||
@@ -101,7 +101,7 @@ Instead of giving a callback with every send call, it can also be specified
|
|||||||
when opening the channel: >
|
when opening the channel: >
|
||||||
call ch_close(channel)
|
call ch_close(channel)
|
||||||
let channel = ch_open('localhost:8765', {'callback': "MyHandler"})
|
let channel = ch_open('localhost:8765', {'callback': "MyHandler"})
|
||||||
call ch_sendexpr(channel, 'hello!')
|
call ch_sendexpr(channel, 'hello channel!')
|
||||||
|
|
||||||
When trying out channels it's useful to see what is going on. You can tell
|
When trying out channels it's useful to see what is going on. You can tell
|
||||||
Vim to write lines in log file: >
|
Vim to write lines in log file: >
|
||||||
@@ -132,10 +132,11 @@ When using an IPv6 address, enclose it within square brackets. E.g.,
|
|||||||
"raw" - Use raw messages
|
"raw" - Use raw messages
|
||||||
*channel-callback* *E921*
|
*channel-callback* *E921*
|
||||||
"callback" A function that is called when a message is received that is
|
"callback" A function that is called when a message is received that is
|
||||||
not handled otherwise. It gets two arguments: the channel
|
not handled otherwise (e.g. a JSON message with ID zero). It
|
||||||
and the received message. Example: >
|
gets two arguments: the channel and the received message.
|
||||||
|
Example: >
|
||||||
func Handle(channel, msg)
|
func Handle(channel, msg)
|
||||||
echo 'Received: ' . a:msg
|
echo 'Received: ' .. a:msg
|
||||||
endfunc
|
endfunc
|
||||||
let channel = ch_open("localhost:8765", {"callback": "Handle"})
|
let channel = ch_open("localhost:8765", {"callback": "Handle"})
|
||||||
<
|
<
|
||||||
@@ -1287,18 +1288,18 @@ prompt. >
|
|||||||
" Create a channel log so we can see what happens.
|
" Create a channel log so we can see what happens.
|
||||||
call ch_logfile('logfile', 'w')
|
call ch_logfile('logfile', 'w')
|
||||||
|
|
||||||
" Function handling a line of text has been typed.
|
" Function handling a line of text that has been typed.
|
||||||
func TextEntered(text)
|
func TextEntered(text)
|
||||||
" Send the text to a shell with Enter appended.
|
" Send the text to a shell with Enter appended.
|
||||||
call ch_sendraw(g:shell_job, a:text .. "\n")
|
call ch_sendraw(g:shell_job, a:text .. "\n")
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
" Function handling output from the shell: Added above the prompt.
|
" Function handling output from the shell: Add it above the prompt.
|
||||||
func GotOutput(channel, msg)
|
func GotOutput(channel, msg)
|
||||||
call append(line("$") - 1, "- " . a:msg)
|
call append(line("$") - 1, "- " .. a:msg)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
" Function handling the shell exist: close the window.
|
" Function handling the shell exits: close the window.
|
||||||
func JobExit(job, status)
|
func JobExit(job, status)
|
||||||
quit!
|
quit!
|
||||||
endfunc
|
endfunc
|
||||||
@@ -1309,7 +1310,6 @@ prompt. >
|
|||||||
\ err_cb: function('GotOutput'),
|
\ err_cb: function('GotOutput'),
|
||||||
\ exit_cb: function('JobExit'),
|
\ exit_cb: function('JobExit'),
|
||||||
\ })
|
\ })
|
||||||
let shell_ch = job_getchannel(shell_job)
|
|
||||||
|
|
||||||
new
|
new
|
||||||
set buftype=prompt
|
set buftype=prompt
|
||||||
@@ -1320,6 +1320,46 @@ prompt. >
|
|||||||
" start accepting shell commands
|
" start accepting shell commands
|
||||||
startinsert
|
startinsert
|
||||||
<
|
<
|
||||||
|
The same in |Vim9| script: >
|
||||||
|
|
||||||
|
vim9script
|
||||||
|
|
||||||
|
# Create a channel log so we can see what happens.
|
||||||
|
ch_logfile('logfile', 'w')
|
||||||
|
|
||||||
|
var shell_job: job
|
||||||
|
|
||||||
|
# Function handling a line of text that has been typed.
|
||||||
|
def TextEntered(text: string)
|
||||||
|
# Send the text to a shell with Enter appended.
|
||||||
|
ch_sendraw(shell_job, text .. "\n")
|
||||||
|
enddef
|
||||||
|
|
||||||
|
# Function handling output from the shell: Add it above the prompt.
|
||||||
|
def GotOutput(channel: channel, msg: string)
|
||||||
|
append(line("$") - 1, "- " .. msg)
|
||||||
|
enddef
|
||||||
|
|
||||||
|
# Function handling the shell exits: close the window.
|
||||||
|
def JobExit(job: job, status: number)
|
||||||
|
quit!
|
||||||
|
enddef
|
||||||
|
|
||||||
|
# Start a shell in the background.
|
||||||
|
shell_job = job_start(["/bin/sh"], {
|
||||||
|
out_cb: GotOutput,
|
||||||
|
err_cb: GotOutput,
|
||||||
|
exit_cb: JobExit,
|
||||||
|
})
|
||||||
|
|
||||||
|
new
|
||||||
|
set buftype=prompt
|
||||||
|
var buf = bufnr('')
|
||||||
|
prompt_setcallback(buf, TextEntered)
|
||||||
|
prompt_setprompt(buf, "shell command: ")
|
||||||
|
|
||||||
|
# start accepting shell commands
|
||||||
|
startinsert
|
||||||
|
|
||||||
|
|
||||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*cmdline.txt* For Vim version 8.2. Last change: 2021 Nov 22
|
*cmdline.txt* For Vim version 8.2. Last change: 2022 Feb 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -227,7 +227,7 @@ CTRL-\ e {expr} *c_CTRL-\_e*
|
|||||||
Example: >
|
Example: >
|
||||||
:cmap <F7> <C-\>eAppendSome()<CR>
|
:cmap <F7> <C-\>eAppendSome()<CR>
|
||||||
:func AppendSome()
|
:func AppendSome()
|
||||||
:let cmd = getcmdline() . " Some()"
|
:let cmd = getcmdline() .. " Some()"
|
||||||
:" place the cursor on the )
|
:" place the cursor on the )
|
||||||
:call setcmdpos(strlen(cmd))
|
:call setcmdpos(strlen(cmd))
|
||||||
:return cmd
|
:return cmd
|
||||||
@@ -705,6 +705,15 @@ Some Ex commands accept a line range in front of them. This is noted as
|
|||||||
|
|
||||||
The basics are explained in section |10.3| of the user manual.
|
The basics are explained in section |10.3| of the user manual.
|
||||||
|
|
||||||
|
In |Vim9| script a range needs to be prefixed with a colon to avoid ambiguity
|
||||||
|
with continuation lines. For example, "+" can be used for a range but is also
|
||||||
|
a continuation of an expression: >
|
||||||
|
var result = start
|
||||||
|
+ print
|
||||||
|
If the "+" is a range then it must be prefixed with a colon: >
|
||||||
|
var result = start
|
||||||
|
:+ print
|
||||||
|
<
|
||||||
*:,* *:;*
|
*:,* *:;*
|
||||||
When separated with ';' the cursor position will be set to that line
|
When separated with ';' the cursor position will be set to that line
|
||||||
before interpreting the next line specifier. This doesn't happen for ','.
|
before interpreting the next line specifier. This doesn't happen for ','.
|
||||||
@@ -721,7 +730,7 @@ If more line specifiers are given than required for the command, the first
|
|||||||
one(s) will be ignored.
|
one(s) will be ignored.
|
||||||
|
|
||||||
Line numbers may be specified with: *:range* *{address}*
|
Line numbers may be specified with: *:range* *{address}*
|
||||||
{number} an absolute line number
|
{number} an absolute line number *E1247*
|
||||||
. the current line *:.*
|
. the current line *:.*
|
||||||
$ the last line in the file *:$*
|
$ the last line in the file *:$*
|
||||||
% equal to 1,$ (the entire file) *:%*
|
% equal to 1,$ (the entire file) *:%*
|
||||||
@@ -739,7 +748,8 @@ Line numbers may be specified with: *:range* *{address}*
|
|||||||
|
|
||||||
Each may be followed (several times) by '+' or '-' and an optional number.
|
Each may be followed (several times) by '+' or '-' and an optional number.
|
||||||
This number is added or subtracted from the preceding line number. If the
|
This number is added or subtracted from the preceding line number. If the
|
||||||
number is omitted, 1 is used.
|
number is omitted, 1 is used. If there is nothing before the '+' or '-' then
|
||||||
|
the current line is used.
|
||||||
|
|
||||||
The "/" and "?" after {pattern} are required to separate the pattern from
|
The "/" and "?" after {pattern} are required to separate the pattern from
|
||||||
anything that follows.
|
anything that follows.
|
||||||
@@ -769,7 +779,7 @@ Some commands allow for a count after the command. This count is used as the
|
|||||||
number of lines to be used, starting with the line given in the last line
|
number of lines to be used, starting with the line given in the last line
|
||||||
specifier (the default is the cursor line). The commands that accept a count
|
specifier (the default is the cursor line). The commands that accept a count
|
||||||
are the ones that use a range but do not have a file name argument (because
|
are the ones that use a range but do not have a file name argument (because
|
||||||
a file name can also be a number).
|
a file name can also be a number). The count cannot be negative.
|
||||||
|
|
||||||
Examples: >
|
Examples: >
|
||||||
:s/x/X/g 5 substitute 'x' by 'X' in the current line and four
|
:s/x/X/g 5 substitute 'x' by 'X' in the current line and four
|
||||||
@@ -919,9 +929,11 @@ Note: these are typed literally, they are not special keys!
|
|||||||
*:<amatch>* *<amatch>*
|
*:<amatch>* *<amatch>*
|
||||||
<amatch> When executing autocommands, is replaced with the match for
|
<amatch> When executing autocommands, is replaced with the match for
|
||||||
which this autocommand was executed. *E497*
|
which this autocommand was executed. *E497*
|
||||||
It differs from <afile> only when the file name isn't used
|
It differs from <afile> when the file name isn't used to
|
||||||
to match with (for FileType, Syntax and SpellFileMissing
|
match with (for FileType, Syntax and SpellFileMissing
|
||||||
events).
|
events).
|
||||||
|
When the match is with a file name, it is expanded to the
|
||||||
|
full path.
|
||||||
*:<sfile>* *<sfile>*
|
*:<sfile>* *<sfile>*
|
||||||
<sfile> When executing a ":source" command, is replaced with the
|
<sfile> When executing a ":source" command, is replaced with the
|
||||||
file name of the sourced file. *E498*
|
file name of the sourced file. *E498*
|
||||||
@@ -938,6 +950,7 @@ Note: these are typed literally, they are not special keys!
|
|||||||
and "script {file-name}[{lnum}]" for a script line, and
|
and "script {file-name}[{lnum}]" for a script line, and
|
||||||
".." in between items. E.g.:
|
".." in between items. E.g.:
|
||||||
"function {function-name1}[{lnum}]..{function-name2}[{lnum}]"
|
"function {function-name1}[{lnum}]..{function-name2}[{lnum}]"
|
||||||
|
If there is no call stack you get error *E489* .
|
||||||
*:<slnum>* *<slnum>*
|
*:<slnum>* *<slnum>*
|
||||||
<slnum> When executing a ":source" command, is replaced with the
|
<slnum> When executing a ":source" command, is replaced with the
|
||||||
line number. *E842*
|
line number. *E842*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*diff.txt* For Vim version 8.2. Last change: 2021 May 24
|
*diff.txt* For Vim version 8.2. Last change: 2022 Jan 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -335,8 +335,9 @@ After setting this variable, reload the syntax script: >
|
|||||||
|
|
||||||
FINDING THE DIFFERENCES *diff-diffexpr*
|
FINDING THE DIFFERENCES *diff-diffexpr*
|
||||||
|
|
||||||
The 'diffexpr' option can be set to use something else than the standard
|
The 'diffexpr' option can be set to use something else than the internal diff
|
||||||
"diff" program to compare two files and find the differences. *E959*
|
support or the standard "diff" program to compare two files and find the
|
||||||
|
differences. *E959*
|
||||||
|
|
||||||
When 'diffexpr' is empty, Vim uses this command to find the differences
|
When 'diffexpr' is empty, Vim uses this command to find the differences
|
||||||
between file1 and file2: >
|
between file1 and file2: >
|
||||||
@@ -369,7 +370,7 @@ format mentioned. These variables are set to the file names used:
|
|||||||
|
|
||||||
v:fname_in original file
|
v:fname_in original file
|
||||||
v:fname_new new version of the same file
|
v:fname_new new version of the same file
|
||||||
v:fname_out resulting diff file
|
v:fname_out where to write the resulting diff file
|
||||||
|
|
||||||
Additionally, 'diffexpr' should take care of "icase" and "iwhite" in the
|
Additionally, 'diffexpr' should take care of "icase" and "iwhite" in the
|
||||||
'diffopt' option. 'diffexpr' cannot change the value of 'lines' and
|
'diffopt' option. 'diffexpr' cannot change the value of 'lines' and
|
||||||
@@ -381,13 +382,13 @@ Example (this does almost the same as 'diffexpr' being empty): >
|
|||||||
function MyDiff()
|
function MyDiff()
|
||||||
let opt = ""
|
let opt = ""
|
||||||
if &diffopt =~ "icase"
|
if &diffopt =~ "icase"
|
||||||
let opt = opt . "-i "
|
let opt = opt .. "-i "
|
||||||
endif
|
endif
|
||||||
if &diffopt =~ "iwhite"
|
if &diffopt =~ "iwhite"
|
||||||
let opt = opt . "-b "
|
let opt = opt .. "-b "
|
||||||
endif
|
endif
|
||||||
silent execute "!diff -a --binary " . opt . v:fname_in . " " . v:fname_new .
|
silent execute "!diff -a --binary " .. opt .. v:fname_in .. " " .. v:fname_new ..
|
||||||
\ " > " . v:fname_out
|
\ " > " .. v:fname_out
|
||||||
redraw!
|
redraw!
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
@@ -398,6 +399,13 @@ mode, so that a CTRL-Z doesn't end the text on DOS.
|
|||||||
The `redraw!` command may not be needed, depending on whether executing a
|
The `redraw!` command may not be needed, depending on whether executing a
|
||||||
shell command shows something on the display or not.
|
shell command shows something on the display or not.
|
||||||
|
|
||||||
|
If the 'diffexpr' expression starts with s: or |<SID>|, then it is replaced
|
||||||
|
with the script ID (|local-function|). Example: >
|
||||||
|
set diffexpr=s:MyDiffExpr()
|
||||||
|
set diffexpr=<SID>SomeDiffExpr()
|
||||||
|
Otherwise, the expression is evaluated in the context of the script where the
|
||||||
|
option was set, thus script-local items are available.
|
||||||
|
|
||||||
*E810* *E97*
|
*E810* *E97*
|
||||||
Vim will do a test if the diff output looks alright. If it doesn't, you will
|
Vim will do a test if the diff output looks alright. If it doesn't, you will
|
||||||
get an error message. Possible causes:
|
get an error message. Possible causes:
|
||||||
@@ -437,8 +445,8 @@ Example (this does the same as 'patchexpr' being empty): >
|
|||||||
|
|
||||||
set patchexpr=MyPatch()
|
set patchexpr=MyPatch()
|
||||||
function MyPatch()
|
function MyPatch()
|
||||||
:call system("patch -o " . v:fname_out . " " . v:fname_in .
|
:call system("patch -o " .. v:fname_out .. " " .. v:fname_in ..
|
||||||
\ " < " . v:fname_diff)
|
\ " < " .. v:fname_diff)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
Make sure that using the "patch" program doesn't have unwanted side effects.
|
Make sure that using the "patch" program doesn't have unwanted side effects.
|
||||||
@@ -449,4 +457,12 @@ evaluating 'patchexpr'. This hopefully avoids that files in the current
|
|||||||
directory are accidentally patched. Vim will also delete files starting with
|
directory are accidentally patched. Vim will also delete files starting with
|
||||||
v:fname_in and ending in ".rej" and ".orig".
|
v:fname_in and ending in ".rej" and ".orig".
|
||||||
|
|
||||||
|
If the 'patchexpr' expression starts with s: or |<SID>|, then it is replaced
|
||||||
|
with the script ID (|local-function|). Example: >
|
||||||
|
set patchexpr=s:MyPatchExpr()
|
||||||
|
set patchexpr=<SID>SomePatchExpr()
|
||||||
|
Otherwise, the expression is evaluated in the context of the script where the
|
||||||
|
option was set, thus script-local items are available.
|
||||||
|
|
||||||
|
|
||||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*editing.txt* For Vim version 8.2. Last change: 2021 Oct 16
|
*editing.txt* For Vim version 8.2. Last change: 2022 Feb 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -222,7 +222,7 @@ If you want to keep the changed buffer without saving it, switch on the
|
|||||||
Edit {file} always. Discard any changes to the
|
Edit {file} always. Discard any changes to the
|
||||||
current buffer.
|
current buffer.
|
||||||
Also see |++opt| and |+cmd|.
|
Also see |++opt| and |+cmd|.
|
||||||
|
*:edit_#* *:e#*
|
||||||
:e[dit] [++opt] [+cmd] #[count]
|
:e[dit] [++opt] [+cmd] #[count]
|
||||||
Edit the [count]th buffer (as shown by |:files|).
|
Edit the [count]th buffer (as shown by |:files|).
|
||||||
This command does the same as [count] CTRL-^. But ":e
|
This command does the same as [count] CTRL-^. But ":e
|
||||||
@@ -389,7 +389,7 @@ as a wildcard when "[" is in the 'isfname' option. A simple way to avoid this
|
|||||||
is to use "path\[[]abc]", this matches the file "path\[abc]".
|
is to use "path\[[]abc]", this matches the file "path\[abc]".
|
||||||
|
|
||||||
*starstar-wildcard*
|
*starstar-wildcard*
|
||||||
Expanding "**" is possible on Unix, Win32, Mac OS/X and a few other systems.
|
Expanding "**" is possible on Unix, Win32, macOS and a few other systems.
|
||||||
This allows searching a directory tree. This goes up to 100 directories deep.
|
This allows searching a directory tree. This goes up to 100 directories deep.
|
||||||
Note there are some commands where this works slightly differently, see
|
Note there are some commands where this works slightly differently, see
|
||||||
|file-searching|.
|
|file-searching|.
|
||||||
@@ -433,7 +433,7 @@ This also works for most other systems, with the restriction that the
|
|||||||
backticks must be around the whole item. It is not possible to have text
|
backticks must be around the whole item. It is not possible to have text
|
||||||
directly before the first or just after the last backtick.
|
directly before the first or just after the last backtick.
|
||||||
|
|
||||||
*`=*
|
*`=* *E1083*
|
||||||
You can have the backticks expanded as a Vim expression, instead of as an
|
You can have the backticks expanded as a Vim expression, instead of as an
|
||||||
external command, by putting an equal sign right after the first backtick,
|
external command, by putting an equal sign right after the first backtick,
|
||||||
e.g.: >
|
e.g.: >
|
||||||
@@ -444,9 +444,9 @@ does apply like to other wildcards.
|
|||||||
|
|
||||||
Environment variables in the expression are expanded when evaluating the
|
Environment variables in the expression are expanded when evaluating the
|
||||||
expression, thus this works: >
|
expression, thus this works: >
|
||||||
:e `=$HOME . '/.vimrc'`
|
:e `=$HOME .. '/.vimrc'`
|
||||||
This does not work, $HOME is inside a string and used literally: >
|
This does not work, $HOME is inside a string and used literally: >
|
||||||
:e `='$HOME' . '/.vimrc'`
|
:e `='$HOME' .. '/.vimrc'`
|
||||||
|
|
||||||
If the expression returns a string then names are to be separated with line
|
If the expression returns a string then names are to be separated with line
|
||||||
breaks. When the result is a |List| then each item is used as a name. Line
|
breaks. When the result is a |List| then each item is used as a name. Line
|
||||||
@@ -633,7 +633,7 @@ list of the current window.
|
|||||||
Also see |++opt| and |+cmd|.
|
Also see |++opt| and |+cmd|.
|
||||||
|
|
||||||
:[count]arga[dd] {name} .. *:arga* *:argadd* *E479*
|
:[count]arga[dd] {name} .. *:arga* *:argadd* *E479*
|
||||||
:[count]arga[dd]
|
:[count]arga[dd] *E1156*
|
||||||
Add the {name}s to the argument list. When {name} is
|
Add the {name}s to the argument list. When {name} is
|
||||||
omitted add the current buffer name to the argument
|
omitted add the current buffer name to the argument
|
||||||
list.
|
list.
|
||||||
@@ -650,12 +650,19 @@ list of the current window.
|
|||||||
And after the last one:
|
And after the last one:
|
||||||
:+2argadd y a b c x y
|
:+2argadd y a b c x y
|
||||||
There is no check for duplicates, it is possible to
|
There is no check for duplicates, it is possible to
|
||||||
add a file to the argument list twice.
|
add a file to the argument list twice. You can use
|
||||||
The currently edited file is not changed.
|
|:argdedupe| to fix it afterwards: >
|
||||||
|
:argadd *.txt | argdedupe
|
||||||
|
< The currently edited file is not changed.
|
||||||
Note: you can also use this method: >
|
Note: you can also use this method: >
|
||||||
:args ## x
|
:args ## x
|
||||||
< This will add the "x" item and sort the new list.
|
< This will add the "x" item and sort the new list.
|
||||||
|
|
||||||
|
:argded[upe] *:argded* *:argdedupe*
|
||||||
|
Remove duplicate filenames from the argument list.
|
||||||
|
If your current file is a duplicate, your current file
|
||||||
|
will change to the original file index.
|
||||||
|
|
||||||
:argd[elete] {pattern} .. *:argd* *:argdelete* *E480* *E610*
|
:argd[elete] {pattern} .. *:argd* *:argdelete* *E480* *E610*
|
||||||
Delete files from the argument list that match the
|
Delete files from the argument list that match the
|
||||||
{pattern}s. {pattern} is used like a file pattern,
|
{pattern}s. {pattern} is used like a file pattern,
|
||||||
@@ -883,7 +890,7 @@ Note: When the 'write' option is off, you are not able to write any file.
|
|||||||
|
|
||||||
*:w* *:write*
|
*:w* *:write*
|
||||||
*E502* *E503* *E504* *E505*
|
*E502* *E503* *E504* *E505*
|
||||||
*E512* *E514* *E667* *E796* *E949*
|
*E512* *E514* *E667* *E949*
|
||||||
:w[rite] [++opt] Write the whole buffer to the current file. This is
|
:w[rite] [++opt] Write the whole buffer to the current file. This is
|
||||||
the normal way to save changes to a file. It fails
|
the normal way to save changes to a file. It fails
|
||||||
when the 'readonly' option is set or when there is
|
when the 'readonly' option is set or when there is
|
||||||
@@ -1140,6 +1147,9 @@ The names can be in upper- or lowercase.
|
|||||||
made.
|
made.
|
||||||
When 'hidden' is set and there are more windows, the
|
When 'hidden' is set and there are more windows, the
|
||||||
current buffer becomes hidden, after writing the file.
|
current buffer becomes hidden, after writing the file.
|
||||||
|
This command is not supported in |Vim9| script,
|
||||||
|
because it is too easily confused with a variable
|
||||||
|
name.
|
||||||
|
|
||||||
*:exi* *:exit*
|
*:exi* *:exit*
|
||||||
:[range]exi[t][!] [++opt] [file]
|
:[range]exi[t][!] [++opt] [file]
|
||||||
@@ -1298,11 +1308,12 @@ Changing directory fails when the current buffer is modified, the '.' flag is
|
|||||||
present in 'cpoptions' and "!" is not used in the command.
|
present in 'cpoptions' and "!" is not used in the command.
|
||||||
|
|
||||||
*:cd* *E747* *E472*
|
*:cd* *E747* *E472*
|
||||||
:cd[!] On non-Unix systems: Print the current directory
|
:cd[!] On non-Unix systems when 'cdhome' is off: Print the
|
||||||
name. On Unix systems: Change the current directory
|
current directory name.
|
||||||
to the home directory. Use |:pwd| to print the
|
Otherwise: Change the current directory to the home
|
||||||
current directory on all systems.
|
directory. Clear any window-local directory.
|
||||||
On Unix systems: clear any window-local directory.
|
Use |:pwd| to print the current directory on all
|
||||||
|
systems.
|
||||||
|
|
||||||
:cd[!] {path} Change the current directory to {path}.
|
:cd[!] {path} Change the current directory to {path}.
|
||||||
If {path} is relative, it is searched for in the
|
If {path} is relative, it is searched for in the
|
||||||
@@ -1377,7 +1388,8 @@ becomes the current directory for that window. Windows where the |:lcd|
|
|||||||
command has not been used stick to the global or tab-local current directory.
|
command has not been used stick to the global or tab-local current directory.
|
||||||
When jumping to another window the current directory is changed to the last
|
When jumping to another window the current directory is changed to the last
|
||||||
specified local current directory. If none was specified, the global or
|
specified local current directory. If none was specified, the global or
|
||||||
tab-local current directory is used.
|
tab-local current directory is used. When creating a new window it inherits
|
||||||
|
the local directory of the current window.
|
||||||
|
|
||||||
When a |:tcd| command has been used for a tab page, the specified directory
|
When a |:tcd| command has been used for a tab page, the specified directory
|
||||||
becomes the current directory for the current tab page and the current window.
|
becomes the current directory for the current tab page and the current window.
|
||||||
@@ -1638,6 +1650,11 @@ If you don't get warned often enough you can use the following command.
|
|||||||
if it exists now.
|
if it exists now.
|
||||||
Once a file has been checked the timestamp is reset,
|
Once a file has been checked the timestamp is reset,
|
||||||
you will not be warned again.
|
you will not be warned again.
|
||||||
|
Syntax highlighting, marks, diff status,
|
||||||
|
'fileencoding', 'fileformat' and 'binary' options
|
||||||
|
are not changed. See |v:fcs_choice| to reload these
|
||||||
|
too (for example, if a code formatting tools has
|
||||||
|
changed the file).
|
||||||
|
|
||||||
:[N]checkt[ime] {filename}
|
:[N]checkt[ime] {filename}
|
||||||
:[N]checkt[ime] [N]
|
:[N]checkt[ime] [N]
|
||||||
@@ -1678,7 +1695,7 @@ which version of the file you want to keep.
|
|||||||
|
|
||||||
The accuracy of the time check depends on the filesystem. On Unix it is
|
The accuracy of the time check depends on the filesystem. On Unix it is
|
||||||
usually sub-second. With old file sytems and on MS-Windows it is normally one
|
usually sub-second. With old file sytems and on MS-Windows it is normally one
|
||||||
second. Use has('nanotime') check if sub-second time stamp checks are
|
second. Use `has('nanotime')` to check if sub-second time stamp checks are
|
||||||
available.
|
available.
|
||||||
|
|
||||||
There is one situation where you get the message while there is nothing wrong:
|
There is one situation where you get the message while there is nothing wrong:
|
||||||
@@ -1759,11 +1776,9 @@ 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
|
< Note: If your 'path' setting includes a non-existing directory, Vim will
|
||||||
skip the non-existing directory, but continues searching in the parent of
|
skip the non-existing directory, and also does not search in the parent of
|
||||||
the non-existing directory if upwards searching is used. E.g. when
|
the non-existing directory if upwards searching is used.
|
||||||
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 >
|
||||||
|
|||||||
10772
runtime/doc/eval.txt
10772
runtime/doc/eval.txt
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
*filetype.txt* For Vim version 8.2. Last change: 2021 Sep 22
|
*filetype.txt* For Vim version 8.2. Last change: 2022 Jan 21
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -133,15 +133,17 @@ shell script: "#!/bin/csh".
|
|||||||
argument was used.
|
argument was used.
|
||||||
|
|
||||||
*filetype-overrule*
|
*filetype-overrule*
|
||||||
When the same extension is used for two filetypes, Vim tries to guess what
|
When the same extension is used for multiple filetypes, Vim tries to guess
|
||||||
kind of file it is. This doesn't always work. A number of global variables
|
what kind of file it is. This doesn't always work. A number of global
|
||||||
can be used to overrule the filetype used for certain extensions:
|
variables can be used to overrule the filetype used for certain extensions:
|
||||||
|
|
||||||
file name variable ~
|
file name variable ~
|
||||||
*.asa g:filetype_asa |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
*.asa g:filetype_asa |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||||
*.asm g:asmsyntax |ft-asm-syntax|
|
*.asm g:asmsyntax |ft-asm-syntax|
|
||||||
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||||
*.fs g:filetype_fs |ft-forth-syntax|
|
*.bas g:filetype_bas |ft-basic-syntax|
|
||||||
|
*.frm g:filetype_frm |ft-form-syntax|
|
||||||
|
*.fs g:filetype_fs |ft-forth-syntax|
|
||||||
*.i g:filetype_i |ft-progress-syntax|
|
*.i g:filetype_i |ft-progress-syntax|
|
||||||
*.inc g:filetype_inc
|
*.inc g:filetype_inc
|
||||||
*.m g:filetype_m |ft-mathematica-syntax|
|
*.m g:filetype_m |ft-mathematica-syntax|
|
||||||
@@ -358,12 +360,12 @@ define yourself. There are a few ways to avoid this:
|
|||||||
You need to define your own mapping before the plugin is loaded (before
|
You need to define your own mapping before the plugin is loaded (before
|
||||||
editing a file of that type). The plugin will then skip installing the
|
editing a file of that type). The plugin will then skip installing the
|
||||||
default mapping.
|
default mapping.
|
||||||
*no_mail_maps*
|
*no_mail_maps* *g:no_mail_maps*
|
||||||
3. Disable defining mappings for a specific filetype by setting a variable,
|
3. Disable defining mappings for a specific filetype by setting a variable,
|
||||||
which contains the name of the filetype. For the "mail" filetype this
|
which contains the name of the filetype. For the "mail" filetype this
|
||||||
would be: >
|
would be: >
|
||||||
:let no_mail_maps = 1
|
:let no_mail_maps = 1
|
||||||
< *no_plugin_maps*
|
< *no_plugin_maps* *g:no_plugin_maps*
|
||||||
4. Disable defining mappings for all filetypes by setting a variable: >
|
4. Disable defining mappings for all filetypes by setting a variable: >
|
||||||
:let no_plugin_maps = 1
|
:let no_plugin_maps = 1
|
||||||
<
|
<
|
||||||
@@ -539,14 +541,6 @@ Options:
|
|||||||
For further discussion of fortran_have_tabs and the method used for the
|
For further discussion of fortran_have_tabs and the method used for the
|
||||||
detection of source format see |ft-fortran-syntax|.
|
detection of source format see |ft-fortran-syntax|.
|
||||||
|
|
||||||
GPROF *ft-gprof-plugin*
|
|
||||||
|
|
||||||
The gprof filetype plugin defines a mapping <C-]> to jump from a function
|
|
||||||
entry in the gprof flat profile or from a function entry in the call graph
|
|
||||||
to the details of that function in the call graph.
|
|
||||||
|
|
||||||
The mapping can be disabled with: >
|
|
||||||
let g:no_gprof_maps = 1
|
|
||||||
|
|
||||||
GIT COMMIT *ft-gitcommit-plugin*
|
GIT COMMIT *ft-gitcommit-plugin*
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*fold.txt* For Vim version 8.2. Last change: 2021 Jul 13
|
*fold.txt* For Vim version 8.2. Last change: 2022 Jan 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -121,6 +121,11 @@ method can be very slow!
|
|||||||
Try to avoid the "=", "a" and "s" return values, since Vim often has to search
|
Try to avoid the "=", "a" and "s" return values, since Vim often has to search
|
||||||
backwards for a line for which the fold level is defined. This can be slow.
|
backwards for a line for which the fold level is defined. This can be slow.
|
||||||
|
|
||||||
|
If the 'foldexpr' expression starts with s: or |<SID>|, then it is replaced
|
||||||
|
with the script ID (|local-function|). Examples: >
|
||||||
|
set foldexpr=s:MyFoldExpr()
|
||||||
|
set foldexpr=<SID>SomeFoldExpr()
|
||||||
|
<
|
||||||
An example of using "a1" and "s1": For a multi-line C comment, a line
|
An example of using "a1" and "s1": For a multi-line C comment, a line
|
||||||
containing "/*" would return "a1" to start a fold, and a line containing "*/"
|
containing "/*" would return "a1" to start a fold, and a line containing "*/"
|
||||||
would return "s1" to end the fold after that line: >
|
would return "s1" to end the fold after that line: >
|
||||||
@@ -502,11 +507,14 @@ Note the use of backslashes to avoid some characters to be interpreted by the
|
|||||||
:function MyFoldText()
|
:function MyFoldText()
|
||||||
: let line = getline(v:foldstart)
|
: let line = getline(v:foldstart)
|
||||||
: let sub = substitute(line, '/\*\|\*/\|{{{\d\=', '', 'g')
|
: let sub = substitute(line, '/\*\|\*/\|{{{\d\=', '', 'g')
|
||||||
: return v:folddashes . sub
|
: return v:folddashes .. sub
|
||||||
:endfunction
|
:endfunction
|
||||||
|
|
||||||
Evaluating 'foldtext' is done in the |sandbox|. The current window is set to
|
Evaluating 'foldtext' is done in the |sandbox|. The current window is set to
|
||||||
the window that displays the line. Errors are ignored.
|
the window that displays the line. The context is set to the script where the
|
||||||
|
option was last set.
|
||||||
|
|
||||||
|
Errors are ignored. For debugging set the 'debug' option to "throw".
|
||||||
|
|
||||||
The default value is |foldtext()|. This returns a reasonable text for most
|
The default value is |foldtext()|. This returns a reasonable text for most
|
||||||
types of folding. If you don't like it, you can specify your own 'foldtext'
|
types of folding. If you don't like it, you can specify your own 'foldtext'
|
||||||
@@ -524,6 +532,11 @@ The resulting line is truncated to fit in the window, it never wraps.
|
|||||||
When there is room after the text, it is filled with the character specified
|
When there is room after the text, it is filled with the character specified
|
||||||
by 'fillchars'.
|
by 'fillchars'.
|
||||||
|
|
||||||
|
If the 'foldtext' expression starts with s: or |<SID>|, then it is replaced
|
||||||
|
with the script ID (|local-function|). Examples: >
|
||||||
|
set foldtext=s:MyFoldText()
|
||||||
|
set foldtext=<SID>SomeFoldText()
|
||||||
|
<
|
||||||
Note that backslashes need to be used for characters that the ":set" command
|
Note that backslashes need to be used for characters that the ":set" command
|
||||||
handles differently: Space, backslash and double-quote. |option-backslash|
|
handles differently: Space, backslash and double-quote. |option-backslash|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*ft_ada.txt* For Vim version 8.2. Last change: 2010 Jul 20
|
*ft_ada.txt* For Vim version 8.2. Last change: 2022 Mar 13
|
||||||
|
|
||||||
|
|
||||||
ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
|
ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
|
||||||
@@ -89,9 +89,9 @@ file is opened and adds Ada related entries to the main and pop-up menu.
|
|||||||
*ft-ada-omni*
|
*ft-ada-omni*
|
||||||
|
|
||||||
The Ada omni-completions (|i_CTRL-X_CTRL-O|) uses tags database created either
|
The Ada omni-completions (|i_CTRL-X_CTRL-O|) uses tags database created either
|
||||||
by "gnat xref -v" or the "exuberant Ctags (http://ctags.sourceforge.net). The
|
by "gnat xref -v" or the "Universal Ctags" (https://ctags.io). The complete
|
||||||
complete function will automatically detect which tool was used to create the
|
function will automatically detect which tool was used to create the tags
|
||||||
tags file.
|
file.
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
3.1 Omni Completion with "gnat xref" ~
|
3.1 Omni Completion with "gnat xref" ~
|
||||||
@@ -125,18 +125,18 @@ NOTE: "gnat xref -v" is very tricky to use as it has almost no diagnostic
|
|||||||
3.2 Omni Completion with "ctags"~
|
3.2 Omni Completion with "ctags"~
|
||||||
*ada-ctags*
|
*ada-ctags*
|
||||||
|
|
||||||
Exuberant Ctags uses its own multi-language code parser. The parser is quite
|
Universal/Exuberant Ctags use their own multi-language code parser. The
|
||||||
fast, produces a lot of extra information (hence the name "Exuberant Ctags")
|
parser is quite fast, produces a lot of extra information and can run on files
|
||||||
and can run on files which currently do not compile.
|
which currently do not compile.
|
||||||
|
|
||||||
There are also lots of other Vim-tools which use exuberant Ctags.
|
There are also lots of other Vim-tools which use Universal/Exuberant Ctags.
|
||||||
|
Universal Ctags is preferred, Exuberant Ctags is no longer being developed.
|
||||||
|
|
||||||
You will need to install a version of the Exuberant Ctags which has Ada
|
You will need to install Universal Ctags which is available from
|
||||||
support patched in. Such a version is available from the GNU Ada Project
|
https://ctags.io
|
||||||
(http://gnuada.sourceforge.net).
|
|
||||||
|
|
||||||
The Ada parser for Exuberant Ctags is fairly new - don't expect complete
|
The Ada parser for Universal/Exuberant Ctags is fairly new - don't expect
|
||||||
support yet.
|
complete support yet.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
4. Compiler Support ~
|
4. Compiler Support ~
|
||||||
|
|||||||
@@ -47,20 +47,20 @@ Numbers, subscripts and superscripts are available with 's' and 'S':
|
|||||||
|
|
||||||
But some don't come defined by default. Those are digraph definitions you can
|
But some don't come defined by default. Those are digraph definitions you can
|
||||||
add in your ~/.vimrc file. >
|
add in your ~/.vimrc file. >
|
||||||
exec 'digraph \\ '.char2nr('∖')
|
exec 'digraph \\ ' .. char2nr('∖')
|
||||||
exec 'digraph \< '.char2nr('≼')
|
exec 'digraph \< ' .. char2nr('≼')
|
||||||
exec 'digraph \> '.char2nr('≽')
|
exec 'digraph \> ' .. char2nr('≽')
|
||||||
exec 'digraph (L '.char2nr('⊈')
|
exec 'digraph (L ' .. char2nr('⊈')
|
||||||
exec 'digraph )L '.char2nr('⊉')
|
exec 'digraph )L ' .. char2nr('⊉')
|
||||||
exec 'digraph (/ '.char2nr('⊄')
|
exec 'digraph (/ ' .. char2nr('⊄')
|
||||||
exec 'digraph )/ '.char2nr('⊅')
|
exec 'digraph )/ ' .. char2nr('⊅')
|
||||||
exec 'digraph )/ '.char2nr('⊅')
|
exec 'digraph )/ ' .. char2nr('⊅')
|
||||||
exec 'digraph U+ '.char2nr('⊎')
|
exec 'digraph U+ ' .. char2nr('⊎')
|
||||||
exec 'digraph 0- '.char2nr('⊖')
|
exec 'digraph 0- ' .. char2nr('⊖')
|
||||||
" Euler's constant
|
" Euler's constant
|
||||||
exec 'digraph ne '.char2nr('𝑒')
|
exec 'digraph ne ' .. char2nr('𝑒')
|
||||||
" Raku's atomic operations marker
|
" Raku's atomic operations marker
|
||||||
exec 'digraph @@ '.char2nr('⚛')
|
exec 'digraph @@ ' .. char2nr('⚛')
|
||||||
|
|
||||||
Alternatively, you can write Insert mode abbreviations that convert ASCII-
|
Alternatively, you can write Insert mode abbreviations that convert ASCII-
|
||||||
based operators into their single-character Unicode equivalent. >
|
based operators into their single-character Unicode equivalent. >
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ behavior of the plugin.
|
|||||||
g:rustc_path~
|
g:rustc_path~
|
||||||
Set this option to the path to rustc for use in the |:RustRun| and
|
Set this option to the path to rustc for use in the |:RustRun| and
|
||||||
|:RustExpand| commands. If unset, "rustc" will be located in $PATH: >
|
|:RustExpand| commands. If unset, "rustc" will be located in $PATH: >
|
||||||
let g:rustc_path = $HOME."/bin/rustc"
|
let g:rustc_path = $HOME .. "/bin/rustc"
|
||||||
<
|
<
|
||||||
|
|
||||||
*g:rustc_makeprg_no_percent*
|
*g:rustc_makeprg_no_percent*
|
||||||
@@ -87,7 +87,7 @@ g:rust_bang_comment_leader~
|
|||||||
g:ftplugin_rust_source_path~
|
g:ftplugin_rust_source_path~
|
||||||
Set this option to a path that should be prepended to 'path' for Rust
|
Set this option to a path that should be prepended to 'path' for Rust
|
||||||
source files: >
|
source files: >
|
||||||
let g:ftplugin_rust_source_path = $HOME.'/dev/rust'
|
let g:ftplugin_rust_source_path = $HOME .. '/dev/rust'
|
||||||
<
|
<
|
||||||
|
|
||||||
*g:rustfmt_command*
|
*g:rustfmt_command*
|
||||||
|
|||||||
@@ -109,8 +109,8 @@ must be configurable. The filetype plugin attempts to define many of the
|
|||||||
standard objects, plus many additional ones. In order to make this as
|
standard objects, plus many additional ones. In order to make this as
|
||||||
flexible as possible, you can override the list of objects from within your
|
flexible as possible, you can override the list of objects from within your
|
||||||
|vimrc| with the following: >
|
|vimrc| with the following: >
|
||||||
let g:ftplugin_sql_objects = 'function,procedure,event,table,trigger' .
|
let g:ftplugin_sql_objects = 'function,procedure,event,table,trigger' ..
|
||||||
\ ',schema,service,publication,database,datatype,domain' .
|
\ ',schema,service,publication,database,datatype,domain' ..
|
||||||
\ ',index,subscription,synchronization,view,variable'
|
\ ',index,subscription,synchronization,view,variable'
|
||||||
|
|
||||||
The following |Normal| mode and |Visual| mode maps have been created which use
|
The following |Normal| mode and |Visual| mode maps have been created which use
|
||||||
@@ -131,10 +131,10 @@ Repeatedly pressing ]} will cycle through each of these create statements: >
|
|||||||
create index i1 on t1 (c1);
|
create index i1 on t1 (c1);
|
||||||
|
|
||||||
The default setting for g:ftplugin_sql_objects is: >
|
The default setting for g:ftplugin_sql_objects is: >
|
||||||
let g:ftplugin_sql_objects = 'function,procedure,event,' .
|
let g:ftplugin_sql_objects = 'function,procedure,event,' ..
|
||||||
\ '\\(existing\\\\|global\\s\\+temporary\\s\\+\\)\\\{,1}' .
|
\ '\\(existing\\\\|global\\s\\+temporary\\s\\+\\)\\\{,1}' ..
|
||||||
\ 'table,trigger' .
|
\ 'table,trigger' ..
|
||||||
\ ',schema,service,publication,database,datatype,domain' .
|
\ ',schema,service,publication,database,datatype,domain' ..
|
||||||
\ ',index,subscription,synchronization,view,variable'
|
\ ',index,subscription,synchronization,view,variable'
|
||||||
|
|
||||||
The above will also handle these cases: >
|
The above will also handle these cases: >
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*gui.txt* For Vim version 8.2. Last change: 2021 Jun 27
|
*gui.txt* For Vim version 8.2. Last change: 2022 Mar 02
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -147,7 +147,8 @@ task bar with the 'guiheadroom' option.
|
|||||||
*:win* *:winsize* *E465*
|
*:win* *:winsize* *E465*
|
||||||
:win[size] {width} {height}
|
:win[size] {width} {height}
|
||||||
Set the window height to {width} by {height} characters.
|
Set the window height to {width} by {height} characters.
|
||||||
Obsolete, use ":set lines=11 columns=22".
|
It is recommended to use `:set lines=11 columns=22` instead,
|
||||||
|
since it's easy to see what the numbers mean.
|
||||||
If you get less lines than expected, check the 'guiheadroom'
|
If you get less lines than expected, check the 'guiheadroom'
|
||||||
option.
|
option.
|
||||||
|
|
||||||
@@ -155,8 +156,8 @@ If you are running the X Window System, you can get information about the
|
|||||||
window Vim is running in with these commands: >
|
window Vim is running in with these commands: >
|
||||||
:!xwininfo -id $WINDOWID
|
:!xwininfo -id $WINDOWID
|
||||||
:!xprop -id $WINDOWID
|
:!xprop -id $WINDOWID
|
||||||
:execute '!xwininfo -id ' . v:windowid
|
:execute '!xwininfo -id ' .. v:windowid
|
||||||
:execute '!xprop -id ' . v:windowid
|
:execute '!xprop -id ' .. v:windowid
|
||||||
<
|
<
|
||||||
*gui-IME* *iBus*
|
*gui-IME* *iBus*
|
||||||
Input methods for international characters in X that rely on the XIM
|
Input methods for international characters in X that rely on the XIM
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*gui_w32.txt* For Vim version 8.2. Last change: 2021 Oct 24
|
*gui_w32.txt* For Vim version 8.2. Last change: 2022 Mar 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -236,7 +236,8 @@ The "* register reflects the contents of the clipboard. |quotestar|
|
|||||||
|
|
||||||
When the "unnamed" string is included in the 'clipboard' option, the unnamed
|
When the "unnamed" string is included in the 'clipboard' option, the unnamed
|
||||||
register is the same. Thus you can yank to and paste from the clipboard
|
register is the same. Thus you can yank to and paste from the clipboard
|
||||||
without prepending "* to commands.
|
without prepending "* to commands. If this doesn't work use the "unnamedplus"
|
||||||
|
string in the 'clipboard' option.
|
||||||
|
|
||||||
The 'a' flag in 'guioptions' is not included by default. This means that text
|
The 'a' flag in 'guioptions' is not included by default. This means that text
|
||||||
is only put on the clipboard when an operation is performed on it. Just
|
is only put on the clipboard when an operation is performed on it. Just
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*help.txt* For Vim version 8.2. Last change: 2020 Aug 15
|
*help.txt* For Vim version 8.2. Last change: 2022 Feb 26
|
||||||
|
|
||||||
VIM - main help file
|
VIM - main help file
|
||||||
k
|
k
|
||||||
@@ -136,6 +136,7 @@ Advanced editing ~
|
|||||||
|diff.txt| working with two to eight 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
|
||||||
|
|builtin.txt| builtin functions
|
||||||
|channel.txt| Jobs, Channels, inter-process communication
|
|channel.txt| Jobs, Channels, inter-process communication
|
||||||
|fold.txt| hide (fold) ranges of lines
|
|fold.txt| hide (fold) ranges of lines
|
||||||
|
|
||||||
@@ -196,6 +197,7 @@ Versions ~
|
|||||||
|version6.txt| Differences between Vim version 5.7 and 6.x
|
|version6.txt| Differences between Vim version 5.7 and 6.x
|
||||||
|version7.txt| Differences between Vim version 6.4 and 7.x
|
|version7.txt| Differences between Vim version 6.4 and 7.x
|
||||||
|version8.txt| Differences between Vim version 7.4 and 8.x
|
|version8.txt| Differences between Vim version 7.4 and 8.x
|
||||||
|
|version9.txt| Differences between Vim version 8.2 and 9.0
|
||||||
*sys-file-list*
|
*sys-file-list*
|
||||||
Remarks about specific systems ~
|
Remarks about specific systems ~
|
||||||
|os_390.txt| OS/390 Unix
|
|os_390.txt| OS/390 Unix
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*helphelp.txt* For Vim version 8.2. Last change: 2021 Nov 18
|
*helphelp.txt* For Vim version 8.2. Last change: 2022 Jan 08
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -163,7 +163,7 @@ If you would like to open the help in the current window, see this tip:
|
|||||||
|
|
||||||
The initial height of the help window can be set with the 'helpheight' option
|
The initial height of the help window can be set with the 'helpheight' option
|
||||||
(default 20).
|
(default 20).
|
||||||
|
*help-buffer-options*
|
||||||
When the help buffer is created, several local options are set to make sure
|
When the help buffer is created, several local options are set to make sure
|
||||||
the help text is displayed as it was intended:
|
the help text is displayed as it was intended:
|
||||||
'iskeyword' nearly all ASCII chars except ' ', '*', '"' and '|'
|
'iskeyword' nearly all ASCII chars except ' ', '*', '"' and '|'
|
||||||
@@ -224,7 +224,7 @@ command: >
|
|||||||
dialog. {only when compiled with |+GUI_GTK|}
|
dialog. {only when compiled with |+GUI_GTK|}
|
||||||
|
|
||||||
*:helpt* *:helptags*
|
*:helpt* *:helptags*
|
||||||
*E154* *E150* *E151* *E152* *E153* *E670*
|
*E150* *E151* *E152* *E153* *E154* *E670*
|
||||||
:helpt[ags] [++t] {dir}
|
:helpt[ags] [++t] {dir}
|
||||||
Generate the help tags file(s) for directory {dir}.
|
Generate the help tags file(s) for directory {dir}.
|
||||||
When {dir} is ALL then all "doc" directories in
|
When {dir} is ALL then all "doc" directories in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*if_cscop.txt* For Vim version 8.2. Last change: 2019 May 05
|
*if_cscop.txt* For Vim version 8.2. Last change: 2022 Jan 08
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Andy Kahn
|
VIM REFERENCE MANUAL by Andy Kahn
|
||||||
@@ -89,7 +89,7 @@ suggested use.)
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
2. Cscope related commands *cscope-commands*
|
2. Cscope related commands *cscope-commands*
|
||||||
|
|
||||||
*:cscope* *:cs* *:scs* *:scscope* *E259* *E262* *E561* *E560*
|
*:cscope* *:cs* *:scs* *:scscope* *E259* *E262* *E560* *E561*
|
||||||
All cscope commands are accessed through suboptions to the cscope commands.
|
All cscope commands are accessed through suboptions to the cscope commands.
|
||||||
`:cscope` or `:cs` is the main command
|
`:cscope` or `:cs` is the main command
|
||||||
`:scscope` or `:scs` does the same and splits the window
|
`:scscope` or `:scs` does the same and splits the window
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*if_perl.txt* For Vim version 8.2. Last change: 2019 Dec 07
|
*if_perl.txt* For Vim version 8.2. Last change: 2022 Mar 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Sven Verdoolaege
|
VIM REFERENCE MANUAL by Sven Verdoolaege
|
||||||
@@ -22,9 +22,9 @@ line of a file, regardless of the filename suffix, to check if a file is a
|
|||||||
Perl script (see scripts.vim in Vim's syntax directory). Vim assumes a file
|
Perl script (see scripts.vim in Vim's syntax directory). Vim assumes a file
|
||||||
is POD text if the filename has a .POD suffix.
|
is POD text if the filename has a .POD suffix.
|
||||||
|
|
||||||
To use tags with Perl, you need a recent version of Exuberant ctags. Look
|
To use tags with Perl, you need Universal/Exuberant Ctags. Look here:
|
||||||
here:
|
Universal Ctags (preferred): https://ctags.io
|
||||||
http://ctags.sourceforge.net
|
Exuberant Ctags: http://ctags.sourceforge.net
|
||||||
|
|
||||||
Alternatively, you can use the Perl script pltags.pl, which is shipped with
|
Alternatively, you can use the Perl script pltags.pl, which is shipped with
|
||||||
Vim in the $VIMRUNTIME/tools directory. This script has currently more
|
Vim in the $VIMRUNTIME/tools directory. This script has currently more
|
||||||
@@ -103,8 +103,7 @@ Here are some things you can try: >
|
|||||||
:perldo $_ = reverse($_);1
|
:perldo $_ = reverse($_);1
|
||||||
:perl VIM::Msg("hello")
|
:perl VIM::Msg("hello")
|
||||||
:perl $line = $curbuf->Get(42)
|
:perl $line = $curbuf->Get(42)
|
||||||
<
|
< *E299*
|
||||||
*E299*
|
|
||||||
Executing Perl commands in the |sandbox| is limited. ":perldo" will not be
|
Executing Perl commands in the |sandbox| is limited. ":perldo" will not be
|
||||||
possible at all. ":perl" will be evaluated in the Safe environment, if
|
possible at all. ":perl" will be evaluated in the Safe environment, if
|
||||||
possible.
|
possible.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*if_pyth.txt* For Vim version 8.2. Last change: 2021 Nov 12
|
*if_pyth.txt* For Vim version 8.2. Last change: 2022 Feb 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Paul Moore
|
VIM REFERENCE MANUAL by Paul Moore
|
||||||
@@ -25,6 +25,10 @@ The Python 3 interface is available only when Vim was compiled with the
|
|||||||
|+python3| feature.
|
|+python3| feature.
|
||||||
Both can be available at the same time, but read |python-2-and-3|.
|
Both can be available at the same time, but read |python-2-and-3|.
|
||||||
|
|
||||||
|
NOTE: Python 2 is old and no longer being developed. Using Python 3 is highly
|
||||||
|
recommended. Python 2 support will be dropped when it does not work properly
|
||||||
|
anymore.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
1. Commands *python-commands*
|
1. Commands *python-commands*
|
||||||
|
|
||||||
@@ -65,7 +69,7 @@ There is no need to import sys, it's done by default.
|
|||||||
|
|
||||||
*python-environment*
|
*python-environment*
|
||||||
Environment variables set in Vim are not always available in Python. This
|
Environment variables set in Vim are not always available in Python. This
|
||||||
depends on how Vim and Python were build. Also see
|
depends on how Vim and Python were built. Also see
|
||||||
https://docs.python.org/3/library/os.html#os.environ
|
https://docs.python.org/3/library/os.html#os.environ
|
||||||
|
|
||||||
Note: Python is very sensitive to the indenting. Make sure the "class" line
|
Note: Python is very sensitive to the indenting. Make sure the "class" line
|
||||||
@@ -834,6 +838,19 @@ To work around such problems there are these options:
|
|||||||
Raising SystemExit exception in python isn't endorsed way to quit vim, use: >
|
Raising SystemExit exception in python isn't endorsed way to quit vim, use: >
|
||||||
:py vim.command("qall!")
|
:py vim.command("qall!")
|
||||||
<
|
<
|
||||||
|
*E1266*
|
||||||
|
This error can occur when python 3 cannot load the required modules. This
|
||||||
|
means that your python 3 is not correctly installed or there are some mistakes
|
||||||
|
in your settings. Please check the following items:
|
||||||
|
1. Make sure that python 3 is correctly installed. Also check the version of
|
||||||
|
python.
|
||||||
|
2. Check the 'pythonthreedll' option.
|
||||||
|
3. Check the 'pythonthreehome' option.
|
||||||
|
4. Check the PATH environment variable if you don't set 'pythonthreedll'.
|
||||||
|
On MS-Windows, you can use where.exe to check which dll will be loaded.
|
||||||
|
E.g. >
|
||||||
|
where.exe python310.dll
|
||||||
|
5. Check the PYTHONPATH and PYTHONHOME environment variables.
|
||||||
|
|
||||||
*has-python*
|
*has-python*
|
||||||
You can test what Python version is available with: >
|
You can test what Python version is available with: >
|
||||||
@@ -910,7 +927,7 @@ The `:pyxdo` command works similar to `:pydo`.
|
|||||||
*has-pythonx*
|
*has-pythonx*
|
||||||
You can test if pyx* commands are available with: >
|
You can test if pyx* commands are available with: >
|
||||||
if has('pythonx')
|
if has('pythonx')
|
||||||
echo 'pyx* commands are available. (Python ' . &pyx . ')'
|
echo 'pyx* commands are available. (Python ' .. &pyx .. ')'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
When compiled with only one of |+python| or |+python3|, the has() returns 1.
|
When compiled with only one of |+python| or |+python3|, the has() returns 1.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*if_tcl.txt* For Vim version 8.2. Last change: 2021 May 27
|
*if_tcl.txt* For Vim version 8.2. Last change: 2022 Jan 08
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Ingo Wilken
|
VIM REFERENCE MANUAL by Ingo Wilken
|
||||||
@@ -16,9 +16,9 @@ The Tcl Interface to Vim *tcl* *Tcl* *TCL*
|
|||||||
8. Examples |tcl-examples|
|
8. Examples |tcl-examples|
|
||||||
9. Dynamic loading |tcl-dynamic|
|
9. Dynamic loading |tcl-dynamic|
|
||||||
|
|
||||||
*E280*
|
|
||||||
{only available when Vim was compiled with the |+tcl| feature}
|
{only available when Vim was compiled with the |+tcl| feature}
|
||||||
|
|
||||||
|
*E280*
|
||||||
WARNING: There are probably still some bugs. Please send bug reports,
|
WARNING: There are probably still some bugs. Please send bug reports,
|
||||||
comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*indent.txt* For Vim version 8.2. Last change: 2019 Dec 07
|
*indent.txt* For Vim version 8.2. Last change: 2022 Jan 31
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -778,6 +778,15 @@ You can set the indent for the first line after <script> and <style>
|
|||||||
"auto" auto indent (same indent as the blocktag)
|
"auto" auto indent (same indent as the blocktag)
|
||||||
"inc" auto indent + one indent step
|
"inc" auto indent + one indent step
|
||||||
|
|
||||||
|
You can set the indent for attributes after an open <tag line: >
|
||||||
|
|
||||||
|
:let g:html_indent_attribute = 1
|
||||||
|
<
|
||||||
|
VALUE MEANING ~
|
||||||
|
1 auto indent, one indent step more than <tag
|
||||||
|
2 auto indent, two indent steps (default)
|
||||||
|
> 2 auto indent, more indent steps
|
||||||
|
|
||||||
Many tags increase the indent for what follows per default (see "Add Indent
|
Many tags increase the indent for what follows per default (see "Add Indent
|
||||||
Tags" in the script). You can add further tags with: >
|
Tags" in the script). You can add further tags with: >
|
||||||
|
|
||||||
@@ -879,7 +888,7 @@ For example, with N = 1, this will give:
|
|||||||
*PHP_outdentphpescape*
|
*PHP_outdentphpescape*
|
||||||
To indent PHP escape tags as the surrounding non-PHP code (only affects the
|
To indent PHP escape tags as the surrounding non-PHP code (only affects the
|
||||||
PHP escape tags): >
|
PHP escape tags): >
|
||||||
:let g:PHP_outdentphpescape = 0
|
:let g:PHP_outdentphpescape = 0
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
*PHP_removeCRwhenUnix*
|
*PHP_removeCRwhenUnix*
|
||||||
@@ -1206,7 +1215,7 @@ comments will be indented according to the correctly indented code.
|
|||||||
|
|
||||||
|
|
||||||
VIM *ft-vim-indent*
|
VIM *ft-vim-indent*
|
||||||
|
*g:vim_indent_cont*
|
||||||
For indenting Vim scripts there is one variable that specifies the amount of
|
For indenting Vim scripts there is one variable that specifies the amount of
|
||||||
indent for a continuation line, a line that starts with a backslash: >
|
indent for a continuation line, a line that starts with a backslash: >
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*index.txt* For Vim version 8.2. Last change: 2021 Aug 31
|
*index.txt* For Vim version 8.2. Last change: 2022 Mar 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -937,7 +937,9 @@ tag command note action in Visual mode ~
|
|||||||
before the highlighted area
|
before the highlighted area
|
||||||
|v_J| J 2 join the highlighted lines
|
|v_J| J 2 join the highlighted lines
|
||||||
|v_K| K run 'keywordprg' on the highlighted area
|
|v_K| K run 'keywordprg' on the highlighted area
|
||||||
|v_O| O Move horizontally to other corner of area.
|
|v_O| O move horizontally to other corner of area
|
||||||
|
|v_P| P replace highlighted area with register
|
||||||
|
contents; unnamed register is unchanged
|
||||||
Q does not start Ex mode
|
Q does not start Ex mode
|
||||||
|v_R| R 2 delete the highlighted lines and start
|
|v_R| R 2 delete the highlighted lines and start
|
||||||
insert
|
insert
|
||||||
@@ -1000,6 +1002,8 @@ tag command note action in Visual mode ~
|
|||||||
|v_i{| i{ same as iB
|
|v_i{| i{ same as iB
|
||||||
|v_i}| i} same as iB
|
|v_i}| i} same as iB
|
||||||
|v_o| o move cursor to other corner of area
|
|v_o| o move cursor to other corner of area
|
||||||
|
|v_p| p replace highlighted area with register
|
||||||
|
contents; deleted text in unnamed register
|
||||||
|v_r| r 2 replace highlighted area with a character
|
|v_r| r 2 replace highlighted area with a character
|
||||||
|v_s| s 2 delete highlighted area and start insert
|
|v_s| s 2 delete highlighted area and start insert
|
||||||
|v_u| u 2 make highlighted area lowercase
|
|v_u| u 2 make highlighted area lowercase
|
||||||
@@ -1148,7 +1152,7 @@ tag command action ~
|
|||||||
|:&| :& repeat last ":substitute"
|
|:&| :& repeat last ":substitute"
|
||||||
|:star| :* execute contents of a register
|
|:star| :* execute contents of a register
|
||||||
|:<| :< shift lines one 'shiftwidth' left
|
|:<| :< shift lines one 'shiftwidth' left
|
||||||
|:=| := print the cursor line number
|
|:=| := print the last line number
|
||||||
|:>| :> shift lines one 'shiftwidth' right
|
|:>| :> shift lines one 'shiftwidth' right
|
||||||
|:@| :@ execute contents of a register
|
|:@| :@ execute contents of a register
|
||||||
|:@@| :@@ repeat the previous ":@"
|
|:@@| :@@ repeat the previous ":@"
|
||||||
@@ -1166,6 +1170,7 @@ tag command action ~
|
|||||||
be remapped
|
be remapped
|
||||||
|:args| :ar[gs] print the argument list
|
|:args| :ar[gs] print the argument list
|
||||||
|:argadd| :arga[dd] add items to the argument list
|
|:argadd| :arga[dd] add items to the argument list
|
||||||
|
|:argdedupe| :argded[upe] remove duplicates from the argument list
|
||||||
|:argdelete| :argd[elete] delete items from the argument list
|
|:argdelete| :argd[elete] delete items from the argument list
|
||||||
|:argedit| :arge[dit] add item to the argument list and edit it
|
|:argedit| :arge[dit] add item to the argument list and edit it
|
||||||
|:argdo| :argdo do a command on all items in the argument list
|
|:argdo| :argdo do a command on all items in the argument list
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*insert.txt* For Vim version 8.2. Last change: 2021 Oct 24
|
*insert.txt* For Vim version 8.2. Last change: 2022 Mar 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -84,6 +84,8 @@ CTRL-U Delete all entered characters before the cursor in the current
|
|||||||
line. If there are no newly entered characters and
|
line. If there are no newly entered characters and
|
||||||
'backspace' is not empty, delete all characters before the
|
'backspace' is not empty, delete all characters before the
|
||||||
cursor in the current line.
|
cursor in the current line.
|
||||||
|
If C-indenting is enabled the indent will be adjusted if the
|
||||||
|
line becomes blank.
|
||||||
See |i_backspacing| about joining lines.
|
See |i_backspacing| about joining lines.
|
||||||
*i_CTRL-I* *i_<Tab>* *i_Tab*
|
*i_CTRL-I* *i_<Tab>* *i_Tab*
|
||||||
<Tab> or CTRL-I Insert a tab. If the 'expandtab' option is on, the
|
<Tab> or CTRL-I Insert a tab. If the 'expandtab' option is on, the
|
||||||
@@ -281,8 +283,8 @@ start allow backspacing over the start position of insert; CTRL-W and
|
|||||||
When 'backspace' is empty, Vi compatible backspacing is used. You cannot
|
When 'backspace' is empty, Vi compatible backspacing is used. You cannot
|
||||||
backspace over autoindent, before column 1 or before where insert started.
|
backspace over autoindent, before column 1 or before where insert started.
|
||||||
|
|
||||||
For backwards compatibility the values "0", "1" and "2" are also allowed, see
|
For backwards compatibility the values "0", "1", "2" and "3" are also allowed,
|
||||||
|'backspace'|.
|
see |'backspace'|.
|
||||||
|
|
||||||
If the 'backspace' option does contain "eol" and the cursor is in column 1
|
If the 'backspace' option does contain "eol" and the cursor is in column 1
|
||||||
when one of the three keys is used, the current line is joined with the
|
when one of the three keys is used, the current line is joined with the
|
||||||
@@ -816,6 +818,7 @@ CTRL-X CTRL-K Search the files given with the 'dictionary' option
|
|||||||
the 'dictionary' option is empty.
|
the 'dictionary' option is empty.
|
||||||
For suggestions where to find a list of words, see the
|
For suggestions where to find a list of words, see the
|
||||||
'dictionary' option.
|
'dictionary' option.
|
||||||
|
'ignorecase', 'smartcase' and 'infercase' apply.
|
||||||
|
|
||||||
CTRL-K or
|
CTRL-K or
|
||||||
CTRL-N Search forward for next matching keyword. This
|
CTRL-N Search forward for next matching keyword. This
|
||||||
@@ -848,7 +851,7 @@ space is preferred). Maximum line length is 510 bytes.
|
|||||||
|
|
||||||
For an example, imagine the 'thesaurus' file has a line like this: >
|
For an example, imagine the 'thesaurus' file has a line like this: >
|
||||||
angry furious mad enraged
|
angry furious mad enraged
|
||||||
<Placing the cursor after the letters "ang" and typing CTRL-X CTRL-T would
|
Placing the cursor after the letters "ang" and typing CTRL-X CTRL-T would
|
||||||
complete the word "angry"; subsequent presses would change the word to
|
complete the word "angry"; subsequent presses would change the word to
|
||||||
"furious", "mad" etc.
|
"furious", "mad" etc.
|
||||||
|
|
||||||
@@ -860,7 +863,7 @@ https://github.com/vim/vim/issues/629#issuecomment-443293282
|
|||||||
Unpack thesaurus_pkg.zip, put the thesaurus.txt file somewhere, e.g.
|
Unpack thesaurus_pkg.zip, put the thesaurus.txt file somewhere, e.g.
|
||||||
~/.vim/thesaurus/english.txt, and the 'thesaurus' option to this file name.
|
~/.vim/thesaurus/english.txt, and the 'thesaurus' option to this file name.
|
||||||
|
|
||||||
|
|
||||||
Completing keywords with 'thesaurusfunc' *compl-thesaurusfunc*
|
Completing keywords with 'thesaurusfunc' *compl-thesaurusfunc*
|
||||||
|
|
||||||
If the 'thesaurusfunc' option is set, then the user specified function is
|
If the 'thesaurusfunc' option is set, then the user specified function is
|
||||||
@@ -877,9 +880,9 @@ Groß): >
|
|||||||
endif
|
endif
|
||||||
let res = []
|
let res = []
|
||||||
let h = ''
|
let h = ''
|
||||||
for l in systemlist('aiksaurus '.shellescape(a:base))
|
for l in systemlist('aiksaurus ' .. shellescape(a:base))
|
||||||
if l[:3] == '=== '
|
if l[:3] == '=== '
|
||||||
let h = '('.substitute(l[4:], ' =*$', ')', '')
|
let h = '(' .. substitute(l[4:], ' =*$', ')', '')
|
||||||
elseif l ==# 'Alphabetically similar known words are: '
|
elseif l ==# 'Alphabetically similar known words are: '
|
||||||
let h = "\U0001f52e"
|
let h = "\U0001f52e"
|
||||||
elseif l[0] =~ '\a' || (h ==# "\U0001f52e" && l[0] ==# "\t")
|
elseif l[0] =~ '\a' || (h ==# "\U0001f52e" && l[0] ==# "\t")
|
||||||
@@ -1264,7 +1267,7 @@ An example that completes the names of the months: >
|
|||||||
" find months matching with "a:base"
|
" find months matching with "a:base"
|
||||||
let res = []
|
let res = []
|
||||||
for m in split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec")
|
for m in split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec")
|
||||||
if m =~ '^' . a:base
|
if m =~ '^' .. a:base
|
||||||
call add(res, m)
|
call add(res, m)
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
@@ -1286,7 +1289,7 @@ The same, but now pretending searching for matches is slow: >
|
|||||||
else
|
else
|
||||||
" find months matching with "a:base"
|
" find months matching with "a:base"
|
||||||
for m in split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec")
|
for m in split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec")
|
||||||
if m =~ '^' . a:base
|
if m =~ '^' .. a:base
|
||||||
call complete_add(m)
|
call complete_add(m)
|
||||||
endif
|
endif
|
||||||
sleep 300m " simulate searching for next match
|
sleep 300m " simulate searching for next match
|
||||||
@@ -1406,11 +1409,16 @@ in 'runtimepath'. Thus for "java" it is autoload/javacomplete.vim.
|
|||||||
|
|
||||||
C *ft-c-omni*
|
C *ft-c-omni*
|
||||||
|
|
||||||
Completion of C code requires a tags file. You should use Exuberant ctags,
|
Completion of C code requires a tags file. You should use Universal/
|
||||||
because it adds extra information that is needed for completion. You can find
|
Exuberant ctags, because it adds extra information that is needed for
|
||||||
it here: http://ctags.sourceforge.net/ Version 5.6 or later is recommended.
|
completion. You can find it here:
|
||||||
|
Universal Ctags: https://ctags.io
|
||||||
|
Exuberant Ctags: http://ctags.sourceforge.net
|
||||||
|
|
||||||
For version 5.5.4 you should add a patch that adds the "typename:" field:
|
Universal Ctags is preferred, Exuberant Ctags is no longer being developed.
|
||||||
|
|
||||||
|
For Exuberant ctags, version 5.6 or later is recommended. For version 5.5.4
|
||||||
|
you should add a patch that adds the "typename:" field:
|
||||||
ftp://ftp.vim.org/pub/vim/unstable/patches/ctags-5.5.4.patch
|
ftp://ftp.vim.org/pub/vim/unstable/patches/ctags-5.5.4.patch
|
||||||
A compiled .exe for MS-Windows can be found at:
|
A compiled .exe for MS-Windows can be found at:
|
||||||
http://ctags.sourceforge.net/
|
http://ctags.sourceforge.net/
|
||||||
@@ -1531,8 +1539,11 @@ will be suggested. All other elements are not placed in suggestion list.
|
|||||||
PHP *ft-php-omni*
|
PHP *ft-php-omni*
|
||||||
|
|
||||||
Completion of PHP code requires a tags file for completion of data from
|
Completion of PHP code requires a tags file for completion of data from
|
||||||
external files and for class aware completion. You should use Exuberant ctags
|
external files and for class aware completion. You should use Universal/
|
||||||
version 5.5.4 or newer. You can find it here: http://ctags.sourceforge.net/
|
Exuberant ctags version 5.5.4 or newer. You can find it here:
|
||||||
|
|
||||||
|
Universal Ctags: https://ctags.io
|
||||||
|
Exuberant Ctags: http://ctags.sourceforge.net
|
||||||
|
|
||||||
Script completes:
|
Script completes:
|
||||||
|
|
||||||
@@ -1945,6 +1956,9 @@ When 'autoindent' is on, the indent for a new line is obtained from the
|
|||||||
previous line. When 'smartindent' or 'cindent' is on, the indent for a line
|
previous line. When 'smartindent' or 'cindent' is on, the indent for a line
|
||||||
is automatically adjusted for C programs.
|
is automatically adjusted for C programs.
|
||||||
|
|
||||||
|
'formatoptions' can be set to copy the comment leader when opening a new
|
||||||
|
line.
|
||||||
|
|
||||||
'textwidth' can be set to the maximum width for a line. When a line becomes
|
'textwidth' can be set to the maximum width for a line. When a line becomes
|
||||||
too long when appending characters a line break is automatically inserted.
|
too long when appending characters a line break is automatically inserted.
|
||||||
|
|
||||||
@@ -1958,6 +1972,9 @@ too long when appending characters a line break is automatically inserted.
|
|||||||
inserted after the current line.
|
inserted after the current line.
|
||||||
Adding [!] toggles 'autoindent' for the time this
|
Adding [!] toggles 'autoindent' for the time this
|
||||||
command is executed.
|
command is executed.
|
||||||
|
This command is not supported in |Vim9| script,
|
||||||
|
because it is too easily confused with a variable
|
||||||
|
name.
|
||||||
|
|
||||||
*:i* *:in* *:insert*
|
*:i* *:in* *:insert*
|
||||||
:{range}i[nsert][!] Insert several lines of text above the specified
|
:{range}i[nsert][!] Insert several lines of text above the specified
|
||||||
@@ -1965,6 +1982,9 @@ too long when appending characters a line break is automatically inserted.
|
|||||||
inserted before the current line.
|
inserted before the current line.
|
||||||
Adding [!] toggles 'autoindent' for the time this
|
Adding [!] toggles 'autoindent' for the time this
|
||||||
command is executed.
|
command is executed.
|
||||||
|
This command is not supported in |Vim9| script,
|
||||||
|
because it is too easily confused with a variable
|
||||||
|
name.
|
||||||
|
|
||||||
These two commands will keep on asking for lines, until you type a line
|
These two commands will keep on asking for lines, until you type a line
|
||||||
containing only a ".". Watch out for lines starting with a backslash, see
|
containing only a ".". Watch out for lines starting with a backslash, see
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*intro.txt* For Vim version 8.2. Last change: 2021 Sep 29
|
*intro.txt* For Vim version 8.2. Last change: 2022 Mar 03
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -701,7 +701,8 @@ Q Switch to "Ex" mode. This is a bit like typing ":"
|
|||||||
Use the ":vi" command |:visual| to exit "Ex" mode.
|
Use the ":vi" command |:visual| to exit "Ex" mode.
|
||||||
Note: In older versions of Vim "Q" formatted text,
|
Note: In older versions of Vim "Q" formatted text,
|
||||||
that is now done with |gq|. But if you use the
|
that is now done with |gq|. But if you use the
|
||||||
|vimrc_example.vim| script "Q" works like "gq".
|
|vimrc_example.vim| script or |defaults.vim|, "Q"
|
||||||
|
works like "gq". Except for Select mode.
|
||||||
|
|
||||||
*gQ*
|
*gQ*
|
||||||
gQ Switch to "Ex" mode like with "Q", but really behave
|
gQ Switch to "Ex" mode like with "Q", but really behave
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*map.txt* For Vim version 8.2. Last change: 2021 Nov 20
|
*map.txt* For Vim version 8.2. Last change: 2022 Mar 03
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
Key mapping, abbreviations and user-defined commands.
|
Key mapping, abbreviations and user-defined commands.
|
||||||
|
|
||||||
This subject is introduced in sections |05.3|, |24.7| and |40.1| of the user
|
This subject is introduced in sections |05.4|, |24.7| and |40.1| of the user
|
||||||
manual.
|
manual.
|
||||||
|
|
||||||
1. Key mapping |key-mapping|
|
1. Key mapping |key-mapping|
|
||||||
@@ -80,6 +80,8 @@ modes.
|
|||||||
where the map command applies. Disallow mapping of
|
where the map command applies. Disallow mapping of
|
||||||
{rhs}, to avoid nested and recursive mappings. Often
|
{rhs}, to avoid nested and recursive mappings. Often
|
||||||
used to redefine a command.
|
used to redefine a command.
|
||||||
|
Note: When <Plug> appears in the {rhs} this part is
|
||||||
|
always applied even if remapping is disallowed.
|
||||||
|
|
||||||
|
|
||||||
:unm[ap] {lhs} |mapmode-nvo| *:unm* *:unmap*
|
:unm[ap] {lhs} |mapmode-nvo| *:unm* *:unmap*
|
||||||
@@ -97,8 +99,7 @@ modes.
|
|||||||
map command applies. The mapping may remain defined
|
map command applies. The mapping may remain defined
|
||||||
for other modes where it applies.
|
for other modes where it applies.
|
||||||
It also works when {lhs} matches the {rhs} of a
|
It also works when {lhs} matches the {rhs} of a
|
||||||
mapping. This is for when when an abbreviation
|
mapping. This is for when an abbreviation applied.
|
||||||
applied.
|
|
||||||
Note: Trailing spaces are included in the {lhs}. This
|
Note: Trailing spaces are included in the {lhs}. This
|
||||||
unmap does NOT work: >
|
unmap does NOT work: >
|
||||||
:map @@ foo
|
:map @@ foo
|
||||||
@@ -173,7 +174,7 @@ type "a", then "bar" will get inserted.
|
|||||||
"<unique>" can be used in any order. They must appear right after the
|
"<unique>" can be used in any order. They must appear right after the
|
||||||
command, before any other arguments.
|
command, before any other arguments.
|
||||||
|
|
||||||
*:map-local* *:map-<buffer>* *E224* *E225*
|
*:map-local* *:map-<buffer>* *:map-buffer* *E224* *E225*
|
||||||
If the first argument to one of these commands is "<buffer>" the mapping will
|
If the first argument to one of these commands is "<buffer>" the mapping will
|
||||||
be effective in the current buffer only. Example: >
|
be effective in the current buffer only. Example: >
|
||||||
:map <buffer> ,w /[.,;]<CR>
|
:map <buffer> ,w /[.,;]<CR>
|
||||||
@@ -232,7 +233,7 @@ Note: ":map <script>" and ":noremap <script>" do the same thing. The
|
|||||||
"<script>" overrules the command name. Using ":noremap <script>" is
|
"<script>" overrules the command name. Using ":noremap <script>" is
|
||||||
preferred, because it's clearer that remapping is (mostly) disabled.
|
preferred, because it's clearer that remapping is (mostly) disabled.
|
||||||
|
|
||||||
*:map-<unique>* *E226* *E227*
|
*:map-<unique>* *:map-unique* *E226* *E227*
|
||||||
If the first argument to one of these commands is "<unique>" and it is used to
|
If the first argument to one of these commands is "<unique>" and it is used to
|
||||||
define a new mapping or abbreviation, the command will fail if the mapping or
|
define a new mapping or abbreviation, the command will fail if the mapping or
|
||||||
abbreviation already exists. Example: >
|
abbreviation already exists. Example: >
|
||||||
@@ -271,7 +272,7 @@ input. Example: >
|
|||||||
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
|
Keep in mind that the expression may be evaluated when looking for
|
||||||
typeahead, before the previous command has been executed. For example: >
|
typeahead, before the previous command has been executed. For example: >
|
||||||
func StoreColumn()
|
func StoreColumn()
|
||||||
let g:column = col('.')
|
let g:column = col('.')
|
||||||
@@ -285,6 +286,10 @@ This can be solved by inserting <Ignore> before the character that is
|
|||||||
expression-mapped: >
|
expression-mapped: >
|
||||||
nmap ! f!<Ignore>x
|
nmap ! f!<Ignore>x
|
||||||
|
|
||||||
|
When defining a mapping in a |Vim9| script, the expression will be evaluated
|
||||||
|
in the context of that script. This means that script-local items can be
|
||||||
|
accessed in the expression.
|
||||||
|
|
||||||
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.
|
||||||
For this reason the following is blocked:
|
For this reason the following is blocked:
|
||||||
@@ -311,7 +316,7 @@ Here is an example that inserts a list number that increases: >
|
|||||||
|
|
||||||
func ListItem()
|
func ListItem()
|
||||||
let g:counter += 1
|
let g:counter += 1
|
||||||
return g:counter . '. '
|
return g:counter .. '. '
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func ListReset()
|
func ListReset()
|
||||||
@@ -343,9 +348,24 @@ Example of using <Cmd> halfway Insert mode: >
|
|||||||
Unlike <expr> mappings, there are no special restrictions on the <Cmd>
|
Unlike <expr> mappings, there are no special restrictions on the <Cmd>
|
||||||
command: it is executed as if an (unrestricted) |autocommand| was invoked.
|
command: it is executed as if an (unrestricted) |autocommand| was invoked.
|
||||||
|
|
||||||
|
*<ScriptCmd>*
|
||||||
|
<ScriptCmd> is like <Cmd> but sets the context to the script the mapping was
|
||||||
|
defined in, for the duration of the command execution. This is especially
|
||||||
|
useful for |Vim9| script. It also works to access an import, which is useful
|
||||||
|
in a plugin using an autoload script: >
|
||||||
|
vim9script
|
||||||
|
import autoload 'implementation.vim' as impl
|
||||||
|
nnoremap <F4> <ScriptCmd>impl.DoTheWork()<CR>
|
||||||
|
|
||||||
|
No matter where <F4> is typed, the "impl" import will be found in the script
|
||||||
|
context of where the mapping was defined. And since it's an autoload import,
|
||||||
|
the "implementation.vim" script will only be loaded once <F4> is typed, not
|
||||||
|
when the mapping is defined.
|
||||||
|
|
||||||
Note:
|
Note:
|
||||||
- Because <Cmd> avoids mode-changes it does not trigger |CmdlineEnter| and
|
- Because <Cmd> and <ScriptCmd> avoid mode-changes it does not trigger
|
||||||
|CmdlineLeave| events, because no user interaction is expected.
|
|CmdlineEnter| and |CmdlineLeave| events, because no user interaction is
|
||||||
|
expected.
|
||||||
- For the same reason, |keycodes| like <C-R><C-W> are interpreted as plain,
|
- For the same reason, |keycodes| like <C-R><C-W> are interpreted as plain,
|
||||||
unmapped keys.
|
unmapped keys.
|
||||||
- The command is not echo'ed, no need for <silent>.
|
- The command is not echo'ed, no need for <silent>.
|
||||||
@@ -356,19 +376,20 @@ Note:
|
|||||||
- In Select mode, |:map| and |:vmap| command mappings are executed in
|
- In Select mode, |:map| and |:vmap| command mappings are executed in
|
||||||
Visual mode. Use |:smap| to handle Select mode differently.
|
Visual mode. Use |:smap| to handle Select mode differently.
|
||||||
|
|
||||||
*E1135* *E1136*
|
*E1255* *E1136*
|
||||||
<Cmd> commands must terminate, that is, they must be followed by <CR> in the
|
<Cmd> and <ScriptCmd> commands must terminate, that is, they must be followed
|
||||||
{rhs} of the mapping definition. |Command-line| mode is never entered.
|
by <CR> in the {rhs} of the mapping definition. |Command-line| mode is never
|
||||||
|
entered.
|
||||||
|
|
||||||
*E1137*
|
*E1137*
|
||||||
<Cmd> commands can have only normal characters and cannot contain special
|
<Cmd> and <ScriptCmd> commands can have only normal characters and cannot
|
||||||
characters like function keys.
|
contain special characters like function keys.
|
||||||
|
|
||||||
|
|
||||||
1.3 MAPPING AND MODES *:map-modes*
|
1.3 MAPPING AND MODES *:map-modes*
|
||||||
*mapmode-nvo* *mapmode-n* *mapmode-v* *mapmode-o*
|
*mapmode-nvo* *mapmode-n* *mapmode-v* *mapmode-o*
|
||||||
|
|
||||||
There are six sets of mappings
|
There are seven sets of mappings
|
||||||
- For Normal mode: When typing commands.
|
- For Normal mode: When typing commands.
|
||||||
- For Visual mode: When typing commands while the Visual area is highlighted.
|
- For Visual mode: When typing commands while the Visual area is highlighted.
|
||||||
- For Select mode: like Visual mode but typing text replaces the selection.
|
- For Select mode: like Visual mode but typing text replaces the selection.
|
||||||
@@ -376,6 +397,7 @@ There are six sets of mappings
|
|||||||
etc.). See below: |omap-info|.
|
etc.). See below: |omap-info|.
|
||||||
- For Insert mode. These are also used in Replace mode.
|
- For Insert mode. These are also used in Replace mode.
|
||||||
- For Command-line mode: When entering a ":" or "/" command.
|
- For Command-line mode: When entering a ":" or "/" command.
|
||||||
|
- For Terminal mode: When typing in a |:terminal| buffer.
|
||||||
|
|
||||||
Special case: While typing a count for a command in Normal mode, mapping zero
|
Special case: While typing a count for a command in Normal mode, mapping zero
|
||||||
is disabled. This makes it possible to map zero without making it impossible
|
is disabled. This makes it possible to map zero without making it impossible
|
||||||
@@ -962,8 +984,7 @@ g@{motion} Call the function set by the 'operatorfunc' option.
|
|||||||
"line" {motion} was |linewise|
|
"line" {motion} was |linewise|
|
||||||
"char" {motion} was |characterwise|
|
"char" {motion} was |characterwise|
|
||||||
"block" {motion} was |blockwise-visual|
|
"block" {motion} was |blockwise-visual|
|
||||||
Although "block" would rarely appear, since it can
|
The type can be forced, see |forced-motion|.
|
||||||
only result from Visual mode where "g@" is not useful.
|
|
||||||
{not available when compiled without the |+eval|
|
{not available when compiled without the |+eval|
|
||||||
feature}
|
feature}
|
||||||
|
|
||||||
@@ -974,28 +995,56 @@ Here is an example that counts the number of spaces with <F4>: >
|
|||||||
" doubling <F4> works on a line
|
" doubling <F4> works on a line
|
||||||
nnoremap <expr> <F4><F4> CountSpaces() .. '_'
|
nnoremap <expr> <F4><F4> CountSpaces() .. '_'
|
||||||
|
|
||||||
function CountSpaces(type = '') abort
|
function CountSpaces(context = {}, type = '') abort
|
||||||
if a:type == ''
|
if a:type == ''
|
||||||
set opfunc=CountSpaces
|
let context = #{
|
||||||
|
\ dot_command: v:false,
|
||||||
|
\ extend_block: '',
|
||||||
|
\ virtualedit: [&l:virtualedit, &g:virtualedit],
|
||||||
|
\ }
|
||||||
|
let &operatorfunc = function('CountSpaces', [context])
|
||||||
|
set virtualedit=block
|
||||||
return 'g@'
|
return 'g@'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let sel_save = &selection
|
let save = #{
|
||||||
let reg_save = getreginfo('"')
|
\ clipboard: &clipboard,
|
||||||
let cb_save = &clipboard
|
\ selection: &selection,
|
||||||
let visual_marks_save = [getpos("'<"), getpos("'>")]
|
\ virtualedit: [&l:virtualedit, &g:virtualedit],
|
||||||
|
\ register: getreginfo('"'),
|
||||||
|
\ visual_marks: [getpos("'<"), getpos("'>")],
|
||||||
|
\ }
|
||||||
|
|
||||||
try
|
try
|
||||||
set clipboard= selection=inclusive
|
set clipboard= selection=inclusive virtualedit=
|
||||||
let commands = #{line: "'[V']y", char: "`[v`]y", block: "`[\<c-v>`]y"}
|
let commands = #{
|
||||||
silent exe 'noautocmd keepjumps normal! ' .. get(commands, a:type, '')
|
\ line: "'[V']",
|
||||||
echom getreg('"')->count(' ')
|
\ char: "`[v`]",
|
||||||
|
\ block: "`[\<C-V>`]",
|
||||||
|
\ }[a:type]
|
||||||
|
let [_, _, col, off] = getpos("']")
|
||||||
|
if off != 0
|
||||||
|
let vcol = getline("'[")->strpart(0, col + off)->strdisplaywidth()
|
||||||
|
if vcol >= [line("'["), '$']->virtcol() - 1
|
||||||
|
let a:context.extend_block = '$'
|
||||||
|
else
|
||||||
|
let a:context.extend_block = vcol .. '|'
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
if a:context.extend_block != ''
|
||||||
|
let commands ..= 'oO' .. a:context.extend_block
|
||||||
|
endif
|
||||||
|
let commands ..= 'y'
|
||||||
|
execute 'silent noautocmd keepjumps normal! ' .. commands
|
||||||
|
echomsg getreg('"')->count(' ')
|
||||||
finally
|
finally
|
||||||
call setreg('"', reg_save)
|
call setreg('"', save.register)
|
||||||
call setpos("'<", visual_marks_save[0])
|
call setpos("'<", save.visual_marks[0])
|
||||||
call setpos("'>", visual_marks_save[1])
|
call setpos("'>", save.visual_marks[1])
|
||||||
let &clipboard = cb_save
|
let &clipboard = save.clipboard
|
||||||
let &selection = sel_save
|
let &selection = save.selection
|
||||||
|
let [&l:virtualedit, &g:virtualedit] = get(a:context.dot_command ? save : a:context, 'virtualedit')
|
||||||
|
let a:context.dot_command = v:true
|
||||||
endtry
|
endtry
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
@@ -1365,7 +1414,7 @@ scripts.
|
|||||||
|
|
||||||
*:command-verbose*
|
*:command-verbose*
|
||||||
When 'verbose' is non-zero, listing a command will also display where it was
|
When 'verbose' is non-zero, listing a command will also display where it was
|
||||||
last defined. Example: >
|
last defined and any completion argument. Example: >
|
||||||
|
|
||||||
:verbose command TOhtml
|
:verbose command TOhtml
|
||||||
< Name Args Range Complete Definition ~
|
< Name Args Range Complete Definition ~
|
||||||
@@ -1398,7 +1447,7 @@ See |:verbose-cmd| for more information.
|
|||||||
|
|
||||||
|
|
||||||
Command attributes ~
|
Command attributes ~
|
||||||
|
*command-attributes*
|
||||||
User-defined commands are treated by Vim just like any other Ex commands. They
|
User-defined commands are treated by Vim just like any other Ex commands. They
|
||||||
can have arguments, or have a range specified. Arguments are subject to
|
can have arguments, or have a range specified. Arguments are subject to
|
||||||
completion as filenames, buffers, etc. Exactly how this works depends upon the
|
completion as filenames, buffers, etc. Exactly how this works depends upon the
|
||||||
@@ -1484,6 +1533,8 @@ completion can be enabled:
|
|||||||
-complete=custom,{func} custom completion, defined via {func}
|
-complete=custom,{func} custom completion, defined via {func}
|
||||||
-complete=customlist,{func} custom completion, defined via {func}
|
-complete=customlist,{func} custom completion, defined via {func}
|
||||||
|
|
||||||
|
If you specify completion while there is nothing to complete (-nargs=0, the
|
||||||
|
default) then you get error *E1208* .
|
||||||
Note: That some completion methods might expand environment variables.
|
Note: That some completion methods might expand environment variables.
|
||||||
|
|
||||||
|
|
||||||
@@ -1513,9 +1564,11 @@ The function arguments are:
|
|||||||
The function may use these for determining context. For the "custom"
|
The function may use these for determining context. For the "custom"
|
||||||
argument, it is not necessary to filter candidates against the (implicit
|
argument, it is not necessary to filter candidates against the (implicit
|
||||||
pattern in) ArgLead. Vim will filter the candidates with its regexp engine
|
pattern in) ArgLead. Vim will filter the candidates with its regexp engine
|
||||||
after function return, and this is probably more efficient in most cases. For
|
after function return, and this is probably more efficient in most cases. If
|
||||||
the "customlist" argument, Vim will not filter the returned completion
|
'wildoptions' contains "fuzzy", then the candidates will be filtered using
|
||||||
candidates and the user supplied function should filter the candidates.
|
|fuzzy-matching|. For the "customlist" argument, Vim will not
|
||||||
|
filter the returned completion candidates and the user supplied function
|
||||||
|
should filter the candidates.
|
||||||
|
|
||||||
The following example lists user names to a Finger command >
|
The following example lists user names to a Finger command >
|
||||||
:com -complete=custom,ListUsers -nargs=1 Finger !finger <args>
|
:com -complete=custom,ListUsers -nargs=1 Finger !finger <args>
|
||||||
@@ -1649,12 +1702,12 @@ The valid escape sequences are
|
|||||||
Examples: >
|
Examples: >
|
||||||
command! -nargs=+ -complete=file MyEdit
|
command! -nargs=+ -complete=file MyEdit
|
||||||
\ for f in expand(<q-args>, 0, 1) |
|
\ for f in expand(<q-args>, 0, 1) |
|
||||||
\ exe '<mods> split ' . f |
|
\ exe '<mods> split ' .. f |
|
||||||
\ endfor
|
\ endfor
|
||||||
|
|
||||||
function! SpecialEdit(files, mods)
|
function! SpecialEdit(files, mods)
|
||||||
for f in expand(a:files, 0, 1)
|
for f in expand(a:files, 0, 1)
|
||||||
exe a:mods . ' split ' . f
|
exe a:mods .. ' split ' .. f
|
||||||
endfor
|
endfor
|
||||||
endfunction
|
endfunction
|
||||||
command! -nargs=+ -complete=file Sedit
|
command! -nargs=+ -complete=file Sedit
|
||||||
@@ -1730,7 +1783,7 @@ This will invoke: >
|
|||||||
: let i = 0
|
: let i = 0
|
||||||
: while i < argc()
|
: while i < argc()
|
||||||
: if filereadable(argv(i))
|
: if filereadable(argv(i))
|
||||||
: execute "e " . argv(i)
|
: execute "e " .. argv(i)
|
||||||
: execute a:command
|
: execute a:command
|
||||||
: endif
|
: endif
|
||||||
: let i = i + 1
|
: let i = i + 1
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*mbyte.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
*mbyte.txt* For Vim version 8.2. Last change: 2022 Jan 20
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||||
@@ -862,8 +862,8 @@ Use the RPM or port for your system.
|
|||||||
window specific to the input method.
|
window specific to the input method.
|
||||||
|
|
||||||
|
|
||||||
USING XIM *multibyte-input* *E284* *E286* *E287* *E288*
|
USING XIM *multibyte-input* *E284* *E285* *E286* *E287*
|
||||||
*E285* *E289*
|
*E288* *E289*
|
||||||
|
|
||||||
Note that Display and Input are independent. It is possible to see your
|
Note that Display and Input are independent. It is possible to see your
|
||||||
language even though you have no input method for it. But when your Display
|
language even though you have no input method for it. But when your Display
|
||||||
@@ -955,32 +955,11 @@ replace mode.
|
|||||||
The options 'iminsert', 'imsearch' and 'imcmdline' can be used to choose
|
The options 'iminsert', 'imsearch' and 'imcmdline' can be used to choose
|
||||||
the different input methods or disable them temporarily.
|
the different input methods or disable them temporarily.
|
||||||
|
|
||||||
WHAT IS IME
|
On Windows 9x and Windows NT 4.0 there was *global-ime* , but this is no
|
||||||
IME is a part of East asian version Windows. That helps you to input
|
longer supported. You can still find documentation for Active Input Method
|
||||||
multibyte character. English and other language version Windows does not
|
Manager (Global IME) here:
|
||||||
have any IME. (Also there is no need usually.) But there is one that
|
|
||||||
called Microsoft Global IME. Global IME is a part of Internet Explorer
|
|
||||||
4.0 or above. You can get more information about Global IME, at below
|
|
||||||
URL.
|
|
||||||
|
|
||||||
WHAT IS GLOBAL IME *global-ime*
|
|
||||||
Global IME makes capability to input Chinese, Japanese, and Korean text
|
|
||||||
into Vim buffer on any language version of Windows 98, Windows 95, and
|
|
||||||
Windows NT 4.0.
|
|
||||||
On Windows 2000 and XP it should work as well (without downloading). On
|
|
||||||
Windows 2000 Professional, Global IME is built in, and the Input Locales
|
|
||||||
can be added through Control Panel/Regional Options/Input Locales.
|
|
||||||
Please see below URL for detail of Global IME. You can also find various
|
|
||||||
language version of Global IME at same place.
|
|
||||||
|
|
||||||
- Global IME detailed information.
|
|
||||||
http://search.microsoft.com/results.aspx?q=global+ime
|
|
||||||
|
|
||||||
- Active Input Method Manager (Global IME)
|
|
||||||
http://msdn.microsoft.com/en-us/library/aa741221(v=VS.85).aspx
|
http://msdn.microsoft.com/en-us/library/aa741221(v=VS.85).aspx
|
||||||
|
|
||||||
Support for Global IME is an experimental feature.
|
|
||||||
|
|
||||||
NOTE: For IME to work you must make sure the input locales of your language
|
NOTE: For IME to work you must make sure the input locales of your language
|
||||||
are added to your system. The exact location of this depends on the version
|
are added to your system. The exact location of this depends on the version
|
||||||
of Windows you use. For example, on my Windows 2000 box:
|
of Windows you use. For example, on my Windows 2000 box:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*message.txt* For Vim version 8.2. Last change: 2021 Jul 31
|
*message.txt* For Vim version 8.2. Last change: 2022 Jan 26
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -29,8 +29,7 @@ depends on the 'shortmess' option.
|
|||||||
Clear messages, keeping only the {count} most
|
Clear messages, keeping only the {count} most
|
||||||
recent ones.
|
recent ones.
|
||||||
|
|
||||||
The number of remembered messages is fixed at 20 for the tiny version and 200
|
The number of remembered messages is fixed at 200.
|
||||||
for other versions.
|
|
||||||
|
|
||||||
*g<*
|
*g<*
|
||||||
The "g<" command can be used to see the last page of previous command output.
|
The "g<" command can be used to see the last page of previous command output.
|
||||||
@@ -47,13 +46,13 @@ maintains the messages or the translations. You can use this to contact the
|
|||||||
maintainer when you spot a mistake.
|
maintainer when you spot a mistake.
|
||||||
|
|
||||||
If you want to find help on a specific (error) message, use the ID at the
|
If you want to find help on a specific (error) message, use the ID at the
|
||||||
start of the message. For example, to get help on the message: >
|
start of the message. For example, to get help on the message:
|
||||||
|
|
||||||
E72: Close error on swap file
|
E72: Close error on swap file ~
|
||||||
|
|
||||||
or (translated): >
|
or (translated):
|
||||||
|
|
||||||
E72: Errore durante chiusura swap file
|
E72: Errore durante chiusura swap file ~
|
||||||
|
|
||||||
Use: >
|
Use: >
|
||||||
|
|
||||||
@@ -63,6 +62,8 @@ If you are lazy, it also works without the shift key: >
|
|||||||
|
|
||||||
:help e72
|
:help e72
|
||||||
|
|
||||||
|
The number in this ID has no meaning.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
2. Error messages *error-messages* *errors*
|
2. Error messages *error-messages* *errors*
|
||||||
|
|
||||||
@@ -77,116 +78,116 @@ See `:messages` above.
|
|||||||
LIST OF MESSAGES
|
LIST OF MESSAGES
|
||||||
*E222* *E228* *E232* *E293* *E298* *E304* *E317*
|
*E222* *E228* *E232* *E293* *E298* *E304* *E317*
|
||||||
*E318* *E356* *E438* *E439* *E440* *E316* *E320* *E322*
|
*E318* *E356* *E438* *E439* *E440* *E316* *E320* *E322*
|
||||||
*E323* *E341* *E473* *E570* *E685* *E292* >
|
*E323* *E341* *E473* *E570* *E685* *E292*
|
||||||
Add to read buffer
|
Add to read buffer ~
|
||||||
makemap: Illegal mode
|
makemap: Illegal mode ~
|
||||||
Cannot create BalloonEval with both message and callback
|
Cannot create BalloonEval with both message and callback ~
|
||||||
Hangul automata ERROR
|
block was not locked ~
|
||||||
block was not locked
|
Didn't get block nr {N}? ~
|
||||||
Didn't get block nr {N}?
|
ml_upd_block0(): Didn't get block 0?? ~
|
||||||
ml_upd_block0(): Didn't get block 0??
|
pointer block id wrong {N} ~
|
||||||
pointer block id wrong {N}
|
Updated too many blocks? ~
|
||||||
Updated too many blocks?
|
get_varp ERROR ~
|
||||||
get_varp ERROR
|
u_undo: line numbers wrong ~
|
||||||
u_undo: line numbers wrong
|
undo list corrupt ~
|
||||||
undo list corrupt
|
undo line missing ~
|
||||||
undo line missing
|
ml_get: cannot find line {N} in buffer {nr} {name} ~
|
||||||
ml_get: cannot find line {N}
|
line number out of range: {N} past the end ~
|
||||||
cannot find line {N}
|
line count wrong in block {N} ~
|
||||||
line number out of range: {N} past the end
|
Internal error: lalloc(0, ) ~
|
||||||
line count wrong in block {N}
|
Internal error: {function} ~
|
||||||
Internal error
|
Internal error in regexp ~
|
||||||
Internal error: {function}
|
fatal error in cs_manage_matches ~
|
||||||
fatal error in cs_manage_matches
|
Invalid count for del_bytes(): {N} ~
|
||||||
Invalid count for del_bytes(): {N}
|
|
||||||
|
|
||||||
This is an internal error. If you can reproduce it, please send in a bug
|
This is an internal error. If you can reproduce it, please send in a bug
|
||||||
report. |bugs|
|
report. |bugs|
|
||||||
|
|
||||||
>
|
|
||||||
ATTENTION
|
ATTENTION ~
|
||||||
Found a swap file by the name ...
|
Found a swap file by the name ... ~
|
||||||
|
|
||||||
See |ATTENTION|.
|
See |ATTENTION|.
|
||||||
|
|
||||||
*E92* >
|
*E92*
|
||||||
Buffer {N} not found
|
Buffer {N} not found ~
|
||||||
|
|
||||||
The buffer you requested does not exist. This can also happen when you have
|
The buffer you requested does not exist. This can also happen when you have
|
||||||
wiped out a buffer which contains a mark or is referenced in another way.
|
wiped out a buffer which contains a mark or is referenced in another way.
|
||||||
|:bwipeout|
|
|:bwipeout|
|
||||||
|
|
||||||
*E95* >
|
*E95*
|
||||||
Buffer with this name already exists
|
Buffer with this name already exists ~
|
||||||
|
|
||||||
You cannot have two buffers with the same name.
|
You cannot have two buffers with exactly the same name. This includes the
|
||||||
|
path leading to the file.
|
||||||
|
|
||||||
*E72* >
|
*E72*
|
||||||
Close error on swap file
|
Close error on swap file ~
|
||||||
|
|
||||||
The |swap-file|, that is used to keep a copy of the edited text, could not be
|
The |swap-file|, that is used to keep a copy of the edited text, could not be
|
||||||
closed properly. Mostly harmless.
|
closed properly. Mostly harmless.
|
||||||
|
|
||||||
*E169* >
|
*E169*
|
||||||
Command too recursive
|
Command too recursive ~
|
||||||
|
|
||||||
This happens when an Ex command executes an Ex command that executes an Ex
|
This happens when an Ex command executes an Ex command that executes an Ex
|
||||||
command, etc. The limit is 200 or the value of 'maxfuncdepth', whatever is
|
command, etc. The limit is 200 or the value of 'maxfuncdepth', whatever is
|
||||||
larger. When it's more there probably is an endless loop. Probably a
|
larger. When it's more there probably is an endless loop. Probably a
|
||||||
|:execute| or |:source| command is involved.
|
|:execute| or |:source| command is involved.
|
||||||
|
|
||||||
*E254* >
|
*E254*
|
||||||
Cannot allocate color {name}
|
Cannot allocate color {name} ~
|
||||||
|
|
||||||
The color name {name} is unknown. See |gui-colors| for a list of colors that
|
The color name {name} is unknown. See |gui-colors| for a list of colors that
|
||||||
are available on most systems.
|
are available on most systems.
|
||||||
|
|
||||||
*E1244* >
|
*E1244*
|
||||||
Bad color string: {str}
|
Bad color string: {str} ~
|
||||||
|
|
||||||
The provided color did not conform to the pattern #rrggbb
|
The provided color did not conform to the pattern #rrggbb
|
||||||
|
|
||||||
*E458* >
|
*E458*
|
||||||
Cannot allocate colormap entry, some colors may be incorrect
|
Cannot allocate colormap entry, some colors may be incorrect ~
|
||||||
|
|
||||||
This means that there are not enough colors available for Vim. It will still
|
This means that there are not enough colors available for Vim. It will still
|
||||||
run, but some of the colors will not appear in the specified color. Try
|
run, but some of the colors will not appear in the specified color. Try
|
||||||
stopping other applications that use many colors, or start them after starting
|
stopping other applications that use many colors, or start them after starting
|
||||||
gvim.
|
gvim.
|
||||||
Browsers are known to consume a lot of colors. You can avoid this with
|
Browsers are known to consume a lot of colors. You can avoid this with
|
||||||
netscape by telling it to use its own colormap: >
|
netscape by telling it to use its own colormap:
|
||||||
netscape -install
|
netscape -install ~
|
||||||
Or tell it to limit to a certain number of colors (64 should work well): >
|
Or tell it to limit to a certain number of colors (64 should work well):
|
||||||
netscape -ncols 64
|
netscape -ncols 64 ~
|
||||||
This can also be done with a line in your Xdefaults file: >
|
This can also be done with a line in your Xdefaults file:
|
||||||
Netscape*installColormap: Yes
|
Netscape*installColormap: Yes ~
|
||||||
or >
|
or
|
||||||
Netscape*maxImageColors: 64
|
Netscape*maxImageColors: 64 ~
|
||||||
<
|
|
||||||
*E79* >
|
*E79*
|
||||||
Cannot expand wildcards
|
Cannot expand wildcards ~
|
||||||
|
|
||||||
A filename contains a strange combination of characters, which causes Vim to
|
A filename contains a strange combination of characters, which causes Vim to
|
||||||
attempt expanding wildcards but this fails. This does NOT mean that no
|
attempt expanding wildcards but this fails. This does NOT mean that no
|
||||||
matching file names could be found, but that the pattern was illegal.
|
matching file names could be found, but that the pattern was illegal.
|
||||||
|
|
||||||
*E459* >
|
*E459*
|
||||||
Cannot go back to previous directory
|
Cannot go back to previous directory ~
|
||||||
|
|
||||||
While expanding a file name, Vim failed to go back to the previously used
|
While expanding a file name, Vim failed to go back to the previously used
|
||||||
directory. All file names being used may be invalid now! You need to have
|
directory. All file names being used may be invalid now! You need to have
|
||||||
execute permission on the current directory.
|
execute permission on the current directory.
|
||||||
|
|
||||||
*E190* *E212* >
|
*E190* *E212*
|
||||||
Cannot open "{filename}" for writing
|
Cannot open "{filename}" for writing ~
|
||||||
Can't open file for writing
|
Can't open file for writing ~
|
||||||
|
|
||||||
For some reason the file you are writing to cannot be created or overwritten.
|
For some reason the file you are writing to cannot be created or overwritten.
|
||||||
The reason could be that you do not have permission to write in the directory
|
The reason could be that you do not have permission to write in the directory
|
||||||
or the file name is not valid.
|
or the file name is not valid.
|
||||||
|
|
||||||
*E166* >
|
*E166*
|
||||||
Can't open linked file for writing
|
Can't open linked file for writing ~
|
||||||
|
|
||||||
You are trying to write to a file which can't be overwritten, and the file is
|
You are trying to write to a file which can't be overwritten, and the file is
|
||||||
a link (either a hard link or a symbolic link). Writing might still be
|
a link (either a hard link or a symbolic link). Writing might still be
|
||||||
@@ -197,20 +198,20 @@ place. If you really want to write the file under this name, you have to
|
|||||||
manually delete the link or the file, or change the permissions so that Vim
|
manually delete the link or the file, or change the permissions so that Vim
|
||||||
can overwrite.
|
can overwrite.
|
||||||
|
|
||||||
*E46* >
|
*E46*
|
||||||
Cannot change read-only variable "{name}"
|
Cannot change read-only variable "{name}" ~
|
||||||
|
|
||||||
You are trying to assign a value to an argument of a function |a:var| or a Vim
|
You are trying to assign a value to an argument of a function |a:var| or a Vim
|
||||||
internal variable |v:var| which is read-only.
|
internal variable |v:var| which is read-only.
|
||||||
|
|
||||||
*E90* >
|
*E90*
|
||||||
Cannot unload last buffer
|
Cannot unload last buffer ~
|
||||||
|
|
||||||
Vim always requires one buffer to be loaded, otherwise there would be nothing
|
Vim always requires one buffer to be loaded, otherwise there would be nothing
|
||||||
to display in the window.
|
to display in the window.
|
||||||
|
|
||||||
*E40* >
|
*E40*
|
||||||
Can't open errorfile <filename>
|
Can't open errorfile <filename> ~
|
||||||
|
|
||||||
When using the ":make" or ":grep" commands: The file used to save the error
|
When using the ":make" or ":grep" commands: The file used to save the error
|
||||||
messages or grep output cannot be opened. This can have several causes:
|
messages or grep output cannot be opened. This can have several causes:
|
||||||
@@ -222,8 +223,8 @@ messages or grep output cannot be opened. This can have several causes:
|
|||||||
- The 'grepprg' or 'makeprg' could not be executed. This cannot always be
|
- The 'grepprg' or 'makeprg' could not be executed. This cannot always be
|
||||||
detected (especially on MS-Windows). Check your $PATH.
|
detected (especially on MS-Windows). Check your $PATH.
|
||||||
|
|
||||||
>
|
|
||||||
Can't open file C:\TEMP\VIoD243.TMP
|
Can't open file C:\TEMP\VIoD243.TMP ~
|
||||||
|
|
||||||
On MS-Windows, this message appears when the output of an external command was
|
On MS-Windows, this message appears when the output of an external command was
|
||||||
to be read, but the command didn't run successfully. This can be caused by
|
to be read, but the command didn't run successfully. This can be caused by
|
||||||
@@ -231,21 +232,21 @@ many things. Check the 'shell', 'shellquote', 'shellxquote', 'shellslash' and
|
|||||||
related options. It might also be that the external command was not found,
|
related options. It might also be that the external command was not found,
|
||||||
there is no different error message for that.
|
there is no different error message for that.
|
||||||
|
|
||||||
*E12* >
|
*E12*
|
||||||
Command not allowed from exrc/vimrc in current dir or tag search
|
Command not allowed from exrc/vimrc in current dir or tag search ~
|
||||||
|
|
||||||
Some commands are not allowed for security reasons. These commands mostly
|
Some commands are not allowed for security reasons. These commands mostly
|
||||||
come from a .exrc or .vimrc file in the current directory, or from a tags
|
come from a .exrc or .vimrc file in the current directory, or from a tags
|
||||||
file. Also see 'secure'.
|
file. Also see 'secure'.
|
||||||
|
|
||||||
*E74* >
|
*E74*
|
||||||
Command too complex
|
Command too complex ~
|
||||||
|
|
||||||
A mapping resulted in a very long command string. Could be caused by a
|
A mapping resulted in a very long command string. Could be caused by a
|
||||||
mapping that indirectly calls itself.
|
mapping that indirectly calls itself.
|
||||||
|
|
||||||
>
|
|
||||||
CONVERSION ERROR
|
CONVERSION ERROR ~
|
||||||
|
|
||||||
When writing a file and the text "CONVERSION ERROR" appears, this means that
|
When writing a file and the text "CONVERSION ERROR" appears, this means that
|
||||||
some bits were lost when converting text from the internally used UTF-8 to the
|
some bits were lost when converting text from the internally used UTF-8 to the
|
||||||
@@ -257,51 +258,51 @@ If there is a backup file, when 'writebackup' or 'backup' is set, it will not
|
|||||||
be deleted, so you can move it back into place if you want to discard the
|
be deleted, so you can move it back into place if you want to discard the
|
||||||
changes.
|
changes.
|
||||||
|
|
||||||
*E302* >
|
*E302*
|
||||||
Could not rename swap file
|
Could not rename swap file ~
|
||||||
|
|
||||||
When the file name changes, Vim tries to rename the |swap-file| as well.
|
When the file name changes, Vim tries to rename the |swap-file| as well.
|
||||||
This failed and the old swap file is now still used. Mostly harmless.
|
This failed and the old swap file is now still used. Mostly harmless.
|
||||||
|
|
||||||
*E43* *E44* >
|
*E43* *E44*
|
||||||
Damaged match string
|
Damaged match string ~
|
||||||
Corrupted regexp program
|
Corrupted regexp program ~
|
||||||
|
|
||||||
Something inside Vim went wrong and resulted in a corrupted regexp. If you
|
Something inside Vim went wrong and resulted in a corrupted regexp. If you
|
||||||
know how to reproduce this problem, please report it. |bugs|
|
know how to reproduce this problem, please report it. |bugs|
|
||||||
|
|
||||||
*E208* *E209* *E210* >
|
*E208* *E209* *E210*
|
||||||
Error writing to "{filename}"
|
Error writing to "{filename}" ~
|
||||||
Error closing "{filename}"
|
Error closing "{filename}" ~
|
||||||
Error reading "{filename}"
|
Error reading "{filename}" ~
|
||||||
|
|
||||||
This occurs when Vim is trying to rename a file, but a simple change of file
|
This occurs when Vim is trying to rename a file, but a simple change of file
|
||||||
name doesn't work. Then the file will be copied, but somehow this failed.
|
name doesn't work. Then the file will be copied, but somehow this failed.
|
||||||
The result may be that both the original file and the destination file exist
|
The result may be that both the original file and the destination file exist
|
||||||
and the destination file may be incomplete.
|
and the destination file may be incomplete.
|
||||||
|
|
||||||
>
|
|
||||||
Vim: Error reading input, exiting...
|
Vim: Error reading input, exiting... ~
|
||||||
|
|
||||||
This occurs when Vim cannot read typed characters while input is required.
|
This occurs when Vim cannot read typed characters while input is required.
|
||||||
Vim got stuck, the only thing it can do is exit. This can happen when both
|
Vim got stuck, the only thing it can do is exit. This can happen when both
|
||||||
stdin and stderr are redirected and executing a script that doesn't exit Vim.
|
stdin and stderr are redirected and executing a script that doesn't exit Vim.
|
||||||
|
|
||||||
*E47* >
|
*E47*
|
||||||
Error while reading errorfile
|
Error while reading errorfile ~
|
||||||
|
|
||||||
Reading the error file was not possible. This is NOT caused by an error
|
Reading the error file was not possible. This is NOT caused by an error
|
||||||
message that was not recognized.
|
message that was not recognized.
|
||||||
|
|
||||||
*E80* >
|
*E80*
|
||||||
Error while writing
|
Error while writing ~
|
||||||
|
|
||||||
Writing a file was not completed successfully. The file is probably
|
Writing a file was not completed successfully. The file is probably
|
||||||
incomplete.
|
incomplete.
|
||||||
|
|
||||||
*E13* *E189* >
|
*E13* *E189*
|
||||||
File exists (add ! to override)
|
File exists (add ! to override) ~
|
||||||
"{filename}" exists (add ! to override)
|
"{filename}" exists (add ! to override) ~
|
||||||
|
|
||||||
You are protected from accidentally overwriting a file. When you want to
|
You are protected from accidentally overwriting a file. When you want to
|
||||||
write anyway, use the same command, but add a "!" just after the command.
|
write anyway, use the same command, but add a "!" just after the command.
|
||||||
@@ -310,8 +311,8 @@ Example: >
|
|||||||
changes to: >
|
changes to: >
|
||||||
:w! /tmp/test
|
:w! /tmp/test
|
||||||
<
|
<
|
||||||
*E768* >
|
*E768*
|
||||||
Swap file exists: {filename} (:silent! overrides)
|
Swap file exists: {filename} (:silent! overrides) ~
|
||||||
|
|
||||||
You are protected from overwriting a file that is being edited by Vim. This
|
You are protected from overwriting a file that is being edited by Vim. This
|
||||||
happens when you use ":w! filename" and a swapfile is found.
|
happens when you use ":w! filename" and a swapfile is found.
|
||||||
@@ -323,115 +324,115 @@ happens when you use ":w! filename" and a swapfile is found.
|
|||||||
< The special command is needed, since you already added the ! for overwriting
|
< The special command is needed, since you already added the ! for overwriting
|
||||||
an existing file.
|
an existing file.
|
||||||
|
|
||||||
*E139* >
|
*E139*
|
||||||
File is loaded in another buffer
|
File is loaded in another buffer ~
|
||||||
|
|
||||||
You are trying to write a file under a name which is also used in another
|
You are trying to write a file under a name which is also used in another
|
||||||
buffer. This would result in two versions of the same file.
|
buffer. This would result in two versions of the same file.
|
||||||
|
|
||||||
*E142* >
|
*E142*
|
||||||
File not written: Writing is disabled by 'write' option
|
File not written: Writing is disabled by 'write' option ~
|
||||||
|
|
||||||
The 'write' option is off. This makes all commands that try to write a file
|
The 'write' option is off. This makes all commands that try to write a file
|
||||||
generate this message. This could be caused by a |-m| commandline argument.
|
generate this message. This could be caused by a |-m| commandline argument.
|
||||||
You can switch the 'write' option on with ":set write".
|
You can switch the 'write' option on with ":set write".
|
||||||
|
|
||||||
*E25* >
|
*E25*
|
||||||
GUI cannot be used: Not enabled at compile time
|
GUI cannot be used: Not enabled at compile time ~
|
||||||
|
|
||||||
You are running a version of Vim that doesn't include the GUI code. Therefore
|
You are running a version of Vim that doesn't include the GUI code. Therefore
|
||||||
"gvim" and ":gui" don't work.
|
"gvim" and ":gui" don't work.
|
||||||
|
|
||||||
*E49* >
|
*E49*
|
||||||
Invalid scroll size
|
Invalid scroll size ~
|
||||||
|
|
||||||
This is caused by setting an invalid value for the 'scroll', 'scrolljump' or
|
This is caused by setting an invalid value for the 'scroll', 'scrolljump' or
|
||||||
'scrolloff' options.
|
'scrolloff' options.
|
||||||
|
|
||||||
*E17* >
|
*E17*
|
||||||
"{filename}" is a directory
|
"{filename}" is a directory ~
|
||||||
|
|
||||||
You tried to write a file with the name of a directory. This is not possible.
|
You tried to write a file with the name of a directory. This is not possible.
|
||||||
You probably need to append a file name.
|
You probably need to append a file name.
|
||||||
|
|
||||||
*E19* >
|
*E19*
|
||||||
Mark has invalid line number
|
Mark has invalid line number ~
|
||||||
|
|
||||||
You are using a mark that has a line number that doesn't exist. This can
|
You are using a mark that has a line number that doesn't exist. This can
|
||||||
happen when you have a mark in another file, and some other program has
|
happen when you have a mark in another file, and some other program has
|
||||||
deleted lines from it.
|
deleted lines from it.
|
||||||
|
|
||||||
*E219* *E220* >
|
*E219* *E220*
|
||||||
Missing {.
|
Missing {. ~
|
||||||
Missing }.
|
Missing }. ~
|
||||||
|
|
||||||
Using a {} construct in a file name, but there is a { without a matching } or
|
Using a {} construct in a file name, but there is a { without a matching } or
|
||||||
the other way around. It should be used like this: {foo,bar}. This matches
|
the other way around. It should be used like this: {foo,bar}. This matches
|
||||||
"foo" and "bar".
|
"foo" and "bar".
|
||||||
|
|
||||||
*E315* >
|
*E315*
|
||||||
ml_get: invalid lnum: {number}
|
ml_get: invalid lnum: {number} ~
|
||||||
|
|
||||||
This is an internal Vim error. Please try to find out how it can be
|
This is an internal Vim error. Please try to find out how it can be
|
||||||
reproduced, and submit a bug report |bugreport.vim|.
|
reproduced, and submit a bug report |bugreport.vim|.
|
||||||
|
|
||||||
*E173* >
|
*E173*
|
||||||
{number} more files to edit
|
{number} more files to edit ~
|
||||||
|
|
||||||
You are trying to exit, while the last item in the argument list has not been
|
You are trying to exit, while the last item in the argument list has not been
|
||||||
edited. This protects you from accidentally exiting when you still have more
|
edited. This protects you from accidentally exiting when you still have more
|
||||||
files to work on. See |argument-list|. If you do want to exit, just do it
|
files to work on. See |argument-list|. If you do want to exit, just do it
|
||||||
again and it will work.
|
again and it will work.
|
||||||
|
|
||||||
*E23* *E194* >
|
*E23* *E194*
|
||||||
No alternate file
|
No alternate file ~
|
||||||
No alternate file name to substitute for '#'
|
No alternate file name to substitute for '#' ~
|
||||||
|
|
||||||
The alternate file is not defined yet. See |alternate-file|.
|
The alternate file is not defined yet. See |alternate-file|.
|
||||||
|
|
||||||
*E32* >
|
*E32*
|
||||||
No file name
|
No file name ~
|
||||||
|
|
||||||
The current buffer has no name. To write it, use ":w fname". Or give the
|
The current buffer has no name. To write it, use ":w fname". Or give the
|
||||||
buffer a name with ":file fname".
|
buffer a name with ":file fname".
|
||||||
|
|
||||||
*E141* >
|
*E141*
|
||||||
No file name for buffer {number}
|
No file name for buffer {number} ~
|
||||||
|
|
||||||
One of the buffers that was changed does not have a file name. Therefore it
|
One of the buffers that was changed does not have a file name. Therefore it
|
||||||
cannot be written. You need to give the buffer a file name: >
|
cannot be written. You need to give the buffer a file name: >
|
||||||
:buffer {number}
|
:buffer {number}
|
||||||
:file {filename}
|
:file {filename}
|
||||||
<
|
<
|
||||||
*E33* >
|
*E33*
|
||||||
No previous substitute regular expression
|
No previous substitute regular expression ~
|
||||||
|
|
||||||
When using the '~' character in a pattern, it is replaced with the previously
|
When using the '~' character in a pattern, it is replaced with the previously
|
||||||
used pattern in a ":substitute" command. This fails when no such command has
|
used pattern in a ":substitute" command. This fails when no such command has
|
||||||
been used yet. See |/~|. This also happens when using ":s/pat/%/", where the
|
been used yet. See |/~|. This also happens when using ":s/pat/%/", where the
|
||||||
"%" stands for the previous substitute string.
|
"%" stands for the previous substitute string.
|
||||||
|
|
||||||
*E35* >
|
*E35*
|
||||||
No previous regular expression
|
No previous regular expression ~
|
||||||
|
|
||||||
When using an empty search pattern, the previous search pattern is used. But
|
When using an empty search pattern, the previous search pattern is used. But
|
||||||
that is not possible if there was no previous search.
|
that is not possible if there was no previous search.
|
||||||
|
|
||||||
*E24* >
|
*E24*
|
||||||
No such abbreviation
|
No such abbreviation ~
|
||||||
|
|
||||||
You have used an ":unabbreviate" command with an argument which is not an
|
You have used an ":unabbreviate" command with an argument which is not an
|
||||||
existing abbreviation. All variations of this command give the same message:
|
existing abbreviation. All variations of this command give the same message:
|
||||||
":cunabbrev", ":iunabbrev", etc. Check for trailing white space.
|
":cunabbrev", ":iunabbrev", etc. Check for trailing white space.
|
||||||
|
|
||||||
>
|
|
||||||
/dev/dsp: No such file or directory
|
/dev/dsp: No such file or directory ~
|
||||||
|
|
||||||
Only given for GTK GUI with Gnome support. Gnome tries to use the audio
|
Only given for GTK GUI with Gnome support. Gnome tries to use the audio
|
||||||
device and it isn't present. You can ignore this error.
|
device and it isn't present. You can ignore this error.
|
||||||
|
|
||||||
*E31* >
|
*E31*
|
||||||
No such mapping
|
No such mapping ~
|
||||||
|
|
||||||
You have used an ":unmap" command with an argument which is not an existing
|
You have used an ":unmap" command with an argument which is not an existing
|
||||||
mapping. All variations of this command give the same message: ":cunmap",
|
mapping. All variations of this command give the same message: ":cunmap",
|
||||||
@@ -440,9 +441,9 @@ mapping. All variations of this command give the same message: ":cunmap",
|
|||||||
- If the mapping is buffer-local you need to use ":unmap <buffer>".
|
- If the mapping is buffer-local you need to use ":unmap <buffer>".
|
||||||
|:map-<buffer>|
|
|:map-<buffer>|
|
||||||
|
|
||||||
*E37* *E89* >
|
*E37* *E89*
|
||||||
No write since last change (add ! to override)
|
No write since last change (add ! to override) ~
|
||||||
No write since last change for buffer {N} (add ! to override)
|
No write since last change for buffer {N} (add ! to override) ~
|
||||||
|
|
||||||
You are trying to |abandon| a file that has changes. Vim protects you from
|
You are trying to |abandon| a file that has changes. Vim protects you from
|
||||||
losing your work. You can either write the changed file with ":w", or, if you
|
losing your work. You can either write the changed file with ":w", or, if you
|
||||||
@@ -452,8 +453,8 @@ adding a '!' character just after the command you used. Example: >
|
|||||||
changes to: >
|
changes to: >
|
||||||
:e! other_file
|
:e! other_file
|
||||||
<
|
<
|
||||||
*E162* >
|
*E162*
|
||||||
No write since last change for buffer "{name}"
|
No write since last change for buffer "{name}" ~
|
||||||
|
|
||||||
This appears when you try to exit Vim while some buffers are changed. You
|
This appears when you try to exit Vim while some buffers are changed. You
|
||||||
will either have to write the changed buffer (with |:w|), or use a command to
|
will either have to write the changed buffer (with |:w|), or use a command to
|
||||||
@@ -461,23 +462,23 @@ abandon the buffer forcefully, e.g., with ":qa!". Careful, make sure you
|
|||||||
don't throw away changes you really want to keep. You might have forgotten
|
don't throw away changes you really want to keep. You might have forgotten
|
||||||
about a buffer, especially when 'hidden' is set.
|
about a buffer, especially when 'hidden' is set.
|
||||||
|
|
||||||
>
|
|
||||||
[No write since last change]
|
[No write since last change] ~
|
||||||
|
|
||||||
This appears when executing a shell command while at least one buffer was
|
This appears when executing a shell command while at least one buffer was
|
||||||
changed. To avoid the message reset the 'warn' option.
|
changed. To avoid the message reset the 'warn' option.
|
||||||
|
|
||||||
*E38* >
|
*E38*
|
||||||
Null argument
|
Null argument ~
|
||||||
|
|
||||||
Something inside Vim went wrong and resulted in a NULL pointer. If you know
|
Something inside Vim went wrong and resulted in a NULL pointer. If you know
|
||||||
how to reproduce this problem, please report it. |bugs|
|
how to reproduce this problem, please report it. |bugs|
|
||||||
|
|
||||||
*E41* *E82* *E83* *E342* >
|
*E41* *E82* *E83* *E342*
|
||||||
Out of memory!
|
Out of memory! ~
|
||||||
Out of memory! (allocating {number} bytes)
|
Out of memory! (allocating {number} bytes) ~
|
||||||
Cannot allocate any buffer, exiting...
|
Cannot allocate any buffer, exiting... ~
|
||||||
Cannot allocate buffer, using other one...
|
Cannot allocate buffer, using other one... ~
|
||||||
|
|
||||||
Oh, oh. You must have been doing something complicated, or some other program
|
Oh, oh. You must have been doing something complicated, or some other program
|
||||||
is consuming your memory. Be careful! Vim is not completely prepared for an
|
is consuming your memory. Be careful! Vim is not completely prepared for an
|
||||||
@@ -495,16 +496,16 @@ in memory, you can reduce that with these options:
|
|||||||
helps for a change that affects all lines.
|
helps for a change that affects all lines.
|
||||||
- 'undoreload' Set to zero to disable.
|
- 'undoreload' Set to zero to disable.
|
||||||
|
|
||||||
*E339* >
|
*E339*
|
||||||
Pattern too long
|
Pattern too long ~
|
||||||
|
|
||||||
This happens on systems with 16 bit ints: The compiled regexp pattern is
|
This happens on systems with 16 bit ints: The compiled regexp pattern is
|
||||||
longer than about 65000 characters. Try using a shorter pattern.
|
longer than about 65000 characters. Try using a shorter pattern.
|
||||||
It also happens when the offset of a rule doesn't fit in the space available.
|
It also happens when the offset of a rule doesn't fit in the space available.
|
||||||
Try simplifying the pattern.
|
Try simplifying the pattern.
|
||||||
|
|
||||||
*E45* >
|
*E45*
|
||||||
'readonly' option is set (add ! to override)
|
'readonly' option is set (add ! to override) ~
|
||||||
|
|
||||||
You are trying to write a file that was marked as read-only. To write the
|
You are trying to write a file that was marked as read-only. To write the
|
||||||
file anyway, either reset the 'readonly' option, or add a '!' character just
|
file anyway, either reset the 'readonly' option, or add a '!' character just
|
||||||
@@ -513,18 +514,18 @@ after the command you used. Example: >
|
|||||||
changes to: >
|
changes to: >
|
||||||
:w!
|
:w!
|
||||||
<
|
<
|
||||||
*E294* *E295* *E301* >
|
*E294* *E295* *E301*
|
||||||
Read error in swap file
|
Read error in swap file ~
|
||||||
Seek error in swap file read
|
Seek error in swap file read ~
|
||||||
Oops, lost the swap file!!!
|
Oops, lost the swap file!!! ~
|
||||||
|
|
||||||
Vim tried to read text from the |swap-file|, but something went wrong. The
|
Vim tried to read text from the |swap-file|, but something went wrong. The
|
||||||
text in the related buffer may now be corrupted! Check carefully before you
|
text in the related buffer may now be corrupted! Check carefully before you
|
||||||
write a buffer. You may want to write it in another file and check for
|
write a buffer. You may want to write it in another file and check for
|
||||||
differences.
|
differences.
|
||||||
|
|
||||||
*E192* >
|
*E192*
|
||||||
Recursive use of :normal too deep
|
Recursive use of :normal too deep ~
|
||||||
|
|
||||||
You are using a ":normal" command, whose argument again uses a ":normal"
|
You are using a ":normal" command, whose argument again uses a ":normal"
|
||||||
command in a recursive way. This is restricted to 'maxmapdepth' levels. This
|
command in a recursive way. This is restricted to 'maxmapdepth' levels. This
|
||||||
@@ -532,16 +533,16 @@ example illustrates how to get this message: >
|
|||||||
:map gq :normal gq<CR>
|
:map gq :normal gq<CR>
|
||||||
If you type "gq", it will execute this mapping, which will call "gq" again.
|
If you type "gq", it will execute this mapping, which will call "gq" again.
|
||||||
|
|
||||||
*E22* >
|
*E22*
|
||||||
Scripts nested too deep
|
Scripts nested too deep ~
|
||||||
|
|
||||||
Scripts can be read with the "-s" command-line argument and with the ":source"
|
Scripts can be read with the "-s" command-line argument and with the
|
||||||
command. The script can then again read another script. This can continue
|
`:source!` command. The script can then again read another script. This can
|
||||||
for about 14 levels. When more nesting is done, Vim assumes that there is a
|
continue for about 14 levels. When more nesting is done, Vim assumes that
|
||||||
recursive loop somewhere and stops with this error message.
|
there is a recursive loop and stops with this error message.
|
||||||
|
|
||||||
*E319* >
|
*E319*
|
||||||
Sorry, the command is not available in this version
|
Sorry, the command is not available in this version ~
|
||||||
|
|
||||||
You have used a command that is not present in the version of Vim you are
|
You have used a command that is not present in the version of Vim you are
|
||||||
using. When compiling Vim, many different features can be enabled or
|
using. When compiling Vim, many different features can be enabled or
|
||||||
@@ -549,8 +550,8 @@ disabled. This depends on how big Vim has chosen to be and the operating
|
|||||||
system. See |+feature-list| for when which feature is available. The
|
system. See |+feature-list| for when which feature is available. The
|
||||||
|:version| command shows which feature Vim was compiled with.
|
|:version| command shows which feature Vim was compiled with.
|
||||||
|
|
||||||
*E300* >
|
*E300*
|
||||||
Swap file already exists (symlink attack?)
|
Swap file already exists (symlink attack?) ~
|
||||||
|
|
||||||
This message appears when Vim is trying to open a swap file and finds it
|
This message appears when Vim is trying to open a swap file and finds it
|
||||||
already exists or finds a symbolic link in its place. This shouldn't happen,
|
already exists or finds a symbolic link in its place. This shouldn't happen,
|
||||||
@@ -559,8 +560,8 @@ opened the same file at exactly the same moment (very unlikely) or someone is
|
|||||||
attempting a symlink attack (could happen when editing a file in /tmp or when
|
attempting a symlink attack (could happen when editing a file in /tmp or when
|
||||||
'directory' starts with "/tmp", which is a bad choice).
|
'directory' starts with "/tmp", which is a bad choice).
|
||||||
|
|
||||||
*E432* >
|
*E432*
|
||||||
Tags file not sorted: {file name}
|
Tags file not sorted: {file name} ~
|
||||||
|
|
||||||
Vim (and Vi) expect tags files to be sorted in ASCII order. Binary searching
|
Vim (and Vi) expect tags files to be sorted in ASCII order. Binary searching
|
||||||
can then be used, which is a lot faster than a linear search. If your tags
|
can then be used, which is a lot faster than a linear search. If your tags
|
||||||
@@ -569,21 +570,21 @@ This message is only given when Vim detects a problem when searching for a
|
|||||||
tag. Sometimes this message is not given, even though the tags file is not
|
tag. Sometimes this message is not given, even though the tags file is not
|
||||||
properly sorted.
|
properly sorted.
|
||||||
|
|
||||||
*E424* >
|
*E424*
|
||||||
Too many different highlighting attributes in use
|
Too many different highlighting attributes in use ~
|
||||||
|
|
||||||
Vim can only handle about 223 different kinds of highlighting. If you run
|
Vim can only handle about 223 different kinds of highlighting. If you run
|
||||||
into this limit, you have used too many |:highlight| commands with different
|
into this limit, you have used too many |:highlight| commands with different
|
||||||
arguments. A ":highlight link" is not counted.
|
arguments. A ":highlight link" is not counted.
|
||||||
|
|
||||||
*E77* >
|
*E77*
|
||||||
Too many file names
|
Too many file names ~
|
||||||
|
|
||||||
When expanding file names, more than one match was found. Only one match is
|
When expanding file names, more than one match was found. Only one match is
|
||||||
allowed for the command that was used.
|
allowed for the command that was used.
|
||||||
|
|
||||||
*E303* >
|
*E303*
|
||||||
Unable to open swap file for "{filename}", recovery impossible
|
Unable to open swap file for "{filename}", recovery impossible ~
|
||||||
|
|
||||||
Vim was not able to create a swap file. You can still edit the file, but if
|
Vim was not able to create a swap file. You can still edit the file, but if
|
||||||
Vim unexpectedly exits the changes will be lost. And Vim may consume a lot of
|
Vim unexpectedly exits the changes will be lost. And Vim may consume a lot of
|
||||||
@@ -591,25 +592,25 @@ memory when editing a big file. You may want to change the 'directory' option
|
|||||||
to avoid this error. This error is not given when 'directory' is empty. See
|
to avoid this error. This error is not given when 'directory' is empty. See
|
||||||
|swap-file|.
|
|swap-file|.
|
||||||
|
|
||||||
*E140* >
|
*E140*
|
||||||
Use ! to write partial buffer
|
Use ! to write partial buffer ~
|
||||||
|
|
||||||
When using a range to write part of a buffer, it is unusual to overwrite the
|
When using a range to write part of a buffer, it is unusual to overwrite the
|
||||||
original file. It is probably a mistake (e.g., when Visual mode was active
|
original file. It is probably a mistake (e.g., when Visual mode was active
|
||||||
when using ":w"), therefore Vim requires using a ! after the command, e.g.:
|
when using ":w"), therefore Vim requires using a ! after the command, e.g.:
|
||||||
":3,10w!".
|
":3,10w!".
|
||||||
>
|
|
||||||
|
|
||||||
Warning: Cannot convert string "<Key>Escape,_Key_Cancel" to type
|
|
||||||
VirtualBinding
|
Warning: Cannot convert string "<Key>Escape,_Key_Cancel" to type ~
|
||||||
|
VirtualBinding ~
|
||||||
|
|
||||||
Messages like this appear when starting up. This is not a Vim problem, your
|
Messages like this appear when starting up. This is not a Vim problem, your
|
||||||
X11 configuration is wrong. You can find a hint on how to solve this here:
|
X11 configuration is wrong. You can find a hint on how to solve this here:
|
||||||
http://groups.yahoo.com/group/solarisonintel/message/12179.
|
http://groups.yahoo.com/group/solarisonintel/message/12179.
|
||||||
[this URL is no longer valid]
|
[this URL is no longer valid]
|
||||||
|
|
||||||
*W10* >
|
*W10*
|
||||||
Warning: Changing a readonly file
|
Warning: Changing a readonly file ~
|
||||||
|
|
||||||
The file is read-only and you are making a change to it anyway. You can use
|
The file is read-only and you are making a change to it anyway. You can use
|
||||||
the |FileChangedRO| autocommand event to avoid this message (the autocommand
|
the |FileChangedRO| autocommand event to avoid this message (the autocommand
|
||||||
@@ -617,15 +618,15 @@ must reset the 'readonly' option). See 'modifiable' to completely disallow
|
|||||||
making changes to a file.
|
making changes to a file.
|
||||||
This message is only given for the first change after 'readonly' has been set.
|
This message is only given for the first change after 'readonly' has been set.
|
||||||
|
|
||||||
*W13* >
|
*W13*
|
||||||
Warning: File "{filename}" has been created after editing started
|
Warning: File "{filename}" has been created after editing started ~
|
||||||
|
|
||||||
You are editing a file in Vim when it didn't exist, but it does exist now.
|
You are editing a file in Vim when it didn't exist, but it does exist now.
|
||||||
You will have to decide if you want to keep the version in Vim or the newly
|
You will have to decide if you want to keep the version in Vim or the newly
|
||||||
created file. This message is not given when 'buftype' is not empty.
|
created file. This message is not given when 'buftype' is not empty.
|
||||||
|
|
||||||
*W11* >
|
*W11*
|
||||||
Warning: File "{filename}" has changed since editing started
|
Warning: File "{filename}" has changed since editing started ~
|
||||||
|
|
||||||
The file which you have started editing has got another timestamp and the
|
The file which you have started editing has got another timestamp and the
|
||||||
contents changed (more precisely: When reading the file again with the current
|
contents changed (more precisely: When reading the file again with the current
|
||||||
@@ -648,15 +649,15 @@ starts. It can be fixed in one of these ways:
|
|||||||
If you get W11 all the time, you may need to disable "Acronis Active
|
If you get W11 all the time, you may need to disable "Acronis Active
|
||||||
Protection" or register Vim as a trusted service/application.
|
Protection" or register Vim as a trusted service/application.
|
||||||
|
|
||||||
*W12* >
|
*W12*
|
||||||
Warning: File "{filename}" has changed and the buffer was changed in Vim as well
|
Warning: File "{filename}" has changed and the buffer was changed in Vim as well ~
|
||||||
|
|
||||||
Like the above, and the buffer for the file was changed in this Vim as well.
|
Like the above, and the buffer for the file was changed in this Vim as well.
|
||||||
You will have to decide if you want to keep the version in this Vim or the one
|
You will have to decide if you want to keep the version in this Vim or the one
|
||||||
on disk. This message is not given when 'buftype' is not empty.
|
on disk. This message is not given when 'buftype' is not empty.
|
||||||
|
|
||||||
*W16* >
|
*W16*
|
||||||
Warning: Mode of file "{filename}" has changed since editing started
|
Warning: Mode of file "{filename}" has changed since editing started ~
|
||||||
|
|
||||||
When the timestamp for a buffer was changed and the contents are still the
|
When the timestamp for a buffer was changed and the contents are still the
|
||||||
same but the mode (permissions) have changed. This usually occurs when
|
same but the mode (permissions) have changed. This usually occurs when
|
||||||
@@ -664,37 +665,37 @@ checking out a file from a version control system, which causes the read-only
|
|||||||
bit to be reset. It should be safe to reload the file. Set 'autoread' to
|
bit to be reset. It should be safe to reload the file. Set 'autoread' to
|
||||||
automatically reload the file.
|
automatically reload the file.
|
||||||
|
|
||||||
*E211* >
|
*E211*
|
||||||
File "{filename}" no longer available
|
File "{filename}" no longer available ~
|
||||||
|
|
||||||
The file which you have started editing has disappeared, or is no longer
|
The file which you have started editing has disappeared, or is no longer
|
||||||
accessible. Make sure you write the buffer somewhere to avoid losing
|
accessible. Make sure you write the buffer somewhere to avoid losing
|
||||||
changes. This message is not given when 'buftype' is not empty.
|
changes. This message is not given when 'buftype' is not empty.
|
||||||
|
|
||||||
*W14* >
|
*W14*
|
||||||
Warning: List of file names overflow
|
Warning: List of file names overflow ~
|
||||||
|
|
||||||
You must be using an awful lot of buffers. It's now possible that two buffers
|
You must be using an awful lot of buffers. It's now possible that two buffers
|
||||||
have the same number, which causes various problems. You might want to exit
|
have the same number, which causes various problems. You might want to exit
|
||||||
Vim and restart it.
|
Vim and restart it.
|
||||||
|
|
||||||
*E931* >
|
*E931*
|
||||||
Buffer cannot be registered
|
Buffer cannot be registered ~
|
||||||
|
|
||||||
Out of memory or a duplicate buffer number. May happen after W14. Looking up
|
Out of memory or a duplicate buffer number. May happen after W14. Looking up
|
||||||
a buffer will not always work, better restart Vim.
|
a buffer will not always work, better restart Vim.
|
||||||
|
|
||||||
*E296* *E297* >
|
*E296* *E297*
|
||||||
Seek error in swap file write
|
Seek error in swap file write ~
|
||||||
Write error in swap file
|
Write error in swap file ~
|
||||||
|
|
||||||
This mostly happens when the disk is full. Vim could not write text into the
|
This mostly happens when the disk is full. Vim could not write text into the
|
||||||
|swap-file|. It's not directly harmful, but when Vim unexpectedly exits some
|
|swap-file|. It's not directly harmful, but when Vim unexpectedly exits some
|
||||||
text may be lost without recovery being possible. Vim might run out of memory
|
text may be lost without recovery being possible. Vim might run out of memory
|
||||||
when this problem persists.
|
when this problem persists.
|
||||||
|
|
||||||
*connection-refused* >
|
*connection-refused*
|
||||||
Xlib: connection to "<machine-name:0.0" refused by server
|
Xlib: connection to "<machine-name:0.0" refused by server ~
|
||||||
|
|
||||||
This happens when Vim tries to connect to the X server, but the X server does
|
This happens when Vim tries to connect to the X server, but the X server does
|
||||||
not allow a connection. The connection to the X server is needed to be able
|
not allow a connection. The connection to the X server is needed to be able
|
||||||
@@ -702,54 +703,56 @@ to restore the title and for the xterm clipboard support. Unfortunately this
|
|||||||
error message cannot be avoided, except by disabling the |+xterm_clipboard|
|
error message cannot be avoided, except by disabling the |+xterm_clipboard|
|
||||||
and |+X11| features.
|
and |+X11| features.
|
||||||
|
|
||||||
*E10* >
|
*E10*
|
||||||
\\ should be followed by /, ? or &
|
\\ should be followed by /, ? or & ~
|
||||||
|
|
||||||
A command line started with a backslash or the range of a command contained a
|
A command line started with a backslash or the range of a command contained a
|
||||||
backslash in a wrong place. This is often caused by command-line continuation
|
backslash in a wrong place. This is often caused by command-line continuation
|
||||||
being disabled. Remove the 'C' flag from the 'cpoptions' option to enable it.
|
being disabled. Remove the 'C' flag from the 'cpoptions' option to enable it.
|
||||||
Or use ":set nocp".
|
Or use ":set nocp".
|
||||||
|
|
||||||
*E471* >
|
*E471*
|
||||||
Argument required
|
Argument required ~
|
||||||
|
|
||||||
This happens when an Ex command with mandatory argument(s) was executed, but
|
This happens when an Ex command with mandatory argument(s) was executed, but
|
||||||
no argument has been specified.
|
no argument has been specified.
|
||||||
|
|
||||||
*E474* *E475* *E983* >
|
*E474* *E475* *E983*
|
||||||
Invalid argument
|
Invalid argument ~
|
||||||
Invalid argument: {arg}
|
Invalid argument: {arg} ~
|
||||||
Duplicate argument: {arg}
|
Duplicate argument: {arg} ~
|
||||||
|
|
||||||
An Ex command or function has been executed, but an invalid argument has been
|
An Ex command or function has been executed, but an invalid argument has been
|
||||||
specified.
|
specified.
|
||||||
|
|
||||||
*E488* >
|
*E488*
|
||||||
Trailing characters
|
Trailing characters ~
|
||||||
|
Trailing characters: {text} ~
|
||||||
|
|
||||||
An argument has been added to an Ex command that does not permit one.
|
An argument has been added to an Ex command that does not permit one.
|
||||||
|
Or the argument has invalid characters and has not been recognized.
|
||||||
|
|
||||||
*E477* *E478* >
|
*E477* *E478*
|
||||||
No ! allowed
|
No ! allowed ~
|
||||||
Don't panic!
|
Don't panic! ~
|
||||||
|
|
||||||
You have added a "!" after an Ex command that doesn't permit one.
|
You have added a "!" after an Ex command that doesn't permit one.
|
||||||
|
|
||||||
*E481* >
|
*E481*
|
||||||
No range allowed
|
No range allowed ~
|
||||||
|
|
||||||
A range was specified for an Ex command that doesn't permit one. See
|
A range was specified for an Ex command that doesn't permit one. See
|
||||||
|cmdline-ranges|.
|
|cmdline-ranges|.
|
||||||
|
|
||||||
*E482* *E483* >
|
*E482* *E483*
|
||||||
Can't create file {filename}
|
Can't create file {filename} ~
|
||||||
Can't get temp file name
|
Can't get temp file name ~
|
||||||
|
|
||||||
Vim cannot create a temporary file.
|
Vim cannot create a temporary file.
|
||||||
|
|
||||||
*E484* *E485* >
|
*E484* *E485*
|
||||||
Can't open file {filename}
|
Can't open file {filename} ~
|
||||||
Can't read file {filename}
|
Can't read file {filename} ~
|
||||||
|
|
||||||
Vim cannot read a temporary file. Especially on Windows, this can be caused
|
Vim cannot read a temporary file. Especially on Windows, this can be caused
|
||||||
by wrong escaping of special characters for cmd.exe; the approach was
|
by wrong escaping of special characters for cmd.exe; the approach was
|
||||||
@@ -757,8 +760,8 @@ changed with patch 7.3.443. Try using |shellescape()| for all shell arguments
|
|||||||
given to |system()|, or explicitly add escaping with ^. Also see
|
given to |system()|, or explicitly add escaping with ^. Also see
|
||||||
'shellxquote' and 'shellxescape'.
|
'shellxquote' and 'shellxescape'.
|
||||||
|
|
||||||
*E464* >
|
*E464*
|
||||||
Ambiguous use of user-defined command
|
Ambiguous use of user-defined command ~
|
||||||
|
|
||||||
There are two user-defined commands with a common name prefix, and you used
|
There are two user-defined commands with a common name prefix, and you used
|
||||||
Command-line completion to execute one of them. |user-cmd-ambiguous|
|
Command-line completion to execute one of them. |user-cmd-ambiguous|
|
||||||
@@ -767,23 +770,22 @@ Example: >
|
|||||||
:command MyCommand2 echo "two"
|
:command MyCommand2 echo "two"
|
||||||
:MyCommand
|
:MyCommand
|
||||||
<
|
<
|
||||||
*E492* >
|
*E492*
|
||||||
Not an editor command
|
Not an editor command ~
|
||||||
|
|
||||||
You tried to execute a command that is neither an Ex command nor
|
You tried to execute a command that is neither an Ex command nor
|
||||||
a user-defined command.
|
a user-defined command.
|
||||||
|
|
||||||
*E943* >
|
*E943*
|
||||||
Command table needs to be updated, run 'make cmdidxs'
|
Command table needs to be updated, run 'make cmdidxs' ~
|
||||||
|
|
||||||
This can only happen when changing the source code, when adding a command in
|
This can only happen when changing the source code, when adding a command in
|
||||||
src/ex_cmds.h. The lookup table then needs to be updated, by running: >
|
src/ex_cmds.h. The lookup table then needs to be updated, by running: >
|
||||||
make cmdidxs
|
make cmdidxs
|
||||||
<
|
<
|
||||||
*E928* *E889* *E839* >
|
*E928* *E889*
|
||||||
E928: String required
|
E928: String required ~
|
||||||
E889: Number required
|
E889: Number required ~
|
||||||
E839: Bool required
|
|
||||||
|
|
||||||
These happen when a value or expression is used that does not have the
|
These happen when a value or expression is used that does not have the
|
||||||
expected type.
|
expected type.
|
||||||
@@ -796,7 +798,7 @@ This is an (incomplete) overview of various messages that Vim gives:
|
|||||||
*hit-enter* *press-enter* *hit-return*
|
*hit-enter* *press-enter* *hit-return*
|
||||||
*press-return* *hit-enter-prompt*
|
*press-return* *hit-enter-prompt*
|
||||||
|
|
||||||
Press ENTER or type command to continue
|
Press ENTER or type command to continue ~
|
||||||
|
|
||||||
This message is given when there is something on the screen for you to read,
|
This message is given when there is something on the screen for you to read,
|
||||||
and the screen is about to be redrawn:
|
and the screen is about to be redrawn:
|
||||||
@@ -840,9 +842,9 @@ Also see 'mouse'. The hit-enter message is highlighted with the |hl-Question|
|
|||||||
group.
|
group.
|
||||||
|
|
||||||
|
|
||||||
*more-prompt* *pager* >
|
*more-prompt* *pager*
|
||||||
-- More --
|
-- More -- ~
|
||||||
-- More -- SPACE/d/j: screen/page/line down, b/u/k: up, q: quit
|
-- More -- SPACE/d/j: screen/page/line down, b/u/k: up, q: quit ~
|
||||||
|
|
||||||
This message is given when the screen is filled with messages. It is only
|
This message is given when the screen is filled with messages. It is only
|
||||||
given when the 'more' option is on. It is highlighted with the |hl-MoreMsg|
|
given when the 'more' option is on. It is highlighted with the |hl-MoreMsg|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*motion.txt* For Vim version 8.2. Last change: 2021 Jun 13
|
*motion.txt* For Vim version 8.2. Last change: 2021 Dec 27
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -386,6 +386,8 @@ w [count] words forward. |exclusive| motion.
|
|||||||
|
|
||||||
<C-Right> or *<C-Right>* *W*
|
<C-Right> or *<C-Right>* *W*
|
||||||
W [count] WORDS forward. |exclusive| motion.
|
W [count] WORDS forward. |exclusive| motion.
|
||||||
|
If <C-Right> does not work, check out
|
||||||
|
|arrow_modifiers|.
|
||||||
|
|
||||||
*e*
|
*e*
|
||||||
e Forward to the end of word [count] |inclusive|.
|
e Forward to the end of word [count] |inclusive|.
|
||||||
@@ -400,6 +402,8 @@ b [count] words backward. |exclusive| motion.
|
|||||||
|
|
||||||
<C-Left> or *<C-Left>* *B*
|
<C-Left> or *<C-Left>* *B*
|
||||||
B [count] WORDS backward. |exclusive| motion.
|
B [count] WORDS backward. |exclusive| motion.
|
||||||
|
If <C-Left> does not work, check out
|
||||||
|
|arrow_modifiers|.
|
||||||
|
|
||||||
*ge*
|
*ge*
|
||||||
ge Backward to the end of word [count] |inclusive|.
|
ge Backward to the end of word [count] |inclusive|.
|
||||||
@@ -784,6 +788,9 @@ m< or m> Set the |'<| or |'>| mark. Useful to change what the
|
|||||||
*:k*
|
*:k*
|
||||||
:[range]k{a-zA-Z'} Same as :mark, but the space before the mark name can
|
:[range]k{a-zA-Z'} Same as :mark, but the space before the mark name can
|
||||||
be omitted.
|
be omitted.
|
||||||
|
This command is not supported in |Vim9| script,
|
||||||
|
because it is too easily confused with a variable
|
||||||
|
name.
|
||||||
|
|
||||||
*'* *'a* *`* *`a*
|
*'* *'a* *`* *`a*
|
||||||
'{a-z} `{a-z} Jump to the mark {a-z} in the current buffer.
|
'{a-z} `{a-z} Jump to the mark {a-z} in the current buffer.
|
||||||
@@ -1012,7 +1019,7 @@ These commands are not marks themselves, but jump to a mark:
|
|||||||
:let lnum = line(".")
|
:let lnum = line(".")
|
||||||
:keepjumps normal gg
|
:keepjumps normal gg
|
||||||
:call SetLastChange()
|
:call SetLastChange()
|
||||||
:keepjumps exe "normal " . lnum . "G"
|
:keepjumps exe "normal " .. lnum .. "G"
|
||||||
<
|
<
|
||||||
Note that ":keepjumps" must be used for every command.
|
Note that ":keepjumps" must be used for every command.
|
||||||
When invoking a function the commands in that function
|
When invoking a function the commands in that function
|
||||||
@@ -1034,12 +1041,10 @@ commands that start editing a new file.
|
|||||||
*CTRL-O*
|
*CTRL-O*
|
||||||
CTRL-O Go to [count] Older cursor position in jump list
|
CTRL-O Go to [count] Older cursor position in jump list
|
||||||
(not a motion command).
|
(not a motion command).
|
||||||
{not available without the |+jumplist| feature}
|
|
||||||
|
|
||||||
<Tab> or *CTRL-I* *<Tab>*
|
<Tab> or *CTRL-I* *<Tab>*
|
||||||
CTRL-I Go to [count] newer cursor position in jump list
|
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}
|
|
||||||
|
|
||||||
NOTE: In the GUI and in a terminal supporting
|
NOTE: In the GUI and in a terminal supporting
|
||||||
|modifyOtherKeys|, CTRL-I can be mapped separately
|
|modifyOtherKeys|, CTRL-I can be mapped separately
|
||||||
@@ -1049,18 +1054,15 @@ CTRL-I Go to [count] newer cursor position in jump list
|
|||||||
|
|
||||||
*: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}
|
|
||||||
|
|
||||||
*:cle* *:clearjumps*
|
*:cle* *:clearjumps*
|
||||||
:cle[arjumps] Clear the jump list of the current window.
|
:cle[arjumps] Clear the jump list of the current window.
|
||||||
{not available without the |+jumplist| feature}
|
|
||||||
|
|
||||||
*jumplist*
|
*jumplist*
|
||||||
Jumps are remembered in a jump list. With the CTRL-O and CTRL-I command you
|
Jumps are remembered in a jump list. With the CTRL-O and CTRL-I command you
|
||||||
can go to cursor positions before older jumps, and back again. Thus you can
|
can go to cursor positions before older jumps, and back again. Thus you can
|
||||||
move up and down the list. There is a separate jump list for each window.
|
move up and down the list. There is a separate jump list for each window.
|
||||||
The maximum number of entries is fixed at 100.
|
The maximum number of entries is fixed at 100.
|
||||||
{not available without the |+jumplist| feature}
|
|
||||||
|
|
||||||
For example, after three jump commands you have this jump list:
|
For example, after three jump commands you have this jump list:
|
||||||
|
|
||||||
@@ -1137,13 +1139,11 @@ g; Go to [count] older position in change list.
|
|||||||
positions go to the oldest change.
|
positions go to the oldest change.
|
||||||
If there is no older change an error message is given.
|
If there is no older change an error message is given.
|
||||||
(not a motion command)
|
(not a motion command)
|
||||||
{not available without the |+jumplist| feature}
|
|
||||||
|
|
||||||
*g,* *E663*
|
*g,* *E663*
|
||||||
g, Go to [count] newer cursor position in change list.
|
g, Go to [count] newer cursor position in change list.
|
||||||
Just like |g;| but in the opposite direction.
|
Just like |g;| but in the opposite direction.
|
||||||
(not a motion command)
|
(not a motion command)
|
||||||
{not available without the |+jumplist| feature}
|
|
||||||
|
|
||||||
When using a count you jump as far back or forward as possible. Thus you can
|
When using a count you jump as far back or forward as possible. Thus you can
|
||||||
use "999g;" to go to the first change for which the position is still
|
use "999g;" to go to the first change for which the position is still
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*options.txt* For Vim version 8.2. Last change: 2021 Nov 24
|
*options.txt* For Vim version 8.2. Last change: 2022 Mar 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -35,6 +35,8 @@ achieve special effects. These options come in three forms:
|
|||||||
internally and can't be changed. Changing the terminal
|
internally and can't be changed. Changing the terminal
|
||||||
codes in the GUI is not useful either...
|
codes in the GUI is not useful either...
|
||||||
|
|
||||||
|
:se[t]! termcap Idem, but don't use multiple columns.
|
||||||
|
|
||||||
*E518* *E519*
|
*E518* *E519*
|
||||||
:se[t] {option}? Show value of {option}.
|
:se[t] {option}? Show value of {option}.
|
||||||
|
|
||||||
@@ -168,7 +170,7 @@ When a key code is not set, it's like it does not exist. Trying to get its
|
|||||||
value will result in an error: >
|
value will result in an error: >
|
||||||
:set t_kb=
|
:set t_kb=
|
||||||
:set t_kb
|
:set t_kb
|
||||||
E846: Key code not set: t_kb
|
< E846: Key code not set: t_kb ~
|
||||||
|
|
||||||
The t_xx options cannot be set from a |modeline| or in the |sandbox|, for
|
The t_xx options cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
@@ -367,28 +369,43 @@ value to the local value, it doesn't switch back to using the global value
|
|||||||
This will make the local value of 'path' empty, so that the global value is
|
This will make the local value of 'path' empty, so that the global value is
|
||||||
used. Thus it does the same as: >
|
used. Thus it does the same as: >
|
||||||
:setlocal path=
|
:setlocal path=
|
||||||
Note: In the future more global options can be made global-local. Using
|
Note: In the future more global options can be made |global-local|. Using
|
||||||
":setlocal" on a global option might work differently then.
|
":setlocal" on a global option might work differently then.
|
||||||
|
|
||||||
|
|
||||||
*option-value-function*
|
*option-value-function*
|
||||||
Some options ('completefunc', 'imactivatefunc', 'imstatusfunc', 'omnifunc',
|
Some options ('completefunc', 'imactivatefunc', 'imstatusfunc', 'omnifunc',
|
||||||
'operatorfunc', 'quickfixtextfunc' and 'tagfunc') are set to a function name
|
'operatorfunc', 'quickfixtextfunc', 'tagfunc' and 'thesaurusfunc') are set to
|
||||||
or a function reference or a lambda function. Examples:
|
a function name or a function reference or a lambda function. When using a
|
||||||
|
lambda it will be converted to the name, e.g. "<lambda>123". Examples:
|
||||||
>
|
>
|
||||||
set opfunc=MyOpFunc
|
set opfunc=MyOpFunc
|
||||||
set opfunc=function('MyOpFunc')
|
set opfunc=function('MyOpFunc')
|
||||||
set opfunc=funcref('MyOpFunc')
|
set opfunc=funcref('MyOpFunc')
|
||||||
set opfunc={a\ ->\ MyOpFunc(a)}
|
set opfunc={a\ ->\ MyOpFunc(a)}
|
||||||
" set using a funcref variable
|
|
||||||
|
Set to a script-local function: >
|
||||||
|
set opfunc=s:MyLocalFunc
|
||||||
|
set opfunc=<SID>MyLocalFunc
|
||||||
|
In |Vim9| script the "s:" and "<SID>" can be omitted if the function exists in
|
||||||
|
the script: >
|
||||||
|
set opfunc=MyLocalFunc
|
||||||
|
|
||||||
|
Set using a funcref variable: >
|
||||||
let Fn = function('MyTagFunc')
|
let Fn = function('MyTagFunc')
|
||||||
let &tagfunc = string(Fn)
|
let &tagfunc = Fn
|
||||||
" set using a lambda expression
|
|
||||||
let &tagfunc = "{t -> MyTagFunc(t)}"
|
Set using a lambda expression: >
|
||||||
" set using a variable with lambda expression
|
let &tagfunc = {t -> MyTagFunc(t)}
|
||||||
|
|
||||||
|
Set using a variable with lambda expression: >
|
||||||
let L = {a, b, c -> MyTagFunc(a, b , c)}
|
let L = {a, b, c -> MyTagFunc(a, b , c)}
|
||||||
let &tagfunc = string(L)
|
let &tagfunc = L
|
||||||
<
|
|
||||||
|
In Vim9 script, in a compiled function, you can use a lambda, but a
|
||||||
|
closured does not work, because the function will be called without the
|
||||||
|
context of where it was defined.
|
||||||
|
|
||||||
|
|
||||||
Setting the filetype
|
Setting the filetype
|
||||||
|
|
||||||
@@ -793,6 +810,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
need proper setting-up, so whenever the shell's pwd changes an OSC 7
|
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
|
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.
|
/etc/profile.d/vte.sh in your shell profile if you use bash or zsh.
|
||||||
|
When the parsing of the OSC sequence fails you get *E1179* .
|
||||||
|
|
||||||
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
|
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
|
||||||
'arabic' 'arab' boolean (default off)
|
'arabic' 'arab' boolean (default off)
|
||||||
@@ -869,9 +887,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'autowrite' 'aw' boolean (default off)
|
'autowrite' 'aw' boolean (default off)
|
||||||
global
|
global
|
||||||
Write the contents of the file, if it has been modified, on each
|
Write the contents of the file, if it has been modified, on each
|
||||||
:next, :rewind, :last, :first, :previous, :stop, :suspend, :tag, :!,
|
`:next`, `:rewind`, `:last`, `:first`, `:previous`, `:stop`,
|
||||||
:make, CTRL-] and CTRL-^ command; and when a :buffer, CTRL-O, CTRL-I,
|
`:suspend`, `:tag`, `:!`, `:make`, CTRL-] and CTRL-^ command; and when
|
||||||
'{A-Z0-9}, or `{A-Z0-9} command takes one to another file.
|
a `:buffer`, CTRL-O, CTRL-I, '{A-Z0-9}, or `{A-Z0-9} command takes one
|
||||||
|
to another file.
|
||||||
|
A buffer is not written if it becomes hidden, e.g. when 'bufhidden' is
|
||||||
|
set to "hide" and `:next` is used.
|
||||||
Note that for some commands the 'autowrite' option is not used, see
|
Note that for some commands the 'autowrite' option is not used, see
|
||||||
'autowriteall' for that.
|
'autowriteall' for that.
|
||||||
Some buffers will not be written, specifically when 'buftype' is
|
Some buffers will not be written, specifically when 'buftype' is
|
||||||
@@ -1121,7 +1142,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
If you like to keep a lot of backups, you could use a BufWritePre
|
If you like to keep a lot of backups, you could use a BufWritePre
|
||||||
autocommand to change 'backupext' just before writing the file to
|
autocommand to change 'backupext' just before writing the file to
|
||||||
include a timestamp. >
|
include a timestamp. >
|
||||||
:au BufWritePre * let &bex = '-' . strftime("%Y%b%d%X") . '~'
|
:au BufWritePre * let &bex = '-' .. strftime("%Y%b%d%X") .. '~'
|
||||||
< Use 'backupdir' to put the backup in a different directory.
|
< Use 'backupdir' to put the backup in a different directory.
|
||||||
|
|
||||||
*'backupskip'* *'bsk'*
|
*'backupskip'* *'bsk'*
|
||||||
@@ -1146,7 +1167,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|
|
||||||
Note that environment variables are not expanded. If you want to use
|
Note that environment variables are not expanded. If you want to use
|
||||||
$HOME you must expand it explicitly, e.g.: >
|
$HOME you must expand it explicitly, e.g.: >
|
||||||
:let &backupskip = escape(expand('$HOME'), '\') . '/tmp/*'
|
:let &backupskip = escape(expand('$HOME'), '\') .. '/tmp/*'
|
||||||
|
|
||||||
< Note that the default also makes sure that "crontab -e" works (when a
|
< Note that the default also makes sure that "crontab -e" works (when a
|
||||||
backup would be made by renaming the original file crontab won't see
|
backup would be made by renaming the original file crontab won't see
|
||||||
@@ -1197,10 +1218,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
The evaluation of the expression must not have side effects!
|
The evaluation of the expression must not have side effects!
|
||||||
Example: >
|
Example: >
|
||||||
function MyBalloonExpr()
|
function MyBalloonExpr()
|
||||||
return 'Cursor is at line ' . v:beval_lnum .
|
return 'Cursor is at line ' .. v:beval_lnum ..
|
||||||
\', column ' . v:beval_col .
|
\ ', column ' .. v:beval_col ..
|
||||||
\ ' of file ' . bufname(v:beval_bufnr) .
|
\ ' of file ' .. bufname(v:beval_bufnr) ..
|
||||||
\ ' on word "' . v:beval_text . '"'
|
\ ' on word "' .. v:beval_text .. '"'
|
||||||
endfunction
|
endfunction
|
||||||
set bexpr=MyBalloonExpr()
|
set bexpr=MyBalloonExpr()
|
||||||
set ballooneval
|
set ballooneval
|
||||||
@@ -1215,6 +1236,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Vim does not try to send a message to an external debugger (Netbeans
|
Vim does not try to send a message to an external debugger (Netbeans
|
||||||
or Sun Workshop).
|
or Sun Workshop).
|
||||||
|
|
||||||
|
If the expression starts with s: or |<SID>|, then it is replaced with
|
||||||
|
the script ID (|local-function|). Example: >
|
||||||
|
set bexpr=s:MyBalloonExpr()
|
||||||
|
set bexpr=<SID>SomeBalloonExpr()
|
||||||
|
< Otherwise, the expression is evaluated in the context of the script
|
||||||
|
where the option was set, thus script-local items are available.
|
||||||
|
|
||||||
The expression will be evaluated in the |sandbox| when set from a
|
The expression will be evaluated in the |sandbox| when set from a
|
||||||
modeline, see |sandbox-option|.
|
modeline, see |sandbox-option|.
|
||||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||||
@@ -1355,6 +1383,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
text should normally be narrower. This prevents
|
text should normally be narrower. This prevents
|
||||||
text indented almost to the right window border
|
text indented almost to the right window border
|
||||||
occupying lot of vertical space when broken.
|
occupying lot of vertical space when broken.
|
||||||
|
(default: 20)
|
||||||
shift:{n} After applying 'breakindent', the wrapped line's
|
shift:{n} After applying 'breakindent', the wrapped line's
|
||||||
beginning will be shifted by the given number of
|
beginning will be shifted by the given number of
|
||||||
characters. It permits dynamic French paragraph
|
characters. It permits dynamic French paragraph
|
||||||
@@ -1483,6 +1512,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
case mapping, the current locale is not effective.
|
case mapping, the current locale is not effective.
|
||||||
This probably only matters for Turkish.
|
This probably only matters for Turkish.
|
||||||
|
|
||||||
|
*'cdhome'* *'cdh'*
|
||||||
|
'cdhome' 'cdh' boolean (default: off)
|
||||||
|
global
|
||||||
|
When on, |:cd|, |:tcd| and |:lcd| without an argument changes the
|
||||||
|
current working directory to the |$HOME| directory like in Unix.
|
||||||
|
When off, those commands just print the current directory name.
|
||||||
|
On Unix this option has no effect.
|
||||||
|
NOTE: This option is reset when 'compatible' is set.
|
||||||
|
|
||||||
*'cdpath'* *'cd'* *E344* *E346*
|
*'cdpath'* *'cd'* *E344* *E346*
|
||||||
'cdpath' 'cd' string (default: equivalent to $CDPATH or ",,")
|
'cdpath' 'cd' string (default: equivalent to $CDPATH or ",,")
|
||||||
global
|
global
|
||||||
@@ -1499,7 +1537,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
If the default value taken from $CDPATH is not what you want, include
|
If the default value taken from $CDPATH is not what you want, include
|
||||||
a modified version of the following command in your vimrc file to
|
a modified version of the following command in your vimrc file to
|
||||||
override it: >
|
override it: >
|
||||||
:let &cdpath = ',' . substitute(substitute($CDPATH, '[, ]', '\\\0', 'g'), ':', ',', 'g')
|
:let &cdpath = ',' .. substitute(substitute($CDPATH, '[, ]', '\\\0', 'g'), ':', ',', 'g')
|
||||||
< 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.
|
||||||
(parts of 'cdpath' can be passed to the shell to expand file names).
|
(parts of 'cdpath' can be passed to the shell to expand file names).
|
||||||
@@ -1531,8 +1569,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
preferred, because it is much faster.
|
preferred, because it is much faster.
|
||||||
'charconvert' is not used when reading stdin |--|, because there is no
|
'charconvert' is not used when reading stdin |--|, because there is no
|
||||||
file to convert from. You will have to save the text in a file first.
|
file to convert from. You will have to save the text in a file first.
|
||||||
The expression must return zero or an empty string for success,
|
The expression must return zero, false or an empty string for success,
|
||||||
non-zero for failure.
|
non-zero or true for failure.
|
||||||
The possible encoding names encountered are in 'encoding'.
|
The possible encoding names encountered are in 'encoding'.
|
||||||
Additionally, names given in 'fileencodings' and 'fileencoding' are
|
Additionally, names given in 'fileencodings' and 'fileencoding' are
|
||||||
used.
|
used.
|
||||||
@@ -1544,8 +1582,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
set charconvert=CharConvert()
|
set charconvert=CharConvert()
|
||||||
fun CharConvert()
|
fun CharConvert()
|
||||||
system("recode "
|
system("recode "
|
||||||
\ . v:charconvert_from . ".." . v:charconvert_to
|
\ .. v:charconvert_from .. ".." .. v:charconvert_to
|
||||||
\ . " <" . v:fname_in . " >" v:fname_out)
|
\ .. " <" .. v:fname_in .. " >" .. v:fname_out)
|
||||||
return v:shell_error
|
return v:shell_error
|
||||||
endfun
|
endfun
|
||||||
< The related Vim variables are:
|
< The related Vim variables are:
|
||||||
@@ -1556,9 +1594,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Note that v:fname_in and v:fname_out will never be the same.
|
Note that v:fname_in and v:fname_out will never be the same.
|
||||||
Note that v:charconvert_from and v:charconvert_to may be different
|
Note that v:charconvert_from and v:charconvert_to may be different
|
||||||
from 'encoding'. Vim internally uses UTF-8 instead of UCS-2 or UCS-4.
|
from 'encoding'. Vim internally uses UTF-8 instead of UCS-2 or UCS-4.
|
||||||
|
|
||||||
Encryption is not done by Vim when using 'charconvert'. If you want
|
Encryption is not done by Vim when using 'charconvert'. If you want
|
||||||
to encrypt the file after conversion, 'charconvert' should take care
|
to encrypt the file after conversion, 'charconvert' should take care
|
||||||
of this.
|
of this.
|
||||||
|
|
||||||
|
If the 'charconvert' expression starts with s: or |<SID>|, then it is
|
||||||
|
replaced with the script ID (|local-function|). Example: >
|
||||||
|
set charconvert=s:MyConvert()
|
||||||
|
set charconvert=<SID>SomeConvert()
|
||||||
|
< Otherwise the expression is evaluated in the context of the script
|
||||||
|
where the option was set, thus script-local items are available.
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
@@ -1824,6 +1871,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'balloonexpr' + "" text to show in evaluation balloon
|
'balloonexpr' + "" text to show in evaluation balloon
|
||||||
'breakindent' + off don't indent when wrapping lines
|
'breakindent' + off don't indent when wrapping lines
|
||||||
'cedit' - {unchanged} {set vim default only on resetting 'cp'}
|
'cedit' - {unchanged} {set vim default only on resetting 'cp'}
|
||||||
|
'cdhome' + off ":cd" don't chdir to home on non-Unix
|
||||||
'cindent' + off no C code indentation
|
'cindent' + off no C code indentation
|
||||||
'compatible' - {unchanged} {set vim default only on resetting 'cp'}
|
'compatible' - {unchanged} {set vim default only on resetting 'cp'}
|
||||||
'copyindent' + off don't copy indent structure
|
'copyindent' + off don't copy indent structure
|
||||||
@@ -1939,7 +1987,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
This option specifies a function to be used for Insert mode completion
|
This option specifies a function to be used for Insert mode completion
|
||||||
with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U|
|
with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U|
|
||||||
See |complete-functions| for an explanation of how the function is
|
See |complete-functions| for an explanation of how the function is
|
||||||
invoked and what it should return.
|
invoked and what it should return. The value can be the name of a
|
||||||
|
function, a |lambda| or a |Funcref|. See |option-value-function| for
|
||||||
|
more information.
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
|
|
||||||
@@ -2106,8 +2156,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Commas can be added for readability.
|
Commas can be added for readability.
|
||||||
To avoid problems with flags that are added in the future, use the
|
To avoid problems with flags that are added in the future, use the
|
||||||
"+=" and "-=" feature of ":set" |add-option-flags|.
|
"+=" and "-=" feature of ":set" |add-option-flags|.
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
|
NOTE: In a |Vim9| script, when `vim9script` is encountered, the value
|
||||||
|
is saved, 'cpoptions' is set to the Vim default, and the saved value
|
||||||
|
is restored at the end of the script. Changes to the value of
|
||||||
|
'cpoptions' will be applied to the saved value, but keep in mind that
|
||||||
|
removing a flag that is not present when 'cpoptions' is changed has no
|
||||||
|
effect. In the |.vimrc| file the value is not restored, thus using
|
||||||
|
`vim9script` in the |.vimrc| file results in using the Vim default.
|
||||||
|
|
||||||
NOTE: This option is set to the POSIX default value at startup when
|
NOTE: This option is set to the POSIX default value at startup when
|
||||||
the Vi default value would be used and the $VIM_POSIX environment
|
the Vi default value would be used and the $VIM_POSIX environment
|
||||||
variable exists |posix|. This means Vim tries to behave like the
|
variable exists |posix|. This means Vim tries to behave like the
|
||||||
@@ -2427,7 +2487,7 @@ 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*
|
*E1193* *E1194* *E1195* *E1196* *E1230*
|
||||||
*E1197* *E1198* *E1199* *E1200* *E1201*
|
*E1197* *E1198* *E1199* *E1200* *E1201*
|
||||||
xchacha20 XChaCha20 Cipher with Poly1305 Message Authentication
|
xchacha20 XChaCha20 Cipher with Poly1305 Message Authentication
|
||||||
Code. Medium strong till strong encryption.
|
Code. Medium strong till strong encryption.
|
||||||
@@ -3401,7 +3461,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
{not available when compiled without the |+folding|
|
{not available when compiled without the |+folding|
|
||||||
or |+eval| features}
|
or |+eval| features}
|
||||||
The expression used for when 'foldmethod' is "expr". It is evaluated
|
The expression used for when 'foldmethod' is "expr". It is evaluated
|
||||||
for each line to obtain its fold level. See |fold-expr|.
|
for each line to obtain its fold level. The context is set to the
|
||||||
|
script where 'foldexpr' was set, script-local items can be accessed.
|
||||||
|
See |fold-expr| for the usage.
|
||||||
|
|
||||||
The expression will be evaluated in the |sandbox| if set from a
|
The expression will be evaluated in the |sandbox| if set from a
|
||||||
modeline, see |sandbox-option|.
|
modeline, see |sandbox-option|.
|
||||||
@@ -3535,7 +3597,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
{not available when compiled without the |+folding|
|
{not available when compiled without the |+folding|
|
||||||
feature}
|
feature}
|
||||||
An expression which is used to specify the text displayed for a closed
|
An expression which is used to specify the text displayed for a closed
|
||||||
fold. See |fold-foldtext|.
|
fold. The context is set to the script where 'foldexpr' was set,
|
||||||
|
script-local items can be accessed. See |fold-foldtext| for the
|
||||||
|
usage.
|
||||||
|
|
||||||
The expression will be evaluated in the |sandbox| if set from a
|
The expression will be evaluated in the |sandbox| if set from a
|
||||||
modeline, see |sandbox-option|.
|
modeline, see |sandbox-option|.
|
||||||
@@ -3574,6 +3638,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
When the expression evaluates to non-zero Vim will fall back to using
|
When the expression evaluates to non-zero Vim will fall back to using
|
||||||
the internal format mechanism.
|
the internal format mechanism.
|
||||||
|
|
||||||
|
If the expression starts with s: or |<SID>|, then it is replaced with
|
||||||
|
the script ID (|local-function|). Example: >
|
||||||
|
set formatexpr=s:MyFormatExpr()
|
||||||
|
set formatexpr=<SID>SomeFormatExpr()
|
||||||
|
< Otherwise, the expression is evaluated in the context of the script
|
||||||
|
where the option was set, thus script-local items are available.
|
||||||
|
|
||||||
The expression will be evaluated in the |sandbox| when set from a
|
The expression will be evaluated in the |sandbox| when set from a
|
||||||
modeline, see |sandbox-option|. That stops the option from working,
|
modeline, see |sandbox-option|. That stops the option from working,
|
||||||
since changing the buffer text is not allowed.
|
since changing the buffer text is not allowed.
|
||||||
@@ -3967,7 +4038,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'guitablabel' 'gtl' string (default empty)
|
'guitablabel' 'gtl' string (default empty)
|
||||||
global
|
global
|
||||||
{only available when compiled with GUI enabled}
|
{only available when compiled with GUI enabled}
|
||||||
When nonempty describes the text to use in a label of the GUI tab
|
When non-empty describes the text to use in a label of the GUI tab
|
||||||
pages line. When empty and when the result is empty Vim will use a
|
pages line. When empty and when the result is empty Vim will use a
|
||||||
default label. See |setting-guitablabel| for more info.
|
default label. See |setting-guitablabel| for more info.
|
||||||
|
|
||||||
@@ -3985,7 +4056,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'guitabtooltip' 'gtt' string (default empty)
|
'guitabtooltip' 'gtt' string (default empty)
|
||||||
global
|
global
|
||||||
{only available when compiled with GUI enabled}
|
{only available when compiled with GUI enabled}
|
||||||
When nonempty describes the text to use in a tooltip for the GUI tab
|
When non-empty describes the text to use in a tooltip for the GUI tab
|
||||||
pages line. When empty Vim will use a default tooltip.
|
pages line. When empty Vim will use a default tooltip.
|
||||||
This option is otherwise just like 'guitablabel' above.
|
This option is otherwise just like 'guitablabel' above.
|
||||||
You can include a line break. Simplest method is to use |:let|: >
|
You can include a line break. Simplest method is to use |:let|: >
|
||||||
@@ -4240,7 +4311,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'imactivatefunc' 'imaf' string (default "")
|
'imactivatefunc' 'imaf' string (default "")
|
||||||
global
|
global
|
||||||
This option specifies a function that will be called to
|
This option specifies a function that will be called to
|
||||||
activate or deactivate the Input Method.
|
activate or deactivate the Input Method. The value can be the name of
|
||||||
|
a function, a |lambda| or a |Funcref|. See |option-value-function| for
|
||||||
|
more information.
|
||||||
It is not used in the MS-Windows GUI version.
|
It is not used in the MS-Windows GUI version.
|
||||||
The expression will be evaluated in the |sandbox| when set from a
|
The expression will be evaluated in the |sandbox| when set from a
|
||||||
modeline, see |sandbox-option|.
|
modeline, see |sandbox-option|.
|
||||||
@@ -4350,6 +4423,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
global
|
global
|
||||||
This option specifies a function that is called to obtain the status
|
This option specifies a function that is called to obtain the status
|
||||||
of Input Method. It must return a positive number when IME is active.
|
of Input Method. It must return a positive number when IME is active.
|
||||||
|
The value can be the name of a function, a |lambda| or a |Funcref|.
|
||||||
|
See |option-value-function| for more information.
|
||||||
It is not used in the MS-Windows GUI version.
|
It is not used in the MS-Windows GUI version.
|
||||||
|
|
||||||
Example: >
|
Example: >
|
||||||
@@ -4412,6 +4487,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
found. Allows doing "gf" on the name after an 'include' statement.
|
found. Allows doing "gf" on the name after an 'include' statement.
|
||||||
Also used for |<cfile>|.
|
Also used for |<cfile>|.
|
||||||
|
|
||||||
|
If the expression starts with s: or |<SID>|, then it is replaced with
|
||||||
|
the script ID (|local-function|). Example: >
|
||||||
|
set includeexpr=s:MyIncludeExpr(v:fname)
|
||||||
|
set includeexpr=<SID>SomeIncludeExpr(v:fname)
|
||||||
|
< Otherwise, the expression is evaluated in the context of the script
|
||||||
|
where the option was set, thus script-local items are available.
|
||||||
|
|
||||||
The expression will be evaluated in the |sandbox| when set from a
|
The expression will be evaluated in the |sandbox| when set from a
|
||||||
modeline, see |sandbox-option|.
|
modeline, see |sandbox-option|.
|
||||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||||
@@ -4485,6 +4567,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
The expression is evaluated with |v:lnum| set to the line number for
|
The expression is evaluated with |v:lnum| set to the line number for
|
||||||
which the indent is to be computed. The cursor is also in this line
|
which the indent is to be computed. The cursor is also in this line
|
||||||
when the expression is evaluated (but it may be moved around).
|
when the expression is evaluated (but it may be moved around).
|
||||||
|
|
||||||
|
If the expression starts with s: or |<SID>|, then it is replaced with
|
||||||
|
the script ID (|local-function|). Example: >
|
||||||
|
set indentexpr=s:MyIndentExpr()
|
||||||
|
set indentexpr=<SID>SomeIndentExpr()
|
||||||
|
< Otherwise, the expression is evaluated in the context of the script
|
||||||
|
where the option was set, thus script-local items are available.
|
||||||
|
|
||||||
The expression must return the number of spaces worth of indent. It
|
The expression must return the number of spaces worth of indent. It
|
||||||
can return "-1" to keep the current indent (this means 'autoindent' is
|
can return "-1" to keep the current indent (this means 'autoindent' is
|
||||||
used for the indent).
|
used for the indent).
|
||||||
@@ -4797,7 +4887,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
|+multi_lang| features}
|
|+multi_lang| features}
|
||||||
Language to use for menu translation. Tells which file is loaded
|
Language to use for menu translation. Tells which file is loaded
|
||||||
from the "lang" directory in 'runtimepath': >
|
from the "lang" directory in 'runtimepath': >
|
||||||
"lang/menu_" . &langmenu . ".vim"
|
"lang/menu_" .. &langmenu .. ".vim"
|
||||||
< (without the spaces). For example, to always use the Dutch menus, no
|
< (without the spaces). For example, to always use the Dutch menus, no
|
||||||
matter what $LANG is set to: >
|
matter what $LANG is set to: >
|
||||||
:set langmenu=nl_NL.ISO_8859-1
|
:set langmenu=nl_NL.ISO_8859-1
|
||||||
@@ -5575,8 +5665,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
number.
|
number.
|
||||||
When a long, wrapped line doesn't start with the first character, '-'
|
When a long, wrapped line doesn't start with the first character, '-'
|
||||||
characters are put before the number.
|
characters are put before the number.
|
||||||
See |hl-LineNr| and |hl-CursorLineNr| for the highlighting used for
|
For highlighting see |hl-LineNr|, and |hl-CursorLineNr|, and the
|
||||||
the number.
|
|:sign-define| "numhl" argument.
|
||||||
*number_relativenumber*
|
*number_relativenumber*
|
||||||
The 'relativenumber' option changes the displayed number to be
|
The 'relativenumber' option changes the displayed number to be
|
||||||
relative to the cursor. Together with 'number' there are these
|
relative to the cursor. Together with 'number' there are these
|
||||||
@@ -5616,7 +5706,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
This option specifies a function to be used for Insert mode omni
|
This option specifies a function to be used for Insert mode omni
|
||||||
completion with CTRL-X CTRL-O. |i_CTRL-X_CTRL-O|
|
completion with CTRL-X CTRL-O. |i_CTRL-X_CTRL-O|
|
||||||
See |complete-functions| for an explanation of how the function is
|
See |complete-functions| for an explanation of how the function is
|
||||||
invoked and what it should return.
|
invoked and what it should return. The value can be the name of a
|
||||||
|
function, a |lambda| or a |Funcref|. See |option-value-function| for
|
||||||
|
more information.
|
||||||
This option is usually set by a filetype plugin:
|
This option is usually set by a filetype plugin:
|
||||||
|:filetype-plugin-on|
|
|:filetype-plugin-on|
|
||||||
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
|
||||||
@@ -5626,7 +5718,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
*'opendevice'* *'odev'* *'noopendevice'* *'noodev'*
|
*'opendevice'* *'odev'* *'noopendevice'* *'noodev'*
|
||||||
'opendevice' 'odev' boolean (default off)
|
'opendevice' 'odev' boolean (default off)
|
||||||
global
|
global
|
||||||
{only for MS-Windows}
|
{only for MS-Windows} *E796*
|
||||||
Enable reading and writing from devices. This may get Vim stuck on a
|
Enable reading and writing from devices. This may get Vim stuck on a
|
||||||
device that can be opened but doesn't actually do the I/O. Therefore
|
device that can be opened but doesn't actually do the I/O. Therefore
|
||||||
it is off by default.
|
it is off by default.
|
||||||
@@ -5809,7 +5901,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
< To use an environment variable, you probably need to replace the
|
< To use an environment variable, you probably need to replace the
|
||||||
separator. Here is an example to append $INCL, in which directory
|
separator. Here is an example to append $INCL, in which directory
|
||||||
names are separated with a semi-colon: >
|
names are separated with a semi-colon: >
|
||||||
:let &path = &path . "," . substitute($INCL, ';', ',', 'g')
|
:let &path = &path .. "," .. substitute($INCL, ';', ',', 'g')
|
||||||
< Replace the ';' with a ':' or whatever separator is used. Note that
|
< Replace the ';' with a ':' or whatever separator is used. Note that
|
||||||
this doesn't work when $INCL contains a comma or white space.
|
this doesn't work when $INCL contains a comma or white space.
|
||||||
|
|
||||||
@@ -6626,6 +6718,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
Don't include both "curdir" and "sesdir".
|
Don't include both "curdir" and "sesdir".
|
||||||
When neither "curdir" nor "sesdir" is included, file names are stored
|
When neither "curdir" nor "sesdir" is included, file names are stored
|
||||||
with absolute paths.
|
with absolute paths.
|
||||||
|
If you leave out "options" many things won't work well after restoring
|
||||||
|
the session.
|
||||||
"slash" and "unix" are useful on Windows when sharing session files
|
"slash" and "unix" are useful on Windows when sharing session files
|
||||||
with Unix. The Unix version of Vim cannot source dos format scripts,
|
with Unix. The Unix version of Vim cannot source dos format scripts,
|
||||||
but the Windows version of Vim can source unix format scripts.
|
but the Windows version of Vim can source unix format scripts.
|
||||||
@@ -6640,6 +6734,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
See |option-backslash| about including spaces and backslashes.
|
See |option-backslash| about including spaces and backslashes.
|
||||||
Environment variables are expanded |:set_env|.
|
Environment variables are expanded |:set_env|.
|
||||||
|
|
||||||
|
In |restricted-mode| shell commands will not be possible. This mode
|
||||||
|
is used if the value of $SHELL ends in "false" or "nologin".
|
||||||
|
|
||||||
If the name of the shell contains a space, you need to enclose it in
|
If the name of the shell contains a space, you need to enclose it in
|
||||||
quotes and escape the space. Example with quotes: >
|
quotes and escape the space. Example with quotes: >
|
||||||
:set shell=\"c:\program\ files\unix\sh.exe\"\ -f
|
:set shell=\"c:\program\ files\unix\sh.exe\"\ -f
|
||||||
@@ -7289,6 +7386,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
suggestions is never more than the value of 'lines'
|
suggestions is never more than the value of 'lines'
|
||||||
minus two.
|
minus two.
|
||||||
|
|
||||||
|
timeout:{millisec} Limit the time searching for suggestions to
|
||||||
|
{millisec} milli seconds. Applies to the following
|
||||||
|
methods. When omitted the limit is 5000. When
|
||||||
|
negative there is no limit. {only works when built
|
||||||
|
with the +reltime feature}
|
||||||
|
|
||||||
file:{filename} Read file {filename}, which must have two columns,
|
file:{filename} Read file {filename}, which must have two columns,
|
||||||
separated by a slash. The first column contains the
|
separated by a slash. The first column contains the
|
||||||
bad word, the second column the suggested good word.
|
bad word, the second column the suggested good word.
|
||||||
@@ -7356,7 +7459,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
global or local to window |global-local|
|
global or local to window |global-local|
|
||||||
{not available when compiled without the |+statusline|
|
{not available when compiled without the |+statusline|
|
||||||
feature}
|
feature}
|
||||||
When nonempty, this option determines the content of the status line.
|
When non-empty, this option determines the content of the status line.
|
||||||
Also see |status-line|.
|
Also see |status-line|.
|
||||||
|
|
||||||
The option consists of printf style '%' items interspersed with
|
The option consists of printf style '%' items interspersed with
|
||||||
@@ -7664,7 +7767,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
*'tabline'* *'tal'*
|
*'tabline'* *'tal'*
|
||||||
'tabline' 'tal' string (default empty)
|
'tabline' 'tal' string (default empty)
|
||||||
global
|
global
|
||||||
When nonempty, this option determines the content of the tab pages
|
When non-empty, this option determines the content of the tab pages
|
||||||
line at the top of the Vim window. When empty Vim will use a default
|
line at the top of the Vim window. When empty Vim will use a default
|
||||||
tab pages line. See |setting-tabline| for more info.
|
tab pages line. See |setting-tabline| for more info.
|
||||||
|
|
||||||
@@ -7697,10 +7800,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'tabstop' 'ts' number (default 8)
|
'tabstop' 'ts' number (default 8)
|
||||||
local to buffer
|
local to buffer
|
||||||
Number of spaces that a <Tab> in the file counts for. Also see
|
Number of spaces that a <Tab> in the file counts for. Also see
|
||||||
|:retab| command, and 'softtabstop' option.
|
the |:retab| command, and the 'softtabstop' option.
|
||||||
|
|
||||||
Note: Setting 'tabstop' to any other value than 8 can make your file
|
Note: Setting 'tabstop' to any other value than 8 can make your file
|
||||||
appear wrong in many places (e.g., when printing it).
|
appear wrong in many places, e.g., when printing it.
|
||||||
|
The value must be more than 0 and less than 10000.
|
||||||
|
|
||||||
There are four main ways to use tabs in Vim:
|
There are four main ways to use tabs in Vim:
|
||||||
1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4
|
1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4
|
||||||
@@ -7755,9 +7859,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
linear search can be avoided when case is ignored. Use a value of '2'
|
linear search can be avoided when case is ignored. Use a value of '2'
|
||||||
in the "!_TAG_FILE_SORTED" line for this. A tag file can be case-fold
|
in the "!_TAG_FILE_SORTED" line for this. A tag file can be case-fold
|
||||||
sorted with the -f switch to "sort" in most unices, as in the command:
|
sorted with the -f switch to "sort" in most unices, as in the command:
|
||||||
"sort -f -o tags tags". For "Exuberant ctags" version 5.x or higher
|
"sort -f -o tags tags". For Universal ctags and Exuberant ctags
|
||||||
(at least 5.5) the --sort=foldcase switch can be used for this as
|
version 5.x or higher (at least 5.5) the --sort=foldcase switch can be
|
||||||
well. Note that case must be folded to uppercase for this to work.
|
used for this as well. Note that case must be folded to uppercase for
|
||||||
|
this to work.
|
||||||
|
|
||||||
By default, tag searches are case-sensitive. Case is ignored when
|
By default, tag searches are case-sensitive. Case is ignored when
|
||||||
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
|
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
|
||||||
@@ -8068,13 +8173,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
another default. Backticks cannot be used in this option for security
|
another default. Backticks cannot be used in this option for security
|
||||||
reasons.
|
reasons.
|
||||||
|
|
||||||
*'thesaurusfunc'* *tsrfu'*
|
*'thesaurusfunc'* *'tsrfu'*
|
||||||
'thesaurusfunc' 'tsrfu' string (default: empty)
|
'thesaurusfunc' 'tsrfu' string (default: empty)
|
||||||
global or local to buffer |global-local|
|
global or local to buffer |global-local|
|
||||||
{not available when compiled without the |+eval|
|
{not available when compiled without the |+eval|
|
||||||
feature}
|
feature}
|
||||||
This option specifies a function to be used for thesaurus completion
|
This option specifies a function to be used for thesaurus completion
|
||||||
with CTRL-X CTRL-T. |i_CTRL-X_CTRL-T| See |compl-thesaurusfunc|.
|
with CTRL-X CTRL-T. |i_CTRL-X_CTRL-T| See |compl-thesaurusfunc|.
|
||||||
|
The value can be the name of a function, a |lambda| or a |Funcref|.
|
||||||
|
See |option-value-function| for more information.
|
||||||
|
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||||
security reasons.
|
security reasons.
|
||||||
@@ -8212,7 +8319,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||||
|
|
||||||
Example: >
|
Example: >
|
||||||
:auto BufEnter * let &titlestring = hostname() . "/" . expand("%:p")
|
:auto BufEnter * let &titlestring = hostname() .. "/" .. expand("%:p")
|
||||||
:set title titlestring=%<%F%=%l/%L-%P titlelen=70
|
:set title titlestring=%<%F%=%l/%L-%P titlelen=70
|
||||||
< The value of 'titlelen' is used to align items in the middle or right
|
< The value of 'titlelen' is used to align items in the middle or right
|
||||||
of the available space.
|
of the available space.
|
||||||
@@ -8878,7 +8985,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
mode. On pressing 'wildchar' (usually <Tab>) to invoke completion,
|
mode. On pressing 'wildchar' (usually <Tab>) to invoke completion,
|
||||||
the possible matches are shown just above the command line, with the
|
the possible matches are shown just above the command line, with the
|
||||||
first match highlighted (overwriting the status line, if there is
|
first match highlighted (overwriting the status line, if there is
|
||||||
one). Keys that show the previous/next match, such as <Tab> or
|
one). This is the behavior without "pum" in 'wildoptions.
|
||||||
|
Keys that show the previous/next match, such as <Tab> or
|
||||||
CTRL-P/CTRL-N, cause the highlight to move to the appropriate match.
|
CTRL-P/CTRL-N, cause the highlight to move to the appropriate match.
|
||||||
When 'wildmode' is used, "wildmenu" mode is used where "full" is
|
When 'wildmode' is used, "wildmenu" mode is used where "full" is
|
||||||
specified. "longest" and "list" do not start "wildmenu" mode.
|
specified. "longest" and "list" do not start "wildmenu" mode.
|
||||||
@@ -8886,10 +8994,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
If there are more matches than can fit in the line, a ">" is shown on
|
If there are more matches than can fit in the line, a ">" is shown on
|
||||||
the right and/or a "<" is shown on the left. The status line scrolls
|
the right and/or a "<" is shown on the left. The status line scrolls
|
||||||
as needed.
|
as needed.
|
||||||
|
When 'wildoptions' contains "pum", then the completion matches are
|
||||||
|
shown in a popup menu.
|
||||||
The "wildmenu" mode is abandoned when a key is hit that is not used
|
The "wildmenu" mode is abandoned when a key is hit that is not used
|
||||||
for selecting a completion.
|
for selecting a completion.
|
||||||
While the "wildmenu" is active the following keys have special
|
While the "wildmenu" is active, not using the popup menu, the
|
||||||
meanings:
|
following keys have special meanings:
|
||||||
|
|
||||||
<Left> <Right> - select previous/next match (like CTRL-P/CTRL-N)
|
<Left> <Right> - select previous/next match (like CTRL-P/CTRL-N)
|
||||||
<Down> - in filename/menu name completion: move into a
|
<Down> - in filename/menu name completion: move into a
|
||||||
@@ -8899,6 +9009,21 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
<Up> - in filename/menu name completion: move up into
|
<Up> - in filename/menu name completion: move up into
|
||||||
parent directory or parent menu.
|
parent directory or parent menu.
|
||||||
|
|
||||||
|
When using the popup menu for command line completion, the following
|
||||||
|
keys have special meanings:
|
||||||
|
<Down> - select next match (like CTRL-N)
|
||||||
|
<Left> - in filename/menu name completion: move up into
|
||||||
|
parent directory or parent menu.
|
||||||
|
<Right> - in filename/menu name completion: move into a
|
||||||
|
subdirectory or submenu.
|
||||||
|
<Up> - select previous match (like CTRL-P)
|
||||||
|
CTRL-E - end completion, go back to what was there before
|
||||||
|
selecting a match.
|
||||||
|
CTRL-N - go to the next entry
|
||||||
|
CTRL-P - go to the previous entry
|
||||||
|
CTRL-Y - accept the currently selected match and stop
|
||||||
|
completion.
|
||||||
|
|
||||||
This makes the menus accessible from the console |console-menus|.
|
This makes the menus accessible from the console |console-menus|.
|
||||||
|
|
||||||
If you prefer the <Left> and <Right> keys to move the cursor instead
|
If you prefer the <Left> and <Right> keys to move the cursor instead
|
||||||
@@ -8961,14 +9086,23 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
global
|
global
|
||||||
{not available when compiled without the |+wildignore|
|
{not available when compiled without the |+wildignore|
|
||||||
feature}
|
feature}
|
||||||
A list of words that change how command line completion is done.
|
A list of words that change how |cmdline-completion| is done.
|
||||||
Currently only one word is allowed:
|
The following values are supported:
|
||||||
|
fuzzy Use |fuzzy-matching| to find completion matches. When
|
||||||
|
this value is specified, wildcard expansion will not
|
||||||
|
be used for completion. The matches will be sorted by
|
||||||
|
the "best match" rather than alphabetically sorted.
|
||||||
|
This will find more matches than the wildcard
|
||||||
|
expansion. Currently fuzzy matching based completion
|
||||||
|
is not supported for file and directory names and
|
||||||
|
instead wildcard expansion is used.
|
||||||
|
pum Display the completion matches using the popupmenu
|
||||||
|
in the same style as the |ins-completion-menu|.
|
||||||
tagfile When using CTRL-D to list matching tags, the kind of
|
tagfile When using CTRL-D to list matching tags, the kind of
|
||||||
tag and the file of the tag is listed. Only one match
|
tag and the file of the tag is listed. Only one match
|
||||||
is displayed per line. Often used tag kinds are:
|
is displayed per line. Often used tag kinds are:
|
||||||
d #define
|
d #define
|
||||||
f function
|
f function
|
||||||
Also see |cmdline-completion|.
|
|
||||||
|
|
||||||
*'winaltkeys'* *'wak'*
|
*'winaltkeys'* *'wak'*
|
||||||
'winaltkeys' 'wak' string (default "menu")
|
'winaltkeys' 'wak' string (default "menu")
|
||||||
@@ -9176,4 +9310,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
screen. When non-zero, characters are sent to the terminal one by
|
screen. When non-zero, characters are sent to the terminal one by
|
||||||
one. For debugging purposes.
|
one. For debugging purposes.
|
||||||
|
|
||||||
|
*'xtermcodes'* *'noxtermcodes'*
|
||||||
|
'xtermcodes' boolean (default on)
|
||||||
|
global
|
||||||
|
When detecting xterm patchlevel 141 or higher with the termresponse
|
||||||
|
mechanism and this option is set, Vim will request the actual terminal
|
||||||
|
key codes and number of colors from the terminal. This takes care of
|
||||||
|
various configuration options of the terminal that cannot be obtained
|
||||||
|
from the termlib/terminfo entry, see |xterm-codes|.
|
||||||
|
A side effect may be that t_Co changes and Vim will redraw the
|
||||||
|
display.
|
||||||
|
|
||||||
|
|
||||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
|
|||||||
@@ -342,12 +342,12 @@ PowerShell Execution Policy settings.
|
|||||||
See |option-backslash| about including spaces in 'shellcmdflag' when using
|
See |option-backslash| about including spaces in 'shellcmdflag' when using
|
||||||
multiple flags.
|
multiple flags.
|
||||||
|
|
||||||
The 'shellpipe' and 'shellredir' option values re-encode the UTF-16le output
|
The 'shellpipe' and 'shellredir' option values re-encode the UTF-16LE output
|
||||||
from PowerShell Desktop to your currently configured console codepage. The
|
from PowerShell Desktop to your currently configured console codepage. The
|
||||||
output can be forced into a different encoding by changing "default" to one of
|
output can be forced into a different encoding by changing "default" to one of
|
||||||
the following:
|
the following:
|
||||||
|
|
||||||
unicode - UTF-16le (default output from PowerShell 5.1)
|
unicode - UTF-16LE (default output from PowerShell 5.1)
|
||||||
bigendianunicode - UTF-16
|
bigendianunicode - UTF-16
|
||||||
utf8 - UTF-8
|
utf8 - UTF-8
|
||||||
utf7 - UTF-7 (no BOM)
|
utf7 - UTF-7 (no BOM)
|
||||||
@@ -356,7 +356,7 @@ the following:
|
|||||||
default - System's active code page (typically ANSI)
|
default - System's active code page (typically ANSI)
|
||||||
oem - System's current OEM code page
|
oem - System's current OEM code page
|
||||||
|
|
||||||
Note The abovce multi-byte Unicode encodings include a leading BOM unless
|
Note The above multi-byte Unicode encodings include a leading BOM unless
|
||||||
otherwise indicated.
|
otherwise indicated.
|
||||||
|
|
||||||
By default PowerShell Core's output is UTF-8 encoded without a BOM. If you
|
By default PowerShell Core's output is UTF-8 encoded without a BOM. If you
|
||||||
@@ -365,10 +365,10 @@ want to force the output of PowerShell Core into a different encoding then set
|
|||||||
encoding is one of the following:
|
encoding is one of the following:
|
||||||
|
|
||||||
ascii - 7-bit ASCII character set
|
ascii - 7-bit ASCII character set
|
||||||
bigendianunicode - UTF-16be
|
bigendianunicode - UTF-16BE
|
||||||
bigendianutf32 - UTF-32be
|
bigendianutf32 - UTF-32BE
|
||||||
oem - System's current OEM code page
|
oem - System's current OEM code page
|
||||||
unicode - UTF-16le
|
unicode - UTF-16LE
|
||||||
utf7 - UTF-7
|
utf7 - UTF-7
|
||||||
utf8 - UTF-8
|
utf8 - UTF-8
|
||||||
utf8BOM - UTF-8, with BOM
|
utf8BOM - UTF-8, with BOM
|
||||||
|
|||||||
@@ -603,13 +603,13 @@ program to the new diff on VMS. Add this to your .vimrc file: >
|
|||||||
function MyDiff()
|
function MyDiff()
|
||||||
let opt = ""
|
let opt = ""
|
||||||
if &diffopt =~ "icase"
|
if &diffopt =~ "icase"
|
||||||
let opt = opt . "-i "
|
let opt = opt .. "-i "
|
||||||
endif
|
endif
|
||||||
if &diffopt =~ "iwhite"
|
if &diffopt =~ "iwhite"
|
||||||
let opt = opt . "-b "
|
let opt = opt .. "-b "
|
||||||
endif
|
endif
|
||||||
silent execute "!mc GNU:diff.exe -a " . opt . v:fname_in . " " . v:fname_new .
|
silent execute "!mc GNU:diff.exe -a " .. opt .. v:fname_in .. " " .. v:fname_new ..
|
||||||
\ " > " . v:fname_out
|
\ " > " .. v:fname_out
|
||||||
endfunction
|
endfunction
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*os_win32.txt* For Vim version 8.2. Last change: 2021 Apr 05
|
*os_win32.txt* For Vim version 8.2. Last change: 2022 Feb 14
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by George Reilly
|
VIM REFERENCE MANUAL by George Reilly
|
||||||
@@ -294,7 +294,7 @@ A. When using :! to run an external command, you can run it with "start". For
|
|||||||
/b no console window will be opened
|
/b no console window will be opened
|
||||||
You can use only one of these flags at a time. A second one will be
|
You can use only one of these flags at a time. A second one will be
|
||||||
treated as the start of the command.
|
treated as the start of the command.
|
||||||
|
*windows-asynchronously*
|
||||||
Q. How do I avoid getting a window for programs that I run asynchronously?
|
Q. How do I avoid getting a window for programs that I run asynchronously?
|
||||||
A. You have two possible solutions depending on what you want:
|
A. You have two possible solutions depending on what you want:
|
||||||
1) You may use the /min flag in order to run program in a minimized state
|
1) You may use the /min flag in order to run program in a minimized state
|
||||||
@@ -308,17 +308,17 @@ A. You have two possible solutions depending on what you want:
|
|||||||
|
|
||||||
Example for a console application, run Exuberant ctags: >
|
Example for a console application, run Exuberant ctags: >
|
||||||
:!start /min ctags -R .
|
:!start /min ctags -R .
|
||||||
< When it has finished you should see file named "tags" in your current
|
< When it has finished you should see file named "tags" in your current
|
||||||
directory. You should notice the window title blinking on your taskbar.
|
directory. You should notice the window title blinking on your taskbar.
|
||||||
This is more noticeable for commands that take longer.
|
This is more noticeable for commands that take longer.
|
||||||
Now delete the "tags" file and run this command: >
|
Now delete the "tags" file and run this command: >
|
||||||
:!start /b ctags -R .
|
:!start /b ctags -R .
|
||||||
< You should have the same "tags" file, but this time there will be no
|
< You should have the same "tags" file, but this time there will be no
|
||||||
blinking on the taskbar.
|
blinking on the taskbar.
|
||||||
Example for a GUI application: >
|
Example for a GUI application: >
|
||||||
:!start /min notepad
|
:!start /min notepad
|
||||||
:!start /b notepad
|
:!start /b notepad
|
||||||
< The first command runs notepad minimized and the second one runs it
|
< The first command runs notepad minimized and the second one runs it
|
||||||
normally.
|
normally.
|
||||||
|
|
||||||
*windows-icon*
|
*windows-icon*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*pattern.txt* For Vim version 8.2. Last change: 2021 Jul 16
|
*pattern.txt* For Vim version 8.2. Last change: 2022 Mar 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -19,7 +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|
|
11. Fuzzy matching |fuzzy-matching|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
1. Search commands *search-commands*
|
1. Search commands *search-commands*
|
||||||
@@ -164,9 +164,12 @@ index, on which the cursor is. This can look like this: >
|
|||||||
Note: the count does not take offset into account.
|
Note: the count does not take offset into account.
|
||||||
|
|
||||||
When no match is found you get the error: *E486* Pattern not found
|
When no match is found you get the error: *E486* Pattern not found
|
||||||
Note that for the |:global| command this behaves like a normal message, for Vi
|
Note that for the `:global` command, when used in legacy script, you get a
|
||||||
compatibility. For the |:s| command the "e" flag can be used to avoid the
|
normal message "Pattern not found", for Vi compatibility.
|
||||||
error message |:s_flags|.
|
In |Vim9| script you get E486 for "pattern not found" or *E538* when the pattern
|
||||||
|
matches in every line with `:vglobal`.
|
||||||
|
For the |:s| command the "e" flag can be used to avoid the error message
|
||||||
|
|:s_flags|.
|
||||||
|
|
||||||
*search-offset* *{offset}*
|
*search-offset* *{offset}*
|
||||||
These commands search for the specified pattern. With "/" and "?" an
|
These commands search for the specified pattern. With "/" and "?" an
|
||||||
@@ -315,7 +318,7 @@ the pattern.
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
2. The definition of a pattern *search-pattern* *pattern* *[pattern]*
|
2. The definition of a pattern *search-pattern* *pattern* *[pattern]*
|
||||||
*regular-expression* *regexp* *Pattern*
|
*regular-expression* *regexp* *Pattern*
|
||||||
*E76* *E383* *E476*
|
*E383* *E476*
|
||||||
|
|
||||||
For starters, read chapter 27 of the user manual |usr_27.txt|.
|
For starters, read chapter 27 of the user manual |usr_27.txt|.
|
||||||
|
|
||||||
@@ -925,13 +928,13 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
becomes invalid. Vim doesn't automatically update the matches.
|
becomes invalid. Vim doesn't automatically update the matches.
|
||||||
Similar to moving the cursor for "\%#" |/\%#|.
|
Similar to moving the cursor for "\%#" |/\%#|.
|
||||||
|
|
||||||
*/\%l* */\%>l* */\%<l* *E951*
|
*/\%l* */\%>l* */\%<l* *E951* *E1204*
|
||||||
\%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 at the cursor line.
|
||||||
\%<.l Matches above the cursor line.
|
\%<.l Matches above the cursor line.
|
||||||
\%>.l Matches below the cursor line.
|
\%>.l Matches below the cursor line.
|
||||||
These six can be used to match specific lines in a buffer. The "23"
|
These six can be used to match specific lines in a buffer. The "23"
|
||||||
can be any line number. The first line is 1.
|
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
|
||||||
@@ -950,9 +953,9 @@ $ 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 at the cursor column.
|
||||||
\%<.c Matches before the cursor column.
|
\%<.c Matches before the cursor column.
|
||||||
\%>.c Matches after the cursor column.
|
\%>.c Matches after the cursor column.
|
||||||
These six can be used to match specific columns in a buffer or string.
|
These six can be used to match specific columns in a buffer or string.
|
||||||
The "23" can be any column number. The first column is 1. Actually,
|
The "23" can be any column number. The first column is 1. Actually,
|
||||||
the column is the byte number (thus it's not exactly right for
|
the column is the byte number (thus it's not exactly right for
|
||||||
@@ -963,7 +966,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
|||||||
the cursor moves the display isn't updated for this change. An update
|
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).
|
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: >
|
< Alternatively use: >
|
||||||
/\%.c
|
/\%.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
|
||||||
@@ -976,9 +979,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 at the current virtual column.
|
||||||
\%<.v Matches before the current virtual column.
|
\%<.v Matches before the current virtual column.
|
||||||
\%>.v Matches after the current virtual column.
|
\%>.v Matches after the current virtual column.
|
||||||
These six can be used to match specific virtual columns in a buffer or
|
These six can be used to match specific virtual columns in a buffer or
|
||||||
string. When not matching with a buffer in a window, the option
|
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').
|
||||||
@@ -1070,6 +1073,8 @@ match ASCII characters, as indicated by the range.
|
|||||||
|
|
||||||
\(\) A pattern enclosed by escaped parentheses. */\(* */\(\)* */\)*
|
\(\) A pattern enclosed by escaped parentheses. */\(* */\(\)* */\)*
|
||||||
E.g., "\(^a\)" matches 'a' at the start of a line.
|
E.g., "\(^a\)" matches 'a' at the start of a line.
|
||||||
|
There can only be ten of these. You can use "\%(" to add more, but
|
||||||
|
not counting it as a sub-expression.
|
||||||
*E51* *E54* *E55* *E872* *E873*
|
*E51* *E54* *E55* *E872* *E873*
|
||||||
|
|
||||||
\1 Matches the same string that was matched by */\1* *E65*
|
\1 Matches the same string that was matched by */\1* *E65*
|
||||||
@@ -1092,7 +1097,7 @@ x A single character, with no special meaning, matches itself
|
|||||||
\x A backslash followed by a single character, with no special meaning,
|
\x A backslash followed by a single character, with no special meaning,
|
||||||
is reserved for future expansions
|
is reserved for future expansions
|
||||||
|
|
||||||
[] (with 'nomagic': \[]) */[]* */\[]* */\_[]* */collection*
|
[] (with 'nomagic': \[]) */[]* */\[]* */\_[]* */collection* *E76*
|
||||||
\_[]
|
\_[]
|
||||||
A collection. This is a sequence of characters enclosed in square
|
A collection. This is a sequence of characters enclosed in square
|
||||||
brackets. It matches any single character in the collection.
|
brackets. It matches any single character in the collection.
|
||||||
@@ -1455,7 +1460,7 @@ Finally, these constructs are unique to Perl:
|
|||||||
":2match" for another plugin.
|
":2match" for another plugin.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
11. Fuzzy matching *fuzzy-match*
|
11. Fuzzy matching *fuzzy-matching*
|
||||||
|
|
||||||
Fuzzy matching refers to matching strings using a non-exact search string.
|
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
|
Fuzzy matching will match a string, if all the characters in the search string
|
||||||
@@ -1488,5 +1493,4 @@ the matching positions and the fuzzy match scores.
|
|||||||
The "f" flag of `:vimgrep` enables fuzzy matching.
|
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:
|
||||||
|
|||||||
@@ -968,7 +968,7 @@ itself:
|
|||||||
fun! NetReadFixup(method, line1, line2)
|
fun! NetReadFixup(method, line1, line2)
|
||||||
if method == 3 " ftp (no <.netrc>)
|
if method == 3 " ftp (no <.netrc>)
|
||||||
let fourblanklines= line2 - 3
|
let fourblanklines= line2 - 3
|
||||||
silent fourblanklines.",".line2."g/^\s*/d"
|
silent fourblanklines .. "," .. line2 .. "g/^\s*/d"
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
endif
|
endif
|
||||||
@@ -1975,7 +1975,7 @@ To use this function, simply assign its output to |g:netrw_list_hide| option. >
|
|||||||
Example: let g:netrw_list_hide= netrw_gitignore#Hide('my_gitignore_file')
|
Example: let g:netrw_list_hide= netrw_gitignore#Hide('my_gitignore_file')
|
||||||
Function can take additional files with git-ignore patterns.
|
Function can take additional files with git-ignore patterns.
|
||||||
|
|
||||||
Example: g:netrw_list_hide= netrw_gitignore#Hide() . '.*\.swp$'
|
Example: let g:netrw_list_hide= netrw_gitignore#Hide() .. '.*\.swp$'
|
||||||
Combining 'netrw_gitignore#Hide' with custom patterns.
|
Combining 'netrw_gitignore#Hide' with custom patterns.
|
||||||
<
|
<
|
||||||
|
|
||||||
@@ -2825,7 +2825,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
let g:netrw_list_hide= '.*\.swp$'
|
let g:netrw_list_hide= '.*\.swp$'
|
||||||
let g:netrw_list_hide= netrw_gitignore#Hide().'.*\.swp$'
|
let g:netrw_list_hide= netrw_gitignore#Hide() .. '.*\.swp$'
|
||||||
default: ""
|
default: ""
|
||||||
|
|
||||||
*g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
|
*g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*popup.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
*popup.txt* For Vim version 8.2. Last change: 2022 Jan 08
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -54,7 +54,7 @@ A popup window has a window-ID like other windows, but behaves differently.
|
|||||||
The size can be up to the whole Vim window and it overlaps other windows.
|
The size can be up to the whole Vim window and it overlaps other windows.
|
||||||
Popup windows can also overlap each other. The "zindex" property specifies
|
Popup windows can also overlap each other. The "zindex" property specifies
|
||||||
what goes on top of what.
|
what goes on top of what.
|
||||||
|
*E366*
|
||||||
The popup window contains a buffer, and that buffer is always associated with
|
The popup window contains a buffer, and that buffer is always associated with
|
||||||
the popup window. The window cannot be in Normal, Visual or Insert mode, it
|
the popup window. The window cannot be in Normal, Visual or Insert mode, it
|
||||||
does not get keyboard focus. You can use functions like `setbufline()` to
|
does not get keyboard focus. You can use functions like `setbufline()` to
|
||||||
@@ -262,7 +262,7 @@ popup_close({id} [, {result}]) *popup_close()*
|
|||||||
|
|
||||||
|
|
||||||
popup_create({what}, {options}) *popup_create()*
|
popup_create({what}, {options}) *popup_create()*
|
||||||
Open a popup window showing {what}, which is either:
|
Open a popup window showing {what}, which is either: *E450*
|
||||||
- a buffer number
|
- a buffer number
|
||||||
- a string
|
- a string
|
||||||
- a list of strings
|
- a list of strings
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*print.txt* For Vim version 8.2. Last change: 2021 Oct 04
|
*print.txt* For Vim version 8.2. Last change: 2022 Jan 23
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -139,28 +139,28 @@ If there is no error, return zero or an empty string.
|
|||||||
The default for non MS-Windows or VMS systems is to simply use "lpr" to print
|
The default for non MS-Windows or VMS systems is to simply use "lpr" to print
|
||||||
the file: >
|
the file: >
|
||||||
|
|
||||||
system('lpr' . (&printdevice == '' ? '' : ' -P' . &printdevice)
|
system('lpr' .. (&printdevice == '' ? '' : ' -P' .. &printdevice)
|
||||||
. ' ' . v:fname_in) . delete(v:fname_in) + v:shell_error
|
.. ' ' .. v:fname_in) .. delete(v:fname_in) + v:shell_error
|
||||||
|
|
||||||
On MS-Windows machines the default is to copy the file to the currently
|
On MS-Windows machines the default is to copy the file to the currently
|
||||||
specified printdevice: >
|
specified printdevice: >
|
||||||
|
|
||||||
system('copy' . ' ' . v:fname_in . (&printdevice == ''
|
system('copy' .. ' ' .. v:fname_in .. (&printdevice == ''
|
||||||
? ' LPT1:' : (' \"' . &printdevice . '\"')))
|
? ' LPT1:' : (' \"' .. &printdevice .. '\"')))
|
||||||
. delete(v:fname_in)
|
.. delete(v:fname_in)
|
||||||
|
|
||||||
On VMS machines the default is to send the file to either the default or
|
On VMS machines the default is to send the file to either the default or
|
||||||
currently specified printdevice: >
|
currently specified printdevice: >
|
||||||
|
|
||||||
system('print' . (&printdevice == '' ? '' : ' /queue=' .
|
system('print' .. (&printdevice == '' ? '' : ' /queue=' ..
|
||||||
&printdevice) . ' ' . v:fname_in) . delete(v:fname_in)
|
&printdevice) .. ' ' .. v:fname_in) .. delete(v:fname_in)
|
||||||
|
|
||||||
If you change this option, using a function is an easy way to avoid having to
|
If you change this option, using a function is an easy way to avoid having to
|
||||||
escape all the spaces. Example: >
|
escape all the spaces. Example: >
|
||||||
|
|
||||||
:set printexpr=PrintFile(v:fname_in)
|
:set printexpr=PrintFile(v:fname_in)
|
||||||
:function PrintFile(fname)
|
:function PrintFile(fname)
|
||||||
: call system("ghostview " . a:fname)
|
: call system("ghostview " .. a:fname)
|
||||||
: call delete(a:fname)
|
: call delete(a:fname)
|
||||||
: return v:shell_error
|
: return v:shell_error
|
||||||
:endfunc
|
:endfunc
|
||||||
@@ -174,6 +174,13 @@ an error message. In that case Vim will delete the file. In the default
|
|||||||
value for non-MS-Windows a trick is used: Adding "v:shell_error" will result
|
value for non-MS-Windows a trick is used: Adding "v:shell_error" will result
|
||||||
in a non-zero number when the system() call fails.
|
in a non-zero number when the system() call fails.
|
||||||
|
|
||||||
|
If the expression starts with s: or |<SID>|, then it is replaced with the
|
||||||
|
script ID (|local-function|). Example: >
|
||||||
|
set printexpr=s:MyPrintFile()
|
||||||
|
set printexpr=<SID>SomePrintFile()
|
||||||
|
Otherwise, the expression is evaluated in the context of the script where the
|
||||||
|
option was set, thus script-local items are available.
|
||||||
|
|
||||||
This option cannot be set from a |modeline| or in the |sandbox|, for security
|
This option cannot be set from a |modeline| or in the |sandbox|, for security
|
||||||
reasons.
|
reasons.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*quickfix.txt* For Vim version 8.2. Last change: 2021 May 22
|
*quickfix.txt* For Vim version 8.2. Last change: 2022 Feb 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -244,7 +244,7 @@ processing a quickfix or location list command, it will be aborted.
|
|||||||
[!] is not used. It works like ":qall!" |:qall|,
|
[!] is not used. It works like ":qall!" |:qall|,
|
||||||
except that Vim returns a non-zero exit code.
|
except that Vim returns a non-zero exit code.
|
||||||
|
|
||||||
*:cf* *:cfile*
|
*:cf* *:cfi* *:cfile*
|
||||||
:cf[ile][!] [errorfile] Read the error file and jump to the first error.
|
:cf[ile][!] [errorfile] Read the error file and jump to the first error.
|
||||||
This is done automatically when Vim is started with
|
This is done automatically when Vim is started with
|
||||||
the -q option. You can use this command when you
|
the -q option. You can use this command when you
|
||||||
@@ -353,7 +353,7 @@ processing a quickfix or location list command, it will be aborted.
|
|||||||
cursor position will not be changed. See |:cexpr| for
|
cursor position will not be changed. See |:cexpr| for
|
||||||
more information.
|
more information.
|
||||||
Example: >
|
Example: >
|
||||||
:g/mypattern/caddexpr expand("%") . ":" . line(".") . ":" . getline(".")
|
:g/mypattern/caddexpr expand("%") .. ":" .. line(".") .. ":" .. getline(".")
|
||||||
<
|
<
|
||||||
*:lad* *:addd* *:laddexpr*
|
*:lad* *:addd* *:laddexpr*
|
||||||
:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
|
:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
|
||||||
@@ -654,6 +654,27 @@ quickfix window. If there already is a window for that file, it is used
|
|||||||
instead. If the buffer in the used window has changed, and the error is in
|
instead. If the buffer in the used window has changed, and the error is in
|
||||||
another file, jumping to the error will fail. You will first have to make
|
another file, jumping to the error will fail. You will first have to make
|
||||||
sure the window contains a buffer which can be abandoned.
|
sure the window contains a buffer which can be abandoned.
|
||||||
|
|
||||||
|
When you select a file from the quickfix window, the following steps are used
|
||||||
|
to find a window to edit the file:
|
||||||
|
|
||||||
|
1. If a window displaying the selected file is present in the current tabpage
|
||||||
|
(starting with the window before the quickfix window), then that window is
|
||||||
|
used.
|
||||||
|
2. If the above step fails and if 'switchbuf' contains "usetab" and a window
|
||||||
|
displaying the selected file is present in any one of the tabpages
|
||||||
|
(starting with the first tabpage) then that window is used.
|
||||||
|
3. If the above step fails then a window in the current tabpage displaying a
|
||||||
|
buffer with 'buftype' not set (starting with the window before the quickfix
|
||||||
|
window) is used.
|
||||||
|
4. If the above step fails and if 'switchbuf' contains "uselast", then the
|
||||||
|
previously accessed window is used.
|
||||||
|
5. If the above step fails then the window before the quickfix window is used.
|
||||||
|
If there is no previous window, then the window after the quickfix window
|
||||||
|
is used.
|
||||||
|
6. If the above step fails, then a new horizontally split window above the
|
||||||
|
quickfix window is used.
|
||||||
|
|
||||||
*CTRL-W_<Enter>* *CTRL-W_<CR>*
|
*CTRL-W_<Enter>* *CTRL-W_<CR>*
|
||||||
You can use CTRL-W <Enter> to open a new window and jump to the error there.
|
You can use CTRL-W <Enter> to open a new window and jump to the error there.
|
||||||
|
|
||||||
@@ -663,7 +684,7 @@ FileType event (also see |qf.vim|). Then the BufReadPost event is triggered,
|
|||||||
using "quickfix" for the buffer name. This can be used to perform some action
|
using "quickfix" for the buffer name. This can be used to perform some action
|
||||||
on the listed errors. Example: >
|
on the listed errors. Example: >
|
||||||
au BufReadPost quickfix setlocal modifiable
|
au BufReadPost quickfix setlocal modifiable
|
||||||
\ | silent exe 'g/^/s//\=line(".")." "/'
|
\ | silent exe 'g/^/s//\=line(".") .. " "/'
|
||||||
\ | setlocal nomodifiable
|
\ | setlocal nomodifiable
|
||||||
This prepends the line number to each line. Note the use of "\=" in the
|
This prepends the line number to each line. Note the use of "\=" in the
|
||||||
substitute string of the ":s" command, which is used to evaluate an
|
substitute string of the ":s" command, which is used to evaluate an
|
||||||
@@ -692,13 +713,15 @@ this window, the displayed location list is used.
|
|||||||
When you select a file from the location list window, the following steps are
|
When you select a file from the location list window, the following steps are
|
||||||
used to find a window to edit the file:
|
used to find a window to edit the file:
|
||||||
|
|
||||||
1. If a window with the location list displayed in the location list window is
|
1. If a non-quickfix window associated with the location list is present in
|
||||||
present, then the file is opened in that window.
|
the current tabpage, then that window is used.
|
||||||
2. If the above step fails and if the file is already opened in another
|
2. If the above step fails and if the file is already opened in another window
|
||||||
window, then that window is used.
|
in the current tabpage, then that window is used.
|
||||||
3. If the above step fails then an existing window showing a buffer with
|
3. If the above step fails and 'switchbuf' contains "usetab" and if the file
|
||||||
'buftype' not set is used.
|
is opened in a window in any one of the tabpages, then that window is used.
|
||||||
4. If the above step fails, then the file is edited in a new window.
|
4. If the above step fails then a window in the current tabpage showing a
|
||||||
|
buffer with 'buftype' not set is used.
|
||||||
|
5. If the above step fails, then the file is edited in a new window.
|
||||||
|
|
||||||
In all of the above cases, if the location list for the selected window is not
|
In all of the above cases, if the location list for the selected window is not
|
||||||
yet set, then it is set to the location list displayed in the location list
|
yet set, then it is set to the location list displayed in the location list
|
||||||
@@ -856,9 +879,9 @@ lists. They set one of the existing error lists as the current one.
|
|||||||
*:chistory* *:chi*
|
*:chistory* *:chi*
|
||||||
:[count]chi[story] Show the list of error lists. The current list is
|
:[count]chi[story] Show the list of error lists. The current list is
|
||||||
marked with ">". The output looks like:
|
marked with ">". The output looks like:
|
||||||
error list 1 of 3; 43 errors ~
|
error list 1 of 3; 43 errors :make ~
|
||||||
> error list 2 of 3; 0 errors ~
|
> error list 2 of 3; 0 errors :helpgrep tag ~
|
||||||
error list 3 of 3; 15 errors ~
|
error list 3 of 3; 15 errors :grep ex_help *.c ~
|
||||||
|
|
||||||
When [count] is given, then the count'th quickfix
|
When [count] is given, then the count'th quickfix
|
||||||
list is made the current list. Example: >
|
list is made the current list. Example: >
|
||||||
@@ -1037,7 +1060,7 @@ commands can be combined to create a NewGrep command: >
|
|||||||
matching is used to find matching lines. In this
|
matching is used to find matching lines. In this
|
||||||
case, {pattern} is treated as a literal string
|
case, {pattern} is treated as a literal string
|
||||||
instead of a regular expression. See
|
instead of a regular expression. See
|
||||||
|fuzzy-match| for more information about fuzzy
|
|fuzzy-matching| for more information about fuzzy
|
||||||
matching strings.
|
matching strings.
|
||||||
|
|
||||||
|QuickFixCmdPre| and |QuickFixCmdPost| are triggered.
|
|QuickFixCmdPre| and |QuickFixCmdPost| are triggered.
|
||||||
@@ -1385,12 +1408,17 @@ Basic items
|
|||||||
%f file name (finds a string)
|
%f file name (finds a string)
|
||||||
%o module name (finds a string)
|
%o module name (finds a string)
|
||||||
%l line number (finds a number)
|
%l line number (finds a number)
|
||||||
|
%e end 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, byte index, a <tab> is 1
|
column of the error, byte index, a <tab> is 1
|
||||||
character column)
|
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))
|
||||||
|
%k end column number (finds a number representing
|
||||||
|
the character column of the error, byte index, or a
|
||||||
|
number representing screen end column of the error if
|
||||||
|
it's used with %v)
|
||||||
%t error type (finds a single character):
|
%t error type (finds a single character):
|
||||||
e - error message
|
e - error message
|
||||||
w - warning message
|
w - warning message
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*quickref.txt* For Vim version 8.2. Last change: 2021 Oct 17
|
*quickref.txt* For Vim version 8.2. Last change: 2021 Dec 21
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -635,6 +635,7 @@ Short explanation of each option: *option-list*
|
|||||||
'buflisted' 'bl' whether the buffer shows up in the buffer list
|
'buflisted' 'bl' whether the buffer shows up in the buffer list
|
||||||
'buftype' 'bt' special type of buffer
|
'buftype' 'bt' special type of buffer
|
||||||
'casemap' 'cmp' specifies how case of letters is changed
|
'casemap' 'cmp' specifies how case of letters is changed
|
||||||
|
'cdhome' 'cdh' change directory to the home directory by ":cd"
|
||||||
'cdpath' 'cd' list of directories searched with ":cd"
|
'cdpath' 'cd' list of directories searched with ":cd"
|
||||||
'cedit' key used to open the command-line window
|
'cedit' key used to open the command-line window
|
||||||
'charconvert' 'ccv' expression for character encoding conversion
|
'charconvert' 'ccv' expression for character encoding conversion
|
||||||
@@ -1009,6 +1010,7 @@ Short explanation of each option: *option-list*
|
|||||||
'writeany' 'wa' write to file with no need for "!" override
|
'writeany' 'wa' write to file with no need for "!" override
|
||||||
'writebackup' 'wb' make a backup before overwriting a file
|
'writebackup' 'wb' make a backup before overwriting a file
|
||||||
'writedelay' 'wd' delay this many msec for each char (for debug)
|
'writedelay' 'wd' delay this many msec for each char (for debug)
|
||||||
|
'xtermcodes' request terminal codes from an xterm
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
*Q_ur* Undo/Redo commands
|
*Q_ur* Undo/Redo commands
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*remote.txt* For Vim version 8.2. Last change: 2019 May 05
|
*remote.txt* For Vim version 8.2. Last change: 2022 Feb 17
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -120,6 +120,10 @@ when sending command to it.
|
|||||||
|
|
||||||
The --serverlist argument will cause Vim to print a list of registered command
|
The --serverlist argument will cause Vim to print a list of registered command
|
||||||
servers on the standard output (stdout) and exit.
|
servers on the standard output (stdout) and exit.
|
||||||
|
*{server}*
|
||||||
|
The {server} argument is used by several functions. When this is an empty
|
||||||
|
string then on Unix the default server name is used, which is "GVIM". On
|
||||||
|
MS-Windows an empty string does not work.
|
||||||
|
|
||||||
Win32 Note: Making the Vim server go to the foreground doesn't always work,
|
Win32 Note: Making the Vim server go to the foreground doesn't always work,
|
||||||
because MS-Windows doesn't allow it. The client will move the server to the
|
because MS-Windows doesn't allow it. The client will move the server to the
|
||||||
@@ -143,7 +147,7 @@ You can not put options there!
|
|||||||
FUNCTIONS
|
FUNCTIONS
|
||||||
*E240* *E573*
|
*E240* *E573*
|
||||||
There are a number of Vim functions for scripting the command server. See
|
There are a number of Vim functions for scripting the command server. See
|
||||||
the description in |eval.txt| or use CTRL-] on the function name to jump to
|
the description in |builtin.txt| or use CTRL-] on the function name to jump to
|
||||||
the full explanation.
|
the full explanation.
|
||||||
|
|
||||||
synopsis explanation ~
|
synopsis explanation ~
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*repeat.txt* For Vim version 8.2. Last change: 2021 Nov 24
|
*repeat.txt* For Vim version 8.2. Last change: 2022 Jan 21
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -197,6 +197,37 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
:so[urce] {file} Read Ex commands from {file}. These are commands that
|
:so[urce] {file} Read Ex commands from {file}. These are commands that
|
||||||
start with a ":".
|
start with a ":".
|
||||||
Triggers the |SourcePre| autocommand.
|
Triggers the |SourcePre| autocommand.
|
||||||
|
|
||||||
|
:[range]so[urce] [++clear]
|
||||||
|
Read Ex commands from the [range] of lines in the
|
||||||
|
current buffer.
|
||||||
|
|
||||||
|
When sourcing commands from the current buffer, the
|
||||||
|
same script-ID |<SID>| is used even if the buffer is
|
||||||
|
sourced multiple times. If a buffer is sourced more
|
||||||
|
than once, then the functions in the buffer are
|
||||||
|
defined again.
|
||||||
|
|
||||||
|
To source a range of lines that doesn't start with the
|
||||||
|
|:vim9script| command in Vim9 script context, the
|
||||||
|
|:vim9cmd| modifier can be used.
|
||||||
|
|
||||||
|
When a range of lines in a buffer is sourced in the
|
||||||
|
Vim9 script context, the previously defined
|
||||||
|
script-local variables and functions are not cleared.
|
||||||
|
This works like the range started with the
|
||||||
|
":vim9script noclear" command. The "++clear" argument
|
||||||
|
can be used to clear the script-local variables and
|
||||||
|
functions before sourcing the script. This works like
|
||||||
|
the range started with the |:vimscript| command
|
||||||
|
without the "noclear" argument. See |vim9-reload| for
|
||||||
|
more information.
|
||||||
|
Examples: >
|
||||||
|
|
||||||
|
:4,5source
|
||||||
|
:vim9cmd :'<,'>source
|
||||||
|
:10,18source ++clear
|
||||||
|
|
||||||
*:source!*
|
*:source!*
|
||||||
:so[urce]! {file} Read Vim commands from {file}. These are commands
|
:so[urce]! {file} Read Vim commands from {file}. These are commands
|
||||||
that are executed from Normal mode, like you type
|
that are executed from Normal mode, like you type
|
||||||
@@ -354,7 +385,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
<
|
<
|
||||||
|
|
||||||
:scriptv[ersion] {version} *:scriptv* *:scriptversion*
|
:scriptv[ersion] {version} *:scriptv* *:scriptversion*
|
||||||
*E999* *E984*
|
*E999* *E984* *E1040*
|
||||||
Specify the version of Vim for the lines that follow
|
Specify the version of Vim for the lines that follow
|
||||||
in the same file. Only applies at the toplevel of
|
in the same file. Only applies at the toplevel of
|
||||||
sourced scripts, not inside functions.
|
sourced scripts, not inside functions.
|
||||||
@@ -367,8 +398,8 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
|
|
||||||
:vim9s[cript] [noclear] *:vim9s* *: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|. *E1038*
|
||||||
Must be the first command in the file.
|
Must be the first command in the file. *E1039*
|
||||||
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.
|
||||||
@@ -377,8 +408,11 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
|||||||
|
|
||||||
*: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 encountered. The number is used for the script
|
||||||
|<SID>|.
|
ID |<SID>|.
|
||||||
|
For a script that was used with `import autoload` but
|
||||||
|
was not actually sourced yet an "A" is shown after the
|
||||||
|
script ID.
|
||||||
{not available when compiled without the |+eval|
|
{not available when compiled without the |+eval|
|
||||||
feature}
|
feature}
|
||||||
|
|
||||||
@@ -416,10 +450,10 @@ An alternative is to put the commands in a file, and execute them with the
|
|||||||
':source!' command. Useful for long command sequences. Can be combined with
|
':source!' command. Useful for long command sequences. Can be combined with
|
||||||
the ':map' command to put complicated commands under a function key.
|
the ':map' command to put complicated commands under a function key.
|
||||||
|
|
||||||
The ':source' command reads Ex commands from a file line by line. You will
|
The ':source' command reads Ex commands from a file or a buffer line by line.
|
||||||
have to type any needed keyboard input. The ':source!' command reads from a
|
You will have to type any needed keyboard input. The ':source!' command reads
|
||||||
script file character by character, interpreting each character as if you
|
from a script file character by character, interpreting each character as if
|
||||||
typed it.
|
you typed it.
|
||||||
|
|
||||||
Example: When you give the ":!ls" command you get the |hit-enter| prompt. If
|
Example: When you give the ":!ls" command you get the |hit-enter| prompt. If
|
||||||
you ':source' a file with the line "!ls" in it, you will have to type the
|
you ':source' a file with the line "!ls" in it, you will have to type the
|
||||||
@@ -495,6 +529,9 @@ space at the end of a line is hard to see and may be accidentally deleted. >
|
|||||||
\ "very long regexp"
|
\ "very long regexp"
|
||||||
\ keepend
|
\ keepend
|
||||||
|
|
||||||
|
In |Vim9| script the backslash can often be omitted, but not always.
|
||||||
|
See |vim9-line-continuation|.
|
||||||
|
|
||||||
There is a problem with the ":append" and ":insert" commands: >
|
There is a problem with the ":append" and ":insert" commands: >
|
||||||
:1append
|
:1append
|
||||||
\asdf
|
\asdf
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*sign.txt* For Vim version 8.2. Last change: 2021 Mar 07
|
*sign.txt* For Vim version 8.2. Last change: 2021 Dec 05
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Gordon Prieur
|
VIM REFERENCE MANUAL by Gordon Prieur
|
||||||
@@ -101,7 +101,7 @@ precedence, otherwise the 'cursorline' highlighting.
|
|||||||
Here is an example that places a sign "piet", displayed with the text ">>", in
|
Here is an example that places a sign "piet", displayed with the text ">>", in
|
||||||
line 23 of the current file: >
|
line 23 of the current file: >
|
||||||
:sign define piet text=>> texthl=Search
|
:sign define piet text=>> texthl=Search
|
||||||
:exe ":sign place 2 line=23 name=piet file=" . expand("%:p")
|
:exe ":sign place 2 line=23 name=piet file=" .. expand("%:p")
|
||||||
|
|
||||||
And here is the command to delete it again: >
|
And here is the command to delete it again: >
|
||||||
:sign unplace 2
|
:sign unplace 2
|
||||||
@@ -140,6 +140,11 @@ See |sign_define()| for the equivalent Vim script function.
|
|||||||
Highlighting group used for the whole line the sign is placed
|
Highlighting group used for the whole line the sign is placed
|
||||||
in. Most useful is defining a background color.
|
in. Most useful is defining a background color.
|
||||||
|
|
||||||
|
numhl={group}
|
||||||
|
Highlighting group used for the line number on the line where
|
||||||
|
the sign is placed. Overrides |hl-LineNr|, |hl-LineNrAbove|,
|
||||||
|
|hl-LineNrBelow|, and |hl-CursorLineNr|.
|
||||||
|
|
||||||
text={text} *E239*
|
text={text} *E239*
|
||||||
Define the text that is displayed when there is no icon or the
|
Define the text that is displayed when there is no icon or the
|
||||||
GUI is not being used. Only printable characters are allowed
|
GUI is not being used. Only printable characters are allowed
|
||||||
@@ -396,6 +401,8 @@ sign_define({list})
|
|||||||
icon full path to the bitmap file for the sign.
|
icon full path to the bitmap file for the sign.
|
||||||
linehl highlight group used for the whole line the
|
linehl highlight group used for the whole line the
|
||||||
sign is placed in.
|
sign is placed in.
|
||||||
|
numhl highlight group used for the line number where
|
||||||
|
the sign is placed.
|
||||||
text text that is displayed when there is no icon
|
text text that is displayed when there is no icon
|
||||||
or the GUI is not being used.
|
or the GUI is not being used.
|
||||||
texthl highlight group used for the text item
|
texthl highlight group used for the text item
|
||||||
@@ -441,14 +448,18 @@ sign_getdefined([{name}]) *sign_getdefined()*
|
|||||||
following entries:
|
following entries:
|
||||||
icon full path to the bitmap file of the sign
|
icon full path to the bitmap file of the sign
|
||||||
linehl highlight group used for the whole line the
|
linehl highlight group used for the whole line the
|
||||||
sign is placed in.
|
sign is placed in; not present if not set
|
||||||
name name of the sign
|
name name of the sign
|
||||||
|
numhl highlight group used for the line number where
|
||||||
|
the sign is placed; not present if not set
|
||||||
text text that is displayed when there is no icon
|
text text that is displayed when there is no icon
|
||||||
or the GUI is not being used.
|
or the GUI is not being used.
|
||||||
texthl highlight group used for the text item
|
texthl highlight group used for the text item; not
|
||||||
|
present if not set
|
||||||
culhl highlight group used for the text item when
|
culhl highlight group used for the text item when
|
||||||
the cursor is on the same line as the sign and
|
the cursor is on the same line as the sign and
|
||||||
'cursorline' is enabled.
|
'cursorline' is enabled; not present if not
|
||||||
|
set
|
||||||
|
|
||||||
Returns an empty List if there are no signs and when {name} is
|
Returns an empty List if there are no signs and when {name} is
|
||||||
not found.
|
not found.
|
||||||
|
|||||||
@@ -131,8 +131,8 @@ zuG Undo |zW| and |zG|, remove the word from the internal
|
|||||||
rare as this is a fairly uncommon command and all
|
rare as this is a fairly uncommon command and all
|
||||||
intuitive commands for this are already taken. If you
|
intuitive commands for this are already taken. If you
|
||||||
want you can add mappings with e.g.: >
|
want you can add mappings with e.g.: >
|
||||||
nnoremap z? :exe ':spellrare ' . expand('<cWORD>')<CR>
|
nnoremap z? :exe ':spellrare ' .. expand('<cWORD>')<CR>
|
||||||
nnoremap z/ :exe ':spellrare! ' . expand('<cWORD>')<CR>
|
nnoremap z/ :exe ':spellrare! ' .. expand('<cWORD>')<CR>
|
||||||
< |:spellundo|, |zuw|, or |zuW| can be used to undo this.
|
< |:spellundo|, |zuw|, or |zuW| can be used to undo this.
|
||||||
|
|
||||||
:spellr[rare]! {word} Add {word} as a rare word to the internal word
|
:spellr[rare]! {word} Add {word} as a rare word to the internal word
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*starting.txt* For Vim version 8.2. Last change: 2021 May 08
|
*starting.txt* For Vim version 8.2. Last change: 2022 Feb 01
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -256,6 +256,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
|||||||
Interfaces, such as Python, Ruby and Lua, are also disabled,
|
Interfaces, such as Python, Ruby and Lua, are also disabled,
|
||||||
since they could be used to execute shell commands. Perl uses
|
since they could be used to execute shell commands. Perl uses
|
||||||
the Safe module.
|
the Safe module.
|
||||||
|
For Unix restricted mode is used when the last part of $SHELL
|
||||||
|
is "nologin" or "false".
|
||||||
Note that the user may still find a loophole to execute a
|
Note that the user may still find a loophole to execute a
|
||||||
shell command, it has only been made difficult.
|
shell command, it has only been made difficult.
|
||||||
|
|
||||||
@@ -268,8 +270,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
|||||||
started if possible.
|
started if possible.
|
||||||
|
|
||||||
*-e*
|
*-e*
|
||||||
-e Start Vim in Ex mode |Q|. Only makes a difference when the
|
-e Start Vim in Ex mode, see |Ex-mode|. Only makes a difference
|
||||||
executable is not called "ex".
|
when the executable is not called "ex".
|
||||||
|
|
||||||
*-E*
|
*-E*
|
||||||
-E Start Vim in improved Ex mode |gQ|. Only makes a difference
|
-E Start Vim in improved Ex mode |gQ|. Only makes a difference
|
||||||
@@ -560,6 +562,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
|||||||
":source!". When the "scriptout" file already exists, new
|
":source!". When the "scriptout" file already exists, new
|
||||||
characters are appended. See also |complex-repeat|.
|
characters are appended. See also |complex-repeat|.
|
||||||
{scriptout} cannot start with a digit.
|
{scriptout} cannot start with a digit.
|
||||||
|
If you want to record what is typed in a human readable for
|
||||||
|
you can use |ch_logfile()|, It adds "raw key input" lines.
|
||||||
|
|
||||||
*-W*
|
*-W*
|
||||||
-W {scriptout} Like -w, but do not append, overwrite an existing file.
|
-W {scriptout} Like -w, but do not append, overwrite an existing file.
|
||||||
@@ -1374,7 +1378,7 @@ resulting file, when executed with a ":source" command:
|
|||||||
After restoring the Session, the full filename of your current Session is
|
After restoring the Session, the full filename of your current Session is
|
||||||
available in the internal variable "v:this_session" |this_session-variable|.
|
available in the internal variable "v:this_session" |this_session-variable|.
|
||||||
An example mapping: >
|
An example mapping: >
|
||||||
:nmap <F2> :wa<Bar>exe "mksession! " . v:this_session<CR>:so ~/sessions/
|
:nmap <F2> :wa<Bar>exe "mksession! " .. v:this_session<CR>:so ~/sessions/
|
||||||
This saves the current Session, and starts off the command to load another.
|
This saves the current Session, and starts off the command to load another.
|
||||||
|
|
||||||
A session includes all tab pages, unless "tabpages" was removed from
|
A session includes all tab pages, unless "tabpages" was removed from
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*syntax.txt* For Vim version 8.2. Last change: 2021 Nov 20
|
*syntax.txt* For Vim version 8.2. Last change: 2022 Mar 02
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -215,7 +215,8 @@ A syntax group name doesn't specify any color or attributes itself.
|
|||||||
|
|
||||||
The name for a highlight or syntax group must consist of ASCII letters, digits
|
The name for a highlight or syntax group must consist of ASCII letters, digits
|
||||||
and the underscore. As a regexp: "[a-zA-Z0-9_]*". However, Vim does not give
|
and the underscore. As a regexp: "[a-zA-Z0-9_]*". However, Vim does not give
|
||||||
an error when using other characters.
|
an error when using other characters. The maxium length of a group name is
|
||||||
|
about 200 bytes. *E1249*
|
||||||
|
|
||||||
To be able to allow each user to pick their favorite set of colors, there must
|
To be able to allow each user to pick their favorite set of colors, there must
|
||||||
be preferred names for highlight groups that are common for many languages.
|
be preferred names for highlight groups that are common for many languages.
|
||||||
@@ -652,7 +653,7 @@ evaluate to get a unique string to append to each ID used in a given document,
|
|||||||
so that the full IDs will be unique even when combined with other content in a
|
so that the full IDs will be unique even when combined with other content in a
|
||||||
larger HTML document. Example, to append _ and the buffer number to each ID: >
|
larger HTML document. Example, to append _ and the buffer number to each ID: >
|
||||||
|
|
||||||
:let g:html_id_expr = '"_".bufnr("%")'
|
:let g:html_id_expr = '"_" .. bufnr("%")'
|
||||||
<
|
<
|
||||||
To append a string "_mystring" to the end of each ID: >
|
To append a string "_mystring" to the end of each ID: >
|
||||||
|
|
||||||
@@ -956,12 +957,16 @@ the options 'foldminlines' and 'foldnestmax' in |.vimrc| or use |:setlocal| in
|
|||||||
|
|
||||||
BASIC *basic.vim* *vb.vim* *ft-basic-syntax* *ft-vb-syntax*
|
BASIC *basic.vim* *vb.vim* *ft-basic-syntax* *ft-vb-syntax*
|
||||||
|
|
||||||
Both Visual Basic and "normal" basic use the extension ".bas". To detect
|
Both Visual Basic and "normal" BASIC use the extension ".bas". To detect
|
||||||
which one should be used, Vim checks for the string "VB_Name" in the first
|
which one should be used, Vim checks for the string "VB_Name" in the first
|
||||||
five lines of the file. If it is not found, filetype will be "basic",
|
five lines of the file. If it is not found, filetype will be "basic",
|
||||||
otherwise "vb". Files with the ".frm" extension will always be seen as Visual
|
otherwise "vb". Files with the ".frm" extension will always be seen as Visual
|
||||||
Basic.
|
Basic.
|
||||||
|
|
||||||
|
If the automatic detection doesn't work for you or you only edit, for
|
||||||
|
example, FreeBASIC files, use this in your startup vimrc: >
|
||||||
|
:let filetype_bas = "freebasic"
|
||||||
|
|
||||||
|
|
||||||
C *c.vim* *ft-c-syntax*
|
C *c.vim* *ft-c-syntax*
|
||||||
|
|
||||||
@@ -1442,7 +1447,7 @@ add the following line to your startup file: >
|
|||||||
|
|
||||||
:let g:filetype_euphoria = "euphoria4"
|
:let g:filetype_euphoria = "euphoria4"
|
||||||
|
|
||||||
Elixir and Euphoria share the *.ex file extension. If the filetype is
|
Elixir and Euphoria share the *.ex file extension. If the filetype is
|
||||||
specifically set as Euphoria with the g:filetype_euphoria variable, or the
|
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
|
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
|
filetype will be set as Euphoria. Otherwise, the filetype will default to
|
||||||
@@ -1473,7 +1478,7 @@ The following file extensions are auto-detected as Elixir file types:
|
|||||||
|
|
||||||
*.ex, *.exs, *.eex, *.leex, *.lock
|
*.ex, *.exs, *.eex, *.leex, *.lock
|
||||||
|
|
||||||
Elixir and Euphoria share the *.ex file extension. If the filetype is
|
Elixir and Euphoria share the *.ex file extension. If the filetype is
|
||||||
specifically set as Euphoria with the g:filetype_euphoria variable, or the
|
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
|
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
|
filetype will be set as Euphoria. Otherwise, the filetype will default to
|
||||||
@@ -1532,6 +1537,14 @@ The enhanced mode also takes advantage of additional color features for a dark
|
|||||||
gvim display. Here, statements are colored LightYellow instead of Yellow, and
|
gvim display. Here, statements are colored LightYellow instead of Yellow, and
|
||||||
conditionals are LightBlue for better distinction.
|
conditionals are LightBlue for better distinction.
|
||||||
|
|
||||||
|
Both Visual Basic and FORM use the extension ".frm". To detect which one
|
||||||
|
should be used, Vim checks for the string "VB_Name" in the first five lines of
|
||||||
|
the file. If it is found, filetype will be "vb", otherwise "form".
|
||||||
|
|
||||||
|
If the automatic detection doesn't work for you or you only edit, for
|
||||||
|
example, FORM files, use this in your startup vimrc: >
|
||||||
|
:let filetype_frm = "form"
|
||||||
|
|
||||||
|
|
||||||
FORTH *forth.vim* *ft-forth-syntax*
|
FORTH *forth.vim* *ft-forth-syntax*
|
||||||
|
|
||||||
@@ -3196,6 +3209,14 @@ buffer by buffer basis.
|
|||||||
For more detailed instructions see |ft_sql.txt|.
|
For more detailed instructions see |ft_sql.txt|.
|
||||||
|
|
||||||
|
|
||||||
|
SQUIRREL *squirrel.vim* *ft-squirrel-syntax*
|
||||||
|
|
||||||
|
Squirrel is a high level imperative, object-oriented programming language,
|
||||||
|
designed to be a light-weight scripting language that fits in the size, memory
|
||||||
|
bandwidth, and real-time requirements of applications like video games. Files
|
||||||
|
with the following extensions are recognized as squirrel files: .nut.
|
||||||
|
|
||||||
|
|
||||||
TCSH *tcsh.vim* *ft-tcsh-syntax*
|
TCSH *tcsh.vim* *ft-tcsh-syntax*
|
||||||
|
|
||||||
This covers the shell named "tcsh". It is a superset of csh. See |csh.vim|
|
This covers the shell named "tcsh". It is a superset of csh. See |csh.vim|
|
||||||
@@ -3586,8 +3607,8 @@ Do you want to draw with the mouse? Try the following: >
|
|||||||
:function! GetPixel()
|
:function! GetPixel()
|
||||||
: let c = getline(".")[col(".") - 1]
|
: let c = getline(".")[col(".") - 1]
|
||||||
: echo c
|
: echo c
|
||||||
: exe "noremap <LeftMouse> <LeftMouse>r".c
|
: exe "noremap <LeftMouse> <LeftMouse>r" .. c
|
||||||
: exe "noremap <LeftDrag> <LeftMouse>r".c
|
: exe "noremap <LeftDrag> <LeftMouse>r" .. c
|
||||||
:endfunction
|
:endfunction
|
||||||
:noremap <RightMouse> <LeftMouse>:call GetPixel()<CR>
|
:noremap <RightMouse> <LeftMouse>:call GetPixel()<CR>
|
||||||
:set guicursor=n:hor20 " to see the color beneath the cursor
|
:set guicursor=n:hor20 " to see the color beneath the cursor
|
||||||
@@ -3692,12 +3713,13 @@ DEFINING CASE *:syn-case* *E390*
|
|||||||
items until the next ":syntax case" command are affected.
|
items until the next ":syntax case" command are affected.
|
||||||
|
|
||||||
:sy[ntax] case
|
:sy[ntax] case
|
||||||
Show either "syntax case match" or "syntax case ignore" (translated).
|
Show either "syntax case match" or "syntax case ignore".
|
||||||
|
|
||||||
|
|
||||||
DEFINING FOLDLEVEL *:syn-foldlevel*
|
DEFINING FOLDLEVEL *:syn-foldlevel*
|
||||||
|
|
||||||
:sy[ntax] foldlevel [start | minimum]
|
:sy[ntax] foldlevel start
|
||||||
|
:sy[ntax] foldlevel minimum
|
||||||
This defines how the foldlevel of a line is computed when using
|
This defines how the foldlevel of a line is computed when using
|
||||||
foldmethod=syntax (see |fold-syntax| and |:syn-fold|):
|
foldmethod=syntax (see |fold-syntax| and |:syn-fold|):
|
||||||
|
|
||||||
@@ -3710,13 +3732,16 @@ DEFINING FOLDLEVEL *:syn-foldlevel*
|
|||||||
may close and open horizontally within a line.
|
may close and open horizontally within a line.
|
||||||
|
|
||||||
:sy[ntax] foldlevel
|
:sy[ntax] foldlevel
|
||||||
Show either "syntax foldlevel start" or "syntax foldlevel minimum".
|
Show the current foldlevel method, either "syntax foldlevel start" or
|
||||||
|
"syntax foldlevel minimum".
|
||||||
|
|
||||||
{not meaningful when Vim was compiled without |+folding| feature}
|
{not meaningful when Vim was compiled without |+folding| feature}
|
||||||
|
|
||||||
SPELL CHECKING *:syn-spell*
|
SPELL CHECKING *:syn-spell*
|
||||||
|
|
||||||
:sy[ntax] spell [toplevel | notoplevel | default]
|
:sy[ntax] spell toplevel
|
||||||
|
:sy[ntax] spell notoplevel
|
||||||
|
:sy[ntax] spell default
|
||||||
This defines where spell checking is to be done for text that is not
|
This defines where spell checking is to be done for text that is not
|
||||||
in a syntax item:
|
in a syntax item:
|
||||||
|
|
||||||
@@ -3731,8 +3756,8 @@ SPELL CHECKING *:syn-spell*
|
|||||||
To activate spell checking the 'spell' option must be set.
|
To activate spell checking the 'spell' option must be set.
|
||||||
|
|
||||||
:sy[ntax] spell
|
:sy[ntax] spell
|
||||||
Show either "syntax spell toplevel", "syntax spell notoplevel" or
|
Show the current syntax spell checking method, either "syntax spell
|
||||||
"syntax spell default" (translated).
|
toplevel", "syntax spell notoplevel" or "syntax spell default".
|
||||||
|
|
||||||
|
|
||||||
SYNTAX ISKEYWORD SETTING *:syn-iskeyword*
|
SYNTAX ISKEYWORD SETTING *:syn-iskeyword*
|
||||||
@@ -4331,7 +4356,7 @@ IMPLICIT CONCEAL *:syn-conceal-implicit*
|
|||||||
given explicitly.
|
given explicitly.
|
||||||
|
|
||||||
:sy[ntax] conceal
|
:sy[ntax] conceal
|
||||||
Show either "syntax conceal on" or "syntax conceal off" (translated).
|
Show either "syntax conceal on" or "syntax conceal off".
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
8. Syntax patterns *:syn-pattern* *E401* *E402*
|
8. Syntax patterns *:syn-pattern* *E401* *E402*
|
||||||
@@ -4427,7 +4452,7 @@ Leading context *:syn-lc* *:syn-leading* *:syn-context*
|
|||||||
|
|
||||||
Note: This is an obsolete feature, only included for backwards compatibility
|
Note: This is an obsolete feature, only included for backwards compatibility
|
||||||
with previous Vim versions. It's now recommended to use the |/\@<=| construct
|
with previous Vim versions. It's now recommended to use the |/\@<=| construct
|
||||||
in the pattern.
|
in the pattern. You can also often use |/\zs|.
|
||||||
|
|
||||||
The "lc" offset specifies leading context -- a part of the pattern that must
|
The "lc" offset specifies leading context -- a part of the pattern that must
|
||||||
be present, but is not considered part of the match. An offset of "lc=n" will
|
be present, but is not considered part of the match. An offset of "lc=n" will
|
||||||
@@ -4498,7 +4523,7 @@ it marks the "\(\I\i*\)" sub-expression as external; in the end pattern, it
|
|||||||
changes the \z1 back-reference into an external reference referring to the
|
changes the \z1 back-reference into an external reference referring to the
|
||||||
first external sub-expression in the start pattern. External references can
|
first external sub-expression in the start pattern. External references can
|
||||||
also be used in skip patterns: >
|
also be used in skip patterns: >
|
||||||
:syn region foo start="start \(\I\i*\)" skip="not end \z1" end="end \z1"
|
:syn region foo start="start \z(\I\i*\)" skip="not end \z1" end="end \z1"
|
||||||
|
|
||||||
Note that normal and external sub-expressions are completely orthogonal and
|
Note that normal and external sub-expressions are completely orthogonal and
|
||||||
indexed separately; for instance, if the pattern "\z(..\)\(..\)" is applied
|
indexed separately; for instance, if the pattern "\z(..\)\(..\)" is applied
|
||||||
@@ -5528,11 +5553,12 @@ WARNING: The longer the tags file, the slower this will be, and the more
|
|||||||
memory Vim will consume.
|
memory Vim will consume.
|
||||||
|
|
||||||
Only highlighting typedefs, unions and structs can be done too. For this you
|
Only highlighting typedefs, unions and structs can be done too. For this you
|
||||||
must use Exuberant ctags (found at http://ctags.sf.net).
|
must use Universal Ctags (found at https://ctags.io) or Exuberant ctags (found
|
||||||
|
at http://ctags.sf.net).
|
||||||
|
|
||||||
Put these lines in your Makefile:
|
Put these lines in your Makefile:
|
||||||
|
|
||||||
# Make a highlight file for types. Requires Exuberant ctags and awk
|
# Make a highlight file for types. Requires Universal/Exuberant ctags and awk
|
||||||
types: types.vim
|
types: types.vim
|
||||||
types.vim: *.[ch]
|
types.vim: *.[ch]
|
||||||
ctags --c-kinds=gstu -o- *.[ch] |\
|
ctags --c-kinds=gstu -o- *.[ch] |\
|
||||||
@@ -5542,9 +5568,9 @@ types.vim: *.[ch]
|
|||||||
And put these lines in your .vimrc: >
|
And put these lines in your .vimrc: >
|
||||||
|
|
||||||
" load the types.vim highlighting file, if it exists
|
" load the types.vim highlighting file, if it exists
|
||||||
autocmd BufRead,BufNewFile *.[ch] let fname = expand('<afile>:p:h') . '/types.vim'
|
autocmd BufRead,BufNewFile *.[ch] let fname = expand('<afile>:p:h') .. '/types.vim'
|
||||||
autocmd BufRead,BufNewFile *.[ch] if filereadable(fname)
|
autocmd BufRead,BufNewFile *.[ch] if filereadable(fname)
|
||||||
autocmd BufRead,BufNewFile *.[ch] exe 'so ' . fname
|
autocmd BufRead,BufNewFile *.[ch] exe 'so ' .. fname
|
||||||
autocmd BufRead,BufNewFile *.[ch] endif
|
autocmd BufRead,BufNewFile *.[ch] endif
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*tabpage.txt* For Vim version 8.2. Last change: 2020 Oct 14
|
*tabpage.txt* For Vim version 8.2. Last change: 2022 Feb 02
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -143,7 +143,9 @@ something else.
|
|||||||
:tabclose 3 " close the third tab page
|
:tabclose 3 " close the third tab page
|
||||||
:tabclose $ " close the last tab page
|
:tabclose $ " close the last tab page
|
||||||
:tabclose # " close the last accessed tab page
|
:tabclose # " close the last accessed tab page
|
||||||
<
|
|
||||||
|
When a tab is closed the next tab page will become the current one.
|
||||||
|
|
||||||
*:tabo* *:tabonly*
|
*:tabo* *:tabonly*
|
||||||
:tabo[nly][!] Close all other tab pages.
|
:tabo[nly][!] Close all other tab pages.
|
||||||
When the 'hidden' option is set, all buffers in closed windows
|
When the 'hidden' option is set, all buffers in closed windows
|
||||||
@@ -379,24 +381,24 @@ pages and define labels for them. Then get the label for each tab page. >
|
|||||||
for i in range(tabpagenr('$'))
|
for i in range(tabpagenr('$'))
|
||||||
" select the highlighting
|
" select the highlighting
|
||||||
if i + 1 == tabpagenr()
|
if i + 1 == tabpagenr()
|
||||||
let s .= '%#TabLineSel#'
|
let s ..= '%#TabLineSel#'
|
||||||
else
|
else
|
||||||
let s .= '%#TabLine#'
|
let s ..= '%#TabLine#'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" set the tab page number (for mouse clicks)
|
" set the tab page number (for mouse clicks)
|
||||||
let s .= '%' . (i + 1) . 'T'
|
let s ..= '%' .. (i + 1) .. 'T'
|
||||||
|
|
||||||
" the label is made by MyTabLabel()
|
" the label is made by MyTabLabel()
|
||||||
let s .= ' %{MyTabLabel(' . (i + 1) . ')} '
|
let s ..= ' %{MyTabLabel(' .. (i + 1) .. ')} '
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
" after the last tab fill with TabLineFill and reset tab page nr
|
" after the last tab fill with TabLineFill and reset tab page nr
|
||||||
let s .= '%#TabLineFill#%T'
|
let s ..= '%#TabLineFill#%T'
|
||||||
|
|
||||||
" right-align the label to close the current tab page
|
" right-align the label to close the current tab page
|
||||||
if tabpagenr('$') > 1
|
if tabpagenr('$') > 1
|
||||||
let s .= '%=%#TabLine#%999Xclose'
|
let s ..= '%=%#TabLine#%999Xclose'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
return s
|
return s
|
||||||
@@ -459,14 +461,14 @@ windows in the tab page and a '+' if there is a modified buffer: >
|
|||||||
" Append the number of windows in the tab page if more than one
|
" Append the number of windows in the tab page if more than one
|
||||||
let wincount = tabpagewinnr(v:lnum, '$')
|
let wincount = tabpagewinnr(v:lnum, '$')
|
||||||
if wincount > 1
|
if wincount > 1
|
||||||
let label .= wincount
|
let label ..= wincount
|
||||||
endif
|
endif
|
||||||
if label != ''
|
if label != ''
|
||||||
let label .= ' '
|
let label ..= ' '
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Append the buffer name
|
" Append the buffer name
|
||||||
return label . bufname(bufnrlist[tabpagewinnr(v:lnum) - 1])
|
return label .. bufname(bufnrlist[tabpagewinnr(v:lnum) - 1])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
set guitablabel=%{GuiTabLabel()}
|
set guitablabel=%{GuiTabLabel()}
|
||||||
|
|||||||
1340
runtime/doc/tags
1340
runtime/doc/tags
File diff suppressed because it is too large
Load Diff
@@ -561,7 +561,8 @@ also works. The <CR> and <NL> characters can never appear inside a line.
|
|||||||
|
|
||||||
The second format is new. It includes additional information in optional
|
The second format is new. It includes additional information in optional
|
||||||
fields at the end of each line. It is backwards compatible with Vi. It is
|
fields at the end of each line. It is backwards compatible with Vi. It is
|
||||||
only supported by new versions of ctags (such as Exuberant ctags).
|
only supported by new versions of ctags (such as Universal ctags or Exuberant
|
||||||
|
ctags).
|
||||||
|
|
||||||
{tagname} The identifier. Normally the name of a function, but it can
|
{tagname} The identifier. Normally the name of a function, but it can
|
||||||
be any identifier. It cannot contain a <Tab>.
|
be any identifier. It cannot contain a <Tab>.
|
||||||
@@ -724,7 +725,7 @@ matches the pattern "^# *define" it is not considered to be a comment.
|
|||||||
If you want to list matches, and then select one to jump to, you could use a
|
If you want to list matches, and then select one to jump to, you could use a
|
||||||
mapping to do that for you. Here is an example: >
|
mapping to do that for you. Here is an example: >
|
||||||
|
|
||||||
:map <F4> [I:let nr = input("Which one: ")<Bar>exe "normal " . nr ."[\t"<CR>
|
:map <F4> [I:let nr = input("Which one: ")<Bar>exe "normal " .. nr .. "[\t"<CR>
|
||||||
<
|
<
|
||||||
*[i*
|
*[i*
|
||||||
[i Display the first line that contains the keyword
|
[i Display the first line that contains the keyword
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*term.txt* For Vim version 8.2. Last change: 2021 Aug 29
|
*term.txt* For Vim version 8.2. Last change: 2022 Mar 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -150,8 +150,10 @@ terminal that tmux is running in): >
|
|||||||
" Enable focus event tracking, see :help xterm-focus-event
|
" Enable focus event tracking, see :help xterm-focus-event
|
||||||
let &t_fe = "\<Esc>[?1004h"
|
let &t_fe = "\<Esc>[?1004h"
|
||||||
let &t_fd = "\<Esc>[?1004l"
|
let &t_fd = "\<Esc>[?1004l"
|
||||||
|
execute "set <FocusGained>=\<Esc>[I"
|
||||||
|
execute "set <FocusLost>=\<Esc>[O"
|
||||||
|
|
||||||
" Enable modified arrow keys, see :help xterm-modifier-keys
|
" Enable modified arrow keys, see :help arrow_modifiers
|
||||||
execute "silent! set <xUp>=\<Esc>[@;*A"
|
execute "silent! set <xUp>=\<Esc>[@;*A"
|
||||||
execute "silent! set <xDown>=\<Esc>[@;*B"
|
execute "silent! set <xDown>=\<Esc>[@;*B"
|
||||||
execute "silent! set <xRight>=\<Esc>[@;*C"
|
execute "silent! set <xRight>=\<Esc>[@;*C"
|
||||||
@@ -252,7 +254,19 @@ another code. That is to avoid that the codes obtained from xterm directly
|
|||||||
Another special value is a termcap entry ending in "@;*X". This is for cursor
|
Another special value is a termcap entry ending in "@;*X". This is for cursor
|
||||||
keys, which either use "CSI X" or "CSI 1 ; modifier X". Thus the "@"
|
keys, which either use "CSI X" or "CSI 1 ; modifier X". Thus the "@"
|
||||||
stands for either "1" if a modifier follows, or nothing.
|
stands for either "1" if a modifier follows, or nothing.
|
||||||
*xterm-scroll-region*
|
*arrow_modifiers*
|
||||||
|
Several terminal emulators (alacritty, gnome, konsole, etc.) send special
|
||||||
|
codes for keys with modifiers, but these do not have an entry in the
|
||||||
|
termcap/terminfo database. You can make them work by adding a few lines in
|
||||||
|
your vimrc. For example, to make the Control modifier work with arrow keys
|
||||||
|
for the gnome terminal: >
|
||||||
|
if &term =~ 'gnome'
|
||||||
|
execute "set <xUp>=\<Esc>[@;*A"
|
||||||
|
execute "set <xDown>=\<Esc>[@;*B"
|
||||||
|
execute "set <xRight>=\<Esc>[@;*C"
|
||||||
|
execute "set <xLeft>=\<Esc>[@;*D"
|
||||||
|
endif
|
||||||
|
< *xterm-scroll-region*
|
||||||
The default termcap entry for xterm on Sun and other platforms does not
|
The default termcap entry for xterm on Sun and other platforms does not
|
||||||
contain the entry for scroll regions. Add ":cs=\E[%i%d;%dr:" to the xterm
|
contain the entry for scroll regions. Add ":cs=\E[%i%d;%dr:" to the xterm
|
||||||
entry in /etc/termcap and everything should work.
|
entry in /etc/termcap and everything should work.
|
||||||
@@ -542,8 +556,15 @@ request the key codes directly from the xterm. The responses are used to
|
|||||||
adjust the various t_ codes. This avoids the problem that the xterm can
|
adjust the various t_ codes. This avoids the problem that the xterm can
|
||||||
produce different codes, depending on the mode it is in (8-bit, VT102,
|
produce different codes, depending on the mode it is in (8-bit, VT102,
|
||||||
VT220, etc.). The result is that codes like <xF1> are no longer needed.
|
VT220, etc.). The result is that codes like <xF1> are no longer needed.
|
||||||
Note: This is only done on startup. If the xterm options are changed after
|
|
||||||
Vim has started, the escape sequences may not be recognized anymore.
|
One of the codes that can change is 't_Co', the number of colors. This will
|
||||||
|
trigger a redraw. If this is a problem, reset the 'xtermcodes' option as
|
||||||
|
early as possible: >
|
||||||
|
set noxtermcodes
|
||||||
|
|
||||||
|
Note: Requesting the key codes is only done on startup. If the xterm options
|
||||||
|
are changed after Vim has started, the escape sequences may not be recognized
|
||||||
|
anymore.
|
||||||
|
|
||||||
*xterm-true-color*
|
*xterm-true-color*
|
||||||
Vim supports using true colors in the terminal (taken from |highlight-guifg|
|
Vim supports using true colors in the terminal (taken from |highlight-guifg|
|
||||||
@@ -594,6 +615,8 @@ If your terminal does support this but Vim does not recognize the terminal,
|
|||||||
you may have to set the options yourself: >
|
you may have to set the options yourself: >
|
||||||
let &t_fe = "\<Esc>[?1004h"
|
let &t_fe = "\<Esc>[?1004h"
|
||||||
let &t_fd = "\<Esc>[?1004l"
|
let &t_fd = "\<Esc>[?1004l"
|
||||||
|
execute "set <FocusGained>=\<Esc>[I"
|
||||||
|
execute "set <FocusLost>=\<Esc>[O"
|
||||||
If this causes garbage to show when Vim starts up then it doesn't work.
|
If this causes garbage to show when Vim starts up then it doesn't work.
|
||||||
|
|
||||||
*termcap-colors*
|
*termcap-colors*
|
||||||
@@ -702,12 +725,12 @@ size is wrong you can use the 'lines' and 'columns' options to set the
|
|||||||
correct values.
|
correct values.
|
||||||
|
|
||||||
One command can be used to set the screen size:
|
One command can be used to set the screen size:
|
||||||
|
|
||||||
*:mod* *:mode* *E359*
|
*:mod* *:mode* *E359*
|
||||||
:mod[e] [mode]
|
:mod[e] [mode]
|
||||||
|
|
||||||
Without argument this only detects the screen size and redraws the screen.
|
Without argument this only detects the screen size and redraws the screen.
|
||||||
[mode] was used on MS-DOS, but it doesn't work anymore.
|
[mode] was used on MS-DOS, but it doesn't work anymore. In |Vim9| this
|
||||||
|
command is not supported.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
4. Slow and fast terminals *slow-fast-terminal*
|
4. Slow and fast terminals *slow-fast-terminal*
|
||||||
@@ -961,7 +984,7 @@ an #if/#else/#endif block, the selection becomes linewise.
|
|||||||
For MS-Windows and xterm the time for double clicking can be set with the
|
For MS-Windows and xterm the time for double clicking can be set with the
|
||||||
'mousetime' option. For the other systems this time is defined outside of Vim.
|
'mousetime' option. For the other systems this time is defined outside of Vim.
|
||||||
An example, for using a double click to jump to the tag under the cursor: >
|
An example, for using a double click to jump to the tag under the cursor: >
|
||||||
:map <2-LeftMouse> :exe "tag ". expand("<cword>")<CR>
|
:map <2-LeftMouse> :exe "tag " .. expand("<cword>")<CR>
|
||||||
|
|
||||||
Dragging the mouse with a double click (button-down, button-up, button-down
|
Dragging the mouse with a double click (button-down, button-up, button-down
|
||||||
and then drag) will result in whole words to be selected. This continues
|
and then drag) will result in whole words to be selected. This continues
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*terminal.txt* For Vim version 8.2. Last change: 2021 Nov 13
|
*terminal.txt* For Vim version 8.2. Last change: 2022 Jan 21
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -39,6 +39,7 @@ If the result is "1" you have it.
|
|||||||
Stepping through code |termdebug-stepping|
|
Stepping through code |termdebug-stepping|
|
||||||
Inspecting variables |termdebug-variables|
|
Inspecting variables |termdebug-variables|
|
||||||
Other commands |termdebug-commands|
|
Other commands |termdebug-commands|
|
||||||
|
Events |termdebug-events|
|
||||||
Prompt mode |termdebug-prompt|
|
Prompt mode |termdebug-prompt|
|
||||||
Communication |termdebug-communication|
|
Communication |termdebug-communication|
|
||||||
Customizing |termdebug-customizing|
|
Customizing |termdebug-customizing|
|
||||||
@@ -978,8 +979,8 @@ Currently supported commands:
|
|||||||
< Calls a function defined like this: >
|
< Calls a function defined like this: >
|
||||||
function Tapi_Impression(bufnum, arglist)
|
function Tapi_Impression(bufnum, arglist)
|
||||||
if len(a:arglist) == 2
|
if len(a:arglist) == 2
|
||||||
echomsg "impression " . a:arglist[0]
|
echomsg "impression " .. a:arglist[0]
|
||||||
echomsg "count " . a:arglist[1]
|
echomsg "count " .. a:arglist[1]
|
||||||
endif
|
endif
|
||||||
endfunc
|
endfunc
|
||||||
< Output from `:echo` may be erased by a redraw, use `:echomsg`
|
< Output from `:echo` may be erased by a redraw, use `:echomsg`
|
||||||
@@ -1177,7 +1178,7 @@ gdb window A terminal window in which "gdb vim" is executed. Here you
|
|||||||
program window A terminal window for the executed program. When "run" is
|
program window A terminal window for the executed program. When "run" is
|
||||||
used in gdb the program I/O will happen in this window, so
|
used in gdb the program I/O will happen in this window, so
|
||||||
that it does not interfere with controlling gdb. The buffer
|
that it does not interfere with controlling gdb. The buffer
|
||||||
name is "gdb program".
|
name is "debugged program".
|
||||||
|
|
||||||
The current window is used to show the source code. When gdb pauses the
|
The current window is used to show the source code. When gdb pauses the
|
||||||
source file location will be displayed, if possible. A sign is used to
|
source file location will be displayed, if possible. A sign is used to
|
||||||
@@ -1428,6 +1429,8 @@ GDB command *termdebug-customizing*
|
|||||||
To change the name of the gdb command, set the "g:termdebugger" variable before
|
To change the name of the gdb command, set the "g:termdebugger" variable before
|
||||||
invoking `:Termdebug`: >
|
invoking `:Termdebug`: >
|
||||||
let g:termdebugger = "mygdb"
|
let g:termdebugger = "mygdb"
|
||||||
|
If the command needs an argument use a List: >
|
||||||
|
let g:termdebugger = ['rr', 'replay', '--']
|
||||||
< *gdb-version*
|
< *gdb-version*
|
||||||
Only debuggers fully compatible with gdb will work. Vim uses the GDB/MI
|
Only debuggers fully compatible with gdb will work. Vim uses the GDB/MI
|
||||||
interface. The "new-ui" command requires gdb version 7.12 or later. if you
|
interface. The "new-ui" command requires gdb version 7.12 or later. if you
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*testing.txt* For Vim version 8.2. Last change: 2021 Aug 15
|
*testing.txt* For Vim version 8.2. Last change: 2022 Feb 10
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -65,7 +65,9 @@ test_garbagecollect_now() *test_garbagecollect_now()*
|
|||||||
Like garbagecollect(), but executed right away. This must
|
Like garbagecollect(), but executed right away. This must
|
||||||
only be called directly to avoid any structure to exist
|
only be called directly to avoid any structure to exist
|
||||||
internally, and |v:testing| must have been set before calling
|
internally, and |v:testing| must have been set before calling
|
||||||
any function.
|
any function. *E1142*
|
||||||
|
This will not work when called from a :def function, because
|
||||||
|
variables on the stack will be freed.
|
||||||
|
|
||||||
|
|
||||||
test_garbagecollect_soon() *test_garbagecollect_soon()*
|
test_garbagecollect_soon() *test_garbagecollect_soon()*
|
||||||
@@ -81,46 +83,113 @@ 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_event()*
|
||||||
test_gui_drop_files({list}, {row}, {col}, {mods})
|
test_gui_event({event}, {args})
|
||||||
Drop one or more files in {list} in the window at {row}, {col}.
|
Generate a GUI {event} with arguments {args} for testing Vim
|
||||||
This function only works when the GUI is running and the
|
functionality. This function works only when the GUI is
|
||||||
|drop_file| feature is present.
|
running.
|
||||||
|
|
||||||
The supported values for {mods} are:
|
{event} is a String and the supported values are:
|
||||||
0x4 Shift
|
"dropfiles" drop one or more files in a window.
|
||||||
0x8 Alt
|
"findrepl" search and replace text
|
||||||
0x10 Ctrl
|
"mouse" mouse button click event.
|
||||||
The files are added to the |argument-list| and the first file
|
"scrollbar" move or drag the scrollbar
|
||||||
in {list} is edited in the window. See |drag-n-drop| for more
|
"tabline" select a tab page by mouse click.
|
||||||
information.
|
"tabmenu" select a tabline menu entry.
|
||||||
|
|
||||||
*test_gui_mouse_event()*
|
{args} is a Dict and contains the arguments for the event.
|
||||||
test_gui_mouse_event({button}, {row}, {col}, {multiclick}, {modifiers})
|
|
||||||
Inject a mouse button click event. This function only works
|
"dropfiles":
|
||||||
when the GUI is running.
|
Drop one or more files in a specified window. The supported
|
||||||
The supported values for {button} are:
|
items in {args} are:
|
||||||
0 right mouse button
|
files: List of file names
|
||||||
1 middle mouse button
|
row: window row number
|
||||||
2 left mouse button
|
col: window column number
|
||||||
3 mouse button release
|
modifiers: key modifiers. The supported values are:
|
||||||
4 scroll wheel down
|
0x4 Shift
|
||||||
5 scroll wheel up
|
0x8 Alt
|
||||||
6 scroll wheel left
|
0x10 Ctrl
|
||||||
7 scroll wheel right
|
The files are added to the |argument-list| and the first
|
||||||
{row} and {col} specify the location of the mouse click. The
|
file in {files} is edited in the window. See |drag-n-drop|
|
||||||
first row of the Vim window is 1 and the last row is 'lines'.
|
for more information. This event works only when the
|
||||||
The maximum value of {col} is 'columns'.
|
|drop_file| feature is present.
|
||||||
To inject a multiclick event, set {multiclick} to 1.
|
|
||||||
The supported values for {modifiers} are:
|
"findrepl":
|
||||||
4 shift is pressed
|
{only available when the GUI has a find/replace dialog}
|
||||||
8 alt is pressed
|
Perform a search and replace of text. The supported items
|
||||||
16 ctrl is pressed
|
in {args} are:
|
||||||
After injecting the mouse event you probably should call
|
find_text: string to find.
|
||||||
|
repl_text: replacement string
|
||||||
|
flags: flags controlling the find/replace. Supported
|
||||||
|
values are:
|
||||||
|
1 search next string (find dialog)
|
||||||
|
2 search next string (replace dialog)
|
||||||
|
3 replace string once
|
||||||
|
4 replace all matches
|
||||||
|
8 match whole words only
|
||||||
|
16 match case
|
||||||
|
forward: set to 1 for forward search.
|
||||||
|
|
||||||
|
"mouse":
|
||||||
|
Inject a mouse button click event. The supported items in
|
||||||
|
{args} are:
|
||||||
|
button: mouse button. The supported values 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: mouse click row number. The first row of the
|
||||||
|
Vim window is 1 and the last row is 'lines'.
|
||||||
|
col: mouse click column number. The maximum value
|
||||||
|
of {col} is 'columns'.
|
||||||
|
multiclick: set to 1 to inject a multiclick mouse event.
|
||||||
|
modifiers: key modifiers. The supported values are:
|
||||||
|
4 shift is pressed
|
||||||
|
8 alt is pressed
|
||||||
|
16 ctrl is pressed
|
||||||
|
|
||||||
|
"scrollbar":
|
||||||
|
Set or drag the left, right or horizontal scrollbar. Only
|
||||||
|
works when the scrollbar actually exists. The supported
|
||||||
|
items in {args} are:
|
||||||
|
which: scrollbar. The supported values are:
|
||||||
|
left Left scrollbar of the current window
|
||||||
|
right Right scrollbar of the current window
|
||||||
|
hor Horizontal scrollbar
|
||||||
|
value: amount to scroll. For the vertical scrollbars
|
||||||
|
the value can be 1 to the line-count of the
|
||||||
|
buffer. For the horizontal scrollbar the
|
||||||
|
value can be between 1 and the maximum line
|
||||||
|
length, assuming 'wrap' is not set.
|
||||||
|
dragging: 1 to drag the scrollbar and 0 to click in the
|
||||||
|
scrollbar.
|
||||||
|
|
||||||
|
"tabline":
|
||||||
|
Inject a mouse click event on the tabline to select a
|
||||||
|
tabpage. The supported items in {args} are:
|
||||||
|
tabnr: tab page number
|
||||||
|
|
||||||
|
"tabmenu":
|
||||||
|
Inject an event to select a tabline menu entry. The
|
||||||
|
supported items in {args} are:
|
||||||
|
tabnr: tab page number
|
||||||
|
item: tab page menu item number. 1 for the first
|
||||||
|
menu item, 2 for the second item and so on.
|
||||||
|
|
||||||
|
After injecting the GUI events you probably should call
|
||||||
|feedkeys()| to have them processed, e.g.: >
|
|feedkeys()| to have them processed, e.g.: >
|
||||||
call feedkeys("y", 'Lx!')
|
call feedkeys("y", 'Lx!')
|
||||||
|
<
|
||||||
|
Returns TRUE if the event is successfully added, FALSE if
|
||||||
|
there is a failure.
|
||||||
|
|
||||||
|
Can also be used as a |method|: >
|
||||||
|
GetEvent()->test_gui_event({args})
|
||||||
|
<
|
||||||
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
|
||||||
instead.
|
instead.
|
||||||
@@ -187,24 +256,28 @@ test_override({name}, {val}) *test_override()*
|
|||||||
to run tests. Only to be used for testing Vim!
|
to run tests. Only to be used for testing Vim!
|
||||||
The override is enabled when {val} is non-zero and removed
|
The override is enabled when {val} is non-zero and removed
|
||||||
when {val} is zero.
|
when {val} is zero.
|
||||||
Current supported values for name are:
|
Current supported values for {name} are:
|
||||||
|
|
||||||
name effect when {val} is non-zero ~
|
{name} effect when {val} is non-zero ~
|
||||||
redraw disable the redrawing() function
|
autoload `import autoload` will load the script right
|
||||||
redraw_flag ignore the RedrawingDisabled flag
|
away, not postponed until an item is used
|
||||||
char_avail disable the char_avail() function
|
char_avail disable the char_avail() function
|
||||||
starting reset the "starting" variable, see below
|
|
||||||
nfa_fail makes the NFA regexp engine fail to force a
|
nfa_fail makes the NFA regexp engine fail to force a
|
||||||
fallback to the old engine
|
fallback to the old engine
|
||||||
no_query_mouse do not query the mouse position for "dec"
|
no_query_mouse do not query the mouse position for "dec"
|
||||||
terminals
|
terminals
|
||||||
no_wait_return set the "no_wait_return" flag. Not restored
|
no_wait_return set the "no_wait_return" flag. Not restored
|
||||||
with "ALL".
|
with "ALL".
|
||||||
ui_delay time in msec to use in ui_delay(); overrules a
|
redraw disable the redrawing() function
|
||||||
wait time of up to 3 seconds for messages
|
redraw_flag ignore the RedrawingDisabled flag
|
||||||
|
starting reset the "starting" variable, see below
|
||||||
term_props reset all terminal properties when the version
|
term_props reset all terminal properties when the version
|
||||||
string is detected
|
string is detected
|
||||||
|
ui_delay time in msec to use in ui_delay(); overrules a
|
||||||
|
wait time of up to 3 seconds for messages
|
||||||
uptime overrules sysinfo.uptime
|
uptime overrules sysinfo.uptime
|
||||||
|
vterm_title setting the window title by a job running in a
|
||||||
|
terminal window
|
||||||
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
|
||||||
@@ -230,27 +303,6 @@ test_refcount({expr}) *test_refcount()*
|
|||||||
GetVarname()->test_refcount()
|
GetVarname()->test_refcount()
|
||||||
|
|
||||||
|
|
||||||
test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
|
|
||||||
Pretend using scrollbar {which} to move it to position
|
|
||||||
{value}. {which} can be:
|
|
||||||
left Left scrollbar of the current window
|
|
||||||
right Right scrollbar of the current window
|
|
||||||
hor Horizontal scrollbar
|
|
||||||
|
|
||||||
For the vertical scrollbars {value} can be 1 to the
|
|
||||||
line-count of the buffer. For the horizontal scrollbar the
|
|
||||||
{value} can be between 1 and the maximum line length, assuming
|
|
||||||
'wrap' is not set.
|
|
||||||
|
|
||||||
When {dragging} is non-zero it's like dragging the scrollbar,
|
|
||||||
otherwise it's like clicking in the scrollbar.
|
|
||||||
Only works when the {which} scrollbar actually exists,
|
|
||||||
obviously only when using the GUI.
|
|
||||||
|
|
||||||
Can also be used as a |method|: >
|
|
||||||
GetValue()->test_scrollbar('right', 0)
|
|
||||||
|
|
||||||
|
|
||||||
test_setmouse({row}, {col}) *test_setmouse()*
|
test_setmouse({row}, {col}) *test_setmouse()*
|
||||||
Set the mouse position to be used for the next mouse action.
|
Set the mouse position to be used for the next mouse action.
|
||||||
{row} and {col} are one based.
|
{row} and {col} are one based.
|
||||||
@@ -347,7 +399,7 @@ assert_fails({cmd} [, {error} [, {msg} [, {lnum} [, {context}]]]])
|
|||||||
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 an error or when {error} is not found in the
|
NOT produce an error or when {error} is not found in the
|
||||||
error message. Also see |assert-return|.
|
error message. Also see |assert-return|.
|
||||||
|
*E856*
|
||||||
When {error} is a string it must be found literally in the
|
When {error} is a string it must be found literally in the
|
||||||
first reported error. Most often this will be the error code,
|
first reported error. Most often this will be the error code,
|
||||||
including the colon, e.g. "E123:". >
|
including the colon, e.g. "E123:". >
|
||||||
@@ -367,12 +419,12 @@ assert_fails({cmd} [, {error} [, {msg} [, {lnum} [, {context}]]]])
|
|||||||
<
|
<
|
||||||
If {msg} is empty then it is not used. Do this to get the
|
If {msg} is empty then it is not used. Do this to get the
|
||||||
default message when passing the {lnum} argument.
|
default message when passing the {lnum} argument.
|
||||||
|
*E1115*
|
||||||
When {lnum} is present and not negative, and the {error}
|
When {lnum} is present and not negative, and the {error}
|
||||||
argument is present and matches, then this is compared with
|
argument is present and matches, then this is compared with
|
||||||
the line number at which the error was reported. That can be
|
the line number at which the error was reported. That can be
|
||||||
the line number in a function or in a script.
|
the line number in a function or in a script.
|
||||||
|
*E1116*
|
||||||
When {context} is present it is used as a pattern and matched
|
When {context} is present it is used as a pattern and matched
|
||||||
against the context (script name or function name) where
|
against the context (script name or function name) where
|
||||||
{lnum} is located in.
|
{lnum} is located in.
|
||||||
|
|||||||
@@ -101,14 +101,14 @@ What you need:
|
|||||||
create it with the shell command "mkid file1 file2 ..".
|
create it with the shell command "mkid file1 file2 ..".
|
||||||
|
|
||||||
Put this in your .vimrc: >
|
Put this in your .vimrc: >
|
||||||
map _u :call ID_search()<Bar>execute "/\\<" . g:word . "\\>"<CR>
|
map _u :call ID_search()<Bar>execute "/\\<" .. g:word .. "\\>"<CR>
|
||||||
map _n :n<Bar>execute "/\\<" . g:word . "\\>"<CR>
|
map _n :n<Bar>execute "/\\<" .. g:word .. "\\>"<CR>
|
||||||
|
|
||||||
function! ID_search()
|
function! ID_search()
|
||||||
let g:word = expand("<cword>")
|
let g:word = expand("<cword>")
|
||||||
let x = system("lid --key=none ". g:word)
|
let x = system("lid --key=none " .. g:word)
|
||||||
let x = substitute(x, "\n", " ", "g")
|
let x = substitute(x, "\n", " ", "g")
|
||||||
execute "next " . x
|
execute "next " .. x
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
To use it, place the cursor on a word, type "_u" and vim will load the file
|
To use it, place the cursor on a word, type "_u" and vim will load the file
|
||||||
@@ -356,13 +356,13 @@ This mapping will format any bullet list. It requires that there is an empty
|
|||||||
line above and below each list entry. The expression commands are used to
|
line above and below each list entry. The expression commands are used to
|
||||||
be able to give comments to the parts of the mapping. >
|
be able to give comments to the parts of the mapping. >
|
||||||
|
|
||||||
:let m = ":map _f :set ai<CR>" " need 'autoindent' set
|
:let m = ":map _f :set ai<CR>" " need 'autoindent' set
|
||||||
:let m = m . "{O<Esc>" " add empty line above item
|
:let m ..= "{O<Esc>" " add empty line above item
|
||||||
:let m = m . "}{)^W" " move to text after bullet
|
:let m ..= "}{)^W" " move to text after bullet
|
||||||
:let m = m . "i <CR> <Esc>" " add space for indent
|
:let m ..= "i <CR> <Esc>" " add space for indent
|
||||||
:let m = m . "gq}" " format text after the bullet
|
:let m ..= "gq}" " format text after the bullet
|
||||||
:let m = m . "{dd" " remove the empty line
|
:let m ..= "{dd" " remove the empty line
|
||||||
:let m = m . "5lDJ" " put text after bullet
|
:let m ..= "5lDJ" " put text after bullet
|
||||||
:execute m |" define the mapping
|
:execute m |" define the mapping
|
||||||
|
|
||||||
(<> notation |<>|. Note that this is all typed literally. ^W is "^" "W", not
|
(<> notation |<>|. Note that this is all typed literally. ^W is "^" "W", not
|
||||||
@@ -514,15 +514,15 @@ A slightly more advanced version is used in the |matchparen| plugin.
|
|||||||
let c = '\['
|
let c = '\['
|
||||||
let c2 = '\]'
|
let c2 = '\]'
|
||||||
endif
|
endif
|
||||||
let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' .
|
let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' ..
|
||||||
\ '=~? "string\\|comment"'
|
\ '=~? "string\\|comment"'
|
||||||
execute 'if' s_skip '| let s_skip = 0 | endif'
|
execute 'if' s_skip '| let s_skip = 0 | endif'
|
||||||
|
|
||||||
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip)
|
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip)
|
||||||
|
|
||||||
if m_lnum > 0 && m_lnum >= line('w0') && m_lnum <= line('w$')
|
if m_lnum > 0 && m_lnum >= line('w0') && m_lnum <= line('w$')
|
||||||
exe 'match Search /\(\%' . c_lnum . 'l\%' . c_col .
|
exe 'match Search /\(\%' .. c_lnum .. 'l\%' .. c_col ..
|
||||||
\ 'c\)\|\(\%' . m_lnum . 'l\%' . m_col . 'c\)/'
|
\ 'c\)\|\(\%' .. m_lnum .. 'l\%' .. m_col .. 'c\)/'
|
||||||
let s:paren_hl_on = 1
|
let s:paren_hl_on = 1
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 8.2. Last change: 2021 Nov 26
|
*todo.txt* For Vim version 8.2. Last change: 2022 Mar 18
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -38,41 +38,23 @@ browser use: https://github.com/vim/vim/issues/1234
|
|||||||
*known-bugs*
|
*known-bugs*
|
||||||
-------------------- Known bugs and current work -----------------------
|
-------------------- Known bugs and current work -----------------------
|
||||||
|
|
||||||
refactor ex_let_one() to subfunctions.
|
Really drop the Athena and NeXtaw GUI? Decide end of March.
|
||||||
|
|
||||||
Vim9 - Make everything work:
|
|
||||||
- "filter #pat# ls" should work, #pat# is not a comment
|
|
||||||
vim9script
|
|
||||||
edit foobar
|
|
||||||
filter #foobar# ls
|
|
||||||
- Check TODO items in vim9compile.c and vim9execute.c
|
|
||||||
- use CheckLegacyAndVim9Success(lines) in many more places
|
|
||||||
- For builtin functions using tv_get_string*() use check_for_string() to be
|
|
||||||
more strict about the argument type (not a bool).
|
|
||||||
done: balloon_()
|
|
||||||
- Check many more builtin function arguments at compile time.
|
|
||||||
map() could check that the return type of the function argument matches
|
|
||||||
the type of the list or dict member. (#8092)
|
|
||||||
Same for other functions, such as searchpair().
|
|
||||||
- Test try/catch and throw better, also nested.
|
|
||||||
Test that return inside try/finally jumps to finally and then returns.
|
|
||||||
- Test that a function defined inside a :def function is local to that
|
|
||||||
function, g: functions can be defined and script-local functions cannot be
|
|
||||||
defined.
|
|
||||||
- Unexpected error message when using "var x: any | x.key = 9", because "x" is
|
|
||||||
given the type number. Can we use VAR_ANY?
|
|
||||||
- Check performance with callgrind and kcachegrind.
|
|
||||||
|
|
||||||
Once Vim9 is stable:
|
Once Vim9 is stable:
|
||||||
- Add the "vim9script" feature, can use has('vim9script')
|
- Use Vim9 for more runtime files.
|
||||||
- Change the help to prefer Vim9 syntax where appropriate
|
- Check code coverage, add more tests if needed.
|
||||||
- Add all the error numbers in a good place in documentation.
|
vim9execute.c line 1900
|
||||||
- In the generic eval docs, point out the Vim9 syntax where it differs.
|
vim9expr.c
|
||||||
- Use Vim9 for runtime files.
|
vim9instr.c
|
||||||
PR #7497 for autoload/ccomplete.vim
|
vim9script.c
|
||||||
|
vim9type.c
|
||||||
|
|
||||||
Further Vim9 improvements, possibly after launch:
|
Further Vim9 improvements, possibly after launch:
|
||||||
- better implementation for partial and tests for that.
|
- Check performance with callgrind and kcachegrind.
|
||||||
|
- Better implementation for partial and tests for that.
|
||||||
|
- when using "const" mark the variable type as const with TTFLAG_CONST, so
|
||||||
|
that an error is given at compile time when trying to change it. E.g. for a
|
||||||
|
const list and trying to call add().
|
||||||
- Compile options that are an expression, e.g. "expr:" in 'spellsuggest',
|
- Compile options that are an expression, e.g. "expr:" in 'spellsuggest',
|
||||||
'foldexpr', 'foldtext', 'printexpr', 'diffexpr', 'patchexpr', 'charconvert',
|
'foldexpr', 'foldtext', 'printexpr', 'diffexpr', 'patchexpr', 'charconvert',
|
||||||
'balloonexpr', 'includeexpr', 'indentexpr', 'formatexpr'.
|
'balloonexpr', 'includeexpr', 'indentexpr', 'formatexpr'.
|
||||||
@@ -81,10 +63,11 @@ Further Vim9 improvements, possibly after launch:
|
|||||||
evaluation.
|
evaluation.
|
||||||
Use the location where the option was set for deciding whether it's to be
|
Use the location where the option was set for deciding whether it's to be
|
||||||
evaluated in Vim9 script context.
|
evaluated in Vim9 script context.
|
||||||
- Handle command that is only a range more efficient than calling ISN_EXEC
|
- Implement "import lazy" - like autoload but with a relative or absolute
|
||||||
- implement :type, "import type"
|
path. #9595
|
||||||
- implement enum, "import enum".
|
- implement :type
|
||||||
- implement class and interface: See |vim9-classes|
|
- implement :enum
|
||||||
|
- implement :class and :interface: See |vim9-classes|
|
||||||
- For range: make table of first ASCII character with flag to quickly check if
|
- For range: make table of first ASCII character with flag to quickly check if
|
||||||
it can be a Vim9 command. E.g. "+" can, but "." can't.
|
it can be a Vim9 command. E.g. "+" can, but "." can't.
|
||||||
- Inline call to map() and filter(), better type checking.
|
- Inline call to map() and filter(), better type checking.
|
||||||
@@ -95,6 +78,10 @@ Further Vim9 improvements, possibly after launch:
|
|||||||
has(featureName), len(someString)
|
has(featureName), len(someString)
|
||||||
- Implement as part of an expression: ++expr, --expr, expr++, expr--.
|
- Implement as part of an expression: ++expr, --expr, expr++, expr--.
|
||||||
|
|
||||||
|
Update list of features to vote on:
|
||||||
|
- multiple cursors
|
||||||
|
- built-in LSP support
|
||||||
|
- start first line halfway
|
||||||
|
|
||||||
Popup windows:
|
Popup windows:
|
||||||
- Preview popup not properly updated when it overlaps with completion menu.
|
- Preview popup not properly updated when it overlaps with completion menu.
|
||||||
@@ -119,7 +106,6 @@ Popup windows:
|
|||||||
- Should popup_getoptions() also return the mask? #7774
|
- Should popup_getoptions() also return the mask? #7774
|
||||||
- Add a way to use popup_menu() synchronously: instead of invoking the
|
- Add a way to use popup_menu() synchronously: instead of invoking the
|
||||||
callback, return the choice. (Ben Jackson, #6534)
|
callback, return the choice. (Ben Jackson, #6534)
|
||||||
- Use popup (or popup menu) for command line completion
|
|
||||||
- When using a popup for the info of a completion menu, and there is not
|
- When using a popup for the info of a completion menu, and there is not
|
||||||
enough space, let the popup overlap with the menu. (#4544)
|
enough space, let the popup overlap with the menu. (#4544)
|
||||||
- Implement flip option.
|
- Implement flip option.
|
||||||
@@ -137,8 +123,6 @@ Text properties:
|
|||||||
where property fits in.
|
where property fits in.
|
||||||
Or Should we let the textprop highlight overrule other (e.g. diff) highlight
|
Or Should we let the textprop highlight overrule other (e.g. diff) highlight
|
||||||
if the priority is above a certain value? (#7392)
|
if the priority is above a certain value? (#7392)
|
||||||
- Popup attached to text property stays visible when text is no longer
|
|
||||||
visible. (#7736)
|
|
||||||
- Popup attached to text property stays visible when text is deleted with
|
- Popup attached to text property stays visible when text is deleted with
|
||||||
"cc". (#7737) "C" works OK. "dd" also files in a buffer with a single
|
"cc". (#7737) "C" works OK. "dd" also files in a buffer with a single
|
||||||
line.
|
line.
|
||||||
@@ -200,8 +184,6 @@ Terminal emulator window:
|
|||||||
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
||||||
(#3327)
|
(#3327)
|
||||||
- Allow for specifying the directory, with ++cwd={dir}.
|
- Allow for specifying the directory, with ++cwd={dir}.
|
||||||
- With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
|
|
||||||
#2977)
|
|
||||||
- When pasting should call vterm_keyboard_start_paste(), e.g. when using
|
- When pasting should call vterm_keyboard_start_paste(), e.g. when using
|
||||||
K_MIDDLEMOUSE, calling insert_reg().
|
K_MIDDLEMOUSE, calling insert_reg().
|
||||||
- Users expect parsing the :term argument like a shell does, also support
|
- Users expect parsing the :term argument like a shell does, also support
|
||||||
@@ -223,6 +205,18 @@ Terminal emulator window:
|
|||||||
When using 'cryptmethod' xchaha20 the undo file is not encrypted.
|
When using 'cryptmethod' xchaha20 the undo file is not encrypted.
|
||||||
Need to handle extra bytes.
|
Need to handle extra bytes.
|
||||||
|
|
||||||
|
In Select mode the deleted text always goes into the unnamed register.
|
||||||
|
Use CTRL-R to specify the register to use. (#9531)
|
||||||
|
|
||||||
|
Some prompts are not translated: #9495
|
||||||
|
|
||||||
|
Improvement in terminal configuration mess: Request the terminfo entry from
|
||||||
|
the terminal itself. The $TERM value then is only relevant for whether this
|
||||||
|
feature is supported or not. Replaces the xterm mechanism to request each
|
||||||
|
entry separately. #6609
|
||||||
|
Multiplexers (screen, tmux) can request it to the underlaying terminal, and
|
||||||
|
pass it on with modifications.
|
||||||
|
|
||||||
Test_communicate_ipv6(): is flaky on many systems
|
Test_communicate_ipv6(): is flaky on many systems
|
||||||
Fails in line 64 of Ch_communicate, no exception is thrown.
|
Fails in line 64 of Ch_communicate, no exception is thrown.
|
||||||
|
|
||||||
@@ -251,6 +245,8 @@ Memory leak in test_alot with pyeval() (allocating partial)
|
|||||||
Memory leak in test_alot with expand()
|
Memory leak in test_alot with expand()
|
||||||
Memory leaks in test_channel? (or is it because of fork())
|
Memory leaks in test_channel? (or is it because of fork())
|
||||||
|
|
||||||
|
PR to support %e and %k in 'errorformat'. #9624
|
||||||
|
|
||||||
Idea: when typing ":e /some/dir/" and "dir" does not exist, highlight in red.
|
Idea: when typing ":e /some/dir/" and "dir" does not exist, highlight in red.
|
||||||
|
|
||||||
":set &shellpipe" and ":set &shellredir" should use the logic from
|
":set &shellpipe" and ":set &shellredir" should use the logic from
|
||||||
@@ -259,10 +255,16 @@ this.
|
|||||||
|
|
||||||
MS-Windows: did path modifier :p:8 stop working? #8600
|
MS-Windows: did path modifier :p:8 stop working? #8600
|
||||||
|
|
||||||
|
Add support for "underdouble", "underdot" and "underdash". #9553
|
||||||
|
|
||||||
test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows.
|
test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows.
|
||||||
|
|
||||||
Mapping with partial match not executed properly in GTK. (Ingo Karkat, #7082)
|
Mapping with partial match not executed properly in GTK. (Ingo Karkat, #7082)
|
||||||
|
|
||||||
|
Information for a specific terminal (e.g. gnome, tmux, konsole, alacritty) is
|
||||||
|
spread out. Make a section with copy/paste examples of script and pointers to
|
||||||
|
more information.
|
||||||
|
|
||||||
Problem that a previous silent ":throw" causes a following try/catch not to
|
Problem that a previous silent ":throw" causes a following try/catch not to
|
||||||
work. (ZyX, 2013 Sep 28) With examples: (Malcolm Rowe, 2015 Dec 24)
|
work. (ZyX, 2013 Sep 28) With examples: (Malcolm Rowe, 2015 Dec 24)
|
||||||
Also see #8487 for an example.
|
Also see #8487 for an example.
|
||||||
@@ -273,6 +275,8 @@ Was originally written by Felipe Morales.
|
|||||||
Request to use "." for the cursor column in search pattern \%<.c and \%<.v.
|
Request to use "." for the cursor column in search pattern \%<.c and \%<.v.
|
||||||
(#8179)
|
(#8179)
|
||||||
|
|
||||||
|
":filter set termcap" only filters terminal codes, not keys. (#9297)
|
||||||
|
|
||||||
Remove SPACE_IN_FILENAME ? It is only used for completion.
|
Remove SPACE_IN_FILENAME ? It is only used for completion.
|
||||||
|
|
||||||
When 'term' starts with "foot" then default t_TI and t_TE to the values used
|
When 'term' starts with "foot" then default t_TI and t_TE to the values used
|
||||||
@@ -290,6 +294,9 @@ Probably because it's using MAXCOL. #8238
|
|||||||
Make "g>" and "g<" in Visual mode move the text right or left.
|
Make "g>" and "g<" in Visual mode move the text right or left.
|
||||||
Also for a block selection. #8558
|
Also for a block selection. #8558
|
||||||
|
|
||||||
|
When using dictionary insert completion with 'ignorecase', the leading capital
|
||||||
|
in a word should be preserved.
|
||||||
|
|
||||||
Add optional argument to virtcol() that specifies "start", "cursor" or "end"
|
Add optional argument to virtcol() that specifies "start", "cursor" or "end"
|
||||||
to tell which value from getvvcol() should be used. (#7964)
|
to tell which value from getvvcol() should be used. (#7964)
|
||||||
Value returned by virtcol() changes depending on how lines wrap. This is
|
Value returned by virtcol() changes depending on how lines wrap. This is
|
||||||
@@ -417,15 +424,10 @@ Motif: Build on Ubuntu can't enter any text in dialog text fields.
|
|||||||
Running test_gui and test_gui_init with Motif sometimes kills the window
|
Running test_gui and test_gui_init with Motif sometimes kills the window
|
||||||
manager. Problem with Motif?
|
manager. Problem with Motif?
|
||||||
|
|
||||||
Patch to add :argdedupe. (Nir Lichtman, #6235)
|
|
||||||
|
|
||||||
When editing a file with ":edit" the output of :swapname is relative, while
|
When editing a file with ":edit" the output of :swapname is relative, while
|
||||||
editing it with "vim file" it is absolute. (#355)
|
editing it with "vim file" it is absolute. (#355)
|
||||||
Which one should it be?
|
Which one should it be?
|
||||||
|
|
||||||
:map output does not clear the reset of the command line.
|
|
||||||
(#5623, also see #5962)
|
|
||||||
|
|
||||||
Problem with auto-formatting - inserting space and putting cursor before added
|
Problem with auto-formatting - inserting space and putting cursor before added
|
||||||
character. (#6154)
|
character. (#6154)
|
||||||
|
|
||||||
@@ -848,9 +850,7 @@ window for the buffer.
|
|||||||
Win32 key codes are messy. Mike Williams tried to fix that, but now old
|
Win32 key codes are messy. Mike Williams tried to fix that, but now old
|
||||||
mappings no longer work. Create a new terminal for the better solution?
|
mappings no longer work. Create a new terminal for the better solution?
|
||||||
|
|
||||||
Compiler warnings (geeknik, 2017 Oct 26):
|
Compiler warning (geeknik, 2017 Oct 26):
|
||||||
- signed integer overflow in do_sub() (#2249)
|
|
||||||
- signed integer overflow in get_address() (#2248)
|
|
||||||
- undefined left shift in get_string_tv() (#2250)
|
- undefined left shift in get_string_tv() (#2250)
|
||||||
|
|
||||||
Add Native language protocol server (LSP) support. (Yegappan Lakshmanan, 2018
|
Add Native language protocol server (LSP) support. (Yegappan Lakshmanan, 2018
|
||||||
@@ -918,9 +918,6 @@ With 'foldmethod' "indent" and appending an empty line, what follows isn't
|
|||||||
included in the existing fold. Deleting the empty line and undo fixes it.
|
included in the existing fold. Deleting the empty line and undo fixes it.
|
||||||
(Oleg Koshovetc, 2018 Jul 15, #3214)
|
(Oleg Koshovetc, 2018 Jul 15, #3214)
|
||||||
|
|
||||||
Patch to support "xxd -ps". (Erik Auerswald, 2018 May 1)
|
|
||||||
Lacks a test.
|
|
||||||
|
|
||||||
Column number is wrong when using 'linebreak' and 'wrap'. (Keith Smiley, 2018
|
Column number is wrong when using 'linebreak' and 'wrap'. (Keith Smiley, 2018
|
||||||
Jan 15, #2555)
|
Jan 15, #2555)
|
||||||
|
|
||||||
@@ -1470,10 +1467,6 @@ When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
|
|||||||
restore the mode properly. (Andrew Stewart, 2016 Apr 20)
|
restore the mode properly. (Andrew Stewart, 2016 Apr 20)
|
||||||
Do not trigger the event?
|
Do not trigger the event?
|
||||||
|
|
||||||
Patch to fix display of listchars on the cursorline. (Nayuri Aohime, 2013)
|
|
||||||
Update suggested by Yasuhiro Matsumoto, 2014 Nov 25:
|
|
||||||
https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
|
|
||||||
|
|
||||||
Patch to make the behavior of "w" more straightforward, but not Vi compatible.
|
Patch to make the behavior of "w" more straightforward, but not Vi compatible.
|
||||||
With a 'cpo' flag. (Christian Brabandt, 2016 Feb 8)
|
With a 'cpo' flag. (Christian Brabandt, 2016 Feb 8)
|
||||||
|
|
||||||
@@ -2220,10 +2213,6 @@ Jan 7)
|
|||||||
|
|
||||||
Problem with editing file in binary mode. (Ingo Krabbe, 2009 Oct 8)
|
Problem with editing file in binary mode. (Ingo Krabbe, 2009 Oct 8)
|
||||||
|
|
||||||
With 'wildmode' set to "longest:full,full" and pressing Tab once the first
|
|
||||||
entry in wildmenu is highlighted, that shouldn't happen. (Yuki Watanabe, 2011
|
|
||||||
Feb 12)
|
|
||||||
|
|
||||||
Display error when 'tabline' that includes a file name with double-width
|
Display error when 'tabline' that includes a file name with double-width
|
||||||
characters. (2010 Aug 14, bootleq)
|
characters. (2010 Aug 14, bootleq)
|
||||||
|
|
||||||
@@ -2426,10 +2415,6 @@ is executed.
|
|||||||
first line. (Ingo Karkat, 2008 Jul 1) Ian Kelling is working on this.
|
first line. (Ingo Karkat, 2008 Jul 1) Ian Kelling is working on this.
|
||||||
Similar problem with ":e". (Marc Montu, 2014 Apr 22)
|
Similar problem with ":e". (Marc Montu, 2014 Apr 22)
|
||||||
|
|
||||||
Wildmenu not deleted: "gvim -u NONE", ":set nocp wildmenu cmdheight=3
|
|
||||||
laststatus=2", CTRL-D CTRL-H CTRL-H CTRL-H. (A.Politz, 2008 April 1)
|
|
||||||
Works OK with Vim in an xterm.
|
|
||||||
|
|
||||||
Cursor line moves in other window when using CTRL-W J that doesn't change
|
Cursor line moves in other window when using CTRL-W J that doesn't change
|
||||||
anything. (Dasn, 2009 Apr 7)
|
anything. (Dasn, 2009 Apr 7)
|
||||||
|
|
||||||
@@ -2462,10 +2447,6 @@ backslash? (Robert Vibrant, 2008 Jun 5)
|
|||||||
When 'rightleft' is set, cursorcolumn isn't highlighted after the end of a
|
When 'rightleft' is set, cursorcolumn isn't highlighted after the end of a
|
||||||
line. It's also wrong in folds. (Dominique Pelle, 2010 Aug 21)
|
line. It's also wrong in folds. (Dominique Pelle, 2010 Aug 21)
|
||||||
|
|
||||||
After using <Tab> for command line completion after ":ta blah" and getting E33
|
|
||||||
(no tags file), further editing the command to e.g., ":echo 'blah'", the
|
|
||||||
command is not executed. Fix by Ian Kelling?
|
|
||||||
|
|
||||||
":help s/~" jumps to *s/\~*, while ":help s/\~" doesn't find anything. (Tim
|
":help s/~" jumps to *s/\~*, while ":help s/\~" doesn't find anything. (Tim
|
||||||
Chase) Fix by Ian Kelling, 2008 Jul 14.
|
Chase) Fix by Ian Kelling, 2008 Jul 14.
|
||||||
|
|
||||||
@@ -2641,16 +2622,6 @@ This should avoid flicker. Other solution by A.Politz, 2007 Aug 22.
|
|||||||
When a register contains illegal bytes, writing viminfo in utf-8 and reading
|
When a register contains illegal bytes, writing viminfo in utf-8 and reading
|
||||||
it back doesn't result in utf-8. (Devin Bayer)
|
it back doesn't result in utf-8. (Devin Bayer)
|
||||||
|
|
||||||
Command line completion: Scanning for tags doesn't check for typed key now and
|
|
||||||
then? Hangs for about 5 seconds. Appears to be caused by finding include
|
|
||||||
files with "foo/**" in 'path'. (Kalisiak, 2006 July 15)
|
|
||||||
Additional info: When using the |wildcards| ** globing, vim hangs
|
|
||||||
indefinitely on lots of directories. The |file-searching| globing, like in
|
|
||||||
":set path=/**" does not hang as often as with globing with |wildcards|, like
|
|
||||||
in ":1find /**/file". This is for files that unix "find" can find very
|
|
||||||
quickly. Merging the 2 kinds of globing might make this an easier fix. (Ian
|
|
||||||
Kelling, 2008 July 4)
|
|
||||||
|
|
||||||
When the file name has parenthesis, e.g., "foo (bar).txt", ":!ls '%'" has the
|
When the file name has parenthesis, e.g., "foo (bar).txt", ":!ls '%'" has the
|
||||||
parenthesis escaped but not the space. That's inconsistent. Either escape
|
parenthesis escaped but not the space. That's inconsistent. Either escape
|
||||||
neither or both. No escaping might be best, because it doesn't depend on
|
neither or both. No escaping might be best, because it doesn't depend on
|
||||||
@@ -2729,8 +2700,6 @@ Cursor displayed in the wrong position when using 'numberwidth'. (James Vega,
|
|||||||
When $VAR contains a backslash expand('$VAR') removes it. (Teemu Likonen, 2008
|
When $VAR contains a backslash expand('$VAR') removes it. (Teemu Likonen, 2008
|
||||||
Jun 18)
|
Jun 18)
|
||||||
|
|
||||||
If the variable "g:x#y#z" exists completion after ":echo g:x#" doesn't work.
|
|
||||||
|
|
||||||
In debug mode, using CTRL-R = to evaluate a function causes stepping through
|
In debug mode, using CTRL-R = to evaluate a function causes stepping through
|
||||||
the function. (Hari Krishna Dara, 2006 Jun 28)
|
the function. (Hari Krishna Dara, 2006 Jun 28)
|
||||||
|
|
||||||
@@ -2839,13 +2808,6 @@ reload it then?
|
|||||||
|
|
||||||
For Aap: include a config.arg.example file with hints how to use config.arg.
|
For Aap: include a config.arg.example file with hints how to use config.arg.
|
||||||
|
|
||||||
Command line completion when 'cmdheight' is maximum and 'wildmenu' is set,
|
|
||||||
only one buffer line displayed, causes display errors.
|
|
||||||
|
|
||||||
Completing with 'wildmenu' and using <Up> and <Down> to move through directory
|
|
||||||
tree stops unexpectedly when using ":cd " and entering a directory that
|
|
||||||
doesn't contain other directories.
|
|
||||||
|
|
||||||
Default for 'background' is wrong when using xterm with 256 colors.
|
Default for 'background' is wrong when using xterm with 256 colors.
|
||||||
Table with estimates from Matteo Cavalleri, 2014 Jan 10.
|
Table with estimates from Matteo Cavalleri, 2014 Jan 10.
|
||||||
|
|
||||||
@@ -3527,8 +3489,6 @@ Macintosh:
|
|||||||
8 When doing Insert mode completion a mapping cannot recursively call
|
8 When doing Insert mode completion a mapping cannot recursively call
|
||||||
edit(), because the completion information is global. Put everything in
|
edit(), because the completion information is global. Put everything in
|
||||||
an allocated structure?
|
an allocated structure?
|
||||||
8 Command line completion: buffers "foo.txt" and "../b/foo.txt", completing
|
|
||||||
":buf foo<Tab>" doesn't find the second one. (George V. Reilly)
|
|
||||||
7 mb_off2cells() doesn't work correctly on the tail byte of a double-byte
|
7 mb_off2cells() doesn't work correctly on the tail byte of a double-byte
|
||||||
character. (Yasuhiro Matsumoto) It should return 1 when used on a tail
|
character. (Yasuhiro Matsumoto) It should return 1 when used on a tail
|
||||||
byte, like for utf-8. Store second byte of double-byte in ScreenLines2[]
|
byte, like for utf-8. Store second byte of double-byte in ScreenLines2[]
|
||||||
@@ -3901,7 +3861,7 @@ User Friendlier:
|
|||||||
$HOME/_vimrc, etc.) and add "edit vimrc" to the File menu.
|
$HOME/_vimrc, etc.) and add "edit vimrc" to the File menu.
|
||||||
- Add a way to save local settings and mappings into a new plugin file.
|
- Add a way to save local settings and mappings into a new plugin file.
|
||||||
":mkplugin <file>"?
|
":mkplugin <file>"?
|
||||||
- Add mappings local to a window: ":map <window> ..."?
|
- Add mappings local to a window: ":map <window> ..." #9339
|
||||||
9 Add buffer-local menu. Should offer a choice between removing the menu or
|
9 Add buffer-local menu. Should offer a choice between removing the menu or
|
||||||
disabling it. Be careful that tear-offs don't disappear (keep one empty
|
disabling it. Be careful that tear-offs don't disappear (keep one empty
|
||||||
item?).
|
item?).
|
||||||
@@ -4263,8 +4223,6 @@ Syntax highlighting:
|
|||||||
7 CTRL-] checks the highlight group for finding out what the tag is.
|
7 CTRL-] checks the highlight group for finding out what the tag is.
|
||||||
7 Add an explanation how a list of words can be used to highlight misspelled
|
7 Add an explanation how a list of words can be used to highlight misspelled
|
||||||
words.
|
words.
|
||||||
8 Add more command line completion for :syntax.
|
|
||||||
8 Add more command line completion for :highlight.
|
|
||||||
7 Should find a better way to parse the :syntax and :highlight commands.
|
7 Should find a better way to parse the :syntax and :highlight commands.
|
||||||
Use tables or lists that can be shared by parsing for execution and
|
Use tables or lists that can be shared by parsing for execution and
|
||||||
completion?
|
completion?
|
||||||
@@ -4322,12 +4280,6 @@ Vim script language:
|
|||||||
restore option values. Especially useful for new options. Problem: how
|
restore option values. Especially useful for new options. Problem: how
|
||||||
to avoid a performance penalty (esp. for string options)?
|
to avoid a performance penalty (esp. for string options)?
|
||||||
- range for ":exec", pass it on to the executed command. (Webb)
|
- range for ":exec", pass it on to the executed command. (Webb)
|
||||||
8 ":{range}source": source the lines from the current file.
|
|
||||||
You can already yank lines and use :@" to execute them.
|
|
||||||
Most of do_source() would not be used, need a new function.
|
|
||||||
It's easy when not doing breakpoints or profiling.
|
|
||||||
Requires copying the lines into a list and then creating a function to
|
|
||||||
execute lines from the list. Similar to getnextac().
|
|
||||||
7 ":include" command: just like ":source" but doesn't start a new scriptID?
|
7 ":include" command: just like ":source" but doesn't start a new scriptID?
|
||||||
Will be tricky for the list of script names.
|
Will be tricky for the list of script names.
|
||||||
8 Have a look at VSEL. Would it be useful to include? (Bigham)
|
8 Have a look at VSEL. Would it be useful to include? (Bigham)
|
||||||
@@ -4854,9 +4806,6 @@ Autocommands:
|
|||||||
CursorHoldC - CursorHold while command-line editing
|
CursorHoldC - CursorHold while command-line editing
|
||||||
WinMoved - when windows have been moved around, e.g, ":wincmd J"
|
WinMoved - when windows have been moved around, e.g, ":wincmd J"
|
||||||
SearchPost - After doing a search command (e.g. to do "M")
|
SearchPost - After doing a search command (e.g. to do "M")
|
||||||
PreDirChanged/PostDirChanged
|
|
||||||
- Before/after ":cd" has been used (for changing the
|
|
||||||
window title)
|
|
||||||
ShutDown - when the system is about to shut down
|
ShutDown - when the system is about to shut down
|
||||||
InsertCharPost - user typed a character in Insert mode, after inserting
|
InsertCharPost - user typed a character in Insert mode, after inserting
|
||||||
the char.
|
the char.
|
||||||
@@ -5059,6 +5008,35 @@ Command line completion:
|
|||||||
- Add 'wildlongest' option: Key to use to find longest common match for
|
- Add 'wildlongest' option: Key to use to find longest common match for
|
||||||
command line completion (default CTRL-L), like 'wildchar'. (Cregut)
|
command line completion (default CTRL-L), like 'wildchar'. (Cregut)
|
||||||
Also: when there are several matches, show them line a CTRL-D.
|
Also: when there are several matches, show them line a CTRL-D.
|
||||||
|
- With 'wildmode' set to "longest:full,full" and pressing Tab once the first
|
||||||
|
entry in wildmenu is highlighted, that shouldn't happen. (Yuki Watanabe,
|
||||||
|
2011 Feb 12)
|
||||||
|
- After using <Tab> for command line completion after ":ta blah" and getting
|
||||||
|
E33 (no tags file), further editing the command to e.g., ":echo 'blah'",
|
||||||
|
the command is not executed. Fix by Ian Kelling?
|
||||||
|
- Command line completion: Scanning for tags doesn't check for typed key now
|
||||||
|
and then? Hangs for about 5 seconds. Appears to be caused by finding
|
||||||
|
include files with "foo/**" in 'path'. (Kalisiak, 2006 July 15)
|
||||||
|
Additional info: When using the |wildcards| ** globing, vim hangs
|
||||||
|
indefinitely on lots of directories. The |file-searching| globing, like in
|
||||||
|
":set path=/**" does not hang as often as with globing with |wildcards|,
|
||||||
|
like in ":1find /**/file". This is for files that unix "find" can find
|
||||||
|
very quickly. Merging the 2 kinds of globing might make this an easier
|
||||||
|
fix. (Ian Kelling, 2008 July 4)
|
||||||
|
- Command line completion when 'cmdheight' is maximum and 'wildmenu' is set,
|
||||||
|
only one buffer line displayed, causes display errors.
|
||||||
|
- Completing with 'wildmenu' and using <Up> and <Down> to move through
|
||||||
|
directory tree stops unexpectedly when using ":cd " and entering a
|
||||||
|
directory that doesn't contain other directories.
|
||||||
|
8 Command line completion: buffers "foo.txt" and "../b/foo.txt", completing
|
||||||
|
":buf foo<Tab>" doesn't find the second one. (George V. Reilly)
|
||||||
|
8 Add more command line completion for :syntax.
|
||||||
|
8 Add more command line completion for :highlight.
|
||||||
|
- Wildmenu not deleted: "gvim -u NONE", ":set nocp wildmenu cmdheight=3
|
||||||
|
laststatus=2", CTRL-D CTRL-H CTRL-H CTRL-H. (A.Politz, 2008 April 1) Works
|
||||||
|
OK with Vim in an xterm.
|
||||||
|
- If the variable "g:x#y#z" exists completion after ":echo g:x#" doesn't
|
||||||
|
work.
|
||||||
|
|
||||||
|
|
||||||
Command line history:
|
Command line history:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*uganda.txt* For Vim version 8.2. Last change: 2020 Jan 08
|
*uganda.txt* For Vim version 8.2. Last change: 2022 Mar 02
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -11,9 +11,9 @@ Vim is Charityware. You can use and copy it as much as you like, but you are
|
|||||||
encouraged to make a donation for needy children in Uganda. Please see |kcc|
|
encouraged to make a donation for needy children in Uganda. Please see |kcc|
|
||||||
below or visit the ICCF web site, available at these URLs:
|
below or visit the ICCF web site, available at these URLs:
|
||||||
|
|
||||||
http://iccf-holland.org/
|
https://iccf-holland.org/
|
||||||
http://www.vim.org/iccf/
|
https://www.vim.org/iccf/
|
||||||
http://www.iccf.nl/
|
https://www.iccf.nl/
|
||||||
|
|
||||||
You can also sponsor the development of Vim. Vim sponsors can vote for
|
You can also sponsor the development of Vim. Vim sponsors can vote for
|
||||||
features. See |sponsor|. The money goes to Uganda anyway.
|
features. See |sponsor|. The money goes to Uganda anyway.
|
||||||
@@ -133,11 +133,12 @@ Kibaale Children's Centre *kcc* *Kibaale* *charity*
|
|||||||
Kibaale Children's Centre (KCC) is located in Kibaale, a small town in the
|
Kibaale Children's Centre (KCC) is located in Kibaale, a small town in the
|
||||||
south of Uganda, near Tanzania, in East Africa. The area is known as Rakai
|
south of Uganda, near Tanzania, in East Africa. The area is known as Rakai
|
||||||
District. The population is mostly farmers. Although people are poor, there
|
District. The population is mostly farmers. Although people are poor, there
|
||||||
is enough food. But this district is suffering from AIDS more than any other
|
usually is enough food. But this district is suffering from AIDS more than
|
||||||
part of the world. Some say that it started there. Estimations are that 10
|
any other part of the world. Some say that it started there. Estimations are
|
||||||
to 30% of the Ugandans are infected with HIV. Because parents die, there are
|
that in the past 10 to 30% of the Ugandans are infected with HIV. Because
|
||||||
many orphans. In this district about 60,000 children have lost one or both
|
parents die, there are many orphans. In this district about 60,000 children
|
||||||
parents, out of a population of 350,000. And this is still continuing.
|
have lost one or both parents, out of a population of 350,000. Although AIDS
|
||||||
|
is now mostly under control, the problems are still continuing.
|
||||||
|
|
||||||
The children need a lot of help. The KCC is working hard to provide the needy
|
The children need a lot of help. The KCC is working hard to provide the needy
|
||||||
with food, medical care and education. Food and medical care to keep them
|
with food, medical care and education. Food and medical care to keep them
|
||||||
@@ -169,10 +170,11 @@ households are stimulated to build a proper latrine. I helped setting up a
|
|||||||
production site for cement slabs. These are used to build a good latrine.
|
production site for cement slabs. These are used to build a good latrine.
|
||||||
They are sold below cost price.
|
They are sold below cost price.
|
||||||
|
|
||||||
There is a small clinic at the project, which provides children and their
|
There is a clinic at the project, which provides children and their family
|
||||||
family with medical help. When needed, transport to a hospital is offered.
|
medical help. Since 2020 a maternity ward was added and 24/7 service is
|
||||||
Immunization programs are carried out and help is provided when an epidemic is
|
available. When needed, transport to a hospital is offered. Immunization
|
||||||
breaking out (measles and cholera have been a problem).
|
programs are carried out and help is provided when an epidemic is breaking out
|
||||||
|
(measles and cholera have been a problem).
|
||||||
*donate*
|
*donate*
|
||||||
Summer 1994 to summer 1995 I spent a whole year at the centre, working as a
|
Summer 1994 to summer 1995 I spent a whole year at the centre, working as a
|
||||||
volunteer. I have helped to expand the centre and worked in the area of water
|
volunteer. I have helped to expand the centre and worked in the area of water
|
||||||
@@ -214,44 +216,29 @@ Check the ICCF web site for the latest information! See |iccf| for the URL.
|
|||||||
|
|
||||||
|
|
||||||
USA: The methods mentioned below can be used.
|
USA: The methods mentioned below can be used.
|
||||||
Sending a check to the Nehemiah Group Outreach Society (NGOS)
|
If you must send a check send it to our Canadian partner:
|
||||||
is no longer possible, unfortunately. We are looking for
|
https://www.kuwasha.net/
|
||||||
another way to get you an IRS tax receipt.
|
|
||||||
For sponsoring a child contact KCF in Canada (see below). US
|
|
||||||
checks can be sent to them to lower banking costs.
|
|
||||||
|
|
||||||
Canada: Contact Kibaale Children's Fund (KCF) in Surrey, Canada. They
|
Canada: Contact Kuwasha in Surrey, Canada. They take care of the
|
||||||
take care of the Canadian sponsors for the children in
|
Canadian sponsors for the children in Kibaale. Kuwasha
|
||||||
Kibaale. KCF forwards 100% of the money to the project in
|
forwards 100% of the money to the project in Uganda. You can
|
||||||
Uganda. You can send them a one time donation directly.
|
send them a one time donation directly.
|
||||||
Please send me a note so that I know what has been donated
|
Please send me a note so that I know what has been donated
|
||||||
because of Vim. Ask KCF for information about sponsorship.
|
because of Vim. Look on their site for information about
|
||||||
Kibaale Children's Fund c/o Pacific Academy
|
sponsorship: https://www.kuwasha.net/
|
||||||
10238-168 Street
|
If you make a donation to Kuwasha you will receive a tax
|
||||||
Surrey, B.C. V4N 1Z4
|
receipt which can be submitted with your tax return.
|
||||||
Canada
|
|
||||||
Phone: 604-581-5353
|
|
||||||
If you make a donation to Kibaale Children's Fund (KCF) you
|
|
||||||
will receive a tax receipt which can be submitted with your
|
|
||||||
tax return.
|
|
||||||
|
|
||||||
Holland: Transfer to the account of "Stichting ICCF Holland" in Lisse.
|
Holland: Transfer to the account of "Stichting ICCF Holland" in
|
||||||
This will allow for tax deduction if you live in Holland.
|
Amersfoort. This will allow for tax deduction if you live in
|
||||||
Postbank, nr. 4548774
|
Holland. ING bank, IBAN: NL95 INGB 0004 5487 74
|
||||||
IBAN: NL95 INGB 0004 5487 74
|
|
||||||
|
|
||||||
Germany: It is possible to make donations that allow for a tax return.
|
Germany: It is possible to make donations that allow for a tax return.
|
||||||
Check the ICCF web site for the latest information:
|
Check the ICCF web site for the latest information:
|
||||||
http://iccf-holland.org/germany.html
|
https://iccf-holland.org/germany.html
|
||||||
|
|
||||||
World: Use a postal money order. That should be possible from any
|
Europe: Use a bank transfer if possible. See "Others" below for the
|
||||||
country, mostly from the post office. Use this name (which is
|
swift code and IBAN number.
|
||||||
in my passport): "Abraham Moolenaar". Use Euro for the
|
|
||||||
currency if possible.
|
|
||||||
|
|
||||||
Europe: Use a bank transfer if possible. Your bank should have a form
|
|
||||||
that you can use for this. See "Others" below for the swift
|
|
||||||
code and IBAN number.
|
|
||||||
Any other method should work. Ask for information about
|
Any other method should work. Ask for information about
|
||||||
sponsorship.
|
sponsorship.
|
||||||
|
|
||||||
@@ -261,28 +248,12 @@ Credit Card: You can use PayPal to send money with a Credit card. This is
|
|||||||
https://www.paypal.com/en_US/mrb/pal=XAC62PML3GF8Q
|
https://www.paypal.com/en_US/mrb/pal=XAC62PML3GF8Q
|
||||||
The e-mail address for sending the money to is:
|
The e-mail address for sending the money to is:
|
||||||
Bram@iccf-holland.org
|
Bram@iccf-holland.org
|
||||||
For amounts above 400 Euro ($500) sending a check is
|
|
||||||
preferred.
|
|
||||||
|
|
||||||
Others: Transfer to one of these accounts if possible:
|
Others: Transfer to this account if possible:
|
||||||
Postbank, account 4548774
|
ING bank: IBAN: NL95 INGB 0004 5487 74
|
||||||
Swift code: INGB NL 2A
|
Swift code: INGBNL2A
|
||||||
IBAN: NL95 INGB 0004 5487 74
|
under the name "stichting ICCF Holland", Amersfoort
|
||||||
under the name "stichting ICCF Holland", Lisse
|
Checks are not accepted.
|
||||||
If that doesn't work:
|
|
||||||
Rabobank Lisse, account 3765.05.117
|
|
||||||
Swift code: RABO NL 2U
|
|
||||||
under the name "Bram Moolenaar", Lisse
|
|
||||||
Otherwise, send a check in euro or US dollars to the address
|
|
||||||
below. Minimal amount: $70 (my bank does not accept smaller
|
|
||||||
amounts for foreign check, sorry)
|
|
||||||
|
|
||||||
Address to send checks to:
|
|
||||||
Bram Moolenaar
|
|
||||||
Finsterruetihof 1
|
|
||||||
8134 Adliswil
|
|
||||||
Switzerland
|
|
||||||
|
|
||||||
This address is expected to be valid for a long time.
|
|
||||||
|
|
||||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||||
|
|||||||
@@ -286,12 +286,12 @@ history file. E.g.: >
|
|||||||
au BufReadPost * call ReadUndo()
|
au BufReadPost * call ReadUndo()
|
||||||
au BufWritePost * call WriteUndo()
|
au BufWritePost * call WriteUndo()
|
||||||
func ReadUndo()
|
func ReadUndo()
|
||||||
if filereadable(expand('%:h'). '/UNDO/' . expand('%:t'))
|
if filereadable(expand('%:h') .. '/UNDO/' .. expand('%:t'))
|
||||||
rundo %:h/UNDO/%:t
|
rundo %:h/UNDO/%:t
|
||||||
endif
|
endif
|
||||||
endfunc
|
endfunc
|
||||||
func WriteUndo()
|
func WriteUndo()
|
||||||
let dirname = expand('%:h') . '/UNDO'
|
let dirname = expand('%:h') .. '/UNDO'
|
||||||
if !isdirectory(dirname)
|
if !isdirectory(dirname)
|
||||||
call mkdir(dirname)
|
call mkdir(dirname)
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -270,7 +270,7 @@ line break. Revert with ":iunmap <C-U>".
|
|||||||
Enable using the mouse if available. See 'mouse'.
|
Enable using the mouse if available. See 'mouse'.
|
||||||
|
|
||||||
>
|
>
|
||||||
vnoremap _g y:exe "grep /" . escape(@", '\\/') . "/ *.c *.h"<CR>
|
vnoremap _g y:exe "grep /" .. escape(@", '\\/') .. "/ *.c *.h"<CR>
|
||||||
|
|
||||||
This mapping yanks the visually selected text and searches for it in C files.
|
This mapping yanks the visually selected text and searches for it in C files.
|
||||||
You can see that a mapping can be used to do quite complicated things. Still,
|
You can see that a mapping can be used to do quite complicated things. Still,
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ You can specify #rrggbb hex colors and you can define new names for hex
|
|||||||
colors in |v:colornames| like so: >
|
colors in |v:colornames| like so: >
|
||||||
|
|
||||||
let v:colornames['mine_red'] = '#aa0000'
|
let v:colornames['mine_red'] = '#aa0000'
|
||||||
<
|
|
||||||
If you are authoring a color scheme for others to use, it is important
|
If you are authoring a color scheme for others to use, it is important
|
||||||
to define these colors only when they do not exist: >
|
to define these colors only when they do not exist: >
|
||||||
|
|
||||||
@@ -197,7 +197,7 @@ to define these colors only when they do not exist: >
|
|||||||
|
|
||||||
This allows users of the color scheme to override the precise definition of
|
This allows users of the color scheme to override the precise definition of
|
||||||
that color prior to loading your color scheme. For example, in a |.vimrc|
|
that color prior to loading your color scheme. For example, in a |.vimrc|
|
||||||
file:
|
file: >
|
||||||
|
|
||||||
runtime colors/lists/css_colors.vim
|
runtime colors/lists/css_colors.vim
|
||||||
let v:colornames['your_red'] = v:colornames['css_red']
|
let v:colornames['your_red'] = v:colornames['css_red']
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_29.txt* For Vim version 8.2. Last change: 2016 Feb 27
|
*usr_29.txt* For Vim version 8.2. Last change: 2022 Mar 13
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -33,10 +33,12 @@ following command: >
|
|||||||
ctags *.c
|
ctags *.c
|
||||||
|
|
||||||
"ctags" is a separate program. Most Unix systems already have it installed.
|
"ctags" is a separate program. Most Unix systems already have it installed.
|
||||||
If you do not have it yet, you can find Exuberant ctags here:
|
If you do not have it yet, you can find Universal/Exuberant ctags at:
|
||||||
|
http://ctags.io ~
|
||||||
http://ctags.sf.net ~
|
http://ctags.sf.net ~
|
||||||
|
|
||||||
|
Universal ctags is preferred, Exuberant ctags is no longer being developed.
|
||||||
|
|
||||||
Now when you are in Vim and you want to go to a function definition, you can
|
Now when you are in Vim and you want to go to a function definition, you can
|
||||||
jump to it by using the following command: >
|
jump to it by using the following command: >
|
||||||
|
|
||||||
@@ -142,15 +144,15 @@ ONE TAGS FILE
|
|||||||
When Vim has to search many places for tags files, you can hear the disk
|
When Vim has to search many places for tags files, you can hear the disk
|
||||||
rattling. It may get a bit slow. In that case it's better to spend this
|
rattling. It may get a bit slow. In that case it's better to spend this
|
||||||
time while generating one big tags file. You might do this overnight.
|
time while generating one big tags file. You might do this overnight.
|
||||||
This requires the Exuberant ctags program, mentioned above. It offers an
|
This requires the Universal or Exuberant ctags program, mentioned above.
|
||||||
argument to search a whole directory tree: >
|
It offers an argument to search a whole directory tree: >
|
||||||
|
|
||||||
cd ~/proj
|
cd ~/proj
|
||||||
ctags -R .
|
ctags -R .
|
||||||
|
|
||||||
The nice thing about this is that Exuberant ctags recognizes various file
|
The nice thing about this is that Universal/Exuberant ctags recognizes various
|
||||||
types. Thus this doesn't work just for C and C++ programs, also for Eiffel
|
file types. Thus this doesn't work just for C and C++ programs, also for
|
||||||
and even Vim scripts. See the ctags documentation to tune this.
|
Eiffel and even Vim scripts. See the ctags documentation to tune this.
|
||||||
Now you only need to tell Vim where your big tags file is: >
|
Now you only need to tell Vim where your big tags file is: >
|
||||||
|
|
||||||
:set tags=~/proj/tags
|
:set tags=~/proj/tags
|
||||||
@@ -232,7 +234,8 @@ A TAGS BROWSER
|
|||||||
Since CTRL-] takes you to the definition of the identifier under the cursor,
|
Since CTRL-] takes you to the definition of the identifier under the cursor,
|
||||||
you can use a list of identifier names as a table of contents. Here is an
|
you can use a list of identifier names as a table of contents. Here is an
|
||||||
example.
|
example.
|
||||||
First create a list of identifiers (this requires Exuberant ctags): >
|
First create a list of identifiers (this requires Universal or Exuberant
|
||||||
|
ctags): >
|
||||||
|
|
||||||
ctags --c-types=f -f functions *.c
|
ctags --c-types=f -f functions *.c
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*usr_40.txt* For Vim version 8.2. Last change: 2020 Sep 02
|
*usr_40.txt* For Vim version 8.2. Last change: 2022 Jan 03
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@@ -20,7 +20,7 @@ Table of contents: |usr_toc.txt|
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
*40.1* Key mapping
|
*40.1* Key mapping
|
||||||
|
|
||||||
A simple mapping was explained in section |05.3|. The principle is that one
|
A simple mapping was explained in section |05.4|. The principle is that one
|
||||||
sequence of key strokes is translated into another sequence of key strokes.
|
sequence of key strokes is translated into another sequence of key strokes.
|
||||||
This is a simple, yet powerful mechanism.
|
This is a simple, yet powerful mechanism.
|
||||||
The simplest form is that one key is mapped to a sequence of keys. Since
|
The simplest form is that one key is mapped to a sequence of keys. Since
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
*various.txt* For Vim version 8.2. Last change: 2021 Sep 06
|
*various.txt* For Vim version 8.2. Last change: 2022 Mar 04
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -114,6 +114,7 @@ g8 Print the hex values of the bytes used in the
|
|||||||
:[range]P[rint] [count] [flags]
|
:[range]P[rint] [count] [flags]
|
||||||
Just as ":print". Was apparently added to Vi for
|
Just as ":print". Was apparently added to Vi for
|
||||||
people that keep the shift key pressed too long...
|
people that keep the shift key pressed too long...
|
||||||
|
This command is not supported in |Vim9| script.
|
||||||
Note: A user command can overrule this command.
|
Note: A user command can overrule this command.
|
||||||
See |ex-flags| for [flags].
|
See |ex-flags| for [flags].
|
||||||
|
|
||||||
@@ -244,10 +245,10 @@ g8 Print the hex values of the bytes used in the
|
|||||||
compiler will have set stdin to a non-interactive
|
compiler will have set stdin to a non-interactive
|
||||||
mode.
|
mode.
|
||||||
|
|
||||||
*:!cmd* *:!* *E34*
|
*:!cmd* *:!*
|
||||||
:!{cmd} Execute {cmd} with the shell. See also the 'shell'
|
:!{cmd} Execute {cmd} with the shell. See also the 'shell'
|
||||||
and 'shelltype' option.
|
and 'shelltype' option.
|
||||||
|
*E34*
|
||||||
Any '!' in {cmd} is replaced with the previous
|
Any '!' in {cmd} is replaced with the previous
|
||||||
external command (see also 'cpoptions'). But not when
|
external command (see also 'cpoptions'). But not when
|
||||||
there is a backslash before the '!', then that
|
there is a backslash before the '!', then that
|
||||||
@@ -267,7 +268,7 @@ g8 Print the hex values of the bytes used in the
|
|||||||
name does not contain a single quote: >
|
name does not contain a single quote: >
|
||||||
:!ls '%'
|
:!ls '%'
|
||||||
< This should always work, but it's more typing: >
|
< This should always work, but it's more typing: >
|
||||||
:exe "!ls " . shellescape(expand("%"))
|
:exe "!ls " .. shellescape(expand("%"))
|
||||||
< To get a literal "%" or "#" prepend it with a
|
< To get a literal "%" or "#" prepend it with a
|
||||||
backslash. For example, to list all files starting
|
backslash. For example, to list all files starting
|
||||||
with "%": >
|
with "%": >
|
||||||
@@ -369,7 +370,7 @@ N *+digraphs* |digraphs| *E196*
|
|||||||
*+dnd* Support for DnD into the "~ register |quote_~|.
|
*+dnd* Support for DnD into the "~ register |quote_~|.
|
||||||
B *+emacs_tags* |emacs-tags| files
|
B *+emacs_tags* |emacs-tags| files
|
||||||
N *+eval* expression evaluation |eval.txt|
|
N *+eval* expression evaluation |eval.txt|
|
||||||
N *+ex_extra* always on now, used to be for Vim's extra Ex commands
|
T *+ex_extra* always on now, used to be for Vim's extra Ex commands
|
||||||
N *+extra_search* |'hlsearch'| and |'incsearch'| options.
|
N *+extra_search* |'hlsearch'| and |'incsearch'| options.
|
||||||
- *+farsi* Removed: |farsi| language
|
- *+farsi* Removed: |farsi| language
|
||||||
N *+file_in_path* |gf|, |CTRL-W_f| and |<cfile>|
|
N *+file_in_path* |gf|, |CTRL-W_f| and |<cfile>|
|
||||||
@@ -391,7 +392,7 @@ m *+hangul_input* Hangul input support |hangul|
|
|||||||
T *+insert_expand* |insert_expand| Insert mode completion
|
T *+insert_expand* |insert_expand| Insert mode completion
|
||||||
m *+ipv6* Support for IPv6 networking |channel|
|
m *+ipv6* Support for IPv6 networking |channel|
|
||||||
m *+job* starting and stopping jobs |job|
|
m *+job* starting and stopping jobs |job|
|
||||||
S *+jumplist* |jumplist|
|
T *+jumplist* |jumplist|; Always enabled since 8.2.3795
|
||||||
B *+keymap* |'keymap'|
|
B *+keymap* |'keymap'|
|
||||||
N *+lambda* |lambda| and |closure|
|
N *+lambda* |lambda| and |closure|
|
||||||
B *+langmap* |'langmap'|
|
B *+langmap* |'langmap'|
|
||||||
@@ -410,6 +411,7 @@ T *+mouse* Mouse handling |mouse-using|
|
|||||||
N *+mouseshape* |'mouseshape'|
|
N *+mouseshape* |'mouseshape'|
|
||||||
B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
|
B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
|
||||||
N *+mouse_gpm* Unix only: Linux console mouse handling |gpm-mouse|
|
N *+mouse_gpm* Unix only: Linux console mouse handling |gpm-mouse|
|
||||||
|
m *+mouse_gpm/dyn* Same as |+mouse_gpm| with optional library dependency |/dyn|
|
||||||
N *+mouse_jsbterm* JSB mouse handling |jsbterm-mouse|
|
N *+mouse_jsbterm* JSB mouse handling |jsbterm-mouse|
|
||||||
B *+mouse_netterm* Unix only: netterm mouse handling |netterm-mouse|
|
B *+mouse_netterm* Unix only: netterm mouse handling |netterm-mouse|
|
||||||
N *+mouse_pterm* QNX only: pterm mouse handling |qnx-terminal|
|
N *+mouse_pterm* QNX only: pterm mouse handling |qnx-terminal|
|
||||||
@@ -423,8 +425,8 @@ N *+multi_lang* non-English language support |multi-lang|
|
|||||||
m *+mzscheme* Mzscheme interface |mzscheme|
|
m *+mzscheme* Mzscheme interface |mzscheme|
|
||||||
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
||||||
m *+netbeans_intg* |netbeans|
|
m *+netbeans_intg* |netbeans|
|
||||||
*+num64* 64-bit Number support |Number|
|
T *+num64* 64-bit Number support |Number|
|
||||||
Always enabled since 8.2.0271, use v:numbersize to
|
Always enabled since 8.2.0271, use v:numbersize to
|
||||||
check the actual size of a Number.
|
check the actual size of a Number.
|
||||||
m *+ole* Win32 GUI only: |ole-interface|
|
m *+ole* Win32 GUI only: |ole-interface|
|
||||||
N *+packages* Loading |packages|
|
N *+packages* Loading |packages|
|
||||||
@@ -471,15 +473,16 @@ N *+textobjects* |text-objects| selection
|
|||||||
N *+textprop* |text-properties|
|
N *+textprop* |text-properties|
|
||||||
*+tgetent* non-Unix only: able to use external termcap
|
*+tgetent* non-Unix only: able to use external termcap
|
||||||
N *+timers* the |timer_start()| function
|
N *+timers* the |timer_start()| function
|
||||||
N *+title* Setting the window 'title' and 'icon'; Always enabled
|
T *+title* Setting the window 'title' and 'icon'; Always enabled
|
||||||
N *+toolbar* |gui-toolbar|
|
N *+toolbar* |gui-toolbar|
|
||||||
T *+user_commands* User-defined commands. |user-commands|
|
T *+user_commands* User-defined commands. |user-commands|
|
||||||
Always enabled since 8.1.1210.
|
Always enabled since 8.1.1210.
|
||||||
B *+vartabs* Variable-width tabstops. |'vartabstop'|
|
B *+vartabs* Variable-width tabstops. |'vartabstop'|
|
||||||
N *+viminfo* |'viminfo'|
|
T *+vertsplit* Vertically split windows |:vsplit|; Always enabled
|
||||||
*+vertsplit* Vertically split windows |:vsplit|; Always enabled
|
|
||||||
since 8.0.1118.
|
since 8.0.1118.
|
||||||
N *+virtualedit* |'virtualedit'| Always enabled since 8.1.826.
|
T *+vim9script* |Vim9| script
|
||||||
|
N *+viminfo* |'viminfo'|
|
||||||
|
T *+virtualedit* |'virtualedit'| Always enabled since 8.1.826.
|
||||||
T *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200.
|
T *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200.
|
||||||
T *+visualextra* extra Visual mode commands |blockwise-operators|
|
T *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||||
T *+vreplace* |gR| and |gr|
|
T *+vreplace* |gR| and |gr|
|
||||||
@@ -548,37 +551,40 @@ N *+X11* Unix only: can restore window title |X11|
|
|||||||
backward compatibility, the ">" after the register
|
backward compatibility, the ">" after the register
|
||||||
name can be omitted.
|
name can be omitted.
|
||||||
:redi[r] @">> Append messages to the unnamed register.
|
:redi[r] @">> Append messages to the unnamed register.
|
||||||
|
*E1092*
|
||||||
:redi[r] => {var} Redirect messages to a variable. If the variable
|
:redi[r] => {var} Redirect messages to a variable.
|
||||||
doesn't exist, then it is created. If the variable
|
In legacy script: If the variable doesn't exist, then
|
||||||
exists, then it is initialized to an empty string.
|
it is created. If the variable exists, then it is
|
||||||
|
initialized to an empty string. After the redirection
|
||||||
|
starts, if the variable is removed or locked or the
|
||||||
|
variable type is changed, then further command output
|
||||||
|
messages will cause errors.
|
||||||
|
In Vim9 script: the variable must have been declared
|
||||||
|
as a string.
|
||||||
The variable will remain empty until redirection ends.
|
The variable will remain empty until redirection ends.
|
||||||
Only string variables can be used. After the
|
Only string variables can be used.
|
||||||
redirection starts, if the variable is removed or
|
|
||||||
locked or the variable type is changed, then further
|
|
||||||
command output messages will cause errors.
|
|
||||||
To get the output of one command the |execute()|
|
To get the output of one command the |execute()|
|
||||||
function can be used instead of redirection.
|
function can be used instead of redirection.
|
||||||
|
|
||||||
:redi[r] =>> {var} Append messages to an existing variable. Only string
|
:redi[r] =>> {var} Append messages to an existing variable. Only string
|
||||||
variables can be used.
|
variables can be used.
|
||||||
|
*E1185*
|
||||||
:redi[r] END End redirecting messages.
|
:redi[r] END End redirecting messages.
|
||||||
|
|
||||||
*:filt* *:filter*
|
*:filt* *:filter*
|
||||||
:filt[er][!] {pat} {command}
|
:filt[er][!] {pattern} {command}
|
||||||
:filt[er][!] /{pat}/ {command}
|
:filt[er][!] /{pattern}/ {command}
|
||||||
Restrict the output of {command} to lines matching
|
Restrict the output of {command} to lines matching
|
||||||
with {pat}. For example, to list only xml files: >
|
with {pattern}. For example, to list only xml files: >
|
||||||
:filter /\.xml$/ oldfiles
|
:filter /\.xml$/ oldfiles
|
||||||
< If the [!] is given, restrict the output of {command}
|
< If the [!] is given, restrict the output of {command}
|
||||||
to lines that do NOT match {pat}.
|
to lines that do NOT match {pattern}.
|
||||||
|
|
||||||
{pat} is a Vim search pattern. Instead of enclosing
|
{pattern} is a Vim search pattern. Instead of enclosing
|
||||||
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 {pattern}.
|
||||||
the enclosing character the pattern cannot include the
|
Without the enclosing character the pattern cannot
|
||||||
bar character. 'ignorecase' is not used.
|
include the 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
|
||||||
@@ -598,7 +604,7 @@ N *+X11* Unix only: can restore window title |X11|
|
|||||||
|:oldfiles| - filter by file name
|
|:oldfiles| - filter by file name
|
||||||
|:registers| - filter by register contents
|
|:registers| - filter by register contents
|
||||||
(does not work multi-line)
|
(does not work multi-line)
|
||||||
|:set| - filter by variable name
|
|:set| - filter by option name
|
||||||
|
|
||||||
Only normal messages are filtered, error messages are
|
Only normal messages are filtered, error messages are
|
||||||
not.
|
not.
|
||||||
@@ -645,7 +651,7 @@ N *+X11* Unix only: can restore window title |X11|
|
|||||||
used. In this example |:silent| is used to avoid the
|
used. In this example |:silent| is used to avoid the
|
||||||
message about reading the file and |:unsilent| to be
|
message about reading the file and |:unsilent| to be
|
||||||
able to list the first line of each file. >
|
able to list the first line of each file. >
|
||||||
:silent argdo unsilent echo expand('%') . ": " . getline(1)
|
:silent argdo unsilent echo expand('%') .. ": " .. getline(1)
|
||||||
<
|
<
|
||||||
|
|
||||||
*:verb* *:verbose*
|
*:verb* *:verbose*
|
||||||
|
|||||||
@@ -14965,7 +14965,7 @@ Solution: Adjust autoconf. (lilydjwg)
|
|||||||
Files: src/configure.in, src/auto/configure
|
Files: src/configure.in, src/auto/configure
|
||||||
|
|
||||||
Patch 7.3.806
|
Patch 7.3.806
|
||||||
Problem: Compiler warnings in Perl code when building with Visual studio
|
Problem: Compiler warnings in Perl code when building with Visual Studio
|
||||||
2012. (skeept)
|
2012. (skeept)
|
||||||
Solution: Add type casts. (Christian Brabandt, 2013 Jan 30)
|
Solution: Add type casts. (Christian Brabandt, 2013 Jan 30)
|
||||||
Files: src/if_perl.xs
|
Files: src/if_perl.xs
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
26928
runtime/doc/version9.txt
Normal file
26928
runtime/doc/version9.txt
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
.TH VIM 1 "2006 Apr 11"
|
.TH VIM 1 "2021 Jun 13"
|
||||||
.SH 名前
|
.SH 名前
|
||||||
vim \- Vi IMproved, プログラマのテキストエディタ
|
vim \- Vi IMproved, プログラマのテキストエディタ
|
||||||
.SH 書式
|
.SH 書式
|
||||||
@@ -166,7 +166,7 @@ Note: "+" と "\-c" は合わせて 10 個まで指定できます。
|
|||||||
.TP
|
.TP
|
||||||
\-d
|
\-d
|
||||||
差分モードで起動します。
|
差分モードで起動します。
|
||||||
二つか三つの四つのファイルを引数に指定してください。
|
2 個から 8 個のファイルを引数に指定してください。
|
||||||
指定されたファイルが開かれ、それらのファイルの差分が表示されます。
|
指定されたファイルが開かれ、それらのファイルの差分が表示されます。
|
||||||
vimdiff(1) と同様の動作です。
|
vimdiff(1) と同様の動作です。
|
||||||
.TP
|
.TP
|
||||||
@@ -217,8 +217,7 @@ GUI がサポートされている場合は、GUI で起動します。
|
|||||||
サポートされていない場合はエラーメッセージを表示して終了します。
|
サポートされていない場合はエラーメッセージを表示して終了します。
|
||||||
.TP
|
.TP
|
||||||
\-i {viminfo}
|
\-i {viminfo}
|
||||||
viminfo ファイルを使う設定になっている場合は、初期設定の "~/.viminfo"
|
初期設定の "~/.viminfo" の代わりに、viminfo ファイルを読み書きする際に使うファイル名を指定します。
|
||||||
の代わりに、指定されたファイルを設定します。
|
|
||||||
"NONE" を指定すると、.viminfo ファイルを使わないように設定できます。
|
"NONE" を指定すると、.viminfo ファイルを使わないように設定できます。
|
||||||
.TP
|
.TP
|
||||||
\-L
|
\-L
|
||||||
@@ -356,6 +355,10 @@ X サーバーと通信しません。端末での起動時間を短くできま
|
|||||||
これ以降の引数はすべてファイル名として扱われます。
|
これ以降の引数はすべてファイル名として扱われます。
|
||||||
ファイル名が '\-' で始まっているファイルを開くときに使ってください。
|
ファイル名が '\-' で始まっているファイルを開くときに使ってください。
|
||||||
.TP
|
.TP
|
||||||
|
\-\-clean
|
||||||
|
一切の個人設定 (vimrc、プラグイン、その他) を使用しません。
|
||||||
|
ある問題がクリーンな Vim セットアップで再現するかを確認するのに有用です。
|
||||||
|
.TP
|
||||||
\-\-echo\-wid
|
\-\-echo\-wid
|
||||||
GTK GUI のみ: Window ID を標準出力に出力します。
|
GTK GUI のみ: Window ID を標準出力に出力します。
|
||||||
.TP
|
.TP
|
||||||
@@ -398,6 +401,9 @@ Vim サーバーの一覧を表示します。
|
|||||||
\-\-socketid {id}
|
\-\-socketid {id}
|
||||||
GTK GUI のみ: GtkPlug メカニズムを使って gvim を別のウィンドウの中で実行します。
|
GTK GUI のみ: GtkPlug メカニズムを使って gvim を別のウィンドウの中で実行します。
|
||||||
.TP
|
.TP
|
||||||
|
\-\-startuptime {file}
|
||||||
|
起動処理の間、経過時間のメッセージをファイル {fname} に書き出します。
|
||||||
|
.TP
|
||||||
\-\-version
|
\-\-version
|
||||||
バージョン情報を表示して終了します。
|
バージョン情報を表示して終了します。
|
||||||
.SH オンラインヘルプ
|
.SH オンラインヘルプ
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
.TH VIM 1 "2006 Apr 11"
|
.TH VIM 1 "2021 Jun 13"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
vim \- Vi IMproved, a programmer's text editor
|
vim \- Vi IMproved, a programmer's text editor
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
|
|||||||
@@ -432,4 +432,4 @@ BUGS
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
2006 Apr 11 VIM(1)
|
2021 Jun 13 VIM(1)
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,15 +1,15 @@
|
|||||||
.TH VIMDIFF 1 "2001 March 30"
|
.TH VIMDIFF 1 "2001 March 30"
|
||||||
.SH 名前
|
.SH 名前
|
||||||
vimdiff \- 二つか三つか四つのファイルを Vim で開いて、その差分を表示する
|
vimdiff \- 2 個から 8 個のファイルを Vim で開いて、その差分を表示する
|
||||||
.SH 書式
|
.SH 書式
|
||||||
.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 説明
|
.SH 説明
|
||||||
.B Vimdiff
|
.B Vimdiff
|
||||||
は、二つ (か三つか四つ) のファイルを
|
は、2 個から 8 個のファイルを
|
||||||
.B Vim
|
.B Vim
|
||||||
で開きます。
|
で開きます。
|
||||||
ファイルは個別のウィンドウで開かれ、差分が強調表示されます。
|
ファイルは個別のウィンドウで開かれ、差分が強調表示されます。
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*visual.txt* For Vim version 8.2. Last change: 2021 Nov 21
|
*visual.txt* For Vim version 8.2. Last change: 2022 Jan 20
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -265,6 +265,7 @@ Additionally the following commands can be used:
|
|||||||
X delete (2) |v_X|
|
X delete (2) |v_X|
|
||||||
Y yank (2) |v_Y|
|
Y yank (2) |v_Y|
|
||||||
p put |v_p|
|
p put |v_p|
|
||||||
|
P put without unnamed register overwrite |v_P|
|
||||||
J join (1) |v_J|
|
J join (1) |v_J|
|
||||||
U make uppercase |v_U|
|
U make uppercase |v_U|
|
||||||
u make lowercase |v_u|
|
u make lowercase |v_u|
|
||||||
@@ -488,6 +489,11 @@ Commands in Select mode:
|
|||||||
- ESC stops Select mode.
|
- ESC stops Select mode.
|
||||||
- CTRL-O switches to Visual mode for the duration of one command. *v_CTRL-O*
|
- CTRL-O switches to Visual mode for the duration of one command. *v_CTRL-O*
|
||||||
- CTRL-G switches to Visual mode.
|
- CTRL-G switches to Visual mode.
|
||||||
|
- CTRL-R {register} selects the register to be used for the text that is
|
||||||
|
deleted when typing text. *v_CTRL-R*
|
||||||
|
Unless you specify the "_" (black hole) register, the unnamed register is
|
||||||
|
also overwritten.
|
||||||
|
|
||||||
|
|
||||||
Otherwise, typed characters are handled as in Visual mode.
|
Otherwise, typed characters are handled as in Visual mode.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
*windows.txt* For Vim version 8.2. Last change: 2021 Sep 09
|
*windows.txt* For Vim version 8.2. Last change: 2022 Feb 03
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -146,7 +146,7 @@ highlight group (|hl-EndOfBuffer|) can be used to change the highlighting of
|
|||||||
the filler characters.
|
the filler characters.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Opening and closing a window *opening-window* *E36*
|
3. Opening and closing a window *opening-window*
|
||||||
|
|
||||||
CTRL-W s *CTRL-W_s*
|
CTRL-W s *CTRL-W_s*
|
||||||
CTRL-W S *CTRL-W_S*
|
CTRL-W S *CTRL-W_S*
|
||||||
@@ -168,7 +168,7 @@ CTRL-W CTRL-S *CTRL-W_CTRL-S*
|
|||||||
Note: CTRL-S does not work on all terminals and might block
|
Note: CTRL-S does not work on all terminals and might block
|
||||||
further input, use CTRL-Q to get going again.
|
further input, use CTRL-Q to get going again.
|
||||||
Also see |++opt| and |+cmd|.
|
Also see |++opt| and |+cmd|.
|
||||||
*E242*
|
*E242* *E1159*
|
||||||
Be careful when splitting a window in an autocommand, it may
|
Be careful when splitting a window in an autocommand, it may
|
||||||
mess up the window layout if this happens while making other
|
mess up the window layout if this happens while making other
|
||||||
window layout changes.
|
window layout changes.
|
||||||
@@ -246,6 +246,10 @@ CTRL-W : Does the same as typing |:| - enter a command line. Useful in a
|
|||||||
|
|
||||||
Note that the 'splitbelow' and 'splitright' options influence where a new
|
Note that the 'splitbelow' and 'splitright' options influence where a new
|
||||||
window will appear.
|
window will appear.
|
||||||
|
*E36*
|
||||||
|
Creating a window will fail if there is not enough room. Every window needs
|
||||||
|
at least one screen line and column, sometimes more. Options 'winminheight'
|
||||||
|
and 'winminwidth' are relevant.
|
||||||
|
|
||||||
*:vert* *:vertical*
|
*:vert* *:vertical*
|
||||||
:vert[ical] {cmd}
|
:vert[ical] {cmd}
|
||||||
@@ -469,7 +473,7 @@ These commands can also be executed with ":wincmd":
|
|||||||
the |CursorHold| autocommand event). Or when a Normal mode
|
the |CursorHold| autocommand event). Or when a Normal mode
|
||||||
command is inconvenient.
|
command is inconvenient.
|
||||||
The count can also be a window number. Example: >
|
The count can also be a window number. Example: >
|
||||||
:exe nr . "wincmd w"
|
:exe nr .. "wincmd w"
|
||||||
< This goes to window "nr".
|
< This goes to window "nr".
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
@@ -960,12 +964,12 @@ CTRL-W g } *CTRL-W_g}*
|
|||||||
cursor. This is less clever than using |:ptag|, but you don't
|
cursor. This is less clever than using |:ptag|, but you don't
|
||||||
need a tags file and it will also find matches in system
|
need a tags file and it will also find matches in system
|
||||||
include files. Example: >
|
include files. Example: >
|
||||||
:au! CursorHold *.[ch] ++nested exe "silent! psearch " . expand("<cword>")
|
:au! CursorHold *.[ch] ++nested exe "silent! psearch " .. expand("<cword>")
|
||||||
< Warning: This can be slow.
|
< Warning: This can be slow.
|
||||||
|
|
||||||
Example *CursorHold-example* >
|
Example *CursorHold-example* >
|
||||||
|
|
||||||
:au! CursorHold *.[ch] ++nested exe "silent! ptag " . expand("<cword>")
|
:au! CursorHold *.[ch] ++nested exe "silent! ptag " .. expand("<cword>")
|
||||||
|
|
||||||
This will cause a ":ptag" to be executed for the keyword under the cursor,
|
This will cause a ":ptag" to be executed for the keyword under the cursor,
|
||||||
when the cursor hasn't moved for the time set with 'updatetime'. The "nested"
|
when the cursor hasn't moved for the time set with 'updatetime'. The "nested"
|
||||||
@@ -988,14 +992,14 @@ is no word under the cursor, and a few other things: >
|
|||||||
:
|
:
|
||||||
: " Delete any existing highlight before showing another tag
|
: " Delete any existing highlight before showing another tag
|
||||||
: silent! wincmd P " jump to preview window
|
: silent! wincmd P " jump to preview window
|
||||||
: if &previewwindow " if we really get there...
|
: if &previewwindow " if we really get there...
|
||||||
: match none " delete existing highlight
|
: match none " delete existing highlight
|
||||||
: wincmd p " back to old window
|
: wincmd p " back to old window
|
||||||
: endif
|
: endif
|
||||||
:
|
:
|
||||||
: " Try displaying a matching tag for the word under the cursor
|
: " Try displaying a matching tag for the word under the cursor
|
||||||
: try
|
: try
|
||||||
: exe "ptag " . w
|
: exe "ptag " .. w
|
||||||
: catch
|
: catch
|
||||||
: return
|
: return
|
||||||
: endtry
|
: endtry
|
||||||
@@ -1007,10 +1011,10 @@ is no word under the cursor, and a few other things: >
|
|||||||
: endif
|
: endif
|
||||||
: call search("$", "b") " to end of previous line
|
: call search("$", "b") " to end of previous line
|
||||||
: let w = substitute(w, '\\', '\\\\', "")
|
: let w = substitute(w, '\\', '\\\\', "")
|
||||||
: call search('\<\V' . w . '\>') " position cursor on match
|
: call search('\<\V' .. w .. '\>') " position cursor on match
|
||||||
: " Add a match highlight to the word at this position
|
: " Add a match highlight to the word at this position
|
||||||
: hi previewWord term=bold ctermbg=green guibg=green
|
: hi previewWord term=bold ctermbg=green guibg=green
|
||||||
: exe 'match previewWord "\%' . line(".") . 'l\%' . col(".") . 'c\k*"'
|
: exe 'match previewWord "\%' .. line(".") .. 'l\%' .. col(".") .. 'c\k*"'
|
||||||
: wincmd p " back to old window
|
: wincmd p " back to old window
|
||||||
: endif
|
: endif
|
||||||
: endif
|
: endif
|
||||||
@@ -1203,6 +1207,8 @@ list of buffers. |unlisted-buffer|
|
|||||||
the current buffer remains being edited. See |:buffer-!| for
|
the current buffer remains being edited. See |:buffer-!| for
|
||||||
[!]. This will also edit a buffer that is not in the buffer
|
[!]. This will also edit a buffer that is not in the buffer
|
||||||
list, without setting the 'buflisted' flag.
|
list, without setting the 'buflisted' flag.
|
||||||
|
The notation with single quotes does not work here,
|
||||||
|
`:buf 12'345'` uses 12'345 as a buffer name.
|
||||||
Also see |+cmd|.
|
Also see |+cmd|.
|
||||||
|
|
||||||
:[N]b[uffer][!] [+cmd] {bufname} *{bufname}*
|
:[N]b[uffer][!] [+cmd] {bufname} *{bufname}*
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ octets.
|
|||||||
.TP
|
.TP
|
||||||
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
||||||
Produit une conversion continue dans le style Postscript (postscript continuous
|
Produit une conversion continue dans le style Postscript (postscript continuous
|
||||||
hexdumd style).
|
hexdump style).
|
||||||
<EFBFBD>galement connu sous le nom de <20> conversion brute <20> (plain hexdump style).
|
<EFBFBD>galement connu sous le nom de <20> conversion brute <20> (plain hexdump style).
|
||||||
.TP
|
.TP
|
||||||
.IR \-r " | " \-revert
|
.IR \-r " | " \-revert
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ octets.
|
|||||||
.TP
|
.TP
|
||||||
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
||||||
Produit une conversion continue dans le style Postscript (postscript continuous
|
Produit une conversion continue dans le style Postscript (postscript continuous
|
||||||
hexdumd style).
|
hexdump style).
|
||||||
Également connu sous le nom de « conversion brute » (plain hexdump style).
|
Également connu sous le nom de « conversion brute » (plain hexdump style).
|
||||||
.TP
|
.TP
|
||||||
.IR \-r " | " \-revert
|
.IR \-r " | " \-revert
|
||||||
|
|||||||
@@ -74,6 +74,7 @@
|
|||||||
一行
|
一行
|
||||||
.RI < cols >
|
.RI < cols >
|
||||||
オクテットで出力する。標準設定は 16 (\-i: 12, \-ps: 30, \-b: 6)。最大 256。
|
オクテットで出力する。標準設定は 16 (\-i: 12, \-ps: 30, \-b: 6)。最大 256。
|
||||||
|
\-ps には最大値がありません。 \-ps 付きの場合、0 を指定すると単一の長い行で出力されます。
|
||||||
.TP
|
.TP
|
||||||
.IR \-C " | " \-capitalize
|
.IR \-C " | " \-capitalize
|
||||||
\-i を使用した際に、C インクルードファイル形式の変数名を大文字にする。
|
\-i を使用した際に、C インクルードファイル形式の変数名を大文字にする。
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ followed by an ascii (or ebcdic) representation. The command line switches
|
|||||||
Format
|
Format
|
||||||
.RI < cols >
|
.RI < cols >
|
||||||
octets per line. Default 16 (\-i: 12, \-ps: 30, \-b: 6). Max 256.
|
octets per line. Default 16 (\-i: 12, \-ps: 30, \-b: 6). Max 256.
|
||||||
|
No maxmimum for \-ps. With \-ps, 0 results in one long line of output.
|
||||||
.TP
|
.TP
|
||||||
.IR \-C " | " \-capitalize
|
.IR \-C " | " \-capitalize
|
||||||
Capitalize variable names in C include file style, when using \-i.
|
Capitalize variable names in C include file style, when using \-i.
|
||||||
|
|||||||
@@ -42,7 +42,8 @@ OPTIONS
|
|||||||
|
|
||||||
-c cols | -cols cols
|
-c cols | -cols cols
|
||||||
Format <cols> octets per line. Default 16 (-i: 12, -ps: 30, -b:
|
Format <cols> octets per line. Default 16 (-i: 12, -ps: 30, -b:
|
||||||
6). Max 256.
|
6). Max 256. No maxmimum for -ps. With -ps, 0 results in one
|
||||||
|
long line of output.
|
||||||
|
|
||||||
-C | -capitalize
|
-C | -capitalize
|
||||||
Capitalize variable names in C include file style, when using
|
Capitalize variable names in C include file style, when using
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
" Vim support file to detect file types
|
" Vim support file to detect file types
|
||||||
"
|
"
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2021 Nov 16
|
" Last Change: 2022 Feb 13
|
||||||
|
|
||||||
" 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")
|
||||||
@@ -44,7 +44,7 @@ endif
|
|||||||
" file name matches ft_ignore_pat.
|
" file name matches ft_ignore_pat.
|
||||||
" When using this, the entry should probably be further down below with the
|
" When using this, the entry should probably be further down below with the
|
||||||
" other StarSetf() calls.
|
" other StarSetf() calls.
|
||||||
func! s:StarSetf(ft)
|
func s:StarSetf(ft)
|
||||||
if expand("<amatch>") !~ g:ft_ignore_pat
|
if expand("<amatch>") !~ g:ft_ignore_pat
|
||||||
exe 'setf ' . a:ft
|
exe 'setf ' . a:ft
|
||||||
endif
|
endif
|
||||||
@@ -123,7 +123,7 @@ au BufNewFile,BufRead *.aml setf aml
|
|||||||
" APT config file
|
" APT config file
|
||||||
au BufNewFile,BufRead apt.conf setf aptconf
|
au BufNewFile,BufRead apt.conf setf aptconf
|
||||||
au BufNewFile,BufRead */.aptitude/config setf aptconf
|
au BufNewFile,BufRead */.aptitude/config setf aptconf
|
||||||
au BufNewFile,BufRead */etc/apt/apt.conf.d/{[-_[:alnum:]]\+,[-_.[:alnum:]]\+.conf} setf aptconf
|
" more generic pattern far down
|
||||||
|
|
||||||
" Arch Inventory file
|
" Arch Inventory file
|
||||||
au BufNewFile,BufRead .arch-inventory,=tagging-method setf arch
|
au BufNewFile,BufRead .arch-inventory,=tagging-method setf arch
|
||||||
@@ -193,7 +193,8 @@ au BufNewFile,BufRead *.awk,*.gawk setf awk
|
|||||||
au BufNewFile,BufRead *.mch,*.ref,*.imp setf b
|
au BufNewFile,BufRead *.mch,*.ref,*.imp setf b
|
||||||
|
|
||||||
" BASIC or Visual Basic
|
" BASIC or Visual Basic
|
||||||
au BufNewFile,BufRead *.bas call dist#ft#FTVB("basic")
|
au BufNewFile,BufRead *.bas call dist#ft#FTbas()
|
||||||
|
au BufNewFile,BufRead *.bi,*.bm call dist#ft#FTbas()
|
||||||
|
|
||||||
" Visual Basic Script (close to Visual Basic) or Visual Basic .NET
|
" Visual Basic Script (close to Visual Basic) or Visual Basic .NET
|
||||||
au BufNewFile,BufRead *.vb,*.vbs,*.dsm,*.ctl setf vb
|
au BufNewFile,BufRead *.vb,*.vbs,*.dsm,*.ctl setf vb
|
||||||
@@ -202,7 +203,7 @@ au BufNewFile,BufRead *.vb,*.vbs,*.dsm,*.ctl setf vb
|
|||||||
au BufNewFile,BufRead *.iba,*.ibi setf ibasic
|
au BufNewFile,BufRead *.iba,*.ibi setf ibasic
|
||||||
|
|
||||||
" FreeBasic file (similar to QBasic)
|
" FreeBasic file (similar to QBasic)
|
||||||
au BufNewFile,BufRead *.fb,*.bi setf freebasic
|
au BufNewFile,BufRead *.fb setf freebasic
|
||||||
|
|
||||||
" Batch file for MSDOS.
|
" Batch file for MSDOS.
|
||||||
au BufNewFile,BufRead *.bat,*.sys setf dosbatch
|
au BufNewFile,BufRead *.bat,*.sys setf dosbatch
|
||||||
@@ -228,6 +229,9 @@ au BufNewFile,BufRead *.bib setf bib
|
|||||||
" BibTeX Bibliography Style
|
" BibTeX Bibliography Style
|
||||||
au BufNewFile,BufRead *.bst setf bst
|
au BufNewFile,BufRead *.bst setf bst
|
||||||
|
|
||||||
|
" Bicep
|
||||||
|
au BufNewFile,BufRead *.bicep setf bicep
|
||||||
|
|
||||||
" BIND configuration
|
" BIND configuration
|
||||||
" sudoedit uses namedXXXX.conf
|
" sudoedit uses namedXXXX.conf
|
||||||
au BufNewFile,BufRead named*.conf,rndc*.conf,rndc*.key setf named
|
au BufNewFile,BufRead named*.conf,rndc*.conf,rndc*.key setf named
|
||||||
@@ -260,7 +264,7 @@ au BufNewFile,BufRead *.lpc,*.ulpc setf lpc
|
|||||||
au BufNewFile,BufRead calendar setf calendar
|
au BufNewFile,BufRead calendar setf calendar
|
||||||
|
|
||||||
" C#
|
" C#
|
||||||
au BufNewFile,BufRead *.cs setf cs
|
au BufNewFile,BufRead *.cs,*.csx setf cs
|
||||||
|
|
||||||
" CSDL
|
" CSDL
|
||||||
au BufNewFile,BufRead *.csdl setf csdl
|
au BufNewFile,BufRead *.csdl setf csdl
|
||||||
@@ -397,6 +401,7 @@ au BufNewFile,BufRead configure.in,configure.ac setf config
|
|||||||
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
|
||||||
|
" Also see Dockerfile.* below.
|
||||||
au BufNewFile,BufRead Containerfile,Dockerfile,*.Dockerfile setf dockerfile
|
au BufNewFile,BufRead Containerfile,Dockerfile,*.Dockerfile setf dockerfile
|
||||||
|
|
||||||
" WildPackets EtherPeek Decoder
|
" WildPackets EtherPeek Decoder
|
||||||
@@ -479,6 +484,7 @@ au BufNewFile,BufRead */etc/dnsmasq.conf setf dnsmasq
|
|||||||
au BufNewFile,BufRead *.desc setf desc
|
au BufNewFile,BufRead *.desc setf desc
|
||||||
|
|
||||||
" the D language or dtrace
|
" the D language or dtrace
|
||||||
|
au BufNewFile,BufRead */dtrace/*.d setf dtrace
|
||||||
au BufNewFile,BufRead *.d call dist#ft#DtraceCheck()
|
au BufNewFile,BufRead *.d call dist#ft#DtraceCheck()
|
||||||
|
|
||||||
" Desktop files
|
" Desktop files
|
||||||
@@ -490,10 +496,13 @@ au BufNewFile,BufRead dict.conf,.dictrc setf dictconf
|
|||||||
" Dictd config
|
" Dictd config
|
||||||
au BufNewFile,BufRead dictd*.conf setf dictdconf
|
au BufNewFile,BufRead dictd*.conf setf dictdconf
|
||||||
|
|
||||||
|
" DEP3 formatted patch files
|
||||||
|
au BufNewFile,BufRead */debian/patches/* call dist#ft#Dep3patch()
|
||||||
|
|
||||||
" Diff files
|
" Diff files
|
||||||
au BufNewFile,BufRead *.diff,*.rej setf diff
|
au BufNewFile,BufRead *.diff,*.rej setf diff
|
||||||
au BufNewFile,BufRead *.patch
|
au BufNewFile,BufRead *.patch
|
||||||
\ if getline(1) =~ '^From [0-9a-f]\{40\} Mon Sep 17 00:00:00 2001$' |
|
\ if getline(1) =~# '^From [0-9a-f]\{40,\} Mon Sep 17 00:00:00 2001$' |
|
||||||
\ setf gitsendemail |
|
\ setf gitsendemail |
|
||||||
\ else |
|
\ else |
|
||||||
\ setf diff |
|
\ setf diff |
|
||||||
@@ -649,6 +658,9 @@ au BufNewFile,BufRead *.fsl setf framescript
|
|||||||
" FStab
|
" FStab
|
||||||
au BufNewFile,BufRead fstab,mtab setf fstab
|
au BufNewFile,BufRead fstab,mtab setf fstab
|
||||||
|
|
||||||
|
" Fusion
|
||||||
|
au BufRead,BufNewFile *.fusion setf fusion
|
||||||
|
|
||||||
" F# or Forth
|
" F# or Forth
|
||||||
au BufNewFile,BufRead *.fs call dist#ft#FTfs()
|
au BufNewFile,BufRead *.fs call dist#ft#FTfs()
|
||||||
|
|
||||||
@@ -656,11 +668,17 @@ au BufNewFile,BufRead *.fs call dist#ft#FTfs()
|
|||||||
au BufNewFile,BufRead *.fsi,*.fsx setf fsharp
|
au BufNewFile,BufRead *.fsi,*.fsx setf fsharp
|
||||||
|
|
||||||
" GDB command files
|
" GDB command files
|
||||||
au BufNewFile,BufRead .gdbinit,gdbinit setf gdb
|
au BufNewFile,BufRead .gdbinit,gdbinit,.gdbearlyinit,gdbearlyinit,*.gdb setf gdb
|
||||||
|
|
||||||
" GDMO
|
" GDMO
|
||||||
au BufNewFile,BufRead *.mo,*.gdmo setf gdmo
|
au BufNewFile,BufRead *.mo,*.gdmo setf gdmo
|
||||||
|
|
||||||
|
" GDscript
|
||||||
|
au BufNewFile,BufRead *.gd setf gdscript
|
||||||
|
|
||||||
|
" Godot resource
|
||||||
|
au BufRead,BufNewFile *.tscn,*.tres setf gdresource
|
||||||
|
|
||||||
" Gedcom
|
" Gedcom
|
||||||
au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
|
au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
|
||||||
|
|
||||||
@@ -672,26 +690,28 @@ 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
|
||||||
au BufNewFile,BufRead *.git/config,.gitconfig,/etc/gitconfig setf gitconfig
|
au BufNewFile,BufRead NOTES_EDITMSG,EDIT_DESCRIPTION setf gitcommit
|
||||||
|
au BufNewFile,BufRead *.git/config,.gitconfig,*/etc/gitconfig setf gitconfig
|
||||||
au BufNewFile,BufRead */.config/git/config setf gitconfig
|
au BufNewFile,BufRead */.config/git/config setf gitconfig
|
||||||
|
au BufNewFile,BufRead *.git/config.worktree setf gitconfig
|
||||||
|
au BufNewFile,BufRead *.git/worktrees/*/config.worktree setf gitconfig
|
||||||
au BufNewFile,BufRead .gitmodules,*.git/modules/*/config setf gitconfig
|
au BufNewFile,BufRead .gitmodules,*.git/modules/*/config setf gitconfig
|
||||||
if !empty($XDG_CONFIG_HOME)
|
if !empty($XDG_CONFIG_HOME)
|
||||||
au BufNewFile,BufRead $XDG_CONFIG_HOME/git/config setf gitconfig
|
au BufNewFile,BufRead $XDG_CONFIG_HOME/git/config setf gitconfig
|
||||||
endif
|
endif
|
||||||
au BufNewFile,BufRead git-rebase-todo setf gitrebase
|
au BufNewFile,BufRead git-rebase-todo setf gitrebase
|
||||||
au BufRead,BufNewFile .gitsendemail.msg.?????? setf gitsendemail
|
au BufRead,BufNewFile .gitsendemail.msg.?????? setf gitsendemail
|
||||||
au BufNewFile,BufRead .msg.[0-9]*
|
|
||||||
\ if getline(1) =~ '^From.*# This line is ignored.$' |
|
|
||||||
\ setf gitsendemail |
|
|
||||||
\ endif
|
|
||||||
au BufNewFile,BufRead *.git/*
|
au BufNewFile,BufRead *.git/*
|
||||||
\ if getline(1) =~ '^\x\{40\}\>\|^ref: ' |
|
\ if getline(1) =~# '^\x\{40,\}\>\|^ref: ' |
|
||||||
\ setf git |
|
\ setf git |
|
||||||
\ endif
|
\ endif
|
||||||
|
|
||||||
" Gkrellmrc
|
" Gkrellmrc
|
||||||
au BufNewFile,BufRead gkrellmrc,gkrellmrc_? setf gkrellmrc
|
au BufNewFile,BufRead gkrellmrc,gkrellmrc_? setf gkrellmrc
|
||||||
|
|
||||||
|
" GLSL
|
||||||
|
au BufNewFile,BufRead *.glsl setf glsl
|
||||||
|
|
||||||
" GP scripts (2.0 and onward)
|
" GP scripts (2.0 and onward)
|
||||||
au BufNewFile,BufRead *.gp,.gprc setf gp
|
au BufNewFile,BufRead *.gp,.gprc setf gp
|
||||||
|
|
||||||
@@ -711,16 +731,24 @@ au BufNewFile,BufRead gnashrc,.gnashrc,gnashpluginrc,.gnashpluginrc setf gnash
|
|||||||
au BufNewFile,BufRead gitolite.conf setf gitolite
|
au BufNewFile,BufRead gitolite.conf setf gitolite
|
||||||
au BufNewFile,BufRead {,.}gitolite.rc,example.gitolite.rc setf perl
|
au BufNewFile,BufRead {,.}gitolite.rc,example.gitolite.rc setf perl
|
||||||
|
|
||||||
|
" Glimmer-flavored TypeScript and JavaScript
|
||||||
|
au BufNewFile,BufRead *.gts setf typescript.glimmer
|
||||||
|
au BufNewFile,BufRead *.gjs setf javascript.glimmer
|
||||||
|
|
||||||
" Gnuplot scripts
|
" Gnuplot scripts
|
||||||
au BufNewFile,BufRead *.gpi setf gnuplot
|
au BufNewFile,BufRead *.gpi,.gnuplot setf gnuplot
|
||||||
|
|
||||||
" Go (Google)
|
" Go (Google)
|
||||||
au BufNewFile,BufRead *.go setf go
|
au BufNewFile,BufRead *.go setf go
|
||||||
au BufNewFile,BufRead Gopkg.lock setf toml
|
au BufNewFile,BufRead Gopkg.lock setf toml
|
||||||
|
au BufRead,BufNewFile go.work setf gowork
|
||||||
|
|
||||||
" GrADS scripts
|
" GrADS scripts
|
||||||
au BufNewFile,BufRead *.gs setf grads
|
au BufNewFile,BufRead *.gs setf grads
|
||||||
|
|
||||||
|
" GraphQL
|
||||||
|
au BufNewFile,BufRead *.graphql,*.graphqls,*.gql setf graphql
|
||||||
|
|
||||||
" Gretl
|
" Gretl
|
||||||
au BufNewFile,BufRead *.gretl setf gretl
|
au BufNewFile,BufRead *.gretl setf gretl
|
||||||
|
|
||||||
@@ -736,12 +764,18 @@ au BufNewFile,BufRead */etc/group,*/etc/group-,*/etc/group.edit,*/etc/gshadow,*/
|
|||||||
" GTK RC
|
" GTK RC
|
||||||
au BufNewFile,BufRead .gtkrc,gtkrc setf gtkrc
|
au BufNewFile,BufRead .gtkrc,gtkrc setf gtkrc
|
||||||
|
|
||||||
|
" Hack
|
||||||
|
au BufRead,BufNewFile *.hack,*.hackpartial setf hack
|
||||||
|
|
||||||
" Haml
|
" Haml
|
||||||
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
|
||||||
|
|
||||||
|
" Handlebars
|
||||||
|
au BufNewFile,BufRead *.hbs setf handlebars
|
||||||
|
|
||||||
" Haskell
|
" Haskell
|
||||||
au BufNewFile,BufRead *.hs,*.hsc,*.hs-boot,*.hsig setf haskell
|
au BufNewFile,BufRead *.hs,*.hsc,*.hs-boot,*.hsig setf haskell
|
||||||
au BufNewFile,BufRead *.lhs setf lhaskell
|
au BufNewFile,BufRead *.lhs setf lhaskell
|
||||||
@@ -754,12 +788,21 @@ au BufNewFile,BufRead cabal.config setf cabalconfig
|
|||||||
au BufNewFile,BufRead *.ht setf haste
|
au BufNewFile,BufRead *.ht setf haste
|
||||||
au BufNewFile,BufRead *.htpp setf hastepreproc
|
au BufNewFile,BufRead *.htpp setf hastepreproc
|
||||||
|
|
||||||
|
" HCL
|
||||||
|
au BufRead,BufNewFile *.hcl setf hcl
|
||||||
|
|
||||||
" Hercules
|
" Hercules
|
||||||
au BufNewFile,BufRead *.vc,*.ev,*.sum,*.errsum setf hercules
|
au BufNewFile,BufRead *.vc,*.ev,*.sum,*.errsum setf hercules
|
||||||
|
|
||||||
|
" HEEx
|
||||||
|
au BufRead,BufNewFile *.heex setf heex
|
||||||
|
|
||||||
" HEX (Intel)
|
" HEX (Intel)
|
||||||
au BufNewFile,BufRead *.hex,*.h32 setf hex
|
au BufNewFile,BufRead *.hex,*.h32 setf hex
|
||||||
|
|
||||||
|
" Hjson
|
||||||
|
au BufNewFile,BufRead *.hjson setf hjson
|
||||||
|
|
||||||
" Hollywood
|
" Hollywood
|
||||||
au BufRead,BufNewFile *.hws setf hollywood
|
au BufRead,BufNewFile *.hws setf hollywood
|
||||||
|
|
||||||
@@ -790,6 +833,10 @@ au BufNewFile,BufRead *.hb setf hb
|
|||||||
" Httest
|
" Httest
|
||||||
au BufNewFile,BufRead *.htt,*.htb setf httest
|
au BufNewFile,BufRead *.htt,*.htb setf httest
|
||||||
|
|
||||||
|
" i3 (and sway)
|
||||||
|
au BufNewFile,BufRead */i3/config,*/sway/config setf i3config
|
||||||
|
au BufNewFile,BufRead */.i3/config,*/.sway/config setf i3config
|
||||||
|
|
||||||
" Icon
|
" Icon
|
||||||
au BufNewFile,BufRead *.icn setf icon
|
au BufNewFile,BufRead *.icn setf icon
|
||||||
|
|
||||||
@@ -880,6 +927,9 @@ 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
|
||||||
|
|
||||||
|
" JSON5
|
||||||
|
au BufNewFile,BufRead *.json5 setf json5
|
||||||
|
|
||||||
" JSON Patch (RFC 6902)
|
" JSON Patch (RFC 6902)
|
||||||
au BufNewFile,BufRead *.json-patch setf json
|
au BufNewFile,BufRead *.json-patch setf json
|
||||||
|
|
||||||
@@ -931,6 +981,9 @@ au BufNewFile,BufRead *.ldif setf ldif
|
|||||||
" Ld loader
|
" Ld loader
|
||||||
au BufNewFile,BufRead *.ld setf ld
|
au BufNewFile,BufRead *.ld setf ld
|
||||||
|
|
||||||
|
" Ledger
|
||||||
|
au BufRead,BufNewFile *.ldg,*.ledger,*.journal setf ledger
|
||||||
|
|
||||||
" Less
|
" Less
|
||||||
au BufNewFile,BufRead *.less setf less
|
au BufNewFile,BufRead *.less setf less
|
||||||
|
|
||||||
@@ -955,9 +1008,9 @@ au BufNewFile,BufRead lilo.conf setf lilo
|
|||||||
" Lisp (*.el = ELisp, *.cl = Common Lisp)
|
" Lisp (*.el = ELisp, *.cl = Common Lisp)
|
||||||
" *.jl was removed, it's also used for Julia, better skip than guess wrong.
|
" *.jl was removed, it's also used for Julia, better skip than guess wrong.
|
||||||
if has("fname_case")
|
if has("fname_case")
|
||||||
au BufNewFile,BufRead *.lsp,*.lisp,*.el,*.cl,*.L,.emacs,.sawfishrc setf lisp
|
au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,*.L,.emacs,.sawfishrc setf lisp
|
||||||
else
|
else
|
||||||
au BufNewFile,BufRead *.lsp,*.lisp,*.el,*.cl,.emacs,.sawfishrc setf lisp
|
au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,.emacs,.sawfishrc setf lisp
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" SBCL implementation of Common Lisp
|
" SBCL implementation of Common Lisp
|
||||||
@@ -1084,7 +1137,9 @@ au BufNewFile,BufRead *.mmp setf mmp
|
|||||||
|
|
||||||
" Modsim III (or LambdaProlog)
|
" Modsim III (or LambdaProlog)
|
||||||
au BufNewFile,BufRead *.mod
|
au BufNewFile,BufRead *.mod
|
||||||
\ if getline(1) =~ '\<module\>' |
|
\ if expand("<afile>") =~ '\<go.mod$' |
|
||||||
|
\ setf gomod |
|
||||||
|
\ elseif getline(1) =~ '\<module\>' |
|
||||||
\ setf lprolog |
|
\ setf lprolog |
|
||||||
\ else |
|
\ else |
|
||||||
\ setf modsim3 |
|
\ setf modsim3 |
|
||||||
@@ -1123,14 +1178,15 @@ au BufNewFile,BufRead *.msql setf msql
|
|||||||
" Mysql
|
" Mysql
|
||||||
au BufNewFile,BufRead *.mysql setf mysql
|
au BufNewFile,BufRead *.mysql setf mysql
|
||||||
|
|
||||||
" Mutt setup files (must be before catch *.rc)
|
|
||||||
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
|
||||||
|
|
||||||
" Tcl Shell RC file
|
" Tcl Shell RC file
|
||||||
au BufNewFile,BufRead tclsh.rc setf tcl
|
au BufNewFile,BufRead tclsh.rc setf tcl
|
||||||
|
|
||||||
" M$ Resource files
|
" M$ Resource files
|
||||||
au BufNewFile,BufRead *.rc,*.rch setf rc
|
" /etc/Muttrc.d/file.rc is muttrc
|
||||||
|
au BufNewFile,BufRead *.rc,*.rch
|
||||||
|
\ if expand("<afile>") !~ "/etc/Muttrc.d/" |
|
||||||
|
\ setf rc |
|
||||||
|
\ endif
|
||||||
|
|
||||||
" MuPAD source
|
" MuPAD source
|
||||||
au BufRead,BufNewFile *.mu setf mupad
|
au BufRead,BufNewFile *.mu setf mupad
|
||||||
@@ -1165,6 +1221,9 @@ au BufNewFile,BufRead *.nginx,nginx*.conf,*nginx.conf,*/etc/nginx/*,*/usr/local/
|
|||||||
" Ninja file
|
" Ninja file
|
||||||
au BufNewFile,BufRead *.ninja setf ninja
|
au BufNewFile,BufRead *.ninja setf ninja
|
||||||
|
|
||||||
|
" Nix
|
||||||
|
au BufRead,BufNewFile *.nix setf nix
|
||||||
|
|
||||||
" NPM RC file
|
" NPM RC file
|
||||||
au BufNewFile,BufRead npmrc,.npmrc setf dosini
|
au BufNewFile,BufRead npmrc,.npmrc setf dosini
|
||||||
|
|
||||||
@@ -1206,6 +1265,9 @@ au BufNewFile,BufRead *.xom,*.xin setf omnimark
|
|||||||
" OPAM
|
" OPAM
|
||||||
au BufNewFile,BufRead opam,*.opam,*.opam.template setf opam
|
au BufNewFile,BufRead opam,*.opam,*.opam.template setf opam
|
||||||
|
|
||||||
|
" OpenFOAM
|
||||||
|
au BufNewFile,BufRead [a-zA-Z0-9]*Dict\(.*\)\=,[a-zA-Z]*Properties\(.*\)\=,*Transport\(.*\),fvSchemes,fvSolution,fvConstrains,fvModels,*/constant/g,*/0\(\.orig\)\=/* call dist#ft#FTfoam()
|
||||||
|
|
||||||
" OpenROAD
|
" OpenROAD
|
||||||
au BufNewFile,BufRead *.or setf openroad
|
au BufNewFile,BufRead *.or setf openroad
|
||||||
|
|
||||||
@@ -1347,6 +1409,9 @@ au BufNewFile,BufRead *printcap
|
|||||||
au BufNewFile,BufRead *termcap
|
au BufNewFile,BufRead *termcap
|
||||||
\ let b:ptcap_type = "term" | setf ptcap
|
\ let b:ptcap_type = "term" | setf ptcap
|
||||||
|
|
||||||
|
" Prisma
|
||||||
|
au BufRead,BufNewFile *.prisma setf prisma
|
||||||
|
|
||||||
" PCCTS / ANTLR
|
" PCCTS / ANTLR
|
||||||
"au BufNewFile,BufRead *.g setf antlr
|
"au BufNewFile,BufRead *.g setf antlr
|
||||||
au BufNewFile,BufRead *.g setf pccts
|
au BufNewFile,BufRead *.g setf pccts
|
||||||
@@ -1354,6 +1419,9 @@ au BufNewFile,BufRead *.g setf pccts
|
|||||||
" PPWizard
|
" PPWizard
|
||||||
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
||||||
|
|
||||||
|
" Pug
|
||||||
|
au BufRead,BufNewFile *.pug setf pug
|
||||||
|
|
||||||
" Puppet
|
" Puppet
|
||||||
au BufNewFile,BufRead Puppetfile setf ruby
|
au BufNewFile,BufRead Puppetfile setf ruby
|
||||||
|
|
||||||
@@ -1419,6 +1487,9 @@ au BufNewFile,BufRead *.pyx,*.pxd setf pyrex
|
|||||||
au BufNewFile,BufRead *.py,*.pyw,.pythonstartup,.pythonrc setf python
|
au BufNewFile,BufRead *.py,*.pyw,.pythonstartup,.pythonrc setf python
|
||||||
au BufNewFile,BufRead *.ptl,*.pyi,SConstruct setf python
|
au BufNewFile,BufRead *.ptl,*.pyi,SConstruct setf python
|
||||||
|
|
||||||
|
" QL
|
||||||
|
au BufRead,BufNewFile *.ql,*.qll setf ql
|
||||||
|
|
||||||
" Radiance
|
" Radiance
|
||||||
au BufNewFile,BufRead *.rad,*.mat setf radiance
|
au BufNewFile,BufRead *.rad,*.mat setf radiance
|
||||||
|
|
||||||
@@ -1484,6 +1555,9 @@ au BufNewFile,BufRead *.r,*.R call dist#ft#FTr()
|
|||||||
" Remind
|
" Remind
|
||||||
au BufNewFile,BufRead .reminders,*.remind,*.rem setf remind
|
au BufNewFile,BufRead .reminders,*.remind,*.rem setf remind
|
||||||
|
|
||||||
|
" ReScript
|
||||||
|
au BufNewFile,BufRead *.res,*.resi setf rescript
|
||||||
|
|
||||||
" Resolv.conf
|
" Resolv.conf
|
||||||
au BufNewFile,BufRead resolv.conf setf resolv
|
au BufNewFile,BufRead resolv.conf setf resolv
|
||||||
|
|
||||||
@@ -1649,13 +1723,16 @@ au BufNewFile,BufRead .tcshrc,*.tcsh,tcsh.tcshrc,tcsh.login call dist#ft#SetFile
|
|||||||
" (patterns ending in a start further below)
|
" (patterns ending in a start further below)
|
||||||
au BufNewFile,BufRead .login,.cshrc,csh.cshrc,csh.login,csh.logout,*.csh,.alias call dist#ft#CSH()
|
au BufNewFile,BufRead .login,.cshrc,csh.cshrc,csh.login,csh.logout,*.csh,.alias call dist#ft#CSH()
|
||||||
|
|
||||||
|
" Zig
|
||||||
|
au BufNewFile,BufRead *.zig setf zig
|
||||||
|
|
||||||
" Z-Shell script (patterns ending in a star further below)
|
" Z-Shell script (patterns ending in a star further below)
|
||||||
au BufNewFile,BufRead .zprofile,*/etc/zprofile,.zfbfmarks setf zsh
|
au BufNewFile,BufRead .zprofile,*/etc/zprofile,.zfbfmarks setf zsh
|
||||||
au BufNewFile,BufRead .zshrc,.zshenv,.zlogin,.zlogout,.zcompdump setf zsh
|
au BufNewFile,BufRead .zshrc,.zshenv,.zlogin,.zlogout,.zcompdump setf zsh
|
||||||
au BufNewFile,BufRead *.zsh setf zsh
|
au BufNewFile,BufRead *.zsh setf zsh
|
||||||
|
|
||||||
" Scheme
|
" Scheme
|
||||||
au BufNewFile,BufRead *.scm,*.ss,*.rkt,*.rktd,*.rktl setf scheme
|
au BufNewFile,BufRead *.scm,*.ss,*.sld,*.rkt,*.rktd,*.rktl setf scheme
|
||||||
|
|
||||||
" Screen RC
|
" Screen RC
|
||||||
au BufNewFile,BufRead .screenrc,screenrc setf screen
|
au BufNewFile,BufRead .screenrc,screenrc setf screen
|
||||||
@@ -1723,6 +1800,9 @@ au BufNewFile,BufRead *.mib,*.my setf mib
|
|||||||
au BufNewFile,BufRead *.hog,snort.conf,vision.conf setf hog
|
au BufNewFile,BufRead *.hog,snort.conf,vision.conf setf hog
|
||||||
au BufNewFile,BufRead *.rules call dist#ft#FTRules()
|
au BufNewFile,BufRead *.rules call dist#ft#FTRules()
|
||||||
|
|
||||||
|
" Solidity
|
||||||
|
au BufRead,BufNewFile *.sol setf solidity
|
||||||
|
|
||||||
" SPARQL queries
|
" SPARQL queries
|
||||||
au BufNewFile,BufRead *.rq,*.sparql setf sparql
|
au BufNewFile,BufRead *.rq,*.sparql setf sparql
|
||||||
|
|
||||||
@@ -1735,6 +1815,10 @@ au BufNewFile,BufRead *.speedup,*.spdata,*.spd setf spup
|
|||||||
" Slice
|
" Slice
|
||||||
au BufNewFile,BufRead *.ice setf slice
|
au BufNewFile,BufRead *.ice setf slice
|
||||||
|
|
||||||
|
" Microsoft Visual Studio Solution
|
||||||
|
au BufNewFile,BufRead *.sln setf solution
|
||||||
|
au BufNewFile,BufRead *.slnf setf json
|
||||||
|
|
||||||
" Spice
|
" Spice
|
||||||
au BufNewFile,BufRead *.sp,*.spice setf spice
|
au BufNewFile,BufRead *.sp,*.spice setf spice
|
||||||
|
|
||||||
@@ -1756,9 +1840,12 @@ au BufNewFile,BufRead *.sqlj setf sqlj
|
|||||||
" SQR
|
" SQR
|
||||||
au BufNewFile,BufRead *.sqr,*.sqi setf sqr
|
au BufNewFile,BufRead *.sqr,*.sqi setf sqr
|
||||||
|
|
||||||
|
" Squirrel
|
||||||
|
au BufNewFile,BufRead *.nut setf squirrel
|
||||||
|
|
||||||
" OpenSSH configuration
|
" OpenSSH configuration
|
||||||
au BufNewFile,BufRead ssh_config,*/.ssh/config setf sshconfig
|
au BufNewFile,BufRead ssh_config,*/.ssh/config,*/.ssh/*.conf setf sshconfig
|
||||||
au BufNewFile,BufRead */etc/ssh/ssh_config.d/*.conf setf sshconfig
|
au BufNewFile,BufRead */etc/ssh/ssh_config.d/*.conf setf sshconfig
|
||||||
|
|
||||||
" OpenSSH server configuration
|
" OpenSSH server configuration
|
||||||
au BufNewFile,BufRead sshd_config setf sshdconfig
|
au BufNewFile,BufRead sshd_config setf sshdconfig
|
||||||
@@ -1813,6 +1900,9 @@ au BufNewFile,BufRead */etc/sudoers,sudoers.tmp setf sudoers
|
|||||||
" SVG (Scalable Vector Graphics)
|
" SVG (Scalable Vector Graphics)
|
||||||
au BufNewFile,BufRead *.svg setf svg
|
au BufNewFile,BufRead *.svg setf svg
|
||||||
|
|
||||||
|
" Surface
|
||||||
|
au BufRead,BufNewFile *.sface setf surface
|
||||||
|
|
||||||
" Tads (or Nroff or Perl test file)
|
" Tads (or Nroff or Perl test file)
|
||||||
au BufNewFile,BufRead *.t
|
au BufNewFile,BufRead *.t
|
||||||
\ if !dist#ft#FTnroff() && !dist#ft#FTperl() | setf tads | endif
|
\ if !dist#ft#FTnroff() && !dist#ft#FTperl() | setf tads | endif
|
||||||
@@ -1830,6 +1920,9 @@ au BufRead,BufNewFile *.task setf taskedit
|
|||||||
" Tcl (JACL too)
|
" Tcl (JACL too)
|
||||||
au BufNewFile,BufRead *.tcl,*.tm,*.tk,*.itcl,*.itk,*.jacl,.tclshrc,.wishrc setf tcl
|
au BufNewFile,BufRead *.tcl,*.tm,*.tk,*.itcl,*.itk,*.jacl,.tclshrc,.wishrc setf tcl
|
||||||
|
|
||||||
|
" Teal
|
||||||
|
au BufRead,BufNewFile *.tl setf teal
|
||||||
|
|
||||||
" TealInfo
|
" TealInfo
|
||||||
au BufNewFile,BufRead *.tli setf tli
|
au BufNewFile,BufRead *.tli setf tli
|
||||||
|
|
||||||
@@ -1847,6 +1940,9 @@ au BufRead,BufNewFile *.ttl
|
|||||||
" Terminfo
|
" Terminfo
|
||||||
au BufNewFile,BufRead *.ti setf terminfo
|
au BufNewFile,BufRead *.ti setf terminfo
|
||||||
|
|
||||||
|
" Terraform
|
||||||
|
au BufRead,BufNewFile *.tfvars setf terraform
|
||||||
|
|
||||||
" TeX
|
" TeX
|
||||||
au BufNewFile,BufRead *.latex,*.sty,*.dtx,*.ltx,*.bbl setf tex
|
au BufNewFile,BufRead *.latex,*.sty,*.dtx,*.ltx,*.bbl setf tex
|
||||||
au BufNewFile,BufRead *.tex call dist#ft#FTtex()
|
au BufNewFile,BufRead *.tex call dist#ft#FTtex()
|
||||||
@@ -1864,7 +1960,13 @@ au BufNewFile,BufRead texmf.cnf setf texmf
|
|||||||
au BufNewFile,BufRead .tidyrc,tidyrc,tidy.conf setf tidy
|
au BufNewFile,BufRead .tidyrc,tidyrc,tidy.conf setf tidy
|
||||||
|
|
||||||
" TF mud client
|
" TF mud client
|
||||||
au BufNewFile,BufRead *.tf,.tfrc,tfrc setf tf
|
au BufNewFile,BufRead .tfrc,tfrc setf tf
|
||||||
|
|
||||||
|
" TF mud client or terraform
|
||||||
|
au BufNewFile,BufRead *.tf call dist#ft#FTtf()
|
||||||
|
|
||||||
|
" TLA+
|
||||||
|
au BufNewFile,BufRead *.tla setf tla
|
||||||
|
|
||||||
" tmux configuration
|
" tmux configuration
|
||||||
au BufNewFile,BufRead {.,}tmux*.conf setf tmux
|
au BufNewFile,BufRead {.,}tmux*.conf setf tmux
|
||||||
@@ -1873,7 +1975,7 @@ au BufNewFile,BufRead {.,}tmux*.conf setf tmux
|
|||||||
au BufNewFile,BufRead *.toml setf toml
|
au BufNewFile,BufRead *.toml setf toml
|
||||||
|
|
||||||
" TPP - Text Presentation Program
|
" TPP - Text Presentation Program
|
||||||
au BufNewFile,BufReadPost *.tpp setf tpp
|
au BufNewFile,BufRead *.tpp setf tpp
|
||||||
|
|
||||||
" Treetop
|
" Treetop
|
||||||
au BufRead,BufNewFile *.treetop setf treetop
|
au BufRead,BufNewFile *.treetop setf treetop
|
||||||
@@ -1930,6 +2032,9 @@ au BufNewFile,BufRead */.init/*.conf,*/.init/*.override setf upstart
|
|||||||
au BufNewFile,BufRead */.config/upstart/*.conf setf upstart
|
au BufNewFile,BufRead */.config/upstart/*.conf setf upstart
|
||||||
au BufNewFile,BufRead */.config/upstart/*.override setf upstart
|
au BufNewFile,BufRead */.config/upstart/*.override setf upstart
|
||||||
|
|
||||||
|
" Vala
|
||||||
|
au BufNewFile,BufRead *.vala setf vala
|
||||||
|
|
||||||
" Vera
|
" Vera
|
||||||
au BufNewFile,BufRead *.vr,*.vri,*.vrh setf vera
|
au BufNewFile,BufRead *.vr,*.vri,*.vrh setf vera
|
||||||
|
|
||||||
@@ -1960,7 +2065,7 @@ au BufRead,BufNewFile *.hw,*.module,*.pkg
|
|||||||
\ endif
|
\ endif
|
||||||
|
|
||||||
" Visual Basic (also uses *.bas) or FORM
|
" Visual Basic (also uses *.bas) or FORM
|
||||||
au BufNewFile,BufRead *.frm call dist#ft#FTVB("form")
|
au BufNewFile,BufRead *.frm call dist#ft#FTfrm()
|
||||||
|
|
||||||
" SaxBasic is close to Visual Basic
|
" SaxBasic is close to Visual Basic
|
||||||
au BufNewFile,BufRead *.sba setf vb
|
au BufNewFile,BufRead *.sba setf vb
|
||||||
@@ -2124,6 +2229,9 @@ au BufNewFile,BufRead *.raml setf raml
|
|||||||
" yum conf (close enough to dosini)
|
" yum conf (close enough to dosini)
|
||||||
au BufNewFile,BufRead */etc/yum.conf setf dosini
|
au BufNewFile,BufRead */etc/yum.conf setf dosini
|
||||||
|
|
||||||
|
" YANG
|
||||||
|
au BufRead,BufNewFile *.yang setf yang
|
||||||
|
|
||||||
" Zimbu
|
" Zimbu
|
||||||
au BufNewFile,BufRead *.zu setf zimbu
|
au BufNewFile,BufRead *.zu setf zimbu
|
||||||
" Zimbu Templates
|
" Zimbu Templates
|
||||||
@@ -2159,6 +2267,12 @@ au BufNewFile,BufRead *
|
|||||||
au StdinReadPost * if !did_filetype() | runtime! scripts.vim | endif
|
au StdinReadPost * if !did_filetype() | runtime! scripts.vim | endif
|
||||||
|
|
||||||
|
|
||||||
|
" Plain text files, needs to be far down to not override others. This avoids
|
||||||
|
" the "conf" type being used if there is a line starting with '#'.
|
||||||
|
" But before patterns matching everything in a directory.
|
||||||
|
au BufNewFile,BufRead *.text,README,LICENSE,COPYING,AUTHORS setf text
|
||||||
|
|
||||||
|
|
||||||
" Extra checks for when no filetype has been detected now. Mostly used for
|
" Extra checks for when no filetype has been detected now. Mostly used for
|
||||||
" patterns that end in "*". E.g., "zsh*" matches "zsh.vim", but that's a Vim
|
" patterns that end in "*". E.g., "zsh*" matches "zsh.vim", but that's a Vim
|
||||||
" script file.
|
" script file.
|
||||||
@@ -2173,6 +2287,9 @@ au BufNewFile,BufRead proftpd.conf* call s:StarSetf('apachestyle')
|
|||||||
au BufNewFile,BufRead access.conf*,apache.conf*,apache2.conf*,httpd.conf*,srm.conf* call s:StarSetf('apache')
|
au BufNewFile,BufRead access.conf*,apache.conf*,apache2.conf*,httpd.conf*,srm.conf* call s:StarSetf('apache')
|
||||||
au BufNewFile,BufRead */etc/apache2/*.conf*,*/etc/apache2/conf.*/*,*/etc/apache2/mods-*/*,*/etc/apache2/sites-*/*,*/etc/httpd/conf.*/*,*/etc/httpd/mods-*/*,*/etc/httpd/sites-*/*,*/etc/httpd/conf.d/*.conf* call s:StarSetf('apache')
|
au BufNewFile,BufRead */etc/apache2/*.conf*,*/etc/apache2/conf.*/*,*/etc/apache2/mods-*/*,*/etc/apache2/sites-*/*,*/etc/httpd/conf.*/*,*/etc/httpd/mods-*/*,*/etc/httpd/sites-*/*,*/etc/httpd/conf.d/*.conf* call s:StarSetf('apache')
|
||||||
|
|
||||||
|
" APT config file
|
||||||
|
au BufNewFile,BufRead */etc/apt/apt.conf.d/{[-_[:alnum:]]\+,[-_.[:alnum:]]\+.conf} call s:StarSetf('aptconf')
|
||||||
|
|
||||||
" Asterisk config file
|
" Asterisk config file
|
||||||
au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk')
|
au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk')
|
||||||
au BufNewFile,BufRead *asterisk*/*voicemail.conf* call s:StarSetf('asteriskvm')
|
au BufNewFile,BufRead *asterisk*/*voicemail.conf* call s:StarSetf('asteriskvm')
|
||||||
@@ -2209,6 +2326,9 @@ au BufNewFile,BufRead crontab,crontab.*,*/etc/cron.d/* call s:StarSetf('crontab
|
|||||||
" dnsmasq(8) configuration
|
" dnsmasq(8) configuration
|
||||||
au BufNewFile,BufRead */etc/dnsmasq.d/* call s:StarSetf('dnsmasq')
|
au BufNewFile,BufRead */etc/dnsmasq.d/* call s:StarSetf('dnsmasq')
|
||||||
|
|
||||||
|
" Dockerfile
|
||||||
|
au BufNewFile,BufRead Dockerfile.*,Containerfile.* call s:StarSetf('dockerfile')
|
||||||
|
|
||||||
" Dracula
|
" Dracula
|
||||||
au BufNewFile,BufRead drac.* call s:StarSetf('dracula')
|
au BufNewFile,BufRead drac.* call s:StarSetf('dracula')
|
||||||
|
|
||||||
@@ -2253,6 +2373,9 @@ au BufNewFile,BufRead Kconfig.* call s:StarSetf('kconfig')
|
|||||||
" Lilo: Linux loader
|
" Lilo: Linux loader
|
||||||
au BufNewFile,BufRead lilo.conf* call s:StarSetf('lilo')
|
au BufNewFile,BufRead lilo.conf* call s:StarSetf('lilo')
|
||||||
|
|
||||||
|
" Libsensors
|
||||||
|
au BufNewFile,BufRead */etc/sensors.d/[^.]* call s:StarSetf('sensors')
|
||||||
|
|
||||||
" Logcheck
|
" Logcheck
|
||||||
au BufNewFile,BufRead */etc/logcheck/*.d*/* call s:StarSetf('logcheck')
|
au BufNewFile,BufRead */etc/logcheck/*.d*/* call s:StarSetf('logcheck')
|
||||||
|
|
||||||
@@ -2274,6 +2397,9 @@ au BufNewFile,BufRead */etc/modutils/*
|
|||||||
\|endif
|
\|endif
|
||||||
au BufNewFile,BufRead */etc/modprobe.* call s:StarSetf('modconf')
|
au BufNewFile,BufRead */etc/modprobe.* call s:StarSetf('modconf')
|
||||||
|
|
||||||
|
" Mutt setup files (must be before catch *.rc)
|
||||||
|
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
||||||
|
|
||||||
" Mutt setup file
|
" Mutt setup file
|
||||||
au BufNewFile,BufRead .mutt{ng,}rc*,*/.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc')
|
au BufNewFile,BufRead .mutt{ng,}rc*,*/.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc')
|
||||||
au BufNewFile,BufRead mutt{ng,}rc*,Mutt{ng,}rc* call s:StarSetf('muttrc')
|
au BufNewFile,BufRead mutt{ng,}rc*,Mutt{ng,}rc* call s:StarSetf('muttrc')
|
||||||
@@ -2366,10 +2492,6 @@ au BufNewFile,BufRead .zsh*,.zlog*,.zcompdump* call s:StarSetf('zsh')
|
|||||||
au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh')
|
au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh')
|
||||||
|
|
||||||
|
|
||||||
" Plain text files, needs to be far down to not override others. This avoids
|
|
||||||
" the "conf" type being used if there is a line starting with '#'.
|
|
||||||
au BufNewFile,BufRead *.text,README setf text
|
|
||||||
|
|
||||||
" Help files match *.txt but should have a last line that is a modeline.
|
" Help files match *.txt but should have a last line that is a modeline.
|
||||||
au BufNewFile,BufRead *.txt
|
au BufNewFile,BufRead *.txt
|
||||||
\ if getline('$') !~ 'vim:.*ft=help'
|
\ if getline('$') !~ 'vim:.*ft=help'
|
||||||
@@ -2405,7 +2527,7 @@ endif
|
|||||||
" Function called for testing all functions defined here. These are
|
" Function called for testing all functions defined here. These are
|
||||||
" script-local, thus need to be executed here.
|
" script-local, thus need to be executed here.
|
||||||
" Returns a string with error messages (hopefully empty).
|
" Returns a string with error messages (hopefully empty).
|
||||||
func! TestFiletypeFuncs(testlist)
|
func TestFiletypeFuncs(testlist)
|
||||||
let output = ''
|
let output = ''
|
||||||
for f in a:testlist
|
for f in a:testlist
|
||||||
try
|
try
|
||||||
|
|||||||
@@ -1,35 +1,43 @@
|
|||||||
" Vim support file to switch on loading plugins for file types
|
vim9script noclear
|
||||||
"
|
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
|
||||||
" Last change: 2006 Apr 30
|
|
||||||
|
|
||||||
if exists("did_load_ftplugin")
|
# Vim support file to switch on loading plugins for file types
|
||||||
|
#
|
||||||
|
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
|
# Last change: 2022 Feb 11
|
||||||
|
|
||||||
|
if exists("g:did_load_ftplugin")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let did_load_ftplugin = 1
|
g:did_load_ftplugin = 1
|
||||||
|
|
||||||
augroup filetypeplugin
|
augroup filetypeplugin
|
||||||
au FileType * call s:LoadFTPlugin()
|
au FileType * call LoadFTPlugin()
|
||||||
|
|
||||||
func! s:LoadFTPlugin()
|
|
||||||
if exists("b:undo_ftplugin")
|
|
||||||
exe b:undo_ftplugin
|
|
||||||
unlet! b:undo_ftplugin b:did_ftplugin
|
|
||||||
endif
|
|
||||||
|
|
||||||
let s = expand("<amatch>")
|
|
||||||
if s != ""
|
|
||||||
if &cpo =~# "S" && exists("b:did_ftplugin")
|
|
||||||
" In compatible mode options are reset to the global values, need to
|
|
||||||
" set the local values also when a plugin was already used.
|
|
||||||
unlet b:did_ftplugin
|
|
||||||
endif
|
|
||||||
|
|
||||||
" When there is a dot it is used to separate filetype names. Thus for
|
|
||||||
" "aaa.bbb" load "aaa" and then "bbb".
|
|
||||||
for name in split(s, '\.')
|
|
||||||
exe 'runtime! ftplugin/' . name . '.vim ftplugin/' . name . '_*.vim ftplugin/' . name . '/*.vim'
|
|
||||||
endfor
|
|
||||||
endif
|
|
||||||
endfunc
|
|
||||||
augroup END
|
augroup END
|
||||||
|
|
||||||
|
if exists('*LoadFTPlugin')
|
||||||
|
# No need to define the function again.
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
def LoadFTPlugin()
|
||||||
|
if exists("b:undo_ftplugin")
|
||||||
|
# We assume b:undo_ftplugin is using legacy script syntax
|
||||||
|
legacy exe b:undo_ftplugin
|
||||||
|
unlet! b:undo_ftplugin b:did_ftplugin
|
||||||
|
endif
|
||||||
|
|
||||||
|
var s = expand("<amatch>")
|
||||||
|
if s != ""
|
||||||
|
if &cpo =~# "S" && exists("b:did_ftplugin")
|
||||||
|
# In compatible mode options are reset to the global values, need to
|
||||||
|
# set the local values also when a plugin was already used.
|
||||||
|
unlet b:did_ftplugin
|
||||||
|
endif
|
||||||
|
|
||||||
|
# When there is a dot it is used to separate filetype names. Thus for
|
||||||
|
# "aaa.bbb" load "aaa" and then "bbb".
|
||||||
|
for name in split(s, '\.')
|
||||||
|
exe 'runtime! ftplugin/' .. name .. '.vim ftplugin/' .. name .. '_*.vim ftplugin/' .. name .. '/*.vim'
|
||||||
|
endfor
|
||||||
|
endif
|
||||||
|
enddef
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
" Vim filetype plugin file
|
" Vim filetype plugin file
|
||||||
" Language: ant
|
" Language: ant
|
||||||
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
|
"
|
||||||
|
" This runtime file is looking for a new maintainer.
|
||||||
|
"
|
||||||
|
" Former maintainer: Dan Sharp
|
||||||
" Last Changed: 20 Jan 2009
|
" Last Changed: 20 Jan 2009
|
||||||
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
|
|
||||||
|
|
||||||
if exists("b:did_ftplugin") | finish | endif
|
if exists("b:did_ftplugin") | finish | endif
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user