mirror of
https://github.com/zoriya/vim.git
synced 2025-12-26 17:08:10 +00:00
Compare commits
778 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1b03a193b3 | ||
|
|
32b364fcc0 | ||
|
|
e2a3f36bf2 | ||
|
|
5f1920ada2 | ||
|
|
bfd3433330 | ||
|
|
d283e89138 | ||
|
|
6b649ac4fd | ||
|
|
1f9a028def | ||
|
|
08d2e795e7 | ||
|
|
3c47e8384d | ||
|
|
664f3cf3f2 | ||
|
|
f48ee3c284 | ||
|
|
88a3e2b2ac | ||
|
|
1f3e7d3bf0 | ||
|
|
bef93ac9db | ||
|
|
9a838fe543 | ||
|
|
e7dd0deb3c | ||
|
|
c08ee7476b | ||
|
|
e38eab22c1 | ||
|
|
0d6f5d9740 | ||
|
|
63d9e730f7 | ||
|
|
0f8737355d | ||
|
|
6e0ce171e1 | ||
|
|
c95e8d6490 | ||
|
|
309976ec1f | ||
|
|
707d226ac5 | ||
|
|
4ba37b5833 | ||
|
|
2ab2e8608f | ||
|
|
9834b96820 | ||
|
|
42e931b0f5 | ||
|
|
85db547598 | ||
|
|
079119babe | ||
|
|
4ceaa3a6e0 | ||
|
|
734a867ffe | ||
|
|
a050b9471c | ||
|
|
54c8d229f5 | ||
|
|
306139005c | ||
|
|
217e1b8359 | ||
|
|
5d18efecfd | ||
|
|
fa5612c7d8 | ||
|
|
912bc4a51a | ||
|
|
6f1f0ca3ed | ||
|
|
269e4bd9d2 | ||
|
|
5a4c3082d7 | ||
|
|
9625d3d92d | ||
|
|
05ad5ff0ab | ||
|
|
0c5c3faef2 | ||
|
|
a2c2ae473a | ||
|
|
c667da5185 | ||
|
|
71136db1bf | ||
|
|
9bf703d46a | ||
|
|
20ebbeac46 | ||
|
|
91359014b3 | ||
|
|
e219f73ed5 | ||
|
|
dee50a5180 | ||
|
|
7257073043 | ||
|
|
310c32e892 | ||
|
|
15a7bdcb77 | ||
|
|
0387cae15c | ||
|
|
9134f1ecd4 | ||
|
|
68e9e5f7fc | ||
|
|
f8c1f9200c | ||
|
|
c7d2a57b3a | ||
|
|
31ff2e1b43 | ||
|
|
5708079a6b | ||
|
|
424e98baab | ||
|
|
7a212c6253 | ||
|
|
d52986e7be | ||
|
|
ea599a65ee | ||
|
|
8fbd6723af | ||
|
|
e307073680 | ||
|
|
92e25ab2df | ||
|
|
0c0734d527 | ||
|
|
fc4ea2a72d | ||
|
|
cc4423ae13 | ||
|
|
8f76e6b12b | ||
|
|
84f903326d | ||
|
|
38571a04b4 | ||
|
|
c1faf3dc38 | ||
|
|
6a228c6463 | ||
|
|
07e4a19795 | ||
|
|
06b0b4bc27 | ||
|
|
67a2deb9cb | ||
|
|
a106e6cde6 | ||
|
|
70077dd1ca | ||
|
|
c672525b48 | ||
|
|
85c3502ef5 | ||
|
|
4ebe0e62d0 | ||
|
|
2118a30295 | ||
|
|
fd318115a5 | ||
|
|
828ffd5963 | ||
|
|
556ae8ea28 | ||
|
|
7bae0b1bc8 | ||
|
|
94d9f4fa65 | ||
|
|
44f0bd878a | ||
|
|
bd3bc0314e | ||
|
|
546125869f | ||
|
|
10455d43fe | ||
|
|
9ae862ebba | ||
|
|
202c3f7e3e | ||
|
|
403f3eb4c1 | ||
|
|
a075490082 | ||
|
|
ffc4fb8fee | ||
|
|
0a5aa7b28a | ||
|
|
f9ae154c51 | ||
|
|
07a63d8633 | ||
|
|
5f76334818 | ||
|
|
37ff4cf870 | ||
|
|
91b992c387 | ||
|
|
539aa6b25e | ||
|
|
7170b295b0 | ||
|
|
eda1da0c9a | ||
|
|
077b9dd354 | ||
|
|
09c6f265b2 | ||
|
|
0324f9ea0a | ||
|
|
d8a8c4ca08 | ||
|
|
abe12a1a4f | ||
|
|
ecafcc15ca | ||
|
|
a37cb55da6 | ||
|
|
f36a2c7e60 | ||
|
|
e53ec39270 | ||
|
|
db3a205147 | ||
|
|
08f23636ae | ||
|
|
f4a1d1c054 | ||
|
|
ab85ca4e6a | ||
|
|
1ebbb6ee45 | ||
|
|
574ee7bc12 | ||
|
|
afe45b68a6 | ||
|
|
36e7a823c6 | ||
|
|
0743ef9f8a | ||
|
|
d6a98a3a97 | ||
|
|
58e32ab503 | ||
|
|
4eb7dae255 | ||
|
|
cbee635eee | ||
|
|
cc184cfb09 | ||
|
|
d002e411c6 | ||
|
|
adf4aa200b | ||
|
|
5ef1c6a483 | ||
|
|
a9aa86ff95 | ||
|
|
c823477979 | ||
|
|
5c6b6187ac | ||
|
|
1666ac9c56 | ||
|
|
622b646037 | ||
|
|
d6beab0248 | ||
|
|
439b3aca37 | ||
|
|
91e22eb6e0 | ||
|
|
4c054e9fb2 | ||
|
|
ee85702c10 | ||
|
|
b0745b221d | ||
|
|
dbd4316806 | ||
|
|
3503d7c94a | ||
|
|
b73e439606 | ||
|
|
5bf46e9786 | ||
|
|
1e15e61188 | ||
|
|
d1c1c82389 | ||
|
|
4dd8fe0b4f | ||
|
|
34059e7b67 | ||
|
|
398a59b6a5 | ||
|
|
0208b6b771 | ||
|
|
dc9ef26845 | ||
|
|
3d2a47c782 | ||
|
|
3b991527e8 | ||
|
|
f8b036bcae | ||
|
|
638a4a7508 | ||
|
|
fcf8a8743b | ||
|
|
215ba3b636 | ||
|
|
1e673b9eb6 | ||
|
|
177c9f2f06 | ||
|
|
36ec6f6953 | ||
|
|
7d2320414f | ||
|
|
dc968e7a45 | ||
|
|
ae20f340ad | ||
|
|
e5a3272d32 | ||
|
|
2d6d76f9cd | ||
|
|
0630bb6580 | ||
|
|
ad4de52510 | ||
|
|
2ade714728 | ||
|
|
197c6b7da3 | ||
|
|
30efcf3d26 | ||
|
|
d047840ce4 | ||
|
|
1e814bc017 | ||
|
|
e890b9f5dd | ||
|
|
1f068233c1 | ||
|
|
2f7b7b1e12 | ||
|
|
82cf7f6df7 | ||
|
|
32aa10203b | ||
|
|
70def98a95 | ||
|
|
024dbd229f | ||
|
|
f2885d3fb7 | ||
|
|
1a577433ac | ||
|
|
1ff14ba24c | ||
|
|
757bd2ea49 | ||
|
|
7a641ca1e1 | ||
|
|
bb26596242 | ||
|
|
77ccc00340 | ||
|
|
3f39697b73 | ||
|
|
69bf634858 | ||
|
|
8b530c1ff9 | ||
|
|
077ff436a7 | ||
|
|
efae76ab1a | ||
|
|
38ba4dce4a | ||
|
|
1c329c04be | ||
|
|
5b418992cf | ||
|
|
52410575be | ||
|
|
dfded98f87 | ||
|
|
cb86893114 | ||
|
|
7ab5d77666 | ||
|
|
96f45c0b6f | ||
|
|
8fc4296436 | ||
|
|
6a0cc916bd | ||
|
|
28ed4dfe1f | ||
|
|
453c19257f | ||
|
|
c7488a7fc8 | ||
|
|
1fd30d7bae | ||
|
|
7aee6876eb | ||
|
|
11a58af66f | ||
|
|
aa1f04d092 | ||
|
|
3691f1ee72 | ||
|
|
336bf2b8b2 | ||
|
|
b754b5bf6d | ||
|
|
ec6f735012 | ||
|
|
faf626e5d1 | ||
|
|
edaad6e0a0 | ||
|
|
28686682e7 | ||
|
|
6656c2ec4c | ||
|
|
8f7ab4bd1e | ||
|
|
823edd1eed | ||
|
|
93bbf33ceb | ||
|
|
13a1f3fb0c | ||
|
|
1cac70953d | ||
|
|
a720be78d7 | ||
|
|
396b7c78c0 | ||
|
|
34ba06b6e6 | ||
|
|
d53ebfc624 | ||
|
|
4d14bac8e7 | ||
|
|
4b57018ee4 | ||
|
|
a13961536e | ||
|
|
dca7abe79c | ||
|
|
88d3d09e07 | ||
|
|
83e9a1ce75 | ||
|
|
82260afb0e | ||
|
|
2b78ab5d0c | ||
|
|
b40c2576d4 | ||
|
|
7eed964b41 | ||
|
|
bbfd1562ae | ||
|
|
cfb381421f | ||
|
|
ba089307bb | ||
|
|
5b39d7adb0 | ||
|
|
a74fda6f4d | ||
|
|
00e192becd | ||
|
|
b98678a974 | ||
|
|
15ee567809 | ||
|
|
afbdb905c3 | ||
|
|
8459006af5 | ||
|
|
c3bf7b56f2 | ||
|
|
89577b3b3e | ||
|
|
92ea26b925 | ||
|
|
7751d1d1a3 | ||
|
|
a1cb1d1dce | ||
|
|
0d2c4bf171 | ||
|
|
3cea8a9a51 | ||
|
|
b1ba9abcb3 | ||
|
|
2559a47823 | ||
|
|
4a4981b7cd | ||
|
|
2e693a88b2 | ||
|
|
4f2f61a014 | ||
|
|
7b3d939667 | ||
|
|
b2fe1d676f | ||
|
|
4e03933726 | ||
|
|
4bd88d568a | ||
|
|
a6cc5beb17 | ||
|
|
fafb4b18cd | ||
|
|
17efc7fa05 | ||
|
|
8f7b29f033 | ||
|
|
9115c611db | ||
|
|
a3817730c0 | ||
|
|
1142a31b8c | ||
|
|
3439028c89 | ||
|
|
27fc8cab22 | ||
|
|
3c8cd4a1dc | ||
|
|
03b00476ee | ||
|
|
e3a22cb1ba | ||
|
|
6aa7523b96 | ||
|
|
53efb18530 | ||
|
|
1e7b52ad8a | ||
|
|
459fd785e4 | ||
|
|
171a921b51 | ||
|
|
4facea310c | ||
|
|
d1e2f3984a | ||
|
|
e8070987c6 | ||
|
|
ceba3dd518 | ||
|
|
18a79a6841 | ||
|
|
4cdbed33e4 | ||
|
|
1a4cbb19de | ||
|
|
ec66c41d84 | ||
|
|
00eab7f128 | ||
|
|
6a0299d8f4 | ||
|
|
07282f01da | ||
|
|
a129974bc7 | ||
|
|
c25e702dee | ||
|
|
073e779640 | ||
|
|
1ac41a5c13 | ||
|
|
9326805442 | ||
|
|
14c01f8348 | ||
|
|
6bd1d77067 | ||
|
|
b189295b72 | ||
|
|
345f28df54 | ||
|
|
c3e555b22f | ||
|
|
fbbd102be0 | ||
|
|
a27e1dcddc | ||
|
|
1614a14901 | ||
|
|
524f3b19ae | ||
|
|
eb66328bd7 | ||
|
|
49474ca122 | ||
|
|
1671de3098 | ||
|
|
2efc44b3f0 | ||
|
|
fd00c042af | ||
|
|
9ca250855b | ||
|
|
4c063dde73 | ||
|
|
2a8d3b8997 | ||
|
|
e8a7dfedfc | ||
|
|
1824f45883 | ||
|
|
23324a0b35 | ||
|
|
8617348e21 | ||
|
|
b4367b7fb6 | ||
|
|
2886dcceba | ||
|
|
792cf5e1be | ||
|
|
18223a592e | ||
|
|
d17a57a433 | ||
|
|
ac02a638b4 | ||
|
|
ee1a2b5a2a | ||
|
|
b7a97ef340 | ||
|
|
37ac4a531c | ||
|
|
66f0e6c6e2 | ||
|
|
8c96af9c05 | ||
|
|
a893194d91 | ||
|
|
473952e852 | ||
|
|
9be0e0b9d3 | ||
|
|
1a61339806 | ||
|
|
0f1c6708fd | ||
|
|
2e47cab715 | ||
|
|
7b666c7883 | ||
|
|
383f387d9d | ||
|
|
5be4ceecea | ||
|
|
a7f6c3cf07 | ||
|
|
38f1eeac3d | ||
|
|
2313b61257 | ||
|
|
5e8e967f25 | ||
|
|
ce0fac2897 | ||
|
|
30e8e73506 | ||
|
|
46a426c9ac | ||
|
|
d2842ea60b | ||
|
|
d2c1fb476d | ||
|
|
f21118e4a9 | ||
|
|
4aea03eb87 | ||
|
|
e0d749a496 | ||
|
|
101e99207f | ||
|
|
0d0c3ca007 | ||
|
|
010ee9657a | ||
|
|
03ac52fc02 | ||
|
|
053f712ef2 | ||
|
|
b8ff5c271e | ||
|
|
0f6629a08a | ||
|
|
513537bfff | ||
|
|
cadbe1b1fb | ||
|
|
c258549032 | ||
|
|
910c378d93 | ||
|
|
bd67aac279 | ||
|
|
1e82a784ac | ||
|
|
b20b9e14dd | ||
|
|
4d5c12626c | ||
|
|
bffba7f704 | ||
|
|
589edb3404 | ||
|
|
56ebbabea1 | ||
|
|
4bd782339e | ||
|
|
7528d1f6b5 | ||
|
|
cd67059c0c | ||
|
|
181d4f58cc | ||
|
|
cebfcffa40 | ||
|
|
d103ee7843 | ||
|
|
7a9bd7c1e0 | ||
|
|
705918f9f7 | ||
|
|
7e0f462db5 | ||
|
|
397c6a1438 | ||
|
|
37d1807a80 | ||
|
|
0e57dd859e | ||
|
|
69198cb8c0 | ||
|
|
dac1347b4d | ||
|
|
8aeec40207 | ||
|
|
ea8dcf8346 | ||
|
|
9c658c9eac | ||
|
|
248fdb3332 | ||
|
|
e00fdf35d0 | ||
|
|
8ae54375ca | ||
|
|
af91438338 | ||
|
|
a046b37c22 | ||
|
|
1ac90b4fa6 | ||
|
|
60a8de28d1 | ||
|
|
50bf7ce0c9 | ||
|
|
0571f3d6f9 | ||
|
|
076d98839c | ||
|
|
5babc6e858 | ||
|
|
997d42427e | ||
|
|
017ba07fa2 | ||
|
|
d9b0d83b13 | ||
|
|
57da698168 | ||
|
|
dbec74907e | ||
|
|
1946de140a | ||
|
|
9283f92008 | ||
|
|
dcb2b9cb08 | ||
|
|
0eddca40a6 | ||
|
|
8fe1000e9c | ||
|
|
840d16fd36 | ||
|
|
d20dcb3d01 | ||
|
|
410e98a70b | ||
|
|
e5fbd73930 | ||
|
|
96e38a86a7 | ||
|
|
adbde3fbed | ||
|
|
bf9a3b0164 | ||
|
|
b9c79cf5cc | ||
|
|
f92e58cadb | ||
|
|
7ee80f7661 | ||
|
|
ce90e36f59 | ||
|
|
9490b9a61c | ||
|
|
3d2a3cbce8 | ||
|
|
4544bd2f24 | ||
|
|
fca068b977 | ||
|
|
6cdce2a003 | ||
|
|
6d7d7cf750 | ||
|
|
f6ed61e148 | ||
|
|
30e9b3c425 | ||
|
|
fa90d70884 | ||
|
|
9b1cd65d8b | ||
|
|
261f346f81 | ||
|
|
a3a124627d | ||
|
|
1b33bee35e | ||
|
|
fbb3bc89b3 | ||
|
|
bcb4c8f905 | ||
|
|
aad222c9c9 | ||
|
|
93476fd634 | ||
|
|
5ec849896f | ||
|
|
196b466443 | ||
|
|
16b58ae9f3 | ||
|
|
6f72e90dd8 | ||
|
|
a546b21b24 | ||
|
|
af7645d373 | ||
|
|
8d3b51084a | ||
|
|
a0d1fef4eb | ||
|
|
a5a7882ea4 | ||
|
|
26262f8777 | ||
|
|
3f4f3d8e7e | ||
|
|
ea781459b9 | ||
|
|
6a124e622c | ||
|
|
08c308aeb5 | ||
|
|
0f63ed33fd | ||
|
|
b005cd80cf | ||
|
|
1e1d30048e | ||
|
|
19c8fe1925 | ||
|
|
2b43f7f9f4 | ||
|
|
89c0003331 | ||
|
|
1f3165bc34 | ||
|
|
61c18652c9 | ||
|
|
5d712e4672 | ||
|
|
d570ab95d9 | ||
|
|
19e8ac72e9 | ||
|
|
581ba39aef | ||
|
|
27da7de7c5 | ||
|
|
8e0a8e7eb7 | ||
|
|
e677df8d93 | ||
|
|
359ad1a6f9 | ||
|
|
c36350bca3 | ||
|
|
934470e562 | ||
|
|
55008aad50 | ||
|
|
a144983633 | ||
|
|
db022f3ffb | ||
|
|
a112f2d003 | ||
|
|
c330835928 | ||
|
|
da6c033421 | ||
|
|
0fdddeeb66 | ||
|
|
1bc353b6f1 | ||
|
|
02b31110d3 | ||
|
|
f9f24ce7a0 | ||
|
|
5d69fdb7c4 | ||
|
|
f1699968ba | ||
|
|
06fe74aef7 | ||
|
|
4bbfb0f3cc | ||
|
|
8c6173c7d3 | ||
|
|
b5432d8968 | ||
|
|
60b1bcfe92 | ||
|
|
163588005d | ||
|
|
9e67b6a6a1 | ||
|
|
821d771e86 | ||
|
|
8d71b54409 | ||
|
|
58a297b28d | ||
|
|
ad5db44c01 | ||
|
|
34ed68d40e | ||
|
|
e5cdf153bc | ||
|
|
c507a2d164 | ||
|
|
4fb15c6476 | ||
|
|
1fb0831a0e | ||
|
|
57441d6fa0 | ||
|
|
bc2d4c1db6 | ||
|
|
0522ba0359 | ||
|
|
d20070274c | ||
|
|
ea7a08a53e | ||
|
|
92852cee3f | ||
|
|
8e95636a28 | ||
|
|
12034e22dd | ||
|
|
307c5a5bb7 | ||
|
|
c2b97643a8 | ||
|
|
4c313b13fb | ||
|
|
a8eee21e75 | ||
|
|
4119309d70 | ||
|
|
4f57eefe1e | ||
|
|
a4208966fb | ||
|
|
f63962378d | ||
|
|
4645104be4 | ||
|
|
e9a891f255 | ||
|
|
356375fbf8 | ||
|
|
741ea17038 | ||
|
|
1a3a89168d | ||
|
|
d019039ccd | ||
|
|
37f4cbd46f | ||
|
|
570497ac40 | ||
|
|
64b4d73524 | ||
|
|
448262176b | ||
|
|
e49fbff384 | ||
|
|
00b0d6d8dc | ||
|
|
fe6e7618b4 | ||
|
|
c1f87c9a31 | ||
|
|
c7c5f10a36 | ||
|
|
258cef59d8 | ||
|
|
9cb698d564 | ||
|
|
bd483b3f57 | ||
|
|
e2c453d38f | ||
|
|
d933c82ff4 | ||
|
|
42aff46d97 | ||
|
|
4dc8f498aa | ||
|
|
f1552d07d7 | ||
|
|
eaf3524119 | ||
|
|
6f10c70b59 | ||
|
|
1058c9d9b5 | ||
|
|
f1e0544d41 | ||
|
|
36e4d985f0 | ||
|
|
5843f5f37b | ||
|
|
9a4a8c4d59 | ||
|
|
ea7ecfe2a0 | ||
|
|
073e4b92e6 | ||
|
|
0a52df50a0 | ||
|
|
66b51420e0 | ||
|
|
db1085a563 | ||
|
|
f0bc15c769 | ||
|
|
9513d91be0 | ||
|
|
62a0cb443c | ||
|
|
f4665e78f2 | ||
|
|
576a4a6ff1 | ||
|
|
93cf85f9ef | ||
|
|
9cfe8f6e68 | ||
|
|
ffc0716af8 | ||
|
|
f8b055d170 | ||
|
|
56c860c315 | ||
|
|
e9bd57286a | ||
|
|
4dd751b956 | ||
|
|
df70775555 | ||
|
|
c7226684c8 | ||
|
|
ff9f27cdc7 | ||
|
|
026587b35c | ||
|
|
4ad62155a1 | ||
|
|
69cbbecf54 | ||
|
|
315244d85b | ||
|
|
d5cf89872e | ||
|
|
a3891681f7 | ||
|
|
413c04e8d5 | ||
|
|
9174639a82 | ||
|
|
9c272a9e52 | ||
|
|
24278d2407 | ||
|
|
ea94c85516 | ||
|
|
427dddf014 | ||
|
|
2f710afe7f | ||
|
|
c8fd33d18b | ||
|
|
78d629a385 | ||
|
|
9a2fddcf04 | ||
|
|
973d5304a4 | ||
|
|
52953194af | ||
|
|
7e6feb9eeb | ||
|
|
28e67e0c14 | ||
|
|
5dd143e223 | ||
|
|
9bca58f36d | ||
|
|
a4b2699e28 | ||
|
|
185d68a9d0 | ||
|
|
93344c2d70 | ||
|
|
6ace95e981 | ||
|
|
45311b5274 | ||
|
|
f077db2423 | ||
|
|
9570aacdb8 | ||
|
|
d5e3cc11d3 | ||
|
|
52992feafe | ||
|
|
0b5dc64446 | ||
|
|
08cc374dab | ||
|
|
4999a7fb65 | ||
|
|
a9ab391a3a | ||
|
|
fd8ca21b3f | ||
|
|
22a0c0c4ec | ||
|
|
0c779e8e48 | ||
|
|
820680b9ff | ||
|
|
2514315fc2 | ||
|
|
088e8e3443 | ||
|
|
a576f50662 | ||
|
|
39de6413c8 | ||
|
|
5184132ec0 | ||
|
|
47ed553fd5 | ||
|
|
8c5a278fc5 | ||
|
|
b59e735772 | ||
|
|
5bcc5a1ff9 | ||
|
|
d7663c22c6 | ||
|
|
0acae7acc4 | ||
|
|
f97d46f816 | ||
|
|
761fdf01c6 | ||
|
|
1b6d9c4215 | ||
|
|
b4a88a0441 | ||
|
|
6f33b893c6 | ||
|
|
fcfe1a9b89 | ||
|
|
7a4ea1df2f | ||
|
|
5d458a7b3d | ||
|
|
2debf1c16b | ||
|
|
fb06d767a8 | ||
|
|
c363fe1599 | ||
|
|
b8350abef0 | ||
|
|
a74e4946de | ||
|
|
e4ce825a55 | ||
|
|
25e42231d3 | ||
|
|
7cc535175a | ||
|
|
6cd57d4466 | ||
|
|
3c8ee62974 | ||
|
|
ac92e25a33 | ||
|
|
b2129068a5 | ||
|
|
505e43a20e | ||
|
|
c6538bcc1c | ||
|
|
749fa0af85 | ||
|
|
eda35f7127 | ||
|
|
edd680f364 | ||
|
|
72e1b39111 | ||
|
|
c7f1e40021 | ||
|
|
f2d8b7a0a6 | ||
|
|
1ccaa35abf | ||
|
|
dd00035cb5 | ||
|
|
50f91d22bd | ||
|
|
8750026a7f | ||
|
|
90f3e7ac56 | ||
|
|
f4fd7ecbc0 | ||
|
|
9bcb70c18a | ||
|
|
13b11eddca | ||
|
|
b66bab381c | ||
|
|
3f9bdeb2a5 | ||
|
|
dff2adc8dd | ||
|
|
5477506a9f | ||
|
|
0e6bfb9b2e | ||
|
|
70576f70f7 | ||
|
|
674e2bde6e | ||
|
|
8edf0e3132 | ||
|
|
8c8b88d0cc | ||
|
|
f386f08ccb | ||
|
|
4641a122f2 | ||
|
|
eee9f65b2a | ||
|
|
3c610c9638 | ||
|
|
13d5c3f616 | ||
|
|
b78564d022 | ||
|
|
d4404b4391 | ||
|
|
56c0c4749d | ||
|
|
ac3150d385 | ||
|
|
bca9c30193 | ||
|
|
f96ae0b5a2 | ||
|
|
2a9c9f6d89 | ||
|
|
8453807911 | ||
|
|
f91aac5e3e | ||
|
|
5328cb8986 | ||
|
|
9f9fe37f67 | ||
|
|
c273405188 | ||
|
|
4248111497 | ||
|
|
9800bfe0fc | ||
|
|
14371ed697 | ||
|
|
d5c8234517 | ||
|
|
2984666291 | ||
|
|
1417c766f5 | ||
|
|
0aca293fed | ||
|
|
4f0d002cf9 | ||
|
|
e865dcbce1 | ||
|
|
7b73d7ebf7 | ||
|
|
9d5ffceb3f | ||
|
|
8a5c29aee9 | ||
|
|
736cd2cfbe | ||
|
|
74da39373c | ||
|
|
fbfb757d4c | ||
|
|
94f82cbacf | ||
|
|
1f164b1968 | ||
|
|
07d1356648 | ||
|
|
bbca7732e8 | ||
|
|
7dfb016d25 | ||
|
|
4ef18dcc2e | ||
|
|
d08b8c4c04 | ||
|
|
06029a857a | ||
|
|
9bc4dde45d | ||
|
|
949f1989cb | ||
|
|
c3328169d5 | ||
|
|
c61a48d259 | ||
|
|
29b7d7a9aa | ||
|
|
e5e6950193 | ||
|
|
f03e328348 | ||
|
|
26b654a5df | ||
|
|
1e78e69680 | ||
|
|
ecaa75b4ce | ||
|
|
5f32ece459 | ||
|
|
defa067c54 | ||
|
|
ed997adaa1 | ||
|
|
663bbc09ba | ||
|
|
b4fe0eb4b4 | ||
|
|
2458200729 | ||
|
|
61343f0c44 | ||
|
|
63187f7932 | ||
|
|
2a5b52758b | ||
|
|
331bafd481 | ||
|
|
cb5ff34c1b | ||
|
|
f914a33c9c | ||
|
|
ab0a789808 | ||
|
|
06e6377009 | ||
|
|
85850f3a5e | ||
|
|
7964873afe | ||
|
|
df9c6cad8c | ||
|
|
d6bcff4577 | ||
|
|
acf7544cf6 | ||
|
|
4a0a161a9b | ||
|
|
403d090e39 | ||
|
|
3fb4f4762b | ||
|
|
cfdbc5adde | ||
|
|
99a764bccd | ||
|
|
4c6d90458b | ||
|
|
69a5b86794 | ||
|
|
6138640806 | ||
|
|
c7283078c3 | ||
|
|
7ce2aa01c2 | ||
|
|
250e3112c6 | ||
|
|
2ac6e82a4e | ||
|
|
5d6844566a | ||
|
|
c9afd15bc8 | ||
|
|
cea2a15687 | ||
|
|
f49a692259 | ||
|
|
41a8260445 | ||
|
|
f9cc9f209e | ||
|
|
b8be54dcc5 | ||
|
|
37d9f175a4 | ||
|
|
0346413c24 | ||
|
|
660a10ad41 | ||
|
|
1850b14c0d | ||
|
|
ecaa70ea29 | ||
|
|
2898ebb44c | ||
|
|
a099da3572 | ||
|
|
396e829fa3 | ||
|
|
fa55cfc69d | ||
|
|
d5abb4c877 | ||
|
|
809ce4d317 | ||
|
|
0fb286e82d | ||
|
|
63d0dad874 | ||
|
|
eaa49e40d7 | ||
|
|
a901a37bae | ||
|
|
b073da8929 | ||
|
|
017c269938 | ||
|
|
7b73f914c4 | ||
|
|
4e63f9425e | ||
|
|
b4f0628fc5 | ||
|
|
d94ac0caca | ||
|
|
b7b9efbccf | ||
|
|
0231f8312b | ||
|
|
efef9fea72 | ||
|
|
8ccabf624e | ||
|
|
8071cb2c64 | ||
|
|
bd42b31780 | ||
|
|
b420747478 | ||
|
|
847a5d69a8 |
17
.cirrus.yml
Normal file
17
.cirrus.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
env:
|
||||
CIRRUS_CLONE_DEPTH: 3
|
||||
FEATURES: huge
|
||||
|
||||
freebsd_12_task:
|
||||
freebsd_instance:
|
||||
image: freebsd-12-1-release-amd64
|
||||
install_script:
|
||||
pkg install -y gettext
|
||||
build_script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
- ./configure --with-features=${FEATURES}
|
||||
- make -j${NPROC}
|
||||
- src/vim --version
|
||||
test_script:
|
||||
# Runtime Indent tests do not work, run only the normal test suite
|
||||
- cd src && make test
|
||||
1
.gitattributes
vendored
Normal file
1
.gitattributes
vendored
Normal file
@@ -0,0 +1 @@
|
||||
src/testdir/test42.in diff
|
||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -50,6 +50,7 @@ nbproject/*
|
||||
|
||||
# Mac OSX
|
||||
src/xxd/xxd.dSYM
|
||||
.DS_Store
|
||||
|
||||
# All platforms
|
||||
*.rej
|
||||
@@ -77,6 +78,7 @@ src/testdir/messages
|
||||
src/testdir/viminfo
|
||||
src/testdir/opt_test.vim
|
||||
runtime/indent/testdir/*.out
|
||||
runtime/indent/testdir/*.fail
|
||||
src/memfile_test
|
||||
src/json_test
|
||||
src/message_test
|
||||
|
||||
10
.travis.yml
10
.travis.yml
@@ -96,7 +96,7 @@ anchors:
|
||||
- do_test() { "$@"; }
|
||||
|
||||
coverage: &coverage
|
||||
- ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8 latin-1 EUC-KR
|
||||
- ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
||||
- (cd "${SRCDIR}" && bash <(curl -s https://codecov.io/bash))
|
||||
|
||||
asan_symbolize: &asan_symbolize
|
||||
@@ -142,8 +142,12 @@ script:
|
||||
"${SRCDIR}"/vim --not-a-term -u NONE -S "${SRCDIR}"/testdir/if_ver-2.vim -c quit > /dev/null
|
||||
cat if_ver.txt
|
||||
fi
|
||||
- do_test make ${SHADOWOPT} ${TEST}
|
||||
- echo -en "travis_fold:end:test\\r\\033[0K"
|
||||
- >
|
||||
do_test make ${SHADOWOPT} ${TEST} &&
|
||||
make -C runtime/doc vimtags VIMEXE=../../"${SRCDIR}"/vim &&
|
||||
FOLD_MARKER=travis_fold
|
||||
- echo -en "${FOLD_MARKER}:end:test\\r\\033[0K"
|
||||
|
||||
|
||||
# instead of a 2*2*8 matrix (2*os + 2*compiler + 8*env),
|
||||
# exclude some builds on mac os x and linux
|
||||
|
||||
@@ -4,14 +4,23 @@ Patches are welcome in whatever form.
|
||||
Discussions about patches happen on the vim-dev maillist.
|
||||
If you create a pull request on GitHub it will be
|
||||
forwarded to the vim-dev maillist. You can also send your patch there
|
||||
directly. An attachment with a unified diff format is preferred.
|
||||
directly. In that case an attachment with a unified diff format is preferred.
|
||||
Information about the maillist can be found [on the Vim website].
|
||||
|
||||
[on the Vim website]: http://www.vim.org/maillist.php#vim-dev
|
||||
|
||||
Please consider adding a test. Test coverage isn't very good yet, this needs
|
||||
to improve. Look through recent patches for examples. The tests are located
|
||||
under "src/testdir".
|
||||
A pull request has the advantage that it will trigger the Continuous
|
||||
Integration tests, you will be warned of problems (you can ignore the coverage
|
||||
warning, it's noisy).
|
||||
|
||||
Please consider adding a test. All new functionality should be tested and bug
|
||||
fixes should be tested for regressions: the test should fail before the fix and
|
||||
pass after the fix. Look through recent patches for examples and find help
|
||||
with ":help testing". The tests are located under "src/testdir".
|
||||
|
||||
Contributions will be distributed with Vim under the Vim license. Providing a
|
||||
change to be included implies that you agree with this and your contribution
|
||||
does not cause us trouble with trademarks or patents. There is no CLA to sign.
|
||||
|
||||
|
||||
# Reporting issues
|
||||
@@ -56,6 +65,9 @@ If the maintainer does not respond, contact the vim-dev maillist.
|
||||
|
||||
# Translations
|
||||
|
||||
Translations of this CONTRIBUTING file:
|
||||
[Korean](https://github.com/cjw1359/opensource/blob/master/Vim/CONTRIBUTING_ko.md)
|
||||
|
||||
Translating messages and runtime files is very much appreciated! These things
|
||||
can be translated:
|
||||
* Messages in Vim, see [src/po/README.txt][1]
|
||||
|
||||
69
Filelist
69
Filelist
@@ -4,15 +4,18 @@
|
||||
# source files for all source archives
|
||||
SRC_ALL = \
|
||||
.gitignore \
|
||||
.gitattributes \
|
||||
.hgignore \
|
||||
.lgtm.yml \
|
||||
.travis.yml \
|
||||
.cirrus.yml \
|
||||
appveyor.yml \
|
||||
ci/appveyor.bat \
|
||||
src/Make_all.mak \
|
||||
src/README.md \
|
||||
src/alloc.h \
|
||||
src/arabic.c \
|
||||
src/arglist.c \
|
||||
src/ascii.h \
|
||||
src/autocmd.c \
|
||||
src/beval.c \
|
||||
@@ -20,18 +23,27 @@ SRC_ALL = \
|
||||
src/blob.c \
|
||||
src/blowfish.c \
|
||||
src/buffer.c \
|
||||
src/bufwrite.c \
|
||||
src/change.c \
|
||||
src/channel.c \
|
||||
src/charset.c \
|
||||
src/cindent.c \
|
||||
src/cmdexpand.c \
|
||||
src/cmdhist.c \
|
||||
src/crypt.c \
|
||||
src/crypt_zip.c \
|
||||
src/debugger.c \
|
||||
src/dict.c \
|
||||
src/diff.c \
|
||||
src/digraph.c \
|
||||
src/drawline.c \
|
||||
src/drawscreen.c \
|
||||
src/edit.c \
|
||||
src/eval.c \
|
||||
src/evalbuffer.c \
|
||||
src/evalfunc.c \
|
||||
src/evalvars.c \
|
||||
src/evalwindow.c \
|
||||
src/ex_cmdidxs.h \
|
||||
src/ex_cmds.c \
|
||||
src/ex_cmds.h \
|
||||
@@ -41,6 +53,7 @@ SRC_ALL = \
|
||||
src/ex_getln.c \
|
||||
src/feature.h \
|
||||
src/fileio.c \
|
||||
src/filepath.c \
|
||||
src/findfile.c \
|
||||
src/fold.c \
|
||||
src/getchar.c \
|
||||
@@ -50,6 +63,7 @@ SRC_ALL = \
|
||||
src/gui_beval.c \
|
||||
src/hardcopy.c \
|
||||
src/hashtab.c \
|
||||
src/highlight.c \
|
||||
src/indent.c \
|
||||
src/insexpand.c \
|
||||
src/json.c \
|
||||
@@ -59,6 +73,7 @@ SRC_ALL = \
|
||||
src/keymap.h \
|
||||
src/macros.h \
|
||||
src/main.c \
|
||||
src/map.c \
|
||||
src/mark.c \
|
||||
src/mbyte.c \
|
||||
src/memfile.c \
|
||||
@@ -69,6 +84,7 @@ SRC_ALL = \
|
||||
src/message_test.c \
|
||||
src/misc1.c \
|
||||
src/misc2.c \
|
||||
src/mouse.c \
|
||||
src/move.c \
|
||||
src/mysign \
|
||||
src/nbdebug.c \
|
||||
@@ -78,20 +94,28 @@ SRC_ALL = \
|
||||
src/ops.c \
|
||||
src/option.c \
|
||||
src/option.h \
|
||||
src/popupmnu.c \
|
||||
src/optiondefs.h \
|
||||
src/optionstr.c \
|
||||
src/popupmenu.c \
|
||||
src/popupwin.c \
|
||||
src/profiler.c \
|
||||
src/quickfix.c \
|
||||
src/regexp.c \
|
||||
src/regexp_bt.c \
|
||||
src/regexp_nfa.c \
|
||||
src/regexp.h \
|
||||
src/register.c \
|
||||
src/scriptfile.c \
|
||||
src/screen.c \
|
||||
src/search.c \
|
||||
src/session.c \
|
||||
src/sha256.c \
|
||||
src/sign.c \
|
||||
src/sound.c \
|
||||
src/spell.c \
|
||||
src/spell.h \
|
||||
src/spellfile.c \
|
||||
src/spellsuggest.c \
|
||||
src/structs.h \
|
||||
src/syntax.c \
|
||||
src/tag.c \
|
||||
@@ -99,6 +123,7 @@ SRC_ALL = \
|
||||
src/terminal.c \
|
||||
src/term.h \
|
||||
src/termlib.c \
|
||||
src/testing.c \
|
||||
src/textprop.c \
|
||||
src/ui.c \
|
||||
src/undo.c \
|
||||
@@ -107,6 +132,7 @@ SRC_ALL = \
|
||||
src/version.c \
|
||||
src/version.h \
|
||||
src/vim.h \
|
||||
src/viminfo.c \
|
||||
src/winclip.c \
|
||||
src/window.c \
|
||||
src/tee/tee.c \
|
||||
@@ -158,29 +184,40 @@ SRC_ALL = \
|
||||
src/proto.h \
|
||||
src/protodef.h \
|
||||
src/proto/arabic.pro \
|
||||
src/proto/arglist.pro \
|
||||
src/proto/autocmd.pro \
|
||||
src/proto/beval.pro \
|
||||
src/proto/blob.pro \
|
||||
src/proto/blowfish.pro \
|
||||
src/proto/buffer.pro \
|
||||
src/proto/bufwrite.pro \
|
||||
src/proto/change.pro \
|
||||
src/proto/channel.pro \
|
||||
src/proto/charset.pro \
|
||||
src/proto/cindent.pro \
|
||||
src/proto/cmdexpand.pro \
|
||||
src/proto/cmdhist.pro \
|
||||
src/proto/crypt.pro \
|
||||
src/proto/crypt_zip.pro \
|
||||
src/proto/debugger.pro \
|
||||
src/proto/dict.pro \
|
||||
src/proto/diff.pro \
|
||||
src/proto/digraph.pro \
|
||||
src/proto/drawline.pro \
|
||||
src/proto/drawscreen.pro \
|
||||
src/proto/edit.pro \
|
||||
src/proto/eval.pro \
|
||||
src/proto/evalbuffer.pro \
|
||||
src/proto/evalfunc.pro \
|
||||
src/proto/evalvars.pro \
|
||||
src/proto/evalwindow.pro \
|
||||
src/proto/ex_cmds.pro \
|
||||
src/proto/ex_cmds2.pro \
|
||||
src/proto/ex_docmd.pro \
|
||||
src/proto/ex_eval.pro \
|
||||
src/proto/ex_getln.pro \
|
||||
src/proto/fileio.pro \
|
||||
src/proto/filepath.pro \
|
||||
src/proto/findfile.pro \
|
||||
src/proto/fold.pro \
|
||||
src/proto/getchar.pro \
|
||||
@@ -188,11 +225,13 @@ SRC_ALL = \
|
||||
src/proto/gui_beval.pro \
|
||||
src/proto/hardcopy.pro \
|
||||
src/proto/hashtab.pro \
|
||||
src/proto/highlight.pro \
|
||||
src/proto/indent.pro \
|
||||
src/proto/insexpand.pro \
|
||||
src/proto/json.pro \
|
||||
src/proto/list.pro \
|
||||
src/proto/main.pro \
|
||||
src/proto/map.pro \
|
||||
src/proto/mark.pro \
|
||||
src/proto/mbyte.pro \
|
||||
src/proto/memfile.pro \
|
||||
@@ -201,33 +240,42 @@ SRC_ALL = \
|
||||
src/proto/message.pro \
|
||||
src/proto/misc1.pro \
|
||||
src/proto/misc2.pro \
|
||||
src/proto/mouse.pro \
|
||||
src/proto/move.pro \
|
||||
src/proto/netbeans.pro \
|
||||
src/proto/normal.pro \
|
||||
src/proto/ops.pro \
|
||||
src/proto/option.pro \
|
||||
src/proto/popupmnu.pro \
|
||||
src/proto/optionstr.pro \
|
||||
src/proto/popupmenu.pro \
|
||||
src/proto/popupwin.pro \
|
||||
src/proto/profiler.pro \
|
||||
src/proto/quickfix.pro \
|
||||
src/proto/regexp.pro \
|
||||
src/proto/register.pro \
|
||||
src/proto/scriptfile.pro \
|
||||
src/proto/screen.pro \
|
||||
src/proto/search.pro \
|
||||
src/proto/session.pro \
|
||||
src/proto/sha256.pro \
|
||||
src/proto/sign.pro \
|
||||
src/proto/sound.pro \
|
||||
src/proto/spell.pro \
|
||||
src/proto/spellfile.pro \
|
||||
src/proto/spellsuggest.pro \
|
||||
src/proto/syntax.pro \
|
||||
src/proto/tag.pro \
|
||||
src/proto/term.pro \
|
||||
src/proto/terminal.pro \
|
||||
src/proto/termlib.pro \
|
||||
src/proto/testing.pro \
|
||||
src/proto/textprop.pro \
|
||||
src/proto/ui.pro \
|
||||
src/proto/undo.pro \
|
||||
src/proto/usercmd.pro \
|
||||
src/proto/userfunc.pro \
|
||||
src/proto/version.pro \
|
||||
src/proto/viminfo.pro \
|
||||
src/proto/winclip.pro \
|
||||
src/proto/window.pro \
|
||||
src/libvterm/.bzrignore \
|
||||
@@ -237,9 +285,6 @@ SRC_ALL = \
|
||||
src/libvterm/README \
|
||||
src/libvterm/tbl2inc_c.pl \
|
||||
src/libvterm/vterm.pc.in \
|
||||
src/libvterm/bin/unterm.c \
|
||||
src/libvterm/bin/vterm-ctrl.c \
|
||||
src/libvterm/bin/vterm-dump.c \
|
||||
src/libvterm/doc/URLs \
|
||||
src/libvterm/doc/seqs.txt \
|
||||
src/libvterm/include/vterm.h \
|
||||
@@ -254,7 +299,7 @@ SRC_ALL = \
|
||||
src/libvterm/src/parser.c \
|
||||
src/libvterm/src/pen.c \
|
||||
src/libvterm/src/rect.h \
|
||||
src/libvterm/src/termscreen.c \
|
||||
src/libvterm/src/screen.c \
|
||||
src/libvterm/src/state.c \
|
||||
src/libvterm/src/unicode.c \
|
||||
src/libvterm/src/utf8.h \
|
||||
@@ -354,7 +399,6 @@ SRC_UNIX = \
|
||||
src/gui_xmebwp.h \
|
||||
src/gui_x11.c \
|
||||
src/gui_x11_pm.h \
|
||||
src/hangulin.c \
|
||||
src/if_xcmdsrv.c \
|
||||
src/link.sh \
|
||||
src/installman.sh \
|
||||
@@ -374,7 +418,6 @@ SRC_UNIX = \
|
||||
src/proto/gui_motif.pro \
|
||||
src/proto/gui_xmdlg.pro \
|
||||
src/proto/gui_x11.pro \
|
||||
src/proto/hangulin.pro \
|
||||
src/proto/if_xcmdsrv.pro \
|
||||
src/proto/os_unix.pro \
|
||||
src/proto/pty.pro \
|
||||
@@ -475,7 +518,7 @@ SRC_DOS = \
|
||||
src/testdir/Make_dos.mak \
|
||||
src/testdir/Make_ming.mak \
|
||||
src/testdir/dos.vim \
|
||||
src/uninstal.c \
|
||||
src/uninstall.c \
|
||||
src/vim.def \
|
||||
src/vim.rc \
|
||||
src/vimio.h \
|
||||
@@ -490,7 +533,7 @@ SRC_DOS = \
|
||||
nsis/gvim_version.nsh \
|
||||
nsis/README.txt \
|
||||
nsis/lang/*.nsi \
|
||||
uninstal.txt \
|
||||
uninstall.txt \
|
||||
src/VisVim/Commands.cpp \
|
||||
src/VisVim/Commands.h \
|
||||
src/VisVim/DSAddIn.cpp \
|
||||
@@ -540,10 +583,7 @@ SRC_AMI = \
|
||||
README_amisrc.txt.info \
|
||||
src.info \
|
||||
src/INSTALLami.txt \
|
||||
src/Make_dice.mak \
|
||||
src/Make_manx.mak \
|
||||
src/Make_morph.mak \
|
||||
src/Make_sas.mak \
|
||||
src/os_amiga.c \
|
||||
src/os_amiga.h \
|
||||
src/proto/os_amiga.pro \
|
||||
@@ -619,6 +659,7 @@ RT_ALL = \
|
||||
runtime/doc/*.txt \
|
||||
runtime/doc/Makefile \
|
||||
runtime/doc/doctags.c \
|
||||
runtime/doc/doctags.vim \
|
||||
runtime/doc/test_urls.vim \
|
||||
runtime/doc/vim.1 \
|
||||
runtime/doc/evim.1 \
|
||||
@@ -813,7 +854,7 @@ BIN_AMI = \
|
||||
# files for DOS binary (also in extra archive)
|
||||
BIN_DOS = \
|
||||
README_bindos.txt \
|
||||
uninstal.txt \
|
||||
uninstall.txt \
|
||||
|
||||
# files for Win32 OLE binary (also in extra archive)
|
||||
BIN_OLE = \
|
||||
|
||||
23
Makefile
23
Makefile
@@ -95,9 +95,9 @@ MINOR = 1
|
||||
# runtime/doc/*.txt and make nsis/gvim_version.nsh.
|
||||
# For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.def,
|
||||
# src/gvim.exe.mnf.
|
||||
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, MZscheme, Lua (if
|
||||
# you can make it all work), Cscope and "huge" features. Exclude workshop
|
||||
# and SNiFF.
|
||||
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, Lua, Cscope and
|
||||
# "huge" features. Add MZscheme if you can make it work.
|
||||
# Use "make reconfig" after selecting the configure arguments.
|
||||
# - With these features: "make proto" (requires cproto and Motif installed;
|
||||
# ignore warnings for missing include files, fix problems for syntax errors).
|
||||
# - With these features: "make depend" (works best with gcc).
|
||||
@@ -106,9 +106,6 @@ MINOR = 1
|
||||
# - If you have valgrind, enable it in src/testdir/Makefile and run "make
|
||||
# test". Enable EXITFREE, disable GUI, scheme and tcl to avoid false alarms.
|
||||
# Check the valgrind output.
|
||||
# - If you have the efence library, enable it in "src/Makefile" and run "make
|
||||
# test". Disable Python and Ruby to avoid trouble with threads (efence is
|
||||
# not threadsafe).
|
||||
# - Adjust the date and other info in src/version.h.
|
||||
# - Correct included_patches[] in src/version.c.
|
||||
# - Check for missing entries in runtime/makemenu.vim (with checkmenu script).
|
||||
@@ -165,7 +162,7 @@ MINOR = 1
|
||||
# xxd/xxd.exe to xxdw32.exe
|
||||
# vim.pdb to vimw32.pdb
|
||||
# install.exe to installw32.exe
|
||||
# uninstal.exe to uninstalw32.exe
|
||||
# uninstall.exe to uninstallw32.exe
|
||||
# Win32 GUI version build:
|
||||
# - > cd src
|
||||
# > nmake -f Make_mvc.mak GUI=yes
|
||||
@@ -175,7 +172,7 @@ MINOR = 1
|
||||
# - move "gvim.exe" to here (otherwise the OLE version will overwrite it).
|
||||
# - Move gvim.pdb to here.
|
||||
# - Copy "GvimExt/gvimext.dll" to here.
|
||||
# - Delete vimrun.exe, install.exe and uninstal.exe.
|
||||
# - Delete vimrun.exe, install.exe and uninstall.exe.
|
||||
# Win32 GUI version with OLE, PERL, Ruby, TCL, PYTHON and dynamic IME:
|
||||
# - Install the interfaces you want, see src/INSTALLpc.txt
|
||||
# Adjust bigvim.bat to match the version of each interface you want.
|
||||
@@ -188,7 +185,7 @@ MINOR = 1
|
||||
# - check the output.
|
||||
# - Rename "gvim.exe" to "gvim_ole.exe".
|
||||
# - Rename gvim.pdb to "gvim_ole.pdb".
|
||||
# - Delete install.exe and uninstal.exe.
|
||||
# - Delete install.exe and uninstall.exe.
|
||||
# Create the archives:
|
||||
# - Copy all the "*.exe" files to where this Makefile is.
|
||||
# - Copy all the "*.pdb" files to where this Makefile is.
|
||||
@@ -197,7 +194,7 @@ MINOR = 1
|
||||
# NSIS self installing exe:
|
||||
# - To get NSIS see http://nsis.sourceforge.net
|
||||
# - Make sure gvim_ole.exe, vimw32.exe, installw32.exe,
|
||||
# uninstalw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
|
||||
# uninstallw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
|
||||
# above.
|
||||
# - copy these files (get them from a binary archive or build them):
|
||||
# gvimext.dll in src/GvimExt
|
||||
@@ -518,7 +515,7 @@ dosbin_gvim: dist no_title.vim dist/$(COMMENT_GVIM)
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
|
||||
mkdir dist/vim/$(VIMRTDIR)/GvimExt32
|
||||
cp gvimext.dll dist/vim/$(VIMRTDIR)/GvimExt32/gvimext.dll
|
||||
mkdir dist/vim/$(VIMRTDIR)/GvimExt64
|
||||
@@ -539,7 +536,7 @@ dosbin_w32: dist no_title.vim dist/$(COMMENT_W32)
|
||||
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)w32.zip vim <$(COMMENT_W32)
|
||||
cp vimw32.pdb dist/vim$(VERSION)w32.pdb
|
||||
|
||||
@@ -557,7 +554,7 @@ dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
|
||||
cp gvimext.dll dist/vim/$(VIMRTDIR)/gvimext.dll
|
||||
cp README_ole.txt dist/vim/$(VIMRTDIR)
|
||||
cp src/VisVim/VisVim.dll dist/vim/$(VIMRTDIR)/VisVim.dll
|
||||
|
||||
10
README.md
10
README.md
@@ -1,12 +1,14 @@
|
||||

|
||||
|
||||
[](https://travis-ci.org/vim/vim)
|
||||
[](https://travis-ci.org/vim/vim)
|
||||
[](https://ci.appveyor.com/project/chrisbra/vim)
|
||||
[](https://cirrus-ci.com/github/vim/vim)
|
||||
[](https://codecov.io/gh/vim/vim?branch=master)
|
||||
[](https://scan.coverity.com/projects/vim)
|
||||
[](https://lgtm.com/projects/g/vim/vim/context:cpp)
|
||||
[](https://buildd.debian.org/vim)
|
||||
[](https://repology.org/metapackage/vim)
|
||||
For translations of this README see the end.
|
||||
|
||||
|
||||
## What is Vim? ##
|
||||
@@ -29,7 +31,6 @@ almost all flavours of UNIX. Porting to other systems should not be very
|
||||
difficult. Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me, Amiga
|
||||
DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
|
||||
## Distribution ##
|
||||
|
||||
You can often use your favorite package manager to install Vim. On Mac and
|
||||
@@ -141,3 +142,8 @@ Send any other comments, patches, flowers and suggestions to:
|
||||
|
||||
|
||||
This is `README.md` for version 8.1 of Vim: Vi IMproved.
|
||||
|
||||
|
||||
## Translations of this README ##
|
||||
|
||||
[Korean](https://github.com/cjw1359/opensource/blob/master/Vim/README_ko.md)
|
||||
|
||||
@@ -11,8 +11,8 @@ Getting the source to z/OS:
|
||||
|
||||
First get the source code in one big tar file and ftp it a binary to z/OS. If
|
||||
the tar file is initially compressed with gzip (tar.gz) or bzip2 (tar.bz2)
|
||||
uncompress it on your PC, as this tools are (most likely) not available on the
|
||||
mainframe.
|
||||
uncompress it on your PC, as these tools are (most likely) not available on
|
||||
the mainframe.
|
||||
|
||||
To reduce the size of the tar file you might compress it into a zip file. On
|
||||
z/OS Unix you might have the command "jar" from java to uncompress a zip. Use:
|
||||
@@ -82,8 +82,8 @@ WARNING: This instruction was not tested with Vim 7.4 or later.
|
||||
|
||||
There are two ways for building VIM with X11 support. The first way is simple
|
||||
and results in a big executable (~13 Mb), the second needs a few additional
|
||||
steps and results in a much smaller executable (~4.5 Mb). This examples assume
|
||||
you want Motif.
|
||||
steps and results in a much smaller executable (~4.5 Mb). These examples
|
||||
assume you want Motif.
|
||||
|
||||
The easy way:
|
||||
$ export CC=cc
|
||||
|
||||
@@ -22,8 +22,10 @@ if "%FEATURE%" == "HUGE" (
|
||||
)
|
||||
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_ming.txt
|
||||
|
||||
:: 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"
|
||||
sed -e "s/\$(LINKARGS2)/\$(LINKARGS2) | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
|
||||
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=no IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
|
||||
nmake -f Make_mvc2.mak clean
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ To build the installable .exe:
|
||||
gvim.exe (the OLE version),
|
||||
vimrun.exe,
|
||||
install.exe,
|
||||
uninstal.exe,
|
||||
uninstall.exe,
|
||||
tee/tee.exe,
|
||||
xxd/xxd.exe,
|
||||
|
||||
|
||||
@@ -341,13 +341,13 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ${VIMSRC}\vim${BIT}.dll
|
||||
!endif
|
||||
File /oname=install.exe ${VIMSRC}\installw32.exe
|
||||
File /oname=uninstal.exe ${VIMSRC}\uninstalw32.exe
|
||||
File /oname=uninstall.exe ${VIMSRC}\uninstallw32.exe
|
||||
File ${VIMSRC}\vimrun.exe
|
||||
File /oname=tee.exe ${VIMSRC}\teew32.exe
|
||||
File /oname=xxd.exe ${VIMSRC}\xxdw32.exe
|
||||
File ..\vimtutor.bat
|
||||
File ..\README.txt
|
||||
File ..\uninstal.txt
|
||||
File ..\uninstall.txt
|
||||
File ${VIMRT}\*.vim
|
||||
File ${VIMRT}\rgb.txt
|
||||
|
||||
@@ -955,7 +955,7 @@ Section "un.$(str_unsection_register)" id_unsection_register
|
||||
|
||||
# delete the context menu entry and batch files
|
||||
DetailPrint "$(str_msg_unregistering)"
|
||||
nsExec::Exec "$0\uninstal.exe -nsis"
|
||||
nsExec::Exec "$0\uninstall.exe -nsis"
|
||||
Pop $3
|
||||
|
||||
# We may have been put to the background when uninstall did something.
|
||||
|
||||
280
nsis/lang/serbian.nsi
Normal file
280
nsis/lang/serbian.nsi
Normal file
@@ -0,0 +1,280 @@
|
||||
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
|
||||
#
|
||||
# serbian.nsi: Serbian language strings for gvim NSIS installer.
|
||||
#
|
||||
# Locale ID : 3098
|
||||
# fileencoding : UTF-8
|
||||
# Author : Ivan Pešić
|
||||
|
||||
!insertmacro MUI_LANGUAGE "Српски"
|
||||
|
||||
|
||||
# Overwrite the default translation.
|
||||
# These strings should be always English. Otherwise dosinst.c fails.
|
||||
LangString ^SetupCaption ${LANG_SERBIAN} \
|
||||
"$(^Name) Setup"
|
||||
LangString ^UninstallCaption ${LANG_SERBIAN} \
|
||||
"$(^Name) Uninstall"
|
||||
|
||||
##############################################################################
|
||||
# MUI Configuration Strings {{{1
|
||||
##############################################################################
|
||||
|
||||
#LangString str_dest_folder ${LANG_SERBIAN} \
|
||||
# "Destination Folder (Must end with $\"vim$\")"
|
||||
|
||||
LangString str_show_readme ${LANG_SERBIAN} \
|
||||
"Прикажи ПРОЧИТАЈМЕ када се заврши инсталација"
|
||||
|
||||
# Install types:
|
||||
LangString str_type_typical ${LANG_SERBIAN} \
|
||||
"Типична"
|
||||
|
||||
LangString str_type_minimal ${LANG_SERBIAN} \
|
||||
"Минимална"
|
||||
|
||||
LangString str_type_full ${LANG_SERBIAN} \
|
||||
"Пуна"
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Section Titles & Description {{{1
|
||||
##############################################################################
|
||||
|
||||
LangString str_section_old_ver ${LANG_SERBIAN} \
|
||||
"Уклањање постојећ(е/их) верзиј(е/а)"
|
||||
LangString str_desc_old_ver ${LANG_SERBIAN} \
|
||||
"Уклања постојећ(у/е) Vim верзииј(у/е) из вашег система."
|
||||
|
||||
LangString str_section_exe ${LANG_SERBIAN} \
|
||||
"Vim ГКИ и фајлови потребни за извршавање"
|
||||
LangString str_desc_exe ${LANG_SERBIAN} \
|
||||
"Vim ГКИ извршни фајлови и фајлови потребни током извршавања. Ова компонента је неопходна."
|
||||
|
||||
LangString str_section_console ${LANG_SERBIAN} \
|
||||
"Vim конзолни програм"
|
||||
LangString str_desc_console ${LANG_SERBIAN} \
|
||||
"Конзолна верзија програма Vim (vim.exe)."
|
||||
|
||||
LangString str_section_batch ${LANG_SERBIAN} \
|
||||
"Креирај .bat фајлове"
|
||||
LangString str_desc_batch ${LANG_SERBIAN} \
|
||||
"Креира у Windows директоријуму .bat фајлове за Vim варијанте \
|
||||
у циљу коришћења из командне линије."
|
||||
|
||||
LangString str_group_icons ${LANG_SERBIAN} \
|
||||
"Креирај иконе за Vim"
|
||||
LangString str_desc_icons ${LANG_SERBIAN} \
|
||||
"Креира иконе за Vim на различитим местима, како би се олакшао приступ."
|
||||
|
||||
LangString str_section_desktop ${LANG_SERBIAN} \
|
||||
"На радној површини"
|
||||
LangString str_desc_desktop ${LANG_SERBIAN} \
|
||||
"Креира иконе за gVim извршне фајлове на радној површини."
|
||||
|
||||
LangString str_section_start_menu ${LANG_SERBIAN} \
|
||||
"У фасцикли Програми унутар Старт менија"
|
||||
LangString str_desc_start_menu ${LANG_SERBIAN} \
|
||||
"Додаје Vim у фолдер Програми Старт менија."
|
||||
|
||||
#LangString str_section_quick_launch ${LANG_SERBIAN} \
|
||||
# "In the Quick Launch Bar"
|
||||
#LangString str_desc_quick_launch ${LANG_SERBIAN} \
|
||||
# "Add Vim shortcut in the quick launch bar."
|
||||
|
||||
LangString str_section_edit_with ${LANG_SERBIAN} \
|
||||
"Додај Vim контекстни мени"
|
||||
LangString str_desc_edit_with ${LANG_SERBIAN} \
|
||||
"Додаје Vim у $\"Отвори помоћу...$\" листу контекстног менија."
|
||||
|
||||
#LangString str_section_edit_with32 ${LANG_SERBIAN} \
|
||||
# "32-bit Version"
|
||||
#LangString str_desc_edit_with32 ${LANG_SERBIAN} \
|
||||
# "Add Vim to the $\"Open With...$\" context menu list \
|
||||
# for 32-bit applications."
|
||||
|
||||
#LangString str_section_edit_with64 ${LANG_SERBIAN} \
|
||||
# "64-bit Version"
|
||||
#LangString str_desc_edit_with64 ${LANG_SERBIAN} \
|
||||
# "Add Vim to the $\"Open With...$\" context menu list \
|
||||
# for 64-bit applications."
|
||||
|
||||
LangString str_section_vim_rc ${LANG_SERBIAN} \
|
||||
"Креирај Подразумевану конфигурацију"
|
||||
LangString str_desc_vim_rc ${LANG_SERBIAN} \
|
||||
"Креира подразумевани конфиг фајл (_vimrc) ако неки већ не постоји."
|
||||
|
||||
LangString str_group_plugin ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака"
|
||||
LangString str_desc_plugin ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака. Ови директоријуми омогућавају проширење програма Vim \
|
||||
убацивањем фајла у директоријум."
|
||||
|
||||
LangString str_section_plugin_home ${LANG_SERBIAN} \
|
||||
"Приватне"
|
||||
LangString str_desc_plugin_home ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака у HOME директоријуму."
|
||||
|
||||
LangString str_section_plugin_vim ${LANG_SERBIAN} \
|
||||
"Дељене"
|
||||
LangString str_desc_plugin_vim ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака у Vim инсталационом директоријуму, користе их сви \
|
||||
на систему."
|
||||
|
||||
LangString str_section_vis_vim ${LANG_SERBIAN} \
|
||||
"VisVim проширење"
|
||||
LangString str_desc_vis_vim ${LANG_SERBIAN} \
|
||||
"VisVim проширење за Microsoft Visual Studio интеграцију."
|
||||
|
||||
LangString str_section_nls ${LANG_SERBIAN} \
|
||||
"Подршка за домаћи језик"
|
||||
LangString str_desc_nls ${LANG_SERBIAN} \
|
||||
"Инсталира фајлове за домаћу језичку подршку."
|
||||
|
||||
LangString str_unsection_register ${LANG_SERBIAN} \
|
||||
"Поништи регистрацију Vim"
|
||||
LangString str_desc_unregister ${LANG_SERBIAN} \
|
||||
"Поништава регистрацију програма Vim на систему."
|
||||
|
||||
LangString str_unsection_exe ${LANG_SERBIAN} \
|
||||
"Уклони Vim извршне фајлове/фајлове потребне у време извршавања"
|
||||
LangString str_desc_rm_exe ${LANG_SERBIAN} \
|
||||
"Уклања све Vim извршне фајлове и оне потребне у време извршавања."
|
||||
|
||||
LangString str_ungroup_plugin ${LANG_SERBIAN} \
|
||||
"Укони директоријуме додатака"
|
||||
LangString str_desc_rm_plugin ${LANG_SERBIAN} \
|
||||
"Уклања директоријуме додатака ако су празни."
|
||||
|
||||
LangString str_unsection_plugin_home ${LANG_SERBIAN} \
|
||||
"Приватне"
|
||||
LangString str_desc_rm_plugin_home ${LANG_SERBIAN} \
|
||||
"Уклања директоријуме додатака из HOME директоријума."
|
||||
|
||||
LangString str_unsection_plugin_vim ${LANG_SERBIAN} \
|
||||
"Дељене"
|
||||
LangString str_desc_rm_plugin_vim ${LANG_SERBIAN} \
|
||||
"Уклања директоријуме додатака из Vim инсталациониг директоријума."
|
||||
|
||||
LangString str_unsection_rootdir ${LANG_SERBIAN} \
|
||||
"Уклони Vim корени директоријум"
|
||||
LangString str_desc_rm_rootdir ${LANG_SERBIAN} \
|
||||
"Уклања Vim корени директоријум. Он садржи ваше Vim конфигурационе фајлове!"
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Messages {{{1
|
||||
##############################################################################
|
||||
|
||||
#LangString str_msg_too_many_ver ${LANG_SERBIAN} \
|
||||
# "Found $vim_old_ver_count Vim versions on your system.$\r$\n\
|
||||
# This installer can only handle ${VIM_MAX_OLD_VER} versions \
|
||||
# at most.$\r$\n\
|
||||
# Please remove some versions and start again."
|
||||
|
||||
#LangString str_msg_invalid_root ${LANG_SERBIAN} \
|
||||
# "Invalid install path: $vim_install_root!$\r$\n\
|
||||
# It should end with $\"vim$\"."
|
||||
|
||||
#LangString str_msg_bin_mismatch ${LANG_SERBIAN} \
|
||||
# "Binary path mismatch!$\r$\n$\r$\n\
|
||||
# Expect the binary path to be $\"$vim_bin_path$\",$\r$\n\
|
||||
# but system indicates the binary path is $\"$INSTDIR$\"."
|
||||
|
||||
#LangString str_msg_vim_running ${LANG_SERBIAN} \
|
||||
# "Vim is still running on your system.$\r$\n\
|
||||
# Please close all instances of Vim before you continue."
|
||||
|
||||
#LangString str_msg_register_ole ${LANG_SERBIAN} \
|
||||
# "Attempting to register Vim with OLE. \
|
||||
# There is no message indicates whether this works or not."
|
||||
|
||||
#LangString str_msg_unreg_ole ${LANG_SERBIAN} \
|
||||
# "Attempting to unregister Vim with OLE. \
|
||||
# There is no message indicates whether this works or not."
|
||||
|
||||
#LangString str_msg_rm_start ${LANG_SERBIAN} \
|
||||
# "Uninstalling the following version:"
|
||||
|
||||
#LangString str_msg_rm_fail ${LANG_SERBIAN} \
|
||||
# "Fail to uninstall the following version:"
|
||||
|
||||
#LangString str_msg_no_rm_key ${LANG_SERBIAN} \
|
||||
# "Cannot find uninstaller registry key."
|
||||
|
||||
#LangString str_msg_no_rm_reg ${LANG_SERBIAN} \
|
||||
# "Cannot find uninstaller from registry."
|
||||
|
||||
#LangString str_msg_no_rm_exe ${LANG_SERBIAN} \
|
||||
# "Cannot access uninstaller."
|
||||
|
||||
#LangString str_msg_rm_copy_fail ${LANG_SERBIAN} \
|
||||
# "Fail to copy uninstaller to temporary directory."
|
||||
|
||||
#LangString str_msg_rm_run_fail ${LANG_SERBIAN} \
|
||||
# "Fail to run uninstaller."
|
||||
|
||||
#LangString str_msg_abort_install ${LANG_SERBIAN} \
|
||||
# "Installer will abort."
|
||||
|
||||
LangString str_msg_install_fail ${LANG_SERBIAN} \
|
||||
"Инсталација није успела. Више среће идући пут."
|
||||
|
||||
LangString str_msg_rm_exe_fail ${LANG_SERBIAN} \
|
||||
"Неки фајлови у $0 нису обрисани!$\r$\n\
|
||||
Морате то ручно да обавите."
|
||||
|
||||
#LangString str_msg_rm_root_fail ${LANG_SERBIAN} \
|
||||
# "WARNING: Cannot remove $\"$vim_install_root$\", it is not empty!"
|
||||
|
||||
LangString str_msg_uninstalling ${LANG_SERBIAN} \
|
||||
"Уклањање старе верзије..."
|
||||
|
||||
LangString str_msg_registering ${LANG_SERBIAN} \
|
||||
"Регистровање..."
|
||||
|
||||
LangString str_msg_unregistering ${LANG_SERBIAN} \
|
||||
"Поништавање регистрације..."
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Dialog Box {{{1
|
||||
##############################################################################
|
||||
|
||||
LangString str_vimrc_page_title ${LANG_SERBIAN} \
|
||||
"Изаберите _vimrc подешавања"
|
||||
LangString str_vimrc_page_subtitle ${LANG_SERBIAN} \
|
||||
"Изаберите подешавања за побољшања, тастатуру и миша."
|
||||
|
||||
LangString str_msg_compat_title ${LANG_SERBIAN} \
|
||||
" Vi / Vim понашање "
|
||||
LangString str_msg_compat_desc ${LANG_SERBIAN} \
|
||||
"&Компатибилност и побољшања"
|
||||
LangString str_msg_compat_vi ${LANG_SERBIAN} \
|
||||
"Vi компатибилно"
|
||||
LangString str_msg_compat_vim ${LANG_SERBIAN} \
|
||||
"Vim оригинално"
|
||||
LangString str_msg_compat_defaults ${LANG_SERBIAN} \
|
||||
"Vim са неким побољшањима (учитава defaults.vim)"
|
||||
LangString str_msg_compat_all ${LANG_SERBIAN} \
|
||||
"Vim са свим побољшањима (учитава vimrc_example.vim) (Подразумевано)"
|
||||
|
||||
LangString str_msg_keymap_title ${LANG_SERBIAN} \
|
||||
" Мапирања "
|
||||
LangString str_msg_keymap_desc ${LANG_SERBIAN} \
|
||||
"&Ремапира неколико тастера за Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, итд.)"
|
||||
LangString str_msg_keymap_default ${LANG_SERBIAN} \
|
||||
"Немој да ремапираш тастере (Подразумевано)"
|
||||
LangString str_msg_keymap_windows ${LANG_SERBIAN} \
|
||||
"Ремапира неколико тастера"
|
||||
|
||||
LangString str_msg_mouse_title ${LANG_SERBIAN} \
|
||||
" Миш "
|
||||
LangString str_msg_mouse_desc ${LANG_SERBIAN} \
|
||||
"&Понашање левог и десног тастера"
|
||||
LangString str_msg_mouse_default ${LANG_SERBIAN} \
|
||||
"Десни: искачући мени, Леви: визуелни режим (Подразумевано)"
|
||||
LangString str_msg_mouse_windows ${LANG_SERBIAN} \
|
||||
"Десни: искачући мени, Леви: режим избора (Windows)"
|
||||
LangString str_msg_mouse_unix ${LANG_SERBIAN} \
|
||||
"Десни: проширује избор, Леви: визуелни режим (Unix)"
|
||||
@@ -5,7 +5,7 @@
|
||||
#
|
||||
# Locale ID : 2052
|
||||
# fileencoding : UTF-8
|
||||
# Author : Guopeng Wen
|
||||
# Author : Guopeng Wen, David Liu
|
||||
|
||||
!insertmacro MUI_LANGUAGE "SimpChinese"
|
||||
|
||||
@@ -112,7 +112,7 @@ LangString str_desc_plugin ${LANG_SIMPCHINESE} \
|
||||
LangString str_section_plugin_home ${LANG_SIMPCHINESE} \
|
||||
"私有插件目录"
|
||||
LangString str_desc_plugin_home ${LANG_SIMPCHINESE} \
|
||||
"Create plugin directories in HOME directory."
|
||||
"在主目录创建私有插件目录。"
|
||||
|
||||
LangString str_section_plugin_vim ${LANG_SIMPCHINESE} \
|
||||
"公共插件目录"
|
||||
@@ -141,14 +141,14 @@ LangString str_desc_rm_exe ${LANG_SIMPCHINESE} \
|
||||
"删除 Vim 的所有执行文件及脚本。"
|
||||
|
||||
LangString str_ungroup_plugin ${LANG_SIMPCHINESE} \
|
||||
"Remove plugin directories"
|
||||
"移除插件目录"
|
||||
LangString str_desc_rm_plugin ${LANG_SIMPCHINESE} \
|
||||
"Remove the plugin directories if they are empty."
|
||||
"移除插件目录(如果目录为空)。"
|
||||
|
||||
LangString str_unsection_plugin_home ${LANG_SIMPCHINESE} \
|
||||
"私有插件目录"
|
||||
LangString str_desc_rm_plugin_home ${LANG_SIMPCHINESE} \
|
||||
"Remove the plugin directories from HOME directory."
|
||||
"从主目录中移除私有插件目录。"
|
||||
|
||||
LangString str_unsection_plugin_vim ${LANG_SIMPCHINESE} \
|
||||
"公共插件目录"
|
||||
@@ -241,37 +241,37 @@ LangString str_msg_unregistering ${LANG_SIMPCHINESE} \
|
||||
LangString str_vimrc_page_title ${LANG_SIMPCHINESE} \
|
||||
"设置 _vimrc"
|
||||
LangString str_vimrc_page_subtitle ${LANG_SIMPCHINESE} \
|
||||
"选择键盘、鼠标和增强选项。"
|
||||
"选择键盘、鼠标和扩展设置。"
|
||||
|
||||
LangString str_msg_compat_title ${LANG_SIMPCHINESE} \
|
||||
"Vi / Vim 行为"
|
||||
LangString str_msg_compat_desc ${LANG_SIMPCHINESE} \
|
||||
"&Compatibility and enhancements"
|
||||
"兼容性与扩展(&B)"
|
||||
LangString str_msg_compat_vi ${LANG_SIMPCHINESE} \
|
||||
"Vi compatible"
|
||||
"原始 Vi"
|
||||
LangString str_msg_compat_vim ${LANG_SIMPCHINESE} \
|
||||
"Vim original"
|
||||
"原始 Vim"
|
||||
LangString str_msg_compat_defaults ${LANG_SIMPCHINESE} \
|
||||
"Vim with some enhancements (load defaults.vim)"
|
||||
"Vim 原始版本和部分扩展 (加载 defaults.vim)"
|
||||
LangString str_msg_compat_all ${LANG_SIMPCHINESE} \
|
||||
"Vim with all enhancements (load vimrc_example.vim) (Default)"
|
||||
"Vim 原始版本和所有扩展 (加载 vimrc_example.vim) (缺省)"
|
||||
|
||||
LangString str_msg_keymap_title ${LANG_SIMPCHINESE} \
|
||||
"键盘映射"
|
||||
LangString str_msg_keymap_desc ${LANG_SIMPCHINESE} \
|
||||
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
|
||||
"为 Windows 映射按键(&R) (例如:Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F 等)"
|
||||
LangString str_msg_keymap_default ${LANG_SIMPCHINESE} \
|
||||
"Do not remap keys (Default)"
|
||||
"不映射按键 (缺省)"
|
||||
LangString str_msg_keymap_windows ${LANG_SIMPCHINESE} \
|
||||
"Remap a few keys"
|
||||
"映射一些按键"
|
||||
|
||||
LangString str_msg_mouse_title ${LANG_SIMPCHINESE} \
|
||||
"鼠标"
|
||||
LangString str_msg_mouse_desc ${LANG_SIMPCHINESE} \
|
||||
"&Behavior of right and left buttons"
|
||||
"左键和右键行为(&B)"
|
||||
LangString str_msg_mouse_default ${LANG_SIMPCHINESE} \
|
||||
"Right: popup menu, Left: visual mode (Default)"
|
||||
"右键:弹出菜单, 左键:可视化模式 (缺省)"
|
||||
LangString str_msg_mouse_windows ${LANG_SIMPCHINESE} \
|
||||
"Right: popup menu, Left: select mode (Windows)"
|
||||
"右键:弹出菜单, 左键:选择模式 (Windows)"
|
||||
LangString str_msg_mouse_unix ${LANG_SIMPCHINESE} \
|
||||
"Right: extends selection, Left: visual mode (Unix)"
|
||||
"右键: 扩展选择, 左键:可视化模式 (Unix)"
|
||||
|
||||
190
nsis/lang/turkish.nsi
Normal file
190
nsis/lang/turkish.nsi
Normal file
@@ -0,0 +1,190 @@
|
||||
# turkish.nsi: Turkish language strings for gvim NSIS installer.
|
||||
# fileencoding : UTF-8
|
||||
# Author : Emir SARI
|
||||
|
||||
!insertmacro MUI_LANGUAGE "Turkish"
|
||||
|
||||
# Overwrite the default translation.
|
||||
# These strings should be always English. Otherwise dosinst.c fails.
|
||||
LangString ^SetupCaption ${LANG_TURKISH} \
|
||||
"$(^Name) Setup"
|
||||
LangString ^UninstallCaption ${LANG_TURKISH} \
|
||||
"$(^Name) Uninstall"
|
||||
|
||||
LangString str_show_readme ${LANG_TURKISH} \
|
||||
"Kurulum bittikten sonra README dosyasını aç"
|
||||
|
||||
# Install types:
|
||||
LangString str_type_typical ${LANG_TURKISH} \
|
||||
"Normal"
|
||||
|
||||
LangString str_type_minimal ${LANG_TURKISH} \
|
||||
"Küçük"
|
||||
|
||||
LangString str_type_full ${LANG_TURKISH} \
|
||||
"Tam"
|
||||
|
||||
##############################################################################
|
||||
# Section Titles & Description {{{1
|
||||
##############################################################################
|
||||
|
||||
LangString str_section_old_ver ${LANG_TURKISH} \
|
||||
"Eski sürümü kaldır"
|
||||
LangString str_desc_old_ver ${LANG_TURKISH} \
|
||||
"Vim'in eski sürümünü sisteminizden kaldırır."
|
||||
|
||||
LangString str_section_exe ${LANG_TURKISH} \
|
||||
"Vim grafik arabirimi ve çalışma dosyaları"
|
||||
LangString str_desc_exe ${LANG_TURKISH} \
|
||||
"Vim program başlatıcı ve çalışma dosyaları. Bu bileşen zorunludur."
|
||||
|
||||
LangString str_section_console ${LANG_TURKISH} \
|
||||
"Vim konsol sürümü"
|
||||
LangString str_desc_console ${LANG_TURKISH} \
|
||||
"Vim'in konsol sürümü (vim.exe)."
|
||||
|
||||
LangString str_section_batch ${LANG_TURKISH} \
|
||||
".bat dosyaları oluştur"
|
||||
LangString str_desc_batch ${LANG_TURKISH} \
|
||||
"Vim için komut satırında kullanmak üzere .bat dosyaları oluşturur"
|
||||
|
||||
LangString str_group_icons ${LANG_TURKISH} \
|
||||
"Vim için kısayollar oluştur"
|
||||
LangString str_desc_icons ${LANG_TURKISH} \
|
||||
"Kolay erişim için Vim kısayolları oluşturur."
|
||||
|
||||
LangString str_section_desktop ${LANG_TURKISH} \
|
||||
"Masaüstünde"
|
||||
LangString str_desc_desktop ${LANG_TURKISH} \
|
||||
"gVim programı için Masaüstünde kısayol oluşturur."
|
||||
|
||||
LangString str_section_start_menu ${LANG_TURKISH} \
|
||||
"Başlat Menüsü - Programlar klasöründe"
|
||||
LangString str_desc_start_menu ${LANG_TURKISH} \
|
||||
"Vim kısayolunu Başlat Menüsüne ekler."
|
||||
|
||||
LangString str_section_edit_with ${LANG_TURKISH} \
|
||||
"Vim ile Aç"
|
||||
LangString str_desc_edit_with ${LANG_TURKISH} \
|
||||
"Vim'i $\"Birlikte aç$\" sağ tıklama menüsüne ekler."
|
||||
|
||||
LangString str_section_vim_rc ${LANG_TURKISH} \
|
||||
"Bir konfigürasyon dosyası oluştur"
|
||||
LangString str_desc_vim_rc ${LANG_TURKISH} \
|
||||
"Eğer yoksa bir konfigürasyon dosyası (_vimrc) oluşturur."
|
||||
|
||||
LangString str_group_plugin ${LANG_TURKISH} \
|
||||
"Eklenti dizinleri oluştur"
|
||||
LangString str_desc_plugin ${LANG_TURKISH} \
|
||||
"Bu dizinlere Vim eklentilerini yerleştirerek Vim'e yeni \
|
||||
özellikler kazandırabilirsiniz."
|
||||
|
||||
LangString str_section_plugin_home ${LANG_TURKISH} \
|
||||
"Gizli"
|
||||
LangString str_desc_plugin_home ${LANG_TURKISH} \
|
||||
"Eklenti dizinlerini EV dizininde oluşturur."
|
||||
|
||||
LangString str_section_plugin_vim ${LANG_TURKISH} \
|
||||
"Paylaşılan"
|
||||
LangString str_desc_plugin_vim ${LANG_TURKISH} \
|
||||
"Eklenti dizinlerini Vim yükleme dizininde oluşturur. Bu eklentilerden \
|
||||
bilgisayarın tüm kullanıcıları yararlanabilir."
|
||||
|
||||
LangString str_section_vis_vim ${LANG_TURKISH} \
|
||||
"VisVim eklentisi"
|
||||
LangString str_desc_vis_vim ${LANG_TURKISH} \
|
||||
"Microsoft Visual Studio entegrasyonu için VisVim eklentisi"
|
||||
|
||||
LangString str_section_nls ${LANG_TURKISH} \
|
||||
"Ek dil desteği"
|
||||
LangString str_desc_nls ${LANG_TURKISH} \
|
||||
"Mevcut olan Vim yerelleştirmelerini yükler."
|
||||
|
||||
LangString str_unsection_register ${LANG_TURKISH} \
|
||||
"Vim kaydını kaldır"
|
||||
LangString str_desc_unregister ${LANG_TURKISH} \
|
||||
"Vim'in bu bilgisayardaki kaydını kaldırır."
|
||||
|
||||
LangString str_unsection_exe ${LANG_TURKISH} \
|
||||
"Vim programını ve çalıştırma dosyalarını kaldır"
|
||||
LangString str_desc_rm_exe ${LANG_TURKISH} \
|
||||
"Tüm Vim çalıştırılabilir dosyalarını ve diğer dosyaları kaldırır."
|
||||
|
||||
LangString str_ungroup_plugin ${LANG_TURKISH} \
|
||||
"Eklenti dizinlerini kaldır"
|
||||
LangString str_desc_rm_plugin ${LANG_TURKISH} \
|
||||
"Eklenti dizinlerini eğer boş ise kaldırır."
|
||||
|
||||
LangString str_unsection_plugin_home ${LANG_TURKISH} \
|
||||
"Gizli"
|
||||
LangString str_desc_rm_plugin_home ${LANG_TURKISH} \
|
||||
"Eklenti dizinlerini EV dizininden kaldırır."
|
||||
|
||||
LangString str_unsection_plugin_vim ${LANG_TURKISH} \
|
||||
"Paylaşılan"
|
||||
LangString str_desc_rm_plugin_vim ${LANG_TURKISH} \
|
||||
"Eklenti dizinlerini Vim yükleme dizininden kaldırır."
|
||||
|
||||
LangString str_unsection_rootdir ${LANG_TURKISH} \
|
||||
"Vim kök dizinini kaldır"
|
||||
LangString str_desc_rm_rootdir ${LANG_TURKISH} \
|
||||
"Vim kök dizinini kaldırır. Bu dizin Vim konfigürasyon dosyalarını içerir!"
|
||||
|
||||
LangString str_msg_install_fail ${LANG_TURKISH} \
|
||||
"Yükleme başarısız oldu. Yeniden deneyin."
|
||||
|
||||
LangString str_msg_rm_exe_fail ${LANG_TURKISH} \
|
||||
"$0 içindeki bazı dosyalar silinemedi!$\r$\n\
|
||||
Bu dosyaları el ile kaldırmalısınız."
|
||||
|
||||
LangString str_msg_uninstalling ${LANG_TURKISH} \
|
||||
"Eski sürüm kaldırılıyor..."
|
||||
|
||||
LangString str_msg_registering ${LANG_TURKISH} \
|
||||
"Kaydediliyor..."
|
||||
|
||||
LangString str_msg_unregistering ${LANG_TURKISH} \
|
||||
"Kayıt siliniyor..."
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Dialog Box {{{1
|
||||
##############################################################################
|
||||
|
||||
LangString str_vimrc_page_title ${LANG_TURKISH} \
|
||||
"_vimrc ayarlarını seçin"
|
||||
LangString str_vimrc_page_subtitle ${LANG_TURKISH} \
|
||||
"Yüklenecek ek özellikler, klavye ve fare için ayarları seçin."
|
||||
|
||||
LangString str_msg_compat_title ${LANG_TURKISH} \
|
||||
" Vi / Vim davranışı "
|
||||
LangString str_msg_compat_desc ${LANG_TURKISH} \
|
||||
"&Uyumluluk ve ek özellikler"
|
||||
LangString str_msg_compat_vi ${LANG_TURKISH} \
|
||||
"Vi uyumlu"
|
||||
LangString str_msg_compat_vim ${LANG_TURKISH} \
|
||||
"Vim orijinal"
|
||||
LangString str_msg_compat_defaults ${LANG_TURKISH} \
|
||||
"Vim ve ek olarak bazı ek özellikler (load defaults.vim)"
|
||||
LangString str_msg_compat_all ${LANG_TURKISH} \
|
||||
"Vim ve ek olarak tüm ek özellikler (load vimrc_example.vim) (Default)"
|
||||
|
||||
LangString str_msg_keymap_title ${LANG_TURKISH} \
|
||||
" Klavye İşlevleri "
|
||||
LangString str_msg_keymap_desc ${LANG_TURKISH} \
|
||||
"&Windows için bazı düğmeleri yeniden ayarla (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
|
||||
LangString str_msg_keymap_default ${LANG_TURKISH} \
|
||||
"Düğme işlevlerini değiştirme (varsayılan)"
|
||||
LangString str_msg_keymap_windows ${LANG_TURKISH} \
|
||||
"Bazı düğmeleri yeniden ayarla"
|
||||
|
||||
LangString str_msg_mouse_title ${LANG_TURKISH} \
|
||||
" Fare İşlevleri "
|
||||
LangString str_msg_mouse_desc ${LANG_TURKISH} \
|
||||
"&Sağ ve sol düğme davranışı"
|
||||
LangString str_msg_mouse_default ${LANG_TURKISH} \
|
||||
"Sağ: açılır menü, Sol: Görsel Kip (varsayılan)"
|
||||
LangString str_msg_mouse_windows ${LANG_TURKISH} \
|
||||
"Sağ: açılır menü, Sol: seçim kipi (Windows)"
|
||||
LangString str_msg_mouse_unix ${LANG_TURKISH} \
|
||||
"Sağ: seçimi genişlet, Sol: Görsel Kip (Unix)"
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Haskell
|
||||
" Maintainer: Daniel Campoverde <alx@sillybytes.net>
|
||||
" URL: https://github.com/alx741/haskellcomplete.vim
|
||||
" Last Change: 2018 Aug 26
|
||||
" Last Change: 2019 May 14
|
||||
|
||||
" Usage: setlocal omnifunc=haskellcomplete#Complete
|
||||
|
||||
@@ -63,6 +63,7 @@ function! haskellcomplete#Complete(findstart, base)
|
||||
call add(l:matches, extension)
|
||||
endif
|
||||
endfor
|
||||
let b:completingLangExtension = 0
|
||||
return l:matches
|
||||
endif
|
||||
|
||||
@@ -78,6 +79,7 @@ function! haskellcomplete#Complete(findstart, base)
|
||||
call add(l:matches, flag)
|
||||
endif
|
||||
endfor
|
||||
let b:completingOptionsGHC = 0
|
||||
return l:matches
|
||||
endif
|
||||
|
||||
@@ -93,6 +95,7 @@ function! haskellcomplete#Complete(findstart, base)
|
||||
call add(l:matches, module)
|
||||
endif
|
||||
endfor
|
||||
let b:completingModule = 0
|
||||
return l:matches
|
||||
endif
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim completion script
|
||||
" Language: HTML and XHTML
|
||||
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||
" Last Change: 2014 Jun 20
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" Distinguish between HTML versions.
|
||||
" To use with other HTML versions add another "elseif" condition to match
|
||||
@@ -245,7 +245,8 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
||||
" If context contains white space it is attribute.
|
||||
" It can be also value of attribute.
|
||||
" We have to get first word to offer proper completions
|
||||
if context == ''
|
||||
if context =~ '^\s*$'
|
||||
" empty or whitespace line
|
||||
let tag = ''
|
||||
else
|
||||
let tag = split(context)[0]
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
" netrwSettings.vim: makes netrw settings simpler
|
||||
" Date: Dec 30, 2014
|
||||
" Date: Nov 09, 2016
|
||||
" Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Version: 15
|
||||
" Version: 16
|
||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
@@ -19,7 +19,7 @@
|
||||
if exists("g:loaded_netrwSettings") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwSettings = "v15"
|
||||
let g:loaded_netrwSettings = "v16"
|
||||
if v:version < 700
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
||||
@@ -154,9 +154,13 @@ fun! netrwSettings#NetrwSettings()
|
||||
put = 'let g:netrw_list_hide = '.g:netrw_list_hide
|
||||
put = 'let g:netrw_liststyle = '.g:netrw_liststyle
|
||||
put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd
|
||||
put = 'let g:netrw_localcopycmdopt = '.g:netrw_localcopycmdopt
|
||||
put = 'let g:netrw_localmkdir = '.g:netrw_localmkdir
|
||||
put = 'let g:netrw_localmkdiropt = '.g:netrw_localmkdiropt
|
||||
put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
|
||||
put = 'let g:netrw_localmovecmdopt = '.g:netrw_localmovecmdopt
|
||||
put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir
|
||||
put = 'let g:netrw_localrmdiropt = '.g:netrw_localrmdiropt
|
||||
put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
|
||||
put = 'let g:netrw_menu = '.g:netrw_menu
|
||||
put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps
|
||||
|
||||
@@ -18,61 +18,5 @@
|
||||
" holder be liable for any damages resulting from the use
|
||||
" of this software.
|
||||
function! netrw_gitignore#Hide(...)
|
||||
let additional_files = a:000
|
||||
|
||||
let default_files = ['.gitignore', '.git/info/exclude']
|
||||
|
||||
" get existing global/system gitignore files
|
||||
let global_gitignore = expand(substitute(system("git config --global core.excludesfile"), '\n', '', 'g'))
|
||||
if global_gitignore !=# ''
|
||||
let default_files = add(default_files, global_gitignore)
|
||||
endif
|
||||
let system_gitignore = expand(substitute(system("git config --system core.excludesfile"), '\n', '', 'g'))
|
||||
if system_gitignore !=# ''
|
||||
let default_files = add(default_files, system_gitignore)
|
||||
endif
|
||||
|
||||
" append additional files if given as function arguments
|
||||
if additional_files !=# []
|
||||
let files = extend(default_files, additional_files)
|
||||
else
|
||||
let files = default_files
|
||||
endif
|
||||
|
||||
" keep only existing/readable files
|
||||
let gitignore_files = []
|
||||
for file in files
|
||||
if filereadable(file)
|
||||
let gitignore_files = add(gitignore_files, file)
|
||||
endif
|
||||
endfor
|
||||
|
||||
" get contents of gitignore patterns from those files
|
||||
let gitignore_lines = []
|
||||
for file in gitignore_files
|
||||
for line in readfile(file)
|
||||
" filter empty lines and comments
|
||||
if line !~# '^#' && line !~# '^$'
|
||||
let gitignore_lines = add(gitignore_lines, line)
|
||||
endif
|
||||
endfor
|
||||
endfor
|
||||
|
||||
" convert gitignore patterns to Netrw/Vim regex patterns
|
||||
let escaped_lines = []
|
||||
for line in gitignore_lines
|
||||
let escaped = line
|
||||
let escaped = substitute(escaped, '\*\*', '*', 'g')
|
||||
let escaped = substitute(escaped, '\.', '\\.', 'g')
|
||||
let escaped = substitute(escaped, '\$', '\\$', 'g')
|
||||
let escaped = substitute(escaped, '*', '.*', 'g')
|
||||
" correction: dot, dollar and asterisks chars shouldn't be escaped when
|
||||
" within regex matching groups.
|
||||
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\\\.', '\.', 'g')
|
||||
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\\\$', '\$', 'g')
|
||||
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\.\*', '*', 'g')
|
||||
let escaped_lines = add(escaped_lines, escaped)
|
||||
endfor
|
||||
|
||||
return join(escaped_lines, ',')
|
||||
return substitute(substitute(system('git ls-files --other --ignored --exclude-standard --directory'), '\n', ',', 'g'), ',$', '', '')
|
||||
endfunction
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: All languages, uses existing syntax highlighting rules
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Version: 13.0
|
||||
" Last Change: 2013 May 14
|
||||
" Last Change: 2019 Aug 08
|
||||
" Usage: For detailed help, ":help ft-syntax-omni"
|
||||
|
||||
" History
|
||||
@@ -597,7 +597,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
|
||||
" Remove all non-word characters
|
||||
" let syn_list = substitute( syn_list, '\<match /\zs.\{-}\<\W\+\>.\{-}\ze\/ ', "", 'g' )
|
||||
" let syn_list = substitute( syn_list, '\%(\<match \/[^/]\{-}\)\@<=\W\+\ze.\{-}\/ ', ' ', 'g' )
|
||||
" Do this by using the outer substitue() call to gather all
|
||||
" Do this by using the outer substitute() call to gather all
|
||||
" text between the match /.../ tags.
|
||||
" The inner substitute() call operates on the text selected
|
||||
" and replaces all non-word characters.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim autoload file for the tohtml plugin.
|
||||
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
|
||||
" Last Change: 2018 Nov 11
|
||||
" Last Change: 2019 Aug 16
|
||||
"
|
||||
" Additional contributors:
|
||||
"
|
||||
@@ -364,6 +364,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
let body_line = ''
|
||||
|
||||
let html = []
|
||||
let s:html5 = 0
|
||||
if s:settings.use_xhtml
|
||||
call add(html, xml_line)
|
||||
endif
|
||||
@@ -371,8 +372,9 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
call add(html, "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">")
|
||||
call add(html, '<html xmlns="http://www.w3.org/1999/xhtml">')
|
||||
elseif s:settings.use_css && !s:settings.no_pre
|
||||
call add(html, "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">")
|
||||
call add(html, "<!DOCTYPE html>")
|
||||
call add(html, '<html>')
|
||||
let s:html5 = 1
|
||||
else
|
||||
call add(html, '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"')
|
||||
call add(html, ' "http://www.w3.org/TR/html4/loose.dtd">')
|
||||
@@ -383,7 +385,11 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" include encoding as close to the top as possible, but only if not already
|
||||
" contained in XML information
|
||||
if s:settings.encoding != "" && !s:settings.use_xhtml
|
||||
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close)
|
||||
if s:html5
|
||||
call add(html, '<meta charset="' . s:settings.encoding . '"' . tag_close)
|
||||
else
|
||||
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close)
|
||||
endif
|
||||
endif
|
||||
|
||||
call add(html, '<title>diff</title>')
|
||||
@@ -392,6 +398,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
call add(html, '<meta name="settings" content="'.
|
||||
\ join(filter(keys(s:settings),'s:settings[v:val]'),',').
|
||||
\ ',prevent_copy='.s:settings.prevent_copy.
|
||||
\ ',use_input_for_pc='.s:settings.use_input_for_pc.
|
||||
\ '"'.tag_close)
|
||||
call add(html, '<meta name="colorscheme" content="'.
|
||||
\ (exists('g:colors_name')
|
||||
@@ -400,16 +407,8 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
|
||||
call add(html, '</head>')
|
||||
let body_line_num = len(html)
|
||||
if !empty(s:settings.prevent_copy)
|
||||
call add(html, "<body onload='FixCharWidth();".(s:settings.line_ids ? " JumpToLine();" : "")."'>")
|
||||
call add(html, "<!-- hidden divs used by javascript to get the width of a char -->")
|
||||
call add(html, "<div id='oneCharWidth'>0</div>")
|
||||
call add(html, "<div id='oneInputWidth'><input size='1' value='0'".tag_close."</div>")
|
||||
call add(html, "<div id='oneEmWidth' style='width: 1em;'></div>")
|
||||
else
|
||||
call add(html, '<body'.(s:settings.line_ids ? ' onload="JumpToLine();"' : '').'>')
|
||||
endif
|
||||
call add(html, "<table border='1' width='100%' id='vimCodeElement".s:settings.id_suffix."'>")
|
||||
call add(html, '<body'.(s:settings.line_ids ? ' onload="JumpToLine();"' : '').'>')
|
||||
call add(html, "<table ".(s:settings.use_css? "" : "border='1' width='100%' ")."id='vimCodeElement".s:settings.id_suffix."'>")
|
||||
|
||||
call add(html, '<tr>')
|
||||
for buf in a:win_list
|
||||
@@ -443,7 +442,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" Grab the style information. Some of this will be duplicated so only insert
|
||||
" it if it's not already there. {{{
|
||||
1
|
||||
let style_start = search('^<style type="text/css">')
|
||||
let style_start = search('^<style\( type="text/css"\)\?>')
|
||||
1
|
||||
let style_end = search('^</style>')
|
||||
if style_start > 0 && style_end > 0
|
||||
@@ -481,7 +480,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" TODO: restore using grabbed lines if undolevel is 1?
|
||||
normal! 2u
|
||||
if s:settings.use_css
|
||||
call add(html, '<td valign="top"><div>')
|
||||
call add(html, '<td><div>')
|
||||
elseif s:settings.use_xhtml
|
||||
call add(html, '<td nowrap="nowrap" valign="top"><div>')
|
||||
else
|
||||
@@ -515,7 +514,13 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
let name = substitute(name, '\d*\.x\?html$', '', '') . i . '.' . fnamemodify(copy(name), ":t:e")
|
||||
let i += 1
|
||||
endwhile
|
||||
|
||||
let s:ei_sav = &eventignore
|
||||
set eventignore+=FileType
|
||||
exe "topleft new " . name
|
||||
let &eventignore=s:ei_sav
|
||||
unlet s:ei_sav
|
||||
|
||||
setlocal modifiable
|
||||
|
||||
" just in case some user autocmd creates content in the new buffer, make sure
|
||||
@@ -544,7 +549,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" add required javascript in reverse order so we can just call append again
|
||||
" and again without adjusting {{{
|
||||
|
||||
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids || !empty(s:settings.prevent_copy)
|
||||
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids
|
||||
|
||||
" insert script closing tag if needed
|
||||
if s:uses_script
|
||||
@@ -555,31 +560,6 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" insert script which corrects the size of small input elements in
|
||||
" prevent_copy mode. See 2html.vim for details on why this is needed and how
|
||||
" it works.
|
||||
if !empty(s:settings.prevent_copy)
|
||||
call append(style_start, [
|
||||
\ '',
|
||||
\ '/* simulate a "ch" unit by asking the browser how big a zero character is */',
|
||||
\ 'function FixCharWidth() {',
|
||||
\ ' /* get the hidden element which gives the width of a single character */',
|
||||
\ ' var goodWidth = document.getElementById("oneCharWidth").clientWidth;',
|
||||
\ ' /* get all input elements, we''ll filter on class later */',
|
||||
\ ' var inputTags = document.getElementsByTagName("input");',
|
||||
\ ' var ratio = 5;',
|
||||
\ ' var inputWidth = document.getElementById("oneInputWidth").clientWidth;',
|
||||
\ ' var emWidth = document.getElementById("oneEmWidth").clientWidth;',
|
||||
\ ' if (inputWidth > goodWidth) {',
|
||||
\ ' while (ratio < 100*goodWidth/emWidth && ratio < 100) {',
|
||||
\ ' ratio += 5;',
|
||||
\ ' }',
|
||||
\ ' document.getElementById("vimCodeElement'.s:settings.id_suffix.'").className = "em"+ratio;',
|
||||
\ ' }',
|
||||
\ '}'
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" insert javascript to get IDs from line numbers, and to open a fold before
|
||||
" jumping to any lines contained therein
|
||||
if s:settings.line_ids
|
||||
@@ -659,10 +639,9 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
endif
|
||||
|
||||
if s:uses_script
|
||||
" insert script tag; javascript is always needed for the line number
|
||||
" normalization for URL hashes
|
||||
" insert script tag if needed
|
||||
call append(style_start, [
|
||||
\ "<script type='text/javascript'>",
|
||||
\ "<script" . (s:html5 ? "" : " type='text/javascript'") . ">",
|
||||
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
|
||||
endif
|
||||
|
||||
@@ -673,11 +652,13 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" is pretty useless for really long lines. {{{
|
||||
if s:settings.use_css
|
||||
call append(style_start,
|
||||
\ ['<style type="text/css">']+
|
||||
\ ['<style' . (s:html5 ? '' : 'type="text/css"') . '>']+
|
||||
\ style+
|
||||
\ [ s:settings.use_xhtml ? '' : '<!--',
|
||||
\ 'table { table-layout: fixed; }',
|
||||
\ 'html, body, table, tbody { width: 100%; margin: 0; padding: 0; }',
|
||||
\ 'table, td, th { border: 1px solid; }',
|
||||
\ 'td { vertical-align: top; }',
|
||||
\ 'th, td { width: '.printf("%.1f",100.0/len(a:win_list)).'%; }',
|
||||
\ 'td div { overflow: auto; }',
|
||||
\ s:settings.use_xhtml ? '' : '-->',
|
||||
@@ -720,21 +701,22 @@ func! tohtml#GetUserSettings() "{{{
|
||||
endif
|
||||
|
||||
" get current option settings with appropriate defaults {{{
|
||||
call tohtml#GetOption(user_settings, 'no_progress', !has("statusline") )
|
||||
call tohtml#GetOption(user_settings, 'diff_one_file', 0 )
|
||||
call tohtml#GetOption(user_settings, 'number_lines', &number )
|
||||
call tohtml#GetOption(user_settings, 'pre_wrap', &wrap )
|
||||
call tohtml#GetOption(user_settings, 'use_css', 1 )
|
||||
call tohtml#GetOption(user_settings, 'ignore_conceal', 0 )
|
||||
call tohtml#GetOption(user_settings, 'ignore_folding', 0 )
|
||||
call tohtml#GetOption(user_settings, 'dynamic_folds', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_foldcolumn', user_settings.ignore_folding)
|
||||
call tohtml#GetOption(user_settings, 'hover_unfold', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_pre', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_invalid', 0 )
|
||||
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
|
||||
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
|
||||
call tohtml#GetOption(user_settings, 'line_ids', user_settings.number_lines )
|
||||
call tohtml#GetOption(user_settings, 'no_progress', !has("statusline") )
|
||||
call tohtml#GetOption(user_settings, 'diff_one_file', 0 )
|
||||
call tohtml#GetOption(user_settings, 'number_lines', &number )
|
||||
call tohtml#GetOption(user_settings, 'pre_wrap', &wrap )
|
||||
call tohtml#GetOption(user_settings, 'use_css', 1 )
|
||||
call tohtml#GetOption(user_settings, 'ignore_conceal', 0 )
|
||||
call tohtml#GetOption(user_settings, 'ignore_folding', 0 )
|
||||
call tohtml#GetOption(user_settings, 'dynamic_folds', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_foldcolumn', user_settings.ignore_folding)
|
||||
call tohtml#GetOption(user_settings, 'hover_unfold', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_pre', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_invalid', 0 )
|
||||
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
|
||||
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
|
||||
call tohtml#GetOption(user_settings, 'line_ids', user_settings.number_lines )
|
||||
call tohtml#GetOption(user_settings, 'use_input_for_pc', 'fallback')
|
||||
" }}}
|
||||
|
||||
" override those settings that need it {{{
|
||||
@@ -868,6 +850,16 @@ func! tohtml#GetUserSettings() "{{{
|
||||
let user_settings.no_invalid = 0
|
||||
endif
|
||||
|
||||
" enforce valid values for use_input_for_pc
|
||||
if user_settings.use_input_for_pc !~# 'fallback\|none\|all'
|
||||
let user_settings.use_input_for_pc = 'fallback'
|
||||
echohl WarningMsg
|
||||
echomsg '2html: "' . g:html_use_input_for_pc . '" is not valid for g:html_use_input_for_pc'
|
||||
echomsg '2html: defaulting to "' . user_settings.use_input_for_pc . '"'
|
||||
echohl None
|
||||
sleep 3
|
||||
endif
|
||||
|
||||
if exists('g:html_id_expr')
|
||||
let user_settings.id_suffix = eval(g:html_id_expr)
|
||||
if user_settings.id_suffix !~ '^[-_:.A-Za-z0-9]*$'
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim plugin for formatting XML
|
||||
" Last Change: Thu, 07 Dec 2018
|
||||
" Version: 0.1
|
||||
" Last Change: 2019 Oct 24
|
||||
" Version: 0.2
|
||||
" Author: Christian Brabandt <cb@256bit.org>
|
||||
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
|
||||
" License: VIM License
|
||||
@@ -22,44 +22,73 @@ func! xmlformat#Format()
|
||||
" do not fall back to internal formatting
|
||||
return 0
|
||||
endif
|
||||
let count_orig = v:count
|
||||
let sw = shiftwidth()
|
||||
let prev = prevnonblank(v:lnum-1)
|
||||
let s:indent = indent(prev)/sw
|
||||
let result = []
|
||||
let lastitem = prev ? getline(prev) : ''
|
||||
let is_xml_decl = 0
|
||||
" split on `<`, but don't split on very first opening <
|
||||
for item in split(join(getline(v:lnum, (v:lnum + v:count - 1))), '.\@<=[>]\zs')
|
||||
if s:EndTag(item)
|
||||
let s:indent = s:DecreaseIndent()
|
||||
call add(result, s:Indent(item))
|
||||
elseif s:EmptyTag(lastitem)
|
||||
call add(result, s:Indent(item))
|
||||
elseif s:StartTag(lastitem) && s:IsTag(item)
|
||||
let s:indent += 1
|
||||
call add(result, s:Indent(item))
|
||||
else
|
||||
if !s:IsTag(item)
|
||||
" Simply split on '<'
|
||||
let t=split(item, '.<\@=\zs')
|
||||
let s:indent+=1
|
||||
call add(result, s:Indent(t[0]))
|
||||
let s:indent = s:DecreaseIndent()
|
||||
call add(result, s:Indent(t[1]))
|
||||
else
|
||||
" go through every line, but don't join all content together and join it
|
||||
" back. We might lose empty lines
|
||||
let list = getline(v:lnum, (v:lnum + count_orig - 1))
|
||||
let current = 0
|
||||
for line in list
|
||||
" Keep empty input lines?
|
||||
if empty(line)
|
||||
call add(result, '')
|
||||
continue
|
||||
elseif line !~# '<[/]\?[^>]*>'
|
||||
let nextmatch = match(list, '<[/]\?[^>]*>', current)
|
||||
let line .= join(list[(current + 1):(nextmatch-1)], "\n")
|
||||
call remove(list, current+1, nextmatch-1)
|
||||
endif
|
||||
" split on `>`, but don't split on very first opening <
|
||||
" this means, items can be like ['<tag>', 'tag content</tag>']
|
||||
for item in split(line, '.\@<=[>]\zs')
|
||||
if s:EndTag(item)
|
||||
let s:indent = s:DecreaseIndent()
|
||||
call add(result, s:Indent(item))
|
||||
elseif s:EmptyTag(lastitem)
|
||||
call add(result, s:Indent(item))
|
||||
elseif s:StartTag(lastitem) && s:IsTag(item)
|
||||
let s:indent += 1
|
||||
call add(result, s:Indent(item))
|
||||
else
|
||||
if !s:IsTag(item)
|
||||
" Simply split on '<', if there is one,
|
||||
" but reformat according to &textwidth
|
||||
let t=split(item, '.<\@=\zs')
|
||||
" t should only contain 2 items, but just be safe here
|
||||
if s:IsTag(lastitem)
|
||||
let s:indent+=1
|
||||
endif
|
||||
let result+=s:FormatContent([t[0]])
|
||||
if s:EndTag(t[1])
|
||||
let s:indent = s:DecreaseIndent()
|
||||
endif
|
||||
"for y in t[1:]
|
||||
let result+=s:FormatContent(t[1:])
|
||||
"endfor
|
||||
else
|
||||
call add(result, s:Indent(item))
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
let lastitem = item
|
||||
endfor
|
||||
let lastitem = item
|
||||
endfor
|
||||
let current += 1
|
||||
endfor
|
||||
|
||||
if !empty(result)
|
||||
exe v:lnum. ",". (v:lnum + v:count - 1). 'd'
|
||||
if !empty(result)
|
||||
let lastprevline = getline(v:lnum + count_orig)
|
||||
let delete_lastline = v:lnum + count_orig - 1 == line('$')
|
||||
exe v:lnum. ",". (v:lnum + count_orig - 1). 'd'
|
||||
call append(v:lnum - 1, result)
|
||||
" Might need to remove the last line, if it became empty because of the
|
||||
" append() call
|
||||
let last = v:lnum + len(result)
|
||||
if getline(last) is ''
|
||||
" do not use empty(), it returns true for `empty(0)`
|
||||
if getline(last) is '' && lastprevline is '' && delete_lastline
|
||||
exe last. 'd'
|
||||
endif
|
||||
endif
|
||||
@@ -88,6 +117,7 @@ func! s:StartTag(tag)
|
||||
let is_comment = s:IsComment(a:tag)
|
||||
return a:tag =~? '^\s*<[^/?]' && !is_comment
|
||||
endfunc
|
||||
" Check if tag is a Comment start {{{1
|
||||
func! s:IsComment(tag)
|
||||
return a:tag =~? '<!--'
|
||||
endfunc
|
||||
@@ -108,6 +138,43 @@ endfunc
|
||||
func! s:EmptyTag(tag)
|
||||
return a:tag =~ '/>\s*$'
|
||||
endfunc
|
||||
" Format input line according to textwidth {{{1
|
||||
func! s:FormatContent(list)
|
||||
let result=[]
|
||||
let limit = 80
|
||||
if &textwidth > 0
|
||||
let limit = &textwidth
|
||||
endif
|
||||
let column=0
|
||||
let idx = -1
|
||||
let add_indent = 0
|
||||
let cnt = 0
|
||||
for item in a:list
|
||||
for word in split(item, '\s\+\S\+\zs')
|
||||
let column += strdisplaywidth(word, column)
|
||||
if match(word, "^\\s*\n\\+\\s*$") > -1
|
||||
call add(result, '')
|
||||
let idx += 1
|
||||
let column = 0
|
||||
let add_indent = 1
|
||||
elseif column > limit || cnt == 0
|
||||
let add = s:Indent(s:Trim(word))
|
||||
call add(result, add)
|
||||
let column = strdisplaywidth(add)
|
||||
let idx += 1
|
||||
else
|
||||
if add_indent
|
||||
let result[idx] = s:Indent(s:Trim(word))
|
||||
else
|
||||
let result[idx] .= ' '. s:Trim(word)
|
||||
endif
|
||||
let add_indent = 0
|
||||
endif
|
||||
let cnt += 1
|
||||
endfor
|
||||
endfor
|
||||
return result
|
||||
endfunc
|
||||
" Restoration And Modelines: {{{1
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
@@ -8,7 +8,7 @@ set cpo&vim
|
||||
func! Test_check_colors()
|
||||
let l:savedview = winsaveview()
|
||||
call cursor(1,1)
|
||||
let err={}
|
||||
let err = {}
|
||||
|
||||
" 1) Check g:colors_name is existing
|
||||
if !search('\<\%(g:\)\?colors_name\>', 'cnW')
|
||||
@@ -81,36 +81,39 @@ func! Test_check_colors()
|
||||
\ 'WarningMsg',
|
||||
\ 'WildMenu',
|
||||
\ ]
|
||||
let groups={}
|
||||
let groups = {}
|
||||
for group in hi_groups
|
||||
if search('\c@suppress\s\+'.group, 'cnW')
|
||||
if search('\c@suppress\s\+\<' .. group .. '\>', 'cnW')
|
||||
" skip check, if the script contains a line like
|
||||
" @suppress Visual:
|
||||
let groups[group] = 'Ignoring '.group
|
||||
continue
|
||||
endif
|
||||
if search('hi\%[ghlight]!\= \+link \+'.group, 'cnW') " Linked group
|
||||
if search('hi\%[ghlight]!\= \+link \+' .. group, 'cnW') " Linked group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group, 'cnW')
|
||||
let groups[group] = 'No highlight definition for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>', 'cnW')
|
||||
let groups[group] = 'No highlight definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*fg=', 'cnW')
|
||||
let groups[group] = 'Missing foreground color for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>.*[bf]g=', 'cnW')
|
||||
let groups[group] = 'Missing foreground or background color for ' .. group
|
||||
continue
|
||||
endif
|
||||
if search('hi\%[ghlight] \+'.group. '.*guibg=', 'cnW') &&
|
||||
\ !search('hi\%[ghlight] \+'.group. '.*ctermbg=', 'cnW')
|
||||
let groups[group] = 'Missing bg terminal color for '.group
|
||||
if search('hi\%[ghlight] \+\<' .. group .. '\>.*guibg=', 'cnW') &&
|
||||
\ !search('hi\%[ghlight] \+\<' .. group .. '\>.*ctermbg=', 'cnW')
|
||||
\ && group != 'Cursor'
|
||||
let groups[group] = 'Missing bg terminal color for ' .. group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*guifg=', 'cnW')
|
||||
let groups[group] = 'Missing guifg definition for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>.*guifg=', 'cnW')
|
||||
\ && group !~ '^Diff'
|
||||
let groups[group] = 'Missing guifg definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*ctermfg=', 'cnW')
|
||||
let groups[group] = 'Missing ctermfg definition for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>.*ctermfg=', 'cnW')
|
||||
\ && group !~ '^Diff'
|
||||
\ && group != 'Cursor'
|
||||
let groups[group] = 'Missing ctermfg definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
" do not check for background colors, they could be intentionally left out
|
||||
@@ -120,10 +123,10 @@ func! Test_check_colors()
|
||||
|
||||
" 3) Check, that it does not set background highlighting
|
||||
" Doesn't ':hi Normal ctermfg=253 ctermfg=233' also set the background sometimes?
|
||||
let bg_set='\(set\?\|setl\(ocal\)\?\) .*\(background\|bg\)=\(dark\|light\)'
|
||||
let bg_let='let \%([&]\%([lg]:\)\?\)\%(background\|bg\)\s*=\s*\([''"]\?\)\w\+\1'
|
||||
let bg_pat='\%('.bg_set. '\|'.bg_let.'\)'
|
||||
let line=search(bg_pat, 'cnW')
|
||||
let bg_set = '\(set\?\|setl\(ocal\)\?\) .*\(background\|bg\)=\(dark\|light\)'
|
||||
let bg_let = 'let \%([&]\%([lg]:\)\?\)\%(background\|bg\)\s*=\s*\([''"]\?\)\w\+\1'
|
||||
let bg_pat = '\%(' .. bg_set .. '\|' .. bg_let .. '\)'
|
||||
let line = search(bg_pat, 'cnW')
|
||||
if search(bg_pat, 'cnW')
|
||||
exe line
|
||||
if search('hi \U\w\+\s\+\S', 'cbnW')
|
||||
@@ -145,7 +148,7 @@ func! Test_check_colors()
|
||||
" if exists("syntax_on")
|
||||
" syntax reset
|
||||
" endif
|
||||
let pat='hi\%[ghlight]\s*clear\n\s*if\s*exists(\([''"]\)syntax_on\1)\n\s*syn\%[tax]\s*reset\n\s*endif'
|
||||
let pat = 'hi\%[ghlight]\s*clear\n\s*if\s*exists(\([''"]\)syntax_on\1)\n\s*syn\%[tax]\s*reset\n\s*endif'
|
||||
if !search(pat, 'cnW')
|
||||
let err['init'] = 'No initialization'
|
||||
endif
|
||||
@@ -160,7 +163,7 @@ func! Test_check_colors()
|
||||
let ft_groups = []
|
||||
" let group = '\%('.join(hi_groups, '\|').'\)' " More efficient than a for loop, but less informative
|
||||
for group in hi_groups
|
||||
let pat='\Chi\%[ghlight]!\= *\%[link] \+\zs'.group.'\w\+\>\ze \+.' " Skips `hi clear`
|
||||
let pat = '\Chi\%[ghlight]!\= *\%[link] \+\zs' .. group .. '\w\+\>\ze \+.' " Skips `hi clear`
|
||||
if search(pat, 'cW')
|
||||
call add(ft_groups, matchstr(getline('.'), pat))
|
||||
endif
|
||||
@@ -172,7 +175,7 @@ func! Test_check_colors()
|
||||
|
||||
" 8) Were debugPC and debugBreakpoint defined?
|
||||
for group in ['debugPC', 'debugBreakpoint']
|
||||
let pat='\Chi\%[ghlight]!\= *\%[link] \+\zs'.group.'\>'
|
||||
let pat = '\Chi\%[ghlight]!\= *\%[link] \+\zs' .. group .. '\>'
|
||||
if search(pat, 'cnW')
|
||||
let line = search(pat, 'cW')
|
||||
let err['filetype'] = get(err, 'filetype', 'Should not define: ') . matchstr(getline('.'), pat). ' '
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Microsoft Visual Studio C#
|
||||
" Maintainer: Zhou YiChao (broken.zhou@gmail.com)
|
||||
" Previous Maintainer: Joseph H. Yao (hyao@sina.com)
|
||||
" Last Change: 2012 Apr 30
|
||||
" Compiler: Microsoft Visual Studio C#
|
||||
" Maintainer: Yichao Zhou (broken.zhou@gmail.com)
|
||||
" Previous Maintainer: Joseph H. Yao (hyao@sina.com)
|
||||
" Last Change: Jul 22, 2019
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -20,7 +20,7 @@ CompilerSet errorformat+=%f(%l\\,%v):\ %t%*[^:]:\ %m,
|
||||
\%trror%*[^:]:\ %m,
|
||||
\%tarning%*[^:]:\ %m
|
||||
|
||||
CompilerSet makeprg=csc\ %
|
||||
CompilerSet makeprg=csc\ %:S
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Erlang
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" Last Change: 2012-02-13
|
||||
" Last Change: 2019 Jul 23
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "erlang"
|
||||
|
||||
CompilerSet makeprg=erlc\ -Wall\ %
|
||||
CompilerSet makeprg=erlc\ -Wall\ %:S
|
||||
|
||||
CompilerSet errorformat=%f:%l:\ %m
|
||||
|
||||
@@ -22,7 +22,7 @@ CompilerSet errorformat=
|
||||
\%-Z%p%^%.%#,
|
||||
\%-G%.%#,
|
||||
" Compiler call
|
||||
CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %
|
||||
CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %:S
|
||||
" Visual fortran defaults to printing output on stderr
|
||||
" Adjust option shellpipe accordingly
|
||||
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
" Compiler: GNU C Compiler
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2010-10-14
|
||||
" changed pattern for entering/leaving directories
|
||||
" by Daniel Hahler, 2019 Jul 12
|
||||
" added line suggested by Anton Lindqvist 2016 Mar 31
|
||||
|
||||
if exists("current_compiler")
|
||||
@@ -27,10 +29,10 @@ CompilerSet errorformat=
|
||||
\%f:%l:\ %m,
|
||||
\%f:\\(%*[^\\)]\\):\ %m,
|
||||
\\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m,
|
||||
\%D%*\\a[%*\\d]:\ Entering\ directory\ [`']%f',
|
||||
\%X%*\\a[%*\\d]:\ Leaving\ directory\ [`']%f',
|
||||
\%D%*\\a:\ Entering\ directory\ [`']%f',
|
||||
\%X%*\\a:\ Leaving\ directory\ [`']%f',
|
||||
\%D%*\\a[%*\\d]:\ Entering\ directory\ %*[`']%f',
|
||||
\%X%*\\a[%*\\d]:\ Leaving\ directory\ %*[`']%f',
|
||||
\%D%*\\a:\ Entering\ directory\ %*[`']%f',
|
||||
\%X%*\\a:\ Leaving\ directory\ %*[`']%f',
|
||||
\%DMaking\ %*\\a\ in\ %f
|
||||
|
||||
if exists('g:compiler_gcc_ignore_unmatched_lines')
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: Jikes
|
||||
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
|
||||
" Last Change: 20 Jan 2009
|
||||
" Last Change: 2019 Jul 23
|
||||
" URL: http://dwsharp.users.sourceforge.net/vim/compiler
|
||||
|
||||
if exists("current_compiler")
|
||||
@@ -14,5 +14,5 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
endif
|
||||
|
||||
" Jikes defaults to printing output on stderr
|
||||
CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%\"
|
||||
CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%:S\"
|
||||
CompilerSet errorformat=%f:%l:%v:%*\\d:%*\\d:%*\\s%m
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: onsgmls
|
||||
" Maintainer: Robert Rowsome <rowsome@wam.umd.edu>
|
||||
" Last Change: 2004 Mar 27
|
||||
" Last Change: 2019 Jul 23
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -15,7 +15,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
CompilerSet makeprg=onsgmls\ -s\ %
|
||||
CompilerSet makeprg=onsgmls\ -s\ %:S
|
||||
|
||||
CompilerSet errorformat=onsgmls:%f:%l:%c:%t:%m,
|
||||
\onsgmls:%f:%l:%c:%m
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: Perl syntax checks (perl -Wc)
|
||||
" Maintainer: Christian J. Robinson <heptite@gmail.com>
|
||||
" Last Change: 2006 Aug 13
|
||||
" Last Change: 2019 Jul 22
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -27,7 +27,7 @@ else
|
||||
let s:taintopt = ''
|
||||
endif
|
||||
|
||||
exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %'
|
||||
exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %:S'
|
||||
|
||||
CompilerSet errorformat=
|
||||
\%-G%.%#had\ compilation\ errors.,
|
||||
|
||||
@@ -19,7 +19,7 @@ endif
|
||||
if exists("g:rustc_makeprg_no_percent") && g:rustc_makeprg_no_percent != 0
|
||||
CompilerSet makeprg=rustc
|
||||
else
|
||||
CompilerSet makeprg=rustc\ \%
|
||||
CompilerSet makeprg=rustc\ \%:S
|
||||
endif
|
||||
|
||||
" Old errorformat (before nightly 2016/08/10)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Compiler: splint/lclint (C source code checker)
|
||||
" Maintainer: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||
" Splint Home: http://www.splint.org/
|
||||
" Last Change: 2005 Apr 21
|
||||
" Last Change: 2019 Jul 23
|
||||
" $Revision: 1.3 $
|
||||
|
||||
if exists("current_compiler")
|
||||
@@ -19,7 +19,7 @@ set cpo-=C
|
||||
|
||||
" adapt this if you want to check more than one file at a time.
|
||||
" put command line options in .splintrc or ~/.splintrc
|
||||
CompilerSet makeprg=splint\ %
|
||||
CompilerSet makeprg=splint\ %:S
|
||||
|
||||
" Note: when using the new array bounds checking flags: Each warning
|
||||
" usually has several lines and several references to source code mostly
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: xmlwf
|
||||
" Maintainer: Robert Rowsome <rowsome@wam.umd.edu>
|
||||
" Last Change: 2004 Mar 27
|
||||
" Last Change: 2019 Jul 23
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -15,7 +15,7 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet makeprg=xmlwf\ %
|
||||
CompilerSet makeprg=xmlwf\ %:S
|
||||
|
||||
CompilerSet errorformat=%f:%l%c:%m
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" The default vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2019 Feb 18
|
||||
" Last change: 2019 Oct 27
|
||||
"
|
||||
" This is loaded if no vimrc file was found.
|
||||
" Except when Vim is run with "-u NONE" or "-C".
|
||||
@@ -75,8 +75,14 @@ inoremap <C-U> <C-G>u<C-U>
|
||||
|
||||
" In many terminal emulators the mouse works just fine. By enabling it you
|
||||
" can position the cursor, Visually select and scroll with the mouse.
|
||||
" Only xterm can grab the mouse events when using the shift key, for other
|
||||
" terminals use ":", select text and press Esc.
|
||||
if has('mouse')
|
||||
set mouse=a
|
||||
if &term =~ 'xterm'
|
||||
set mouse=a
|
||||
else
|
||||
set mouse=nvi
|
||||
endif
|
||||
endif
|
||||
|
||||
" Switch syntax highlighting on when the terminal has colors or when using the
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Warning: This also deletes all menus defined by the user!
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2001 May 27
|
||||
" Last Change: 2019 Sep 11
|
||||
|
||||
aunmenu *
|
||||
tlunmenu *
|
||||
@@ -21,6 +21,11 @@ silent! unlet menutrans_path_dialog
|
||||
silent! unlet menutrans_tags_dialog
|
||||
silent! unlet menutrans_textwidth_dialog
|
||||
silent! unlet menutrans_fileformat_dialog
|
||||
silent! unlet menutrans_fileformat_choices
|
||||
silent! unlet menutrans_no_file
|
||||
silent! unlet menutrans_set_lang_to
|
||||
silent! unlet menutrans_spell_change_ARG_to
|
||||
silent! unlet menutrans_spell_add_ARG_to_word_list
|
||||
silent! unlet menutrans_spell_ignore_ARG
|
||||
|
||||
" vim: set sw=2 :
|
||||
|
||||
@@ -103,6 +103,7 @@ DOCS = \
|
||||
tagsrch.txt \
|
||||
term.txt \
|
||||
terminal.txt \
|
||||
testing.txt \
|
||||
textprop.txt \
|
||||
tips.txt \
|
||||
todo.txt \
|
||||
@@ -241,6 +242,7 @@ HTMLS = \
|
||||
tagsrch.html \
|
||||
term.html \
|
||||
terminal.html \
|
||||
testing.html \
|
||||
textprop.html \
|
||||
tips.html \
|
||||
todo.html \
|
||||
@@ -321,7 +323,10 @@ all: tags vim.man evim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
|
||||
# Use Vim to generate the tags file. Can only be used when Vim has been
|
||||
# compiled and installed. Supports multiple languages.
|
||||
vimtags: $(DOCS)
|
||||
$(VIMEXE) -u NONE -esX -c "helptags ++t ." -c quit
|
||||
@if command -v $(VIMEXE); then \
|
||||
$(VIMEXE) --clean -eX -u doctags.vim >/dev/null && \
|
||||
echo "help tags updated"; \
|
||||
else echo "vim executable $(VIMEXE) not found; help tags not updated"; fi
|
||||
|
||||
# Use "doctags" to generate the tags file. Only works for English!
|
||||
tags: doctags $(DOCS)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 8.1. Last change: 2019 Jun 26
|
||||
*autocmd.txt* For Vim version 8.1. Last change: 2019 Sep 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -268,7 +268,6 @@ Name triggered by ~
|
||||
|BufCreate| just after adding a buffer to the buffer list
|
||||
|BufDelete| before deleting a buffer from the buffer list
|
||||
|BufWipeout| before completely deleting a buffer
|
||||
|TerminalOpen| after a terminal buffer was created
|
||||
|
||||
|BufFilePre| before changing the name of the current buffer
|
||||
|BufFilePost| after changing the name of the current buffer
|
||||
@@ -302,6 +301,10 @@ Name triggered by ~
|
||||
|VimLeavePre| before exiting Vim, before writing the viminfo file
|
||||
|VimLeave| before exiting Vim, after writing the viminfo file
|
||||
|
||||
Terminal
|
||||
|TerminalOpen| after a terminal buffer was created
|
||||
|TerminalWinOpen| after a terminal buffer was created in a new window
|
||||
|
||||
Various
|
||||
|FileChangedShell| Vim notices that a file changed since editing started
|
||||
|FileChangedShellPost| After handling a file changed since editing started
|
||||
@@ -355,6 +358,10 @@ Name triggered by ~
|
||||
when popup menu visible
|
||||
|TextYankPost| after text has been yanked or deleted
|
||||
|
||||
|SafeState| nothing pending, going to wait for the user to type a
|
||||
character
|
||||
|SafeStateAgain| repeated SafeState
|
||||
|
||||
|ColorSchemePre| before loading a color scheme
|
||||
|ColorScheme| after loading a color scheme
|
||||
|
||||
@@ -554,16 +561,14 @@ CmdlineLeave Before leaving the command line.
|
||||
*CmdwinEnter*
|
||||
CmdwinEnter After entering the command-line window.
|
||||
Useful for setting options specifically for
|
||||
this special type of window. This is
|
||||
triggered _instead_ of BufEnter and WinEnter.
|
||||
this special type of window.
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
*CmdwinLeave*
|
||||
CmdwinLeave Before leaving the command-line window.
|
||||
Useful to clean up any global setting done
|
||||
with CmdwinEnter. This is triggered _instead_
|
||||
of BufLeave and WinLeave.
|
||||
with CmdwinEnter.
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
@@ -579,7 +584,7 @@ ColorScheme After loading a color scheme. |:colorscheme|
|
||||
ColorSchemePre Before loading a color scheme. |:colorscheme|
|
||||
Useful to setup removing things added by a
|
||||
color scheme, before another one is loaded.
|
||||
CompleteChanged *CompleteChanged*
|
||||
CompleteChanged *CompleteChanged*
|
||||
After each time the Insert mode completion
|
||||
menu changed. Not fired on popup menu hide,
|
||||
use |CompleteDone| for that. Never triggered
|
||||
@@ -595,6 +600,10 @@ CompleteChanged *CompleteChanged*
|
||||
scrollbar TRUE if visible
|
||||
|
||||
It is not allowed to change the text |textlock|.
|
||||
|
||||
The size and position of the popup are also
|
||||
available by calling |pum_getpos()|.
|
||||
|
||||
*CompleteDone*
|
||||
CompleteDone After Insert mode completion is done. Either
|
||||
when something was completed or abandoning
|
||||
@@ -953,6 +962,32 @@ RemoteReply When a reply from a Vim that functions as
|
||||
Note that even if an autocommand is defined,
|
||||
the reply should be read with |remote_read()|
|
||||
to consume it.
|
||||
*SafeState*
|
||||
SafeState When nothing is pending, going to wait for the
|
||||
user to type a character.
|
||||
This will not be triggered when:
|
||||
- an operator is pending
|
||||
- a register was entered with "r
|
||||
- halfway executing a command
|
||||
- executing a mapping
|
||||
- there is typeahead
|
||||
- Insert mode completion is active
|
||||
- Command line completion is active
|
||||
You can use `mode()` to find out what state
|
||||
Vim is in. That may be:
|
||||
- VIsual mode
|
||||
- Normal mode
|
||||
- Insert mode
|
||||
- Command-line mode
|
||||
Depending on what you want to do, you may also
|
||||
check more with `state()`, e.g. whether the
|
||||
screen was scrolled for messages.
|
||||
*SafeStateAgain*
|
||||
SafeStateAgain Like SafeState but after processing any
|
||||
messages and invoking callbacks. This may be
|
||||
triggered often, don't do something that takes
|
||||
time.
|
||||
|
||||
*SessionLoadPost*
|
||||
SessionLoadPost After loading the session file created using
|
||||
the |:mksession| command.
|
||||
@@ -1049,6 +1084,12 @@ TerminalOpen Just after a terminal buffer was created, with
|
||||
`:terminal` or |term_start()|. This event is
|
||||
triggered even if the buffer is created
|
||||
without a window, with the ++hidden option.
|
||||
*TerminalWinOpen*
|
||||
TerminalWinOpen Just after a terminal buffer was created, with
|
||||
`:terminal` or |term_start()|. This event is
|
||||
triggered only if the buffer is created
|
||||
with a window. Can be used to set window
|
||||
local options for the terminal window.
|
||||
*TermResponse*
|
||||
TermResponse After the response to |t_RV| is received from
|
||||
the terminal. The value of |v:termresponse|
|
||||
@@ -1085,8 +1126,8 @@ TextYankPost After text has been yanked or deleted in the
|
||||
current buffer. The following values of
|
||||
|v:event| can be used to determine the operation
|
||||
that triggered this autocmd:
|
||||
operator The operation performed.
|
||||
regcontents Text that was stored in the
|
||||
operator The operation performed.
|
||||
regcontents Text that was stored in the
|
||||
register, as a list of lines,
|
||||
like with: >
|
||||
getreg(r, 1, 1)
|
||||
@@ -1122,7 +1163,7 @@ VimEnter After doing all the startup stuff, including
|
||||
if v:vim_did_enter
|
||||
call s:init()
|
||||
else
|
||||
au VimEnter * call s:init()
|
||||
au VimEnter * call s:init()
|
||||
endif
|
||||
< *VimLeave*
|
||||
VimLeave Before exiting Vim, just after writing the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*change.txt* For Vim version 8.1. Last change: 2019 Sep 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -691,10 +691,8 @@ The flags that you can use for the substitute commands:
|
||||
<Esc> to quit substituting
|
||||
'a' to substitute this and all remaining matches
|
||||
'q' to quit substituting
|
||||
CTRL-E to scroll the screen up {not available when compiled
|
||||
without the |+insert_expand| feature}
|
||||
CTRL-Y to scroll the screen down {not available when compiled
|
||||
without the |+insert_expand| feature}
|
||||
CTRL-E to scroll the screen up
|
||||
CTRL-Y to scroll the screen down
|
||||
If the 'edcompatible' option is on, Vim remembers the [c] flag and
|
||||
toggles it each time you use it, but resets it when you give a new
|
||||
search pattern.
|
||||
@@ -1001,9 +999,13 @@ inside of strings can change! Also see 'softtabstop' option. >
|
||||
delete and yank) ({.%#:} only work with put).
|
||||
|
||||
*:reg* *:registers*
|
||||
:reg[isters] Display the contents of all numbered and named
|
||||
registers. If a register is written to for |:redir|
|
||||
it will not be listed.
|
||||
:reg[isters] Display the type and contents of all numbered and
|
||||
named registers. If a register is written to for
|
||||
|:redir| it will not be listed.
|
||||
Type can be one of:
|
||||
"c" for |characterwise| text
|
||||
"l" for |linewise| text
|
||||
"b" for |blockwise-visual| text
|
||||
|
||||
|
||||
:reg[isters] {arg} Display the contents of the numbered and named
|
||||
@@ -1174,14 +1176,14 @@ Rationale: In Vi the "y" command followed by a backwards motion would
|
||||
With a linewise yank command the cursor is put in the first line, but the
|
||||
column is unmodified, thus it may not be on the first yanked character.
|
||||
|
||||
There are ten types of registers: *registers* *E354*
|
||||
There are ten types of registers: *registers* *{register}* *E354*
|
||||
1. The unnamed register ""
|
||||
2. 10 numbered registers "0 to "9
|
||||
3. The small delete register "-
|
||||
4. 26 named registers "a to "z or "A to "Z
|
||||
5. three read-only registers ":, "., "%
|
||||
6. alternate buffer register "#
|
||||
7. the expression register "=
|
||||
5. Three read-only registers ":, "., "%
|
||||
6. Alternate buffer register "#
|
||||
7. The expression register "=
|
||||
8. The selection and drop registers "*, "+ and "~
|
||||
9. The black hole register "_
|
||||
10. Last search pattern register "/
|
||||
@@ -1314,7 +1316,7 @@ When writing to this register, nothing happens. This can be used to delete
|
||||
text without affecting the normal registers. When reading from this register,
|
||||
nothing is returned.
|
||||
|
||||
10. Last search pattern register "/ *quote_/* *quote/*
|
||||
10. Last search pattern register "/ *quote_/* *quote/*
|
||||
Contains the most recent search-pattern. This is used for "n" and 'hlsearch'.
|
||||
It is writable with `:let`, you can change it to have 'hlsearch' highlight
|
||||
other matches without actually searching. You can't yank or delete into this
|
||||
@@ -1620,8 +1622,6 @@ By default, "b:#" is included. This means that a line that starts with
|
||||
"#include" is not recognized as a comment line. But a line that starts with
|
||||
"# define" is recognized. This is a compromise.
|
||||
|
||||
{not available when compiled without the |+comments| feature}
|
||||
|
||||
*fo-table*
|
||||
You can use the 'formatoptions' option to influence how Vim formats text.
|
||||
'formatoptions' is a string that can contain any of the letters below. The
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 May 12
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -18,11 +18,13 @@ The Netbeans interface also uses a channel. |netbeans|
|
||||
5. Channel commands |channel-commands|
|
||||
6. Using a RAW or NL channel |channel-raw|
|
||||
7. More channel functions |channel-more|
|
||||
8. Starting a job with a channel |job-start|
|
||||
9. Starting a job without a channel |job-start-nochannel|
|
||||
10. Job options |job-options|
|
||||
11. Controlling a job |job-control|
|
||||
12. Using a prompt buffer |prompt-buffer|
|
||||
8. Channel functions details |channel-functions-details|
|
||||
9. Starting a job with a channel |job-start|
|
||||
10. Starting a job without a channel |job-start-nochannel|
|
||||
11. Job functions |job-functions-details|
|
||||
12. Job options |job-options|
|
||||
13. Controlling a job |job-control|
|
||||
14. Using a prompt buffer |prompt-buffer|
|
||||
|
||||
{only when compiled with the |+channel| feature for channel stuff}
|
||||
You can check this with: `has('channel')`
|
||||
@@ -221,7 +223,7 @@ ch_open() fails quickly. On MS-Windows "waittime" applies.
|
||||
*E898* *E901* *E902*
|
||||
|
||||
If there is an error reading or writing a channel it will be closed.
|
||||
*E630* *E631*
|
||||
*E630* *E631*
|
||||
|
||||
==============================================================================
|
||||
4. Using a JSON or JS channel *channel-use*
|
||||
@@ -460,7 +462,263 @@ For a JS or JSON channel this returns one decoded message.
|
||||
This includes any sequence number.
|
||||
|
||||
==============================================================================
|
||||
8. Starting a job with a channel *job-start* *job*
|
||||
8. Channel functions details *channel-functions-details*
|
||||
|
||||
ch_canread({handle}) *ch_canread()*
|
||||
Return non-zero when there is something to read from {handle}.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
This is useful to read from a channel at a convenient time,
|
||||
e.g. from a timer.
|
||||
|
||||
Note that messages are dropped when the channel does not have
|
||||
a callback. Add a close callback to avoid that.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_canread()
|
||||
|
||||
ch_close({handle}) *ch_close()*
|
||||
Close {handle}. See |channel-close|.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
A close callback is not invoked.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_close()
|
||||
|
||||
ch_close_in({handle}) *ch_close_in()*
|
||||
Close the "in" part of {handle}. See |channel-close-in|.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
A close callback is not invoked.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_close_in()
|
||||
|
||||
|
||||
ch_evalexpr({handle}, {expr} [, {options}]) *ch_evalexpr()*
|
||||
Send {expr} over {handle}. The {expr} is encoded
|
||||
according to the type of channel. The function cannot be used
|
||||
with a raw channel. See |channel-use|.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
*E917*
|
||||
{options} must be a Dictionary. It must not have a "callback"
|
||||
entry. It can have a "timeout" entry to specify the timeout
|
||||
for this specific request.
|
||||
|
||||
ch_evalexpr() waits for a response and returns the decoded
|
||||
expression. When there is an error or timeout it returns an
|
||||
empty string.
|
||||
|
||||
Note that while waiting for the response, Vim handles other
|
||||
messages. You need to make sure this doesn't cause trouble.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_evalexpr(expr)
|
||||
|
||||
|
||||
ch_evalraw({handle}, {string} [, {options}]) *ch_evalraw()*
|
||||
Send {string} over {handle}.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
Works like |ch_evalexpr()|, but does not encode the request or
|
||||
decode the response. The caller is responsible for the
|
||||
correct contents. Also does not add a newline for a channel
|
||||
in NL mode, the caller must do that. The NL in the response
|
||||
is removed.
|
||||
Note that Vim does not know when the text received on a raw
|
||||
channel is complete, it may only return the first part and you
|
||||
need to use |ch_readraw()| to fetch the rest.
|
||||
See |channel-use|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_evalraw(rawstring)
|
||||
|
||||
ch_getbufnr({handle}, {what}) *ch_getbufnr()*
|
||||
Get the buffer number that {handle} is using for {what}.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
{what} can be "err" for stderr, "out" for stdout or empty for
|
||||
socket output.
|
||||
Returns -1 when there is no buffer.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_getbufnr(what)
|
||||
|
||||
ch_getjob({channel}) *ch_getjob()*
|
||||
Get the Job associated with {channel}.
|
||||
If there is no job calling |job_status()| on the returned Job
|
||||
will result in "fail".
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_getjob()
|
||||
|
||||
|
||||
ch_info({handle}) *ch_info()*
|
||||
Returns a Dictionary with information about {handle}. The
|
||||
items are:
|
||||
"id" number of the channel
|
||||
"status" "open", "buffered" or "closed", like
|
||||
ch_status()
|
||||
When opened with ch_open():
|
||||
"hostname" the hostname of the address
|
||||
"port" the port of the address
|
||||
"sock_status" "open" or "closed"
|
||||
"sock_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"sock_io" "socket"
|
||||
"sock_timeout" timeout in msec
|
||||
When opened with job_start():
|
||||
"out_status" "open", "buffered" or "closed"
|
||||
"out_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"out_io" "null", "pipe", "file" or "buffer"
|
||||
"out_timeout" timeout in msec
|
||||
"err_status" "open", "buffered" or "closed"
|
||||
"err_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"err_io" "out", "null", "pipe", "file" or "buffer"
|
||||
"err_timeout" timeout in msec
|
||||
"in_status" "open" or "closed"
|
||||
"in_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"in_io" "null", "pipe", "file" or "buffer"
|
||||
"in_timeout" timeout in msec
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_info()
|
||||
|
||||
|
||||
ch_log({msg} [, {handle}]) *ch_log()*
|
||||
Write {msg} in the channel log file, if it was opened with
|
||||
|ch_logfile()|.
|
||||
When {handle} is passed the channel number is used for the
|
||||
message.
|
||||
{handle} can be a Channel or a Job that has a Channel. The
|
||||
Channel must be open for the channel number to be used.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
'did something'->ch_log()
|
||||
|
||||
|
||||
ch_logfile({fname} [, {mode}]) *ch_logfile()*
|
||||
Start logging channel activity to {fname}.
|
||||
When {fname} is an empty string: stop logging.
|
||||
|
||||
When {mode} is omitted or "a" append to the file.
|
||||
When {mode} is "w" start with an empty file.
|
||||
|
||||
Use |ch_log()| to write log messages. The file is flushed
|
||||
after every message, on Unix you can use "tail -f" to see what
|
||||
is going on in real time.
|
||||
|
||||
This function is not available in the |sandbox|.
|
||||
NOTE: the channel communication is stored in the file, be
|
||||
aware that this may contain confidential and privacy sensitive
|
||||
information, e.g. a password you type in a terminal window.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
'logfile'->ch_logfile('w')
|
||||
|
||||
|
||||
ch_open({address} [, {options}]) *ch_open()*
|
||||
Open a channel to {address}. See |channel|.
|
||||
Returns a Channel. Use |ch_status()| to check for failure.
|
||||
|
||||
{address} has the form "hostname:port", e.g.,
|
||||
"localhost:8765".
|
||||
|
||||
If {options} is given it must be a |Dictionary|.
|
||||
See |channel-open-options|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetAddress()->ch_open()
|
||||
|
||||
|
||||
ch_read({handle} [, {options}]) *ch_read()*
|
||||
Read from {handle} and return the received message.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
For a NL channel this waits for a NL to arrive, except when
|
||||
there is nothing more to read (channel was closed).
|
||||
See |channel-more|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_read()
|
||||
|
||||
|
||||
ch_readblob({handle} [, {options}]) *ch_readblob()*
|
||||
Like ch_read() but reads binary data and returns a |Blob|.
|
||||
See |channel-more|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_readblob()
|
||||
|
||||
|
||||
ch_readraw({handle} [, {options}]) *ch_readraw()*
|
||||
Like ch_read() but for a JS and JSON channel does not decode
|
||||
the message. For a NL channel it does not block waiting for
|
||||
the NL to arrive, but otherwise works like ch_read().
|
||||
See |channel-more|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_readraw()
|
||||
|
||||
|
||||
ch_sendexpr({handle}, {expr} [, {options}]) *ch_sendexpr()*
|
||||
Send {expr} over {handle}. The {expr} is encoded
|
||||
according to the type of channel. The function cannot be used
|
||||
with a raw channel.
|
||||
See |channel-use|. *E912*
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_sendexpr(expr)
|
||||
|
||||
|
||||
ch_sendraw({handle}, {expr} [, {options}]) *ch_sendraw()*
|
||||
Send |String| or |Blob| {expr} over {handle}.
|
||||
Works like |ch_sendexpr()|, but does not encode the request or
|
||||
decode the response. The caller is responsible for the
|
||||
correct contents. Also does not add a newline for a channel
|
||||
in NL mode, the caller must do that. The NL in the response
|
||||
is removed.
|
||||
See |channel-use|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_sendraw(rawexpr)
|
||||
|
||||
|
||||
ch_setoptions({handle}, {options}) *ch_setoptions()*
|
||||
Set options on {handle}:
|
||||
"callback" the channel callback
|
||||
"timeout" default read timeout in msec
|
||||
"mode" mode for the whole channel
|
||||
See |ch_open()| for more explanation.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
Note that changing the mode may cause queued messages to be
|
||||
lost.
|
||||
|
||||
These options cannot be changed:
|
||||
"waittime" only applies to |ch_open()|
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_setoptions(options)
|
||||
|
||||
|
||||
ch_status({handle} [, {options}]) *ch_status()*
|
||||
Return the status of {handle}:
|
||||
"fail" failed to open the channel
|
||||
"open" channel can be used
|
||||
"buffered" channel can be read, not written to
|
||||
"closed" channel can not be used
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
"buffered" is used when the channel was closed but there is
|
||||
still data that can be obtained with |ch_read()|.
|
||||
|
||||
If {options} is given it can contain a "part" entry to specify
|
||||
the part of the channel to return the status for: "out" or
|
||||
"err". For example, to get the error status: >
|
||||
ch_status(job, {"part": "err"})
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_status()
|
||||
|
||||
==============================================================================
|
||||
9. Starting a job with a channel *job-start* *job*
|
||||
|
||||
To start a job and open a channel for stdin/stdout/stderr: >
|
||||
let job = job_start(command, {options})
|
||||
@@ -494,7 +752,7 @@ handle that separately, add an "err_cb" handler: >
|
||||
|
||||
If you want to handle both stderr and stdout with one handler use the
|
||||
"callback" option: >
|
||||
let job = job_start(command, {"callback": "MyHandler"})
|
||||
let job = job_start(command, {"callback": "MyHandler"})
|
||||
|
||||
Depending on the system, starting a job can put Vim in the background, the
|
||||
started job gets the focus. To avoid that, use the `foreground()` function.
|
||||
@@ -552,7 +810,7 @@ add a close callback and read the output there: >
|
||||
You will want to do something more useful than "echomsg".
|
||||
|
||||
==============================================================================
|
||||
9. Starting a job without a channel *job-start-nochannel*
|
||||
10. Starting a job without a channel *job-start-nochannel*
|
||||
|
||||
To start another process without creating a channel: >
|
||||
let job = job_start(command,
|
||||
@@ -579,7 +837,181 @@ Note that the waittime for ch_open() gives the job one second to make the port
|
||||
available.
|
||||
|
||||
==============================================================================
|
||||
10. Job options *job-options*
|
||||
11. Job functions *job-functions-details*
|
||||
|
||||
job_getchannel({job}) *job_getchannel()*
|
||||
Get the channel handle that {job} is using.
|
||||
To check if the job has no channel: >
|
||||
if string(job_getchannel()) == 'channel fail'
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetJob()->job_getchannel()
|
||||
|
||||
job_info([{job}]) *job_info()*
|
||||
Returns a Dictionary with information about {job}:
|
||||
"status" what |job_status()| returns
|
||||
"channel" what |job_getchannel()| returns
|
||||
"cmd" List of command arguments used to start the job
|
||||
"process" process ID
|
||||
"tty_in" terminal input name, empty when none
|
||||
"tty_out" terminal output name, empty when none
|
||||
"exitval" only valid when "status" is "dead"
|
||||
"exit_cb" function to be called on exit
|
||||
"stoponexit" |job-stoponexit|
|
||||
|
||||
Only in Unix:
|
||||
"termsig" the signal which terminated the process
|
||||
(See |job_stop()| for the values)
|
||||
only valid when "status" is "dead"
|
||||
|
||||
Only in MS-Windows:
|
||||
"tty_type" Type of virtual console in use.
|
||||
Values are "winpty" or "conpty".
|
||||
See 'termwintype'.
|
||||
|
||||
Without any arguments, returns a List with all Job objects.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetJob()->job_info()
|
||||
|
||||
|
||||
job_setoptions({job}, {options}) *job_setoptions()*
|
||||
Change options for {job}. Supported are:
|
||||
"stoponexit" |job-stoponexit|
|
||||
"exit_cb" |job-exit_cb|
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetJob()->job_setoptions(options)
|
||||
|
||||
|
||||
job_start({command} [, {options}]) *job_start()*
|
||||
Start a job and return a Job object. Unlike |system()| and
|
||||
|:!cmd| this does not wait for the job to finish.
|
||||
To start a job in a terminal window see |term_start()|.
|
||||
|
||||
If the job fails to start then |job_status()| on the returned
|
||||
Job object results in "fail" and none of the callbacks will be
|
||||
invoked.
|
||||
|
||||
{command} can be a String. This works best on MS-Windows. On
|
||||
Unix it is split up in white-separated parts to be passed to
|
||||
execvp(). Arguments in double quotes can contain white space.
|
||||
|
||||
{command} can be a List, where the first item is the executable
|
||||
and further items are the arguments. All items are converted
|
||||
to String. This works best on Unix.
|
||||
|
||||
On MS-Windows, job_start() makes a GUI application hidden. If
|
||||
want to show it, Use |:!start| instead.
|
||||
|
||||
The command is executed directly, not through a shell, the
|
||||
'shell' option is not used. To use the shell: >
|
||||
let job = job_start(["/bin/sh", "-c", "echo hello"])
|
||||
< Or: >
|
||||
let job = job_start('/bin/sh -c "echo hello"')
|
||||
< Note that this will start two processes, the shell and the
|
||||
command it executes. If you don't want this use the "exec"
|
||||
shell command.
|
||||
|
||||
On Unix $PATH is used to search for the executable only when
|
||||
the command does not contain a slash.
|
||||
|
||||
The job will use the same terminal as Vim. If it reads from
|
||||
stdin the job and Vim will be fighting over input, that
|
||||
doesn't work. Redirect stdin and stdout to avoid problems: >
|
||||
let job = job_start(['sh', '-c', "myserver </dev/null >/dev/null"])
|
||||
<
|
||||
The returned Job object can be used to get the status with
|
||||
|job_status()| and stop the job with |job_stop()|.
|
||||
|
||||
Note that the job object will be deleted if there are no
|
||||
references to it. This closes the stdin and stderr, which may
|
||||
cause the job to fail with an error. To avoid this keep a
|
||||
reference to the job. Thus instead of: >
|
||||
call job_start('my-command')
|
||||
< use: >
|
||||
let myjob = job_start('my-command')
|
||||
< and unlet "myjob" once the job is not needed or is past the
|
||||
point where it would fail (e.g. when it prints a message on
|
||||
startup). Keep in mind that variables local to a function
|
||||
will cease to exist if the function returns. Use a
|
||||
script-local variable if needed: >
|
||||
let s:myjob = job_start('my-command')
|
||||
<
|
||||
{options} must be a Dictionary. It can contain many optional
|
||||
items, see |job-options|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
BuildCommand()->job_start()
|
||||
|
||||
|
||||
job_status({job}) *job_status()* *E916*
|
||||
Returns a String with the status of {job}:
|
||||
"run" job is running
|
||||
"fail" job failed to start
|
||||
"dead" job died or was stopped after running
|
||||
|
||||
On Unix a non-existing command results in "dead" instead of
|
||||
"fail", because a fork happens before the failure can be
|
||||
detected.
|
||||
|
||||
If an exit callback was set with the "exit_cb" option and the
|
||||
job is now detected to be "dead" the callback will be invoked.
|
||||
|
||||
For more information see |job_info()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetJob()->job_status()
|
||||
|
||||
|
||||
job_stop({job} [, {how}]) *job_stop()*
|
||||
Stop the {job}. This can also be used to signal the job.
|
||||
|
||||
When {how} is omitted or is "term" the job will be terminated.
|
||||
For Unix SIGTERM is sent. On MS-Windows the job will be
|
||||
terminated forcedly (there is no "gentle" way).
|
||||
This goes to the process group, thus children may also be
|
||||
affected.
|
||||
|
||||
Effect for Unix:
|
||||
"term" SIGTERM (default)
|
||||
"hup" SIGHUP
|
||||
"quit" SIGQUIT
|
||||
"int" SIGINT
|
||||
"kill" SIGKILL (strongest way to stop)
|
||||
number signal with that number
|
||||
|
||||
Effect for MS-Windows:
|
||||
"term" terminate process forcedly (default)
|
||||
"hup" CTRL_BREAK
|
||||
"quit" CTRL_BREAK
|
||||
"int" CTRL_C
|
||||
"kill" terminate process forcedly
|
||||
Others CTRL_BREAK
|
||||
|
||||
On Unix the signal is sent to the process group. This means
|
||||
that when the job is "sh -c command" it affects both the shell
|
||||
and the command.
|
||||
|
||||
The result is a Number: 1 if the operation could be executed,
|
||||
0 if "how" is not supported on the system.
|
||||
Note that even when the operation was executed, whether the
|
||||
job was actually stopped needs to be checked with
|
||||
|job_status()|.
|
||||
|
||||
If the status of the job is "dead", the signal will not be
|
||||
sent. This is to avoid to stop the wrong job (esp. on Unix,
|
||||
where process numbers are recycled).
|
||||
|
||||
When using "kill" Vim will assume the job will die and close
|
||||
the channel.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetJob()->job_stop()
|
||||
|
||||
|
||||
==============================================================================
|
||||
12. Job options *job-options*
|
||||
|
||||
The {options} argument in job_start() is a dictionary. All entries are
|
||||
optional. Some options can be used after the job has started, using
|
||||
@@ -773,7 +1205,7 @@ accessible for others). Use |setfperm()| to change this.
|
||||
If the file already exists it is truncated.
|
||||
|
||||
==============================================================================
|
||||
11. Controlling a job *job-control*
|
||||
13. Controlling a job *job-control*
|
||||
|
||||
To get the status of a job: >
|
||||
echo job_status(job)
|
||||
@@ -789,7 +1221,7 @@ signals. E.g. to force a job to stop, "kill it": >
|
||||
For more options see |job_stop()|.
|
||||
|
||||
==============================================================================
|
||||
12. Using a prompt buffer *prompt-buffer*
|
||||
14. Using a prompt buffer *prompt-buffer*
|
||||
|
||||
If you want to type input for the job in a Vim window you have a few options:
|
||||
- Use a normal buffer and handle all possible commands yourself.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*cmdline.txt* For Vim version 8.1. Last change: 2019 Nov 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -77,10 +77,17 @@ CTRL-V Insert next non-digit literally. Up to three digits form the
|
||||
way as in Insert mode (see above, |i_CTRL-V|).
|
||||
Note: Under Windows CTRL-V is often mapped to paste text.
|
||||
Use CTRL-Q instead then.
|
||||
When |modifyOtherKeys| is enabled then special Escape sequence
|
||||
is converted back to what it was without |modifyOtherKeys|,
|
||||
unless the Shift key is also pressed.
|
||||
*c_CTRL-Q*
|
||||
CTRL-Q Same as CTRL-V. But with some terminals it is used for
|
||||
control flow, it doesn't work then.
|
||||
|
||||
CTRL-SHIFT-V *c_CTRL-SHIFT-V* *c_CTRL-SHIFT-Q*
|
||||
CTRL-SHIFT-Q Works just like CTRL-V, unless |modifyOtherKeys| is active,
|
||||
then it inserts the Escape sequence for a key with modifiers.
|
||||
|
||||
*c_<Left>* *c_Left*
|
||||
<Left> cursor left
|
||||
*c_<Right>* *c_Right*
|
||||
@@ -129,7 +136,7 @@ CTRL-K {char1} {char2} *c_CTRL-K*
|
||||
enter digraph (see |digraphs|). When {char1} is a special
|
||||
key, the code for that key is inserted in <> form.
|
||||
|
||||
CTRL-R {0-9a-z"%#:-=.} *c_CTRL-R* *c_<C-R>*
|
||||
CTRL-R {register} *c_CTRL-R* *c_<C-R>*
|
||||
Insert the contents of a numbered or named register. Between
|
||||
typing CTRL-R and the second character '"' will be displayed
|
||||
to indicate that you are expected to enter the name of a
|
||||
@@ -191,8 +198,8 @@ CTRL-R CTRL-L *c_CTRL-R_CTRL-L* *c_<C-R>_<C-L>*
|
||||
|
||||
*c_CTRL-R_CTRL-R* *c_<C-R>_<C-R>*
|
||||
*c_CTRL-R_CTRL-O* *c_<C-R>_<C-O>*
|
||||
CTRL-R CTRL-R {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
CTRL-R CTRL-O {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
CTRL-R CTRL-R {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
CTRL-R CTRL-O {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
Insert register or object under the cursor. Works like
|
||||
|c_CTRL-R| but inserts the text literally. For example, if
|
||||
register a contains "xy^Hz" (where ^H is a backspace),
|
||||
@@ -380,10 +387,8 @@ word before the cursor. This is available for:
|
||||
- Mappings: Only after a ":map" or similar command.
|
||||
- Variable and function names: Only after a ":if", ":call" or similar command.
|
||||
|
||||
When Vim was compiled without the |+cmdline_compl| feature only file names,
|
||||
directories and help items can be completed. The number of help item matches
|
||||
is limited (currently to 300) to avoid a long delay when there are very many
|
||||
matches.
|
||||
The number of help item matches is limited (currently to 300) to avoid a long
|
||||
delay when there are very many matches.
|
||||
|
||||
These are the commands that can be used:
|
||||
|
||||
@@ -702,7 +707,7 @@ commands ":write" and ":global" have the whole file (1,$) as default.
|
||||
If more line specifiers are given than required for the command, the first
|
||||
one(s) will be ignored.
|
||||
|
||||
Line numbers may be specified with: *:range* *E14* *{address}*
|
||||
Line numbers may be specified with: *:range* *{address}*
|
||||
{number} an absolute line number
|
||||
. the current line *:.*
|
||||
$ the last line in the file *:$*
|
||||
@@ -911,8 +916,7 @@ Note: these are typed literally, they are not special keys!
|
||||
*%:8* *%:p* *%:.* *%:~* *%:h* *%:t* *%:r* *%:e* *%:s* *%:gs* *%:S*
|
||||
The file name modifiers can be used after "%", "#", "#n", "<cfile>", "<sfile>",
|
||||
"<afile>" or "<abuf>". They are also used with the |fnamemodify()| function.
|
||||
These are not available when Vim has been compiled without the |+modify_fname|
|
||||
feature.
|
||||
|
||||
These modifiers can be given, in this order:
|
||||
:p Make file name a full path. Must be the first modifier. Also
|
||||
changes "~/" (and "~user/" for Unix and VMS) to the path for
|
||||
@@ -1064,8 +1068,7 @@ Also see |`=|.
|
||||
In the command-line window the command line can be edited just like editing
|
||||
text in any window. It is a special kind of window, because you cannot leave
|
||||
it in a normal way.
|
||||
{not available when compiled without the |+cmdline_hist| or |+vertsplit|
|
||||
feature}
|
||||
{not available when compiled without the |+cmdline_hist| feature}
|
||||
|
||||
|
||||
OPEN *c_CTRL-F* *q:* *q/* *q?*
|
||||
@@ -1140,7 +1143,6 @@ VARIOUS
|
||||
The command-line window cannot be used:
|
||||
- when there already is a command-line window (no nesting)
|
||||
- for entering an encryption key or when using inputsecret()
|
||||
- when Vim was not compiled with the |+vertsplit| feature
|
||||
|
||||
Some options are set when the command-line window is opened:
|
||||
'filetype' "vim", when editing an Ex command-line; this starts Vim syntax
|
||||
@@ -1176,11 +1178,9 @@ edited as described in |cmdwin-char|.
|
||||
|
||||
AUTOCOMMANDS
|
||||
|
||||
Two autocommand events are used: |CmdwinEnter| and |CmdwinLeave|. Since this
|
||||
window is of a special type, the WinEnter, WinLeave, BufEnter and BufLeave
|
||||
events are not triggered. You can use the Cmdwin events to do settings
|
||||
specifically for the command-line window. Be careful not to cause side
|
||||
effects!
|
||||
Two autocommand events are used: |CmdwinEnter| and |CmdwinLeave|. You can use
|
||||
the Cmdwin events to do settings specifically for the command-line window.
|
||||
Be careful not to cause side effects!
|
||||
Example: >
|
||||
:au CmdwinEnter : let b:cpt_save = &cpt | set cpt=.
|
||||
:au CmdwinLeave : let &cpt = b:cpt_save
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*debugger.txt* For Vim version 8.1. Last change: 2019 May 12
|
||||
*debugger.txt* For Vim version 8.1. Last change: 2019 Jul 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -6,6 +6,10 @@
|
||||
|
||||
Debugger Support Features *debugger-support*
|
||||
|
||||
These features are for integration with a debugger or an Integrated
|
||||
Programming Environment (IPE) or Integrated Development Environment (IDE).
|
||||
For the debugger running in a Vim terminal window see |terminal-debugger|.
|
||||
|
||||
1. Debugger Features |debugger-features|
|
||||
2. Vim Compile Options |debugger-compilation|
|
||||
3. Integrated Debuggers |debugger-integration|
|
||||
@@ -14,9 +18,7 @@ Debugger Support Features *debugger-support*
|
||||
==============================================================================
|
||||
1. Debugger Features *debugger-features*
|
||||
|
||||
The following features are available for an integration with a debugger or
|
||||
an Integrated Programming Environment (IPE) or Integrated Development
|
||||
Environment (IDE):
|
||||
The following features are available:
|
||||
|
||||
Alternate Command Input |alt-input|
|
||||
Debug Signs |debug-signs|
|
||||
@@ -90,6 +92,9 @@ However, the feature was implemented in as general a manner as possible and
|
||||
could be used for displaying other information as well. The functionality is
|
||||
limited though, for advanced popups see |popup-window|.
|
||||
|
||||
Another way to use the balloon is with the 'balloonexpr' option. This is
|
||||
completely user definable.
|
||||
|
||||
The Balloon Evaluation has some settable parameters too. For Motif the font
|
||||
list and colors can be set via X resources (XmNballoonEvalFontList,
|
||||
XmNballoonEvalBackground, and XmNballoonEvalForeground).
|
||||
@@ -106,9 +111,6 @@ The Balloon evaluation functions are also used to show a tooltip for the
|
||||
toolbar. The 'ballooneval' option does not need to be set for this. But the
|
||||
other settings apply.
|
||||
|
||||
Another way to use the balloon is with the 'balloonexpr' option. This is
|
||||
completely user definable.
|
||||
|
||||
==============================================================================
|
||||
2. Vim Compile Options *debugger-compilation*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 8.1. Last change: 2019 Feb 17
|
||||
*develop.txt* For Vim version 8.1. Last change: 2019 Nov 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -195,10 +195,14 @@ problems for existing patches. Only use them for new and changed code.
|
||||
|
||||
Comments ~
|
||||
|
||||
Traditionally Vim uses /* comments */. We intend to keep it that way,
|
||||
especially for file and function headers. For new code or lines of code that
|
||||
change, it is allowed to use // comments. Especially when it comes after
|
||||
code:
|
||||
Traditionally Vim uses /* comments */. We intend to keep it that way
|
||||
for file and function headers and larger blocks of code, E.g.:
|
||||
/*
|
||||
* The "foo" argument does something useful.
|
||||
* Return OK or FAIL.
|
||||
*/
|
||||
For new code or lines of code that change, it is preferred to use // comments.
|
||||
Especially when it comes after code:
|
||||
int some_var; // single line comment useful here
|
||||
|
||||
Enums ~
|
||||
@@ -529,7 +533,7 @@ the best method is. Alternatives:
|
||||
memory use, but takes a long time. On a fast PC it takes a couple of
|
||||
seconds for English, which can be acceptable for interactive use. But for
|
||||
some languages it takes more than ten seconds (e.g., German, Catalan),
|
||||
which is unacceptable slow. For batch processing (automatic corrections)
|
||||
which is unacceptably slow. For batch processing (automatic corrections)
|
||||
it's too slow for all languages.
|
||||
2. Use a trie for the soundfolded words, so that searching can be done just
|
||||
like how it works without soundfolding. This requires remembering a list
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*diff.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*diff.txt* For Vim version 8.1. Last change: 2019 Nov 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -68,11 +68,12 @@ reset to the global value.
|
||||
The options can still be overruled from a modeline when re-editing the file.
|
||||
However, 'foldmethod' and 'wrap' won't be set from a modeline when 'diff' is
|
||||
set.
|
||||
See `:diffoff` for an easy way to revert the options.
|
||||
|
||||
The differences shown are actually the differences in the buffer. Thus if you
|
||||
make changes after loading a file, these will be included in the displayed
|
||||
diffs. You might have to do ":diffupdate" now and then, not all changes are
|
||||
immediately taken into account.
|
||||
immediately taken into account, especially when using an external diff command.
|
||||
|
||||
In your .vimrc file you could do something special when Vim was started in
|
||||
diff mode. You could use a construct like this: >
|
||||
@@ -335,7 +336,7 @@ After setting this variable, reload the syntax script: >
|
||||
FINDING THE DIFFERENCES *diff-diffexpr*
|
||||
|
||||
The 'diffexpr' option can be set to use something else than the standard
|
||||
"diff" program to compare two files and find the differences.
|
||||
"diff" program to compare two files and find the differences. *E959*
|
||||
|
||||
When 'diffexpr' is empty, Vim uses this command to find the differences
|
||||
between file1 and file2: >
|
||||
|
||||
6
runtime/doc/doctags.vim
Normal file
6
runtime/doc/doctags.vim
Normal file
@@ -0,0 +1,6 @@
|
||||
" This script makes a tags file for help text.
|
||||
"
|
||||
" Usage: vim -eX -u doctags.vim
|
||||
|
||||
helptags ++t .
|
||||
qa!
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 8.1. Last change: 2019 Jun 10
|
||||
*editing.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -100,7 +100,7 @@ g CTRL-G Prints the current position of the cursor in five
|
||||
:buffers
|
||||
:files
|
||||
:ls List all the currently known file names. See
|
||||
'windows.txt' |:files| |:buffers| |:ls|.
|
||||
|windows.txt| |:files| |:buffers| |:ls|.
|
||||
|
||||
Vim will remember the full path name of a file name that you enter. In most
|
||||
cases when the file name is displayed only the name you typed is shown, but
|
||||
@@ -1233,7 +1233,7 @@ The syntax is best shown via some examples: >
|
||||
< Open the browser in the C:/bar directory, with the current
|
||||
buffer filename as default, and save the buffer under the
|
||||
filename chosen.
|
||||
Also see the |'browsedir'| option.
|
||||
Also see the 'browsedir' option.
|
||||
For versions of Vim where browsing is not supported, the command is executed
|
||||
unmodified.
|
||||
|
||||
@@ -1452,7 +1452,7 @@ Do this before writing the file. When reading an encrypted file it will be
|
||||
set automatically to the method used when that file was written. You can
|
||||
change 'cryptmethod' before writing that file to change the method.
|
||||
|
||||
To set the default method, used for new files, use this in your |vimrc|
|
||||
To set the default method, used for new files, use this in your |vimrc|
|
||||
file: >
|
||||
set cm=blowfish2
|
||||
Using "blowfish2" is highly recommended. Only use another method if you
|
||||
@@ -1554,7 +1554,7 @@ focus.
|
||||
If you want to automatically reload a file when it has been changed outside of
|
||||
Vim, set the 'autoread' option. This doesn't work at the moment you write the
|
||||
file though, only when the file wasn't changed inside of Vim.
|
||||
|
||||
*ignore-timestamp*
|
||||
If you do not want to be asked or automatically reload the file, you can use
|
||||
this: >
|
||||
set buftype=nofile
|
||||
|
||||
2646
runtime/doc/eval.txt
2646
runtime/doc/eval.txt
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*filetype.txt* For Vim version 8.1. Last change: 2019 Jul 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -595,6 +595,10 @@ If you do not like the default folding, use an autocommand to add your desired
|
||||
folding style instead. For example: >
|
||||
autocmd FileType man setlocal foldmethod=indent foldenable
|
||||
|
||||
If you would like :Man {number} {name} to behave like man {number} {name} by
|
||||
not running man {name} if no page is found, then use this: >
|
||||
let g:ft_man_no_sect_fallback = 1
|
||||
|
||||
You may also want to set 'keywordprg' to make the |K| command open a manual
|
||||
page in a Vim window: >
|
||||
set keywordprg=:Man
|
||||
@@ -642,6 +646,16 @@ To disable this behavior, set the following variable in your vimrc: >
|
||||
let g:python_recommended_style = 0
|
||||
|
||||
|
||||
QF QUICKFIX *qf.vim* *ft-qf-plugin*
|
||||
|
||||
The "qf" filetype is used for the quickfix window, see |quickfix-window|.
|
||||
|
||||
The quickfix filetype plugin includes configuration for displaying the command
|
||||
that produced the quickfix list in the |status-line|. To disable this setting,
|
||||
configure as follows: >
|
||||
:let g:qf_disable_statusline = 1
|
||||
|
||||
|
||||
R MARKDOWN *ft-rmd-plugin*
|
||||
|
||||
By default ftplugin/html.vim is not sourced. If you want it sourced, add to
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*ft_sql.txt* For Vim version 8.1. Last change: 2013 May 15
|
||||
*ft_sql.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
by David Fishburn
|
||||
|
||||
@@ -342,8 +342,8 @@ The defaults static maps are: >
|
||||
imap <buffer> <C-C>T <C-\><C-O>:call sqlcomplete#Map('sqlType')<CR><C-X><C-O>
|
||||
imap <buffer> <C-C>s <C-\><C-O>:call sqlcomplete#Map('sqlStatement')<CR><C-X><C-O>
|
||||
|
||||
The use of "<C-C>" can be user chosen by using the following in your |.vimrc| as it
|
||||
may not work properly on all platforms: >
|
||||
The use of "<C-C>" can be user chosen by using the following in your |.vimrc|
|
||||
as it may not work properly on all platforms: >
|
||||
let g:ftplugin_sql_omni_key = '<C-C>'
|
||||
>
|
||||
The static maps (which are based on the syntax highlight groups) follow this
|
||||
@@ -522,7 +522,7 @@ The SQL completion plugin can also display a list of columns for particular
|
||||
tables. The column completion is trigger via <C-C>c.
|
||||
|
||||
NOTE: The following example uses <Right> to trigger a column list while
|
||||
the popup window is active.
|
||||
the popup window is active.
|
||||
|
||||
Example of using column completion:
|
||||
- Press <C-C>t again to display the list of tables.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui.txt* For Vim version 8.1. Last change: 2019 May 20
|
||||
*gui.txt* For Vim version 8.1. Last change: 2019 Nov 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -309,7 +309,7 @@ because the menu command will always be applied to the top window.
|
||||
|
||||
If you are on the ':' line (or '/' or '?'), then clicking the left or right
|
||||
mouse button will position the cursor on the ':' line (if 'mouse' contains
|
||||
'c', 'a' or 'A').
|
||||
'c' or 'a').
|
||||
|
||||
In any situation the middle mouse button may be clicked to paste the current
|
||||
selection.
|
||||
@@ -560,8 +560,9 @@ floating menus that do not appear on the main menu bar.
|
||||
*E330* *E327* *E331* *E336* *E333*
|
||||
*E328* *E329* *E337* *E792*
|
||||
To create a new menu item, use the ":menu" commands. They are mostly like
|
||||
the ":map" set of commands but the first argument is a menu item name, given
|
||||
as a path of menus and submenus with a '.' between them, e.g.: >
|
||||
the ":map" set of commands (see |map-modes|), but the first argument is a menu
|
||||
item name, given as a path of menus and submenus with a '.' between them,
|
||||
e.g.: >
|
||||
|
||||
:menu File.Save :w<CR>
|
||||
:inoremenu File.Save <C-O>:w<CR>
|
||||
@@ -1013,7 +1014,7 @@ it behaves in a strange way.
|
||||
have at least one subentry, but need not
|
||||
appear on the menu-bar (see |hidden-menus|).
|
||||
{only available for Win32 and GTK GUI or in
|
||||
the terminal when compiled with +insert_expand}
|
||||
the terminal}
|
||||
|
||||
:popu[p]! {name} Like above, but use the position of the mouse
|
||||
pointer instead of the cursor.
|
||||
|
||||
@@ -171,14 +171,14 @@ you can.
|
||||
path {path}\gvim.exe
|
||||
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\vim 5.6
|
||||
DisplayName Vim 5.6: Edit with Vim popup menu entry
|
||||
UninstallString {path}\uninstal.exe
|
||||
UninstallString {path}\uninstall.exe
|
||||
|
||||
Replace {path} with the path that leads to the executable.
|
||||
Don't type {default}, this is the value for the key itself.
|
||||
|
||||
To remove "Edit with Vim" from the popup menu, just remove the registry
|
||||
entries mentioned above. The "uninstal.exe" program can do this for you. You
|
||||
can also use the entry in the Windows standard "Add/Remove Programs" list.
|
||||
entries mentioned above. The "uninstall.exe" program can do this for you.
|
||||
You can also use the entry in the Windows standard "Add/Remove Programs" list.
|
||||
|
||||
If you notice that this entry overrules other file type associations, set
|
||||
those associations again by hand (using Windows Explorer, see above). This
|
||||
|
||||
@@ -1,112 +1,17 @@
|
||||
*hangulin.txt* For Vim version 8.1. Last change: 2015 Nov 24
|
||||
*hangulin.txt* For Vim version 8.1. Last change: 2019 Nov 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam
|
||||
|
||||
*hangul*
|
||||
Vim had built-in support for hangul, the Korean language, for users without
|
||||
XIM (X Input Method). Since it didn't work well and was not maintained it was
|
||||
removed in Vim 8.1.2327.
|
||||
|
||||
Introduction *hangul*
|
||||
------------
|
||||
It is to input hangul, the Korean language, with Vim GUI version.
|
||||
If you have a XIM program, you can use another |+xim| feature.
|
||||
Basically, it is for anybody who has no XIM program.
|
||||
If you want this hangul input mehod you can go back to Vim 8.1.2326 or
|
||||
earlier. If you think this code is still useful and want to maintain it, make
|
||||
a patch to add it back. However, making it work with UTF-8 encoding would be
|
||||
best.
|
||||
|
||||
Compile
|
||||
-------
|
||||
Next is a basic option. You can add any other configure option. >
|
||||
|
||||
./configure --with-x --enable-multibyte --enable-hangulinput \
|
||||
--disable-xim
|
||||
|
||||
And you should check feature.h. If |+hangul_input| feature is enabled
|
||||
by configure, you can select more options such as keyboard type, 2 bulsik
|
||||
or 3 bulsik. You can find keywords like next in there. >
|
||||
|
||||
#define HANGUL_DEFAULT_KEYBOARD 2
|
||||
#define ESC_CHG_TO_ENG_MODE
|
||||
/* #define X_LOCALE */
|
||||
|
||||
Environment variables
|
||||
---------------------
|
||||
You should set LANG variable to Korean locale such as ko, ko_KR.eucKR
|
||||
or ko_KR.UTF-8.
|
||||
If you set LC_ALL variable, it should be set to Korean locale also.
|
||||
|
||||
Vim resource
|
||||
------------
|
||||
You may want to set 'encoding' and 'fileencodings'.
|
||||
Next are examples: >
|
||||
|
||||
:set encoding=euc-kr
|
||||
:set encoding=utf-8
|
||||
:set fileencodings=ucs-bom,utf-8,cp949,euc-kr,latin1
|
||||
|
||||
Keyboard
|
||||
--------
|
||||
You can change keyboard type (2 bulsik or 3 bulsik) using VIM_KEYBOARD
|
||||
or HANGUL_KEYBOARD_TYPE environment variables. For sh, just do (2 bulsik): >
|
||||
|
||||
export VIM_KEYBOARD="2"
|
||||
or >
|
||||
export HANGUL_KEYBOARD_TYPE="2"
|
||||
|
||||
If both are set, VIM_KEYBOARD has higher priority.
|
||||
|
||||
Hangul Fonts
|
||||
------------
|
||||
If you use GTK version of gvim, you should set 'guifont' and 'guifontwide'.
|
||||
For example: >
|
||||
set guifont=Courier\ 12
|
||||
set guifontwide=NanumGothicCoding\ 12
|
||||
|
||||
If you use Motif or Athena version of gvim, you should set 'guifontset' in
|
||||
your vimrc. You can set fontset in the .Xdefaults file.
|
||||
|
||||
$HOME/.gvimrc: >
|
||||
set guifontset=english_font,hangul_font
|
||||
|
||||
$HOME/.Xdefaults: >
|
||||
Vim.font: english_font
|
||||
|
||||
! Nexts are for hangul menu with Athena
|
||||
*international: True
|
||||
Vim*fontSet: english_font,hangul_font
|
||||
|
||||
! Nexts are for hangul menu with Motif
|
||||
*international: True
|
||||
Vim*fontList: english_font;hangul_font:
|
||||
|
||||
attention! the , (comma) or ; (semicolon)
|
||||
|
||||
And there should be no ':set guifont'. If it exists, then gvim ignores
|
||||
':set guifontset'. It means Vim runs without fontset supporting.
|
||||
So, you can see only English. Hangul does not be correctly displayed.
|
||||
|
||||
After "fontset" feature is enabled, Vim does not allow using english
|
||||
font only in "font" setting for syntax.
|
||||
For example, if you use >
|
||||
:set guifontset=eng_font,your_font
|
||||
in your .gvimrc, then you should do for syntax >
|
||||
:hi Comment guifg=Cyan font=another_eng_font,another_your_font
|
||||
If you just do >
|
||||
:hi Comment font=another_eng_font
|
||||
then you can see a error message. Be careful!
|
||||
|
||||
hangul_font width should be twice than english_font width.
|
||||
|
||||
Unsupported Feature
|
||||
-------------------
|
||||
We don't support Johab font.
|
||||
We don't support Hanja input.
|
||||
And We don't have any plan to support them.
|
||||
|
||||
If you really need such features, you can use console version of Vim with a
|
||||
capable terminal emulator.
|
||||
|
||||
Bug or Comment
|
||||
--------------
|
||||
Send comments, patches and suggestions to:
|
||||
|
||||
SungHyun Nam <goweol@gmail.com>
|
||||
Chi-Deok Hwang <...>
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*help.txt* For Vim version 8.1. Last change: 2019 May 12
|
||||
*help.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
VIM - main help file
|
||||
k
|
||||
@@ -139,6 +139,7 @@ Advanced editing ~
|
||||
|fold.txt| hide (fold) ranges of lines
|
||||
|
||||
Special issues ~
|
||||
|testing.txt| testing Vim and Vim scripts
|
||||
|print.txt| printing
|
||||
|remote.txt| using Vim as a server or client
|
||||
|term.txt| using different terminals and mice
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*helphelp.txt* For Vim version 8.1. Last change: 2019 May 04
|
||||
*helphelp.txt* For Vim version 8.1. Last change: 2019 Oct 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -102,7 +102,11 @@ Help on help files *helphelp*
|
||||
current file. See |help-translated|.
|
||||
|
||||
*:helpc* *:helpclose*
|
||||
:helpc[lose] Close one help window, if there is one.
|
||||
:helpc[lose] Close one help window, if there is one.
|
||||
Vim will try to restore the window layout (including
|
||||
cursor position) to the same layout it was before
|
||||
opening the help window initially. This might cause
|
||||
triggering several autocommands.
|
||||
|
||||
*:helpg* *:helpgrep*
|
||||
:helpg[rep] {pattern}[@xx]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_lua.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_lua.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Luis Carvalho
|
||||
@@ -32,7 +32,7 @@ Examples:
|
||||
:lua local curbuf = vim.buffer() curbuf[7] = "line #7"
|
||||
<
|
||||
|
||||
:[range]lua << {endmarker}
|
||||
:[range]lua << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute Lua script {script}.
|
||||
@@ -40,9 +40,11 @@ Examples:
|
||||
feature wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
{endmarker} must NOT be preceded by any white space. If {endmarker} is
|
||||
omitted from after the "<<", a dot '.' must be used after {script}, like
|
||||
for the |:append| and |:insert| commands.
|
||||
The {endmarker} must NOT be preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot '.' must be used after
|
||||
{script}, like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:lua| command is mainly useful for including Lua code
|
||||
in Vim scripts.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_mzsch.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_mzsch.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sergey Khorev
|
||||
@@ -39,7 +39,7 @@ To speed up the process, you might also want to use --disable-gracket and
|
||||
:[range]mz[scheme] {stmt}
|
||||
Execute MzScheme statement {stmt}.
|
||||
|
||||
:[range]mz[scheme] << {endmarker}
|
||||
:[range]mz[scheme] << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute inlined MzScheme script {script}.
|
||||
@@ -47,6 +47,13 @@ To speed up the process, you might also want to use --disable-gracket and
|
||||
feature wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
The {endmarker} below the {script} must NOT be
|
||||
preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot
|
||||
'.' must be used after {script}, like for the
|
||||
|:append| and |:insert| commands.
|
||||
|
||||
*:mzfile* *:mzf*
|
||||
:[range]mzf[ile] {file} Execute the MzScheme script in {file}.
|
||||
|
||||
@@ -80,7 +87,7 @@ To avoid clashes with MzScheme, consider using prefix when requiring module,
|
||||
e.g.: >
|
||||
:mzscheme (require (prefix vim- vimext))
|
||||
<
|
||||
All the examples below assume this naming scheme.
|
||||
All the examples below assume this naming scheme.
|
||||
|
||||
*mzscheme-sandbox*
|
||||
When executed in the |sandbox|, access to some filesystem and Vim interface
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_ole.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_ole.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -39,7 +39,7 @@ instance), code similar to the following should be used:
|
||||
$vim = new Win32::OLE 'Vim.Application';
|
||||
|
||||
[C#] >
|
||||
// Add a reference to Vim in your project.
|
||||
// Add a reference to Vim in your project.
|
||||
// Choose the COM tab.
|
||||
// Select "Vim Ole Interface 1.1 Type Library"
|
||||
Vim.Vim vimobj = new Vim.Vim();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_perl.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_perl.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sven Verdoolaege
|
||||
@@ -55,15 +55,18 @@ The ActiveState one should work, Strawberry Perl is a good alternative.
|
||||
working: >
|
||||
:perl VIM::Msg("Hello")
|
||||
|
||||
:pe[rl] << {endpattern}
|
||||
:pe[rl] << [endmarker]
|
||||
{script}
|
||||
{endpattern}
|
||||
{endmarker}
|
||||
Execute Perl script {script}.
|
||||
{endpattern} must NOT be preceded by any white space.
|
||||
If {endpattern} is omitted, it defaults to a dot '.'
|
||||
The {endmarker} after {script} must NOT be preceded by
|
||||
any white space.
|
||||
|
||||
If [endmarker] is omitted, it defaults to a dot '.'
|
||||
like for the |:append| and |:insert| commands. Using
|
||||
'.' helps when inside a function, because "$i;" looks
|
||||
like the start of an |:insert| command to Vim.
|
||||
|
||||
This form of the |:perl| command is mainly useful for
|
||||
including perl code in vim scripts.
|
||||
Note: This command doesn't work when the Perl feature
|
||||
@@ -177,7 +180,7 @@ VIM::Windows([{wn}...]) With no arguments, returns a list of all the windows
|
||||
VIM::DoCommand({cmd}) Executes Ex command {cmd}.
|
||||
|
||||
*perl-Eval*
|
||||
VIM::Eval({expr}) Evaluates {expr} and returns (success, value) in list
|
||||
VIM::Eval({expr}) Evaluates {expr} and returns (success, value) in list
|
||||
context or just value in scalar context.
|
||||
success=1 indicates that val contains the value of
|
||||
{expr}; success=0 indicates a failure to evaluate
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 8.1. Last change: 2019 May 04
|
||||
*if_pyth.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -34,7 +34,7 @@ Both can be available at the same time, but read |python-2-and-3|.
|
||||
the `:python` command is working: >
|
||||
:python print "Hello"
|
||||
|
||||
:[range]py[thon] << {endmarker}
|
||||
:[range]py[thon] << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute Python script {script}.
|
||||
@@ -42,9 +42,11 @@ Both can be available at the same time, but read |python-2-and-3|.
|
||||
feature wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
{endmarker} must NOT be preceded by any white space. If {endmarker} is
|
||||
omitted from after the "<<", a dot '.' must be used after {script}, like
|
||||
for the |:append| and |:insert| commands.
|
||||
The {endmarker} below the {script} must NOT be preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot '.' must be used after
|
||||
{script}, like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:python| command is mainly useful for including python code
|
||||
in Vim scripts.
|
||||
|
||||
@@ -181,7 +183,7 @@ vim.eval(str) *python-eval*
|
||||
:py text_width = vim.eval("&tw")
|
||||
:
|
||||
:" contents of the 'a' register
|
||||
:py a_reg = vim.eval("@a")
|
||||
:py a_reg = vim.eval("@a")
|
||||
:
|
||||
:" Result is a string! Use string.atoi() to convert to a number.
|
||||
:py str = vim.eval("12+12")
|
||||
@@ -192,25 +194,25 @@ vim.eval(str) *python-eval*
|
||||
'eval_expr', 'kind': 'f', 'filename': './src/eval.c'}] ~
|
||||
|
||||
vim.bindeval(str) *python-bindeval*
|
||||
Like |python-eval|, but returns special objects described in
|
||||
|python-bindeval-objects|. These python objects let you modify (|List|
|
||||
Like |python-eval|, but returns special objects described in
|
||||
|python-bindeval-objects|. These python objects let you modify (|List|
|
||||
or |Dictionary|) or call (|Funcref|) vim objects.
|
||||
|
||||
vim.strwidth(str) *python-strwidth*
|
||||
Like |strwidth()|: returns number of display cells str occupies, tab
|
||||
Like |strwidth()|: returns number of display cells str occupies, tab
|
||||
is counted as one cell.
|
||||
|
||||
vim.foreach_rtp(callable) *python-foreach_rtp*
|
||||
Call the given callable for each path in 'runtimepath' until either
|
||||
callable returns something but None, the exception is raised or there
|
||||
are no longer paths. If stopped in case callable returned non-None,
|
||||
Call the given callable for each path in 'runtimepath' until either
|
||||
callable returns something but None, the exception is raised or there
|
||||
are no longer paths. If stopped in case callable returned non-None,
|
||||
vim.foreach_rtp function returns the value returned by callable.
|
||||
|
||||
vim.chdir(*args, **kwargs) *python-chdir*
|
||||
vim.fchdir(*args, **kwargs) *python-fchdir*
|
||||
Run os.chdir or os.fchdir, then all appropriate vim stuff.
|
||||
Note: you should not use these functions directly, use os.chdir and
|
||||
os.fchdir instead. Behavior of vim.fchdir is undefined in case
|
||||
Note: you should not use these functions directly, use os.chdir and
|
||||
os.fchdir instead. Behavior of vim.fchdir is undefined in case
|
||||
os.fchdir does not exist.
|
||||
|
||||
Error object of the "vim" module
|
||||
@@ -245,15 +247,15 @@ vim.windows *python-windows*
|
||||
:py w in vim.windows # Membership test
|
||||
:py n = len(vim.windows) # Number of elements
|
||||
:py for w in vim.windows: # Sequential access
|
||||
< Note: vim.windows object always accesses current tab page.
|
||||
|python-tabpage|.windows objects are bound to parent |python-tabpage|
|
||||
object and always use windows from that tab page (or throw vim.error
|
||||
in case tab page was deleted). You can keep a reference to both
|
||||
without keeping a reference to vim module object or |python-tabpage|,
|
||||
< Note: vim.windows object always accesses current tab page.
|
||||
|python-tabpage|.windows objects are bound to parent |python-tabpage|
|
||||
object and always use windows from that tab page (or throw vim.error
|
||||
in case tab page was deleted). You can keep a reference to both
|
||||
without keeping a reference to vim module object or |python-tabpage|,
|
||||
they will not lose their properties in this case.
|
||||
|
||||
vim.tabpages *python-tabpages*
|
||||
A sequence object providing access to the list of vim tab pages. The
|
||||
A sequence object providing access to the list of vim tab pages. The
|
||||
object supports the following operations: >
|
||||
:py t = vim.tabpages[i] # Indexing (read-only)
|
||||
:py t in vim.tabpages # Membership test
|
||||
@@ -274,12 +276,12 @@ vim.current *python-current*
|
||||
"current range". A range is a bit like a buffer, but with all access
|
||||
restricted to a subset of lines. See |python-range| for more details.
|
||||
|
||||
Note: When assigning to vim.current.{buffer,window,tabpage} it expects
|
||||
valid |python-buffer|, |python-window| or |python-tabpage| objects
|
||||
respectively. Assigning triggers normal (with |autocommand|s)
|
||||
switching to given buffer, window or tab page. It is the only way to
|
||||
switch UI objects in python: you can't assign to
|
||||
|python-tabpage|.window attribute. To switch without triggering
|
||||
Note: When assigning to vim.current.{buffer,window,tabpage} it expects
|
||||
valid |python-buffer|, |python-window| or |python-tabpage| objects
|
||||
respectively. Assigning triggers normal (with |autocommand|s)
|
||||
switching to given buffer, window or tab page. It is the only way to
|
||||
switch UI objects in python: you can't assign to
|
||||
|python-tabpage|.window attribute. To switch without triggering
|
||||
autocommands use >
|
||||
py << EOF
|
||||
saved_eventignore = vim.options['eventignore']
|
||||
@@ -292,12 +294,12 @@ vim.current *python-current*
|
||||
<
|
||||
vim.vars *python-vars*
|
||||
vim.vvars *python-vvars*
|
||||
Dictionary-like objects holding dictionaries with global (|g:|) and
|
||||
vim (|v:|) variables respectively. Identical to `vim.bindeval("g:")`,
|
||||
Dictionary-like objects holding dictionaries with global (|g:|) and
|
||||
vim (|v:|) variables respectively. Identical to `vim.bindeval("g:")`,
|
||||
but faster.
|
||||
|
||||
vim.options *python-options*
|
||||
Object partly supporting mapping protocol (supports setting and
|
||||
Object partly supporting mapping protocol (supports setting and
|
||||
getting items) providing a read-write access to global options.
|
||||
Note: unlike |:set| this provides access only to global options. You
|
||||
cannot use this object to obtain or set local options' values or
|
||||
@@ -308,7 +310,7 @@ vim.options *python-options*
|
||||
buffer-local options and |python-window| objects to access to
|
||||
window-local options.
|
||||
|
||||
Type of this object is available via "Options" attribute of vim
|
||||
Type of this object is available via "Options" attribute of vim
|
||||
module.
|
||||
|
||||
Output from Python *python-output*
|
||||
@@ -329,10 +331,10 @@ Output from Python *python-output*
|
||||
*python2-directory* *python3-directory* *pythonx-directory*
|
||||
Python 'runtimepath' handling *python-special-path*
|
||||
|
||||
In python vim.VIM_SPECIAL_PATH special directory is used as a replacement for
|
||||
the list of paths found in 'runtimepath': with this directory in sys.path and
|
||||
vim.path_hooks in sys.path_hooks python will try to load module from
|
||||
{rtp}/python2 (or python3) and {rtp}/pythonx (for both python versions) for
|
||||
In python vim.VIM_SPECIAL_PATH special directory is used as a replacement for
|
||||
the list of paths found in 'runtimepath': with this directory in sys.path and
|
||||
vim.path_hooks in sys.path_hooks python will try to load module from
|
||||
{rtp}/python2 (or python3) and {rtp}/pythonx (for both python versions) for
|
||||
each {rtp} found in 'runtimepath'.
|
||||
|
||||
Implementation is similar to the following, but written in C: >
|
||||
@@ -360,8 +362,8 @@ Implementation is similar to the following, but written in C: >
|
||||
fmr = find_module(fullname, path)
|
||||
return load_module(fullname, *fmr)
|
||||
|
||||
# It uses vim module itself in place of VimPathFinder class: it does not
|
||||
# matter for python which object has find_module function attached to as
|
||||
# It uses vim module itself in place of VimPathFinder class: it does not
|
||||
# matter for python which object has find_module function attached to as
|
||||
# an attribute.
|
||||
class VimPathFinder(object):
|
||||
@classmethod
|
||||
@@ -384,28 +386,28 @@ Implementation is similar to the following, but written in C: >
|
||||
sys.path_hooks.append(hook)
|
||||
|
||||
vim.VIM_SPECIAL_PATH *python-VIM_SPECIAL_PATH*
|
||||
String constant used in conjunction with vim path hook. If path hook
|
||||
installed by vim is requested to handle anything but path equal to
|
||||
vim.VIM_SPECIAL_PATH constant it raises ImportError. In the only other
|
||||
String constant used in conjunction with vim path hook. If path hook
|
||||
installed by vim is requested to handle anything but path equal to
|
||||
vim.VIM_SPECIAL_PATH constant it raises ImportError. In the only other
|
||||
case it uses special loader.
|
||||
|
||||
Note: you must not use value of this constant directly, always use
|
||||
Note: you must not use value of this constant directly, always use
|
||||
vim.VIM_SPECIAL_PATH object.
|
||||
|
||||
vim.find_module(...) *python-find_module*
|
||||
vim.path_hook(path) *python-path_hook*
|
||||
Methods or objects used to implement path loading as described above.
|
||||
You should not be using any of these directly except for vim.path_hook
|
||||
in case you need to do something with sys.meta_path. It is not
|
||||
guaranteed that any of the objects will exist in the future vim
|
||||
Methods or objects used to implement path loading as described above.
|
||||
You should not be using any of these directly except for vim.path_hook
|
||||
in case you need to do something with sys.meta_path. It is not
|
||||
guaranteed that any of the objects will exist in the future vim
|
||||
versions.
|
||||
|
||||
vim._get_paths *python-_get_paths*
|
||||
Methods returning a list of paths which will be searched for by path
|
||||
hook. You should not rely on this method being present in future
|
||||
Methods returning a list of paths which will be searched for by path
|
||||
hook. You should not rely on this method being present in future
|
||||
versions, but can use it for debugging.
|
||||
|
||||
It returns a list of {rtp}/python2 (or {rtp}/python3) and
|
||||
It returns a list of {rtp}/python2 (or {rtp}/python3) and
|
||||
{rtp}/pythonx directories for each {rtp} in 'runtimepath'.
|
||||
|
||||
==============================================================================
|
||||
@@ -434,21 +436,21 @@ line numbers, which start from 1. This is particularly relevant when dealing
|
||||
with marks (see below) which use vim line numbers.
|
||||
|
||||
The buffer object attributes are:
|
||||
b.vars Dictionary-like object used to access
|
||||
b.vars Dictionary-like object used to access
|
||||
|buffer-variable|s.
|
||||
b.options Mapping object (supports item getting, setting and
|
||||
deleting) that provides access to buffer-local options
|
||||
and buffer-local values of |global-local| options. Use
|
||||
|python-window|.options if option is window-local,
|
||||
this object will raise KeyError. If option is
|
||||
|global-local| and local value is missing getting it
|
||||
b.options Mapping object (supports item getting, setting and
|
||||
deleting) that provides access to buffer-local options
|
||||
and buffer-local values of |global-local| options. Use
|
||||
|python-window|.options if option is window-local,
|
||||
this object will raise KeyError. If option is
|
||||
|global-local| and local value is missing getting it
|
||||
will return None.
|
||||
b.name String, RW. Contains buffer name (full path).
|
||||
Note: when assigning to b.name |BufFilePre| and
|
||||
Note: when assigning to b.name |BufFilePre| and
|
||||
|BufFilePost| autocommands are launched.
|
||||
b.number Buffer number. Can be used as |python-buffers| key.
|
||||
Read-only.
|
||||
b.valid True or False. Buffer object becomes invalid when
|
||||
b.valid True or False. Buffer object becomes invalid when
|
||||
corresponding buffer is wiped out.
|
||||
|
||||
The buffer object methods are:
|
||||
@@ -536,16 +538,16 @@ Window attributes are:
|
||||
This is a tuple, (row,col).
|
||||
height (read-write) The window height, in rows
|
||||
width (read-write) The window width, in columns
|
||||
vars (read-only) The window |w:| variables. Attribute is
|
||||
unassignable, but you can change window
|
||||
vars (read-only) The window |w:| variables. Attribute is
|
||||
unassignable, but you can change window
|
||||
variables this way
|
||||
options (read-only) The window-local options. Attribute is
|
||||
unassignable, but you can change window
|
||||
options this way. Provides access only to
|
||||
window-local options, for buffer-local use
|
||||
|python-buffer| and for global ones use
|
||||
|python-options|. If option is |global-local|
|
||||
and local value is missing getting it will
|
||||
options (read-only) The window-local options. Attribute is
|
||||
unassignable, but you can change window
|
||||
options this way. Provides access only to
|
||||
window-local options, for buffer-local use
|
||||
|python-buffer| and for global ones use
|
||||
|python-options|. If option is |global-local|
|
||||
and local value is missing getting it will
|
||||
return None.
|
||||
number (read-only) Window number. The first window has number 1.
|
||||
This is zero in case it cannot be determined
|
||||
@@ -554,7 +556,7 @@ Window attributes are:
|
||||
row, col (read-only) On-screen window position in display cells.
|
||||
First position is zero.
|
||||
tabpage (read-only) Window tab page.
|
||||
valid (read-write) True or False. Window object becomes invalid
|
||||
valid (read-write) True or False. Window object becomes invalid
|
||||
when corresponding window is closed.
|
||||
|
||||
The height attribute is writable only if the screen is split horizontally.
|
||||
@@ -565,21 +567,21 @@ Window object type is available using "Window" attribute of vim module.
|
||||
==============================================================================
|
||||
6. Tab page objects *python-tabpage*
|
||||
|
||||
Tab page objects represent vim tab pages. You can obtain them in a number of
|
||||
Tab page objects represent vim tab pages. You can obtain them in a number of
|
||||
ways:
|
||||
- via vim.current.tabpage (|python-current|)
|
||||
- from indexing vim.tabpages (|python-tabpages|)
|
||||
|
||||
You can use this object to access tab page windows. They have no methods and
|
||||
You can use this object to access tab page windows. They have no methods and
|
||||
no sequence or other interfaces.
|
||||
|
||||
Tab page attributes are:
|
||||
number The tab page number like the one returned by
|
||||
number The tab page number like the one returned by
|
||||
|tabpagenr()|.
|
||||
windows Like |python-windows|, but for current tab page.
|
||||
vars The tab page |t:| variables.
|
||||
window Current tabpage window.
|
||||
valid True or False. Tab page object becomes invalid when
|
||||
valid True or False. Tab page object becomes invalid when
|
||||
corresponding tab page is closed.
|
||||
|
||||
TabPage object type is available using "TabPage" attribute of vim module.
|
||||
@@ -596,8 +598,8 @@ vim.Dictionary object *python-Dictionary*
|
||||
zero Variable is not locked
|
||||
vim.VAR_LOCKED Variable is locked, but can be unlocked
|
||||
vim.VAR_FIXED Variable is locked and can't be unlocked
|
||||
Read-write. You can unlock locked variable by assigning
|
||||
`True` or `False` to this attribute. No recursive locking
|
||||
Read-write. You can unlock locked variable by assigning
|
||||
`True` or `False` to this attribute. No recursive locking
|
||||
is supported.
|
||||
scope One of
|
||||
Value Description ~
|
||||
@@ -613,23 +615,23 @@ vim.Dictionary object *python-Dictionary*
|
||||
update(iterable), update(dictionary), update(**kwargs)
|
||||
Adds keys to dictionary.
|
||||
get(key[, default=None])
|
||||
Obtain key from dictionary, returning the default if it is
|
||||
Obtain key from dictionary, returning the default if it is
|
||||
not present.
|
||||
pop(key[, default])
|
||||
Remove specified key from dictionary and return
|
||||
corresponding value. If key is not found and default is
|
||||
Remove specified key from dictionary and return
|
||||
corresponding value. If key is not found and default is
|
||||
given returns the default, otherwise raises KeyError.
|
||||
popitem()
|
||||
Remove random key from dictionary and return (key, value)
|
||||
Remove random key from dictionary and return (key, value)
|
||||
pair.
|
||||
has_key(key)
|
||||
Check whether dictionary contains specified key, similar
|
||||
Check whether dictionary contains specified key, similar
|
||||
to `key in dict`.
|
||||
|
||||
__new__(), __new__(iterable), __new__(dictionary), __new__(update)
|
||||
You can use `vim.Dictionary()` to create new vim
|
||||
dictionaries. `d=vim.Dictionary(arg)` is the same as
|
||||
`d=vim.bindeval('{}');d.update(arg)`. Without arguments
|
||||
You can use `vim.Dictionary()` to create new vim
|
||||
dictionaries. `d=vim.Dictionary(arg)` is the same as
|
||||
`d=vim.bindeval('{}');d.update(arg)`. Without arguments
|
||||
constructs empty dictionary.
|
||||
|
||||
Examples: >
|
||||
@@ -650,15 +652,15 @@ vim.Dictionary object *python-Dictionary*
|
||||
|
||||
vim.List object *python-List*
|
||||
Sequence-like object providing access to vim |List| type.
|
||||
Supports `.locked` attribute, see |python-.locked|. Also supports the
|
||||
Supports `.locked` attribute, see |python-.locked|. Also supports the
|
||||
following methods:
|
||||
Method Description ~
|
||||
extend(item) Add items to the list.
|
||||
|
||||
__new__(), __new__(iterable)
|
||||
You can use `vim.List()` to create new vim lists.
|
||||
`l=vim.List(iterable)` is the same as
|
||||
`l=vim.bindeval('[]');l.extend(iterable)`. Without
|
||||
You can use `vim.List()` to create new vim lists.
|
||||
`l=vim.List(iterable)` is the same as
|
||||
`l=vim.bindeval('[]');l.extend(iterable)`. Without
|
||||
arguments constructs empty list.
|
||||
Examples: >
|
||||
l = vim.List("abc") # Constructor, result: ['a', 'b', 'c']
|
||||
@@ -672,24 +674,24 @@ vim.List object *python-List*
|
||||
class List(vim.List): # Subclassing
|
||||
|
||||
vim.Function object *python-Function*
|
||||
Function-like object, acting like vim |Funcref| object. Accepts special
|
||||
keyword argument `self`, see |Dictionary-function|. You can also use
|
||||
`vim.Function(name)` constructor, it is the same as
|
||||
Function-like object, acting like vim |Funcref| object. Accepts special
|
||||
keyword argument `self`, see |Dictionary-function|. You can also use
|
||||
`vim.Function(name)` constructor, it is the same as
|
||||
`vim.bindeval('function(%s)'%json.dumps(name))`.
|
||||
|
||||
Attributes (read-only):
|
||||
Attribute Description ~
|
||||
name Function name.
|
||||
args `None` or a |python-List| object with arguments. Note
|
||||
that this is a copy of the arguments list, constructed
|
||||
each time you request this attribute. Modifications made
|
||||
to the list will be ignored (but not to the containers
|
||||
inside argument list: this is like |copy()| and not
|
||||
args `None` or a |python-List| object with arguments. Note
|
||||
that this is a copy of the arguments list, constructed
|
||||
each time you request this attribute. Modifications made
|
||||
to the list will be ignored (but not to the containers
|
||||
inside argument list: this is like |copy()| and not
|
||||
|deepcopy()|).
|
||||
self `None` or a |python-Dictionary| object with self
|
||||
dictionary. Note that explicit `self` keyword used when
|
||||
self `None` or a |python-Dictionary| object with self
|
||||
dictionary. Note that explicit `self` keyword used when
|
||||
calling resulting object overrides this attribute.
|
||||
auto_rebind Boolean. True if partial created from this Python object
|
||||
auto_rebind Boolean. True if partial created from this Python object
|
||||
and stored in the Vim script dictionary should be
|
||||
automatically rebound to the dictionary it is stored in
|
||||
when this dictionary is indexed. Exposes Vim internal
|
||||
@@ -697,11 +699,11 @@ vim.Function object *python-Function*
|
||||
`function(dict.func,dict)` (auto_rebind=False). This
|
||||
attribute makes no sense if `self` attribute is `None`.
|
||||
|
||||
Constructor additionally accepts `args`, `self` and `auto_rebind`
|
||||
keywords. If `args` and/or `self` argument is given then it constructs
|
||||
a partial, see |function()|. `auto_rebind` is only used when `self`
|
||||
argument is given, otherwise it is assumed to be `True` regardless of
|
||||
whether it was given or not. If `self` is given then it defaults to
|
||||
Constructor additionally accepts `args`, `self` and `auto_rebind`
|
||||
keywords. If `args` and/or `self` argument is given then it constructs
|
||||
a partial, see |function()|. `auto_rebind` is only used when `self`
|
||||
argument is given, otherwise it is assumed to be `True` regardless of
|
||||
whether it was given or not. If `self` is given then it defaults to
|
||||
`False`.
|
||||
|
||||
Examples: >
|
||||
@@ -724,7 +726,7 @@ vim.Function object *python-Function*
|
||||
==============================================================================
|
||||
8. pyeval() and py3eval() Vim functions *python-pyeval*
|
||||
|
||||
To facilitate bi-directional interface, you can use |pyeval()| and |py3eval()|
|
||||
To facilitate bi-directional interface, you can use |pyeval()| and |py3eval()|
|
||||
functions to evaluate Python expressions and pass their values to Vim script.
|
||||
|pyxeval()| is also available.
|
||||
|
||||
@@ -765,17 +767,28 @@ match the Python 2.x or Python 3 version Vim was compiled with.
|
||||
10. Python 3 *python3*
|
||||
|
||||
*:py3* *:python3*
|
||||
The `:py3` and `:python3` commands work similar to `:python`. A simple check
|
||||
if the `:py3` command is working: >
|
||||
:py3 print("Hello")
|
||||
:[range]py3 {stmt}
|
||||
:[range]py3 << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
|
||||
To see what version of Python you have: >
|
||||
:py3 import sys
|
||||
:py3 print(sys.version)
|
||||
:[range]python3 {stmt}
|
||||
:[range]python3 << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
The `:py3` and `:python3` commands work similar to `:python`. A
|
||||
simple check if the `:py3` command is working: >
|
||||
:py3 print("Hello")
|
||||
<
|
||||
To see what version of Python you have: >
|
||||
:py3 import sys
|
||||
:py3 print(sys.version)
|
||||
< *:py3file*
|
||||
The `:py3file` command works similar to `:pyfile`.
|
||||
:[range]py3f[ile] {file}
|
||||
The `:py3file` command works similar to `:pyfile`.
|
||||
*:py3do*
|
||||
The `:py3do` command works similar to `:pydo`.
|
||||
:[range]py3do {body}
|
||||
The `:py3do` command works similar to `:pydo`.
|
||||
|
||||
|
||||
Vim can be built in four ways (:version output):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_ruby.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_ruby.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Shugo Maeda
|
||||
@@ -28,15 +28,19 @@ downloading Ruby there.
|
||||
:rub[y] {cmd} Execute Ruby command {cmd}. A command to try it out: >
|
||||
:ruby print "Hello"
|
||||
|
||||
:rub[y] << {endpattern}
|
||||
:rub[y] << [endmarker]
|
||||
{script}
|
||||
{endpattern}
|
||||
{endmarker}
|
||||
Execute Ruby script {script}.
|
||||
{endpattern} must NOT be preceded by any white space.
|
||||
If {endpattern} is omitted, it defaults to a dot '.'
|
||||
like for the |:append| and |:insert| commands. This
|
||||
form of the |:ruby| command is mainly useful for
|
||||
The {endmarker} after {script} must NOT be preceded by
|
||||
any white space.
|
||||
|
||||
If [endmarker] is omitted, it defaults to a dot '.'
|
||||
like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:ruby| command is mainly useful for
|
||||
including ruby code in vim scripts.
|
||||
|
||||
Note: This command doesn't work when the Ruby feature
|
||||
wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_tcl.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_tcl.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ingo Wilken
|
||||
@@ -30,7 +30,7 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
||||
is working: >
|
||||
:tcl puts "Hello"
|
||||
|
||||
:[range]tc[l] << {endmarker}
|
||||
:[range]tc[l] << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute Tcl script {script}.
|
||||
@@ -38,9 +38,11 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
||||
wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
{endmarker} must NOT be preceded by any white space. If {endmarker} is
|
||||
omitted from after the "<<", a dot '.' must be used after {script}, like for
|
||||
the |:append| and |:insert| commands.
|
||||
The {endmarker} after {script} must NOT be preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot '.' must be used after
|
||||
{script}, like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:tcl| command is mainly useful for including tcl code in Vim
|
||||
scripts.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*indent.txt* For Vim version 8.1. Last change: 2019 Feb 21
|
||||
*indent.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -532,7 +532,7 @@ The examples below assume a 'shiftwidth' of 4.
|
||||
<
|
||||
*javascript-cinoptions* *javascript-indenting* *cino-J*
|
||||
JN Indent JavaScript object declarations correctly by not confusing
|
||||
them with labels. The value 'N' is currently unused but must be
|
||||
them with labels. The value 'N' is currently unused but must be
|
||||
non-zero (e.g. 'J1'). If you enable this you probably also want
|
||||
to set |cino-j|. >
|
||||
|
||||
@@ -541,7 +541,7 @@ The examples below assume a 'shiftwidth' of 4.
|
||||
that: this,
|
||||
some: ok,
|
||||
},
|
||||
"bar":{
|
||||
"bar":{
|
||||
a : 2,
|
||||
b: "123abc",
|
||||
x: 4,
|
||||
@@ -812,6 +812,16 @@ Detail:
|
||||
<!-- --> : -1
|
||||
|
||||
|
||||
MATLAB *ft-matlab-indent* *matlab-indent* *matlab-indenting*
|
||||
|
||||
The setting Function indenting format in MATLAB Editor/Debugger Language
|
||||
Preferences corresponds to: >
|
||||
:let g:MATLAB_function_indent = {0, 1 or 2 (default)}
|
||||
|
||||
Where 0 is for Classic, 1 for Indent nested functions and 2 for Indent all
|
||||
functions.
|
||||
|
||||
|
||||
PHP *ft-php-indent* *php-indent* *php-indenting*
|
||||
|
||||
NOTE: PHP files will be indented correctly only if PHP |syntax| is active.
|
||||
@@ -885,7 +895,7 @@ To automatically remove '\r' characters when the 'fileformat' is set to Unix: >
|
||||
*PHP_BracesAtCodeLevel*
|
||||
To indent braces at the same level than the code they contain: >
|
||||
:let g:PHP_BracesAtCodeLevel = 1
|
||||
|
||||
|
||||
This will give the following result: >
|
||||
if ($foo)
|
||||
{
|
||||
@@ -901,7 +911,7 @@ NOTE: Indenting will be a bit slower if this option is used because some
|
||||
optimizations won't be available.
|
||||
-------------
|
||||
|
||||
*PHP_vintage_case_default_indent*
|
||||
*PHP_vintage_case_default_indent*
|
||||
To indent 'case:' and 'default:' statements in switch() blocks: >
|
||||
:let g:PHP_vintage_case_default_indent = 1
|
||||
|
||||
@@ -928,6 +938,43 @@ You will obtain the following result: >
|
||||
->age()
|
||||
->info();
|
||||
|
||||
-------------
|
||||
|
||||
*PHP_IndentFunctionCallParameters*
|
||||
Extra indentation levels to add to parameters in multi-line function calls. >
|
||||
let g:PHP_IndentFunctionCallParameters = 1
|
||||
|
||||
Function call arguments will indent 1 extra level. For two-space indentation: >
|
||||
|
||||
function call_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
) {
|
||||
$this->do_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
);
|
||||
}
|
||||
|
||||
-------------
|
||||
|
||||
*PHP_IndentFunctionDeclarationParameters*
|
||||
Extra indentation levels to add to arguments in multi-line function
|
||||
definitions. >
|
||||
let g:PHP_IndentFunctionDeclarationParameters = 1
|
||||
|
||||
Function arguments in declarations will indent 1 extra level. For two-space
|
||||
indentation: >
|
||||
|
||||
function call_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
) {
|
||||
$this->do_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
PYTHON *ft-python-indent*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 8.1. Last change: 2019 Jun 16
|
||||
*index.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -23,7 +23,7 @@ to look for deleting something, use: "/delete".
|
||||
5. Terminal-Job mode |terminal-job-index|
|
||||
6. EX commands |ex-cmd-index|
|
||||
|
||||
For an overview of options see help.txt |option-list|.
|
||||
For an overview of options see |option-list|.
|
||||
For an overview of built-in functions see |functions|.
|
||||
For a list of Vim variables see |vim-variable|.
|
||||
For a complete listing of all help items see |help-tags|.
|
||||
@@ -73,14 +73,14 @@ tag char action in Insert mode ~
|
||||
the cursor
|
||||
|i_CTRL-Q| CTRL-Q same as CTRL-V, unless used for terminal
|
||||
control flow
|
||||
|i_CTRL-R| CTRL-R {0-9a-z"%#*:=}
|
||||
|i_CTRL-R| CTRL-R {register}
|
||||
insert the contents of a register
|
||||
|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:=}
|
||||
|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {register}
|
||||
insert the contents of a register literally
|
||||
|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {0-9a-z"%#*:=}
|
||||
|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {register}
|
||||
insert the contents of a register literally
|
||||
and don't auto-indent
|
||||
|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {0-9a-z"%#*:=}
|
||||
|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {register}
|
||||
insert the contents of a register literally
|
||||
and fix indent.
|
||||
CTRL-S (used for terminal control flow)
|
||||
@@ -166,7 +166,6 @@ commands in CTRL-X submode *i_CTRL-X_index*
|
||||
|i_CTRL-X_CTRL-V| CTRL-X CTRL-V complete like in : command line
|
||||
|i_CTRL-X_CTRL-]| CTRL-X CTRL-] complete tags
|
||||
|i_CTRL-X_s| CTRL-X s spelling suggestions
|
||||
{not available when compiled without the |+insert_expand| feature}
|
||||
|
||||
commands in completion mode (see |popupmenu-keys|)
|
||||
|
||||
@@ -782,6 +781,7 @@ tag char note action in Normal mode ~
|
||||
|gn| gn 1,2 find the next match with the last used
|
||||
search pattern and Visually select it
|
||||
|gm| gm 1 go to character at middle of the screenline
|
||||
|gM| gM 1 go to character at middle of the text line
|
||||
|go| go 1 cursor to byte N in the buffer
|
||||
|gp| ["x]gp 2 put the text [from register x] after the
|
||||
cursor N times, leave the cursor after it
|
||||
@@ -1129,6 +1129,8 @@ The commands are sorted on the non-optional part of their name.
|
||||
|
||||
tag command action ~
|
||||
------------------------------------------------------------------------------
|
||||
|:| : nothing
|
||||
|:range| :{range} go to last line in {range}
|
||||
|:!| :! filter lines or execute an external command
|
||||
|:!!| :!! repeat last ":!" command
|
||||
|:#| :# same as ":number"
|
||||
@@ -1592,6 +1594,7 @@ tag command action ~
|
||||
|:spelldump| :spelld[ump] split window and fill with all correct words
|
||||
|:spellgood| :spe[llgood] add good word for spelling
|
||||
|:spellinfo| :spelli[nfo] show info about loaded spell files
|
||||
|:spellrare| :spellra[re] add rare word for spelling
|
||||
|:spellrepall| :spellr[epall] replace all bad words like last |z=|
|
||||
|:spellundo| :spellu[ndo] remove good or bad word
|
||||
|:spellwrong| :spellw[rong] add spelling mistake
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*insert.txt* For Vim version 8.1. Last change: 2019 Nov 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -106,7 +106,7 @@ CTRL-K {char1} [char2]
|
||||
CTRL-N Find next keyword (see |i_CTRL-N|).
|
||||
CTRL-P Find previous keyword (see |i_CTRL-P|).
|
||||
|
||||
CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R*
|
||||
CTRL-R {register} *i_CTRL-R*
|
||||
Insert the contents of a register. Between typing CTRL-R and
|
||||
the second character, '"' will be displayed to indicate that
|
||||
you are expected to enter the name of a register.
|
||||
@@ -143,7 +143,7 @@ CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R*
|
||||
sequence will be broken.
|
||||
See |registers| about registers.
|
||||
|
||||
CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
|
||||
CTRL-R CTRL-R {register} *i_CTRL-R_CTRL-R*
|
||||
Insert the contents of a register. Works like using a single
|
||||
CTRL-R, but the text is inserted literally, not as if typed.
|
||||
This differs when the register contains characters like <BS>.
|
||||
@@ -155,7 +155,7 @@ CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
|
||||
The '.' register (last inserted text) is still inserted as
|
||||
typed.
|
||||
|
||||
CTRL-R CTRL-O {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-O*
|
||||
CTRL-R CTRL-O {register} *i_CTRL-R_CTRL-O*
|
||||
Insert the contents of a register literally and don't
|
||||
auto-indent. Does the same as pasting with the mouse
|
||||
|<MiddleMouse>|. When the register is linewise this will
|
||||
@@ -164,7 +164,7 @@ CTRL-R CTRL-O {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-O*
|
||||
The '.' register (last inserted text) is still inserted as
|
||||
typed.
|
||||
|
||||
CTRL-R CTRL-P {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-P*
|
||||
CTRL-R CTRL-P {register} *i_CTRL-R_CTRL-P*
|
||||
Insert the contents of a register literally and fix the
|
||||
indent, like |[<MiddleMouse>|.
|
||||
Does not replace characters!
|
||||
@@ -196,6 +196,13 @@ CTRL-V Insert next non-digit literally. For special keys, the
|
||||
mapping.
|
||||
Note: When CTRL-V is mapped (e.g., to paste text) you can
|
||||
often use CTRL-Q instead |i_CTRL-Q|.
|
||||
When |modifyOtherKeys| is enabled then special Escape sequence
|
||||
is converted back to what it was without |modifyOtherKeys|,
|
||||
unless the Shift key is also pressed.
|
||||
|
||||
*i_CTRL-SHIFT-V*
|
||||
CTRL-SHIFT-V Works just like CTRL-V, unless |modifyOtherKeys| is active,
|
||||
then it inserts the Escape sequence for a key with modifiers.
|
||||
|
||||
*i_CTRL-Q*
|
||||
CTRL-Q Same as CTRL-V.
|
||||
@@ -300,8 +307,7 @@ character is written at the end of each line. Thus if you want to insert a
|
||||
|
||||
*i_CTRL-X* *insert_expand*
|
||||
CTRL-X enters a sub-mode where several commands can be used. Most of these
|
||||
commands do keyword completion; see |ins-completion|. These are not available
|
||||
when Vim was compiled without the |+insert_expand| feature.
|
||||
commands do keyword completion; see |ins-completion|.
|
||||
|
||||
Two commands can be used to scroll the window up or down, without exiting
|
||||
insert mode:
|
||||
@@ -609,9 +615,6 @@ In Insert and Replace mode, there are several commands to complete part of a
|
||||
keyword or line that has been typed. This is useful if you are using
|
||||
complicated keywords (e.g., function names with capitals and underscores).
|
||||
|
||||
These commands are not available when the |+insert_expand| feature was
|
||||
disabled at compile time.
|
||||
|
||||
Completion can be done for:
|
||||
|
||||
1. Whole lines |i_CTRL-X_CTRL-L|
|
||||
@@ -1092,7 +1095,7 @@ items:
|
||||
menu extra text for the popup menu, displayed after "word"
|
||||
or "abbr"
|
||||
info more information about the item, can be displayed in a
|
||||
preview window
|
||||
preview or popup window
|
||||
kind single letter indicating the type of completion
|
||||
icase when non-zero case is to be ignored when comparing
|
||||
items to be equal; when omitted zero is used, thus
|
||||
@@ -1114,12 +1117,55 @@ items in the returned list.
|
||||
|
||||
The "menu" item is used in the popup menu and may be truncated, thus it should
|
||||
be relatively short. The "info" item can be longer, it will be displayed in
|
||||
the preview window when "preview" appears in 'completeopt'. The "info" item
|
||||
will also remain displayed after the popup menu has been removed. This is
|
||||
useful for function arguments. Use a single space for "info" to remove
|
||||
existing text in the preview window. The size of the preview window is three
|
||||
lines, but 'previewheight' is used when it has a value of 1 or 2.
|
||||
the preview window when "preview" appears in 'completeopt' or in a popup
|
||||
window when "popup" appears in 'completeopt'. In the preview window the
|
||||
"info" item will also remain displayed after the popup menu has been removed.
|
||||
This is useful for function arguments. Use a single space for "info" to
|
||||
remove existing text in the preview window. The size of the preview window is
|
||||
three lines, but 'previewheight' is used when it has a value of 1 or 2.
|
||||
|
||||
*complete-popup*
|
||||
When "popup" is in 'completeopt' a popup window is used to display the "info".
|
||||
Then the 'completepopup' option specifies the properties of the popup. This
|
||||
is used when the info popup is created. The option is a comma separated list
|
||||
of values:
|
||||
height maximum height of the popup
|
||||
width maximum width of the popup
|
||||
highlight highlight group of the popup (default is PmenuSel)
|
||||
align "item" (default) or "menu"
|
||||
border "on" (default) or "off"
|
||||
Example: >
|
||||
:set completepopup=height:10,width:60,highlight:InfoPopup
|
||||
|
||||
When the "align" value is "item" then the popup is positioned close to the
|
||||
selected item. Changing the selection will also move the popup. When "align"
|
||||
is "menu" then the popup is aligned with the top of the menu if the menu is
|
||||
below the text, and the bottom of the menu otherwise.
|
||||
|
||||
After the info popup is created it can be found with |popup_findinfo()| and
|
||||
properties can be changed with |popup_setoptions()|.
|
||||
|
||||
*complete-popuphidden*
|
||||
If the information for the popup is obtained asynchronously, use "popuphidden"
|
||||
in 'completeopt'. The info popup will then be initially hidden and
|
||||
|popup_show()| must be called once it has been filled with the info. This can
|
||||
be done with a |CompleteChanged| autocommand, something like this: >
|
||||
set completeopt+=popuphidden
|
||||
au CompleteChanged * call UpdateCompleteInfo()
|
||||
func UpdateCompleteInfo()
|
||||
" Cancel any pending info fetch
|
||||
let item = v:event.completed_item
|
||||
" Start fetching info for the item then call ShowCompleteInfo(info)
|
||||
endfunc
|
||||
func ShowCompleteInfo(info)
|
||||
let id = popup_findinfo()
|
||||
if id
|
||||
call popup_settext(id, 'async info: ' .. a:info)
|
||||
call popup_show(id)
|
||||
endif
|
||||
endfunc
|
||||
|
||||
< *complete-item-kind*
|
||||
The "kind" item uses a single letter to indicate the kind of completion. This
|
||||
may be used to show the completion differently (different color or icon).
|
||||
Currently these types can be used:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 8.1. Last change: 2019 Jun 26
|
||||
*intro.txt* For Vim version 8.1. Last change: 2019 Nov 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -234,7 +234,7 @@ Vim would never have become what it is now, without the help of these people!
|
||||
Sung-Hyun Nam Work on multi-byte versions
|
||||
Vince Negri Win32 GUI and generic console enhancements
|
||||
Steve Oualline Author of the first Vim book |frombook|
|
||||
Dominique Pelle valgrind reports and many fixes
|
||||
Dominique Pelle Valgrind reports and many fixes
|
||||
A.Politz Many bug reports and some fixes
|
||||
George V. Reilly Win32 port, Win32 GUI start-off
|
||||
Stephen Riehm bug collector
|
||||
@@ -508,6 +508,9 @@ the ":map" command. The rules are:
|
||||
<M-a> Meta- a ('a' with bit 8 set)
|
||||
<M-A> Meta- A ('A' with bit 8 set)
|
||||
<t_kd> "kd" termcap entry (cursor down key)
|
||||
Although you can specify <M-{char}> with {char} being a multi-byte
|
||||
character, Vim may not be able to know what byte sequence that is and then
|
||||
it won't work.
|
||||
|
||||
If you want to use the full <> notation in Vim, you have to make sure the '<'
|
||||
flag is excluded from 'cpoptions' (when 'compatible' is not set, it already is
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*map.txt* For Vim version 8.1. Last change: 2019 Nov 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -20,7 +20,8 @@ manual.
|
||||
1.8 Examples |map-examples|
|
||||
1.9 Using mappings |map-typing|
|
||||
1.10 Mapping alt-keys |:map-alt-keys|
|
||||
1.11 Mapping an operator |:map-operator|
|
||||
1.11 Mapping in modifyOtherKeys mode |modifyOtherKeys|
|
||||
1.12 Mapping an operator |:map-operator|
|
||||
2. Abbreviations |abbreviations|
|
||||
3. Local mappings and functions |script-local|
|
||||
4. User-defined commands |user-commands|
|
||||
@@ -357,6 +358,8 @@ Some commands work both in Insert mode and Command-line mode, some not:
|
||||
:cmap :cnoremap :cunmap :cmapclear - yes -
|
||||
:lmap :lnoremap :lunmap :lmapclear yes* yes* yes*
|
||||
|
||||
* If 'iminsert' is 1, see |language-mapping| below.
|
||||
|
||||
The original Vi did not have separate mappings for
|
||||
Normal/Visual/Operator-pending mode and for Insert/Command-line mode.
|
||||
Therefore the ":map" and ":map!" commands enter and display mappings for
|
||||
@@ -777,6 +780,9 @@ In the GUI Vim handles the Alt key itself, thus mapping keys with ALT should
|
||||
always work. But in a terminal Vim gets a sequence of bytes and has to figure
|
||||
out whether ALT was pressed or not.
|
||||
|
||||
If the terminal supports the modifyOtherKeys mode and it has been enabled,
|
||||
then Vim can recognize more key combinations, see |modifyOtherKeys| below.
|
||||
|
||||
By default Vim assumes that pressing the ALT key sets the 8th bit of a typed
|
||||
character. Most decent terminals can work that way, such as xterm, aterm and
|
||||
rxvt. If your <A-k> mappings don't work it might be that the terminal is
|
||||
@@ -814,7 +820,39 @@ on the terminal; that's a good last resource in case you want to send ESC when
|
||||
using other applications but not when inside Vim.
|
||||
|
||||
|
||||
1.11 MAPPING AN OPERATOR *:map-operator*
|
||||
1.11 MAPPING IN modifyOtherKeys mode *modifyOtherKeys*
|
||||
|
||||
Xterm and a few other terminals can be put in a mode where keys with modifiers
|
||||
are sent with a special escape code. Vim recognizes these codes and can then
|
||||
make a difference between CTRL-H and Backspace, even when Backspace sends the
|
||||
character 8. And many more special keys.
|
||||
|
||||
For xterm modifyOtherKeys is enabled in the builtin termcap entry. If this is
|
||||
not used you can enable modifyOtherKeys with these lines in your vimrc: >
|
||||
let &t_TI = "\<Esc>[>4;2m"
|
||||
let &t_TE = "\<Esc>[>4;m"
|
||||
|
||||
In case the modifyOtherKeys mode causes problems you can disable it: >
|
||||
let &t_TI = ""
|
||||
let &t_TE = ""
|
||||
It does not take effect immediately. To have this work without restarting Vim
|
||||
execute a shell command, e.g.: `!ls` Or put the lines in your |vimrc|.
|
||||
|
||||
When modifyOtherKeys is enabled you can map <C-[> and <C-S-{>: >
|
||||
imap <C-[> [[[
|
||||
imap <C-S-{> {{{
|
||||
Without modifyOtherKeys <C-[> and <C-S-{> are indistinguishable from Esc.
|
||||
|
||||
A known side effect effect is that in Insert mode the raw escape sequence is
|
||||
inserted after the CTRL-V key. This can be used to check whether
|
||||
modifyOtherKeys is enabled: In Insert mode type CTRL-V CTRL-V, if you get
|
||||
one byte then modifyOtherKeys is off, if you get <1b>27;5;118~ then it is on.
|
||||
|
||||
When the 'esckeys' option is off, then modifyOtherKeys will be disabled in
|
||||
Insert mode to avoid every key with a modifier causing Insert mode to end.
|
||||
|
||||
|
||||
1.12 MAPPING AN OPERATOR *:map-operator*
|
||||
|
||||
An operator is used before a {motion} command. To define your own operator
|
||||
you must create mapping that first sets the 'operatorfunc' option and then
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mbyte.txt* For Vim version 8.1. Last change: 2019 Apr 28
|
||||
*mbyte.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||
@@ -943,11 +943,12 @@ To input multibyte characters on Windows, you can use an Input Method Editor
|
||||
IME many many many times. Because IME with status on is hooking all of your
|
||||
key inputs, you cannot input 'j', 'k', or almost all of keys to Vim directly.
|
||||
|
||||
This |+multi_byte_ime| feature help this. It reduce times of switch status of
|
||||
IME manually. In normal mode, there are almost no need working IME, even
|
||||
editing multibyte text. So exiting insert mode with ESC, Vim memorize last
|
||||
status of IME and force turn off IME. When re-enter insert mode, Vim revert
|
||||
IME status to that memorized automatically.
|
||||
The |+multi_byte_ime| feature helps for this. It reduces the number of times
|
||||
the IME status has to be switched manually. In Normal mode, there is almost
|
||||
no need to use IME, even when editing multibyte text. So when exiting Insert
|
||||
mode, Vim memorizes the last status of IME and turns off IME. When
|
||||
re-entering Insert mode, Vim sets the IME status to that memorized status
|
||||
automatically.
|
||||
|
||||
This works on not only insert-normal mode, but also search-command input and
|
||||
replace mode.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 8.1. Last change: 2019 May 18
|
||||
*message.txt* For Vim version 8.1. Last change: 2019 Oct 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -479,6 +479,9 @@ out-of-memory situation. First make sure that any changes are saved. Then
|
||||
try to solve the memory shortage. To stay on the safe side, exit Vim and
|
||||
start again.
|
||||
|
||||
If this happens while Vim is still initializing, editing files is very
|
||||
unlikely to work, therefore Vim will exit with value 123.
|
||||
|
||||
Buffers are only partly kept in memory, thus editing a very large file is
|
||||
unlikely to cause an out-of-memory situation. Undo information is completely
|
||||
in memory, you can reduce that with these options:
|
||||
@@ -579,7 +582,8 @@ allowed for the command that was used.
|
||||
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
|
||||
memory when editing a big file. You may want to change the 'directory' option
|
||||
to avoid this error. See |swap-file|.
|
||||
to avoid this error. This error is not given when 'directory' is empty. See
|
||||
|swap-file|.
|
||||
|
||||
*E140* >
|
||||
Use ! to write partial buffer
|
||||
@@ -809,6 +813,8 @@ To reduce the number of hit-enter prompts:
|
||||
- Set 'cmdheight' to 2 or higher.
|
||||
- Add flags to 'shortmess'.
|
||||
- Reset 'showcmd' and/or 'ruler'.
|
||||
- Make sure `:echo` text is shorter than or equal to |v:echospace| screen
|
||||
cells.
|
||||
|
||||
If your script causes the hit-enter prompt and you don't know why, you may
|
||||
find the |v:scrollstart| variable useful.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*motion.txt* For Vim version 8.1. Last change: 2019 Nov 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -227,6 +227,12 @@ g^ When lines wrap ('wrap' on): To the first non-blank
|
||||
gm Like "g0", but half a screenwidth to the right (or as
|
||||
much as possible).
|
||||
|
||||
*gM*
|
||||
gM Like "g0", but to halfway the text of the line.
|
||||
With a count: to this percentage of text in the line.
|
||||
Thus "10gM" is near the start of the text and "90gM"
|
||||
is near the end of the text.
|
||||
|
||||
*g$* *g<End>*
|
||||
g$ or g<End> When lines wrap ('wrap' on): To the last character of
|
||||
the screen line and [count - 1] screen lines downward
|
||||
@@ -958,6 +964,7 @@ These commands are not marks themselves, but jump to a mark:
|
||||
- numbered marks '0 - '9
|
||||
- last insert position '^
|
||||
- last change position '.
|
||||
- last affected text area '[ and ']
|
||||
- the Visual area '< and '>
|
||||
- line numbers in placed signs
|
||||
- line numbers in quickfix positions
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Jun 27
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Dec 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -496,10 +496,11 @@ to set options automatically for one or more files:
|
||||
|
||||
*modeline* *vim:* *vi:* *ex:* *E520*
|
||||
There are two forms of modelines. The first form:
|
||||
[text]{white}{vi:|vim:|ex:}[white]{options}
|
||||
[text{white}]{vi:|vim:|ex:}[white]{options}
|
||||
|
||||
[text] any text or empty
|
||||
{white} at least one blank character (<Space> or <Tab>)
|
||||
[text{white}] empty or any text followed by at least one blank
|
||||
character (<Space> or <Tab>); "ex:" always requires at
|
||||
least one blank character
|
||||
{vi:|vim:|ex:} the string "vi:", "vim:" or "ex:"
|
||||
[white] optional white space
|
||||
{options} a list of option settings, separated with white space
|
||||
@@ -856,6 +857,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
:set background&
|
||||
< Vim will guess the value. In the GUI this should work correctly,
|
||||
in other cases Vim might not be able to guess the right value.
|
||||
If the GUI supports a dark theme, you can use the "d" flag in
|
||||
'guioptions', see 'go-d'.
|
||||
|
||||
When the |t_RB| option is set, Vim will use it to request the background
|
||||
color from the terminal. If the returned RGB value is dark/light and
|
||||
@@ -1131,6 +1134,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
v:beval_col column number (byte index)
|
||||
v:beval_text word under or after the mouse pointer
|
||||
|
||||
Instead of showing a balloon, which is limited to plain text, consider
|
||||
using a popup window, see |popup_beval_example|. A popup window can
|
||||
use highlighting and show a border.
|
||||
|
||||
The evaluation of the expression must not have side effects!
|
||||
Example: >
|
||||
function MyBalloonExpr()
|
||||
@@ -1142,8 +1149,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
set bexpr=MyBalloonExpr()
|
||||
set ballooneval
|
||||
<
|
||||
Also see |balloon_show()|, can be used if the content of the balloon
|
||||
is to be fetched asynchronously.
|
||||
Also see |balloon_show()|, it can be used if the content of the balloon
|
||||
is to be fetched asynchronously. In that case evaluating
|
||||
'balloonexpr' should result in an empty string. If you get a balloon
|
||||
with only "0" you probably didn't return anything from your function.
|
||||
|
||||
NOTE: The balloon is displayed only if the cursor is on a text
|
||||
character. If the result of evaluating 'balloonexpr' is not empty,
|
||||
@@ -1155,7 +1164,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.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'balloonexpr' |textlock|.
|
||||
evaluating 'balloonexpr', see |textlock|.
|
||||
|
||||
To check whether line breaks in the balloon text work use this check: >
|
||||
if has("balloon_multiline")
|
||||
@@ -1187,7 +1196,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
(mostly used in |Normal-mode| or |Cmdline-mode|).
|
||||
esc hitting <Esc> in |Normal-mode|.
|
||||
ex In |Visual-mode|, hitting |Q| results in an error.
|
||||
hangul Error occurred when using hangul input.
|
||||
hangul Ignored.
|
||||
insertmode Pressing <Esc> in 'insertmode'.
|
||||
lang Calling the beep module for Lua/Mzscheme/TCL.
|
||||
mess No output available for |g<|.
|
||||
@@ -1434,8 +1443,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'cedit'*
|
||||
'cedit' string (Vi default: "", Vim default: CTRL-F)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
The key used in Command-line Mode to open the command-line window.
|
||||
The default is CTRL-F when 'compatible' is off.
|
||||
Only non-printable keys are allowed.
|
||||
@@ -1638,8 +1645,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'cmdwinheight'* *'cwh'*
|
||||
'cmdwinheight' 'cwh' number (default 7)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
Number of screen lines to use for the command-line window. |cmdwin|
|
||||
|
||||
*'colorcolumn'* *'cc'*
|
||||
@@ -1681,8 +1686,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'comments' 'com' string (default
|
||||
"s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-")
|
||||
local to buffer
|
||||
{not available when compiled without the |+comments|
|
||||
feature}
|
||||
A comma separated list of strings that can start a comment line. See
|
||||
|format-comments|. See |option-backslash| about using backslashes to
|
||||
insert a space.
|
||||
@@ -1864,7 +1867,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'completefunc' 'cfu' string (default: empty)
|
||||
local to buffer
|
||||
{not available when compiled without the |+eval|
|
||||
or |+insert_expand| features}
|
||||
feature}
|
||||
This option specifies a function to be used for Insert mode completion
|
||||
with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U|
|
||||
See |complete-functions| for an explanation of how the function is
|
||||
@@ -1872,11 +1875,24 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'completeslash'* *'csl'*
|
||||
'completeslash' 'csl' string (default: "")
|
||||
local to buffer
|
||||
{only for MS-Windows}
|
||||
When this option is set it overrules 'shellslash' for completion:
|
||||
- When this option is set to "slash", a forward slash is used for path
|
||||
completion in insert mode. This is useful when editing HTML tag, or
|
||||
Makefile with 'noshellslash' on Windows.
|
||||
- When this option is set to "backslash", backslash is used. This is
|
||||
useful when editing a batch file with 'shellslash' set on Windows.
|
||||
- When this option is empty, same character is used as for
|
||||
'shellslash'.
|
||||
For Insert mode completion the buffer-local value is used. For
|
||||
command line completion the global value is used.
|
||||
|
||||
*'completeopt'* *'cot'*
|
||||
'completeopt' 'cot' string (default: "menu,preview")
|
||||
global
|
||||
{not available when compiled without the
|
||||
|+insert_expand| feature}
|
||||
A comma separated list of options for Insert mode completion
|
||||
|ins-completion|. The supported values are:
|
||||
|
||||
@@ -1898,6 +1914,19 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
completion in the preview window. Only works in
|
||||
combination with "menu" or "menuone".
|
||||
|
||||
popup Show extra information about the currently selected
|
||||
completion in a popup window. Only works in combination
|
||||
with "menu" or "menuone". Overrides "preview".
|
||||
See |'completepopup'| for specifying properties.
|
||||
{only works when compiled with the |+textprop| feature}
|
||||
|
||||
popuphidden
|
||||
Just like "popup" but initially hide the popup. Use a
|
||||
|CompleteChanged| autocommand to fetch the info and call
|
||||
|popup_show()| once the popup has been filled.
|
||||
See the example at |complete-popuphidden|.
|
||||
{only works when compiled with the |+textprop| feature}
|
||||
|
||||
noinsert Do not insert any text for a match until the user selects
|
||||
a match from the menu. Only works in combination with
|
||||
"menu" or "menuone". No effect if "longest" is present.
|
||||
@@ -1907,6 +1936,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"menu" or "menuone".
|
||||
|
||||
|
||||
*'completepopup'* *'cpp'*
|
||||
'completepopup' 'cpp' string (default empty)
|
||||
global
|
||||
{not available when compiled without the |+textprop|
|
||||
or |+quickfix| feature}
|
||||
When 'completeopt' contains "popup" then this option is used for the
|
||||
properties of the info popup when it is created. You can also use
|
||||
|popup_findinfo()| and then set properties for an existing info popup
|
||||
with |popup_setoptions()|. See |complete-popup|.
|
||||
|
||||
|
||||
*'concealcursor'* *'cocu'*
|
||||
'concealcursor' 'cocu' string (default: "")
|
||||
local to window
|
||||
@@ -2429,13 +2469,32 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
local to window
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
Highlight the screen line of the cursor with CursorLine
|
||||
|hl-CursorLine|. Useful to easily spot the cursor. Will make screen
|
||||
redrawing slower.
|
||||
Highlight the text line of the cursor with CursorLine |hl-CursorLine|.
|
||||
Useful to easily spot the cursor. Will make screen redrawing slower.
|
||||
When Visual mode is active the highlighting isn't used to make it
|
||||
easier to see the selected text.
|
||||
|
||||
|
||||
*'cursorlineopt'* *'culopt'*
|
||||
'cursorlineopt' 'culopt' string (default: "number,line")
|
||||
local to window
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
Comma separated list of settings for how 'cursorline' is displayed.
|
||||
Valid values:
|
||||
"line" Highlight the text line of the cursor with
|
||||
CursorLine |hl-CursorLine|.
|
||||
"screenline" Highlight only the screen line of the cursor with
|
||||
CursorLine |hl-CursorLine|.
|
||||
"number" Highlight the line number of the cursor with
|
||||
CursorLineNr |hl-CursorLineNr|.
|
||||
|
||||
Special value:
|
||||
"both" Alias for the values "line,number".
|
||||
|
||||
"line" and "screenline" cannot be used together.
|
||||
|
||||
|
||||
*'debug'*
|
||||
'debug' string (default "")
|
||||
global
|
||||
@@ -2533,7 +2592,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
security reasons.
|
||||
|
||||
*'dip'* *'diffopt'*
|
||||
'diffopt' 'dip' string (default "internal,filler")
|
||||
'diffopt' 'dip' string (default "internal,filler,closeoff")
|
||||
global
|
||||
{not available when compiled without the |+diff|
|
||||
feature}
|
||||
@@ -2592,6 +2651,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
vertical Start diff mode with vertical splits (unless
|
||||
explicitly specified otherwise).
|
||||
|
||||
closeoff When a window is closed where 'diff' is set
|
||||
and there is only one window remaining in the
|
||||
same tab page with 'diff' set, execute
|
||||
`:diffoff` in that window. This undoes a
|
||||
`:diffsplit` command.
|
||||
|
||||
hiddenoff Do not use diff mode for a buffer when it
|
||||
becomes hidden.
|
||||
|
||||
@@ -2642,7 +2707,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
- The swap file will be created in the first directory where this is
|
||||
possible.
|
||||
- Empty means that no swap file will be used (recovery is
|
||||
impossible!).
|
||||
impossible!) and no |E303| error will be given.
|
||||
- A directory "." means to put the swap file in the same directory as
|
||||
the edited file. On Unix, a dot is prepended to the file name, so
|
||||
it doesn't show in a directory listing. On MS-Windows the "hidden"
|
||||
@@ -2703,8 +2768,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'eadirection'* *'ead'*
|
||||
'eadirection' 'ead' string (default "both")
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
Tells when the 'equalalways' option applies:
|
||||
ver vertically, width of windows is not affected
|
||||
hor horizontally, height of windows is not affected
|
||||
@@ -2877,6 +2940,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
won't work by default.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
NOTE: when this option is off then the |modifyOtherKeys| functionality
|
||||
is disabled while in Insert mode to avoid ending Insert mode with any
|
||||
key that has a modifier.
|
||||
|
||||
*'eventignore'* *'ei'*
|
||||
'eventignore' 'ei' string (default "")
|
||||
@@ -3140,8 +3206,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'fillchars'* *'fcs'*
|
||||
'fillchars' 'fcs' string (default "vert:|,fold:-")
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
and |+folding| features}
|
||||
{not available when compiled without the |+folding|
|
||||
feature}
|
||||
Characters to fill the statuslines and vertical separators.
|
||||
It is a comma separated list of items:
|
||||
|
||||
@@ -3690,6 +3756,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'go-c'*
|
||||
'c' Use console dialogs instead of popup dialogs for simple
|
||||
choices.
|
||||
*'go-d'*
|
||||
'd' Use dark theme variant if available. Currently only works for
|
||||
GTK+ GUI.
|
||||
*'go-e'*
|
||||
'e' Add tab pages when indicated with 'showtabline'.
|
||||
'guitablabel' can be used to change the text in the labels.
|
||||
@@ -3777,8 +3846,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'guitablabel'* *'gtl'*
|
||||
'guitablabel' 'gtl' string (default empty)
|
||||
global
|
||||
{only available when compiled with GUI enabled and
|
||||
with the |+windows| feature}
|
||||
{only available when compiled with GUI enabled}
|
||||
When nonempty 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
|
||||
default label. See |setting-guitablabel| for more info.
|
||||
@@ -3796,8 +3864,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'guitabtooltip'* *'gtt'*
|
||||
'guitabtooltip' 'gtt' string (default empty)
|
||||
global
|
||||
{only available when compiled with GUI enabled and
|
||||
with the |+windows| feature}
|
||||
{only available when compiled with GUI enabled}
|
||||
When nonempty describes the text to use in a tooltip for the GUI tab
|
||||
pages line. When empty Vim will use a default tooltip.
|
||||
This option is otherwise just like 'guitablabel' above.
|
||||
@@ -3822,8 +3889,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'helpheight'* *'hh'*
|
||||
'helpheight' 'hh' number (default 20)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
Minimal initial height of the help window when it is opened with the
|
||||
":help" command. The initial height of the help window is half of the
|
||||
current window, or (when the 'ea' option is on) the same as other
|
||||
@@ -3868,6 +3933,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"8:SpecialKey,~:EndOfBuffer,@:NonText,
|
||||
d:Directory,e:ErrorMsg,i:IncSearch,
|
||||
l:Search,m:MoreMsg,M:ModeMsg,n:LineNr,
|
||||
a:LineNrAbove,b:LineNrBelow,
|
||||
N:CursorLineNr,r:Question,s:StatusLine,
|
||||
S:StatusLineNC,c:VertSplit,t:Title,
|
||||
v:Visual,V:VisualNOS,w:WarningMsg,
|
||||
@@ -3899,6 +3965,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|hl-ModeMsg| M Mode (e.g., "-- INSERT --")
|
||||
|hl-LineNr| n line number for ":number" and ":#" commands, and
|
||||
when 'number' or 'relativenumber' option is set.
|
||||
|hl-LineNrAbove| a line number above the cursor for when the
|
||||
'relativenumber' option is set.
|
||||
|hl-LineNrBelow| b line number below the cursor for when the
|
||||
'relativenumber' option is set.
|
||||
|hl-CursorLineNr| N like n for when 'cursorline' or 'relativenumber' is
|
||||
set.
|
||||
|hl-Question| r |hit-enter| prompt and yes/no questions
|
||||
@@ -4791,9 +4861,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
off and the line continues beyond the right of the
|
||||
screen.
|
||||
*lcs-precedes*
|
||||
precedes:c Character to show in the first column, when 'wrap'
|
||||
is off and there is text preceding the character
|
||||
visible in the first column.
|
||||
precedes:c Character to show in the first visible column of the
|
||||
physical line, when there is text preceding the
|
||||
character visible in the first column.
|
||||
*lcs-conceal*
|
||||
conceal:c Character to show in place of concealed text, when
|
||||
'conceallevel' is set to 1.
|
||||
@@ -5136,12 +5206,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'mouse'* *E538*
|
||||
'mouse' string (default "", "a" for GUI, MS-DOS and Win32,
|
||||
set to "a" in |defaults.vim|)
|
||||
set to "a" or "nvi" in |defaults.vim|)
|
||||
global
|
||||
Enable the use of the mouse. Only works for certain terminals
|
||||
(xterm, MS-DOS, Win32 |win32-mouse|, QNX pterm, *BSD console with
|
||||
sysmouse and Linux console with gpm). For using the mouse in the
|
||||
GUI, see |gui-mouse|.
|
||||
Enable the use of the mouse. Works for most terminals (xterm, MS-DOS,
|
||||
Win32 |win32-mouse|, QNX pterm, *BSD console with sysmouse and Linux
|
||||
console with gpm). For using the mouse in the GUI, see |gui-mouse|.
|
||||
The mouse can be enabled for different modes:
|
||||
n Normal mode and Terminal modes
|
||||
v Visual mode
|
||||
@@ -5152,7 +5221,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
r for |hit-enter| and |more-prompt| prompt
|
||||
Normally you would enable the mouse in all five modes with: >
|
||||
:set mouse=a
|
||||
< When the mouse is not enabled, the GUI will still use the mouse for
|
||||
< If your terminal can't overrule the mouse events going to the
|
||||
application, use: >
|
||||
:set mouse=nvi
|
||||
< The you can press ":", select text for the system, and press Esc to go
|
||||
back to Vim using the mouse events.
|
||||
In |defaults.vim| "nvi" is used if the 'term' option is not matching
|
||||
"xterm".
|
||||
|
||||
When the mouse is not enabled, the GUI will still use the mouse for
|
||||
modeless selection. This doesn't move the text cursor.
|
||||
|
||||
See |mouse-using|. Also see |'clipboard'|.
|
||||
@@ -5171,6 +5248,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
mouse pointer is moved to the window with keyboard focus. Off is the
|
||||
default because it makes using the pull down menus a little goofy, as
|
||||
a pointer transit may activate a window unintentionally.
|
||||
MS-Windows: Also see 'scrollfocus' for what window is scrolled when
|
||||
using the mouse scroll whel.
|
||||
|
||||
*'mousehide'* *'mh'* *'nomousehide'* *'nomh'*
|
||||
'mousehide' 'mh' boolean (default on)
|
||||
@@ -5207,8 +5286,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
In the "popup" model the right mouse button produces a pop-up menu.
|
||||
You need to define this first, see |popup-menu|.
|
||||
In a terminal the popup menu works if Vim is compiled with the
|
||||
|+insert_expand| option.
|
||||
|
||||
Note that you can further refine the meaning of buttons with mappings.
|
||||
See |gui-mouse-mapping|. But mappings are NOT used for modeless
|
||||
@@ -5393,7 +5470,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'omnifunc' 'ofu' string (default: empty)
|
||||
local to buffer
|
||||
{not available when compiled without the |+eval|
|
||||
or |+insert_expand| features}
|
||||
feature}
|
||||
This option specifies a function to be used for Insert mode omni
|
||||
completion with CTRL-X CTRL-O. |i_CTRL-X_CTRL-O|
|
||||
See |complete-functions| for an explanation of how the function is
|
||||
@@ -5622,17 +5699,28 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'previewheight'* *'pvh'*
|
||||
'previewheight' 'pvh' number (default 12)
|
||||
global
|
||||
{not available when compiled without the |+windows| or
|
||||
|+quickfix| features}
|
||||
{not available when compiled without the |+quickfix|
|
||||
feature}
|
||||
Default height for a preview window. Used for |:ptag| and associated
|
||||
commands. Used for |CTRL-W_}| when no count is given.
|
||||
commands. Used for |CTRL-W_}| when no count is given. Not used when
|
||||
'previewpopup' is set.
|
||||
|
||||
*'previewpopup'* *'pvp'*
|
||||
'previewpopup' 'pvp' string (default empty)
|
||||
global
|
||||
{not available when compiled without the |+textprop|
|
||||
or |+quickfix| feature}
|
||||
When not empty a popup window is used for commands that would open a
|
||||
preview window. See |preview-popup|.
|
||||
Not used for the insert completion info, add "popup" to
|
||||
'completeopt' for that.
|
||||
|
||||
*'previewwindow'* *'nopreviewwindow'*
|
||||
*'pvw'* *'nopvw'* *E590*
|
||||
'previewwindow' 'pvw' boolean (default off)
|
||||
local to window
|
||||
{not available when compiled without the |+windows| or
|
||||
|+quickfix| features}
|
||||
{not available when compiled without the |+quickfix|
|
||||
feature}
|
||||
Identifies the preview window. Only one window can have this option
|
||||
set. It's normally not set directly, but by using one of the commands
|
||||
|:ptag|, |:pedit|, etc.
|
||||
@@ -5712,8 +5800,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'pumheight'* *'ph'*
|
||||
'pumheight' 'ph' number (default 0)
|
||||
global
|
||||
{not available when compiled without the
|
||||
|+insert_expand| feature}
|
||||
Determines the maximum number of items to show in the popup menu for
|
||||
Insert mode completion. When zero as much space as available is used.
|
||||
|ins-completion-menu|.
|
||||
@@ -5721,8 +5807,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'pumwidth'* *'pw'*
|
||||
'pumwidth' 'pw' number (default 15)
|
||||
global
|
||||
{not available when compiled without the
|
||||
|+insert_expand| feature}
|
||||
Determines the minimum width to use for the popup menu for Insert mode
|
||||
completion. |ins-completion-menu|.
|
||||
|
||||
@@ -6210,6 +6294,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
file. This means that ":split | edit file" results in two windows
|
||||
with scroll-binding, but ":split file" does not.
|
||||
|
||||
*'scrollfocus'* *'scf'* *'noscrollfocus'* *'noscf'*
|
||||
'scrollfocus' 'scf' boolean (default off)
|
||||
global
|
||||
{only for MS-Windows GUI}
|
||||
When using the scroll wheel and this option is set, the window under
|
||||
the mouse pointer is scrolled. With this option off the current
|
||||
window is scrolled.
|
||||
Systems other than MS-Windows always behave like this option is on.
|
||||
|
||||
*'scrolljump'* *'sj'*
|
||||
'scrolljump' 'sj' number (default 1)
|
||||
global
|
||||
@@ -6381,8 +6474,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
See |option-backslash| about including spaces and backslashes.
|
||||
Environment variables are expanded |:set_env|.
|
||||
|
||||
If the name of the shell contains a space, you might need to enclose
|
||||
it in quotes or escape the space. Example with quotes: >
|
||||
If the name of the shell contains a space, you need to enclose it in
|
||||
quotes and escape the space. Example with quotes: >
|
||||
:set shell=\"c:\program\ files\unix\sh.exe\"\ -f
|
||||
< Note the backslash before each quote (to avoid starting a comment) and
|
||||
each space (to avoid ending the option value). Also note that the
|
||||
@@ -6437,10 +6530,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
For Unix the default it "| tee". The stdout of the compiler is saved
|
||||
in a file and echoed to the screen. If the 'shell' option is "csh" or
|
||||
"tcsh" after initializations, the default becomes "|& tee". If the
|
||||
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh" or "bash" the
|
||||
default becomes "2>&1| tee". This means that stderr is also included.
|
||||
Before using the 'shell' option a path is removed, thus "/bin/sh" uses
|
||||
"sh".
|
||||
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh", "zsh-beta",
|
||||
"bash" or "fish" the default becomes "2>&1| tee". This means that
|
||||
stderr is also included. Before using the 'shell' option a path is
|
||||
removed, thus "/bin/sh" uses "sh".
|
||||
The initialization of this option is done after reading the ".vimrc"
|
||||
and the other initializations, so that when the 'shell' option is set
|
||||
there, the 'shellpipe' option changes automatically, unless it was
|
||||
@@ -6480,13 +6573,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The name of the temporary file can be represented by "%s" if necessary
|
||||
(the file name is appended automatically if no %s appears in the value
|
||||
of this option).
|
||||
The default is ">". For Unix, if the 'shell' option is "csh", "tcsh"
|
||||
or "zsh" during initializations, the default becomes ">&". If the
|
||||
'shell' option is "sh", "ksh" or "bash" the default becomes
|
||||
">%s 2>&1". This means that stderr is also included.
|
||||
For Win32, the Unix checks are done and additionally "cmd" is checked
|
||||
for, which makes the default ">%s 2>&1". Also, the same names with
|
||||
".exe" appended are checked for.
|
||||
The default is ">". For Unix, if the 'shell' option is "csh" or
|
||||
"tcsh" during initializations, the default becomes ">&". If the
|
||||
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh", "zsh-beta",
|
||||
"bash" or "fish", the default becomes ">%s 2>&1". This means that
|
||||
stderr is also included. For Win32, the Unix checks are done and
|
||||
additionally "cmd" is checked for, which makes the default ">%s 2>&1".
|
||||
Also, the same names with ".exe" appended are checked for.
|
||||
The initialization of this option is done after reading the ".vimrc"
|
||||
and the other initializations, so that when the 'shell' option is set
|
||||
there, the 'shellredir' option changes automatically unless it was
|
||||
@@ -6510,7 +6603,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'shellslash' only works when a backslash can be used as a path
|
||||
separator. To test if this is so use: >
|
||||
if exists('+shellslash')
|
||||
<
|
||||
< Also see 'completeslash'.
|
||||
|
||||
*'shelltemp'* *'stmp'* *'noshelltemp'* *'nostmp'*
|
||||
'shelltemp' 'stmp' boolean (Vi default off, Vim default on)
|
||||
global
|
||||
@@ -6665,7 +6759,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'showbreak'* *'sbr'* *E595*
|
||||
'showbreak' 'sbr' string (default "")
|
||||
global
|
||||
global or local to window |global-local|
|
||||
{not available when compiled without the |+linebreak|
|
||||
feature}
|
||||
String to put at the start of lines that have been wrapped. Useful
|
||||
@@ -6682,7 +6776,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Note that tabs after the showbreak will be displayed differently.
|
||||
If you want the 'showbreak' to appear in between line numbers, add the
|
||||
"n" flag to 'cpoptions'.
|
||||
|
||||
A window-local value overrules a global value. If the global value is
|
||||
set and you want no value in the current window use NONE: >
|
||||
:setlocal showbreak=NONE
|
||||
<
|
||||
*'showcmd'* *'sc'* *'noshowcmd'* *'nosc'*
|
||||
'showcmd' 'sc' boolean (Vim default: on, off for Unix,
|
||||
Vi default: off, set in |defaults.vim|)
|
||||
@@ -6749,8 +6846,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'showtabline'* *'stal'*
|
||||
'showtabline' 'stal' number (default 1)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
The value of this option specifies when the line with tab page labels
|
||||
will be displayed:
|
||||
0: never
|
||||
@@ -7047,16 +7142,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'splitbelow'* *'sb'* *'nosplitbelow'* *'nosb'*
|
||||
'splitbelow' 'sb' boolean (default off)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
When on, splitting a window will put the new window below the current
|
||||
one. |:split|
|
||||
|
||||
*'splitright'* *'spr'* *'nosplitright'* *'nospr'*
|
||||
'splitright' 'spr' boolean (default off)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
When on, splitting a window will put the new window right of the
|
||||
current one. |:vsplit|
|
||||
|
||||
@@ -7164,7 +7255,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{ NF Evaluate expression between '%{' and '}' and substitute result.
|
||||
Note that there is no '%' before the closing '}'. The
|
||||
expression cannot contain a '}' character, call a function to
|
||||
work around that.
|
||||
work around that. See |stl-%{| below.
|
||||
( - Start of item group. Can be used for setting the width and
|
||||
alignment of a section. Must be followed by %) somewhere.
|
||||
) - End of item group. No width fields allowed.
|
||||
@@ -7198,13 +7289,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
:set statusline=...%(\ [%M%R%H]%)...
|
||||
< Beware that an expression is evaluated each and every time the status
|
||||
line is displayed.
|
||||
*g:actual_curbuf* *g:actual_curwin*
|
||||
The current buffer and current window will be set temporarily to that
|
||||
of the window (and buffer) whose statusline is currently being drawn.
|
||||
The expression will evaluate in this context. The variable
|
||||
"g:actual_curbuf" is set to the `bufnr()` number of the real current
|
||||
buffer and "g:actual_curwin" to the |window-ID| of the real current
|
||||
window. These values are strings.
|
||||
*stl-%{* *g:actual_curbuf* *g:actual_curwin*
|
||||
While evaluationg %{} the current buffer and current window will be
|
||||
set temporarily to that of the window (and buffer) whose statusline is
|
||||
currently being drawn. The expression will evaluate in this context.
|
||||
The variable "g:actual_curbuf" is set to the `bufnr()` number of the
|
||||
real current buffer and "g:actual_curwin" to the |window-ID| of the
|
||||
real current window. These values are strings.
|
||||
|
||||
The 'statusline' option will be evaluated in the |sandbox| if set from
|
||||
a modeline, see |sandbox-option|.
|
||||
@@ -7326,6 +7417,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
vsplit Just like "split" but split vertically.
|
||||
newtab Like "split", but open a new tab page. Overrules
|
||||
"split" when both are present.
|
||||
uselast If included, jump to the previously used window when
|
||||
jumping to errors with |quickfix| commands.
|
||||
|
||||
*'synmaxcol'* *'smc'*
|
||||
'synmaxcol' 'smc' number (default 3000)
|
||||
@@ -7371,8 +7464,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'tabline'* *'tal'*
|
||||
'tabline' 'tal' string (default empty)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
When nonempty, this option determines the content of the tab pages
|
||||
line at the top of the Vim window. When empty Vim will use a default
|
||||
tab pages line. See |setting-tabline| for more info.
|
||||
@@ -7398,8 +7489,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'tabpagemax'* *'tpm'*
|
||||
'tabpagemax' 'tpm' number (default 10)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
Maximum number of tab pages to be opened by the |-p| command line
|
||||
argument or the ":tab all" command. |tabpage|
|
||||
|
||||
@@ -8130,8 +8219,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Win32 and OS/2)
|
||||
global or local to buffer |global-local|
|
||||
Maximum number of changes that can be undone. Since undo information
|
||||
is kept in memory, higher numbers will cause more memory to be used
|
||||
(nevertheless, a single change can use an unlimited amount of memory).
|
||||
is kept in memory, higher numbers will cause more memory to be used.
|
||||
Nevertheless, a single change can already use a large amount of memory.
|
||||
Set to 0 for Vi compatibility: One level of undo and "u" undoes
|
||||
itself: >
|
||||
set ul=0
|
||||
@@ -8518,8 +8607,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
":map <BS> X" to make backspace delete the character in front of the
|
||||
cursor.
|
||||
When 'l' is included and it is used after an operator at the end of a
|
||||
line then it will not move to the next line. This makes "dl", "cl",
|
||||
"yl" etc. work normally.
|
||||
line (not an empty line) then it will not move to the next line. This
|
||||
makes "dl", "cl", "yl" etc. work normally.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
@@ -8637,6 +8726,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
complete first match.
|
||||
"list:longest" When more than one match, list all matches and
|
||||
complete till longest common string.
|
||||
"list:lastused" When more than one buffer matches, sort buffers
|
||||
by time last used (other than the current buffer).
|
||||
When there is only a single match, it is fully completed in all cases.
|
||||
|
||||
Examples: >
|
||||
@@ -8709,8 +8800,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winheight'* *'wh'* *E591*
|
||||
'winheight' 'wh' number (default 1)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
Minimal number of lines for the current window. This is not a hard
|
||||
minimum, Vim will use fewer lines if there is not enough room. If the
|
||||
focus goes to a window that is smaller, its size is increased, at the
|
||||
@@ -8731,8 +8820,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winfixheight'* *'wfh'* *'nowinfixheight'* *'nowfh'*
|
||||
'winfixheight' 'wfh' boolean (default off)
|
||||
local to window
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
Keep the window height when windows are opened or closed and
|
||||
'equalalways' is set. Also for |CTRL-W_=|. Set by default for the
|
||||
|preview-window| and |quickfix-window|.
|
||||
@@ -8741,8 +8828,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winfixwidth'* *'wfw'* *'nowinfixwidth'* *'nowfw'*
|
||||
'winfixwidth' 'wfw' boolean (default off)
|
||||
local to window
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
Keep the window width when windows are opened or closed and
|
||||
'equalalways' is set. Also for |CTRL-W_=|.
|
||||
The width may be changed anyway when running out of room.
|
||||
@@ -8750,8 +8835,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winminheight'* *'wmh'*
|
||||
'winminheight' 'wmh' number (default 1)
|
||||
global
|
||||
{not available when compiled without the |+windows|
|
||||
feature}
|
||||
The minimal height of a window, when it's not the current window.
|
||||
This is a hard minimum, windows will never become smaller.
|
||||
When set to zero, windows may be "squashed" to zero lines (i.e. just a
|
||||
@@ -8765,8 +8848,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winminwidth'* *'wmw'*
|
||||
'winminwidth' 'wmw' number (default 1)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
The minimal width of a window, when it's not the current window.
|
||||
This is a hard minimum, windows will never become smaller.
|
||||
When set to zero, windows may be "squashed" to zero columns (i.e. just
|
||||
@@ -8794,8 +8875,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winwidth'* *'wiw'* *E592*
|
||||
'winwidth' 'wiw' number (default 20)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
Minimal number of columns for the current window. This is not a hard
|
||||
minimum, Vim will use fewer columns if there is not enough room. If
|
||||
the current window is smaller, its size is increased, at the cost of
|
||||
@@ -8872,6 +8951,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
fail (and make sure not to exit Vim until the write was successful).
|
||||
See |backup-table| for another explanation.
|
||||
When the 'backupskip' pattern matches, a backup is not made anyway.
|
||||
Depending on 'backupcopy' the backup is a new file or the original
|
||||
file renamed (and a new file is written).
|
||||
NOTE: This option is set to the default value when 'compatible' is
|
||||
set.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_390.txt* For Vim version 8.1. Last change: 2016 Feb 27
|
||||
*os_390.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ralf Schandl
|
||||
@@ -93,7 +93,7 @@ There is no solution for this yet.
|
||||
|
||||
- No glib/gtk support. I have not been able to successfully compile glib on
|
||||
z/OS UNIX. This means you'll have to live without the pretty gtk toolbar.
|
||||
|
||||
|
||||
Disabled at compile time:
|
||||
- Multibyte support (|multibyte|)
|
||||
- Right-to-left mode (|rileft|)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*pattern.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -78,7 +78,7 @@ N Repeat the latest "/" or "?" [count] times in
|
||||
4. the first non-blank word after the cursor,
|
||||
in the current line
|
||||
Only whole keywords are searched for, like with the
|
||||
command "/\<keyword\>". |exclusive|
|
||||
command "/\<keyword\>". |exclusive|
|
||||
'ignorecase' is used, 'smartcase' is not.
|
||||
|
||||
*#*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*pi_netrw.txt* For Vim version 8.1. Last change: 2019 Nov 30
|
||||
|
||||
------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||
@@ -1184,7 +1184,7 @@ One may easily "bookmark" the currently browsed directory by using >
|
||||
*.netrwbook*
|
||||
Bookmarks are retained in between sessions of vim in a file called .netrwbook
|
||||
as a |List|, which is typically stored in the first directory on the user's
|
||||
'|runtimepath|'; entries are kept in sorted order.
|
||||
|'runtimepath'|; entries are kept in sorted order.
|
||||
|
||||
If there are marked files and/or directories, mb will add them to the bookmark
|
||||
list.
|
||||
@@ -2094,7 +2094,7 @@ track netrw's browsing directory.
|
||||
|
||||
However, given the default setting for g:netrw_keepdir of 1 where netrw
|
||||
maintains its own separate notion of the current directory, in order to make
|
||||
the two directories the same, use the "c" map (just type c). That map will
|
||||
the two directories the same, use the "cd" map (type cd). That map will
|
||||
set Vim's notion of the current directory to netrw's current browsing
|
||||
directory.
|
||||
|
||||
@@ -2739,7 +2739,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
=0 : show all
|
||||
=1 : show not-hidden files
|
||||
=2 : show hidden files only
|
||||
default: =0
|
||||
default: =1
|
||||
|
||||
*g:netrw_home* The home directory for where bookmarks and
|
||||
history are saved (as .netrwbook and
|
||||
@@ -2940,14 +2940,23 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
|
||||
netrwBak : *.bak
|
||||
netrwCompress: *.gz *.bz2 *.Z *.zip
|
||||
netrwCoreDump: core.\d\+
|
||||
netrwData : *.dat
|
||||
netrwDoc : *.doc,*.txt,*.pdf,
|
||||
*.pdf,*.docx
|
||||
netrwHdr : *.h
|
||||
netrwLex : *.l *.lex
|
||||
netrwLib : *.a *.so *.lib *.dll
|
||||
netrwMakefile: [mM]akefile *.mak
|
||||
netrwObj : *.o *.obj
|
||||
netrwPix : *.bmp,*.fit,*.fits,*.gif,
|
||||
*.jpg,*.jpeg,*.pcx,*.ppc
|
||||
*.pgm,*.png,*.psd,*.rgb
|
||||
*.tif,*.xbm,*.xcf
|
||||
netrwTags : tags ANmenu ANtags
|
||||
netrwTilde : *
|
||||
netrwTmp : tmp* *tmp
|
||||
netrwYacc : *.y
|
||||
|
||||
In addition, those groups mentioned in
|
||||
|'suffixes'| are also added to the special
|
||||
@@ -3032,8 +3041,9 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
current netrw buffer's window to be used for
|
||||
the new window.
|
||||
If g:netrw_winsize is less than zero, then
|
||||
the absolute value of g:netrw_winsize lines
|
||||
or columns will be used for the new window.
|
||||
the absolute value of g:netrw_winsize will be
|
||||
used to specify the quantity of lines or
|
||||
columns for the new window.
|
||||
If g:netrw_winsize is zero, then a normal
|
||||
split will be made (ie. |'equalalways'| will
|
||||
take effect, for example).
|
||||
@@ -3371,7 +3381,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(This section is likely to grow as I get feedback)
|
||||
(also see |netrw-debug|)
|
||||
*netrw-p1*
|
||||
P1. I use windows 95, and my ftp dumps four blank lines at the
|
||||
P1. I use windows 95, and my ftp dumps four blank lines at the {{{2
|
||||
end of every read.
|
||||
|
||||
See |netrw-fixup|, and put the following into your
|
||||
@@ -3380,7 +3390,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_win95ftp= 1
|
||||
|
||||
*netrw-p2*
|
||||
P2. I use Windows, and my network browsing with ftp doesn't sort by
|
||||
P2. I use Windows, and my network browsing with ftp doesn't sort by {{{2
|
||||
time or size! -or- The remote system is a Windows server; why
|
||||
don't I get sorts by time or size?
|
||||
|
||||
@@ -3407,7 +3417,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
|
||||
|
||||
*netrw-p3*
|
||||
P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw
|
||||
P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw {{{2
|
||||
used ssh! That wasn't what I asked for...
|
||||
|
||||
Netrw has two methods for browsing remote directories: ssh
|
||||
@@ -3416,7 +3426,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
listing), netrw will use the given protocol to do so.
|
||||
|
||||
*netrw-p4*
|
||||
P4. I would like long listings to be the default.
|
||||
P4. I would like long listings to be the default. {{{2
|
||||
|
||||
Put the following statement into your |.vimrc|: >
|
||||
|
||||
@@ -3426,7 +3436,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
you can set.
|
||||
|
||||
*netrw-p5*
|
||||
P5. My times come up oddly in local browsing
|
||||
P5. My times come up oddly in local browsing {{{2
|
||||
|
||||
Does your system's strftime() accept the "%c" to yield dates
|
||||
such as "Sun Apr 27 11:49:23 1997"? If not, do a
|
||||
@@ -3436,7 +3446,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_timefmt= "%X" (where X is the option)
|
||||
<
|
||||
*netrw-p6*
|
||||
P6. I want my current directory to track my browsing.
|
||||
P6. I want my current directory to track my browsing. {{{2
|
||||
How do I do that?
|
||||
|
||||
Put the following line in your |.vimrc|:
|
||||
@@ -3444,8 +3454,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_keepdir= 0
|
||||
<
|
||||
*netrw-p7*
|
||||
P7. I use Chinese (or other non-ascii) characters in my filenames, and
|
||||
netrw (Explore, Sexplore, Hexplore, etc) doesn't display them!
|
||||
P7. I use Chinese (or other non-ascii) characters in my filenames, {{{2
|
||||
and netrw (Explore, Sexplore, Hexplore, etc) doesn't display them!
|
||||
|
||||
(taken from an answer provided by Wu Yongwei on the vim
|
||||
mailing list)
|
||||
@@ -3459,7 +3469,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(...it is one more reason to recommend that people use utf-8!)
|
||||
|
||||
*netrw-p8*
|
||||
P8. I'm getting "ssh is not executable on your system" -- what do I
|
||||
P8. I'm getting "ssh is not executable on your system" -- what do I {{{2
|
||||
do?
|
||||
|
||||
(Dudley Fox) Most people I know use putty for windows ssh. It
|
||||
@@ -3542,7 +3552,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
default.
|
||||
|
||||
*netrw-p9* *netrw-ml_get*
|
||||
P9. I'm browsing, changing directory, and bang! ml_get errors
|
||||
P9. I'm browsing, changing directory, and bang! ml_get errors {{{2
|
||||
appear and I have to kill vim. Any way around this?
|
||||
|
||||
Normally netrw attempts to avoid writing swapfiles for
|
||||
@@ -3553,7 +3563,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_use_noswf= 0
|
||||
<
|
||||
*netrw-p10*
|
||||
P10. I'm being pestered with "[something] is a directory" and
|
||||
P10. I'm being pestered with "[something] is a directory" and {{{2
|
||||
"Press ENTER or type command to continue" prompts...
|
||||
|
||||
The "[something] is a directory" prompt is issued by Vim,
|
||||
@@ -3564,8 +3574,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
your <.vimrc> file.
|
||||
|
||||
*netrw-p11*
|
||||
P11. I want to have two windows; a thin one on the left and my editing
|
||||
window on the right. How may I accomplish this?
|
||||
P11. I want to have two windows; a thin one on the left and my {{{2
|
||||
editing window on the right. How may I accomplish this?
|
||||
|
||||
You probably want netrw running as in a side window. If so, you
|
||||
will likely find that ":[N]Lexplore" does what you want. The
|
||||
@@ -3590,7 +3600,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
|
||||
|
||||
*netrw-p12*
|
||||
P12. My directory isn't sorting correctly, or unwanted letters are
|
||||
P12. My directory isn't sorting correctly, or unwanted letters are {{{2
|
||||
appearing in the listed filenames, or things aren't lining
|
||||
up properly in the wide listing, ...
|
||||
|
||||
@@ -3600,9 +3610,9 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
You may need to change |g:netrw_sepchr| and/or |g:netrw_xstrlen|.
|
||||
|
||||
*netrw-p13*
|
||||
P13. I'm a Windows + putty + ssh user, and when I attempt to browse,
|
||||
the directories are missing trailing "/"s so netrw treats them
|
||||
as file transfers instead of as attempts to browse
|
||||
P13. I'm a Windows + putty + ssh user, and when I attempt to {{{2
|
||||
browse, the directories are missing trailing "/"s so netrw treats
|
||||
them as file transfers instead of as attempts to browse
|
||||
subdirectories. How may I fix this?
|
||||
|
||||
(mikeyao) If you want to use vim via ssh and putty under Windows,
|
||||
@@ -3621,7 +3631,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
"let g:netrw_scp_cmd = "d:\\dev\\putty\\PSCP.exe"
|
||||
<
|
||||
*netrw-p14*
|
||||
P14. I would like to speed up writes using Nwrite and scp/ssh
|
||||
P14. I would like to speed up writes using Nwrite and scp/ssh {{{2
|
||||
style connections. How? (Thomer M. Gil)
|
||||
|
||||
Try using ssh's ControlMaster and ControlPath (see the ssh_config
|
||||
@@ -3648,8 +3658,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
vim scp://host.domain.com//home/user/.bashrc
|
||||
<
|
||||
*netrw-p15*
|
||||
P15. How may I use a double-click instead of netrw's usual single click
|
||||
to open a file or directory? (Ben Fritz)
|
||||
P15. How may I use a double-click instead of netrw's usual single {{{2
|
||||
click to open a file or directory? (Ben Fritz)
|
||||
|
||||
First, disable netrw's mapping with >
|
||||
let g:netrw_mousemaps= 0
|
||||
@@ -3661,7 +3671,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(see |g:netrw_mousemaps|)
|
||||
|
||||
*netrw-p16*
|
||||
P16. When editing remote files (ex. :e ftp://hostname/path/file),
|
||||
P16. When editing remote files (ex. :e ftp://hostname/path/file), {{{2
|
||||
under Windows I get an |E303| message complaining that its unable
|
||||
to open a swap file.
|
||||
|
||||
@@ -3670,7 +3680,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
directory.
|
||||
|
||||
*netrw-p17*
|
||||
P17. Netrw is closing buffers on its own.
|
||||
P17. Netrw is closing buffers on its own. {{{2
|
||||
What steps will reproduce the problem?
|
||||
1. :Explore, navigate directories, open a file
|
||||
2. :Explore, open another file
|
||||
@@ -3684,14 +3694,14 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
a ":ls!" will show them (although ":ls" does not).
|
||||
|
||||
*netrw-P18*
|
||||
P18. How to locally edit a file that's only available via
|
||||
P18. How to locally edit a file that's only available via {{{2
|
||||
another server accessible via ssh?
|
||||
See http://stackoverflow.com/questions/12469645/
|
||||
"Using Vim to Remotely Edit A File on ServerB Only
|
||||
Accessible From ServerA"
|
||||
|
||||
*netrw-P19*
|
||||
P19. How do I get numbering on in directory listings?
|
||||
P19. How do I get numbering on in directory listings? {{{2
|
||||
With |g:netrw_bufsettings|, you can control netrw's buffer
|
||||
settings; try putting >
|
||||
let g:netrw_bufsettings="noma nomod nu nobl nowrap ro nornu"
|
||||
@@ -3700,7 +3710,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_bufsettings="noma nomod nonu nobl nowrap ro rnu"
|
||||
<
|
||||
*netrw-P20*
|
||||
P20. How may I have gvim start up showing a directory listing?
|
||||
P20. How may I have gvim start up showing a directory listing? {{{2
|
||||
Try putting the following code snippet into your .vimrc: >
|
||||
augroup VimStartup
|
||||
au!
|
||||
@@ -3713,8 +3723,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(ie. a "huge" vim version).
|
||||
|
||||
*netrw-P21*
|
||||
P21. I've made a directory (or file) with an accented character, but
|
||||
netrw isn't letting me enter that directory/read that file:
|
||||
P21. I've made a directory (or file) with an accented character, {{{2
|
||||
but netrw isn't letting me enter that directory/read that file:
|
||||
|
||||
Its likely that the shell or o/s is using a different encoding
|
||||
than you have vim (netrw) using. A patch to vim supporting
|
||||
@@ -3724,7 +3734,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
au FileType netrw set enc=latin1
|
||||
<
|
||||
*netrw-P22*
|
||||
P22. I get an error message when I try to copy or move a file:
|
||||
P22. I get an error message when I try to copy or move a file: {{{2
|
||||
|
||||
**error** (netrw) tried using g:netrw_localcopycmd<cp>; it doesn't work!
|
||||
|
||||
@@ -3832,6 +3842,30 @@ netrw:
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
v167: Nov 29, 2019 * netrw does a save&restore on @* and @+.
|
||||
That causes problems with the clipboard.
|
||||
Now restores occurs only if @* or @+ have
|
||||
been changed.
|
||||
* netrw will change @* or @+ less often.
|
||||
Never if I happen to have caught all the
|
||||
operations that modify the unnamed
|
||||
register (which also writes @*).
|
||||
* Modified hiding behavior so that "s"
|
||||
will not ignore hiding.
|
||||
v166: Nov 06, 2019 * Removed a space from a nmap for "-"
|
||||
* Numerous debugging statement changes
|
||||
v163: Dec 05, 2017 * (Cristi Balan) reported that a setting ('sel')
|
||||
was left changed
|
||||
* (Holger Mitschke) reported a problem with
|
||||
saving and restoring history. Fixed.
|
||||
* Hopefully I fixed a nasty bug that caused a
|
||||
file rename to wipe out a buffer that it
|
||||
should not have wiped out.
|
||||
* (Holger Mitschke) amended this help file
|
||||
with additional |g:netrw_special_syntax|
|
||||
items
|
||||
* Prioritized wget over curl for
|
||||
g:netrw_http_cmd
|
||||
v162: Sep 19, 2016 * (haya14busa) pointed out two syntax errors
|
||||
with a patch; these are now fixed.
|
||||
Oct 26, 2016 * I started using mate-terminal and found that
|
||||
@@ -4265,4 +4299,4 @@ netrw:
|
||||
|
||||
==============================================================================
|
||||
Modelines: {{{1
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:fdm=marker
|
||||
vim:tw=78:ts=8:ft=help:norl:fdm=marker
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
*popup.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*popup.txt* For Vim version 8.1. Last change: 2019 Nov 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
Displaying text in a floating window. *popup* *popup-window*
|
||||
Displaying text in a floating window. *popup* *popup-window* *popupwin*
|
||||
|
||||
|
||||
1. Introduction |popup-intro|
|
||||
@@ -16,6 +16,7 @@ Displaying text in a floating window. *popup* *popup-window*
|
||||
3. Usage |popup-usage|
|
||||
popup_create() arguments |popup_create-arguments|
|
||||
Popup text properties |popup-props|
|
||||
Position popup with textprop |popup-textprop-pos|
|
||||
Popup filter |popup-filter|
|
||||
Popup callback |popup-callback|
|
||||
Popup scrollbar |popup-scrollbar|
|
||||
@@ -23,7 +24,7 @@ Displaying text in a floating window. *popup* *popup-window*
|
||||
4. Examples |popup-examples|
|
||||
|
||||
|
||||
{not available if the |+textprop| feature was disabled at compile time}
|
||||
{not available if the |+popupwin| feature was disabled at compile time}
|
||||
|
||||
==============================================================================
|
||||
1. Introduction *popup-intro*
|
||||
@@ -124,7 +125,9 @@ is always associated with the popup window and manipulation is restricted:
|
||||
It is possible to change the specifically mentioned options, but anything
|
||||
might break then, so better leave them alone.
|
||||
|
||||
The window does have a cursor position, but the cursor is not displayed.
|
||||
The window does have a cursor position, but the cursor is not displayed. In
|
||||
fact, the cursor in the underlying window is displayed, as if it peeks through
|
||||
the popup, so you can see where it is.
|
||||
|
||||
To execute a command in the context of the popup window and buffer use
|
||||
`win_execute()`. Example: >
|
||||
@@ -134,9 +137,7 @@ Options can be set on the window with `setwinvar()`, e.g.: >
|
||||
call setwinvar(winid, '&wrap', 0)
|
||||
And options can be set on the buffer with `setbufvar()`, e.g.: >
|
||||
call setbufvar(winbufnr(winid), '&filetype', 'java')
|
||||
Note that this does not trigger autocommands. Use `win_execute()` if you do
|
||||
need them.
|
||||
|
||||
You can also use `win_execute()` with a ":setlocal" command.
|
||||
|
||||
|
||||
==============================================================================
|
||||
@@ -170,6 +171,7 @@ Filter functions:
|
||||
Other:
|
||||
|popup_getoptions()| get current options for a popup
|
||||
|popup_getpos()| get actual position and size of a popup
|
||||
|popup_locate()| find popup window at a screen position
|
||||
|
||||
|
||||
DETAILS *popup-function-details*
|
||||
@@ -177,29 +179,36 @@ DETAILS *popup-function-details*
|
||||
popup_atcursor({what}, {options}) *popup_atcursor()*
|
||||
Show the {what} above the cursor, and close it when the cursor
|
||||
moves. This works like: >
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'botleft',
|
||||
\ 'line': 'cursor-1',
|
||||
\ 'col': 'cursor',
|
||||
\ 'moved': 'WORD',
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'botleft',
|
||||
\ line: 'cursor-1',
|
||||
\ col: 'cursor',
|
||||
\ moved: 'WORD',
|
||||
\ })
|
||||
< Use {options} to change the properties.
|
||||
If "pos" is passed as "topleft" then the default for "line"
|
||||
becomes "cursor+1".
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->popup_atcursor({})
|
||||
|
||||
|
||||
popup_beval({what}, {options}) *popup_beval()*
|
||||
Show the {what} above the position from 'ballooneval' and
|
||||
close it when the mouse moves. This works like: >
|
||||
let pos = screenpos(v:beval_winnr, v:beval_lnum, v:beval_col)
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'botleft',
|
||||
\ 'line': pos.row - 1,
|
||||
\ 'col': pos.col,
|
||||
\ 'mousemoved': 'WORD',
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'botleft',
|
||||
\ line: pos.row - 1,
|
||||
\ col: pos.col,
|
||||
\ mousemoved: 'WORD',
|
||||
\ })
|
||||
< Use {options} to change the properties.
|
||||
See |popup_beval_example| for an example use.
|
||||
|
||||
See |popup_beval_example| for an example.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->popup_beval({})
|
||||
<
|
||||
*popup_clear()*
|
||||
popup_clear() Emergency solution to a misbehaving plugin: close all popup
|
||||
windows for the current tab and global popups.
|
||||
@@ -214,6 +223,8 @@ popup_close({id} [, {result}]) *popup_close()*
|
||||
it will be passed as the second argument of the callback.
|
||||
Otherwise zero is passed to the callback.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_close()
|
||||
|
||||
popup_create({what}, {options}) *popup_create()*
|
||||
Open a popup window showing {what}, which is either:
|
||||
@@ -236,26 +247,31 @@ popup_create({what}, {options}) *popup_create()*
|
||||
call setbufline(bufnr, 2, 'second line')
|
||||
< In case of failure zero is returned.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->popup_create({})
|
||||
|
||||
popup_dialog({what}, {options}) *popup_dialog()*
|
||||
Just like |popup_create()| but with these default options: >
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'center',
|
||||
\ 'zindex': 200,
|
||||
\ 'drag': 1,
|
||||
\ 'border': [],
|
||||
\ 'padding': [],
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'center',
|
||||
\ zindex: 200,
|
||||
\ drag: 1,
|
||||
\ border: [],
|
||||
\ padding: [],
|
||||
\ mapping: 0,
|
||||
\})
|
||||
< Use {options} to change the properties. E.g. add a 'filter'
|
||||
option with value 'popup_filter_yesno'. Example: >
|
||||
call popup_create('do you want to quit (Yes/no)?', {
|
||||
\ 'filter': 'popup_filter_yesno',
|
||||
\ 'callback': 'QuitCallback',
|
||||
call popup_create('do you want to quit (Yes/no)?', #{
|
||||
\ filter: 'popup_filter_yesno',
|
||||
\ callback: 'QuitCallback',
|
||||
\ })
|
||||
|
||||
< By default the dialog can be dragged, so that text below it
|
||||
can be read if needed.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->popup_dialog({})
|
||||
|
||||
popup_filter_menu({id}, {key}) *popup_filter_menu()*
|
||||
Filter that can be used for a popup. These keys can be used:
|
||||
@@ -287,6 +303,20 @@ popup_filter_yesno({id}, {key}) *popup_filter_yesno()*
|
||||
See the example here: |popup_dialog-example|
|
||||
|
||||
|
||||
popup_findinfo() *popup_findinfo()*
|
||||
Get the |window-ID| for the popup info window, as it used by
|
||||
the popup menu. See |complete-popup|. The info popup is
|
||||
hidden when not used, it can be deleted with |popup_clear()|
|
||||
and |popup_close()|. Use |popup_show()| to reposition it to
|
||||
the item in the popup menu.
|
||||
Returns zero if there is none.
|
||||
|
||||
|
||||
popup_findpreview() *popup_findpreview()*
|
||||
Get the |window-ID| for the popup preview window.
|
||||
Return zero if there is none.
|
||||
|
||||
|
||||
popup_getoptions({id}) *popup_getoptions()*
|
||||
Return the {options} for popup {id} in a Dict.
|
||||
A zero value means the option was not set. For "zindex" the
|
||||
@@ -298,19 +328,28 @@ popup_getoptions({id}) *popup_getoptions()*
|
||||
The "mousemoved" entry is a list with screen row, minimum and
|
||||
maximum screen column, [0, 0, 0] when not set.
|
||||
|
||||
"firstline" is the property set on the popup, unlike the
|
||||
"firstline" obtained with |popup_getpos()| which is the actual
|
||||
buffer line at the top of the popup window.
|
||||
|
||||
"border" and "padding" are not included when all values are
|
||||
zero. When all values are one then an empty list is included.
|
||||
|
||||
"borderhighlight" is not included when all values are empty.
|
||||
"scrollbarhighlight" and "thumbhighlight" are onlu included
|
||||
"scrollbarhighlight" and "thumbhighlight" are only included
|
||||
when set.
|
||||
|
||||
"tabpage" will be -1 for a global popup, zero for a popup on
|
||||
the current tabpage and a positive number for a popup on
|
||||
another tabpage.
|
||||
|
||||
"textprop", "textpropid" and "textpropwin" are only present
|
||||
when "textprop" was set.
|
||||
|
||||
If popup window {id} is not found an empty Dict is returned.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_getoptions()
|
||||
|
||||
popup_getpos({id}) *popup_getpos()*
|
||||
Return the position and size of popup {id}. Returns a Dict
|
||||
@@ -324,6 +363,9 @@ popup_getpos({id}) *popup_getpos()*
|
||||
core_width width of the text box in screen cells
|
||||
core_height height of the text box in screen cells
|
||||
firstline line of the buffer at top (1 unless scrolled)
|
||||
(not the value of the "firstline" property)
|
||||
lastline line of the buffer at the bottom (updated when
|
||||
the popup is redrawn)
|
||||
scrollbar non-zero if a scrollbar is displayed
|
||||
visible one if the popup is displayed, zero if hidden
|
||||
Note that these are the actual screen positions. They differ
|
||||
@@ -334,6 +376,8 @@ popup_getpos({id}) *popup_getpos()*
|
||||
|
||||
If popup window {id} is not found an empty Dict is returned.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_getpos()
|
||||
|
||||
popup_hide({id}) *popup_hide()*
|
||||
If {id} is a displayed popup, hide it now. If the popup has a
|
||||
@@ -342,27 +386,47 @@ popup_hide({id}) *popup_hide()*
|
||||
If window {id} does not exist nothing happens. If window {id}
|
||||
exists but is not a popup window an error is given. *E993*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_hide()
|
||||
|
||||
popup_locate({row}, {col}) *popup_locate()*
|
||||
Return the |window-ID| of the popup at screen position {row}
|
||||
and {col}. If there are multiple popups the one with the
|
||||
highest zindex is returned. If there are no popups at this
|
||||
position then zero is returned.
|
||||
|
||||
|
||||
popup_menu({what}, {options}) *popup_menu()*
|
||||
Show the {what} near the cursor, handle selecting one of the
|
||||
items with cursorkeys, and close it an item is selected with
|
||||
Space or Enter. {what} should have multiple lines to make this
|
||||
useful. This works like: >
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'center',
|
||||
\ 'zindex': 200,
|
||||
\ 'drag': 1,
|
||||
\ 'wrap': 0,
|
||||
\ 'border': [],
|
||||
\ 'padding': [],
|
||||
\ 'filter': 'popup_filter_menu',
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'center',
|
||||
\ zindex: 200,
|
||||
\ drag: 1,
|
||||
\ wrap: 0,
|
||||
\ border: [],
|
||||
\ cursorline: 1,
|
||||
\ padding: [0,1,0,1],
|
||||
\ filter: 'popup_filter_menu',
|
||||
\ mapping: 0,
|
||||
\ })
|
||||
< The current line is highlighted with a match using
|
||||
"PopupSelected", or "PmenuSel" if that is not defined.
|
||||
|
||||
Use {options} to change the properties. Should at least set
|
||||
"callback" to a function that handles the selected item.
|
||||
Example: >
|
||||
func ColorSelected(id, result)
|
||||
" use a:result
|
||||
endfunc
|
||||
call popup_menu(['red', 'green', 'blue'], #{
|
||||
\ callback: 'ColorSelected',
|
||||
\ })
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetChoices()->popup_menu({})
|
||||
|
||||
popup_move({id}, {options}) *popup_move()*
|
||||
Move popup {id} to the position specified with {options}.
|
||||
@@ -379,37 +443,43 @@ popup_move({id}, {options}) *popup_move()*
|
||||
For {id} see `popup_hide()`.
|
||||
For other options see |popup_setoptions()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_move(options)
|
||||
|
||||
popup_notification({what}, {options}) *popup_notification()*
|
||||
Show the {what} for 3 seconds at the top of the Vim window.
|
||||
This works like: >
|
||||
call popup_create({what}, {
|
||||
\ 'line': 1,
|
||||
\ 'col': 10,
|
||||
\ 'minwidth': 20,
|
||||
\ 'time': 3000,
|
||||
\ 'tabpage': -1,
|
||||
\ 'zindex': 300,
|
||||
\ 'drag': 1,
|
||||
\ 'highlight': 'WarningMsg',
|
||||
\ 'border': [],
|
||||
\ 'close': 'click',
|
||||
\ 'padding': [0,1,0,1],
|
||||
call popup_create({what}, #{
|
||||
\ line: 1,
|
||||
\ col: 10,
|
||||
\ minwidth: 20,
|
||||
\ time: 3000,
|
||||
\ tabpage: -1,
|
||||
\ zindex: 300,
|
||||
\ drag: 1,
|
||||
\ highlight: 'WarningMsg',
|
||||
\ border: [],
|
||||
\ close: 'click',
|
||||
\ padding: [0,1,0,1],
|
||||
\ })
|
||||
< The PopupNotification highlight group is used instead of
|
||||
WarningMsg if it is defined.
|
||||
|
||||
Without the |+timers| feature the poup will not disappear
|
||||
Without the |+timers| feature the popup will not disappear
|
||||
automatically, the user has to click in it.
|
||||
|
||||
The position will be adjusted to avoid overlap with other
|
||||
notifications.
|
||||
Use {options} to change the properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->popup_notification({})
|
||||
|
||||
popup_show({id}) *popup_show()*
|
||||
If {id} is a hidden popup, show it now.
|
||||
For {id} see `popup_hide()`.
|
||||
If {id} is the info popup it will be positioned next to the
|
||||
current popup menu item.
|
||||
|
||||
|
||||
popup_setoptions({id}, {options}) *popup_setoptions()*
|
||||
@@ -420,14 +490,17 @@ popup_setoptions({id}, {options}) *popup_setoptions()*
|
||||
borderhighlight
|
||||
callback
|
||||
close
|
||||
cursorline
|
||||
drag
|
||||
filter
|
||||
firstline
|
||||
flip
|
||||
highlight
|
||||
mapping
|
||||
mask
|
||||
moved
|
||||
padding
|
||||
resize
|
||||
scrollbar
|
||||
scrollbarhighlight
|
||||
thumbhighlight
|
||||
@@ -439,13 +512,18 @@ popup_setoptions({id}, {options}) *popup_setoptions()*
|
||||
For "hidden" use |popup_hide()| and |popup_show()|.
|
||||
"tabpage" cannot be changed.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_setoptions(options)
|
||||
|
||||
popup_settext({id}, {text}) *popup_settext()*
|
||||
Set the text of the buffer in poup win {id}. {text} is the
|
||||
Set the text of the buffer in popup win {id}. {text} is the
|
||||
same as supplied to |popup_create()|, except that a buffer
|
||||
number is not allowed.
|
||||
Does not change the window size or position, other than caused
|
||||
by the different text.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPopup()->popup_settext('hello')
|
||||
|
||||
==============================================================================
|
||||
3. Usage *popup-usage*
|
||||
@@ -466,23 +544,44 @@ properties. It is in one of four forms:
|
||||
dictionary with a "col" entry, see below:
|
||||
|popup-props|.
|
||||
|
||||
If you want to create a new buffer yourself use |bufadd()| and pass the buffer
|
||||
number to popup_create().
|
||||
It is not possible to use the buffer of a terminal window. *E278*
|
||||
|
||||
The second argument of |popup_create()| is a dictionary with options:
|
||||
line Screen line where to position the popup. Can use a
|
||||
number or "cursor", "cursor+1" or "cursor-1" to use
|
||||
the line of the cursor and add or subtract a number of
|
||||
lines. If omitted the popup is vertically centered.
|
||||
The first line is 1.
|
||||
When using "textprop" the number is relative to the
|
||||
text property and can be negative.
|
||||
col Screen column where to position the popup. Can use a
|
||||
number or "cursor" to use the column of the cursor,
|
||||
"cursor+9" or "cursor-9" to add or subtract a number
|
||||
of columns. If omitted the popup is horizontally
|
||||
centered. The first column is 1.
|
||||
When using "textprop" the number is relative to the
|
||||
text property and can be negative.
|
||||
pos "topleft", "topright", "botleft" or "botright":
|
||||
defines what corner of the popup "line" and "col" are
|
||||
used for. When not set "topleft" is used.
|
||||
Alternatively "center" can be used to position the
|
||||
popup in the center of the Vim window, in which case
|
||||
"line" and "col" are ignored.
|
||||
posinvert When FALSE the value of "pos" is always used. When
|
||||
TRUE (the default) and the popup does not fit
|
||||
vertically and there is more space on the other side
|
||||
then the popup is placed on the other side of the
|
||||
position indicated by "line".
|
||||
textprop When present the popup is positioned next to a text
|
||||
property with this name and will move when the text
|
||||
property moves. Use an empty string to remove. See
|
||||
|popup-textprop-pos|.
|
||||
textpropwin What window to search for the text property. When
|
||||
omitted or invalid the current window is used.
|
||||
textpropid Used to identify the text property when "textprop" is
|
||||
present. Use zero to reset.
|
||||
fixed When FALSE (the default), and:
|
||||
- "pos" is "botleft" or "topleft", and
|
||||
- "wrap" is off, and
|
||||
@@ -501,13 +600,14 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
padding.
|
||||
minheight Minimum height of the contents, excluding border and
|
||||
padding.
|
||||
maxwidth Maximum width of the contents, excluding border and
|
||||
padding.
|
||||
minwidth Minimum width of the contents, excluding border and
|
||||
padding.
|
||||
maxwidth Maximum width of the contents, excluding border,
|
||||
padding and scrollbar.
|
||||
minwidth Minimum width of the contents, excluding border,
|
||||
padding and scrollbar.
|
||||
firstline First buffer line to display. When larger than one it
|
||||
looks like the text scrolled up. When out of range
|
||||
the last buffer line will at the top of the window.
|
||||
Set to zero to leave the position as set by commands.
|
||||
Also see "scrollbar".
|
||||
hidden When TRUE the popup exists but is not displayed; use
|
||||
`popup_show()` to unhide it.
|
||||
@@ -524,10 +624,13 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
start and end as padding.
|
||||
wrap TRUE to make the lines wrap (default TRUE).
|
||||
drag TRUE to allow the popup to be dragged with the mouse
|
||||
by grabbing at at the border. Has no effect if the
|
||||
by grabbing at the border. Has no effect if the
|
||||
popup does not have a border. As soon as dragging
|
||||
starts and "pos" is "center" it is changed to
|
||||
"topleft".
|
||||
resize TRUE to allow the popup to be resized with the mouse
|
||||
by grabbing at the bottom right corner. Has no effect
|
||||
if the popup does not have a border.
|
||||
close When "button" an X is displayed in the top-right, on
|
||||
top of any border, padding or text. When clicked on
|
||||
the X the popup will close. Any callback is invoked
|
||||
@@ -588,10 +691,37 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
- "expr": if the cursor moved outside |<cexpr>|
|
||||
- [{start}, {end}]: if the cursor moved before column
|
||||
{start} or after {end}
|
||||
- [{lnum}, {start}, {end}]: if the cursor moved away
|
||||
from line {lnum}, before column {start} or after
|
||||
{end}
|
||||
- [0, 0, 0] do not close the popup when the cursor
|
||||
moves
|
||||
The popup also closes if the cursor moves to another
|
||||
line or to another window.
|
||||
mousemoved Like "moved" but referring to the mouse pointer
|
||||
position
|
||||
cursorline non-zero: Highlight the cursor line. Also scrolls the
|
||||
text to show this line (only works properly
|
||||
when 'wrap' is off).
|
||||
zero: Do not highlight the cursor line.
|
||||
Default is zero, except for |popup_menu()|.
|
||||
filter A callback that can filter typed characters, see
|
||||
|popup-filter|.
|
||||
mapping Allow for key mapping. When FALSE and the popup is
|
||||
visible and has a filter callback key mapping is
|
||||
disabled. Default value is TRUE.
|
||||
filtermode In which modes the filter is used (same flags as with
|
||||
|hasmapto()| plus "a"):
|
||||
n Normal mode
|
||||
v Visual and Select mode
|
||||
x Visual mode
|
||||
s Select mode
|
||||
o Operator-pending mode
|
||||
i Insert mode
|
||||
l Language-Argument ("r", "f", "t", etc.)
|
||||
c Command-line mode
|
||||
a all modes
|
||||
The default value is "a".
|
||||
callback A callback that is called when the popup closes, e.g.
|
||||
when using |popup_filter_menu()|, see |popup-callback|.
|
||||
|
||||
@@ -624,6 +754,72 @@ So we get:
|
||||
|prop_type_add()|
|
||||
|
||||
|
||||
POSITION POPUP WITH TEXTPROP *popup-textprop-pos*
|
||||
|
||||
Positioning a popup next to a text property causes the popup to move when text
|
||||
is inserted or deleted. The popup functions like a tooltip.
|
||||
|
||||
These steps are needed to make this work:
|
||||
|
||||
- Define a text property type, it defines the name. >
|
||||
call prop_type_add('popupMarker', {})
|
||||
|
||||
- Place a text property at the desired text: >
|
||||
let lnum = {line of the text}
|
||||
let col = {start column of the text}
|
||||
let len = {length of the text}
|
||||
let propId = {arbitrary but unique number}
|
||||
call prop_add(lnum, col, #{
|
||||
\ length: len,
|
||||
\ type: 'popupMarker',
|
||||
\ id: propId,
|
||||
\ })
|
||||
|
||||
- Create a popup: >
|
||||
let winid = popup_create('the text', #{
|
||||
\ pos: 'botleft',
|
||||
\ textprop: 'popupMarker',
|
||||
\ textpropid: propId,
|
||||
\ border: [],
|
||||
\ padding: [0,1,0,1],
|
||||
\ close: 'click',
|
||||
\ })
|
||||
|
||||
By default the popup is positioned at the corner of the text, opposite of the
|
||||
"pos" specified for the popup. Thus when the popup uses "botleft", the
|
||||
bottom-left corner of the popup is positioned next to the top-right corner of
|
||||
the text property:
|
||||
+----------+
|
||||
| the text |
|
||||
+----------+
|
||||
just some PROPERTY as an example
|
||||
|
||||
Here the text property is on "PROPERTY". Move the popup to the left by
|
||||
passing a negative "col" value to popup_create(). With "col: -5" you get:
|
||||
|
||||
+----------+
|
||||
| the text |
|
||||
+----------+
|
||||
just some PROPERTY as an example
|
||||
|
||||
If the text property moves out of view then the popup will be hidden.
|
||||
If the window for which the popup was defined is closed, the popup is closed.
|
||||
|
||||
If the popup cannot fit in the desired position, it may show at a nearby
|
||||
position.
|
||||
|
||||
Some hints:
|
||||
- To avoid collision with other plugins the text property type name has to be
|
||||
unique. You can also use the "bufnr" item to make it local to a buffer.
|
||||
- You can leave out the text property ID if there is only ever one text
|
||||
property visible.
|
||||
- The popup may be in the way of what the user is doing, making it close with
|
||||
a click, as in the example above, helps for that.
|
||||
- If the text property is removed the popup is closed. Use something like
|
||||
this: >
|
||||
call prop_remove(#{type: 'popupMarker', id: propId})
|
||||
|
||||
|
||||
POPUP FILTER *popup-filter*
|
||||
|
||||
A callback that gets any typed keys while a popup is displayed. The filter is
|
||||
@@ -648,17 +844,26 @@ key as a string, e.g.: >
|
||||
endif
|
||||
return 0
|
||||
endfunc
|
||||
< *popup-filter-mode*
|
||||
The "filtermode" property can be used to specify in what mode the filter is
|
||||
invoked. The default is "a": all modes. When using "nvi" Command-line mode
|
||||
is not included, so that any command typed on the command line is not
|
||||
filtered. However, to get to Command-line mode the filter must not consume
|
||||
":". Just like it must not consume "v" to allow for entering Visual mode.
|
||||
|
||||
Currently the key is what results after any mapping. This may change...
|
||||
*popup-mapping*
|
||||
Normally the key is what results after any mapping, since the keys pass on as
|
||||
normal input if the filter does not use it. If the filter consumes all the
|
||||
keys, set the "mapping" property to zero so that mappings do not get in the
|
||||
way. This is default for |popup_menu()| and |popup_dialog()|.
|
||||
|
||||
Some common key actions:
|
||||
Some recommended key actions:
|
||||
x close the popup (see note below)
|
||||
cursor keys select another entry
|
||||
Tab accept current suggestion
|
||||
|
||||
A mouse click arrives as <LeftMouse>. The coordinates are in
|
||||
v:mouse_popup_col and v:mouse_popup_row. The top-left screen cell of the
|
||||
popup is col 1, row 1 (not counting the border).
|
||||
A mouse click arrives as <LeftMouse>. The coordinates can be obtained with
|
||||
|getmousepos()|.
|
||||
|
||||
Vim provides standard filters |popup_filter_menu()| and
|
||||
|popup_filter_yesno()|.
|
||||
@@ -680,6 +885,11 @@ the second argument of `popup_close()`.
|
||||
If the popup is force-closed, e.g. because the cursor moved or CTRL-C was
|
||||
pressed, the number -1 is passed to the callback.
|
||||
|
||||
Example: >
|
||||
func SelectedColor(id, result)
|
||||
echo 'choice made: ' .. a:result
|
||||
endfunc
|
||||
|
||||
|
||||
POPUP SCROLLBAR *popup-scrollbar*
|
||||
|
||||
@@ -687,9 +897,9 @@ If the text does not fit in the popup a scrollbar is displayed on the right of
|
||||
the window. This can be disabled by setting the "scrollbar" option to zero.
|
||||
When the scrollbar is displayed mouse scroll events, while the mouse pointer
|
||||
is on the popup, will cause the text to scroll up or down as you would expect.
|
||||
A click in the upper halve of the scrollbar will scroll the text one line
|
||||
down. A click in the lower halve wil scroll the text one line up. However,
|
||||
this is limited so that the popup does not get smaller.
|
||||
A click in the upper half of the scrollbar will scroll the text down one line.
|
||||
A click in the lower half will scroll the text up one line. However, this is
|
||||
limited so that the popup does not get smaller.
|
||||
|
||||
|
||||
POPUP MASK *popup-mask*
|
||||
@@ -701,7 +911,7 @@ list has four numbers:
|
||||
leftmost, negative for counting from the right, -1 for
|
||||
rightmost
|
||||
endcol last column, like "col"
|
||||
line start line, positive for conting from the top, 1 for top,
|
||||
line start line, positive for counting from the top, 1 for top,
|
||||
negative for counting from the bottom, -1 for bottom
|
||||
endline end line, like "line"
|
||||
|
||||
@@ -724,17 +934,17 @@ Prompt the user to press y/Y or n/N: >
|
||||
endif
|
||||
endfunc
|
||||
|
||||
call popup_dialog('Continue? y/n', {
|
||||
\ 'filter': 'popup_filter_yesno',
|
||||
\ 'callback': 'MyDialogHandler',
|
||||
call popup_dialog('Continue? y/n', #{
|
||||
\ filter: 'popup_filter_yesno',
|
||||
\ callback: 'MyDialogHandler',
|
||||
\ })
|
||||
<
|
||||
*popup_menu-shortcut-example*
|
||||
Extend popup_filter_menu() with shortcut keys: >
|
||||
|
||||
call popup_menu(['Save', 'Cancel', 'Discard'], {
|
||||
\ 'filter': 'MyMenuFilter',
|
||||
\ 'callback': 'MyMenuHandler',
|
||||
call popup_menu(['Save', 'Cancel', 'Discard'], #{
|
||||
\ filter: 'MyMenuFilter',
|
||||
\ callback: 'MyMenuHandler',
|
||||
\ })
|
||||
|
||||
func MyMenuFilter(id, key)
|
||||
@@ -773,7 +983,7 @@ Example for using a popup window for 'ballooneval': >
|
||||
endif
|
||||
call popup_close(s:winid)
|
||||
endif
|
||||
let s:winid = popup_beval(v:beval_text, {'mousemoved': 'word'})
|
||||
let s:winid = popup_beval(v:beval_text, #{mousemoved: 'word'})
|
||||
let s:last_text = v:beval_text
|
||||
return ''
|
||||
endfunc
|
||||
@@ -797,14 +1007,14 @@ this example simulated with a timer callback: >
|
||||
call popup_close(s:winid)
|
||||
let s:winid = 0
|
||||
endif
|
||||
" simulate an asynchronous loopup for the text to display
|
||||
" simulate an asynchronous lookup for the text to display
|
||||
let s:balloonText = v:beval_text
|
||||
call timer_start(100, 'ShowPopup')
|
||||
return ''
|
||||
endfunc
|
||||
|
||||
func ShowPopup(id)
|
||||
let s:winid = popup_beval(s:balloonText, {'mousemoved': 'word'})
|
||||
let s:winid = popup_beval(s:balloonText, #{mousemoved: 'word'})
|
||||
endfunc
|
||||
<
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*quickfix.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -313,7 +313,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
*:cex* *:cexpr* *E777*
|
||||
:cex[pr][!] {expr} Create a quickfix list using the result of {expr} and
|
||||
jump to the first error.
|
||||
If {expr} is a String, then each new-line terminated
|
||||
If {expr} is a String, then each newline terminated
|
||||
line in the String is processed using the global value
|
||||
of 'errorformat' and the result is added to the
|
||||
quickfix list.
|
||||
@@ -486,7 +486,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST:
|
||||
etc.
|
||||
< When the current file can't be |abandon|ed and the [!]
|
||||
is not present, the command fails.
|
||||
When an error is detected execution stops.
|
||||
When going to the next entry fails execution stops.
|
||||
The last buffer (or where an error occurred) becomes
|
||||
the current buffer.
|
||||
{cmd} can contain '|' to concatenate several commands.
|
||||
@@ -650,9 +650,9 @@ You can use CTRL-W <Enter> to open a new window and jump to the error there.
|
||||
|
||||
When the quickfix window has been filled, two autocommand events are
|
||||
triggered. First the 'filetype' option is set to "qf", which triggers the
|
||||
FileType event. Then the BufReadPost event is triggered, using "quickfix" for
|
||||
the buffer name. This can be used to perform some action on the listed
|
||||
errors. Example: >
|
||||
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
|
||||
on the listed errors. Example: >
|
||||
au BufReadPost quickfix setlocal modifiable
|
||||
\ | silent exe 'g/^/s//\=line(".")." "/'
|
||||
\ | setlocal nomodifiable
|
||||
@@ -1099,7 +1099,7 @@ id-utils) in a similar way to its compiler integration (see |:make| above).
|
||||
allowed with |:bufdo|.
|
||||
An example that uses the argument list and avoids
|
||||
errors for files without matches: >
|
||||
:silent argdo try
|
||||
:silent argdo try
|
||||
\ | grepadd! something %
|
||||
\ | catch /E480:/
|
||||
\ | endtry"
|
||||
@@ -1352,6 +1352,9 @@ replaced with SOH (0x01).
|
||||
Note: By default the difference between upper and lowercase is ignored. If
|
||||
you want to match case, add "\C" to the pattern |/\C|.
|
||||
|
||||
Vim will read lines of any length, but only the first 4095 bytes are used, the
|
||||
rest is ignored. Items can only be 1023 bytes long.
|
||||
|
||||
|
||||
Basic items
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 May 31
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -47,6 +47,7 @@ N is used to indicate an optional count that can be given before the command.
|
||||
|g$| N g$ to last character in screen line (differs from "$"
|
||||
when lines wrap)
|
||||
|gm| gm to middle of the screen line
|
||||
|gM| gM to middle of the line
|
||||
|bar| N | to column N (default: 1)
|
||||
|f| N f{char} to the Nth occurrence of {char} to the right
|
||||
|F| N F{char} to the Nth occurrence of {char} to the left
|
||||
@@ -291,7 +292,7 @@ moving around:
|
||||
|i_CTRL-A| CTRL-A insert previously inserted text
|
||||
|i_CTRL-@| CTRL-@ insert previously inserted text and stop
|
||||
Insert mode
|
||||
|i_CTRL-R| CTRL-R {0-9a-z%#:.-="} insert the contents of a register
|
||||
|i_CTRL-R| CTRL-R {register} insert the contents of a register
|
||||
|
||||
|i_CTRL-N| CTRL-N insert next match of identifier before the
|
||||
cursor
|
||||
@@ -626,7 +627,7 @@ Short explanation of each option: *option-list*
|
||||
'bioskey' 'biosk' MS-DOS: use bios calls for input characters
|
||||
'bomb' prepend a Byte Order Mark to the file
|
||||
'breakat' 'brk' characters that may cause a line break
|
||||
'breakindent' 'bri' wrapped line repeats indent
|
||||
'breakindent' 'bri' wrapped line repeats indent
|
||||
'breakindentopt' 'briopt' settings for 'breakindent'
|
||||
'browsedir' 'bsdir' which directory to start browsing in
|
||||
'bufhidden' 'bh' what to do when buffer is no longer in window
|
||||
@@ -651,6 +652,8 @@ Short explanation of each option: *option-list*
|
||||
'complete' 'cpt' specify how Insert mode completion works
|
||||
'completefunc' 'cfu' function to be used for Insert mode completion
|
||||
'completeopt' 'cot' options for Insert mode completion
|
||||
'completepopup' 'cpp' options for the Insert mode completion info popup
|
||||
'completeslash' 'csl' like 'shellslash' for completion
|
||||
'concealcursor' 'cocu' whether concealable text is hidden in cursor line
|
||||
'conceallevel' 'cole' whether concealable text is shown or hidden
|
||||
'confirm' 'cf' ask what to do about unsaved/read-only files
|
||||
@@ -668,6 +671,7 @@ Short explanation of each option: *option-list*
|
||||
'cursorbind' 'crb' move cursor in window as it moves in other windows
|
||||
'cursorcolumn' 'cuc' highlight the screen column of the cursor
|
||||
'cursorline' 'cul' highlight the screen line of the cursor
|
||||
'cursorlineopt' 'culopt' settings for 'cursorline'
|
||||
'debug' set to "msg" to see all error messages
|
||||
'define' 'def' pattern to be used to find a macro definition
|
||||
'delcombine' 'deco' delete combining characters on their own
|
||||
@@ -829,6 +833,7 @@ Short explanation of each option: *option-list*
|
||||
'perldll' name of the Perl dynamic library
|
||||
'preserveindent' 'pi' preserve the indent structure when reindenting
|
||||
'previewheight' 'pvh' height of the preview window
|
||||
'previewpopup' 'pvp' use popup window for preview
|
||||
'previewwindow' 'pvw' identifies the preview window
|
||||
'printdevice' 'pdev' name of the printer to be used for :hardcopy
|
||||
'printencoding' 'penc' encoding to be used for printing
|
||||
@@ -864,6 +869,7 @@ Short explanation of each option: *option-list*
|
||||
'runtimepath' 'rtp' list of directories used for runtime files
|
||||
'scroll' 'scr' lines to scroll with CTRL-U and CTRL-D
|
||||
'scrollbind' 'scb' scroll in window as other windows scroll
|
||||
'scrollfocus' 'scf' scroll wheel applies to window under pointer
|
||||
'scrolljump' 'sj' minimum number of lines to scroll
|
||||
'scrolloff' 'so' minimum nr. of lines above and below cursor
|
||||
'scrollopt' 'sbo' how 'scrollbind' should behave
|
||||
@@ -1073,8 +1079,7 @@ Short explanation of each option: *option-list*
|
||||
three digits)
|
||||
|c_CTRL-K| CTRL-K {char1} {char2}
|
||||
enter digraph (See |Q_di|)
|
||||
|c_CTRL-R| CTRL-R {0-9a-z"%#:-=}
|
||||
insert the contents of a register
|
||||
|c_CTRL-R| CTRL-R {register} insert the contents of a register
|
||||
|
||||
|c_<Left>| <Left>/<Right> cursor left/right
|
||||
|c_<S-Left>| <S-Left>/<S-Right> cursor one word left/right
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 8.1. Last change: 2019 Jun 14
|
||||
*repeat.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -79,7 +79,7 @@ The default for [range] is the whole buffer (1,$). Use "CTRL-C" to interrupt
|
||||
the command. If an error message is given for a line, the command for that
|
||||
line is aborted and the global command continues with the next marked or
|
||||
unmarked line.
|
||||
*E147*
|
||||
*E147*
|
||||
When the command is used recursively, it only works on one line. Giving a
|
||||
range is then not allowed. This is useful to find all lines that match a
|
||||
pattern and do not match another pattern: >
|
||||
@@ -193,7 +193,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
Read Ex commands from {file} in each directory given
|
||||
by 'runtimepath' and/or 'packpath'. There is no error
|
||||
for non-existing files.
|
||||
|
||||
|
||||
Example: >
|
||||
:runtime syntax/c.vim
|
||||
|
||||
@@ -219,10 +219,10 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
|
||||
When {file} contains wildcards it is expanded to all
|
||||
matching files. Example: >
|
||||
:runtime! plugin/*.vim
|
||||
:runtime! plugin/**/*.vim
|
||||
< This is what Vim uses to load the plugin files when
|
||||
starting up. This similar command: >
|
||||
:runtime plugin/*.vim
|
||||
:runtime plugin/**/*.vim
|
||||
< would source the first file only.
|
||||
|
||||
When 'verbose' is one or higher, there is a message
|
||||
@@ -268,7 +268,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
*:packl* *:packloadall*
|
||||
:packl[oadall][!] Load all packages in the "start" directory under each
|
||||
entry in 'packpath'.
|
||||
|
||||
|
||||
First all the directories found are added to
|
||||
'runtimepath', then the plugins found in the
|
||||
directories are sourced. This allows for a plugin to
|
||||
@@ -547,7 +547,7 @@ When Vim starts up, after processing your .vimrc, it scans all directories in
|
||||
directories are added to 'runtimepath'. Then all the plugins are loaded.
|
||||
See |packload-two-steps| for how these two steps can be useful.
|
||||
|
||||
In the example Vim will find "pack/foo/start/foobar/plugin/foo.vim" and adds
|
||||
In the example Vim will find "pack/foo/start/foobar/plugin/foo.vim" and adds
|
||||
"~/.vim/pack/foo/start/foobar" to 'runtimepath'.
|
||||
|
||||
If the "foobar" plugin kicks in and sets the 'filetype' to "some", Vim will
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Jun 04
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Nov 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -9,6 +9,7 @@ Sign Support Features *sign-support*
|
||||
|
||||
1. Introduction |sign-intro|
|
||||
2. Commands |sign-commands|
|
||||
3. Functions |sign-functions-details|
|
||||
|
||||
{only available when compiled with the |+signs| feature}
|
||||
|
||||
@@ -47,8 +48,8 @@ When signs are defined for a file, Vim will automatically add a column of two
|
||||
characters to display them in. When the last sign is unplaced the column
|
||||
disappears again. This behavior can be changed with the 'signcolumn' option.
|
||||
|
||||
The color of the column is set with the SignColumn group |hl-SignColumn|.
|
||||
Example to set the color: >
|
||||
The color of the column is set with the SignColumn highlight group
|
||||
|hl-SignColumn|. Example to set the color: >
|
||||
|
||||
:highlight SignColumn guibg=darkgrey
|
||||
<
|
||||
@@ -70,6 +71,10 @@ placed in the named group. The sign identifier is unique within a group. The
|
||||
sign group allows Vim plugins to use unique signs without interfering with
|
||||
other plugins using signs.
|
||||
|
||||
To place a sign in a popup window the group name must start with "PopUp".
|
||||
Other signs will not show in a popup window. The group name "PopUpMenu" is
|
||||
used by popup windows where 'cursorline' is set.
|
||||
|
||||
*sign-priority*
|
||||
Each placed sign is assigned a priority value. When multiple signs are placed
|
||||
on the same line, the attributes of the sign with the highest priority is used
|
||||
@@ -344,4 +349,380 @@ See |sign_jump()| for the equivalent Vim script function.
|
||||
Same but jump to the sign in group {group}
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. Functions *sign-functions-details*
|
||||
|
||||
sign_define({name} [, {dict}]) *sign_define()*
|
||||
sign_define({list})
|
||||
Define a new sign named {name} or modify the attributes of an
|
||||
existing sign. This is similar to the |:sign-define| command.
|
||||
|
||||
Prefix {name} with a unique text to avoid name collisions.
|
||||
There is no {group} like with placing signs.
|
||||
|
||||
The {name} can be a String or a Number. The optional {dict}
|
||||
argument specifies the sign attributes. The following values
|
||||
are supported:
|
||||
icon full path to the bitmap file for the sign.
|
||||
linehl highlight group used for the whole line the
|
||||
sign is placed in.
|
||||
text text that is displayed when there is no icon
|
||||
or the GUI is not being used.
|
||||
texthl highlight group used for the text item
|
||||
|
||||
If the sign named {name} already exists, then the attributes
|
||||
of the sign are updated.
|
||||
|
||||
The one argument {list} can be used to define a list of signs.
|
||||
Each list item is a dictionary with the above items in {dict}
|
||||
and a "name" item for the sign name.
|
||||
|
||||
Returns 0 on success and -1 on failure. When the one argument
|
||||
{list} is used, then returns a List of values one for each
|
||||
defined sign.
|
||||
|
||||
Examples: >
|
||||
call sign_define("mySign", {
|
||||
\ "text" : "=>",
|
||||
\ "texthl" : "Error",
|
||||
\ "linehl" : "Search"})
|
||||
call sign_define([
|
||||
\ {'name' : 'sign1',
|
||||
\ 'text' : '=>'},
|
||||
\ {'name' : 'sign2',
|
||||
\ 'text' : '!!'}
|
||||
\ ])
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignList()->sign_define()
|
||||
|
||||
sign_getdefined([{name}]) *sign_getdefined()*
|
||||
Get a list of defined signs and their attributes.
|
||||
This is similar to the |:sign-list| command.
|
||||
|
||||
If the {name} is not supplied, then a list of all the defined
|
||||
signs is returned. Otherwise the attribute of the specified
|
||||
sign is returned.
|
||||
|
||||
Each list item in the returned value is a dictionary with the
|
||||
following entries:
|
||||
icon full path to the bitmap file of the sign
|
||||
linehl highlight group used for the whole line the
|
||||
sign is placed in.
|
||||
name name of the sign
|
||||
text text that is displayed when there is no icon
|
||||
or the GUI is not being used.
|
||||
texthl highlight group used for the text item
|
||||
|
||||
Returns an empty List if there are no signs and when {name} is
|
||||
not found.
|
||||
|
||||
Examples: >
|
||||
" Get a list of all the defined signs
|
||||
echo sign_getdefined()
|
||||
|
||||
" Get the attribute of the sign named mySign
|
||||
echo sign_getdefined("mySign")
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignList()->sign_getdefined()
|
||||
|
||||
sign_getplaced([{expr} [, {dict}]]) *sign_getplaced()*
|
||||
Return a list of signs placed in a buffer or all the buffers.
|
||||
This is similar to the |:sign-place-list| command.
|
||||
|
||||
If the optional buffer name {expr} is specified, then only the
|
||||
list of signs placed in that buffer is returned. For the use
|
||||
of {expr}, see |bufname()|. The optional {dict} can contain
|
||||
the following entries:
|
||||
group select only signs in this group
|
||||
id select sign with this identifier
|
||||
lnum select signs placed in this line. For the use
|
||||
of {lnum}, see |line()|.
|
||||
If {group} is '*', then signs in all the groups including the
|
||||
global group are returned. If {group} is not supplied or is an
|
||||
empty string, then only signs in the global group are
|
||||
returned. If no arguments are supplied, then signs in the
|
||||
global group placed in all the buffers are returned.
|
||||
See |sign-group|.
|
||||
|
||||
Each list item in the returned value is a dictionary with the
|
||||
following entries:
|
||||
bufnr number of the buffer with the sign
|
||||
signs list of signs placed in {bufnr}. Each list
|
||||
item is a dictionary with the below listed
|
||||
entries
|
||||
|
||||
The dictionary for each sign contains the following entries:
|
||||
group sign group. Set to '' for the global group.
|
||||
id identifier of the sign
|
||||
lnum line number where the sign is placed
|
||||
name name of the defined sign
|
||||
priority sign priority
|
||||
|
||||
The returned signs in a buffer are ordered by their line
|
||||
number and priority.
|
||||
|
||||
Returns an empty list on failure or if there are no placed
|
||||
signs.
|
||||
|
||||
Examples: >
|
||||
" Get a List of signs placed in eval.c in the
|
||||
" global group
|
||||
echo sign_getplaced("eval.c")
|
||||
|
||||
" Get a List of signs in group 'g1' placed in eval.c
|
||||
echo sign_getplaced("eval.c", {'group' : 'g1'})
|
||||
|
||||
" Get a List of signs placed at line 10 in eval.c
|
||||
echo sign_getplaced("eval.c", {'lnum' : 10})
|
||||
|
||||
" Get sign with identifier 10 placed in a.py
|
||||
echo sign_getplaced("a.py", {'id' : 10})
|
||||
|
||||
" Get sign with id 20 in group 'g1' placed in a.py
|
||||
echo sign_getplaced("a.py", {'group' : 'g1',
|
||||
\ 'id' : 20})
|
||||
|
||||
" Get a List of all the placed signs
|
||||
echo sign_getplaced()
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetBufname()->sign_getplaced()
|
||||
<
|
||||
*sign_jump()*
|
||||
sign_jump({id}, {group}, {expr})
|
||||
Open the buffer {expr} or jump to the window that contains
|
||||
{expr} and position the cursor at sign {id} in group {group}.
|
||||
This is similar to the |:sign-jump| command.
|
||||
|
||||
For the use of {expr}, see |bufname()|.
|
||||
|
||||
Returns the line number of the sign. Returns -1 if the
|
||||
arguments are invalid.
|
||||
|
||||
Example: >
|
||||
" Jump to sign 10 in the current buffer
|
||||
call sign_jump(10, '', '')
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignid()->sign_jump()
|
||||
<
|
||||
*sign_place()*
|
||||
sign_place({id}, {group}, {name}, {expr} [, {dict}])
|
||||
Place the sign defined as {name} at line {lnum} in file or
|
||||
buffer {expr} and assign {id} and {group} to sign. This is
|
||||
similar to the |:sign-place| command.
|
||||
|
||||
If the sign identifier {id} is zero, then a new identifier is
|
||||
allocated. Otherwise the specified number is used. {group} is
|
||||
the sign group name. To use the global sign group, use an
|
||||
empty string. {group} functions as a namespace for {id}, thus
|
||||
two groups can use the same IDs. Refer to |sign-identifier|
|
||||
and |sign-group| for more information.
|
||||
|
||||
{name} refers to a defined sign.
|
||||
{expr} refers to a buffer name or number. For the accepted
|
||||
values, see |bufname()|.
|
||||
|
||||
The optional {dict} argument supports the following entries:
|
||||
lnum line number in the file or buffer
|
||||
{expr} where the sign is to be placed.
|
||||
For the accepted values, see |line()|.
|
||||
priority priority of the sign. See
|
||||
|sign-priority| for more information.
|
||||
|
||||
If the optional {dict} is not specified, then it modifies the
|
||||
placed sign {id} in group {group} to use the defined sign
|
||||
{name}.
|
||||
|
||||
Returns the sign identifier on success and -1 on failure.
|
||||
|
||||
Examples: >
|
||||
" Place a sign named sign1 with id 5 at line 20 in
|
||||
" buffer json.c
|
||||
call sign_place(5, '', 'sign1', 'json.c',
|
||||
\ {'lnum' : 20})
|
||||
|
||||
" Updates sign 5 in buffer json.c to use sign2
|
||||
call sign_place(5, '', 'sign2', 'json.c')
|
||||
|
||||
" Place a sign named sign3 at line 30 in
|
||||
" buffer json.c with a new identifier
|
||||
let id = sign_place(0, '', 'sign3', 'json.c',
|
||||
\ {'lnum' : 30})
|
||||
|
||||
" Place a sign named sign4 with id 10 in group 'g3'
|
||||
" at line 40 in buffer json.c with priority 90
|
||||
call sign_place(10, 'g3', 'sign4', 'json.c',
|
||||
\ {'lnum' : 40, 'priority' : 90})
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignid()->sign_place(group, name, expr)
|
||||
<
|
||||
*sign_placelist()*
|
||||
sign_placelist({list})
|
||||
Place one or more signs. This is similar to the
|
||||
|sign_place()| function. The {list} argument specifies the
|
||||
List of signs to place. Each list item is a dict with the
|
||||
following sign attributes:
|
||||
buffer buffer name or number. For the accepted
|
||||
values, see |bufname()|.
|
||||
group sign group. {group} functions as a namespace
|
||||
for {id}, thus two groups can use the same
|
||||
IDs. If not specified or set to an empty
|
||||
string, then the global group is used. See
|
||||
|sign-group| for more information.
|
||||
id sign identifier. If not specified or zero,
|
||||
then a new unique identifier is allocated.
|
||||
Otherwise the specified number is used. See
|
||||
|sign-identifier| for more information.
|
||||
lnum line number in the buffer {expr} where the
|
||||
sign is to be placed. For the accepted values,
|
||||
see |line()|.
|
||||
name name of the sign to place. See |sign_define()|
|
||||
for more information.
|
||||
priority priority of the sign. When multiple signs are
|
||||
placed on a line, the sign with the highest
|
||||
priority is used. If not specified, the
|
||||
default value of 10 is used. See
|
||||
|sign-priority| for more information.
|
||||
|
||||
If {id} refers to an existing sign, then the existing sign is
|
||||
modified to use the specified {name} and/or {priority}.
|
||||
|
||||
Returns a List of sign identifiers. If failed to place a
|
||||
sign, the corresponding list item is set to -1.
|
||||
|
||||
Examples: >
|
||||
" Place sign s1 with id 5 at line 20 and id 10 at line
|
||||
" 30 in buffer a.c
|
||||
let [n1, n2] = sign_placelist([
|
||||
\ {'id' : 5,
|
||||
\ 'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 20},
|
||||
\ {'id' : 10,
|
||||
\ 'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 30}
|
||||
\ ])
|
||||
|
||||
" Place sign s1 in buffer a.c at line 40 and 50
|
||||
" with auto-generated identifiers
|
||||
let [n1, n2] = sign_placelist([
|
||||
\ {'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 40},
|
||||
\ {'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 50}
|
||||
\ ])
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignlist()->sign_placelist()
|
||||
|
||||
sign_undefine([{name}]) *sign_undefine()*
|
||||
sign_undefine({list})
|
||||
Deletes a previously defined sign {name}. This is similar to
|
||||
the |:sign-undefine| command. If {name} is not supplied, then
|
||||
deletes all the defined signs.
|
||||
|
||||
The one argument {list} can be used to undefine a list of
|
||||
signs. Each list item is the name of a sign.
|
||||
|
||||
Returns 0 on success and -1 on failure. For the one argument
|
||||
{list} call, returns a list of values one for each undefined
|
||||
sign.
|
||||
|
||||
Examples: >
|
||||
" Delete a sign named mySign
|
||||
call sign_undefine("mySign")
|
||||
|
||||
" Delete signs 'sign1' and 'sign2'
|
||||
call sign_undefine(["sign1", "sign2"])
|
||||
|
||||
" Delete all the signs
|
||||
call sign_undefine()
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignlist()->sign_undefine()
|
||||
|
||||
sign_unplace({group} [, {dict}]) *sign_unplace()*
|
||||
Remove a previously placed sign in one or more buffers. This
|
||||
is similar to the |:sign-unplace| command.
|
||||
|
||||
{group} is the sign group name. To use the global sign group,
|
||||
use an empty string. If {group} is set to '*', then all the
|
||||
groups including the global group are used.
|
||||
The signs in {group} are selected based on the entries in
|
||||
{dict}. The following optional entries in {dict} are
|
||||
supported:
|
||||
buffer buffer name or number. See |bufname()|.
|
||||
id sign identifier
|
||||
If {dict} is not supplied, then all the signs in {group} are
|
||||
removed.
|
||||
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
Examples: >
|
||||
" Remove sign 10 from buffer a.vim
|
||||
call sign_unplace('', {'buffer' : "a.vim", 'id' : 10})
|
||||
|
||||
" Remove sign 20 in group 'g1' from buffer 3
|
||||
call sign_unplace('g1', {'buffer' : 3, 'id' : 20})
|
||||
|
||||
" Remove all the signs in group 'g2' from buffer 10
|
||||
call sign_unplace('g2', {'buffer' : 10})
|
||||
|
||||
" Remove sign 30 in group 'g3' from all the buffers
|
||||
call sign_unplace('g3', {'id' : 30})
|
||||
|
||||
" Remove all the signs placed in buffer 5
|
||||
call sign_unplace('*', {'buffer' : 5})
|
||||
|
||||
" Remove the signs in group 'g4' from all the buffers
|
||||
call sign_unplace('g4')
|
||||
|
||||
" Remove sign 40 from all the buffers
|
||||
call sign_unplace('*', {'id' : 40})
|
||||
|
||||
" Remove all the placed signs from all the buffers
|
||||
call sign_unplace('*')
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetSigngroup()->sign_unplace()
|
||||
<
|
||||
sign_unplacelist({list}) *sign_unplacelist()*
|
||||
Remove previously placed signs from one or more buffers. This
|
||||
is similar to the |sign_unplace()| function.
|
||||
|
||||
The {list} argument specifies the List of signs to remove.
|
||||
Each list item is a dict with the following sign attributes:
|
||||
buffer buffer name or number. For the accepted
|
||||
values, see |bufname()|. If not specified,
|
||||
then the specified sign is removed from all
|
||||
the buffers.
|
||||
group sign group name. If not specified or set to an
|
||||
empty string, then the global sign group is
|
||||
used. If set to '*', then all the groups
|
||||
including the global group are used.
|
||||
id sign identifier. If not specified, then all
|
||||
the signs in the specified group are removed.
|
||||
|
||||
Returns a List where an entry is set to 0 if the corresponding
|
||||
sign was successfully removed or -1 on failure.
|
||||
|
||||
Example: >
|
||||
" Remove sign with id 10 from buffer a.vim and sign
|
||||
" with id 20 from buffer b.vim
|
||||
call sign_unplacelist([
|
||||
\ {'id' : 10, 'buffer' : "a.vim"},
|
||||
\ {'id' : 20, 'buffer' : 'b.vim'},
|
||||
\ ])
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetSignlist()->sign_unplacelist()
|
||||
<
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*spell.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*spell.txt* For Vim version 8.1. Last change: 2019 Aug 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -121,6 +121,23 @@ zuG Undo |zW| and |zG|, remove the word from the internal
|
||||
:spellw[rong]! {word} Add {word} as a wrong (bad) word to the internal word
|
||||
list, like with |zW|.
|
||||
|
||||
*:spellra* *:spellrare*
|
||||
:[count]spellr[are] {word}
|
||||
Add {word} as a rare word to 'spellfile', similar to
|
||||
|zw|. Without count the first name is used, with
|
||||
a count of two the second entry, etc.
|
||||
|
||||
There are no normal mode commands to mark words as
|
||||
rare as this is a fairly uncommon command and all
|
||||
intuitive commands for this are already taken. If you
|
||||
want you can add mappings with e.g.: >
|
||||
nnoremap z? :exe ':spellrare ' . expand('<cWORD>')<CR>
|
||||
nnoremap z/ :exe ':spellrare! ' . expand('<cWORD>')<CR>
|
||||
< |:spellundo|, |zuw|, or |zuW| can be used to undo this.
|
||||
|
||||
:spellr[rare]! {word} Add {word} as a rare word to the internal word
|
||||
list, similar to |zW|.
|
||||
|
||||
:[count]spellu[ndo] {word} *:spellu* *:spellundo*
|
||||
Like |zuw|. [count] used as with |:spellgood|.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*starting.txt* For Vim version 8.1. Last change: 2019 Jul 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -152,8 +152,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
This can be used to find out where time is spent while loading
|
||||
your .vimrc, plugins and opening the first file.
|
||||
When {fname} already exists new messages are appended.
|
||||
(Only available when compiled with the |+startuptime|
|
||||
feature).
|
||||
{only available when compiled with the |+startuptime|
|
||||
feature}
|
||||
|
||||
*--literal*
|
||||
--literal Take file names literally, don't expand wildcards. Not needed
|
||||
@@ -311,10 +311,10 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
-l Lisp mode. Sets the 'lisp' and 'showmatch' options on.
|
||||
|
||||
*-A*
|
||||
-A Arabic mode. Sets the 'arabic' option on. (Only when
|
||||
-A Arabic mode. Sets the 'arabic' option on. {only when
|
||||
compiled with the |+arabic| features (which include
|
||||
|+rightleft|), otherwise Vim gives an error message
|
||||
and exits.)
|
||||
and exits}
|
||||
|
||||
*-F*
|
||||
-F This was used for Farsi mode, which has been removed.
|
||||
@@ -322,8 +322,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
|
||||
*-H*
|
||||
-H Hebrew mode. Sets the 'hkmap' and 'rightleft' options on.
|
||||
(Only when compiled with the |+rightleft| feature, otherwise
|
||||
Vim gives an error message and exits.)
|
||||
{only when compiled with the |+rightleft| feature, otherwise
|
||||
Vim gives an error message and exits}
|
||||
|
||||
*-V* *verbose*
|
||||
-V[N] Verbose. Sets the 'verbose' option to [N] (default: 10).
|
||||
@@ -1189,6 +1189,8 @@ greps in the help files) you might be able to use this: >
|
||||
|
||||
VIMRUNTIME=`vim -e -T dumb --cmd 'exe "set t_cm=\<C-M>"|echo $VIMRUNTIME|quit' | tr -d '\015' `
|
||||
|
||||
Don't set $VIMRUNTIME to an empty value, some things may stop working.
|
||||
|
||||
==============================================================================
|
||||
6. Suspending *suspend*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Jun 13
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -60,8 +60,8 @@ If the VIM environment variable is not set, Vim will try to find
|
||||
the path in another way (see |$VIMRUNTIME|). Usually this works just
|
||||
fine. If it doesn't, try setting the VIM environment variable to the
|
||||
directory where the Vim stuff is located. For example, if your syntax files
|
||||
are in the "/usr/vim/vim50/syntax" directory, set $VIMRUNTIME to
|
||||
"/usr/vim/vim50". You must do this in the shell, before starting Vim.
|
||||
are in the "/usr/vim/vim81/syntax" directory, set $VIMRUNTIME to
|
||||
"/usr/vim/vim81". You must do this in the shell, before starting Vim.
|
||||
This command also sources the |menu.vim| script when the GUI is running or
|
||||
will start soon. See |'go-M'| about avoiding that.
|
||||
|
||||
@@ -476,6 +476,16 @@ conversion. See |-E| and |-s-ex| for details. It is probably best to create a
|
||||
script to replace all the -c commands and use it with the -u flag instead of
|
||||
specifying each command separately.
|
||||
|
||||
*hl-TOhtmlProgress* *TOhtml-progress-color*
|
||||
When displayed, the progress bar will show colored boxes along the statusline
|
||||
as the HTML conversion proceeds. By default, the background color as the
|
||||
current "DiffDelete" highlight group is used. If "DiffDelete" and "StatusLine"
|
||||
have the same background color, TOhtml will automatically adjust the color to
|
||||
differ. If you do not like the automatically selected colors, you can define
|
||||
your own highlight colors for the progress bar. Example: >
|
||||
|
||||
hi TOhtmlProgress guifg=#c0ffee ctermbg=7
|
||||
<
|
||||
*g:html_number_lines*
|
||||
Default: current 'number' setting.
|
||||
When 0, buffer text is displayed in the generated HTML without line numbering.
|
||||
@@ -507,8 +517,8 @@ For example: >
|
||||
<
|
||||
*g:html_use_css*
|
||||
Default: 1.
|
||||
When 1, generate valid HTML 4.01 markup with CSS1 styling, supported in all
|
||||
modern browsers and most old browsers.
|
||||
When 1, generate valid HTML 5 markup with CSS styling, supported in all modern
|
||||
browsers and many old browsers.
|
||||
When 0, generate <font> tags and similar outdated markup. This is not
|
||||
recommended but it may work better in really old browsers, email clients,
|
||||
forum posts, and similar situations where basic CSS support is unavailable.
|
||||
@@ -580,23 +590,43 @@ affected in this way as follows:
|
||||
Example, to make the fold column and line numbers uncopyable: >
|
||||
:let g:html_prevent_copy = "fn"
|
||||
<
|
||||
This feature is currently implemented by inserting read-only <input> elements
|
||||
into the markup to contain the uncopyable areas. This does not work well in
|
||||
all cases. When pasting to some applications which understand HTML, the
|
||||
<input> elements also get pasted. But plain-text paste destinations should
|
||||
always work.
|
||||
The method used to prevent copying in the generated page depends on the value
|
||||
of |g:html_use_input_for_pc|.
|
||||
|
||||
*g:html_use_input_for_pc*
|
||||
Default: "fallback"
|
||||
If |g:html_prevent_copy| is non-empty, then:
|
||||
|
||||
When "all", read-only <input> elements are used in place of normal text for
|
||||
uncopyable regions. In some browsers, especially older browsers, after
|
||||
selecting an entire page and copying the selection, the <input> tags are not
|
||||
pasted with the page text. If |g:html_no_invalid| is 0, the <input> tags have
|
||||
invalid type; this works in more browsers, but the page will not validate.
|
||||
Note: this method does NOT work in recent versions of Chrome and equivalent
|
||||
browsers; the <input> tags get pasted with the text.
|
||||
|
||||
When "fallback" (default value), the same <input> elements are generated for
|
||||
older browsers, but newer browsers (detected by CSS feature query) hide the
|
||||
<input> elements and instead use generated content in an ::before pseudoelement
|
||||
to display the uncopyable text. This method should work with the largest
|
||||
number of browsers, both old and new.
|
||||
|
||||
When "none", the <input> elements are not generated at all. Only the
|
||||
generated-content method is used. This means that old browsers, notably
|
||||
Internet Explorer, will either copy the text intended not to be copyable, or
|
||||
the non-copyable text may not appear at all. However, this is the most
|
||||
standards-based method, and there will be much less markup.
|
||||
|
||||
*g:html_no_invalid*
|
||||
Default: 0.
|
||||
When 0, if |g:html_prevent_copy| is non-empty, an invalid attribute is
|
||||
intentionally inserted into the <input> element for the uncopyable areas. This
|
||||
increases the number of applications you can paste to without also pasting the
|
||||
<input> elements. Specifically, Microsoft Word will not paste the <input>
|
||||
elements if they contain this invalid attribute.
|
||||
When 1, no invalid markup is ever intentionally inserted, and the generated
|
||||
page should validate. However, be careful pasting into Microsoft Word when
|
||||
|g:html_prevent_copy| is non-empty; it can be hard to get rid of the <input>
|
||||
elements which get pasted.
|
||||
When 0, if |g:html_prevent_copy| is non-empty and |g:html_use_input_for_pc| is
|
||||
not "none", an invalid attribute is intentionally inserted into the <input>
|
||||
element for the uncopyable areas. This prevents pasting the <input> elements
|
||||
in some applications. Specifically, some versions of Microsoft Word will not
|
||||
paste the <input> elements if they contain this invalid attribute. When 1, no
|
||||
invalid markup is inserted, and the generated page should validate. However,
|
||||
<input> elements may be pasted into some applications and can be difficult to
|
||||
remove afterward.
|
||||
|
||||
*g:html_hover_unfold*
|
||||
Default: 0.
|
||||
@@ -936,10 +966,12 @@ Basic.
|
||||
C *c.vim* *ft-c-syntax*
|
||||
|
||||
A few things in C highlighting are optional. To enable them assign any value
|
||||
to the respective variable. Example: >
|
||||
(including zero) to the respective variable. Example: >
|
||||
:let c_comment_strings = 1
|
||||
To disable them use ":unlet". Example: >
|
||||
:let c_no_bracket_error = 0
|
||||
To disable them use `:unlet`. Example: >
|
||||
:unlet c_comment_strings
|
||||
Setting the value to zero doesn't work!
|
||||
|
||||
An alternative is to switch to the C++ highlighting: >
|
||||
:set filetype=cpp
|
||||
@@ -955,8 +987,8 @@ Variable Highlight ~
|
||||
except { and } in first column
|
||||
Default is to highlight them, otherwise you
|
||||
can't spot a missing ")".
|
||||
*c_curly_error* highlight a missing }; this forces syncing from the
|
||||
start of the file, can be slow
|
||||
*c_curly_error* highlight a missing } by finding all pairs; this
|
||||
forces syncing from the start of the file, can be slow
|
||||
*c_no_ansi* don't do standard ANSI types and constants
|
||||
*c_ansi_typedefs* ... but do standard ANSI types
|
||||
*c_ansi_constants* ... but do standard ANSI constants
|
||||
@@ -1158,6 +1190,26 @@ startup vimrc: >
|
||||
:let filetype_w = "cweb"
|
||||
|
||||
|
||||
DART *dart.vim* *ft-dart-syntax*
|
||||
|
||||
Dart is an object-oriented, typed, class defined, garbage collected language
|
||||
used for developing mobile, desktop, web, and back-end applications. Dart uses
|
||||
a C-like syntax derived from C, Java, and JavaScript, with features adopted
|
||||
from Smalltalk, Python, Ruby, and others.
|
||||
|
||||
More information about the language and its development environment at the
|
||||
official Dart language website at https://dart.dev
|
||||
|
||||
dart.vim syntax detects and highlights Dart statements, reserved words,
|
||||
type declarations, storage classes, conditionals, loops, interpolated values,
|
||||
and comments. There is no support idioms from Flutter or any other Dart
|
||||
framework.
|
||||
|
||||
Changes, fixes? Submit an issue or pull request via:
|
||||
|
||||
https://github.com/pr3d4t0r/dart-vim-syntax/
|
||||
|
||||
|
||||
DESKTOP *desktop.vim* *ft-desktop-syntax*
|
||||
|
||||
Primary goal of this syntax file is to highlight .desktop and .directory files
|
||||
@@ -1349,26 +1401,26 @@ to your startup file.
|
||||
|
||||
EUPHORIA *euphoria3.vim* *euphoria4.vim* *ft-euphoria-syntax*
|
||||
|
||||
Two syntax highlighting files exists for Euphoria. One for Euphoria
|
||||
version 3.1.1, which is the default syntax highlighting file, and one for
|
||||
Two syntax highlighting files exists for Euphoria. One for Euphoria
|
||||
version 3.1.1, which is the default syntax highlighting file, and one for
|
||||
Euphoria version 4.0.5 or later.
|
||||
|
||||
Euphoria version 3.1.1 (http://www.rapideuphoria.com/) is still necessary
|
||||
for developing applications for the DOS platform, which Euphoria version 4
|
||||
Euphoria version 3.1.1 (http://www.rapideuphoria.com/) is still necessary
|
||||
for developing applications for the DOS platform, which Euphoria version 4
|
||||
(http://www.openeuphoria.org/) does not support.
|
||||
|
||||
The following file extensions are auto-detected as Euphoria file type:
|
||||
|
||||
The following file extensions are auto-detected as Euphoria file type:
|
||||
|
||||
*.e, *.eu, *.ew, *.ex, *.exu, *.exw
|
||||
*.E, *.EU, *.EW, *.EX, *.EXU, *.EXW
|
||||
|
||||
To select syntax highlighting file for Euphoria, as well as for
|
||||
To select syntax highlighting file for Euphoria, as well as for
|
||||
auto-detecting the *.e and *.E file extensions as Euphoria file type,
|
||||
add the following line to your startup file: >
|
||||
|
||||
:let filetype_euphoria="euphoria3"
|
||||
|
||||
or
|
||||
or
|
||||
|
||||
:let filetype_euphoria="euphoria4"
|
||||
|
||||
@@ -1746,7 +1798,7 @@ There are several html preprocessor languages out there. html.vim has been
|
||||
written such that it should be trivial to include it. To do so add the
|
||||
following two lines to the syntax coloring file for that language
|
||||
(the example comes from the asp.vim file):
|
||||
|
||||
>
|
||||
runtime! syntax/html.vim
|
||||
syn cluster htmlPreproc add=asp
|
||||
|
||||
@@ -1923,6 +1975,16 @@ displayed line. The default value is 10. The disadvantage of using a larger
|
||||
number is that redrawing can become slow.
|
||||
|
||||
|
||||
JSON *json.vim* *ft-json-syntax*
|
||||
|
||||
The json syntax file provides syntax highlighting with conceal support by
|
||||
default. To disable concealment: >
|
||||
let g:vim_json_conceal = 0
|
||||
|
||||
To disable syntax highlighting of errors: >
|
||||
let g:vim_json_warnings = 0
|
||||
|
||||
|
||||
LACE *lace.vim* *ft-lace-syntax*
|
||||
|
||||
Lace (Language for Assembly of Classes in Eiffel) is case insensitive, but the
|
||||
@@ -2623,7 +2685,6 @@ preceding last option and unsetting all other ones): >
|
||||
Note: only existence of these options matter, not their value. You can replace
|
||||
1 above with anything.
|
||||
|
||||
|
||||
QUAKE *quake.vim* *ft-quake-syntax*
|
||||
|
||||
The Quake syntax definition should work for most any FPS (First Person
|
||||
@@ -2712,10 +2773,10 @@ To set a user-defined list of code block syntax highlighting: >
|
||||
To assign multiple code block types to a single syntax, define
|
||||
`rst_syntax_code_list` as a mapping: >
|
||||
let rst_syntax_code_list = {
|
||||
\ 'cpp' = ['cpp', 'c++'],
|
||||
\ 'bash' = ['bash', 'sh'],
|
||||
\ 'cpp': ['cpp', 'c++'],
|
||||
\ 'bash': ['bash', 'sh'],
|
||||
...
|
||||
}
|
||||
\ }
|
||||
|
||||
To use color highlighting for emphasis text: >
|
||||
let rst_use_emphasis_colors = 1
|
||||
@@ -3476,26 +3537,26 @@ It will look much better with a font in a quadratic cell size, e.g. for X: >
|
||||
YAML *yaml.vim* *ft-yaml-syntax*
|
||||
|
||||
*g:yaml_schema* *b:yaml_schema*
|
||||
A YAML schema is a combination of a set of tags and a mechanism for resolving
|
||||
non-specific tags. For user this means that YAML parser may, depending on
|
||||
plain scalar contents, treat plain scalar (which can actually be only string
|
||||
and nothing else) as a value of the other type: null, boolean, floating-point,
|
||||
integer. `g:yaml_schema` option determines according to which schema values
|
||||
A YAML schema is a combination of a set of tags and a mechanism for resolving
|
||||
non-specific tags. For user this means that YAML parser may, depending on
|
||||
plain scalar contents, treat plain scalar (which can actually be only string
|
||||
and nothing else) as a value of the other type: null, boolean, floating-point,
|
||||
integer. `g:yaml_schema` option determines according to which schema values
|
||||
will be highlighted specially. Supported schemas are
|
||||
|
||||
Schema Description ~
|
||||
failsafe No additional highlighting.
|
||||
json Supports JSON-style numbers, booleans and null.
|
||||
core Supports more number, boolean and null styles.
|
||||
pyyaml In addition to core schema supports highlighting timestamps,
|
||||
but there are some differences in what is recognized as
|
||||
numbers and many additional boolean values not present in core
|
||||
pyyaml In addition to core schema supports highlighting timestamps,
|
||||
but there are some differences in what is recognized as
|
||||
numbers and many additional boolean values not present in core
|
||||
schema.
|
||||
|
||||
Default schema is `core`.
|
||||
|
||||
Note that schemas are not actually limited to plain scalars, but this is the
|
||||
only difference between schemas defined in YAML specification and the only
|
||||
Note that schemas are not actually limited to plain scalars, but this is the
|
||||
only difference between schemas defined in YAML specification and the only
|
||||
difference defined in the syntax file.
|
||||
|
||||
|
||||
@@ -3597,7 +3658,7 @@ SYNTAX ISKEYWORD SETTING *:syn-iskeyword*
|
||||
|
||||
clear: Syntax specific iskeyword setting is disabled and the
|
||||
buffer-local 'iskeyword' setting is used.
|
||||
{option} Set the syntax 'iskeyword' option to a new value.
|
||||
{option} Set the syntax 'iskeyword' option to a new value.
|
||||
|
||||
Example: >
|
||||
:syntax iskeyword @,48-57,192-255,$,_
|
||||
@@ -5042,8 +5103,15 @@ IncSearch 'incsearch' highlighting; also used for the text replaced with
|
||||
*hl-LineNr*
|
||||
LineNr Line number for ":number" and ":#" commands, and when 'number'
|
||||
or 'relativenumber' option is set.
|
||||
*hl-LineNrAbove*
|
||||
LineNrAbove Line number for when the 'relativenumber'
|
||||
option is set, above the cursor line.
|
||||
*hl-LineNrBelow*
|
||||
LineNrBelow Line number for when the 'relativenumber'
|
||||
option is set, below the cursor line.
|
||||
*hl-CursorLineNr*
|
||||
CursorLineNr Like LineNr when 'cursorline' or 'relativenumber' is set for
|
||||
CursorLineNr Like LineNr when 'cursorline' is set and 'cursorlineopt' is
|
||||
set to "number" or "both", or 'relativenumber' is set, for
|
||||
the cursor line.
|
||||
*hl-MatchParen*
|
||||
MatchParen The character under the cursor or just before it, if it
|
||||
|
||||
285
runtime/doc/tags
285
runtime/doc/tags
@@ -1,6 +1,7 @@
|
||||
! change.txt /*!*
|
||||
!! change.txt /*!!*
|
||||
# pattern.txt /*#*
|
||||
#{} eval.txt /*#{}*
|
||||
$ motion.txt /*$*
|
||||
$HOME options.txt /*$HOME*
|
||||
$HOME-use version5.txt /*$HOME-use*
|
||||
@@ -149,6 +150,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'complete' options.txt /*'complete'*
|
||||
'completefunc' options.txt /*'completefunc'*
|
||||
'completeopt' options.txt /*'completeopt'*
|
||||
'completepopup' options.txt /*'completepopup'*
|
||||
'completeslash' options.txt /*'completeslash'*
|
||||
'concealcursor' options.txt /*'concealcursor'*
|
||||
'conceallevel' options.txt /*'conceallevel'*
|
||||
'confirm' options.txt /*'confirm'*
|
||||
@@ -159,6 +162,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'cp' options.txt /*'cp'*
|
||||
'cpo' options.txt /*'cpo'*
|
||||
'cpoptions' options.txt /*'cpoptions'*
|
||||
'cpp' options.txt /*'cpp'*
|
||||
'cpt' options.txt /*'cpt'*
|
||||
'crb' options.txt /*'crb'*
|
||||
'cryptmethod' options.txt /*'cryptmethod'*
|
||||
@@ -169,6 +173,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'cscopetag' options.txt /*'cscopetag'*
|
||||
'cscopetagorder' options.txt /*'cscopetagorder'*
|
||||
'cscopeverbose' options.txt /*'cscopeverbose'*
|
||||
'csl' options.txt /*'csl'*
|
||||
'cspc' options.txt /*'cspc'*
|
||||
'csprg' options.txt /*'csprg'*
|
||||
'csqf' options.txt /*'csqf'*
|
||||
@@ -178,9 +183,11 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'csverb' options.txt /*'csverb'*
|
||||
'cuc' options.txt /*'cuc'*
|
||||
'cul' options.txt /*'cul'*
|
||||
'culopt' options.txt /*'culopt'*
|
||||
'cursorbind' options.txt /*'cursorbind'*
|
||||
'cursorcolumn' options.txt /*'cursorcolumn'*
|
||||
'cursorline' options.txt /*'cursorline'*
|
||||
'cursorlineopt' options.txt /*'cursorlineopt'*
|
||||
'cwh' options.txt /*'cwh'*
|
||||
'debug' options.txt /*'debug'*
|
||||
'deco' options.txt /*'deco'*
|
||||
@@ -305,6 +312,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'go-a' options.txt /*'go-a'*
|
||||
'go-b' options.txt /*'go-b'*
|
||||
'go-c' options.txt /*'go-c'*
|
||||
'go-d' options.txt /*'go-d'*
|
||||
'go-e' options.txt /*'go-e'*
|
||||
'go-f' options.txt /*'go-f'*
|
||||
'go-g' options.txt /*'go-g'*
|
||||
@@ -655,7 +663,9 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'nosb' options.txt /*'nosb'*
|
||||
'nosc' options.txt /*'nosc'*
|
||||
'noscb' options.txt /*'noscb'*
|
||||
'noscf' options.txt /*'noscf'*
|
||||
'noscrollbind' options.txt /*'noscrollbind'*
|
||||
'noscrollfocus' options.txt /*'noscrollfocus'*
|
||||
'noscs' options.txt /*'noscs'*
|
||||
'nosecure' options.txt /*'nosecure'*
|
||||
'nosft' options.txt /*'nosft'*
|
||||
@@ -775,6 +785,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'pp' options.txt /*'pp'*
|
||||
'preserveindent' options.txt /*'preserveindent'*
|
||||
'previewheight' options.txt /*'previewheight'*
|
||||
'previewpopup' options.txt /*'previewpopup'*
|
||||
'previewwindow' options.txt /*'previewwindow'*
|
||||
'printdevice' options.txt /*'printdevice'*
|
||||
'printencoding' options.txt /*'printencoding'*
|
||||
@@ -789,6 +800,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'pumheight' options.txt /*'pumheight'*
|
||||
'pumwidth' options.txt /*'pumwidth'*
|
||||
'pvh' options.txt /*'pvh'*
|
||||
'pvp' options.txt /*'pvp'*
|
||||
'pvw' options.txt /*'pvw'*
|
||||
'pw' options.txt /*'pw'*
|
||||
'pythondll' options.txt /*'pythondll'*
|
||||
@@ -833,10 +845,12 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'sbr' options.txt /*'sbr'*
|
||||
'sc' options.txt /*'sc'*
|
||||
'scb' options.txt /*'scb'*
|
||||
'scf' options.txt /*'scf'*
|
||||
'scl' options.txt /*'scl'*
|
||||
'scr' options.txt /*'scr'*
|
||||
'scroll' options.txt /*'scroll'*
|
||||
'scrollbind' options.txt /*'scrollbind'*
|
||||
'scrollfocus' options.txt /*'scrollfocus'*
|
||||
'scrolljump' options.txt /*'scrolljump'*
|
||||
'scrolloff' options.txt /*'scrolloff'*
|
||||
'scrollopt' options.txt /*'scrollopt'*
|
||||
@@ -1006,6 +1020,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
't_Sb' term.txt /*'t_Sb'*
|
||||
't_Sf' term.txt /*'t_Sf'*
|
||||
't_Si' term.txt /*'t_Si'*
|
||||
't_TE' term.txt /*'t_TE'*
|
||||
't_TI' term.txt /*'t_TI'*
|
||||
't_Te' term.txt /*'t_Te'*
|
||||
't_Ts' term.txt /*'t_Ts'*
|
||||
't_VS' term.txt /*'t_VS'*
|
||||
@@ -1262,6 +1278,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
+cindent various.txt /*+cindent*
|
||||
+clientserver various.txt /*+clientserver*
|
||||
+clipboard various.txt /*+clipboard*
|
||||
+clipboard_working various.txt /*+clipboard_working*
|
||||
+cmd editing.txt /*+cmd*
|
||||
+cmdline_compl various.txt /*+cmdline_compl*
|
||||
+cmdline_hist various.txt /*+cmdline_hist*
|
||||
@@ -1336,6 +1353,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
+perl various.txt /*+perl*
|
||||
+perl/dyn various.txt /*+perl\/dyn*
|
||||
+persistent_undo various.txt /*+persistent_undo*
|
||||
+popupwin various.txt /*+popupwin*
|
||||
+postscript various.txt /*+postscript*
|
||||
+printer various.txt /*+printer*
|
||||
+profile various.txt /*+profile*
|
||||
@@ -1430,6 +1448,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
--ttyfail starting.txt /*--ttyfail*
|
||||
--version starting.txt /*--version*
|
||||
--windowid starting.txt /*--windowid*
|
||||
-> eval.txt /*->*
|
||||
-? starting.txt /*-?*
|
||||
-A starting.txt /*-A*
|
||||
-C starting.txt /*-C*
|
||||
@@ -2378,6 +2397,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:ene! editing.txt /*:ene!*
|
||||
:enew editing.txt /*:enew*
|
||||
:enew! editing.txt /*:enew!*
|
||||
:eval eval.txt /*:eval*
|
||||
:ex editing.txt /*:ex*
|
||||
:exe eval.txt /*:exe*
|
||||
:exe-comment eval.txt /*:exe-comment*
|
||||
@@ -3088,6 +3108,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:spelli spell.txt /*:spelli*
|
||||
:spellinfo spell.txt /*:spellinfo*
|
||||
:spellr spell.txt /*:spellr*
|
||||
:spellra spell.txt /*:spellra*
|
||||
:spellrare spell.txt /*:spellrare*
|
||||
:spellrepall spell.txt /*:spellrepall*
|
||||
:spellu spell.txt /*:spellu*
|
||||
:spellundo spell.txt /*:spellundo*
|
||||
@@ -3876,7 +3898,6 @@ E136 starting.txt /*E136*
|
||||
E137 starting.txt /*E137*
|
||||
E138 starting.txt /*E138*
|
||||
E139 message.txt /*E139*
|
||||
E14 cmdline.txt /*E14*
|
||||
E140 message.txt /*E140*
|
||||
E141 message.txt /*E141*
|
||||
E142 message.txt /*E142*
|
||||
@@ -3912,6 +3933,7 @@ E169 message.txt /*E169*
|
||||
E17 message.txt /*E17*
|
||||
E170 eval.txt /*E170*
|
||||
E171 eval.txt /*E171*
|
||||
E172 eval.txt /*E172*
|
||||
E173 message.txt /*E173*
|
||||
E174 map.txt /*E174*
|
||||
E175 map.txt /*E175*
|
||||
@@ -3965,6 +3987,7 @@ E218 autocmd.txt /*E218*
|
||||
E219 message.txt /*E219*
|
||||
E22 message.txt /*E22*
|
||||
E220 message.txt /*E220*
|
||||
E221 eval.txt /*E221*
|
||||
E222 message.txt /*E222*
|
||||
E223 options.txt /*E223*
|
||||
E224 map.txt /*E224*
|
||||
@@ -3987,12 +4010,14 @@ E239 sign.txt /*E239*
|
||||
E24 message.txt /*E24*
|
||||
E240 remote.txt /*E240*
|
||||
E241 eval.txt /*E241*
|
||||
E242 windows.txt /*E242*
|
||||
E243 if_ole.txt /*E243*
|
||||
E244 gui.txt /*E244*
|
||||
E245 gui.txt /*E245*
|
||||
E246 autocmd.txt /*E246*
|
||||
E247 remote.txt /*E247*
|
||||
E248 remote.txt /*E248*
|
||||
E249 windows.txt /*E249*
|
||||
E25 message.txt /*E25*
|
||||
E250 options.txt /*E250*
|
||||
E251 remote.txt /*E251*
|
||||
@@ -4019,7 +4044,12 @@ E270 if_ruby.txt /*E270*
|
||||
E271 if_ruby.txt /*E271*
|
||||
E272 if_ruby.txt /*E272*
|
||||
E273 if_ruby.txt /*E273*
|
||||
E274 eval.txt /*E274*
|
||||
E275 textprop.txt /*E275*
|
||||
E276 eval.txt /*E276*
|
||||
E277 remote.txt /*E277*
|
||||
E278 popup.txt /*E278*
|
||||
E279 terminal.txt /*E279*
|
||||
E28 syntax.txt /*E28*
|
||||
E280 if_tcl.txt /*E280*
|
||||
E282 starting.txt /*E282*
|
||||
@@ -4681,12 +4711,12 @@ E909 eval.txt /*E909*
|
||||
E91 options.txt /*E91*
|
||||
E910 eval.txt /*E910*
|
||||
E911 eval.txt /*E911*
|
||||
E912 eval.txt /*E912*
|
||||
E912 channel.txt /*E912*
|
||||
E913 eval.txt /*E913*
|
||||
E914 eval.txt /*E914*
|
||||
E915 channel.txt /*E915*
|
||||
E916 eval.txt /*E916*
|
||||
E917 eval.txt /*E917*
|
||||
E916 channel.txt /*E916*
|
||||
E917 channel.txt /*E917*
|
||||
E918 channel.txt /*E918*
|
||||
E919 repeat.txt /*E919*
|
||||
E92 message.txt /*E92*
|
||||
@@ -4732,19 +4762,20 @@ E955 terminal.txt /*E955*
|
||||
E956 pattern.txt /*E956*
|
||||
E957 eval.txt /*E957*
|
||||
E958 terminal.txt /*E958*
|
||||
E959 diff.txt /*E959*
|
||||
E96 diff.txt /*E96*
|
||||
E960 options.txt /*E960*
|
||||
E961 cmdline.txt /*E961*
|
||||
E962 eval.txt /*E962*
|
||||
E963 eval.txt /*E963*
|
||||
E964 eval.txt /*E964*
|
||||
E965 eval.txt /*E965*
|
||||
E966 eval.txt /*E966*
|
||||
E964 textprop.txt /*E964*
|
||||
E965 textprop.txt /*E965*
|
||||
E966 textprop.txt /*E966*
|
||||
E967 textprop.txt /*E967*
|
||||
E968 eval.txt /*E968*
|
||||
E969 eval.txt /*E969*
|
||||
E968 textprop.txt /*E968*
|
||||
E969 textprop.txt /*E969*
|
||||
E97 diff.txt /*E97*
|
||||
E970 eval.txt /*E970*
|
||||
E970 textprop.txt /*E970*
|
||||
E971 textprop.txt /*E971*
|
||||
E972 eval.txt /*E972*
|
||||
E973 eval.txt /*E973*
|
||||
@@ -4836,6 +4867,7 @@ InsertChange autocmd.txt /*InsertChange*
|
||||
InsertCharPre autocmd.txt /*InsertCharPre*
|
||||
InsertEnter autocmd.txt /*InsertEnter*
|
||||
InsertLeave autocmd.txt /*InsertLeave*
|
||||
Integer eval.txt /*Integer*
|
||||
J change.txt /*J*
|
||||
Japanese mbyte.txt /*Japanese*
|
||||
Job eval.txt /*Job*
|
||||
@@ -4906,6 +4938,8 @@ P change.txt /*P*
|
||||
PATHEXT eval.txt /*PATHEXT*
|
||||
PEP8 filetype.txt /*PEP8*
|
||||
PHP_BracesAtCodeLevel indent.txt /*PHP_BracesAtCodeLevel*
|
||||
PHP_IndentFunctionCallParameters indent.txt /*PHP_IndentFunctionCallParameters*
|
||||
PHP_IndentFunctionDeclarationParameters indent.txt /*PHP_IndentFunctionDeclarationParameters*
|
||||
PHP_autoformatcomment indent.txt /*PHP_autoformatcomment*
|
||||
PHP_default_indenting indent.txt /*PHP_default_indenting*
|
||||
PHP_noArrowMatching indent.txt /*PHP_noArrowMatching*
|
||||
@@ -4980,6 +5014,8 @@ S change.txt /*S*
|
||||
SHELL starting.txt /*SHELL*
|
||||
SQLGetType ft_sql.txt /*SQLGetType*
|
||||
SQLSetType ft_sql.txt /*SQLSetType*
|
||||
SafeState autocmd.txt /*SafeState*
|
||||
SafeStateAgain autocmd.txt /*SafeStateAgain*
|
||||
Select visual.txt /*Select*
|
||||
Select-mode visual.txt /*Select-mode*
|
||||
Select-mode-mapping visual.txt /*Select-mode-mapping*
|
||||
@@ -5004,6 +5040,7 @@ TERM starting.txt /*TERM*
|
||||
TOhtml-encoding syntax.txt /*TOhtml-encoding*
|
||||
TOhtml-encoding-detect syntax.txt /*TOhtml-encoding-detect*
|
||||
TOhtml-performance syntax.txt /*TOhtml-performance*
|
||||
TOhtml-progress-color syntax.txt /*TOhtml-progress-color*
|
||||
TOhtml-uncopyable-text syntax.txt /*TOhtml-uncopyable-text*
|
||||
TOhtml-wrap-text syntax.txt /*TOhtml-wrap-text*
|
||||
TRUE eval.txt /*TRUE*
|
||||
@@ -5021,6 +5058,7 @@ Terminal-Job terminal.txt /*Terminal-Job*
|
||||
Terminal-Normal terminal.txt /*Terminal-Normal*
|
||||
Terminal-mode terminal.txt /*Terminal-mode*
|
||||
TerminalOpen autocmd.txt /*TerminalOpen*
|
||||
TerminalWinOpen autocmd.txt /*TerminalWinOpen*
|
||||
TextChanged autocmd.txt /*TextChanged*
|
||||
TextChangedI autocmd.txt /*TextChangedI*
|
||||
TextChangedP autocmd.txt /*TextChangedP*
|
||||
@@ -5249,6 +5287,7 @@ added-7.2 version7.txt /*added-7.2*
|
||||
added-7.3 version7.txt /*added-7.3*
|
||||
added-7.4 version7.txt /*added-7.4*
|
||||
added-8.1 version8.txt /*added-8.1*
|
||||
added-8.2 version8.txt /*added-8.2*
|
||||
added-BeOS version5.txt /*added-BeOS*
|
||||
added-Mac version5.txt /*added-Mac*
|
||||
added-VMS version5.txt /*added-VMS*
|
||||
@@ -5284,24 +5323,26 @@ arglist-quit usr_07.txt /*arglist-quit*
|
||||
arglistid() eval.txt /*arglistid()*
|
||||
argument-list editing.txt /*argument-list*
|
||||
argv() eval.txt /*argv()*
|
||||
argv-variable eval.txt /*argv-variable*
|
||||
as motion.txt /*as*
|
||||
asin() eval.txt /*asin()*
|
||||
asm.vim syntax.txt /*asm.vim*
|
||||
asm68k syntax.txt /*asm68k*
|
||||
asmh8300.vim syntax.txt /*asmh8300.vim*
|
||||
assert-functions-details testing.txt /*assert-functions-details*
|
||||
assert-return eval.txt /*assert-return*
|
||||
assert_beeps() eval.txt /*assert_beeps()*
|
||||
assert_equal() eval.txt /*assert_equal()*
|
||||
assert_equalfile() eval.txt /*assert_equalfile()*
|
||||
assert_exception() eval.txt /*assert_exception()*
|
||||
assert_fails() eval.txt /*assert_fails()*
|
||||
assert_false() eval.txt /*assert_false()*
|
||||
assert_inrange() eval.txt /*assert_inrange()*
|
||||
assert_match() eval.txt /*assert_match()*
|
||||
assert_notequal() eval.txt /*assert_notequal()*
|
||||
assert_notmatch() eval.txt /*assert_notmatch()*
|
||||
assert_report() eval.txt /*assert_report()*
|
||||
assert_true() eval.txt /*assert_true()*
|
||||
assert_beeps() testing.txt /*assert_beeps()*
|
||||
assert_equal() testing.txt /*assert_equal()*
|
||||
assert_equalfile() testing.txt /*assert_equalfile()*
|
||||
assert_exception() testing.txt /*assert_exception()*
|
||||
assert_fails() testing.txt /*assert_fails()*
|
||||
assert_false() testing.txt /*assert_false()*
|
||||
assert_inrange() testing.txt /*assert_inrange()*
|
||||
assert_match() testing.txt /*assert_match()*
|
||||
assert_notequal() testing.txt /*assert_notequal()*
|
||||
assert_notmatch() testing.txt /*assert_notmatch()*
|
||||
assert_report() testing.txt /*assert_report()*
|
||||
assert_true() testing.txt /*assert_true()*
|
||||
at motion.txt /*at*
|
||||
atan() eval.txt /*atan()*
|
||||
atan2() eval.txt /*atan2()*
|
||||
@@ -5519,6 +5560,8 @@ c_CTRL-R_CTRL-O cmdline.txt /*c_CTRL-R_CTRL-O*
|
||||
c_CTRL-R_CTRL-P cmdline.txt /*c_CTRL-R_CTRL-P*
|
||||
c_CTRL-R_CTRL-R cmdline.txt /*c_CTRL-R_CTRL-R*
|
||||
c_CTRL-R_CTRL-W cmdline.txt /*c_CTRL-R_CTRL-W*
|
||||
c_CTRL-SHIFT-Q cmdline.txt /*c_CTRL-SHIFT-Q*
|
||||
c_CTRL-SHIFT-V cmdline.txt /*c_CTRL-SHIFT-V*
|
||||
c_CTRL-T cmdline.txt /*c_CTRL-T*
|
||||
c_CTRL-U cmdline.txt /*c_CTRL-U*
|
||||
c_CTRL-V cmdline.txt /*c_CTRL-V*
|
||||
@@ -5572,24 +5615,24 @@ cc change.txt /*cc*
|
||||
ceil() eval.txt /*ceil()*
|
||||
cfilter-plugin quickfix.txt /*cfilter-plugin*
|
||||
ch.vim syntax.txt /*ch.vim*
|
||||
ch_canread() eval.txt /*ch_canread()*
|
||||
ch_close() eval.txt /*ch_close()*
|
||||
ch_close_in() eval.txt /*ch_close_in()*
|
||||
ch_evalexpr() eval.txt /*ch_evalexpr()*
|
||||
ch_evalraw() eval.txt /*ch_evalraw()*
|
||||
ch_getbufnr() eval.txt /*ch_getbufnr()*
|
||||
ch_getjob() eval.txt /*ch_getjob()*
|
||||
ch_info() eval.txt /*ch_info()*
|
||||
ch_log() eval.txt /*ch_log()*
|
||||
ch_logfile() eval.txt /*ch_logfile()*
|
||||
ch_open() eval.txt /*ch_open()*
|
||||
ch_read() eval.txt /*ch_read()*
|
||||
ch_readblob() eval.txt /*ch_readblob()*
|
||||
ch_readraw() eval.txt /*ch_readraw()*
|
||||
ch_sendexpr() eval.txt /*ch_sendexpr()*
|
||||
ch_sendraw() eval.txt /*ch_sendraw()*
|
||||
ch_setoptions() eval.txt /*ch_setoptions()*
|
||||
ch_status() eval.txt /*ch_status()*
|
||||
ch_canread() channel.txt /*ch_canread()*
|
||||
ch_close() channel.txt /*ch_close()*
|
||||
ch_close_in() channel.txt /*ch_close_in()*
|
||||
ch_evalexpr() channel.txt /*ch_evalexpr()*
|
||||
ch_evalraw() channel.txt /*ch_evalraw()*
|
||||
ch_getbufnr() channel.txt /*ch_getbufnr()*
|
||||
ch_getjob() channel.txt /*ch_getjob()*
|
||||
ch_info() channel.txt /*ch_info()*
|
||||
ch_log() channel.txt /*ch_log()*
|
||||
ch_logfile() channel.txt /*ch_logfile()*
|
||||
ch_open() channel.txt /*ch_open()*
|
||||
ch_read() channel.txt /*ch_read()*
|
||||
ch_readblob() channel.txt /*ch_readblob()*
|
||||
ch_readraw() channel.txt /*ch_readraw()*
|
||||
ch_sendexpr() channel.txt /*ch_sendexpr()*
|
||||
ch_sendraw() channel.txt /*ch_sendraw()*
|
||||
ch_setoptions() channel.txt /*ch_setoptions()*
|
||||
ch_status() channel.txt /*ch_status()*
|
||||
change-list-jumps motion.txt /*change-list-jumps*
|
||||
change-name tips.txt /*change-name*
|
||||
change-tabs change.txt /*change-tabs*
|
||||
@@ -5611,6 +5654,7 @@ changed-7.2 version7.txt /*changed-7.2*
|
||||
changed-7.3 version7.txt /*changed-7.3*
|
||||
changed-7.4 version7.txt /*changed-7.4*
|
||||
changed-8.1 version8.txt /*changed-8.1*
|
||||
changed-8.2 version8.txt /*changed-8.2*
|
||||
changelist motion.txt /*changelist*
|
||||
changelog.vim syntax.txt /*changelog.vim*
|
||||
changenr() eval.txt /*changenr()*
|
||||
@@ -5624,6 +5668,7 @@ channel-commands channel.txt /*channel-commands*
|
||||
channel-demo channel.txt /*channel-demo*
|
||||
channel-drop channel.txt /*channel-drop*
|
||||
channel-functions usr_41.txt /*channel-functions*
|
||||
channel-functions-details channel.txt /*channel-functions-details*
|
||||
channel-mode channel.txt /*channel-mode*
|
||||
channel-more channel.txt /*channel-more*
|
||||
channel-noblock channel.txt /*channel-noblock*
|
||||
@@ -5759,7 +5804,10 @@ compl-vim insert.txt /*compl-vim*
|
||||
compl-whole-line insert.txt /*compl-whole-line*
|
||||
complete() eval.txt /*complete()*
|
||||
complete-functions insert.txt /*complete-functions*
|
||||
complete-item-kind insert.txt /*complete-item-kind*
|
||||
complete-items insert.txt /*complete-items*
|
||||
complete-popup insert.txt /*complete-popup*
|
||||
complete-popuphidden insert.txt /*complete-popuphidden*
|
||||
complete_CTRL-E insert.txt /*complete_CTRL-E*
|
||||
complete_CTRL-Y insert.txt /*complete_CTRL-Y*
|
||||
complete_add() eval.txt /*complete_add()*
|
||||
@@ -5919,6 +5967,7 @@ daB motion.txt /*daB*
|
||||
daW motion.txt /*daW*
|
||||
dab motion.txt /*dab*
|
||||
dap motion.txt /*dap*
|
||||
dart.vim syntax.txt /*dart.vim*
|
||||
das motion.txt /*das*
|
||||
date-functions usr_41.txt /*date-functions*
|
||||
dav pi_netrw.txt /*dav*
|
||||
@@ -6048,6 +6097,7 @@ dtd2vim insert.txt /*dtd2vim*
|
||||
dying-variable eval.txt /*dying-variable*
|
||||
e motion.txt /*e*
|
||||
easy starting.txt /*easy*
|
||||
echospace-variable eval.txt /*echospace-variable*
|
||||
edit-a-file editing.txt /*edit-a-file*
|
||||
edit-binary editing.txt /*edit-binary*
|
||||
edit-dialogs editing.txt /*edit-dialogs*
|
||||
@@ -6369,6 +6419,7 @@ ft-csh-syntax syntax.txt /*ft-csh-syntax*
|
||||
ft-css-omni insert.txt /*ft-css-omni*
|
||||
ft-cweb-syntax syntax.txt /*ft-cweb-syntax*
|
||||
ft-cynlib-syntax syntax.txt /*ft-cynlib-syntax*
|
||||
ft-dart-syntax syntax.txt /*ft-dart-syntax*
|
||||
ft-dash-syntax syntax.txt /*ft-dash-syntax*
|
||||
ft-desktop-syntax syntax.txt /*ft-desktop-syntax*
|
||||
ft-dircolors-syntax syntax.txt /*ft-dircolors-syntax*
|
||||
@@ -6398,6 +6449,7 @@ ft-ia64-syntax syntax.txt /*ft-ia64-syntax*
|
||||
ft-inform-syntax syntax.txt /*ft-inform-syntax*
|
||||
ft-java-syntax syntax.txt /*ft-java-syntax*
|
||||
ft-javascript-omni insert.txt /*ft-javascript-omni*
|
||||
ft-json-syntax syntax.txt /*ft-json-syntax*
|
||||
ft-ksh-syntax syntax.txt /*ft-ksh-syntax*
|
||||
ft-lace-syntax syntax.txt /*ft-lace-syntax*
|
||||
ft-lex-syntax syntax.txt /*ft-lex-syntax*
|
||||
@@ -6413,6 +6465,7 @@ ft-man-plugin filetype.txt /*ft-man-plugin*
|
||||
ft-maple-syntax syntax.txt /*ft-maple-syntax*
|
||||
ft-masm-syntax syntax.txt /*ft-masm-syntax*
|
||||
ft-mathematica-syntax syntax.txt /*ft-mathematica-syntax*
|
||||
ft-matlab-indent indent.txt /*ft-matlab-indent*
|
||||
ft-mma-syntax syntax.txt /*ft-mma-syntax*
|
||||
ft-moo-syntax syntax.txt /*ft-moo-syntax*
|
||||
ft-msql-syntax syntax.txt /*ft-msql-syntax*
|
||||
@@ -6440,6 +6493,7 @@ ft-ptcap-syntax syntax.txt /*ft-ptcap-syntax*
|
||||
ft-python-indent indent.txt /*ft-python-indent*
|
||||
ft-python-plugin filetype.txt /*ft-python-plugin*
|
||||
ft-python-syntax syntax.txt /*ft-python-syntax*
|
||||
ft-qf-plugin filetype.txt /*ft-qf-plugin*
|
||||
ft-quake-syntax syntax.txt /*ft-quake-syntax*
|
||||
ft-r-indent indent.txt /*ft-r-indent*
|
||||
ft-r-syntax syntax.txt /*ft-r-syntax*
|
||||
@@ -6602,6 +6656,7 @@ g:html_prevent_copy syntax.txt /*g:html_prevent_copy*
|
||||
g:html_start_line syntax.txt /*g:html_start_line*
|
||||
g:html_use_css syntax.txt /*g:html_use_css*
|
||||
g:html_use_encoding syntax.txt /*g:html_use_encoding*
|
||||
g:html_use_input_for_pc syntax.txt /*g:html_use_input_for_pc*
|
||||
g:html_use_xhtml syntax.txt /*g:html_use_xhtml*
|
||||
g:html_whole_filler syntax.txt /*g:html_whole_filler*
|
||||
g:netrw_altfile pi_netrw.txt /*g:netrw_altfile*
|
||||
@@ -6774,6 +6829,7 @@ gF editing.txt /*gF*
|
||||
gH visual.txt /*gH*
|
||||
gI insert.txt /*gI*
|
||||
gJ change.txt /*gJ*
|
||||
gM motion.txt /*gM*
|
||||
gN visual.txt /*gN*
|
||||
gP change.txt /*gP*
|
||||
gQ intro.txt /*gQ*
|
||||
@@ -6820,11 +6876,13 @@ getfperm() eval.txt /*getfperm()*
|
||||
getfsize() eval.txt /*getfsize()*
|
||||
getftime() eval.txt /*getftime()*
|
||||
getftype() eval.txt /*getftype()*
|
||||
getimstatus() eval.txt /*getimstatus()*
|
||||
getjumplist() eval.txt /*getjumplist()*
|
||||
getlatestvimscripts-install pi_getscript.txt /*getlatestvimscripts-install*
|
||||
getline() eval.txt /*getline()*
|
||||
getloclist() eval.txt /*getloclist()*
|
||||
getmatches() eval.txt /*getmatches()*
|
||||
getmousepos() eval.txt /*getmousepos()*
|
||||
getpid() eval.txt /*getpid()*
|
||||
getpos() eval.txt /*getpos()*
|
||||
getqflist() eval.txt /*getqflist()*
|
||||
@@ -7058,6 +7116,8 @@ hl-Folded syntax.txt /*hl-Folded*
|
||||
hl-Ignore syntax.txt /*hl-Ignore*
|
||||
hl-IncSearch syntax.txt /*hl-IncSearch*
|
||||
hl-LineNr syntax.txt /*hl-LineNr*
|
||||
hl-LineNrAbove syntax.txt /*hl-LineNrAbove*
|
||||
hl-LineNrBelow syntax.txt /*hl-LineNrBelow*
|
||||
hl-MatchParen syntax.txt /*hl-MatchParen*
|
||||
hl-Menu syntax.txt /*hl-Menu*
|
||||
hl-ModeMsg syntax.txt /*hl-ModeMsg*
|
||||
@@ -7082,6 +7142,7 @@ hl-StatusLine syntax.txt /*hl-StatusLine*
|
||||
hl-StatusLineNC syntax.txt /*hl-StatusLineNC*
|
||||
hl-StatusLineTerm syntax.txt /*hl-StatusLineTerm*
|
||||
hl-StatusLineTermNC syntax.txt /*hl-StatusLineTermNC*
|
||||
hl-TOhtmlProgress syntax.txt /*hl-TOhtmlProgress*
|
||||
hl-TabLine syntax.txt /*hl-TabLine*
|
||||
hl-TabLineFill syntax.txt /*hl-TabLineFill*
|
||||
hl-TabLineSel syntax.txt /*hl-TabLineSel*
|
||||
@@ -7199,6 +7260,7 @@ i_CTRL-R_= insert.txt /*i_CTRL-R_=*
|
||||
i_CTRL-R_CTRL-O insert.txt /*i_CTRL-R_CTRL-O*
|
||||
i_CTRL-R_CTRL-P insert.txt /*i_CTRL-R_CTRL-P*
|
||||
i_CTRL-R_CTRL-R insert.txt /*i_CTRL-R_CTRL-R*
|
||||
i_CTRL-SHIFT-V insert.txt /*i_CTRL-SHIFT-V*
|
||||
i_CTRL-T insert.txt /*i_CTRL-T*
|
||||
i_CTRL-U insert.txt /*i_CTRL-U*
|
||||
i_CTRL-V insert.txt /*i_CTRL-V*
|
||||
@@ -7260,6 +7322,7 @@ if_ruby.txt if_ruby.txt /*if_ruby.txt*
|
||||
if_sniff.txt if_sniff.txt /*if_sniff.txt*
|
||||
if_tcl.txt if_tcl.txt /*if_tcl.txt*
|
||||
ignore-errors eval.txt /*ignore-errors*
|
||||
ignore-timestamp editing.txt /*ignore-timestamp*
|
||||
improved-autocmds-5.4 version5.txt /*improved-autocmds-5.4*
|
||||
improved-quickfix version5.txt /*improved-quickfix*
|
||||
improved-sessions version5.txt /*improved-sessions*
|
||||
@@ -7327,6 +7390,7 @@ interfaces-5.2 version5.txt /*interfaces-5.2*
|
||||
internal-variables eval.txt /*internal-variables*
|
||||
internal-wordlist spell.txt /*internal-wordlist*
|
||||
internet intro.txt /*internet*
|
||||
interrupt() eval.txt /*interrupt()*
|
||||
intro intro.txt /*intro*
|
||||
intro.txt intro.txt /*intro.txt*
|
||||
inverse syntax.txt /*inverse*
|
||||
@@ -7360,6 +7424,7 @@ job-err_cb channel.txt /*job-err_cb*
|
||||
job-err_io channel.txt /*job-err_io*
|
||||
job-exit_cb channel.txt /*job-exit_cb*
|
||||
job-functions usr_41.txt /*job-functions*
|
||||
job-functions-details channel.txt /*job-functions-details*
|
||||
job-in_io channel.txt /*job-in_io*
|
||||
job-noblock channel.txt /*job-noblock*
|
||||
job-options channel.txt /*job-options*
|
||||
@@ -7371,16 +7436,17 @@ job-start-nochannel channel.txt /*job-start-nochannel*
|
||||
job-stoponexit channel.txt /*job-stoponexit*
|
||||
job-term channel.txt /*job-term*
|
||||
job-timeout channel.txt /*job-timeout*
|
||||
job_getchannel() eval.txt /*job_getchannel()*
|
||||
job_info() eval.txt /*job_info()*
|
||||
job_setoptions() eval.txt /*job_setoptions()*
|
||||
job_start() eval.txt /*job_start()*
|
||||
job_status() eval.txt /*job_status()*
|
||||
job_stop() eval.txt /*job_stop()*
|
||||
job_getchannel() channel.txt /*job_getchannel()*
|
||||
job_info() channel.txt /*job_info()*
|
||||
job_setoptions() channel.txt /*job_setoptions()*
|
||||
job_start() channel.txt /*job_start()*
|
||||
job_status() channel.txt /*job_status()*
|
||||
job_stop() channel.txt /*job_stop()*
|
||||
join() eval.txt /*join()*
|
||||
js_decode() eval.txt /*js_decode()*
|
||||
js_encode() eval.txt /*js_encode()*
|
||||
jsbterm-mouse options.txt /*jsbterm-mouse*
|
||||
json.vim syntax.txt /*json.vim*
|
||||
json_decode() eval.txt /*json_decode()*
|
||||
json_encode() eval.txt /*json_encode()*
|
||||
jtags tagsrch.txt /*jtags*
|
||||
@@ -7468,6 +7534,7 @@ listener_add() eval.txt /*listener_add()*
|
||||
listener_flush() eval.txt /*listener_flush()*
|
||||
listener_remove() eval.txt /*listener_remove()*
|
||||
lite.vim syntax.txt /*lite.vim*
|
||||
literal-Dict eval.txt /*literal-Dict*
|
||||
literal-string eval.txt /*literal-string*
|
||||
lnum-variable eval.txt /*lnum-variable*
|
||||
load-plugins starting.txt /*load-plugins*
|
||||
@@ -7609,6 +7676,8 @@ matchlist() eval.txt /*matchlist()*
|
||||
matchparen pi_paren.txt /*matchparen*
|
||||
matchstr() eval.txt /*matchstr()*
|
||||
matchstrpos() eval.txt /*matchstrpos()*
|
||||
matlab-indent indent.txt /*matlab-indent*
|
||||
matlab-indenting indent.txt /*matlab-indenting*
|
||||
max() eval.txt /*max()*
|
||||
mbyte-IME mbyte.txt /*mbyte-IME*
|
||||
mbyte-XIM mbyte.txt /*mbyte-XIM*
|
||||
@@ -7637,6 +7706,7 @@ message-history message.txt /*message-history*
|
||||
message.txt message.txt /*message.txt*
|
||||
messages message.txt /*messages*
|
||||
meta intro.txt /*meta*
|
||||
method eval.txt /*method*
|
||||
min() eval.txt /*min()*
|
||||
missing-options vi_diff.txt /*missing-options*
|
||||
mkdir() eval.txt /*mkdir()*
|
||||
@@ -7653,6 +7723,7 @@ modeless-selection gui.txt /*modeless-selection*
|
||||
modeline options.txt /*modeline*
|
||||
modeline-local options.txt /*modeline-local*
|
||||
modeline-version options.txt /*modeline-version*
|
||||
modifyOtherKeys map.txt /*modifyOtherKeys*
|
||||
moo.vim syntax.txt /*moo.vim*
|
||||
more-compatible version5.txt /*more-compatible*
|
||||
more-prompt message.txt /*more-prompt*
|
||||
@@ -8016,9 +8087,11 @@ new-onemore version7.txt /*new-onemore*
|
||||
new-operator-mod version6.txt /*new-operator-mod*
|
||||
new-options-5.2 version5.txt /*new-options-5.2*
|
||||
new-options-5.4 version5.txt /*new-options-5.4*
|
||||
new-other-8.2 version8.txt /*new-other-8.2*
|
||||
new-perl-python version5.txt /*new-perl-python*
|
||||
new-persistent-undo version7.txt /*new-persistent-undo*
|
||||
new-plugins version6.txt /*new-plugins*
|
||||
new-popup-window version8.txt /*new-popup-window*
|
||||
new-posix version7.txt /*new-posix*
|
||||
new-print-multi-byte version7.txt /*new-print-multi-byte*
|
||||
new-printing version6.txt /*new-printing*
|
||||
@@ -8032,9 +8105,10 @@ new-search-path version6.txt /*new-search-path*
|
||||
new-searchpat version6.txt /*new-searchpat*
|
||||
new-session-files version5.txt /*new-session-files*
|
||||
new-spell version7.txt /*new-spell*
|
||||
new-style-testing eval.txt /*new-style-testing*
|
||||
new-style-testing testing.txt /*new-style-testing*
|
||||
new-tab-pages version7.txt /*new-tab-pages*
|
||||
new-terminal-window version8.txt /*new-terminal-window*
|
||||
new-text-properties version8.txt /*new-text-properties*
|
||||
new-undo-branches version7.txt /*new-undo-branches*
|
||||
new-unlisted-buffers version6.txt /*new-unlisted-buffers*
|
||||
new-user-defined version5.txt /*new-user-defined*
|
||||
@@ -8045,10 +8119,10 @@ new-vim-script version7.txt /*new-vim-script*
|
||||
new-vim-script-8 version8.txt /*new-vim-script-8*
|
||||
new-vim-server version6.txt /*new-vim-server*
|
||||
new-vimgrep version7.txt /*new-vimgrep*
|
||||
new-vimscript-8.2 version8.txt /*new-vimscript-8.2*
|
||||
new-virtedit version6.txt /*new-virtedit*
|
||||
news intro.txt /*news*
|
||||
nextnonblank() eval.txt /*nextnonblank()*
|
||||
nice todo.txt /*nice*
|
||||
no-eval-feature eval.txt /*no-eval-feature*
|
||||
no-type-checking eval.txt /*no-type-checking*
|
||||
no_buffers_menu gui.txt /*no_buffers_menu*
|
||||
@@ -8080,7 +8154,7 @@ ocaml.vim syntax.txt /*ocaml.vim*
|
||||
octal eval.txt /*octal*
|
||||
octal-nrformats options.txt /*octal-nrformats*
|
||||
octal-number eval.txt /*octal-number*
|
||||
old-style-testing eval.txt /*old-style-testing*
|
||||
old-style-testing testing.txt /*old-style-testing*
|
||||
oldfiles-variable eval.txt /*oldfiles-variable*
|
||||
ole-activation if_ole.txt /*ole-activation*
|
||||
ole-eval if_ole.txt /*ole-eval*
|
||||
@@ -8227,20 +8301,25 @@ popup-callback popup.txt /*popup-callback*
|
||||
popup-close popup.txt /*popup-close*
|
||||
popup-examples popup.txt /*popup-examples*
|
||||
popup-filter popup.txt /*popup-filter*
|
||||
popup-filter-mode popup.txt /*popup-filter-mode*
|
||||
popup-function-details popup.txt /*popup-function-details*
|
||||
popup-functions popup.txt /*popup-functions*
|
||||
popup-intro popup.txt /*popup-intro*
|
||||
popup-mapping popup.txt /*popup-mapping*
|
||||
popup-mask popup.txt /*popup-mask*
|
||||
popup-menu gui.txt /*popup-menu*
|
||||
popup-menu-added version5.txt /*popup-menu-added*
|
||||
popup-position popup.txt /*popup-position*
|
||||
popup-props popup.txt /*popup-props*
|
||||
popup-scrollbar popup.txt /*popup-scrollbar*
|
||||
popup-textprop-pos popup.txt /*popup-textprop-pos*
|
||||
popup-usage popup.txt /*popup-usage*
|
||||
popup-window popup.txt /*popup-window*
|
||||
popup-window-functions usr_41.txt /*popup-window-functions*
|
||||
popup.txt popup.txt /*popup.txt*
|
||||
popup_atcursor() popup.txt /*popup_atcursor()*
|
||||
popup_beval() popup.txt /*popup_beval()*
|
||||
popup_beval_example popup.txt /*popup_beval_example*
|
||||
popup_clear() popup.txt /*popup_clear()*
|
||||
popup_close() popup.txt /*popup_close()*
|
||||
popup_create() popup.txt /*popup_create()*
|
||||
@@ -8249,9 +8328,12 @@ popup_dialog() popup.txt /*popup_dialog()*
|
||||
popup_dialog-example popup.txt /*popup_dialog-example*
|
||||
popup_filter_menu() popup.txt /*popup_filter_menu()*
|
||||
popup_filter_yesno() popup.txt /*popup_filter_yesno()*
|
||||
popup_findinfo() popup.txt /*popup_findinfo()*
|
||||
popup_findpreview() popup.txt /*popup_findpreview()*
|
||||
popup_getoptions() popup.txt /*popup_getoptions()*
|
||||
popup_getpos() popup.txt /*popup_getpos()*
|
||||
popup_hide() popup.txt /*popup_hide()*
|
||||
popup_locate() popup.txt /*popup_locate()*
|
||||
popup_menu() popup.txt /*popup_menu()*
|
||||
popup_menu-shortcut-example popup.txt /*popup_menu-shortcut-example*
|
||||
popup_move() popup.txt /*popup_move()*
|
||||
@@ -8261,6 +8343,7 @@ popup_settext() popup.txt /*popup_settext()*
|
||||
popup_show() popup.txt /*popup_show()*
|
||||
popupmenu-completion insert.txt /*popupmenu-completion*
|
||||
popupmenu-keys insert.txt /*popupmenu-keys*
|
||||
popupwin popup.txt /*popupwin*
|
||||
ports-5.2 version5.txt /*ports-5.2*
|
||||
ports-6 version6.txt /*ports-6*
|
||||
posix vi_diff.txt /*posix*
|
||||
@@ -8278,6 +8361,7 @@ ppwiz.vim syntax.txt /*ppwiz.vim*
|
||||
press-enter message.txt /*press-enter*
|
||||
press-return message.txt /*press-return*
|
||||
prevcount-variable eval.txt /*prevcount-variable*
|
||||
preview-popup windows.txt /*preview-popup*
|
||||
preview-window windows.txt /*preview-window*
|
||||
prevnonblank() eval.txt /*prevnonblank()*
|
||||
print-intro print.txt /*print-intro*
|
||||
@@ -8313,19 +8397,20 @@ prompt_setinterrupt() eval.txt /*prompt_setinterrupt()*
|
||||
prompt_setprompt() eval.txt /*prompt_setprompt()*
|
||||
promptbuffer-functions usr_41.txt /*promptbuffer-functions*
|
||||
pronounce intro.txt /*pronounce*
|
||||
prop_add() eval.txt /*prop_add()*
|
||||
prop_clear() eval.txt /*prop_clear()*
|
||||
prop_find() eval.txt /*prop_find()*
|
||||
prop_list() eval.txt /*prop_list()*
|
||||
prop_remove() eval.txt /*prop_remove()*
|
||||
prop_type_add() eval.txt /*prop_type_add()*
|
||||
prop_type_change() eval.txt /*prop_type_change()*
|
||||
prop_type_delete() eval.txt /*prop_type_delete()*
|
||||
prop_type_get() eval.txt /*prop_type_get()*
|
||||
prop_type_list() eval.txt /*prop_type_list()*
|
||||
prop_add() textprop.txt /*prop_add()*
|
||||
prop_clear() textprop.txt /*prop_clear()*
|
||||
prop_find() textprop.txt /*prop_find()*
|
||||
prop_list() textprop.txt /*prop_list()*
|
||||
prop_remove() textprop.txt /*prop_remove()*
|
||||
prop_type_add() textprop.txt /*prop_type_add()*
|
||||
prop_type_change() textprop.txt /*prop_type_change()*
|
||||
prop_type_delete() textprop.txt /*prop_type_delete()*
|
||||
prop_type_get() textprop.txt /*prop_type_get()*
|
||||
prop_type_list() textprop.txt /*prop_type_list()*
|
||||
psql ft_sql.txt /*psql*
|
||||
ptcap.vim syntax.txt /*ptcap.vim*
|
||||
pterm-mouse options.txt /*pterm-mouse*
|
||||
pum_getpos() eval.txt /*pum_getpos()*
|
||||
pumvisible() eval.txt /*pumvisible()*
|
||||
put change.txt /*put*
|
||||
put-Visual-mode change.txt /*put-Visual-mode*
|
||||
@@ -8383,6 +8468,7 @@ q repeat.txt /*q*
|
||||
q/ cmdline.txt /*q\/*
|
||||
q: cmdline.txt /*q:*
|
||||
q? cmdline.txt /*q?*
|
||||
qf.vim filetype.txt /*qf.vim*
|
||||
qnx os_qnx.txt /*qnx*
|
||||
qnx-compiling os_qnx.txt /*qnx-compiling*
|
||||
qnx-general os_qnx.txt /*qnx-general*
|
||||
@@ -8447,6 +8533,7 @@ quotestar gui.txt /*quotestar*
|
||||
quote~ change.txt /*quote~*
|
||||
r change.txt /*r*
|
||||
r.vim syntax.txt /*r.vim*
|
||||
rand() eval.txt /*rand()*
|
||||
range() eval.txt /*range()*
|
||||
raw-terminal-mode term.txt /*raw-terminal-mode*
|
||||
rcp pi_netrw.txt /*rcp*
|
||||
@@ -8590,6 +8677,7 @@ screenattr() eval.txt /*screenattr()*
|
||||
screenchar() eval.txt /*screenchar()*
|
||||
screenchars() eval.txt /*screenchars()*
|
||||
screencol() eval.txt /*screencol()*
|
||||
screenpos() eval.txt /*screenpos()*
|
||||
screenrow() eval.txt /*screenrow()*
|
||||
screenstring() eval.txt /*screenstring()*
|
||||
script usr_41.txt /*script*
|
||||
@@ -8602,6 +8690,7 @@ scriptversion eval.txt /*scriptversion*
|
||||
scriptversion-1 eval.txt /*scriptversion-1*
|
||||
scriptversion-2 eval.txt /*scriptversion-2*
|
||||
scriptversion-3 eval.txt /*scriptversion-3*
|
||||
scriptversion-4 eval.txt /*scriptversion-4*
|
||||
scroll-binding scroll.txt /*scroll-binding*
|
||||
scroll-cursor scroll.txt /*scroll-cursor*
|
||||
scroll-down scroll.txt /*scroll-down*
|
||||
@@ -8682,19 +8771,22 @@ showing-menus gui.txt /*showing-menus*
|
||||
sign-column sign.txt /*sign-column*
|
||||
sign-commands sign.txt /*sign-commands*
|
||||
sign-functions usr_41.txt /*sign-functions*
|
||||
sign-functions-details sign.txt /*sign-functions-details*
|
||||
sign-group sign.txt /*sign-group*
|
||||
sign-identifier sign.txt /*sign-identifier*
|
||||
sign-intro sign.txt /*sign-intro*
|
||||
sign-priority sign.txt /*sign-priority*
|
||||
sign-support sign.txt /*sign-support*
|
||||
sign.txt sign.txt /*sign.txt*
|
||||
sign_define() eval.txt /*sign_define()*
|
||||
sign_getdefined() eval.txt /*sign_getdefined()*
|
||||
sign_getplaced() eval.txt /*sign_getplaced()*
|
||||
sign_jump() eval.txt /*sign_jump()*
|
||||
sign_place() eval.txt /*sign_place()*
|
||||
sign_undefine() eval.txt /*sign_undefine()*
|
||||
sign_unplace() eval.txt /*sign_unplace()*
|
||||
sign_define() sign.txt /*sign_define()*
|
||||
sign_getdefined() sign.txt /*sign_getdefined()*
|
||||
sign_getplaced() sign.txt /*sign_getplaced()*
|
||||
sign_jump() sign.txt /*sign_jump()*
|
||||
sign_place() sign.txt /*sign_place()*
|
||||
sign_placelist() sign.txt /*sign_placelist()*
|
||||
sign_undefine() sign.txt /*sign_undefine()*
|
||||
sign_unplace() sign.txt /*sign_unplace()*
|
||||
sign_unplacelist() sign.txt /*sign_unplacelist()*
|
||||
signs sign.txt /*signs*
|
||||
simple-change change.txt /*simple-change*
|
||||
simplify() eval.txt /*simplify()*
|
||||
@@ -8863,6 +8955,7 @@ sqlj ft_sql.txt /*sqlj*
|
||||
sqlserver ft_sql.txt /*sqlserver*
|
||||
sqlsettype ft_sql.txt /*sqlsettype*
|
||||
sqrt() eval.txt /*sqrt()*
|
||||
srand() eval.txt /*srand()*
|
||||
sscanf eval.txt /*sscanf*
|
||||
standard-plugin usr_05.txt /*standard-plugin*
|
||||
standard-plugin-list help.txt /*standard-plugin-list*
|
||||
@@ -8878,9 +8971,11 @@ starting.txt starting.txt /*starting.txt*
|
||||
startup starting.txt /*startup*
|
||||
startup-options starting.txt /*startup-options*
|
||||
startup-terminal term.txt /*startup-terminal*
|
||||
state() eval.txt /*state()*
|
||||
static-tag tagsrch.txt /*static-tag*
|
||||
status-line windows.txt /*status-line*
|
||||
statusmsg-variable eval.txt /*statusmsg-variable*
|
||||
stl-%{ options.txt /*stl-%{*
|
||||
str2float() eval.txt /*str2float()*
|
||||
str2list() eval.txt /*str2list()*
|
||||
str2nr() eval.txt /*str2nr()*
|
||||
@@ -8901,6 +8996,7 @@ string-match eval.txt /*string-match*
|
||||
strlen() eval.txt /*strlen()*
|
||||
strpart() eval.txt /*strpart()*
|
||||
strpbrk() eval.txt /*strpbrk()*
|
||||
strptime() eval.txt /*strptime()*
|
||||
strrchr() eval.txt /*strrchr()*
|
||||
strridx() eval.txt /*strridx()*
|
||||
strspn() eval.txt /*strspn()*
|
||||
@@ -9048,6 +9144,8 @@ t_ST term.txt /*t_ST*
|
||||
t_Sb term.txt /*t_Sb*
|
||||
t_Sf term.txt /*t_Sf*
|
||||
t_Si term.txt /*t_Si*
|
||||
t_TE term.txt /*t_TE*
|
||||
t_TI term.txt /*t_TI*
|
||||
t_Te term.txt /*t_Te*
|
||||
t_Ts term.txt /*t_Ts*
|
||||
t_VS term.txt /*t_VS*
|
||||
@@ -9288,6 +9386,7 @@ term_list() terminal.txt /*term_list()*
|
||||
term_scrape() terminal.txt /*term_scrape()*
|
||||
term_sendkeys() terminal.txt /*term_sendkeys()*
|
||||
term_setansicolors() terminal.txt /*term_setansicolors()*
|
||||
term_setapi() terminal.txt /*term_setapi()*
|
||||
term_setkill() terminal.txt /*term_setkill()*
|
||||
term_setrestore() terminal.txt /*term_setrestore()*
|
||||
term_setsize() terminal.txt /*term_setsize()*
|
||||
@@ -9315,6 +9414,7 @@ termdebug_wide terminal.txt /*termdebug_wide*
|
||||
terminal terminal.txt /*terminal*
|
||||
terminal-api terminal.txt /*terminal-api*
|
||||
terminal-client-server terminal.txt /*terminal-client-server*
|
||||
terminal-close terminal.txt /*terminal-close*
|
||||
terminal-colors os_unix.txt /*terminal-colors*
|
||||
terminal-communication terminal.txt /*terminal-communication*
|
||||
terminal-cursor-style terminal.txt /*terminal-cursor-style*
|
||||
@@ -9328,6 +9428,7 @@ terminal-functions usr_41.txt /*terminal-functions*
|
||||
terminal-info term.txt /*terminal-info*
|
||||
terminal-job-index index.txt /*terminal-job-index*
|
||||
terminal-key-codes term.txt /*terminal-key-codes*
|
||||
terminal-mouse term.txt /*terminal-mouse*
|
||||
terminal-ms-windows terminal.txt /*terminal-ms-windows*
|
||||
terminal-options term.txt /*terminal-options*
|
||||
terminal-output-codes term.txt /*terminal-output-codes*
|
||||
@@ -9346,28 +9447,31 @@ terminal.txt terminal.txt /*terminal.txt*
|
||||
terminfo term.txt /*terminfo*
|
||||
termresponse-variable eval.txt /*termresponse-variable*
|
||||
test-functions usr_41.txt /*test-functions*
|
||||
test_alloc_fail() eval.txt /*test_alloc_fail()*
|
||||
test_autochdir() eval.txt /*test_autochdir()*
|
||||
test_feedinput() eval.txt /*test_feedinput()*
|
||||
test_garbagecollect_now() eval.txt /*test_garbagecollect_now()*
|
||||
test_garbagecollect_soon() eval.txt /*test_garbagecollect_soon()*
|
||||
test_getvalue() eval.txt /*test_getvalue()*
|
||||
test_ignore_error() eval.txt /*test_ignore_error()*
|
||||
test_null_blob() eval.txt /*test_null_blob()*
|
||||
test_null_channel() eval.txt /*test_null_channel()*
|
||||
test_null_dict() eval.txt /*test_null_dict()*
|
||||
test_null_job() eval.txt /*test_null_job()*
|
||||
test_null_list() eval.txt /*test_null_list()*
|
||||
test_null_partial() eval.txt /*test_null_partial()*
|
||||
test_null_string() eval.txt /*test_null_string()*
|
||||
test_option_not_set() eval.txt /*test_option_not_set()*
|
||||
test_override() eval.txt /*test_override()*
|
||||
test_refcount() eval.txt /*test_refcount()*
|
||||
test_scrollbar() eval.txt /*test_scrollbar()*
|
||||
test_setmouse() eval.txt /*test_setmouse()*
|
||||
test_settime() eval.txt /*test_settime()*
|
||||
testing eval.txt /*testing*
|
||||
test-functions-details testing.txt /*test-functions-details*
|
||||
test_alloc_fail() testing.txt /*test_alloc_fail()*
|
||||
test_autochdir() testing.txt /*test_autochdir()*
|
||||
test_feedinput() testing.txt /*test_feedinput()*
|
||||
test_garbagecollect_now() testing.txt /*test_garbagecollect_now()*
|
||||
test_garbagecollect_soon() testing.txt /*test_garbagecollect_soon()*
|
||||
test_getvalue() testing.txt /*test_getvalue()*
|
||||
test_ignore_error() testing.txt /*test_ignore_error()*
|
||||
test_null_blob() testing.txt /*test_null_blob()*
|
||||
test_null_channel() testing.txt /*test_null_channel()*
|
||||
test_null_dict() testing.txt /*test_null_dict()*
|
||||
test_null_job() testing.txt /*test_null_job()*
|
||||
test_null_list() testing.txt /*test_null_list()*
|
||||
test_null_partial() testing.txt /*test_null_partial()*
|
||||
test_null_string() testing.txt /*test_null_string()*
|
||||
test_option_not_set() testing.txt /*test_option_not_set()*
|
||||
test_override() testing.txt /*test_override()*
|
||||
test_refcount() testing.txt /*test_refcount()*
|
||||
test_scrollbar() testing.txt /*test_scrollbar()*
|
||||
test_setmouse() testing.txt /*test_setmouse()*
|
||||
test_settime() testing.txt /*test_settime()*
|
||||
testing testing.txt /*testing*
|
||||
testing-support testing.txt /*testing-support*
|
||||
testing-variable eval.txt /*testing-variable*
|
||||
testing.txt testing.txt /*testing.txt*
|
||||
tex-cchar syntax.txt /*tex-cchar*
|
||||
tex-cole syntax.txt /*tex-cole*
|
||||
tex-conceal syntax.txt /*tex-conceal*
|
||||
@@ -9518,6 +9622,7 @@ utf-8-typing mbyte.txt /*utf-8-typing*
|
||||
utf8 mbyte.txt /*utf8*
|
||||
v visual.txt /*v*
|
||||
v: eval.txt /*v:*
|
||||
v:argv eval.txt /*v:argv*
|
||||
v:beval_bufnr eval.txt /*v:beval_bufnr*
|
||||
v:beval_col eval.txt /*v:beval_col*
|
||||
v:beval_lnum eval.txt /*v:beval_lnum*
|
||||
@@ -9534,6 +9639,7 @@ v:count eval.txt /*v:count*
|
||||
v:count1 eval.txt /*v:count1*
|
||||
v:ctype eval.txt /*v:ctype*
|
||||
v:dying eval.txt /*v:dying*
|
||||
v:echospace eval.txt /*v:echospace*
|
||||
v:errmsg eval.txt /*v:errmsg*
|
||||
v:errors eval.txt /*v:errors*
|
||||
v:event eval.txt /*v:event*
|
||||
@@ -9753,6 +9859,7 @@ version-7.3 version7.txt /*version-7.3*
|
||||
version-7.4 version7.txt /*version-7.4*
|
||||
version-8.0 version8.txt /*version-8.0*
|
||||
version-8.1 version8.txt /*version-8.1*
|
||||
version-8.2 version8.txt /*version-8.2*
|
||||
version-variable eval.txt /*version-variable*
|
||||
version4.txt version4.txt /*version4.txt*
|
||||
version5.txt version5.txt /*version5.txt*
|
||||
@@ -9765,6 +9872,7 @@ version7.4 version7.txt /*version7.4*
|
||||
version7.txt version7.txt /*version7.txt*
|
||||
version8.0 version8.txt /*version8.0*
|
||||
version8.1 version8.txt /*version8.1*
|
||||
version8.2 version8.txt /*version8.2*
|
||||
version8.txt version8.txt /*version8.txt*
|
||||
versionlong-variable eval.txt /*versionlong-variable*
|
||||
vi intro.txt /*vi*
|
||||
@@ -9780,6 +9888,7 @@ views-sessions starting.txt /*views-sessions*
|
||||
vim-7.4 version7.txt /*vim-7.4*
|
||||
vim-8 version8.txt /*vim-8*
|
||||
vim-8.1 version8.txt /*vim-8.1*
|
||||
vim-8.2 version8.txt /*vim-8.2*
|
||||
vim-additions vi_diff.txt /*vim-additions*
|
||||
vim-announce intro.txt /*vim-announce*
|
||||
vim-arguments starting.txt /*vim-arguments*
|
||||
@@ -9919,6 +10028,7 @@ win_gotoid() eval.txt /*win_gotoid()*
|
||||
win_id2tabwin() eval.txt /*win_id2tabwin()*
|
||||
win_id2win() eval.txt /*win_id2win()*
|
||||
win_screenpos() eval.txt /*win_screenpos()*
|
||||
win_splitmove() eval.txt /*win_splitmove()*
|
||||
winbufnr() eval.txt /*winbufnr()*
|
||||
wincol() eval.txt /*wincol()*
|
||||
window windows.txt /*window*
|
||||
@@ -10104,6 +10214,7 @@ zz scroll.txt /*zz*
|
||||
{move-around} visual.txt /*{move-around}*
|
||||
{offset} pattern.txt /*{offset}*
|
||||
{pat} autocmd.txt /*{pat}*
|
||||
{register} change.txt /*{register}*
|
||||
{rhs} map.txt /*{rhs}*
|
||||
{subject} helphelp.txt /*{subject}*
|
||||
{} intro.txt /*{}*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*tagsrch.txt* For Vim version 8.1. Last change: 2019 Jun 10
|
||||
*tagsrch.txt* For Vim version 8.1. Last change: 2019 Nov 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -436,7 +436,7 @@ files here, it is only supported for backwards compatibility :-).
|
||||
|
||||
Lines in Emacs tags files can be very long. Vim only deals with lines of up
|
||||
to about 510 bytes. To see whether lines are ignored set 'verbose' to 5 or
|
||||
higher.
|
||||
higher. Non-Emacs tags file lines can be any length.
|
||||
|
||||
*tags-option*
|
||||
The 'tags' option is a list of file names. Each of these files is searched
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*term.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*term.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -80,14 +80,19 @@ can do this best in your .vimrc. Example: >
|
||||
<
|
||||
*raw-terminal-mode*
|
||||
For normal editing the terminal will be put into "raw" mode. The strings
|
||||
defined with 't_ti' and 't_ks' will be sent to the terminal. Normally this
|
||||
puts the terminal in a state where the termcap codes are valid and activates
|
||||
the cursor and function keys. When Vim exits the terminal will be put back
|
||||
into the mode it was before Vim started. The strings defined with 't_te' and
|
||||
't_ke' will be sent to the terminal. On the Amiga, with commands that execute
|
||||
an external command (e.g., "!!"), the terminal will be put into Normal mode
|
||||
for a moment. This means that you can stop the output to the screen by
|
||||
hitting a printing key. Output resumes when you hit <BS>.
|
||||
defined with 't_ti', 't_TI' and 't_ks' will be sent to the terminal. Normally
|
||||
this puts the terminal in a state where the termcap codes are valid and
|
||||
activates the cursor and function keys.
|
||||
When Vim exits the terminal will be put back into the mode it was before Vim
|
||||
started. The strings defined with 't_te', 't_TE' and 't_ke' will be sent to
|
||||
the terminal. On the Amiga, with commands that execute an external command
|
||||
(e.g., "!!"), the terminal will be put into Normal mode for a moment. This
|
||||
means that you can stop the output to the screen by hitting a printing key.
|
||||
Output resumes when you hit <BS>.
|
||||
|
||||
Note: When 't_ti' is not empty, Vim assumes that it causes switching to the
|
||||
alternate screen. This may slightly change what happens when executing a
|
||||
shell command or exiting Vim. To avoid this use 't_TI' and 't_TE'.
|
||||
|
||||
*xterm-bracketed-paste*
|
||||
When the 't_BE' option is set then 't_BE' will be sent to the
|
||||
@@ -297,8 +302,8 @@ OUTPUT CODES *terminal-output-codes*
|
||||
t_se standout end *t_se* *'t_se'*
|
||||
t_so standout mode *t_so* *'t_so'*
|
||||
t_sr scroll reverse (backward) *t_sr* *'t_sr'*
|
||||
t_te out of "termcap" mode *t_te* *'t_te'*
|
||||
t_ti put terminal in "termcap" mode *t_ti* *'t_ti'*
|
||||
t_te end of "termcap" mode *t_te* *'t_te'*
|
||||
t_ti put terminal into "termcap" mode *t_ti* *'t_ti'*
|
||||
t_ts set window title start (to status line) *t_ts* *'t_ts'*
|
||||
t_ue underline end *t_ue* *'t_ue'*
|
||||
t_us underline mode *t_us* *'t_us'*
|
||||
@@ -359,6 +364,8 @@ Added by Vim (there are no standard codes for these):
|
||||
t_RT restore window title from stack *t_RT* *'t_RT'*
|
||||
t_Si save icon text to stack *t_Si* *'t_Si'*
|
||||
t_Ri restore icon text from stack *t_Ri* *'t_Ri'*
|
||||
t_TE end of "raw" mode *t_TE* *'t_TE'*
|
||||
t_TI put terminal into "raw" mode *t_TI* *'t_TI'*
|
||||
|
||||
Some codes have a start, middle and end part. The start and end are defined
|
||||
by the termcap option, the middle part is text.
|
||||
@@ -498,7 +505,7 @@ Vim has started, the escape sequences may not be recognized anymore.
|
||||
|
||||
*xterm-true-color*
|
||||
Vim supports using true colors in the terminal (taken from |highlight-guifg|
|
||||
and |highlight-guibg|), given that the terminal supports this. To make this
|
||||
and |highlight-guibg|), given that the terminal supports this. To make this
|
||||
work the 'termguicolors' option needs to be set.
|
||||
See https://gist.github.com/XVilka/8346728 for a list of terminals that
|
||||
support true colors.
|
||||
@@ -739,12 +746,21 @@ jump to tags).
|
||||
Whether the selection that is started with the mouse is in Visual mode or
|
||||
Select mode depends on whether "mouse" is included in the 'selectmode'
|
||||
option.
|
||||
|
||||
*terminal-mouse*
|
||||
In an xterm, with the currently active mode included in the 'mouse' option,
|
||||
normal mouse clicks are used by Vim, mouse clicks with the shift or ctrl key
|
||||
pressed go to the xterm. With the currently active mode not included in
|
||||
'mouse' all mouse clicks go to the xterm.
|
||||
|
||||
For terminals where it is not possible to have the mouse events be used by the
|
||||
terminal itself by using a modifier, a workaround is to not use mouse events
|
||||
for Vim in command-line mode: >
|
||||
:set mouse=nvi
|
||||
Then to select text with the terminal, use ":" to go to command-line mode,
|
||||
select and copy the text to the system, then press Esc.
|
||||
|
||||
Another way is to temporarily use ":sh" to run a shell, copy the text, then
|
||||
exit the shell. 'mouse' can remain set to "a" then.
|
||||
*xterm-clipboard*
|
||||
In the Athena and Motif GUI versions, when running in a terminal and there is
|
||||
access to the X-server (DISPLAY is set), the copy and paste will behave like
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*terminal.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*terminal.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -72,7 +72,7 @@ CTRL-W can be used to navigate between windows and other CTRL-W commands, e.g.:
|
||||
CTRL-W : enter an Ex command
|
||||
See |CTRL-W| for more commands.
|
||||
|
||||
Special in the terminal window: *t_CTRL-W_.* *t_CTRL-W_N*
|
||||
Special in the terminal window: *t_CTRL-W_.* *t_CTRL-W_N*
|
||||
CTRL-W . send a CTRL-W to the job in the terminal
|
||||
CTRL-W CTRL-\ send a CTRL-\ to the job in the terminal
|
||||
CTRL-W N go to Terminal-Normal mode, see |Terminal-mode|
|
||||
@@ -193,6 +193,7 @@ Command syntax ~
|
||||
Supported [options] are:
|
||||
++close The terminal window will close
|
||||
automatically when the job terminates.
|
||||
|terminal-close|
|
||||
++noclose The terminal window will NOT close
|
||||
automatically when the job terminates.
|
||||
++open When the job terminates and no window
|
||||
@@ -209,6 +210,10 @@ Command syntax ~
|
||||
no window will be used.
|
||||
++norestore Do not include this terminal window
|
||||
in a session file.
|
||||
++shell Instead of executing {command}
|
||||
directly, use a shell, like with
|
||||
`:!command` *E279*
|
||||
{only works on Unix currently}
|
||||
++kill={how} When trying to close the terminal
|
||||
window kill the job with {how}. See
|
||||
|term_setkill()| for the values.
|
||||
@@ -222,7 +227,7 @@ Command syntax ~
|
||||
Vim width (no window left or right of
|
||||
the terminal window) this value is
|
||||
ignored.
|
||||
++eof={text} when using [range]: text to send after
|
||||
++eof={text} When using [range]: text to send after
|
||||
the last line was written. Cannot
|
||||
contain white space. A CR is
|
||||
appended. For MS-Windows the default
|
||||
@@ -234,6 +239,10 @@ Command syntax ~
|
||||
++type={pty} (MS-Windows only): Use {pty} as the
|
||||
virtual console. See 'termwintype'
|
||||
for the values.
|
||||
++api={expr} Permit the function name starting with
|
||||
{expr} to be called as |terminal-api|
|
||||
function. If {expr} is empty then no
|
||||
function can be called.
|
||||
|
||||
If you want to use more options use the |term_start()|
|
||||
function.
|
||||
@@ -263,6 +272,12 @@ hidden, the job keeps running. The `:buffer` command can be used to turn the
|
||||
current window into a terminal window. If there are unsaved changes this
|
||||
fails, use ! to force, as usual.
|
||||
|
||||
*terminal-close*
|
||||
When the terminal window is closed, e.g. when the shell exits and "++close"
|
||||
argument was used, and this is the last normal Vim window, then Vim will exit.
|
||||
This is like using |:quit| in a normal window. Help and preview windows are
|
||||
not counted.
|
||||
|
||||
To have a background job run without a window, and open the window when it's
|
||||
done, use options like this: >
|
||||
:term ++hidden ++open make
|
||||
@@ -479,6 +494,9 @@ term_dumpdiff({filename}, {filename} [, {options}])
|
||||
Using the "s" key the top and bottom parts are swapped. This
|
||||
makes it easy to spot a difference.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->term_dumpdiff(otherfile)
|
||||
<
|
||||
*term_dumpload()*
|
||||
term_dumpload({filename} [, {options}])
|
||||
Open a new window displaying the contents of {filename}
|
||||
@@ -488,6 +506,9 @@ term_dumpload({filename} [, {options}])
|
||||
|
||||
For {options} see |term_dumpdiff()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->term_dumpload()
|
||||
<
|
||||
*term_dumpwrite()*
|
||||
term_dumpwrite({buf}, {filename} [, {options}])
|
||||
Dump the contents of the terminal screen of {buf} in the file
|
||||
@@ -502,11 +523,18 @@ term_dumpwrite({buf}, {filename} [, {options}])
|
||||
"rows" maximum number of rows to dump
|
||||
"columns" maximum number of columns to dump
|
||||
|
||||
Can also be used as a |method|, the base is used for the file
|
||||
name: >
|
||||
GetFilename()->term_dumpwrite(bufnr)
|
||||
|
||||
term_getaltscreen({buf}) *term_getaltscreen()*
|
||||
Returns 1 if the terminal of {buf} is using the alternate
|
||||
screen.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getaltscreen()
|
||||
|
||||
|
||||
term_getansicolors({buf}) *term_getansicolors()*
|
||||
Get the ANSI color palette in use by terminal {buf}.
|
||||
@@ -517,8 +545,12 @@ term_getansicolors({buf}) *term_getansicolors()*
|
||||
|
||||
{buf} is used as with |term_getsize()|. If the buffer does not
|
||||
exist or is not a terminal window, an empty list is returned.
|
||||
{only available when compiled with the |+terminal| feature and
|
||||
with GUI enabled and/or the |+termguicolors| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getansicolors()
|
||||
|
||||
< {only available when compiled with GUI enabled and/or the
|
||||
|+termguicolors| feature}
|
||||
|
||||
term_getattr({attr}, {what}) *term_getattr()*
|
||||
Given {attr}, a value returned by term_scrape() in the "attr"
|
||||
@@ -528,7 +560,10 @@ term_getattr({attr}, {what}) *term_getattr()*
|
||||
underline
|
||||
strike
|
||||
reverse
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetAttr()->term_getattr()
|
||||
|
||||
|
||||
term_getcursor({buf}) *term_getcursor()*
|
||||
Get the cursor position of terminal {buf}. Returns a list with
|
||||
@@ -550,13 +585,18 @@ term_getcursor({buf}) *term_getcursor()*
|
||||
{buf} must be the buffer number of a terminal window. If the
|
||||
buffer does not exist or is not a terminal window, an empty
|
||||
list is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getcursor()
|
||||
|
||||
term_getjob({buf}) *term_getjob()*
|
||||
Get the Job associated with terminal window {buf}.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
Returns |v:null| when there is no job.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getjob()
|
||||
|
||||
|
||||
term_getline({buf}, {row}) *term_getline()*
|
||||
Get a line of text from the terminal window of {buf}.
|
||||
@@ -567,7 +607,10 @@ term_getline({buf}, {row}) *term_getline()*
|
||||
returned.
|
||||
|
||||
To get attributes of each character use |term_scrape()|.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getline(row)
|
||||
|
||||
|
||||
term_getscrolled({buf}) *term_getscrolled()*
|
||||
Return the number of lines that scrolled to above the top of
|
||||
@@ -579,7 +622,10 @@ term_getscrolled({buf}) *term_getscrolled()*
|
||||
< (if that line exists).
|
||||
|
||||
{buf} is used as with |term_getsize()|.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getscrolled()
|
||||
|
||||
|
||||
term_getsize({buf}) *term_getsize()*
|
||||
Get the size of terminal {buf}. Returns a list with two
|
||||
@@ -589,7 +635,10 @@ term_getsize({buf}) *term_getsize()*
|
||||
{buf} must be the buffer number of a terminal window. Use an
|
||||
empty string for the current buffer. If the buffer does not
|
||||
exist or is not a terminal window, an empty list is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getsize()
|
||||
|
||||
|
||||
term_getstatus({buf}) *term_getstatus()*
|
||||
Get the status of terminal {buf}. This returns a comma
|
||||
@@ -602,7 +651,10 @@ term_getstatus({buf}) *term_getstatus()*
|
||||
{buf} must be the buffer number of a terminal window. If the
|
||||
buffer does not exist or is not a terminal window, an empty
|
||||
string is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getstatus()
|
||||
|
||||
|
||||
term_gettitle({buf}) *term_gettitle()*
|
||||
Get the title of terminal {buf}. This is the title that the
|
||||
@@ -611,7 +663,10 @@ term_gettitle({buf}) *term_gettitle()*
|
||||
{buf} must be the buffer number of a terminal window. If the
|
||||
buffer does not exist or is not a terminal window, an empty
|
||||
string is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_gettitle()
|
||||
|
||||
|
||||
term_gettty({buf} [, {input}]) *term_gettty()*
|
||||
Get the name of the controlling terminal associated with
|
||||
@@ -620,12 +675,15 @@ term_gettty({buf} [, {input}]) *term_gettty()*
|
||||
When {input} is omitted or 0, return the name for writing
|
||||
(stdout). When {input} is 1 return the name for reading
|
||||
(stdin). On UNIX, both return same name.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_gettty()
|
||||
|
||||
|
||||
term_list() *term_list()*
|
||||
Return a list with the buffer numbers of all buffers for
|
||||
terminal windows.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
|
||||
term_scrape({buf}, {row}) *term_scrape()*
|
||||
Get the contents of {row} of terminal screen of {buf}.
|
||||
@@ -642,7 +700,10 @@ term_scrape({buf}, {row}) *term_scrape()*
|
||||
"attr" attributes of the cell, use |term_getattr()|
|
||||
to get the individual flags
|
||||
"width" cell width: 1 or 2
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_scrape(row)
|
||||
|
||||
|
||||
term_sendkeys({buf}, {keys}) *term_sendkeys()*
|
||||
Send keystrokes {keys} to terminal {buf}.
|
||||
@@ -650,7 +711,19 @@ term_sendkeys({buf}, {keys}) *term_sendkeys()*
|
||||
|
||||
{keys} are translated as key sequences. For example, "\<c-x>"
|
||||
means the character CTRL-X.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_sendkeys(keys)
|
||||
|
||||
|
||||
term_setapi({buf}, {expr}) *term_setapi()*
|
||||
Set the function name prefix to be used for the |terminal-api|
|
||||
function in terminal {buf}. For example: >
|
||||
:call term_setapi(buf, "Myapi_")
|
||||
:call term_setapi(buf, "")
|
||||
<
|
||||
The default is "Tapi_". When {expr} is an empty string then
|
||||
no |terminal-api| function can be used for {buf}.
|
||||
|
||||
term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
||||
Set the ANSI color palette used by terminal {buf}.
|
||||
@@ -680,8 +753,12 @@ term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
||||
'termguicolors' is set. When not using GUI colors (GUI mode
|
||||
or 'termguicolors'), the terminal window always uses the 16
|
||||
ANSI colors of the underlying terminal.
|
||||
{only available when compiled with the |+terminal| feature and
|
||||
with GUI enabled and/or the |+termguicolors| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setansicolors(colors)
|
||||
|
||||
< {only available with GUI enabled and/or the |+termguicolors|
|
||||
feature}
|
||||
|
||||
term_setkill({buf}, {how}) *term_setkill()*
|
||||
When exiting Vim or trying to close the terminal window in
|
||||
@@ -695,6 +772,10 @@ term_setkill({buf}, {how}) *term_setkill()*
|
||||
After sending the signal Vim will wait for up to a second to
|
||||
check that the job actually stopped.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setkill(how)
|
||||
|
||||
|
||||
term_setrestore({buf}, {command}) *term_setrestore()*
|
||||
Set the command to write in a session file to restore the job
|
||||
in this terminal. The line written in the session file is: >
|
||||
@@ -703,7 +784,10 @@ term_setrestore({buf}, {command}) *term_setrestore()*
|
||||
|
||||
Use an empty {command} to run 'shell'.
|
||||
Use "NONE" to not restore this window.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setrestore(command)
|
||||
|
||||
|
||||
term_setsize({buf}, {rows}, {cols}) *term_setsize()* *E955*
|
||||
Set the size of terminal {buf}. The size of the window
|
||||
@@ -714,7 +798,10 @@ term_setsize({buf}, {rows}, {cols}) *term_setsize()* *E955*
|
||||
{buf} must be the buffer number of a terminal window. Use an
|
||||
empty string for the current buffer. If the buffer does not
|
||||
exist or is not a terminal window, an error is given.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setsize(rows, cols)
|
||||
|
||||
|
||||
term_start({cmd} [, {options}]) *term_start()*
|
||||
Open a terminal window and run {cmd} in it.
|
||||
@@ -780,15 +867,22 @@ term_start({cmd} [, {options}]) *term_start()*
|
||||
color modes. See |g:terminal_ansi_colors|.
|
||||
"tty_type" (MS-Windows only): Specify which pty to
|
||||
use. See 'termwintype' for the values.
|
||||
"term_api" function name prefix for the
|
||||
|terminal-api| function. See
|
||||
|term_setapi()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetCommand()->term_start()
|
||||
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
term_wait({buf} [, {time}]) *term_wait()*
|
||||
Wait for pending updates of {buf} to be handled.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
{time} is how long to wait for updates to arrive in msec. If
|
||||
not set then 10 msec will be used.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_wait()
|
||||
|
||||
==============================================================================
|
||||
3. Terminal communication *terminal-communication*
|
||||
@@ -832,10 +926,10 @@ Currently supported commands:
|
||||
|
||||
Call a user defined function with {argument}.
|
||||
The function is called with two arguments: the buffer number
|
||||
of the terminal and {argument}, the decoded JSON argument.
|
||||
The function name must start with "Tapi_" to avoid
|
||||
of the terminal and {argument}, the decoded JSON argument.
|
||||
By default, the function name must start with "Tapi_" to avoid
|
||||
accidentally calling a function not meant to be used for the
|
||||
terminal API.
|
||||
terminal API. This can be changed with |term_setapi()|.
|
||||
The user function should sanity check the argument.
|
||||
The function can use |term_sendkeys()| to send back a reply.
|
||||
Example in JSON: >
|
||||
@@ -952,12 +1046,12 @@ file for now, e.g.: >
|
||||
|
||||
The test will then fail, giving you the command to compare the reference dump
|
||||
and the failed dump, e.g.: >
|
||||
call term_dumpdiff("Test_func.dump.failed", "dumps/Test_func.dump")
|
||||
call term_dumpdiff("failed/Test_func.dump", "dumps/Test_func.dump")
|
||||
|
||||
Use this command in Vim, with the current directory set to src/testdir.
|
||||
Once you are satisfied with the test, move the failed dump in place of the
|
||||
reference: >
|
||||
:!mv Test_func.dump.failed dumps/Test_func.dump
|
||||
:!mv failed/Test_func.dump dumps/Test_func.dump
|
||||
|
||||
|
||||
Creating a screen dump ~
|
||||
@@ -1046,7 +1140,7 @@ program window A terminal window for the executed program. When "run" is
|
||||
|
||||
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
|
||||
highlight the current position, using highlight group debugPC.
|
||||
highlight the current position, using highlight group debugPC.
|
||||
|
||||
If the buffer in the current window is modified, another window will be opened
|
||||
to display the current gdb position. You can use `:Winbar` to add a window
|
||||
@@ -1083,8 +1177,12 @@ Example session ~
|
||||
*termdebug-example*
|
||||
Start in the Vim "src" directory and build Vim: >
|
||||
% make
|
||||
Make sure that debug symbols are present, usually that means that $CFLAGS
|
||||
includes "-g".
|
||||
|
||||
Start Vim: >
|
||||
% ./vim
|
||||
|
||||
Load the termdebug plugin and start debugging Vim: >
|
||||
:packadd termdebug
|
||||
:Termdebug vim
|
||||
@@ -1099,7 +1197,7 @@ Put focus on the gdb window and type: >
|
||||
run
|
||||
Vim will start running in the program window. Put focus there and type: >
|
||||
:help gui
|
||||
Gdb will run into the ex_help breakpoint. The source window now shows the
|
||||
Gdb will run into the ex_help breakpoint. The source window now shows the
|
||||
ex_cmds.c file. A red "1 " marker will appear in the signcolumn where the
|
||||
breakpoint was set. The line where the debugger stopped is highlighted. You
|
||||
can now step through the program. Let's use the mouse: click on the "Next"
|
||||
@@ -1156,8 +1254,10 @@ gdb:
|
||||
`:Run` [args] run the program with [args] or the previous arguments
|
||||
`:Arguments` {args} set arguments for the next `:Run`
|
||||
|
||||
*:Break* set a breakpoint at the current line; a sign will be displayed
|
||||
*:Clear* delete the breakpoint at the current line
|
||||
*:Break* set a breakpoint at the cursor position
|
||||
:Break {position}
|
||||
set a breakpoint at the specified position
|
||||
*:Clear* delete the breakpoint at the cursor position
|
||||
|
||||
*:Step* execute the gdb "step" command
|
||||
*:Over* execute the gdb "next" command (`:Next` is a Vim command)
|
||||
|
||||
372
runtime/doc/testing.txt
Normal file
372
runtime/doc/testing.txt
Normal file
@@ -0,0 +1,372 @@
|
||||
*testing.txt* For Vim version 8.1. Last change: 2019 Sep 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
Testing Vim and Vim script *testing-support*
|
||||
|
||||
Expression evaluation is explained in |eval.txt|. This file goes into details
|
||||
about writing tests in Vim script. This can be used for testing Vim itself
|
||||
and for testing plugins.
|
||||
|
||||
1. Testing Vim |testing|
|
||||
2. Test functions |test-functions-details|
|
||||
3. Assert functions |assert-functions-details|
|
||||
|
||||
==============================================================================
|
||||
1. Testing Vim *testing*
|
||||
|
||||
Vim can be tested after building it, usually with "make test".
|
||||
The tests are located in the directory "src/testdir".
|
||||
|
||||
There are several types of tests added over time:
|
||||
test33.in oldest, don't add any of these
|
||||
test_something.in old style tests
|
||||
test_something.vim new style tests
|
||||
|
||||
*new-style-testing*
|
||||
New tests should be added as new style tests. These use functions such as
|
||||
|assert_equal()| to keep the test commands and the expected result in one
|
||||
place.
|
||||
*old-style-testing*
|
||||
In some cases an old style test needs to be used. E.g. when testing Vim
|
||||
without the |+eval| feature.
|
||||
|
||||
Find more information in the file src/testdir/README.txt.
|
||||
|
||||
==============================================================================
|
||||
2. Test functions *test-functions-details*
|
||||
|
||||
test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
|
||||
This is for testing: If the memory allocation with {id} is
|
||||
called, then decrement {countdown}, and when it reaches zero
|
||||
let memory allocation fail {repeat} times. When {repeat} is
|
||||
smaller than one it fails one time.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetAllocId()->test_alloc_fail()
|
||||
|
||||
test_autochdir() *test_autochdir()*
|
||||
Set a flag to enable the effect of 'autochdir' before Vim
|
||||
startup has finished.
|
||||
|
||||
|
||||
test_feedinput({string}) *test_feedinput()*
|
||||
Characters in {string} are queued for processing as if they
|
||||
were typed by the user. This uses a low level input buffer.
|
||||
This function works only when with |+unix| or GUI is running.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->test_feedinput()
|
||||
|
||||
test_garbagecollect_now() *test_garbagecollect_now()*
|
||||
Like garbagecollect(), but executed right away. This must
|
||||
only be called directly to avoid any structure to exist
|
||||
internally, and |v:testing| must have been set before calling
|
||||
any function.
|
||||
|
||||
|
||||
test_garbagecollect_soon() *test_garbagecollect_soon()*
|
||||
Set the flag to call the garbagecollector as if in the main
|
||||
loop. Only to be used in tests.
|
||||
|
||||
|
||||
test_getvalue({name}) *test_getvalue()*
|
||||
Get the value of an internal variable. These values for
|
||||
{name} are supported:
|
||||
need_fileinfo
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetName()->test_getvalue()
|
||||
|
||||
test_ignore_error({expr}) *test_ignore_error()*
|
||||
Ignore any error containing {expr}. A normal message is given
|
||||
instead.
|
||||
This is only meant to be used in tests, where catching the
|
||||
error with try/catch cannot be used (because it skips over
|
||||
following code).
|
||||
{expr} is used literally, not as a pattern.
|
||||
When the {expr} is the string "RESET" then the list of ignored
|
||||
errors is made empty.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetErrorText()->test_ignore_error()
|
||||
|
||||
test_null_blob() *test_null_blob()*
|
||||
Return a |Blob| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_channel() *test_null_channel()*
|
||||
Return a |Channel| that is null. Only useful for testing.
|
||||
{only available when compiled with the +channel feature}
|
||||
|
||||
|
||||
test_null_dict() *test_null_dict()*
|
||||
Return a |Dict| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_job() *test_null_job()*
|
||||
Return a |Job| that is null. Only useful for testing.
|
||||
{only available when compiled with the +job feature}
|
||||
|
||||
|
||||
test_null_list() *test_null_list()*
|
||||
Return a |List| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_partial() *test_null_partial()*
|
||||
Return a |Partial| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_string() *test_null_string()*
|
||||
Return a |String| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_option_not_set({name}) *test_option_not_set()*
|
||||
Reset the flag that indicates option {name} was set. Thus it
|
||||
looks like it still has the default value. Use like this: >
|
||||
set ambiwidth=double
|
||||
call test_option_not_set('ambiwidth')
|
||||
< Now the 'ambiwidth' option behaves like it was never changed,
|
||||
even though the value is "double".
|
||||
Only to be used for testing!
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetOptionName()->test_option_not_set()
|
||||
|
||||
|
||||
test_override({name}, {val}) *test_override()*
|
||||
Overrides certain parts of Vim's internal processing to be able
|
||||
to run tests. Only to be used for testing Vim!
|
||||
The override is enabled when {val} is non-zero and removed
|
||||
when {val} is zero.
|
||||
Current supported values for name are:
|
||||
|
||||
name effect when {val} is non-zero ~
|
||||
redraw disable the redrawing() function
|
||||
redraw_flag ignore the RedrawingDisabled flag
|
||||
char_avail disable the char_avail() function
|
||||
starting reset the "starting" variable, see below
|
||||
nfa_fail makes the NFA regexp engine fail to force a
|
||||
fallback to the old engine
|
||||
no_query_mouse do not query the mouse position for "dec"
|
||||
terminals
|
||||
no_wait_return set the "no_wait_return" flag. Not restored
|
||||
with "ALL".
|
||||
ALL clear all overrides ({val} is not used)
|
||||
|
||||
"starting" is to be used when a test should behave like
|
||||
startup was done. Since the tests are run by sourcing a
|
||||
script the "starting" variable is non-zero. This is usually a
|
||||
good thing (tests run faster), but sometimes changes behavior
|
||||
in a way that the test doesn't work properly.
|
||||
When using: >
|
||||
call test_override('starting', 1)
|
||||
< The value of "starting" is saved. It is restored by: >
|
||||
call test_override('starting', 0)
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetOverrideVal()-> test_override('starting')
|
||||
|
||||
test_refcount({expr}) *test_refcount()*
|
||||
Return the reference count of {expr}. When {expr} is of a
|
||||
type that does not have a reference count, returns -1. Only
|
||||
to be used for testing.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
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()*
|
||||
Set the mouse position to be used for the next mouse action.
|
||||
{row} and {col} are one based.
|
||||
For example: >
|
||||
call test_setmouse(4, 20)
|
||||
call feedkeys("\<LeftMouse>", "xt")
|
||||
|
||||
|
||||
test_settime({expr}) *test_settime()*
|
||||
Set the time Vim uses internally. Currently only used for
|
||||
timestamps in the history, as they are used in viminfo, and
|
||||
for undo.
|
||||
Using a value of 1 makes Vim not sleep after a warning or
|
||||
error message.
|
||||
{expr} must evaluate to a number. When the value is zero the
|
||||
normal behavior is restored.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetTime()->test_settime()
|
||||
|
||||
==============================================================================
|
||||
3. Assert functions *assert-functions-details*
|
||||
|
||||
|
||||
assert_beeps({cmd}) *assert_beeps()*
|
||||
Run {cmd} and add an error message to |v:errors| if it does
|
||||
NOT produce a beep or visual bell.
|
||||
Also see |assert_fails()| and |assert-return|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetCmd()->assert_beeps()
|
||||
<
|
||||
*assert_equal()*
|
||||
assert_equal({expected}, {actual} [, {msg}])
|
||||
When {expected} and {actual} are not equal an error message is
|
||||
added to |v:errors| and 1 is returned. Otherwise zero is
|
||||
returned |assert-return|.
|
||||
There is no automatic conversion, the String "4" is different
|
||||
from the Number 4. And the number 4 is different from the
|
||||
Float 4.0. The value of 'ignorecase' is not used here, case
|
||||
always matters.
|
||||
When {msg} is omitted an error in the form "Expected
|
||||
{expected} but got {actual}" is produced.
|
||||
Example: >
|
||||
assert_equal('foo', 'bar')
|
||||
< Will result in a string to be added to |v:errors|:
|
||||
test.vim line 12: Expected 'foo' but got 'bar' ~
|
||||
|
||||
Can also be used as a |method|: >
|
||||
mylist->assert_equal([1, 2, 3])
|
||||
|
||||
|
||||
< *assert_equalfile()*
|
||||
assert_equalfile({fname-one}, {fname-two})
|
||||
When the files {fname-one} and {fname-two} do not contain
|
||||
exactly the same text an error message is added to |v:errors|.
|
||||
Also see |assert-return|.
|
||||
When {fname-one} or {fname-two} does not exist the error will
|
||||
mention that.
|
||||
Mainly useful with |terminal-diff|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetLog()->assert_equalfile('expected.log')
|
||||
|
||||
|
||||
assert_exception({error} [, {msg}]) *assert_exception()*
|
||||
When v:exception does not contain the string {error} an error
|
||||
message is added to |v:errors|. Also see |assert-return|.
|
||||
This can be used to assert that a command throws an exception.
|
||||
Using the error number, followed by a colon, avoids problems
|
||||
with translations: >
|
||||
try
|
||||
commandthatfails
|
||||
call assert_false(1, 'command should have failed')
|
||||
catch
|
||||
call assert_exception('E492:')
|
||||
endtry
|
||||
|
||||
assert_fails({cmd} [, {error} [, {msg}]]) *assert_fails()*
|
||||
Run {cmd} and add an error message to |v:errors| if it does
|
||||
NOT produce an error. Also see |assert-return|.
|
||||
When {error} is given it must match in |v:errmsg|.
|
||||
Note that beeping is not considered an error, and some failing
|
||||
commands only beep. Use |assert_beeps()| for those.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetCmd()->assert_fails('E99:')
|
||||
|
||||
assert_false({actual} [, {msg}]) *assert_false()*
|
||||
When {actual} is not false an error message is added to
|
||||
|v:errors|, like with |assert_equal()|.
|
||||
Also see |assert-return|.
|
||||
A value is false when it is zero. When {actual} is not a
|
||||
number the assert fails.
|
||||
When {msg} is omitted an error in the form
|
||||
"Expected False but got {actual}" is produced.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetResult()->assert_false()
|
||||
|
||||
assert_inrange({lower}, {upper}, {actual} [, {msg}]) *assert_inrange()*
|
||||
This asserts number and |Float| values. When {actual} is lower
|
||||
than {lower} or higher than {upper} an error message is added
|
||||
to |v:errors|. Also see |assert-return|.
|
||||
When {msg} is omitted an error in the form
|
||||
"Expected range {lower} - {upper}, but got {actual}" is
|
||||
produced.
|
||||
|
||||
*assert_match()*
|
||||
assert_match({pattern}, {actual} [, {msg}])
|
||||
When {pattern} does not match {actual} an error message is
|
||||
added to |v:errors|. Also see |assert-return|.
|
||||
|
||||
{pattern} is used as with |=~|: The matching is always done
|
||||
like 'magic' was set and 'cpoptions' is empty, no matter what
|
||||
the actual value of 'magic' or 'cpoptions' is.
|
||||
|
||||
{actual} is used as a string, automatic conversion applies.
|
||||
Use "^" and "$" to match with the start and end of the text.
|
||||
Use both to match the whole text.
|
||||
|
||||
When {msg} is omitted an error in the form
|
||||
"Pattern {pattern} does not match {actual}" is produced.
|
||||
Example: >
|
||||
assert_match('^f.*o$', 'foobar')
|
||||
< Will result in a string to be added to |v:errors|:
|
||||
test.vim line 12: Pattern '^f.*o$' does not match 'foobar' ~
|
||||
|
||||
Can also be used as a |method|: >
|
||||
getFile()->assert_match('foo.*')
|
||||
<
|
||||
*assert_notequal()*
|
||||
assert_notequal({expected}, {actual} [, {msg}])
|
||||
The opposite of `assert_equal()`: add an error message to
|
||||
|v:errors| when {expected} and {actual} are equal.
|
||||
Also see |assert-return|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
mylist->assert_notequal([1, 2, 3])
|
||||
|
||||
< *assert_notmatch()*
|
||||
assert_notmatch({pattern}, {actual} [, {msg}])
|
||||
The opposite of `assert_match()`: add an error message to
|
||||
|v:errors| when {pattern} matches {actual}.
|
||||
Also see |assert-return|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
getFile()->assert_notmatch('bar.*')
|
||||
|
||||
|
||||
assert_report({msg}) *assert_report()*
|
||||
Report a test failure directly, using {msg}.
|
||||
Always returns one.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetMessage()->assert_report()
|
||||
|
||||
|
||||
assert_true({actual} [, {msg}]) *assert_true()*
|
||||
When {actual} is not true an error message is added to
|
||||
|v:errors|, like with |assert_equal()|.
|
||||
Also see |assert-return|.
|
||||
A value is TRUE when it is a non-zero number. When {actual}
|
||||
is not a number the assert fails.
|
||||
When {msg} is omitted an error in the form "Expected True but
|
||||
got {actual}" is produced.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetResult()->assert_true()
|
||||
<
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
@@ -1,4 +1,4 @@
|
||||
*textprop.txt* For Vim version 8.1. Last change: 2019 Jun 13
|
||||
*textprop.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -6,13 +6,6 @@
|
||||
|
||||
Displaying text with properties attached. *textprop* *text-properties*
|
||||
|
||||
THIS IS UNDER DEVELOPMENT - ANYTHING MAY STILL CHANGE *E967*
|
||||
|
||||
What is not working yet:
|
||||
- Adjusting column/length when inserting text
|
||||
- Text properties spanning more than one line
|
||||
- prop_find()
|
||||
|
||||
|
||||
1. Introduction |text-prop-intro|
|
||||
2. Functions |text-prop-functions|
|
||||
@@ -52,11 +45,11 @@ A text property has these fields:
|
||||
|
||||
Property Types ~
|
||||
*E971*
|
||||
A text property normally has the name of a property type, which defines
|
||||
A text property normally has the name of a property type, which defines
|
||||
how to highlight the text. The property type can have these entries:
|
||||
"highlight" name of the highlight group to use
|
||||
"combine" when TRUE the text property highlighting is combined
|
||||
with any syntax highlighting, when omitted or FALSE the
|
||||
"combine" when omitted or TRUE the text property highlighting is
|
||||
combined with any syntax highlighting; when FALSE the
|
||||
text property highlighting replaces the syntax
|
||||
highlighting
|
||||
"priority" when properties overlap, the one with the highest
|
||||
@@ -94,6 +87,12 @@ and/or ends with a specific character, such as the quote surrounding a string.
|
||||
Nevertheless, when text is inserted or deleted the text may need to be parsed
|
||||
and the text properties updated. But this can be done asynchronously.
|
||||
|
||||
|
||||
Internal error *E967*
|
||||
|
||||
If you see E967, please report the bug. You can do this at Github:
|
||||
https://github.com/vim/vim/issues/new
|
||||
|
||||
==============================================================================
|
||||
2. Functions *text-prop-functions*
|
||||
|
||||
@@ -116,6 +115,221 @@ prop_list({lnum} [, {props}) text properties in {lnum}
|
||||
prop_remove({props} [, {lnum} [, {lnum-end}]])
|
||||
remove a text property
|
||||
|
||||
*prop_add()* *E965*
|
||||
prop_add({lnum}, {col}, {props})
|
||||
Attach a text property at position {lnum}, {col}. {col} is
|
||||
counted in bytes, use one for the first column.
|
||||
If {lnum} is invalid an error is given. *E966*
|
||||
If {col} is invalid an error is given. *E964*
|
||||
|
||||
{props} is a dictionary with these fields:
|
||||
length length of text in bytes, can only be used
|
||||
for a property that does not continue in
|
||||
another line; can be zero
|
||||
end_lnum line number for the end of text
|
||||
end_col column just after the text; not used when
|
||||
"length" is present; when {col} and "end_col"
|
||||
are equal, and "end_lnum" is omitted or equal
|
||||
to {lnum}, this is a zero-width text property
|
||||
bufnr buffer to add the property to; when omitted
|
||||
the current buffer is used
|
||||
id user defined ID for the property; when omitted
|
||||
zero is used
|
||||
type name of the text property type
|
||||
All fields except "type" are optional.
|
||||
|
||||
It is an error when both "length" and "end_lnum" or "end_col"
|
||||
are given. Either use "length" or "end_col" for a property
|
||||
within one line, or use "end_lnum" and "end_col" for a
|
||||
property that spans more than one line.
|
||||
When neither "length" nor "end_col" are given the property
|
||||
will be zero-width. That means it will not be highlighted but
|
||||
will move with the text, as a kind of mark.
|
||||
The property can end exactly at the last character of the
|
||||
text, or just after it. In the last case, if text is appended
|
||||
to the line, the text property size will increase, also when
|
||||
the property type does not have "end_incl" set.
|
||||
|
||||
"type" will first be looked up in the buffer the property is
|
||||
added to. When not found, the global property types are used.
|
||||
If not found an error is given.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetLnum()->prop_add(col, props)
|
||||
|
||||
|
||||
prop_clear({lnum} [, {lnum-end} [, {props}]]) *prop_clear()*
|
||||
Remove all text properties from line {lnum}.
|
||||
When {lnum-end} is given, remove all text properties from line
|
||||
{lnum} to {lnum-end} (inclusive).
|
||||
|
||||
When {props} contains a "bufnr" item use this buffer,
|
||||
otherwise use the current buffer.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetLnum()->prop_clear()
|
||||
<
|
||||
*prop_find()*
|
||||
prop_find({props} [, {direction}])
|
||||
{not implemented yet}
|
||||
Search for a text property as specified with {props}:
|
||||
id property with this ID
|
||||
type property with this type name
|
||||
bufnr buffer to search in; when present a
|
||||
start position with "lnum" and "col"
|
||||
must be given; when omitted the
|
||||
current buffer is used
|
||||
lnum start in this line (when omitted start
|
||||
at the cursor)
|
||||
col start at this column (when omitted
|
||||
and "lnum" is given: use column 1,
|
||||
otherwise start at the cursor)
|
||||
skipstart do not look for a match at the start
|
||||
position
|
||||
|
||||
{direction} can be "f" for forward and "b" for backward. When
|
||||
omitted forward search is performed.
|
||||
|
||||
If a match is found then a Dict is returned with the entries
|
||||
as with prop_list(), and additionally an "lnum" entry.
|
||||
If no match is found then an empty Dict is returned.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_list({lnum} [, {props}]) *prop_list()*
|
||||
Return a List with all text properties in line {lnum}.
|
||||
|
||||
When {props} contains a "bufnr" item, use this buffer instead
|
||||
of the current buffer.
|
||||
|
||||
The properties are ordered by starting column and priority.
|
||||
Each property is a Dict with these entries:
|
||||
col starting column
|
||||
length length in bytes, one more if line break is
|
||||
included
|
||||
id property ID
|
||||
type name of the property type, omitted if
|
||||
the type was deleted
|
||||
start when TRUE property starts in this line
|
||||
end when TRUE property ends in this line
|
||||
|
||||
When "start" is zero the property started in a previous line,
|
||||
the current one is a continuation.
|
||||
When "end" is zero the property continues in the next line.
|
||||
The line break after this line is included.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetLnum()->prop_list()
|
||||
<
|
||||
*prop_remove()* *E968*
|
||||
prop_remove({props} [, {lnum} [, {lnum-end}]])
|
||||
Remove a matching text property from line {lnum}. When
|
||||
{lnum-end} is given, remove matching text properties from line
|
||||
{lnum} to {lnum-end} (inclusive).
|
||||
When {lnum} is omitted remove matching text properties from
|
||||
all lines.
|
||||
|
||||
{props} is a dictionary with these fields:
|
||||
id remove text properties with this ID
|
||||
type remove text properties with this type name
|
||||
bufnr use this buffer instead of the current one
|
||||
all when TRUE remove all matching text properties,
|
||||
not just the first one
|
||||
A property matches when either "id" or "type" matches.
|
||||
If buffer "bufnr" does not exist you get an error message.
|
||||
If buffer "bufnr" is not loaded then nothing happens.
|
||||
|
||||
Returns the number of properties that were removed.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetProps()->prop_remove()
|
||||
|
||||
|
||||
prop_type_add({name}, {props}) *prop_type_add()* *E969* *E970*
|
||||
Add a text property type {name}. If a property type with this
|
||||
name already exists an error is given. Nothing is returned.
|
||||
{props} is a dictionary with these optional fields:
|
||||
bufnr define the property only for this buffer; this
|
||||
avoids name collisions and automatically
|
||||
clears the property types when the buffer is
|
||||
deleted.
|
||||
highlight name of highlight group to use
|
||||
priority when a character has multiple text
|
||||
properties the one with the highest priority
|
||||
will be used; negative values can be used, the
|
||||
default priority is zero
|
||||
combine when TRUE combine the highlight with any
|
||||
syntax highlight; when omitted or FALSE syntax
|
||||
highlight will not be used
|
||||
start_incl when TRUE inserts at the start position will
|
||||
be included in the text property
|
||||
end_incl when TRUE inserts at the end position will be
|
||||
included in the text property
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPropName()->prop_type_add(props)
|
||||
|
||||
prop_type_change({name}, {props}) *prop_type_change()*
|
||||
Change properties of an existing text property type. If a
|
||||
property with this name does not exist an error is given.
|
||||
The {props} argument is just like |prop_type_add()|.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPropName()->prop_type_change(props)
|
||||
|
||||
prop_type_delete({name} [, {props}]) *prop_type_delete()*
|
||||
Remove the text property type {name}. When text properties
|
||||
using the type {name} are still in place, they will not have
|
||||
an effect and can no longer be removed by name.
|
||||
|
||||
{props} can contain a "bufnr" item. When it is given, delete
|
||||
a property type from this buffer instead of from the global
|
||||
property types.
|
||||
|
||||
When text property type {name} is not found there is no error.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPropName()->prop_type_delete()
|
||||
|
||||
prop_type_get([{name} [, {props}]) *prop_type_get()*
|
||||
Returns the properties of property type {name}. This is a
|
||||
dictionary with the same fields as was given to
|
||||
prop_type_add().
|
||||
When the property type {name} does not exist, an empty
|
||||
dictionary is returned.
|
||||
|
||||
{props} can contain a "bufnr" item. When it is given, use
|
||||
this buffer instead of the global property types.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPropName()->prop_type_get()
|
||||
|
||||
prop_type_list([{props}]) *prop_type_list()*
|
||||
Returns a list with all property type names.
|
||||
|
||||
{props} can contain a "bufnr" item. When it is given, use
|
||||
this buffer instead of the global property types.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. When text changes *text-prop-changes*
|
||||
|
||||
@@ -126,6 +340,11 @@ will move accordingly.
|
||||
When text is deleted and a text property no longer includes any text, it is
|
||||
deleted. However, a text property that was defined as zero-width will remain,
|
||||
unless the whole line is deleted.
|
||||
*E275*
|
||||
When a buffer is unloaded, all the text properties are gone. There is no way
|
||||
to store the properties in a file. You can only re-create them. When a
|
||||
buffer is hidden the text is preserved and so are the text properties. It is
|
||||
not possible to add text properties to an unloaded buffer.
|
||||
|
||||
When using replace mode, the text properties stay on the same character
|
||||
positions, even though the characters themselves change.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,53 +38,21 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Ongoing work on text properties, see src/textprop.c
|
||||
|
||||
Popup windows are being implemented, see |popup-window|.
|
||||
|
||||
Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
|
||||
20)
|
||||
Also put :argadd commands at the start for all buffers, so that their order
|
||||
remains equal? Then %argdel to clean it up. Do try this with 'hidden' set.
|
||||
|
||||
Listener causes extra } to be inserted. (Paul Jolly, #4455)
|
||||
|
||||
Refactor: Move common things out of evalfunc.c, it's too big.
|
||||
|
||||
Template string: review #4491
|
||||
|
||||
Terminal test fails when vim is configured with some features. (Dominique,
|
||||
#4597)
|
||||
|
||||
Popup windows:
|
||||
- Use popup (or popup menu) for command line completion
|
||||
- Implement flip option
|
||||
- Have a way to scroll to the bottom? (#4577)
|
||||
- Why does 'nrformats' leak from the popup window buffer???
|
||||
- Disable commands, feedkeys(), CTRL-W, etc. in a popup window.
|
||||
Use ERROR_IF_POPUP_WINDOW for more commands.
|
||||
- Add 'balloonpopup': instead of showing text, let the callback open a popup
|
||||
window and return the window ID. The popup will then be closed when the
|
||||
mouse moves, except when it moves inside the popup.
|
||||
- For the "moved" property also include mouse movement?
|
||||
- Can the buffer be re-used if it was the last one, to avoid using up lots of
|
||||
buffer numbers?
|
||||
- Have an option to attach the popup to a text position, like text properties
|
||||
do. (#4560)
|
||||
- Make redrawing more efficient and avoid flicker:
|
||||
- put popup menu also put in popup_mask?
|
||||
- Invoke filter with character before mapping?
|
||||
- Figure out the size and position better.
|
||||
if wrapping splits a double-wide character
|
||||
if wrapping inserts indent
|
||||
- When drawing on top half a double-wide character, display ">" or "<" in the
|
||||
incomplete cell.
|
||||
- Use a popup window for the "info" item of completion instead of using a
|
||||
preview window. Ideas in issue #4544.
|
||||
How to add highlighting?
|
||||
- put popup menu also in popup_mask?
|
||||
- Any other commands to disable in a popup window?
|
||||
Use ERROR_IF_POPUP_WINDOW for these.
|
||||
- Figure out the size and position better if wrapping inserts indent
|
||||
|
||||
'incsearch' with :s: (#3321)
|
||||
- Get E20 when using command history to get "'<,'>s/a/b" and no Visual area
|
||||
was set. (#3837)
|
||||
Text properties:
|
||||
- Implement prop_find() issue #4970
|
||||
- Text properties spanning more than one line
|
||||
- See remarks at top of src/textprop.c
|
||||
|
||||
'incsearch' with :s:
|
||||
- :s/foo using CTRL-G moves to another line, should not happen, or use the
|
||||
correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
|
||||
- :s@pat/tern@ doesn't include "/" in the pattern. (Takahiro Yoshihara, #3637)
|
||||
@@ -96,7 +64,7 @@ Popup windows:
|
||||
Then :%s?foo should take the first match above the cursor line.
|
||||
|
||||
Prompt buffer:
|
||||
- Add a command line history.
|
||||
- Add a command line history, using up/down keys. issue #5010
|
||||
- delay next prompt until plugin gives OK?
|
||||
- add prompt_addtext({buf}, {expr}) none add text to a prompt buffer
|
||||
|
||||
@@ -109,15 +77,13 @@ Terminal debugger:
|
||||
- Termdebug does not work when Vim was build with mzscheme: gdb hangs just
|
||||
after "run". Everything else works, including communication channel. Not
|
||||
initializing mzscheme avoid the problem, thus it's not some #ifdef.
|
||||
- Add support for lldb? #3565
|
||||
- Add support for lldb? issue #3565
|
||||
- Could we do something similar for debugging Vim scripts? At least see the
|
||||
script while stepping through it. Simple version would use an extra window.
|
||||
More complete solution would actually run Vim in a Terminal and control it
|
||||
with another Vim instance.
|
||||
|
||||
Terminal emulator window:
|
||||
- When typing "exit" in a terminal window with a shell and it's the only
|
||||
window, should exit Vim instead of editing another buffer. (#4539)
|
||||
- When the job in the terminal doesn't use mouse events, let the scroll wheel
|
||||
scroll the scrollback, like a terminal does at the shell prompt. #2490
|
||||
And use modeless selection. #2962
|
||||
@@ -125,13 +91,10 @@ Terminal emulator window:
|
||||
be redrawn.
|
||||
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
||||
(#3327)
|
||||
- Terminal API: Add more functionality? (Ozaki Kiichi 2018 May 13, #2907)
|
||||
- GUI: hang until key typed. (#3530)
|
||||
- Allow for specifying the directory, with ++cwd={dir}.
|
||||
- With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
|
||||
#2977)
|
||||
- Add a way to make ":term cmd" run "cmd" in a shell, instead of executing it
|
||||
directly. Perhaps ":term ++shell cmd". (#3340)
|
||||
- When pasting should call vterm_keyboard_start_paste(), e.g. when using
|
||||
K_MIDDLEMOUSE, calling insert_reg().
|
||||
- Users expect parsing the :term argument like a shell does, also support
|
||||
@@ -150,40 +113,86 @@ Terminal emulator window:
|
||||
- When 'encoding' is not utf-8, or the job is using another encoding, setup
|
||||
conversions.
|
||||
|
||||
Error numbers available:
|
||||
E290, E292, E362, E366, E450, E451, E452,
|
||||
E453, E454, E460, E489, E491, E565, E578, E610, E611, E653,
|
||||
E654, E856, E857, E860, E861, E863, E889, E900
|
||||
|
||||
Running test_gui and test_gui_init with Motif sometimes kills the window
|
||||
manager. Problem with Motif? Now test_gui crashes in submenu_change().
|
||||
Athena is OK.
|
||||
Motif: Build on Ubuntu can't enter any text in dialog text fields.
|
||||
|
||||
Patch to properly break CJK lines: Anton Kochkov, #3875
|
||||
Flag in 'formatoptions' is not used in the tests.
|
||||
|
||||
undo result wrong: Masato Nishihata, #4798
|
||||
|
||||
Undo puts cursor in wrong line after "cG<Esc>" undo.
|
||||
|
||||
Sound: support on Mac? Or does libcanberra work there?
|
||||
|
||||
Patch to use forward slash for completion even when 'shellslash' is set.
|
||||
Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612)
|
||||
|
||||
Patch to add win_splitmove() function. (Andy Massimino, #4561)
|
||||
Patch to fix session file when using multiple tab pages. (Jason Franklin, 2019
|
||||
May 20)
|
||||
Also put :argadd commands at the start for all buffers, so that their order
|
||||
remains equal? Then %argdel to clean it up. Do try this with 'hidden' set.
|
||||
Also #4994: window-local options not always restored, related to using :badd.
|
||||
Also #5326: netrw buffers are not restored.
|
||||
|
||||
Completion mixes results from the current buffer with tags and other files.
|
||||
Happens when typing CTRL-N while still search for results. E.g., type "b_" in
|
||||
terminal.c and then CTRL-N twice.
|
||||
Happens when typing CTRL-N while still searching for results. E.g., type "b_"
|
||||
in terminal.c and then CTRL-N twice.
|
||||
Should do current file first and not split it up when more results are found.
|
||||
(Also #1890)
|
||||
|
||||
Patch to use timers in matchparen. (Daniel Hahler, #1338)
|
||||
Ready to include now?
|
||||
|
||||
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
|
||||
(#4087)
|
||||
|
||||
Patch to the code to get sign information. (Yegappan Lakshmanan, #4586)
|
||||
Instead of using a syntax error, use #error to fail early when something is
|
||||
wrong. E.g. in vim.h "Error:", and blowfish.c "error!". (#5299)
|
||||
|
||||
":helptags ALL" should skip directories where "tags" cannot be written.
|
||||
(Matěj Cepl, #5026)
|
||||
|
||||
":bnext" in a help buffer is supposed to go to the next help buffer, but it
|
||||
goes to any buffer, and then :bnext skips help buffers, since they are
|
||||
unlisted. (#4478)
|
||||
|
||||
Problem with German spell file. Hint for solution by Klaus-Peter Schreiner in
|
||||
#4314, solves the Rasenmäher problem.
|
||||
Enable 'termbidi' if $VTE_VERSION >= 5703 ?
|
||||
|
||||
Universal solution to detect if t_RS is working, using cursor position.
|
||||
Koichi Iwamoto, #2126
|
||||
|
||||
The :syntax cchar value can only be a single character. It would be useful to
|
||||
support combining characters. (Charles Campbell) Also #4687
|
||||
|
||||
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
|
||||
It can replace the BeOS code, which is likely not used anymore.
|
||||
Now on github: #1856. Updated Oct 2017
|
||||
Got permission to include this under the Vim license.
|
||||
|
||||
Result of synID() sometimes wrong in help files. (#5252)
|
||||
|
||||
Problem showing a line if the number column width changes when using "o".
|
||||
(Mateusz Morusiewicz, #4245)
|
||||
|
||||
When using :packadd for a replacement language plugin, it is loaded after the
|
||||
default one. #4698
|
||||
|
||||
When using :packadd files under "later" are not used, which is inconsistent
|
||||
with packages under "start". (xtal8, #1994)
|
||||
|
||||
Patch to add new motion ]( and ]{. (Yasuhiro Matsumoto, #5320)
|
||||
|
||||
Modeless selection doesn't work in gvim. (#4783)
|
||||
Caused by patch 8.1.1534.
|
||||
|
||||
Visual highlight not removed when 'dipslay' is "lastline" and line doesn't
|
||||
fit. (Kevin Lawler, #4457)
|
||||
|
||||
Patch to add per-tabpage and per-window previous directory: "lcd -" and "tcd
|
||||
-". (Yegappan Lakshmanan, #4362)
|
||||
|
||||
Does not build with MinGW out of the box:
|
||||
- _stat64 is not defined, need to use "struct stat" in vim.h
|
||||
- WINVER conflict, should use 0x0600 by default?
|
||||
@@ -191,11 +200,55 @@ Does not build with MinGW out of the box:
|
||||
Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
|
||||
13, #2910) Can't reproduce?
|
||||
|
||||
Columns and Rows are long, they should be int.
|
||||
Patch to configure BUILD_DATE for reproducible builds. (James McCoy, #513)
|
||||
|
||||
Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
|
||||
|
||||
Patch to support "0o" for octal numbers. (Ken Takata, #5304)
|
||||
|
||||
When getting a focus event halfway a mapping this aborts the mapping. E.g.
|
||||
when "qq" is mapped and after the first "q" the mouse is moved outside of the
|
||||
gvim window (with focus follows mouse), then the K_FOCUSLOST key is put in the
|
||||
input buffer. (#5302)
|
||||
|
||||
xterm should be able to pass focus changes to Vim, so that Vim can check for
|
||||
buffers that changed. Perhaps in misc.c, function selectwindow().
|
||||
Xterm 224 supports it!
|
||||
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
|
||||
Saito, 2013 Apr 24) Update 2016 Aug 12.
|
||||
Also see issue #609.
|
||||
We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
|
||||
|
||||
Check_external_diff() is used too often. (Daniel Hahler, #4800)
|
||||
|
||||
Win32: after "[I" showing matches, scroll wheel messes up screen. (Tsakiridis,
|
||||
2007 Feb 18)
|
||||
Patch by Alex Dobrynin, 2007 Jun 3. Also fixes other scroll wheel problems.
|
||||
|
||||
Add a WindowScrolled event. Trigger around the same time as CursorMoved.
|
||||
Can be used to update highlighting. #3127 #5181
|
||||
|
||||
Patch for Template string: #4491. New pull: #4634
|
||||
Implementation is too inefficient, avoid using lambda.
|
||||
|
||||
Incorrect formatting with autoindent. (Sebastian Gniazdowski, #4909)
|
||||
|
||||
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
|
||||
Updated 2016 Jun 10, #858 Update 2017 Mar 28: use <buffer>
|
||||
|
||||
Errors found with random data:
|
||||
heap-buffer-overflow in alist_add (#2472)
|
||||
|
||||
Patch to support CamelCase for spell checking: See a lower-to-upper case
|
||||
change as a word boundary. (btucker-MPCData, 2016 Nov 6, #1235)
|
||||
patch for 'spellcamelcase' option: spellcheck each CamelCased word.
|
||||
(Ben Tucker, 2016 Dec 2)
|
||||
|
||||
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
|
||||
Update 2016 Jun 10, #861
|
||||
|
||||
Patch to add "cmdline" completion to getcompletion(). (Shougo, Oct 1, #1140)
|
||||
|
||||
Improve fallback for menu translations, to avoid having to create lots of
|
||||
files that source the actual file. E.g. menu_da_de -> menu_da
|
||||
Include part of #3242?
|
||||
@@ -203,33 +256,103 @@ Include part of #3242?
|
||||
When a terminal exit_cb closes the window, a following typed key is lost, if
|
||||
it's in a mapping. (2018 Oct 6, #2302, #3522)
|
||||
|
||||
Patch for Inno Setup: #2739
|
||||
Patch to have text objects defined by arbitrary single characters. (Daniel
|
||||
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
|
||||
Added tests (James McCoy, 2016 Aug 3, #958). Still needs more work.
|
||||
|
||||
Patch for multi-byte characters in langmap and applying a mapping on them.
|
||||
(Christian Brabandt, 2015 Jun 12, update July 25)
|
||||
Is this the right solution? Need to cleanup langmap behavior:
|
||||
- in vgetorpeek() apply langmap to the typeahead buffer and put the result in
|
||||
a copy-buffer, only when langmap is appropriate for the current mode. Then
|
||||
check for mapping and let gotchars() work on the copy-buffer.
|
||||
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
|
||||
covered by the above change.
|
||||
So that replaying the register doesn't use keymap/langmap and still does the
|
||||
same thing. Remarks on PR #543 (Roland Puntaier).
|
||||
Also see #737: langmap not applied to replaying recording.
|
||||
|
||||
Would be nice to set tab-local values for 'diffexpr' and 'diffopt'. Use
|
||||
t:diffexpr_option t:diffopt_option? (#4782)
|
||||
|
||||
v:register isn't reset early enough, may be used by next command.
|
||||
(Andy Massimino, #5294, possible fix in #5305)
|
||||
|
||||
Internal diff doesn't handle binary file like external diff does. (Mike
|
||||
Williams, 2018 Oct 30)
|
||||
|
||||
'[ mark in wrong column after put. (#4776)
|
||||
|
||||
"exepath('bin/cmd')" does not work while ":!bin/cmd" does work.
|
||||
(Daniel Hahler, #4710) and executable('bin/cmd') returns 1
|
||||
|
||||
Error drawing the number column when 'cursorline' is set. (#3893)
|
||||
|
||||
Problem with :tlmenu: Detach item added with all modes? Issue #3563.
|
||||
|
||||
Add an argument to expandcmd() to expand like ":next" does.
|
||||
|
||||
When both "a" and "l" is in 'formatoptions' then auto-formatting also happens
|
||||
in a long line. #5189
|
||||
|
||||
The quoting of the [command] argument of :terminal is not clearly documented.
|
||||
Give a few examples. (#4288)
|
||||
|
||||
Opening a file with --remote-tab-silent that matches 'wildignore' does not
|
||||
work, results in (E479: No match". (#4610)
|
||||
|
||||
Patch for this (Tristan Konolige, #1011, only adds the option, no implem.):
|
||||
7 Add an option to add one pixel column to the character width? Lucida
|
||||
Console italic is wider than the normal font ("d" overlaps with next char).
|
||||
Opposite of 'linespace': 'columnspace'.
|
||||
|
||||
Bug: script written with "-W scriptout" contains Key codes, while the script
|
||||
read with "-s scriptin" expects escape codes. Probably "scriptout" needs to
|
||||
be adjusted. (Daniel Steinberg, 2019 Feb 24, #4041)
|
||||
|
||||
":registers" should indicate char/block/linewise. (Ayberk Aydin, #4546)
|
||||
Add a string to the 'display' option ("smoothscroll" ?) to make CTRL-E and
|
||||
CTRL-Y scroll one screen line, also if this means the first line doesn't start
|
||||
with the first character (like what happens with a last line that doesn't
|
||||
fit). Display "<<<" at the start of the first visible line (like "@@@" is
|
||||
displayed in the last line). (Arseny Nasokin, #5154)
|
||||
|
||||
Patch for ambiguous width characters in libvterm on MS-Windows 10.
|
||||
(Nobuhiro Takasaki, #4411)
|
||||
|
||||
Window size changes after closing a tab. (#4741)
|
||||
|
||||
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
|
||||
|
||||
Lifepillar: Updated/cleaned up color schemes:
|
||||
https://github.com/lifepillar/vim8-colorschemes.
|
||||
|
||||
Include a few color schemes, based on popularity:
|
||||
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
||||
http://vimawesome.com/?q=tag:color-scheme
|
||||
Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||
- monokai - Xia Crusoe (2017 Aug 4)
|
||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||
Lifepillar, 2018 Jan 22, #2573)
|
||||
- janah - Marco Hinz (2017 Aug 4)
|
||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||
Suggested by Hiroki Kokubun:
|
||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||
Include solarized color scheme?, it does not support termguicolors.
|
||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||
|
||||
Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
|
||||
Mar 5)
|
||||
|
||||
Many users don't like 'thesaurus' to match so many words. (#4667, #1611)
|
||||
- when the match with the first word is partial, don't add other words on that
|
||||
line.
|
||||
- support other file formats, such as comma separated. Indicate by a prefix
|
||||
to the file in the 'thesaurus' option.
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
(Jakson A. Aquino, 2006 Jun 14)
|
||||
|
||||
Some composing characters actually add a cell width to the character they are
|
||||
on top off, making the whole thing two characters wide. (#4526)
|
||||
|
||||
@@ -264,6 +387,9 @@ Support setting the character displayed below the last line? Neovim uses
|
||||
Check: __attribute__((format(printf, on semsg() and siemsg(). Where was this
|
||||
added?
|
||||
|
||||
Patch to add a flatten() function. #3676. Check that the doc explains the
|
||||
maxdepth argument (applies to the input "recursiveness").
|
||||
|
||||
Add test for urxvt mouse codes. Also test that mouse coordinates can be
|
||||
negative. (see #4326)
|
||||
|
||||
@@ -299,18 +425,14 @@ Not existing directory in CDPATH leads to two shell calls. (#4525)
|
||||
Use dict_iterate_start() / dict_iterate_next() instead of relying on the
|
||||
internals of the dict structure.
|
||||
|
||||
Running test_gui and test_gui_init with Motif sometimes kills the window
|
||||
manager. Problem with Motif? Now test_gui crashes in submenu_change().
|
||||
Athena is OK.
|
||||
Motif: Build on Ubuntu can't enter any text in dialog text fields.
|
||||
|
||||
nvo-mode mapping works on Windows, not on Linux. (#3678)
|
||||
|
||||
Missing tests for:
|
||||
- add_termcap_entry()
|
||||
|
||||
When using exclusive selection and vi" that fails, cursor moves to the left.
|
||||
Cursor should not move. (#4024)
|
||||
Redo only remembers the last change. Could use "{count}g." to redo an older
|
||||
change. How does the user know which change? At least have a way to list
|
||||
them: ":repeats". Add to history, like search history and command line history.
|
||||
|
||||
Incsearch test fails when locale is "C". (Dominique Pelle, #3986)
|
||||
Also run all tests with C locale?
|
||||
@@ -422,9 +544,6 @@ Patch to implement 'diffref' option. (#3535)
|
||||
Patch to specify color for cterm=underline and cterm=undercurl, like "guisp".
|
||||
Patch #2405 does something like this, but in the wrong way.
|
||||
|
||||
:pedit resets the 'buflisted' option unexpectedly. (Wang Shidong, 2018 Oct 12,
|
||||
#3536)
|
||||
|
||||
home_replace() uses $HOME instead of "homedir". (Cesar Martins, 2018 Aug 9)
|
||||
|
||||
When the status line uses term_gettitle(), it does not get updated when the
|
||||
@@ -433,9 +552,6 @@ How would we know that the status line needs to be updated?
|
||||
|
||||
Adjust windows installer explanation of behavior. (scootergrisen, #3310)
|
||||
|
||||
Set g:actual_curbuf when evaluating 'statusline', not just with an expression.
|
||||
(Daniel Hahler, 2018 Aug 8, #3299)
|
||||
|
||||
Update for xim-input-style help (Tony Mechelynck, 2019 Jan 10).
|
||||
Feedback from someone who uses this?
|
||||
|
||||
@@ -454,9 +570,6 @@ Further xdiff changes:
|
||||
|
||||
Difference between two regexp engines: #3373
|
||||
|
||||
Patch to properly break CJK lines: #3875
|
||||
Requires more tests. dbcs_ functions are not implemented.
|
||||
|
||||
Patch to add ch_listen() (Yasuhiro Matsumoto, 2018 Nov 26, #3639)
|
||||
What is the practical use for this?
|
||||
|
||||
@@ -464,19 +577,26 @@ When the last line wraps, selecting with the mouse below that line only
|
||||
includes the first screen line. (2018 Aug 23, #3368)
|
||||
|
||||
Refactored HTML indent file. (Michael Lee, #1821)
|
||||
Ask to write a test first.
|
||||
Asked to write a test.
|
||||
|
||||
MS-Windows: .lnk file not resolved properly when 'encoding' is set.
|
||||
(lkintact, 2018 Sep 22, #3473)
|
||||
|
||||
Merge checking for 'cursorline' and 'concealcursor', see neovim #9492.
|
||||
|
||||
Display error when a conceal match uses '\%>1l'. (#4854)
|
||||
|
||||
Add a windowID argument to placing a sign, so that it only shows up in one
|
||||
window for the buffer.
|
||||
|
||||
Request to add sign_setlist() to make it faster to add a lot of signs, e.g.
|
||||
when adding a sign for every quickfix entry. (#4557)
|
||||
|
||||
Win32 key codes are messy. Mike Williams tried to fix that, but now old
|
||||
mappings no longer work. Create a new terminal for the better solution?
|
||||
|
||||
Patch to "fix" 'visualbell'. Add option to set delay? (#1789)
|
||||
|
||||
Script generated by :mksession does not work well if there are windows with
|
||||
modified buffers
|
||||
change "silent only" into "silent only!"
|
||||
@@ -520,9 +640,9 @@ Patch to list user digraphs. (Christian Brabandt, 2012 Apr 14)
|
||||
Patch to add digraph() function. (Christian Brabandt, 2013 Aug 22, update Aug
|
||||
24)
|
||||
|
||||
Try out background make plugin:
|
||||
Try out background make plugin:
|
||||
https://github.com/AndrewVos/vim-make-background
|
||||
or asyncmake:
|
||||
or asyncmake:
|
||||
https://github.com/yegappan/asyncmake
|
||||
|
||||
Add a ModeChanged autocommand that has an argument indicating the old and new
|
||||
@@ -534,9 +654,6 @@ used for git temp files.
|
||||
|
||||
Cursor in wrong position when line wraps. (#2540)
|
||||
|
||||
Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
|
||||
#2546) Fixes #1057. Missing a test.
|
||||
|
||||
Setting 'columns' in a BufEnter autocommand causes a second tab width to
|
||||
behave strangely, as if there is a gap and a vertical window separator.
|
||||
(Michael Soyka, 2018 Sep 23, #3477)
|
||||
@@ -547,9 +664,6 @@ pass an expression to evaluate. Allow passing zero for "never skip".
|
||||
Add an option similar to 'lazyredraw' to skip redrawing while executing a
|
||||
script or function.
|
||||
|
||||
Universal solution to detect if t_RS is working, using cursor position.
|
||||
Koichi Iwamoto, #2126
|
||||
|
||||
When using a menu item while the "more" prompt is displayed doesn't work well.
|
||||
E.g. after using help->version. Have a key that ends the "more" prompt and
|
||||
does nothing otherwise?
|
||||
@@ -579,9 +693,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.
|
||||
(Oleg Koshovetc, 2018 Jul 15, #3214)
|
||||
|
||||
When using :packadd files under "later" are not used, which is inconsistent
|
||||
with packages under "start". (xtal8, #1994)
|
||||
|
||||
Patch to support "xxd -ps". (Erik Auerswald, 2018 May 1)
|
||||
Lacks a test.
|
||||
|
||||
@@ -723,7 +834,7 @@ Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
|
||||
MS-Windows: buffer completion doesn't work when using backslash (or slash)
|
||||
for a path separator. (xtal8, #2201)
|
||||
|
||||
Would be nice for insert mode completion to highlight the text that was added
|
||||
Would be nice for Insert mode completion to highlight the text that was added
|
||||
(and may change when picking another completion).
|
||||
|
||||
Test runtime files.
|
||||
@@ -746,32 +857,13 @@ The ":move" command does not honor closed folds. (Ryan Lue, #2351)
|
||||
Patch to fix increment/decrement not working properly when 'virtualedit' is
|
||||
set. (Hirohito Higashi, 2016 Aug 1, #923)
|
||||
|
||||
Patch to make gM move to middle of line. (Yasuhiro Matsumoto, Sep 8, #2070)
|
||||
|
||||
Cannot copy modeless selection when cursor is inside it. (lkintact, #2300)
|
||||
|
||||
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
|
||||
It can replace the BeOS code, which is likely not used anymore.
|
||||
Now on github: #1856. Updated Oct 2017
|
||||
Got permission to include this under the Vim license.
|
||||
|
||||
Test_writefile_fails_conversion failure on Solaris because if different iconv
|
||||
behavior. Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
|
||||
|
||||
'tagrelative' is broken in specific situation. (xaizek, 2017 Oct 19, #2221)
|
||||
|
||||
All functions are global, which makes functions like get() and len() awkward.
|
||||
For the future use the ~get() and ~len() syntax, e.g.:
|
||||
mylist~get(idx)
|
||||
mydict~get(idx)
|
||||
mystring~len()
|
||||
Alternatives for ~:
|
||||
^ list^get() could also be used
|
||||
. list.get() already means concatenate
|
||||
$ list$get() harder to read
|
||||
@ list@get() harder to read
|
||||
-> list->get() two characters, used for lambda
|
||||
|
||||
The ++ options for the :edit command are also useful on the Vim command line.
|
||||
|
||||
When recovering a file, put the swap file name in b:recovered_swapfile. Then
|
||||
@@ -791,22 +883,6 @@ Seems to happen when the selection is requested the second time, but before
|
||||
clip_x11_convert_selection_cb() is invoked, thus in X library code.
|
||||
Kazunobu Kuriyama is working on a proper fix. (2017 Jul 25)
|
||||
|
||||
Include a few color schemes, based on popularity:
|
||||
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
||||
http://vimawesome.com/?q=tag:color-scheme
|
||||
Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||
- monokai - Xia Crusoe (2017 Aug 4)
|
||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||
Lifepillar, 2018 Jan 22, #2573)
|
||||
- janah - Marco Hinz (2017 Aug 4)
|
||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||
Suggested by Hiroki Kokubun:
|
||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||
Include solarized color scheme?, it does not support termguicolors.
|
||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||
|
||||
Problem with three-piece comment. (Michael Lee, 2017 May 11, #1696)
|
||||
|
||||
Creating a partial with an autoload function is confused about the "self"
|
||||
@@ -879,8 +955,6 @@ Memory leak in test97? The string is actually freed. Weird.
|
||||
assert_fails() can only check for the first error. Make it possible to have
|
||||
it catch multiple errors and check all of them.
|
||||
|
||||
New value "uselast" for 'switchbuf'. (Lemonboy, 2017 Apr 23, #1652)
|
||||
|
||||
Add a toolbar in the terminal. Can be global, above all windows, or specific
|
||||
for one window.
|
||||
|
||||
@@ -968,10 +1042,6 @@ somewhere else. :{range}copy {dest} !cmd
|
||||
Patch to fix that empty first tab is not in session.
|
||||
(Hirohito Higashi, 2016 Nov 25, #1282)
|
||||
|
||||
Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
|
||||
Alternative from Christian Brabandt. (2010 Sep 19)
|
||||
New one from Yasuhiro Matsumoto, #1277.
|
||||
|
||||
Patch to fix escaping of job arguments. (Yasuhiro Matsumoto, 2016 Oct 5)
|
||||
Update Oct 14: https://gist.github.com/mattn/d47e7d3bfe5ade4be86062b565a4bfca
|
||||
Update Aug 2017: #1954
|
||||
@@ -1027,10 +1097,6 @@ Patch to make it possible to extend a list with itself.
|
||||
|
||||
Patch to add Zstandard compressed file support. (Nick Terrell, 2016 Oct 24)
|
||||
|
||||
Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
|
||||
|
||||
Patch to change argument of :marks. (LemonBoy, 2017 Jan 29, #1426)
|
||||
|
||||
On Windows buffer completion sees backslash as escape char instead of path
|
||||
separator. (Toffanim, 2016 Nov 24, #1274)
|
||||
|
||||
@@ -1050,6 +1116,10 @@ sort() is not stable when using numeric/float sort (Nikolay Pavlov, 2016 Sep
|
||||
4#1038)
|
||||
|
||||
+channel:
|
||||
- Add a in_cb, invoked when the write buffer has become empty. (Matteo Landi)
|
||||
- Add ch_readlines(): for a channel in NL mode, reads as many lines as are
|
||||
available. Should be more efficient than looping over ch_read() with
|
||||
ch_status() to check for more.
|
||||
- Add a separate timeout for opening a socket. Currently it's fixed at 50
|
||||
msec, which is too small for a remote connection. (tverniquet, #2130)
|
||||
- Problem with stderr on Windows? (Vincent Rischmann, 2016 Aug 31, #1026)
|
||||
@@ -1129,8 +1199,6 @@ Regexp problems:
|
||||
Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*')
|
||||
(2017 May 15, #1252)
|
||||
|
||||
Patch to add "cmdline" completion to getcompletion(). (Shougo, Oct 1, #1140)
|
||||
|
||||
Feature request: Complete members of a dictionary. (Luc Hermitte, 2017 Jan 4,
|
||||
#1350)
|
||||
|
||||
@@ -1146,11 +1214,6 @@ Include the test.
|
||||
When 'keywordprg' starts with ":" the argument is still escaped as a shell
|
||||
command argument. (Romain Lafourcade, 2016 Oct 16, #1175)
|
||||
|
||||
Patch to support CamelCase for spell checking: See a lower-to-upper case
|
||||
change as a word boundary. (btucker-MPCData, 2016 Nov 6, #1235)
|
||||
patch for 'spellcamelcase' option: spellcheck each CamelCased word.
|
||||
(Ben Tucker, 2016 Dec 2)
|
||||
|
||||
Idea from Sven: record sequence of keys. Useful to show others what they are
|
||||
doing (look over the shoulder), and also to see what happened.
|
||||
Probably list of keystrokes, with some annotations for mode changes.
|
||||
@@ -1233,9 +1296,6 @@ Reject the value? #710.
|
||||
When doing "vi buf.md" a BufNew autocommand for *.md is not triggered.
|
||||
Because of using the initial buffer? (Dun Peal, 2016 May 12)
|
||||
|
||||
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
|
||||
Updated 2016 Jun 10, #858 Update 2017 Mar 28: use <buffer>
|
||||
|
||||
Add redrawtabline command. (Naruhiko Nishino, 2016 Jun 11)
|
||||
|
||||
Neovim patch for utfc_ptr2char_len() https://github.com/neovim/neovim/pull/4574
|
||||
@@ -1297,10 +1357,6 @@ Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
|
||||
Test object i{ and it do not behave the same. #1379
|
||||
Do not include the linebreak at the start?
|
||||
|
||||
Patch to have text objects defined by arbitrary single characters. (Daniel
|
||||
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
|
||||
Added tests (James McCoy, 2016 Aug 3). Still needs more work.
|
||||
|
||||
Feature request: add the "al" text object, to manipulate a screen line.
|
||||
Especially useful when using 'linebreak'
|
||||
|
||||
@@ -1316,9 +1372,6 @@ If ":bd" also closes a Tab page then the " mark is not set. (Harm te Hennepe,
|
||||
Patch to avoid redrawing tabline when the popup menu is visible.
|
||||
(Christian Brabandt, 2016 Jan 28)
|
||||
|
||||
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
|
||||
Update 2016 Jun 10, #861
|
||||
|
||||
Patch to show search statistics. (Christian Brabandt, 2016 Jul 22)
|
||||
|
||||
When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
|
||||
@@ -1437,18 +1490,6 @@ Patch to fix checking global option value when not using it.
|
||||
When 'showbreak' is set repeating a Visual operation counts the size of the
|
||||
'showbreak' text as part of the operation. (Axel Bender, 2015 Jul 20)
|
||||
|
||||
Patch for multi-byte characters in langmap and applying a mapping on them.
|
||||
(Christian Brabandt, 2015 Jun 12, update July 25)
|
||||
Is this the right solution? Need to cleanup langmap behavior:
|
||||
- in vgetorpeek() apply langmap to the typeahead buffer and put the result in
|
||||
a copy-buffer, only when langmap is appropriate for the current mode. Then
|
||||
check for mapping and let gotchars() work on the copy-buffer.
|
||||
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
|
||||
covered by the above change.
|
||||
So that replaying the register doesn't use keymap/langmap and still does the
|
||||
same thing. Remarks on issue 543 (Roland Puntaier).
|
||||
Also see #737: langmap not applied to replaying recording.
|
||||
|
||||
Patch to add grepfile(). (Scott Prager, 2015 May 26)
|
||||
Work in progress.
|
||||
|
||||
@@ -1521,10 +1562,6 @@ Patch for building a 32bit Vim with 64bit MingW compiler.
|
||||
Patch: On MS-Windows shellescape() may have to triple double quotes.
|
||||
(Ingo Karkat, 2015 Jan 16)
|
||||
|
||||
Redo only remembers the last change. Could use "{count}g." to redo an older
|
||||
change. How does the user know which change? At least have a way to list
|
||||
them: ":repeats".
|
||||
|
||||
Patch for glob(), adding slash to normal files. (Ingo Karkat, 2014 Dec 22)
|
||||
|
||||
When entering and leaving the preview window autocommands are triggered, but
|
||||
@@ -1561,14 +1598,6 @@ compatible with Vim spell files. The old files can no longer be downloaded.
|
||||
Spell checking: Add a feature to only consider two spaces after a dot to start
|
||||
a new sentence. Don't give the capitalization error when there is one space.
|
||||
|
||||
xterm should be able to pass focus changes to Vim, so that Vim can check for
|
||||
buffers that changed. Perhaps in misc.c, function selectwindow().
|
||||
Xterm 224 supports it!
|
||||
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
|
||||
Saito, 2013 Apr 24) Update 2016 Aug 12.
|
||||
Also see issue #609.
|
||||
We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
|
||||
|
||||
Idea: For a window in the middle (has window above and below it), use
|
||||
right-mouse-drag on the status line to move a window up/down without changing
|
||||
its height? It's like dragging the status bar above it at the same time.
|
||||
@@ -1869,12 +1898,6 @@ Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
|
||||
only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
|
||||
21, Ben Fritz, 2010 Sep 14)
|
||||
|
||||
The :syntax cchar value can only be a single character. It would be useful to
|
||||
support combining characters. (Charles Campbell)
|
||||
|
||||
'cursorline' works on a text line only. Add 'cursorscreenline' for
|
||||
highlighting the screen line. (Christian Brabandt, 2012 Mar 31)
|
||||
|
||||
Win32: Patch to use task dialogs when available. (Sergiu Dotenco, 2011 Sep 17)
|
||||
New feature, requires testing. Made some remarks.
|
||||
|
||||
@@ -2118,10 +2141,6 @@ Looks like only bash can do it. (Yakov Lerner)
|
||||
Cscope "cs add" stopped working somewhat before 7.2.438. (Gary Johnson, 2010
|
||||
Jun 29) Caused by 7.2.433?
|
||||
|
||||
I often see pasted text (from Firefox, to Vim in xterm) appear twice.
|
||||
Also, Vim in xterm sometimes loses copy/paste ability (probably after running
|
||||
an external command).
|
||||
|
||||
Jumplist doesn't work properly in Insert mode? (Jean Johner, 2010 Mar 20)
|
||||
|
||||
Problem with transparent cmdline. Also: Terminal title is wrong with
|
||||
@@ -2489,7 +2508,7 @@ Works OK when 'cmdheight' is 2.
|
||||
Patch by Christian Brabandt, 2013 May 31.
|
||||
|
||||
The utf class table is missing some entries:
|
||||
0x2212, minus sign
|
||||
0x2212, minus sign
|
||||
0x2217, star
|
||||
0x2500, bar
|
||||
0x26ab, circle
|
||||
@@ -2684,10 +2703,6 @@ patches by Mathias, see mail Feb 22)
|
||||
Win32: compiling with normal features and OLE fails. Patch by Mathias
|
||||
Michaelis, 2006 Jun 4.
|
||||
|
||||
Win32: after "[I" showing matches, scroll wheel messes up screen. (Tsakiridis,
|
||||
2007 Feb 18)
|
||||
Patch by Alex Dobrynin, 2007 Jun 3. Also fixes other scroll wheel problems.
|
||||
|
||||
Win32: using CTRL-S in Insert mode doesn't remove the "+" from the tab pages
|
||||
label. (Tsakiridis, 2007 Feb 18) Patch from Ian Kelling, 2008 Aug 6.
|
||||
|
||||
@@ -2717,10 +2732,6 @@ If the variable "g:x#y#z" exists completion after ":echo g:x#" doesn't work.
|
||||
Feature request: Command to go to previous tab, like what CTRL-W p does for
|
||||
windows. (Adam George)
|
||||
|
||||
F1 - F4 in an xterm produce a different escape sequence when used with a
|
||||
modifier key. Need to catch three different sequences. Use K_ZF1, like
|
||||
K_ZHOME? (Dickey, 2007 Dec 2)
|
||||
|
||||
In debug mode, using CTRL-R = to evaluate a function causes stepping through
|
||||
the function. (Hari Krishna Dara, 2006 Jun 28)
|
||||
|
||||
@@ -2770,7 +2781,7 @@ Ruby completion is insecure. Can this be fixed?
|
||||
|
||||
When 'backupskip' is set from $TEMP special characters need to be escaped.
|
||||
(patch by Grembowietz, 2007 Feb 26, not quite right)
|
||||
Another problem is that file_pat_to_reg_pat() doesn't recognize "\\", so "\\("
|
||||
Another problem is that file_pat_to_reg_pat() doesn't recognize "\\", so "\\("
|
||||
will be seen as a path separator plus "\(".
|
||||
|
||||
gvim d:\path\path\(FILE).xml should not remove the \ before the (.
|
||||
@@ -2855,12 +2866,6 @@ Setting 'background' resets the Normal background color:
|
||||
This is undesired, 'background' is supposed to tell Vim what the background
|
||||
color is, not reset it.
|
||||
|
||||
Linux distributions:
|
||||
- Suggest compiling xterm with --enable-tcap-query, so that nr of colors is
|
||||
known to Vim. 88 colors instead of 16 works better. See ":help
|
||||
xfree-xterm".
|
||||
- Suggest including bare "vi" and "vim" with X11, syntax, etc.
|
||||
|
||||
Completion menu: For a wrapping line, completing a long file name, only the
|
||||
start of the path is shown in the menu. Should move the menu to the right to
|
||||
show more text of the completions. Shorten the items that don't fit in the
|
||||
@@ -2875,12 +2880,6 @@ the buffer is displayed. (Antonios Tsakiridis)
|
||||
When ":cn" moves to an error in the same line the message isn't shortened.
|
||||
Only skip shortening for ":cc"?
|
||||
|
||||
Write "making vim work better" for the docs (mostly pointers): *nice*
|
||||
- sourcing $VIMRUNTIME/vimrc_example.vim
|
||||
- setting 'mouse' to "a"
|
||||
- getting colors in xterm
|
||||
- compiling Vim with X11, GUI, etc.
|
||||
|
||||
Problem with ":call" and dictionary function. Hari Krishna Dara, Charles
|
||||
Campbell 2006 Jul 06.
|
||||
|
||||
@@ -2974,11 +2973,6 @@ When 'encoding' is utf-8 typing text at the end of the line causes previously
|
||||
typed characters to be redrawn. Caused by patch 7.1.329. (Tyler Spivey, 2008
|
||||
Sep 3, 11)
|
||||
|
||||
When Vim in an xterm owns the selection and the user does ":shell" Vim doesn't
|
||||
respond to selection requests. Invoking XtDisownSelection() before executing
|
||||
the shell doesn't help. Would require forking and doing a message loop, like
|
||||
what happens for the GUI.
|
||||
|
||||
":vimgrep" does not recognize a recursive symlink. Is it possible to detect
|
||||
this, at least for Unix (using device/inode)?
|
||||
|
||||
@@ -3013,8 +3007,6 @@ More patches:
|
||||
- Add 'cscopeignorecase' option. (Liang Wenzhi, 2006 Sept 3)
|
||||
- Extra argument to strtrans() to translate special keys to their name (Eric
|
||||
Arnold, 2006 May 22)
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
(Jakson A. Aquino, 2006 Jun 14)
|
||||
- Mac: indicate whether a buffer was modified. (Nicolas Weber, 2006 Jun 30)
|
||||
- Allow negative 'nrwidth' for left aligning. (Nathan Laredo, 2006 Aug 16)
|
||||
- ml_append_string(): efficiently append to an existing line. (Brad
|
||||
@@ -3069,11 +3061,6 @@ Awaiting updated patches:
|
||||
use the patch that keeps using HLF_8 if HLF_WS has not
|
||||
been given values.
|
||||
Add section in help files for these highlight groups?
|
||||
8 "fg" and "bg" don't work in an xterm. Get default colors from xterm
|
||||
with an ESC sequence.
|
||||
xterm can send colors for many things. E.g. for the cursor:
|
||||
<Esc>]12;?<Bel>
|
||||
Can use this to get the background color and restore the colors on exit.
|
||||
7 Add "DefaultFG" and "DefaultBG" for the colors of the menu. (Marcin
|
||||
Dalecki has a patch for Motif and Carbon)
|
||||
- Add possibility to highlight specific columns (for Fortran). Or put a
|
||||
@@ -3275,9 +3262,6 @@ Win32 GUI known bugs:
|
||||
8 When the 'shell' cannot be executed, should give an appropriate error msg.
|
||||
Esp. for a filter command, currently it only complains the file could not
|
||||
be read.
|
||||
7 Add an option to add one pixel column to the character width? Lucida
|
||||
Console italic is wider than the normal font ("d" overlaps with next char).
|
||||
Opposite of 'linespace': 'columnspace'.
|
||||
7 At the hit-enter prompt scrolling now no longer works. Need to use the
|
||||
keyboard to get around this. Pretend <CR> was hit when the user tries to
|
||||
scroll?
|
||||
@@ -3670,7 +3654,6 @@ Macintosh:
|
||||
8 Xterm sends ^[[H for <Home> and ^[[F for <End> in some mode. Also
|
||||
recognize these keys? Mostly useful for xterm simulators, like gnometerm.
|
||||
See http://dickey.his.com/xterm/xterm.faq.html#xterm_pc_style.
|
||||
8 For xterm also recognize keypad up/down/left/right and insert.
|
||||
8 '[ and '] should be set to start/end of line when using a linewise operator
|
||||
(e.g., ":w").
|
||||
8 CTRL-A can't handle big "long" numbers, they become negative. Check for
|
||||
@@ -3685,10 +3668,6 @@ Macintosh:
|
||||
filesystem, an illegal file name may be created: ".vim".
|
||||
8 For each buffer that is opened, the viminfo file is opened and read to
|
||||
check for file marks. This can be slow.
|
||||
7 In xterm, recognize both vt100 and vt220 cursor keys. Change
|
||||
add_termcode() to not remove an existing entry for a name, when it's
|
||||
needed.
|
||||
Need a generic solution to recognize different codes for the same key.
|
||||
8 Core dump within signal function: gdb doesn't show stack backtrace! Option
|
||||
to skip catch_signals()?
|
||||
9 Repeating a "cw" with "." doesn't work if the text was pasted from the
|
||||
@@ -3969,7 +3948,7 @@ Tab pages:
|
||||
|
||||
Spell checking:
|
||||
- Support more regions? Caolan McNamara argues it's needed for es_XX.
|
||||
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=219777
|
||||
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=219777
|
||||
- Unicode defines another quote character: 0x2019. Use it as an equivalent
|
||||
of a single quote, thus use it as a word character like a quote and match
|
||||
with words, replacing the curly quote with a single quote.
|
||||
@@ -4359,8 +4338,6 @@ Vim script language:
|
||||
to avoid a performance penalty (esp. for string options)?
|
||||
8 Add referring to key options with "&t_xx". Both for "echo &t_xx" and
|
||||
":let &t_xx =". Useful for making portable mappings.
|
||||
- Add ":let var ?= value", conditional assignment. Patch by Dave Eggum,
|
||||
2006 Dec 11.
|
||||
- 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.
|
||||
@@ -4622,9 +4599,6 @@ Messages:
|
||||
|
||||
|
||||
Screen updating:
|
||||
7 Add a string to the 'display' option to make CTRL-E and CTRL-Y scroll one
|
||||
screen line, also if this means the first line doesn't start with the
|
||||
first character (like what happens with a single line that doesn't fit).
|
||||
- screen_line():
|
||||
- insert/delete character stuff.
|
||||
- improve delete rest of line (spaces at end of line).
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*uganda.txt* For Vim version 8.1. Last change: 2018 May 17
|
||||
*uganda.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -216,7 +216,7 @@ Check the ICCF web site for the latest information! See |iccf| for the URL.
|
||||
USA: The methods mentioned below can be used.
|
||||
Sending a check to the Nehemiah Group Outreach Society (NGOS)
|
||||
is no longer possible, unfortunately. We are looking for
|
||||
another way to get you an IRS tax receipt.
|
||||
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.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*undo.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*undo.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -271,7 +271,7 @@ respectively:
|
||||
(the magic number at the start of the file is wrong), then
|
||||
this fails, unless the ! was added.
|
||||
If it exists and does look like an undo file it is
|
||||
overwritten. If there is no undo-history, nothing will be
|
||||
overwritten. If there is no undo-history, nothing will be
|
||||
written.
|
||||
Implementation detail: Overwriting happens by first deleting
|
||||
the existing file and then creating a new file with the same
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_01.txt* For Vim version 8.1. Last change: 2017 Jul 15
|
||||
*usr_01.txt* For Vim version 8.1. Last change: 2019 Nov 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -41,11 +41,11 @@ the commands and options used for it. Use these two commands:
|
||||
Press CTRL-O to jump back (repeat to go further back).
|
||||
|
||||
Many links are in vertical bars, like this: |bars|. The bars themselves may
|
||||
be hidden or invisible, see below. An option name, like 'number', a command
|
||||
be hidden or invisible; see below. An option name, like 'number', a command
|
||||
in double quotes like ":write" and any other word can also be used as a link.
|
||||
Try it out: Move the cursor to CTRL-] and press CTRL-] on it.
|
||||
|
||||
Other subjects can be found with the ":help" command, see |help.txt|.
|
||||
Other subjects can be found with the ":help" command; see |help.txt|.
|
||||
|
||||
The bars and stars are usually hidden with the |conceal| feature. They also
|
||||
use |hl-Ignore|, using the same color for the text as the background. You can
|
||||
@@ -101,14 +101,14 @@ For more info see |vimrc| and |compatible-default|.
|
||||
alternative called "evim" (easy Vim). This is still Vim, but used in
|
||||
a way that resembles a click-and-type editor like Notepad. It always
|
||||
stays in Insert mode, thus it feels very different. It is not
|
||||
explained in the user manual, since it should be mostly self
|
||||
explanatory. See |evim-keys| for details.
|
||||
explained in the user manual, since it should be mostly
|
||||
self-explanatory. See |evim-keys| for details.
|
||||
|
||||
==============================================================================
|
||||
*01.3* Using the Vim tutor *tutor* *vimtutor*
|
||||
|
||||
Instead of reading the text (boring!) you can use the vimtutor to learn your
|
||||
first Vim commands. This is a 30 minute tutorial that teaches the most basic
|
||||
first Vim commands. This is a 30-minute tutorial that teaches the most basic
|
||||
Vim functionality hands-on.
|
||||
|
||||
On Unix, if Vim has been properly installed, you can start it from the shell:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_02.txt* For Vim version 8.1. Last change: 2017 Mar 14
|
||||
*usr_02.txt* For Vim version 8.1. Last change: 2019 Nov 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -255,11 +255,11 @@ restores the character.
|
||||
|
||||
g intelligent turtle ~
|
||||
|
||||
The next u command restores the next-to-last character deleted:
|
||||
The next "u" command restores the next-to-last character deleted:
|
||||
|
||||
ng intelligent turtle ~
|
||||
|
||||
The next u command gives you the u, and so on:
|
||||
The next "u" command gives you the u, and so on:
|
||||
|
||||
ung intelligent turtle ~
|
||||
oung intelligent turtle ~
|
||||
@@ -375,7 +375,7 @@ To exit, use the "ZZ" command. This command writes the file and exits.
|
||||
Unlike many other editors, Vim does not automatically make a backup
|
||||
file. If you type "ZZ", your changes are committed and there's no
|
||||
turning back. You can configure the Vim editor to produce backup
|
||||
files, see |07.4|.
|
||||
files; see |07.4|.
|
||||
|
||||
|
||||
DISCARDING CHANGES
|
||||
@@ -398,7 +398,7 @@ message and refuse to exit:
|
||||
E37: No write since last change (use ! to override) ~
|
||||
|
||||
By specifying the override, you are in effect telling Vim, "I know that what
|
||||
I'm doing looks stupid, but I'm a big boy and really want to do this."
|
||||
I'm doing looks stupid, but I really want to do this."
|
||||
|
||||
If you want to continue editing with Vim: The ":e!" command reloads the
|
||||
original version of the file.
|
||||
@@ -551,7 +551,7 @@ Summary: *help-summary* >
|
||||
command argument %: >
|
||||
:help c_%
|
||||
|
||||
8) Ex-commands always start with ":", so to go to the :s command help: >
|
||||
8) Ex-commands always start with ":", so to go to the ":s" command help: >
|
||||
:help :s
|
||||
|
||||
9) Commands specifically for debugging start with ">". To go to the help
|
||||
@@ -561,22 +561,23 @@ Summary: *help-summary* >
|
||||
10) Key combinations. They usually start with a single letter indicating
|
||||
the mode for which they can be used. E.g.: >
|
||||
:help i_CTRL-X
|
||||
< takes you to the family of Ctrl-X commands for insert mode which can be
|
||||
used to auto complete different things. Note, that certain keys will
|
||||
< takes you to the family of CTRL-X commands for insert mode which can be
|
||||
used to auto-complete different things. Note, that certain keys will
|
||||
always be written the same, e.g. Control will always be CTRL.
|
||||
For normal mode commands there is no prefix and the topic is available at
|
||||
:h CTRL-<Letter>. E.g. >
|
||||
:help CTRL-W
|
||||
< In contrast >
|
||||
:help c_CTRL-R
|
||||
< will describe what the Ctrl-R does when entering commands in the Command
|
||||
< will describe what the CTRL-R does when entering commands in the Command
|
||||
line and >
|
||||
:help v_Ctrl-A
|
||||
:help v_CTRL-A
|
||||
< talks about incrementing numbers in visual mode and >
|
||||
:help g_CTRL-A
|
||||
< talks about the g<C-A> command (e.g. you have to press "g" then <Ctrl-A>).
|
||||
Here the "g" stand for the normal command "g" which always expects a second
|
||||
key before doing something similar to the commands starting with "z"
|
||||
< talks about the "g<C-A>" command (e.g. you have to press "g" then
|
||||
<CTRL-A>). Here the "g" stand for the normal command "g" which always
|
||||
expects a second key before doing something similar to the commands
|
||||
starting with "z"
|
||||
|
||||
11) Regexp items always start with /. So to get help for the "\+" quantifier
|
||||
in Vim regexes: >
|
||||
@@ -647,15 +648,16 @@ Summary: *help-summary* >
|
||||
< Also if you want to access a certain chapter in the help, the chapter
|
||||
number can be accessed directly like this: >
|
||||
:help 10.1
|
||||
< goes to chapter 10.1 in |usr_10.txt| and talks about recording macros.
|
||||
< which goes to chapter 10.1 in |usr_10.txt| and talks about recording
|
||||
macros.
|
||||
|
||||
19) Highlighting groups. Always start with hl-groupname. E.g. >
|
||||
:help hl-WarningMsg
|
||||
< talks about the WarningMsg highlighting group.
|
||||
|
||||
20) Syntax highlighting is namespaced to :syn-topic e.g. >
|
||||
20) Syntax highlighting is namespaced to :syn-topic. E.g. >
|
||||
:help :syn-conceal
|
||||
< talks about the conceal argument for the :syn command.
|
||||
< talks about the conceal argument for the ":syn" command.
|
||||
|
||||
21) Quickfix commands usually start with :c while location list commands
|
||||
usually start with :l
|
||||
@@ -688,7 +690,7 @@ Summary: *help-summary* >
|
||||
< takes you exactly to the description of the swap error message and >
|
||||
:help W10
|
||||
< talks about the warning "Changing a readonly file".
|
||||
Sometimes however, those error codes are not described, but rather are
|
||||
Sometimes, however, those error codes are not described, but rather are
|
||||
listed at the Vim command that usually causes this. So: >
|
||||
:help E128
|
||||
< takes you to the |:function| command
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_03.txt* For Vim version 8.1. Last change: 2017 Jul 21
|
||||
*usr_03.txt* For Vim version 8.1. Last change: 2019 Nov 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -81,8 +81,8 @@ The "$" command moves the cursor to the end of a line. If your keyboard has
|
||||
an <End> key it will do the same thing.
|
||||
|
||||
The "^" command moves to the first non-blank character of the line. The "0"
|
||||
command (zero) moves to the very first character of the line. The <Home> key
|
||||
does the same thing. In a picture:
|
||||
command (zero) moves to the very first character of the line, and the <Home>
|
||||
key does the same thing. In a picture:
|
||||
|
||||
^
|
||||
<------------
|
||||
@@ -221,7 +221,8 @@ you can see? This figure shows the three commands you can use:
|
||||
L --> | text sample text |
|
||||
+---------------------------+
|
||||
|
||||
Hints: "H" stands for Home, "M" for Middle and "L" for Last.
|
||||
Hints: "H" stands for Home, "M" for Middle and "L" for Last. Alternatively,
|
||||
"H" for high, "M" for Middle and "L" for low.
|
||||
|
||||
==============================================================================
|
||||
*03.6* Telling where you are
|
||||
@@ -298,22 +299,22 @@ To scroll one line at a time use CTRL-E (scroll up) and CTRL-Y (scroll down).
|
||||
Think of CTRL-E to give you one line Extra. (If you use MS-Windows compatible
|
||||
key mappings CTRL-Y will redo a change instead of scroll.)
|
||||
|
||||
To scroll forward by a whole screen (except for two lines) use CTRL-F. The
|
||||
other way is backward, CTRL-B is the command to use. Fortunately CTRL-F is
|
||||
Forward and CTRL-B is Backward, that's easy to remember.
|
||||
To scroll forward by a whole screen (except for two lines) use CTRL-F. To
|
||||
scroll backwards, use CTRL-B. These should be easy to remember: F for
|
||||
Forwards and B for Backwards.
|
||||
|
||||
A common issue is that after moving down many lines with "j" your cursor is at
|
||||
the bottom of the screen. You would like to see the context of the line with
|
||||
the cursor. That's done with the "zz" command.
|
||||
|
||||
+------------------+ +------------------+
|
||||
| some text | | some text |
|
||||
| some text | | some text |
|
||||
| some text | | some text |
|
||||
| some text | zz --> | line with cursor |
|
||||
| some text | | some text |
|
||||
| some text | | some text |
|
||||
| line with cursor | | some text |
|
||||
| earlier text | | earlier text |
|
||||
| earlier text | | earlier text |
|
||||
| earlier text | | earlier text |
|
||||
| earlier text | zz --> | line with cursor |
|
||||
| earlier text | | later text |
|
||||
| earlier text | | later text |
|
||||
| line with cursor | | later text |
|
||||
+------------------+ +------------------+
|
||||
|
||||
The "zt" command puts the cursor line at the top, "zb" at the bottom. There
|
||||
@@ -353,7 +354,7 @@ The "?" command works like "/" but searches backwards: >
|
||||
|
||||
The "N" command repeats the last search the opposite direction. Thus using
|
||||
"N" after a "/" command searches backwards, using "N" after "?" searches
|
||||
forward.
|
||||
forwards.
|
||||
|
||||
|
||||
IGNORING CASE
|
||||
@@ -462,8 +463,8 @@ really jump to that location. Or type more to change the search string.
|
||||
:set nowrapscan
|
||||
|
||||
This stops the search at the end of the file. Or, when you are searching
|
||||
backwards, at the start of the file. The 'wrapscan' option is on by default,
|
||||
thus searching wraps around the end of the file.
|
||||
backwards, it stops the search at the start of the file. The 'wrapscan'
|
||||
option is on by default, thus searching wraps around the end of the file.
|
||||
|
||||
|
||||
INTERMEZZO
|
||||
@@ -485,7 +486,8 @@ Vim. Example: >
|
||||
Go:set hlsearch<Esc>
|
||||
|
||||
"G" moves to the end of the file. "o" starts a new line, where you type the
|
||||
":set" command. You end insert mode with <Esc>. Then write the file: >
|
||||
":set" command. You end insert mode with <Esc>. Then write and close the
|
||||
file: >
|
||||
|
||||
ZZ
|
||||
|
||||
@@ -499,8 +501,8 @@ Regular expressions are an extremely powerful and compact way to specify a
|
||||
search pattern. Unfortunately, this power comes at a price, because regular
|
||||
expressions are a bit tricky to specify.
|
||||
In this section we mention only a few essential ones. More about search
|
||||
patterns and commands in chapter 27 |usr_27.txt|. You can find the full
|
||||
explanation here: |pattern|.
|
||||
patterns and commands can be found in chapter 27 |usr_27.txt|. You can find
|
||||
the full explanation here: |pattern|.
|
||||
|
||||
|
||||
BEGINNING AND END OF A LINE
|
||||
@@ -526,9 +528,9 @@ And with "/^the" we find this one:
|
||||
the solder holding one of the chips melted and the ~
|
||||
xxx
|
||||
|
||||
You can try searching with "/^the$", it will only match a single line
|
||||
consisting of "the". White space does matter here, thus if a line contains a
|
||||
space after the word, like "the ", the pattern will not match.
|
||||
You can try searching with "/^the$"; it will only match a single line
|
||||
consisting entirely of "the". White space does matter here, thus if a line
|
||||
contains a space after the word, like "the ", the pattern will not match.
|
||||
|
||||
|
||||
MATCHING ANY SINGLE CHARACTER
|
||||
@@ -563,20 +565,20 @@ where you came from, use this command: >
|
||||
|
||||
This ` is a backtick or open single-quote character.
|
||||
If you use the same command a second time you will jump back again. That's
|
||||
because the ` command is a jump itself, and the position from before this jump
|
||||
is remembered.
|
||||
because the "`" command is a jump itself, and the position from before this
|
||||
jump is remembered.
|
||||
|
||||
Generally, every time you do a command that can move the cursor further than
|
||||
within the same line, this is called a jump. This includes the search
|
||||
commands "/" and "n" (it doesn't matter how far away the match is). But not
|
||||
the character searches with "fx" and "tx" or the word movements "w" and "e".
|
||||
Also, "j" and "k" are not considered to be a jump. Even when you use a
|
||||
Also, "j" and "k" are not considered to be a jump, even when you use a
|
||||
count to make them move the cursor quite a long way away.
|
||||
|
||||
The `` command jumps back and forth, between two points. The CTRL-O command
|
||||
The "``" command jumps back and forth, between two points. The CTRL-O command
|
||||
jumps to older positions (Hint: O for older). CTRL-I then jumps back to newer
|
||||
positions (Hint: I is just next to O on the keyboard). Consider this sequence
|
||||
of commands: >
|
||||
positions (Hint: for many common keyboard layouts, I is just next to O).
|
||||
Consider this sequence of commands: >
|
||||
|
||||
33G
|
||||
/^The
|
||||
@@ -614,9 +616,9 @@ Thus to move to the a mark:
|
||||
>
|
||||
`a
|
||||
|
||||
The command 'mark (single quotation mark, or apostrophe) moves you to the
|
||||
beginning of the line containing the mark. This differs from the `mark
|
||||
command, which moves you to marked column.
|
||||
The command "'mark" (single quotation mark, or apostrophe) moves you to the
|
||||
beginning of the line containing the mark. This differs from the "`mark"
|
||||
command, which also moves you to the marked column.
|
||||
|
||||
The marks can be very useful when working on two related parts in a file.
|
||||
Suppose you have some text near the start of the file you need to look at,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_04.txt* For Vim version 8.1. Last change: 2014 Aug 29
|
||||
*usr_04.txt* For Vim version 8.1. Last change: 2019 Nov 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -33,7 +33,7 @@ using a count: "4x" deletes four characters.
|
||||
move word command. In fact, the "d" command may be followed by any motion
|
||||
command, and it deletes from the current location to the place where the
|
||||
cursor winds up.
|
||||
The "4w" command, for example, moves the cursor over four words. The d4w
|
||||
The "4w" command, for example, moves the cursor over four words. The "d4w"
|
||||
command deletes four words.
|
||||
|
||||
To err is human. To really foul up you need a computer. ~
|
||||
@@ -91,14 +91,14 @@ This "c2wbe<Esc>" contains these bits:
|
||||
be insert this text
|
||||
<Esc> back to Normal mode
|
||||
|
||||
If you have paid attention, you will have noticed something strange: The space
|
||||
before "human" isn't deleted. There is a saying that for every problem there
|
||||
is an answer that is simple, clear, and wrong. That is the case with the
|
||||
example used here for the "cw" command. The c operator works just like the
|
||||
d operator, with one exception: "cw". It actually works like "ce", change to
|
||||
end of word. Thus the space after the word isn't included. This is an
|
||||
exception that dates back to the old Vi. Since many people are used to it
|
||||
now, the inconsistency has remained in Vim.
|
||||
You will have noticed something strange: The space before "human" isn't
|
||||
deleted. There is a saying that for every problem there is an answer that is
|
||||
simple, clear, and wrong. That is the case with the example used here for the
|
||||
"cw" command. The c operator works just like the d operator, with one
|
||||
exception: "cw". It actually works like "ce", change to end of word. Thus
|
||||
the space after the word isn't included. This is an exception that dates back
|
||||
to the old Vi. Since many people are used to it now, the inconsistency has
|
||||
remained in Vim.
|
||||
|
||||
|
||||
MORE CHANGES
|
||||
@@ -114,7 +114,7 @@ Insert mode and append new text.
|
||||
SHORTCUTS
|
||||
|
||||
Some operator-motion commands are used so often that they have been given a
|
||||
single letter command:
|
||||
single-letter command:
|
||||
|
||||
x stands for dl (delete character under the cursor)
|
||||
X stands for dh (delete character left of the cursor)
|
||||
@@ -138,6 +138,7 @@ REPLACING WITH ONE CHARACTER
|
||||
The "r" command is not an operator. It waits for you to type a character, and
|
||||
will replace the character under the cursor with it. You could do the same
|
||||
with "cl" or with the "s" command, but with "r" you don't have to press <Esc>
|
||||
to get back out of insert mode.
|
||||
|
||||
there is somerhing grong here ~
|
||||
rT rt rw
|
||||
@@ -164,7 +165,7 @@ The "." command is one of the most simple yet powerful commands in Vim. It
|
||||
repeats the last change. For instance, suppose you are editing an HTML file
|
||||
and want to delete all the <B> tags. You position the cursor on the first <
|
||||
and delete the <B> with the command "df>". You then go to the < of the next
|
||||
</B> and kill it using the "." command. The "." command executes the last
|
||||
</B> and delete it using the "." command. The "." command executes the last
|
||||
change command (in this case, "df>"). To delete another tag, position the
|
||||
cursor on the < and use the "." command.
|
||||
|
||||
@@ -176,8 +177,8 @@ cursor on the < and use the "." command.
|
||||
f< find next < ------------->
|
||||
. repeat df> -->
|
||||
|
||||
The "." command works for all changes you make, except for the "u" (undo),
|
||||
CTRL-R (redo) and commands that start with a colon (:).
|
||||
The "." command works for all changes you make, except for "u" (undo), CTRL-R
|
||||
(redo) and commands that start with a colon (:).
|
||||
|
||||
Another example: You want to change the word "four" to "five". It appears
|
||||
several times in your text. You can do this quickly with this sequence of
|
||||
@@ -201,7 +202,8 @@ change. Then you can use Visual mode.
|
||||
You start Visual mode by pressing "v". You move the cursor over the text you
|
||||
want to work on. While you do this, the text is highlighted. Finally type
|
||||
the operator command.
|
||||
For example, to delete from halfway one word to halfway another word:
|
||||
For example, to delete from the middle of one word to the middle of another
|
||||
word:
|
||||
|
||||
This is an examination sample of visual mode ~
|
||||
---------->
|
||||
@@ -269,8 +271,8 @@ where they open a new line below or above the cursor.
|
||||
==============================================================================
|
||||
*04.5* Moving text
|
||||
|
||||
When you delete something with the "d", "x", or another command, the text is
|
||||
saved. You can paste it back by using the p command. (The Vim name for
|
||||
When you delete something with "d", "x", or another command, the text is
|
||||
saved. You can paste it back by using the "p" command. (The Vim name for
|
||||
this is put).
|
||||
Take a look at how this works. First you will delete an entire line, by
|
||||
putting the cursor on the line you want to delete and typing "dd". Now you
|
||||
@@ -362,11 +364,11 @@ Use "y$" to yank to the end of the line.
|
||||
|
||||
If you are using the GUI version of Vim (gvim), you can find the "Copy" item
|
||||
in the "Edit" menu. First select some text with Visual mode, then use the
|
||||
Edit/Copy menu. The selected text is now copied to the clipboard. You can
|
||||
paste the text in other programs. In Vim itself too.
|
||||
Edit/Copy menu item. The selected text is now copied to the clipboard. You
|
||||
can paste the text in other programs. In Vim itself too.
|
||||
|
||||
If you have copied text to the clipboard in another application, you can paste
|
||||
it in Vim with the Edit/Paste menu. This works in Normal mode and Insert
|
||||
it in Vim with the Edit/Paste menu item. This works in Normal mode and Insert
|
||||
mode. In Visual mode the selected text is replaced with the pasted text.
|
||||
|
||||
The "Cut" menu item deletes the text before it's put on the clipboard. The
|
||||
@@ -385,7 +387,7 @@ To put text from the clipboard back into the text: >
|
||||
"*p
|
||||
|
||||
This only works on versions of Vim that include clipboard support. More about
|
||||
the clipboard in section |09.3| and here: |clipboard|.
|
||||
the clipboard can be found in section |09.3| and here: |clipboard|.
|
||||
|
||||
==============================================================================
|
||||
*04.8* Text objects
|
||||
@@ -401,8 +403,8 @@ to do this: "daw".
|
||||
|
||||
The "d" of "daw" is the delete operator. "aw" is a text object. Hint: "aw"
|
||||
stands for "A Word". Thus "daw" is "Delete A Word". To be precise, the white
|
||||
space after the word is also deleted (the white space before the word at the
|
||||
end of the line).
|
||||
space after the word is also deleted (or the white space before the word if at
|
||||
the end of the line).
|
||||
|
||||
Using text objects is the third way to make changes in Vim. We already had
|
||||
operator-motion and Visual mode. Now we add operator-text object.
|
||||
@@ -429,11 +431,11 @@ sentence "Another line.":
|
||||
some text. ~
|
||||
|
||||
"cis" consists of the "c" (change) operator and the "is" text object. This
|
||||
stands for "Inner Sentence". There is also the "as" (a sentence) object. The
|
||||
difference is that "as" includes the white space after the sentence and "is"
|
||||
doesn't. If you would delete a sentence, you want to delete the white space
|
||||
at the same time, thus use "das". If you want to type new text the white
|
||||
space can remain, thus you use "cis".
|
||||
stands for "Inner Sentence". There is also the "as" ("A Sentence") object.
|
||||
The difference is that "as" includes the white space after the sentence and
|
||||
"is" doesn't. If you would delete a sentence, you want to delete the white
|
||||
space at the same time, thus use "das". If you want to type new text the
|
||||
white space can remain, thus you use "cis".
|
||||
|
||||
You can also use text objects in Visual mode. It will include the text object
|
||||
in the Visual selection. Visual mode continues, thus you can do this several
|
||||
@@ -470,13 +472,13 @@ character.
|
||||
*04.10* Conclusion
|
||||
|
||||
The operators, movement commands and text objects give you the possibility to
|
||||
make lots of combinations. Now that you know how it works, you can use N
|
||||
make lots of combinations. Now that you know how they work, you can use N
|
||||
operators with M movement commands to make N * M commands!
|
||||
|
||||
You can find a list of operators here: |operator|
|
||||
You can find a list of operators here: |operator|.
|
||||
|
||||
For example, there are many other ways to delete pieces of text. Here are a
|
||||
few often used ones:
|
||||
few common ones:
|
||||
|
||||
x delete character under the cursor (short for "dl")
|
||||
X delete character before the cursor (short for "dh")
|
||||
@@ -492,14 +494,14 @@ If you use "c" instead of "d" they become change commands. And with "y" you
|
||||
yank the text. And so forth.
|
||||
|
||||
|
||||
There are a few often used commands to make changes that didn't fit somewhere
|
||||
There are a few common commands to make changes that didn't fit somewhere
|
||||
else:
|
||||
|
||||
~ change case of the character under the cursor, and move the
|
||||
~ Change case of the character under the cursor, and move the
|
||||
cursor to the next character. This is not an operator (unless
|
||||
'tildeop' is set), thus you can't use it with a motion
|
||||
command. It does work in Visual mode and changes case for
|
||||
all the selected text then.
|
||||
command. It does work in Visual mode, where it changes case
|
||||
for all the selected text.
|
||||
|
||||
I Start Insert mode after moving the cursor to the first
|
||||
non-blank in the line.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_10.txt* For Vim version 8.1. Last change: 2006 Nov 05
|
||||
*usr_10.txt* For Vim version 8.1. Last change: 2019 Nov 22
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -370,7 +370,8 @@ into "barfoo".
|
||||
was specified in this example. This is different from ":substitute", which
|
||||
works on one line without a range.
|
||||
The command isn't perfect, since it also matches lines where "//" appears
|
||||
halfway a line, and the substitution will also take place before the "//".
|
||||
halfway through a line, and the substitution will also take place before the
|
||||
"//".
|
||||
|
||||
Just like with ":substitute", any pattern can be used. When you learn more
|
||||
complicated patterns later, you can use them here.
|
||||
@@ -634,8 +635,8 @@ using it. To check the current value of 'textwidth': >
|
||||
:set textwidth
|
||||
|
||||
Now lines will be broken to take only up to 72 characters. But when you
|
||||
insert text halfway a line, or when you delete a few words, the lines will get
|
||||
too long or too short. Vim doesn't automatically reformat the text.
|
||||
insert text halfway through a line, or when you delete a few words, the lines
|
||||
will get too long or too short. Vim doesn't automatically reformat the text.
|
||||
To tell Vim to format the current paragraph: >
|
||||
|
||||
gqap
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_22.txt* For Vim version 8.1. Last change: 2019 Apr 27
|
||||
*usr_22.txt* For Vim version 8.1. Last change: 2019 Dec 07
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -74,9 +74,9 @@ higher. Pressing "-" does the same thing, without the need to move to the
|
||||
You can press <F1> to get help on the things you can do in the netrw file
|
||||
browser. This is what you get: >
|
||||
|
||||
9. Directory Browsing netrw-browse netrw-dir netrw-list netrw-help
|
||||
9. Directory Browsing netrw-browse netrw-dir netrw-list netrw-help
|
||||
|
||||
MAPS netrw-maps
|
||||
MAPS netrw-maps
|
||||
<F1>.............Help.......................................|netrw-help|
|
||||
<cr>.............Browsing...................................|netrw-cr|
|
||||
<del>............Deleting Files or Directories..............|netrw-delete|
|
||||
|
||||
@@ -346,12 +346,13 @@ scroll:
|
||||
|
||||
g0 to first visible character in this line
|
||||
g^ to first non-blank visible character in this line
|
||||
gm to middle of this line
|
||||
gm to middle of screen line
|
||||
gM to middle of the text in this line
|
||||
g$ to last visible character in this line
|
||||
|
||||
|<-- window -->|
|
||||
some long text, part of which is visible ~
|
||||
g0 g^ gm g$
|
||||
|<-- window -->|
|
||||
some long text, part of which is visible in one line ~
|
||||
g0 g^ gm gM g$
|
||||
|
||||
|
||||
BREAKING AT WORDS *edit-no-break*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_27.txt* For Vim version 8.1. Last change: 2018 Jan 26
|
||||
*usr_27.txt* For Vim version 8.1. Last change: 2019 Jul 14
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -474,19 +474,19 @@ the line break happens, because all items mentioned so far don't match a line
|
||||
break.
|
||||
To check for a line break in a specific place, use the "\n" item: >
|
||||
|
||||
/the\nword
|
||||
/one\ntwo
|
||||
|
||||
This will match at a line that ends in "the" and the next line starts with
|
||||
"word". To match "the word" as well, you need to match a space or a line
|
||||
This will match at a line that ends in "one" and the next line starts with
|
||||
"two". To match "one two" as well, you need to match a space or a line
|
||||
break. The item to use for it is "\_s": >
|
||||
|
||||
/the\_sword
|
||||
/one\_stwo
|
||||
|
||||
To allow any amount of white space: >
|
||||
|
||||
/the\_s\+word
|
||||
/one\_s\+two
|
||||
|
||||
This also matches when "the " is at the end of a line and " word" at the
|
||||
This also matches when "one " is at the end of a line and " two" at the
|
||||
start of the next one.
|
||||
|
||||
"\s" matches white space, "\_s" matches white space or a line break.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Nov 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -796,6 +796,7 @@ Date and Time: *date-functions* *time-functions*
|
||||
getftime() get last modification time of a file
|
||||
localtime() get current time in seconds
|
||||
strftime() convert time to a string
|
||||
strptime() convert a date/time string to time
|
||||
reltime() get the current or elapsed time accurately
|
||||
reltimestr() convert reltime() result to a string
|
||||
reltimefloat() convert reltime() result to a Float
|
||||
@@ -856,6 +857,7 @@ Insert mode completion: *completion-functions*
|
||||
complete_check() check if completion should be aborted
|
||||
complete_info() get current completion information
|
||||
pumvisible() check if the popup menu is displayed
|
||||
pum_getpos() position and size of popup menu if visible
|
||||
|
||||
Folding: *folding-functions*
|
||||
foldclosed() check for a closed fold at a specific line
|
||||
@@ -902,6 +904,7 @@ Interactive: *interactive-functions*
|
||||
confirm() let the user make a choice
|
||||
getchar() get a character from the user
|
||||
getcharmod() get modifiers for the last typed character
|
||||
getmousepos() get last known mouse position
|
||||
feedkeys() put characters in the typeahead queue
|
||||
input() get a line from the user
|
||||
inputlist() let the user pick an entry from a list
|
||||
@@ -1015,8 +1018,10 @@ Signs: *sign-functions*
|
||||
sign_getplaced() get a list of placed signs
|
||||
sign_jump() jump to a sign
|
||||
sign_place() place a sign
|
||||
sign_placelist() place a list of signs
|
||||
sign_undefine() undefine a sign
|
||||
sign_unplace() unplace a sign
|
||||
sign_unplacelist() unplace a list of signs
|
||||
|
||||
Terminal window: *terminal-functions*
|
||||
term_start() open a terminal window and run a job
|
||||
|
||||
@@ -480,9 +480,9 @@ probably contains your vimrc file and other runtime files that you created, so
|
||||
be careful.
|
||||
|
||||
Else, if you installed Vim with the zip archives, the preferred way is to use
|
||||
the "uninstal" program (note the missing l at the end). You can find it in
|
||||
the same directory as the "install" program, e.g., "c:\vim\vim61". This
|
||||
should also work from the usual "install/remove software" page.
|
||||
the "uninstall" program. You can find it in the same directory as the
|
||||
"install" program, e.g., "c:\vim\vim61". This should also work from the usual
|
||||
"install/remove software" page.
|
||||
However, this only removes the registry entries for Vim. You have to
|
||||
delete the files yourself. Simply select the directory "vim\vim61" and delete
|
||||
it recursively. There should be no files there that you changed, but you
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user