mirror of
https://github.com/zoriya/vim.git
synced 2025-12-09 00:36:15 +00:00
Compare commits
994 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 | ||
|
|
1072768b91 | ||
|
|
e28cfb2812 | ||
|
|
247bf0de46 | ||
|
|
7780e5c1c5 | ||
|
|
b05caa782d | ||
|
|
3b849af90a | ||
|
|
7ba343e634 | ||
|
|
e089c3fd69 | ||
|
|
3dabd718f4 | ||
|
|
8a7383b6d2 | ||
|
|
0d07155c8b | ||
|
|
49fe95f225 | ||
|
|
9992244226 | ||
|
|
ee9e604124 | ||
|
|
3e35d05b1f | ||
|
|
3f3e954d96 | ||
|
|
d84b2c3d88 | ||
|
|
56a6312099 | ||
|
|
b3d17a20d2 | ||
|
|
5b19e5b919 | ||
|
|
899f20deae | ||
|
|
ec572ad6a6 | ||
|
|
6cc7e21412 | ||
|
|
c2f5054be9 | ||
|
|
28fc247f8d | ||
|
|
3940ec6d41 | ||
|
|
4f5b0e5355 | ||
|
|
437a746b4c | ||
|
|
b4d9b893d3 | ||
|
|
981d9dc8f3 | ||
|
|
b7ed839976 | ||
|
|
48ac671fe5 | ||
|
|
4e038571aa | ||
|
|
e809a4ed30 | ||
|
|
790c18bfa5 | ||
|
|
6bf2c6264b | ||
|
|
931a277145 | ||
|
|
6cb39f924a | ||
|
|
5ca1ac373a | ||
|
|
bc2cfe4672 | ||
|
|
0d702028fe | ||
|
|
e4b407f536 | ||
|
|
e296e3177b | ||
|
|
80edda1cf5 | ||
|
|
ba45f1f4fb | ||
|
|
435f9f06ca | ||
|
|
9ee3d161f7 | ||
|
|
d529ba58dc | ||
|
|
8531dc66e8 | ||
|
|
7866b87958 | ||
|
|
f8a0712655 | ||
|
|
a83e70000f | ||
|
|
5b8cfedfbd | ||
|
|
892ae723ab | ||
|
|
15e248e37f | ||
|
|
2e62b568e9 | ||
|
|
b60d8514b8 | ||
|
|
f9c85f580b | ||
|
|
548be7f126 | ||
|
|
4340fc95d5 | ||
|
|
13b47c37a6 | ||
|
|
d74af4227b | ||
|
|
711d02c96d | ||
|
|
8da4181631 | ||
|
|
4cd583c6da | ||
|
|
6efd76ae4a | ||
|
|
53a95d6584 | ||
|
|
68acb41f99 | ||
|
|
c2a4316500 | ||
|
|
88c47aa692 | ||
|
|
2eed9bafa0 | ||
|
|
6a7af8e2db | ||
|
|
5c381eb9e7 | ||
|
|
7d491c4253 | ||
|
|
6c6a603cd2 | ||
|
|
75fb0854e9 | ||
|
|
e96a2498f9 | ||
|
|
2b044ffb5a | ||
|
|
b2cda0dd1d | ||
|
|
e7eb92708e | ||
|
|
0a1f56fcfe | ||
|
|
7be3ab2589 | ||
|
|
0fcf26ba4f | ||
|
|
7a39dd7f00 | ||
|
|
c662ec9978 | ||
|
|
6c1e1570b1 | ||
|
|
adc6714aac | ||
|
|
dfc1455728 | ||
|
|
693f7dc818 | ||
|
|
405bb42734 | ||
|
|
75a1a9415b | ||
|
|
a3fce62c91 | ||
|
|
37e66cf0f6 | ||
|
|
e9726e31fe | ||
|
|
a956bf6ca3 | ||
|
|
4dff4aed09 | ||
|
|
bf8c3adef2 | ||
|
|
87652a7e3b | ||
|
|
db51730df1 | ||
|
|
517f71ab17 | ||
|
|
9b283523f2 | ||
|
|
394c5d8870 | ||
|
|
6e5000d493 | ||
|
|
ad24a71e22 | ||
|
|
ae943150d3 | ||
|
|
6313c4f41d | ||
|
|
eb2310d47d | ||
|
|
a730e55cc2 | ||
|
|
983f2f1403 | ||
|
|
8a5c7ef9bb | ||
|
|
8cdbd5b3c4 | ||
|
|
1c196e7b17 | ||
|
|
dc2ce58b5a | ||
|
|
f85e40afc2 | ||
|
|
6c17543b56 | ||
|
|
51c3131040 | ||
|
|
61eeeea8e6 | ||
|
|
a42d945efc | ||
|
|
26910de8b0 | ||
|
|
0331faf712 | ||
|
|
45aa07d3c1 | ||
|
|
b46fecd345 | ||
|
|
b6e3b88ec8 | ||
|
|
d7c9687947 | ||
|
|
bffc50494d | ||
|
|
0abb4273f6 | ||
|
|
9937a05543 | ||
|
|
dfa97f2aed | ||
|
|
fc06cbbf86 | ||
|
|
1755ec4278 | ||
|
|
650a63748c | ||
|
|
bd75b5333d | ||
|
|
2fc39aeeb5 | ||
|
|
d2cea96f6c | ||
|
|
0554fa478d | ||
|
|
f42397c395 | ||
|
|
21606676d9 | ||
|
|
b4086ffa32 | ||
|
|
a540f8aa3b | ||
|
|
37df9a4401 | ||
|
|
b53fb31a1e | ||
|
|
b0f94c1ff3 | ||
|
|
8d24104031 | ||
|
|
68d48f40a4 | ||
|
|
7c7f01e2b2 | ||
|
|
451d4b5b7c | ||
|
|
06e2c81f6d | ||
|
|
202d982b36 | ||
|
|
12ee7ff00b | ||
|
|
4c063a0dab | ||
|
|
640d4f0c97 | ||
|
|
82febc16e4 | ||
|
|
01257a7a8e | ||
|
|
3ff5f0f05d | ||
|
|
38ea784fec | ||
|
|
ac2450a9a8 | ||
|
|
80dad48c50 | ||
|
|
954bb06363 | ||
|
|
541faf7a73 | ||
|
|
a90998d93a | ||
|
|
b29cfb8c28 | ||
|
|
8ed75cb0b4 | ||
|
|
ef23c527bd | ||
|
|
ffa60dda0a | ||
|
|
427f5b66ce | ||
|
|
260addf795 | ||
|
|
21f8d93c71 | ||
|
|
24a5ac5d4d | ||
|
|
c024b46678 | ||
|
|
aef5c62a6f | ||
|
|
acc682bd7c | ||
|
|
1748c7f77e | ||
|
|
6c009a3974 | ||
|
|
33796b39b9 | ||
|
|
7c348bb5ad | ||
|
|
6064073841 | ||
|
|
4e0bf84627 | ||
|
|
64416127fc | ||
|
|
150f0550f4 | ||
|
|
62a88f498a | ||
|
|
1253704591 | ||
|
|
773a97c254 | ||
|
|
c07f67ad0e | ||
|
|
75ee544f99 | ||
|
|
5d30ff1964 | ||
|
|
f6d50f1da8 | ||
|
|
12e71eb8a8 | ||
|
|
8e228e21cc | ||
|
|
133c737357 | ||
|
|
18250e291a | ||
|
|
c7500f9cb5 | ||
|
|
9c0cec65f8 | ||
|
|
db294adc65 | ||
|
|
9aeb33639f | ||
|
|
4a792c87b9 | ||
|
|
61da1bfa6c | ||
|
|
de6dbb452a | ||
|
|
32e1977012 | ||
|
|
6d718c4c38 | ||
|
|
66761db11d | ||
|
|
d0380dc782 | ||
|
|
d6ec1730ba | ||
|
|
58a7f87c86 | ||
|
|
a37833dbd7 | ||
|
|
cea254f5a7 | ||
|
|
277e79adc4 | ||
|
|
c974022c31 | ||
|
|
ddd3308782 | ||
|
|
02e15072be | ||
|
|
3f6aeba18b | ||
|
|
0b4c9eddb5 | ||
|
|
87abab92f5 | ||
|
|
98fb65cb05 | ||
|
|
1762731f20 | ||
|
|
6116b6abb1 | ||
|
|
3397f74ac2 | ||
|
|
b0ebbda06c | ||
|
|
ca2f7037c1 | ||
|
|
399d898ac1 | ||
|
|
042fb4b449 | ||
|
|
988c43310a | ||
|
|
7b29dd8507 | ||
|
|
9eaac89650 | ||
|
|
790498b509 | ||
|
|
3bfd04e672 | ||
|
|
2fd8e35e16 | ||
|
|
8caaf82569 | ||
|
|
bf0eff0b72 | ||
|
|
2d247849ce | ||
|
|
c47ed44be7 | ||
|
|
815b76bff6 | ||
|
|
3a97bb3f0f | ||
|
|
7dd64a3e57 | ||
|
|
c28cb5b16d | ||
|
|
5d508dd39e | ||
|
|
1ab74a5af3 | ||
|
|
eea1699836 | ||
|
|
ccd6e3471d | ||
|
|
c6896e20f8 | ||
|
|
402502d0e4 | ||
|
|
ac1f1bc222 | ||
|
|
cc31ad9f9b | ||
|
|
54fabd4b5e | ||
|
|
b42301247d | ||
|
|
89adc3a137 | ||
|
|
5c3fb04623 | ||
|
|
cacc6a5c98 | ||
|
|
8c2a600f72 | ||
|
|
1714696600 | ||
|
|
88c4e1f069 | ||
|
|
68a4b04a8d | ||
|
|
868b7b6712 | ||
|
|
1bbebab525 | ||
|
|
bc133543b8 | ||
|
|
59edb00e22 | ||
|
|
c799fe206e | ||
|
|
b58a4b938c | ||
|
|
72fcf07b06 | ||
|
|
7833dab73c | ||
|
|
60cdb3004a | ||
|
|
b43683729b | ||
|
|
bf0ecb2cb6 | ||
|
|
7a8d0278bd | ||
|
|
2cd0dce898 | ||
|
|
68e6560b84 | ||
|
|
20c023aee0 | ||
|
|
9d591525a5 | ||
|
|
35d5af6c0b | ||
|
|
51fe3b14f6 | ||
|
|
076073950c | ||
|
|
9c27b1c6d1 | ||
|
|
ec58384afa | ||
|
|
a8c99fb78e | ||
|
|
80f95425cf | ||
|
|
193ffd1d9f | ||
|
|
adfde115d5 | ||
|
|
a5e44600eb | ||
|
|
51e14387f1 | ||
|
|
682725c141 | ||
|
|
4d784b21d1 | ||
|
|
8f46e4c4bd | ||
|
|
7b31a181c8 | ||
|
|
f0884c5f3f | ||
|
|
d79eef2eb1 | ||
|
|
18a4ba29ae | ||
|
|
71de720c2c | ||
|
|
964b3746b9 | ||
|
|
d33a764123 | ||
|
|
3020a87cb1 | ||
|
|
d22a6f8aaf | ||
|
|
fa8f861957 | ||
|
|
8239c62067 | ||
|
|
701ff0a3e5 | ||
|
|
fcc4d921d6 | ||
|
|
e2ad826f43 | ||
|
|
984f031fb0 | ||
|
|
c97582b029 | ||
|
|
0ab190c057 | ||
|
|
1c6fd1e100 | ||
|
|
99499b1c05 | ||
|
|
05b8b07e27 | ||
|
|
294d9bf966 | ||
|
|
e09244ee35 | ||
|
|
7e800c6047 | ||
|
|
110289e781 | ||
|
|
5357552140 | ||
|
|
5c017b2de2 | ||
|
|
e0b5949a3b | ||
|
|
c79745a82f | ||
|
|
0b0ad35c33 | ||
|
|
80341bcd89 | ||
|
|
f3333b02f3 | ||
|
|
386b43e594 | ||
|
|
999dc14644 | ||
|
|
8471e57026 | ||
|
|
16e9b85113 | ||
|
|
f5842c5a53 | ||
|
|
2b39d806f0 | ||
|
|
e9ebc9a91c | ||
|
|
338dfdad38 | ||
|
|
dc6855af97 | ||
|
|
cf0bfd9ade | ||
|
|
f8191c5f07 | ||
|
|
bd2d68c2f4 | ||
|
|
7f3a28490a | ||
|
|
6349e9411f | ||
|
|
0d3cb73012 | ||
|
|
8055d17388 | ||
|
|
787880a86d | ||
|
|
80e737cc6a | ||
|
|
bfd451283f | ||
|
|
dabfde04fe | ||
|
|
0ebe12be86 | ||
|
|
5c65e6a062 | ||
|
|
17aca707f9 | ||
|
|
dda4144d39 | ||
|
|
eda652215a | ||
|
|
45dd07f10a | ||
|
|
fe1ade0a78 | ||
|
|
fb222df28d |
1
.gitattributes
vendored
Normal file
1
.gitattributes
vendored
Normal file
@@ -0,0 +1 @@
|
||||
src/testdir/test42.in diff
|
||||
1
.github/FUNDING.yml
vendored
Normal file
1
.github/FUNDING.yml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
custom: https://www.vim.org/sponsor/index.php
|
||||
5
.gitignore
vendored
5
.gitignore
vendored
@@ -35,7 +35,9 @@ src/auto/pathdef.c
|
||||
*.RES
|
||||
vim*.dll
|
||||
vim*.lib
|
||||
src/pathdef.c
|
||||
src/dobj*/pathdef.c
|
||||
src/gobj*/pathdef.c
|
||||
src/obj*/pathdef.c
|
||||
src/Obj*/pathdef.c
|
||||
gvimext.dll
|
||||
gvimext.lib
|
||||
@@ -75,6 +77,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
|
||||
|
||||
@@ -37,7 +37,9 @@ src/auto/pathdef.c
|
||||
*.RES
|
||||
vim*.dll
|
||||
vim*.lib
|
||||
src/pathdef.c
|
||||
src/dobj*/pathdef.c
|
||||
src/gobj*/pathdef.c
|
||||
src/obj*/pathdef.c
|
||||
src/Obj*/pathdef.c
|
||||
gvimext.dll
|
||||
gvimext.lib
|
||||
|
||||
324
.travis.yml
324
.travis.yml
@@ -1,133 +1,116 @@
|
||||
language: c
|
||||
dist: trusty
|
||||
|
||||
os:
|
||||
- osx
|
||||
- linux
|
||||
anchors:
|
||||
envs:
|
||||
- &tiny-nogui
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=tiny "CONFOPT='--disable-gui'" SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- &tiny
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=tiny CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- &small
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=small CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- &normal
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=normal CONFOPT= SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow CHECK_AUTOCONF=no
|
||||
- &linux-huge
|
||||
BUILD=yes TEST="scripttests test_libvterm" COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp'"
|
||||
- &osx-huge # macOS build
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp --enable-tclinterp'"
|
||||
- &unittests
|
||||
BUILD=no TEST=unittests COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=yes
|
||||
- &asan # ASAN build
|
||||
SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize=address -fno-omit-frame-pointer"
|
||||
ASAN_OPTIONS="print_stacktrace=1 log_path=asan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt"
|
||||
|
||||
compiler:
|
||||
- clang
|
||||
- gcc
|
||||
linux: &linux
|
||||
os: linux
|
||||
dist: trusty
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
# Need msgfmt 0.19.8 to be able to generate .desktop files
|
||||
- sourceline: 'ppa:ricotz/toolchain'
|
||||
packages:
|
||||
- autoconf
|
||||
- clang
|
||||
- lcov
|
||||
- gettext
|
||||
- libcanberra-dev
|
||||
- libperl-dev
|
||||
- python-dev
|
||||
- python3-dev
|
||||
- liblua5.2-dev
|
||||
- lua5.2
|
||||
- ruby-dev
|
||||
- tcl-dev
|
||||
- cscope
|
||||
- libgtk2.0-dev
|
||||
- desktop-file-utils
|
||||
before_install:
|
||||
- rvm reset
|
||||
# Remove /opt/python/3.x.x/bin from $PATH for using system python3.
|
||||
# ("pyenv global system" doesn't seem to work.)
|
||||
- |
|
||||
if [[ "$(which python3)" =~ ^/opt/python/ ]]; then
|
||||
export PATH=$(py3=$(which python3); echo ${PATH//${py3%/python3}:/})
|
||||
fi
|
||||
- |
|
||||
if [[ "${COVERAGE}" = "yes" ]]; then
|
||||
pip install --user cpp-coveralls
|
||||
fi
|
||||
# needed for https support for coveralls
|
||||
# building cffi only works with gcc, not with clang
|
||||
- |
|
||||
if [[ "${COVERAGE}" = "yes" ]]; then
|
||||
CC=gcc pip install --user pyopenssl ndg-httpsclient pyasn1
|
||||
fi
|
||||
# Use llvm-cov instead of gcov when compiler is clang.
|
||||
- |
|
||||
if [[ "${CC}" = "clang" ]]; then
|
||||
ln -sf "$(which llvm-cov)" /home/travis/bin/gcov
|
||||
fi
|
||||
before_script:
|
||||
# Start virtual framebuffer to be able to test the GUI. Does not work on OS X.
|
||||
- export DISPLAY=:99.0
|
||||
- sh -e /etc/init.d/xvfb start && sleep 3
|
||||
- sudo modprobe snd-dummy
|
||||
- sudo usermod -a -G audio $USER
|
||||
- do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||
|
||||
env:
|
||||
- &tiny-nogui
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=tiny "CONFOPT='--disable-gui'" SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- &tiny
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=tiny CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- &asan # ASAN build
|
||||
BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize=address -fno-omit-frame-pointer"
|
||||
FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt"
|
||||
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp --enable-tclinterp'"
|
||||
- &linux-huge
|
||||
BUILD=yes TEST="scripttests test_libvterm" COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp'"
|
||||
- &unittests
|
||||
BUILD=no TEST=unittests COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=yes
|
||||
- &normal
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=normal CONFOPT= SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow CHECK_AUTOCONF=no
|
||||
- &small
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=small CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- &osx-huge # Mac OSX build
|
||||
BUILD=yes TEST=test COVERAGE=no FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp --enable-tclinterp'"
|
||||
osx: &osx
|
||||
os: osx
|
||||
addons:
|
||||
homebrew:
|
||||
packages:
|
||||
- lua
|
||||
update: true
|
||||
cache:
|
||||
directories:
|
||||
- /usr/local/Homebrew/Library/Homebrew/vendor/
|
||||
- /usr/local/Homebrew/Library/Taps/
|
||||
before_install:
|
||||
- rvm reset
|
||||
# Lua is not installed on Travis OSX
|
||||
- export LUA_PREFIX=/usr/local
|
||||
before_script:
|
||||
- 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
|
||||
- (cd "${SRCDIR}" && bash <(curl -s https://codecov.io/bash))
|
||||
|
||||
asan_symbolize: &asan_symbolize
|
||||
- |
|
||||
while read log; do
|
||||
asan_symbolize < "${log}"
|
||||
done < <(find . -type f -name 'asan.*' -size +0)
|
||||
|
||||
sudo: false
|
||||
|
||||
# instead of a 2*2*8 matrix (2*os + 2*compiler + 8*env),
|
||||
# exclude some builds on mac os x and linux
|
||||
# on mac os x "tiny" is always without GUI
|
||||
# linux: 2*compiler + 5*env + mac: 2*compiler + 2*env
|
||||
matrix:
|
||||
exclude:
|
||||
- os: osx
|
||||
env: *tiny
|
||||
- os: osx
|
||||
env: *normal
|
||||
- os: osx
|
||||
env: *unittests
|
||||
- os: osx
|
||||
env: *small
|
||||
- os: osx
|
||||
env: *linux-huge
|
||||
- os: osx
|
||||
env: *asan
|
||||
- os: linux
|
||||
compiler: clang
|
||||
env: *asan
|
||||
- os: linux
|
||||
compiler: clang
|
||||
env: *unittests
|
||||
- os: linux
|
||||
compiler: clang
|
||||
env: *small
|
||||
- os: linux
|
||||
env: *osx-huge
|
||||
|
||||
branches:
|
||||
except:
|
||||
- /^v[0-9]/
|
||||
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
# Need msgfmt 0.19.8 to be able to generate .desktop files
|
||||
- sourceline: 'ppa:ricotz/toolchain'
|
||||
packages:
|
||||
- autoconf
|
||||
- clang
|
||||
- lcov
|
||||
- gettext
|
||||
- libperl-dev
|
||||
- python-dev
|
||||
- python3-dev
|
||||
- liblua5.2-dev
|
||||
- lua5.2
|
||||
- ruby-dev
|
||||
- tcl-dev
|
||||
- cscope
|
||||
- libgtk2.0-dev
|
||||
homebrew:
|
||||
packages:
|
||||
- lua
|
||||
update: true
|
||||
|
||||
before_install:
|
||||
- rvm reset
|
||||
# Remove /opt/python/3.x.x/bin from $PATH for using system python3.
|
||||
# ("pyenv global system" doesn't seem to work.)
|
||||
- |
|
||||
if [[ "${TRAVIS_OS_NAME}" = "linux" ]] && [[ "$(which python3)" =~ ^/opt/python/ ]]; then
|
||||
export PATH=$(py3=$(which python3); echo ${PATH//${py3%/python3}:/})
|
||||
fi
|
||||
- |
|
||||
if [[ "${COVERAGE}" = "yes" ]]; then
|
||||
pip install --user cpp-coveralls
|
||||
fi
|
||||
# needed for https support for coveralls
|
||||
# building cffi only works with gcc, not with clang
|
||||
- |
|
||||
if [[ "${COVERAGE}" = "yes" ]]; then
|
||||
CC=gcc pip install --user pyopenssl ndg-httpsclient pyasn1
|
||||
fi
|
||||
# Lua is not installed on Travis OSX
|
||||
- |
|
||||
if [[ "${TRAVIS_OS_NAME}" = "osx" ]]; then
|
||||
export LUA_PREFIX=/usr/local
|
||||
fi
|
||||
# Use llvm-cov instead of gcov when compiler is clang.
|
||||
- |
|
||||
if [[ "${TRAVIS_OS_NAME}" = "linux" ]] && [[ "${CC}" = "clang" ]]; then
|
||||
ln -sf "$(which llvm-cov)" /home/travis/bin/gcov
|
||||
fi
|
||||
|
||||
before_script:
|
||||
# Start virtual framebuffer to be able to test the GUI. Does not work on OS X.
|
||||
- |
|
||||
if [[ "${TRAVIS_OS_NAME}" = "linux" ]]; then
|
||||
export DISPLAY=:99.0
|
||||
sh -e /etc/init.d/xvfb start && sleep 3
|
||||
fi
|
||||
|
||||
script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
- set -o errexit
|
||||
@@ -159,24 +142,91 @@ script:
|
||||
"${SRCDIR}"/vim --not-a-term -u NONE -S "${SRCDIR}"/testdir/if_ver-2.vim -c quit > /dev/null
|
||||
cat if_ver.txt
|
||||
fi
|
||||
- make ${SHADOWOPT} ${TEST}
|
||||
- echo -en "travis_fold:end:test\\r\\033[0K"
|
||||
- |
|
||||
if [[ -n "${ASAN_OPTIONS}" ]]; then
|
||||
while read log; do
|
||||
asan_symbolize < "${log}"
|
||||
false # exit 1 if there are ASAN logs
|
||||
done < <(find . -type f -name 'asan.*' -size +0)
|
||||
fi
|
||||
- >
|
||||
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"
|
||||
|
||||
after_success:
|
||||
- |
|
||||
if [[ "${COVERAGE}" = "yes" ]]; then
|
||||
~/.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
|
||||
fi
|
||||
- |
|
||||
if [[ "${COVERAGE}" = "yes" ]]; then
|
||||
(cd "${SRCDIR}" && bash <(curl -s https://codecov.io/bash))
|
||||
fi
|
||||
|
||||
# instead of a 2*2*8 matrix (2*os + 2*compiler + 8*env),
|
||||
# exclude some builds on mac os x and linux
|
||||
# on mac os x "tiny" is always without GUI
|
||||
# linux: 2*compiler + 5*env + mac: 2*compiler + 2*env
|
||||
matrix:
|
||||
include:
|
||||
- <<: *osx
|
||||
name: tiny-nogui/clang
|
||||
compiler: clang
|
||||
env: *tiny-nogui
|
||||
- <<: *osx
|
||||
name: tiny-nogui/gcc
|
||||
compiler: gcc
|
||||
env: *tiny-nogui
|
||||
- <<: *osx
|
||||
name: huge/clang
|
||||
compiler: clang
|
||||
env: *osx-huge
|
||||
- <<: *osx
|
||||
name: huge/gcc
|
||||
compiler: gcc
|
||||
env: *osx-huge
|
||||
- <<: *linux
|
||||
name: tiny-nogui/clang
|
||||
compiler: clang
|
||||
env: *tiny-nogui
|
||||
- <<: *linux
|
||||
name: tiny-nogui/gcc
|
||||
compiler: gcc
|
||||
env: *tiny-nogui
|
||||
- <<: *linux
|
||||
name: tiny/clang
|
||||
compiler: clang
|
||||
env: *tiny
|
||||
- <<: *linux
|
||||
name: tiny/gcc
|
||||
compiler: gcc
|
||||
env: *tiny
|
||||
- <<: *linux
|
||||
name: small/gcc
|
||||
compiler: gcc
|
||||
env: *small
|
||||
- <<: *linux
|
||||
name: normal/clang
|
||||
compiler: clang
|
||||
env: *normal
|
||||
- <<: *linux
|
||||
name: normal/gcc
|
||||
compiler: gcc
|
||||
env: *normal
|
||||
- <<: *linux
|
||||
name: huge+coverage/clang
|
||||
compiler: clang
|
||||
env: *linux-huge
|
||||
after_success: *coverage
|
||||
- <<: *linux
|
||||
name: huge+coverage/gcc
|
||||
compiler: gcc
|
||||
env: *linux-huge
|
||||
after_success: *coverage
|
||||
- <<: *linux
|
||||
name: unittests+coverage/gcc
|
||||
compiler: gcc
|
||||
env: *unittests
|
||||
after_success: *coverage
|
||||
- <<: *linux # ASAN
|
||||
name: huge+asan/gcc
|
||||
compiler: gcc
|
||||
env:
|
||||
- *linux-huge
|
||||
- *asan
|
||||
after_failure: *asan_symbolize
|
||||
- <<: *linux
|
||||
name: huge-testgui+coverage/gcc
|
||||
compiler: gcc
|
||||
env:
|
||||
- *linux-huge
|
||||
- TEST="-C src testgui"
|
||||
after_success: *coverage
|
||||
|
||||
# vim:set sts=2 sw=2 tw=0 et:
|
||||
|
||||
@@ -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
|
||||
|
||||
72
Filelist
72
Filelist
@@ -4,6 +4,7 @@
|
||||
# source files for all source archives
|
||||
SRC_ALL = \
|
||||
.gitignore \
|
||||
.gitattributes \
|
||||
.hgignore \
|
||||
.lgtm.yml \
|
||||
.travis.yml \
|
||||
@@ -13,6 +14,7 @@ SRC_ALL = \
|
||||
src/README.md \
|
||||
src/alloc.h \
|
||||
src/arabic.c \
|
||||
src/arglist.c \
|
||||
src/ascii.h \
|
||||
src/autocmd.c \
|
||||
src/beval.c \
|
||||
@@ -20,18 +22,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 +52,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 +62,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 +72,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 +83,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,18 +93,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 \
|
||||
@@ -97,6 +122,7 @@ SRC_ALL = \
|
||||
src/terminal.c \
|
||||
src/term.h \
|
||||
src/termlib.c \
|
||||
src/testing.c \
|
||||
src/textprop.c \
|
||||
src/ui.c \
|
||||
src/undo.c \
|
||||
@@ -105,6 +131,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 \
|
||||
@@ -117,9 +144,12 @@ SRC_ALL = \
|
||||
src/testdir/lsan-suppress.txt \
|
||||
src/testdir/sautest/autoload/*.vim \
|
||||
src/testdir/runtest.vim \
|
||||
src/testdir/summarize.vim \
|
||||
src/testdir/check.vim \
|
||||
src/testdir/shared.vim \
|
||||
src/testdir/screendump.vim \
|
||||
src/testdir/view_util.vim \
|
||||
src/testdir/term_util.vim \
|
||||
src/testdir/setup.vim \
|
||||
src/testdir/gui_init.vim \
|
||||
src/testdir/setup_gui.vim \
|
||||
@@ -148,32 +178,45 @@ SRC_ALL = \
|
||||
src/testdir/samples/test000 \
|
||||
src/testdir/if_ver*.vim \
|
||||
src/testdir/color_ramp.vim \
|
||||
src/testdir/silent.wav \
|
||||
src/testdir/popupbounce.vim \
|
||||
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 \
|
||||
@@ -181,11 +224,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 \
|
||||
@@ -194,31 +239,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 \
|
||||
@@ -245,7 +301,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 \
|
||||
@@ -466,7 +522,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 \
|
||||
@@ -481,7 +537,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 \
|
||||
@@ -531,10 +587,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 \
|
||||
@@ -610,6 +663,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 \
|
||||
@@ -804,7 +858,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 = \
|
||||
|
||||
14
Makefile
14
Makefile
@@ -165,7 +165,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 +175,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 +188,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 +197,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 +518,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 +539,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 +557,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
|
||||
|
||||
@@ -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,
|
||||
|
||||
|
||||
@@ -47,6 +47,11 @@ Unicode true
|
||||
|
||||
!include gvim_version.nsh # for version number
|
||||
|
||||
# Definition of Patch for Vim
|
||||
!ifndef PATCHLEVEL
|
||||
!define PATCHLEVEL 0
|
||||
!endif
|
||||
|
||||
# ----------- No configurable settings below this line -----------
|
||||
|
||||
!include "Library.nsh" # For DLL install
|
||||
@@ -173,6 +178,16 @@ Page custom SetCustom ValidateCustom
|
||||
!include "lang\tradchinese.nsi"
|
||||
!endif
|
||||
|
||||
##########################################################
|
||||
# Version resources
|
||||
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "Vim"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "Vim Developers"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalTrademarks" "Vim"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "Copyright (C) 1996"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "Vi Improved - A Text Editor"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${VER_MAJOR}.${VER_MINOR}.${PATCHLEVEL}.0"
|
||||
VIProductVersion "${VER_MAJOR}.${VER_MINOR}.${PATCHLEVEL}.0"
|
||||
|
||||
# Global variables
|
||||
Var vim_dialog
|
||||
@@ -326,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
|
||||
|
||||
@@ -940,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"
|
||||
|
||||
@@ -45,37 +45,37 @@ LangString str_type_full ${LANG_SIMPCHINESE} \
|
||||
LangString str_section_old_ver ${LANG_SIMPCHINESE} \
|
||||
"卸载旧版本"
|
||||
LangString str_desc_old_ver ${LANG_SIMPCHINESE} \
|
||||
"卸载系统上旧版本的 Vim。"
|
||||
"卸载系统上已存在的 Vim 版本"
|
||||
|
||||
LangString str_section_exe ${LANG_SIMPCHINESE} \
|
||||
"安装 Vim 图形界面"
|
||||
LangString str_desc_exe ${LANG_SIMPCHINESE} \
|
||||
"安装 Vim 图形界面及脚本。此为必选安装。"
|
||||
"安装 Vim 图形界面及运行时文件。此项为必选。"
|
||||
|
||||
LangString str_section_console ${LANG_SIMPCHINESE} \
|
||||
"安装 Vim 命令行程序"
|
||||
"安装 Vim 控制台版本"
|
||||
LangString str_desc_console ${LANG_SIMPCHINESE} \
|
||||
"安装 Vim 命令行程序 (vim.exe)。该程序在命令行窗口中运行。"
|
||||
"安装 Vim 的控制台版本(vim.exe)。"
|
||||
|
||||
LangString str_section_batch ${LANG_SIMPCHINESE} \
|
||||
"安装批处理文件"
|
||||
LangString str_desc_batch ${LANG_SIMPCHINESE} \
|
||||
"为 Vim 的各种变体创建批处理程序,以便在命令行下运行 Vim。"
|
||||
"为 Vim 的各种变体创建批处理文件,以便在命令行下运行 Vim。"
|
||||
|
||||
LangString str_group_icons ${LANG_SIMPCHINESE} \
|
||||
"创建 Vim 图标"
|
||||
"创建图标"
|
||||
LangString str_desc_icons ${LANG_SIMPCHINESE} \
|
||||
"为 Vim 创建若干图标,以方便使用 Vim。"
|
||||
|
||||
LangString str_section_desktop ${LANG_SIMPCHINESE} \
|
||||
"在桌面上"
|
||||
"桌面图标"
|
||||
LangString str_desc_desktop ${LANG_SIMPCHINESE} \
|
||||
"在桌面上为 Vim 创建若干图标,以方便启动 Vim。"
|
||||
"创建 Vim 的桌面快捷方式图标。"
|
||||
|
||||
LangString str_section_start_menu ${LANG_SIMPCHINESE} \
|
||||
"在启动菜单的程序菜单下"
|
||||
"「开始」菜单程序组"
|
||||
LangString str_desc_start_menu ${LANG_SIMPCHINESE} \
|
||||
"在启动菜单的程序菜单下添加 Vim 组。适用于 Windows 95 及以上版本。"
|
||||
"在开始菜单中添加 Vim 程序组(适用于 Windows 95 及以上版本)"
|
||||
|
||||
#LangString str_section_quick_launch ${LANG_SIMPCHINESE} \
|
||||
# "在快速启动启动栏中"
|
||||
@@ -83,9 +83,9 @@ LangString str_desc_start_menu ${LANG_SIMPCHINESE} \
|
||||
# "在快速启动栏中添加 Vim 图标。"
|
||||
|
||||
LangString str_section_edit_with ${LANG_SIMPCHINESE} \
|
||||
"安装快捷菜单"
|
||||
"添加到快捷菜单"
|
||||
LangString str_desc_edit_with ${LANG_SIMPCHINESE} \
|
||||
"将 Vim 添加到“打开方式”快捷菜单中。"
|
||||
"将“用 Vim 编辑”添加到快捷菜单中。"
|
||||
|
||||
#LangString str_section_edit_with32 ${LANG_SIMPCHINESE} \
|
||||
# "32 位版本"
|
||||
@@ -98,10 +98,10 @@ LangString str_desc_edit_with ${LANG_SIMPCHINESE} \
|
||||
# "将 Vim 添加到 64 位程序的“打开方式”快捷菜单中。"
|
||||
|
||||
LangString str_section_vim_rc ${LANG_SIMPCHINESE} \
|
||||
"创建缺省配置文件"
|
||||
"创建默认配置文件"
|
||||
LangString str_desc_vim_rc ${LANG_SIMPCHINESE} \
|
||||
"在安装目录下生成缺省的 Vim 配置文件(_vimrc)。\
|
||||
如果该文件已经存在,则略过此项。"
|
||||
"在安装目录下生成默认的 Vim 配置文件(_vimrc)。\
|
||||
如果该文件已经存在,则跳过该项。"
|
||||
|
||||
LangString str_group_plugin ${LANG_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} \
|
||||
"公共插件目录"
|
||||
@@ -121,9 +121,9 @@ LangString str_desc_plugin_vim ${LANG_SIMPCHINESE} \
|
||||
该目录下的扩展插件。"
|
||||
|
||||
LangString str_section_vis_vim ${LANG_SIMPCHINESE} \
|
||||
"安装 VisVim 插件"
|
||||
"VisVim 插件"
|
||||
LangString str_desc_vis_vim ${LANG_SIMPCHINESE} \
|
||||
"安装用于与微软 Microsoft Visual Studio 进行集成的 VisVim 插件。"
|
||||
"安装与 Visual Studio 集成的 VisVim 插件。"
|
||||
|
||||
LangString str_section_nls ${LANG_SIMPCHINESE} \
|
||||
"安装多语言支持"
|
||||
@@ -141,24 +141,24 @@ 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} \
|
||||
"公共插件目录"
|
||||
LangString str_desc_rm_plugin_vim ${LANG_SIMPCHINESE} \
|
||||
"Remove the plugin directories from Vim install directory."
|
||||
"从 Vim 安装目录下移除插件目录。"
|
||||
|
||||
LangString str_unsection_rootdir ${LANG_SIMPCHINESE} \
|
||||
"Remove the Vim root directory"
|
||||
"移除 Vim 主目录"
|
||||
LangString str_desc_rm_rootdir ${LANG_SIMPCHINESE} \
|
||||
"Remove the Vim root directory. It contains your Vim configuration files!"
|
||||
"移除 Vim 的主目录,该目录包含您的配置文件!"
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -225,13 +225,13 @@ LangString str_msg_rm_exe_fail ${LANG_SIMPCHINESE} \
|
||||
# 该目录下仍有其他文件。"
|
||||
|
||||
LangString str_msg_uninstalling ${LANG_SIMPCHINESE} \
|
||||
"Uninstalling the old version..."
|
||||
"正在卸载旧版本..."
|
||||
|
||||
LangString str_msg_registering ${LANG_SIMPCHINESE} \
|
||||
"Registering..."
|
||||
"正在注册..."
|
||||
|
||||
LangString str_msg_unregistering ${LANG_SIMPCHINESE} \
|
||||
"Unregistering..."
|
||||
"正在取消注册..."
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -239,39 +239,39 @@ LangString str_msg_unregistering ${LANG_SIMPCHINESE} \
|
||||
##############################################################################
|
||||
|
||||
LangString str_vimrc_page_title ${LANG_SIMPCHINESE} \
|
||||
"Choose _vimrc settings"
|
||||
"设置 _vimrc"
|
||||
LangString str_vimrc_page_subtitle ${LANG_SIMPCHINESE} \
|
||||
"Choose the settings for enhancement, keyboard and mouse."
|
||||
"选择键盘、鼠标和扩展设置。"
|
||||
|
||||
LangString str_msg_compat_title ${LANG_SIMPCHINESE} \
|
||||
" Vi / Vim behavior "
|
||||
"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} \
|
||||
" Mappings "
|
||||
"键盘映射"
|
||||
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} \
|
||||
" Mouse "
|
||||
"鼠标"
|
||||
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 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
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
" This script tests a color scheme for some errors. Load the scheme and source
|
||||
" this script. e.g. :e colors/desert.vim | :so check_colors.vim
|
||||
" Will output possible errors.
|
||||
" This script tests a color scheme for some errors and lists potential errors.
|
||||
" Load the scheme and source this script, like this:
|
||||
" :edit colors/desert.vim | :so colors/tools/check_colors.vim
|
||||
|
||||
let s:save_cpo= &cpo
|
||||
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')
|
||||
@@ -17,48 +18,115 @@ func! Test_check_colors()
|
||||
endif
|
||||
|
||||
" 2) Check for some well-defined highlighting groups
|
||||
" Some items, check several groups, e.g. Diff, Spell
|
||||
let hi_groups = ['ColorColumn', 'Diff', 'ErrorMsg', 'Folded',
|
||||
\ 'FoldColumn', 'IncSearch', 'LineNr', 'ModeMsg', 'MoreMsg', 'NonText',
|
||||
\ 'Normal', 'Pmenu', 'Todo', 'Search', 'Spell', 'StatusLine', 'TabLine',
|
||||
\ 'Title', 'Visual', 'WarningMsg', 'WildMenu']
|
||||
let groups={}
|
||||
let hi_groups = [
|
||||
\ 'ColorColumn',
|
||||
\ 'Comment',
|
||||
\ 'Conceal',
|
||||
\ 'Constant',
|
||||
\ 'Cursor',
|
||||
\ 'CursorColumn',
|
||||
\ 'CursorLine',
|
||||
\ 'CursorLineNr',
|
||||
\ 'DiffAdd',
|
||||
\ 'DiffChange',
|
||||
\ 'DiffDelete',
|
||||
\ 'DiffText',
|
||||
\ 'Directory',
|
||||
\ 'EndOfBuffer',
|
||||
\ 'Error',
|
||||
\ 'ErrorMsg',
|
||||
\ 'FoldColumn',
|
||||
\ 'Folded',
|
||||
\ 'Identifier',
|
||||
\ 'Ignore',
|
||||
\ 'IncSearch',
|
||||
\ 'LineNr',
|
||||
\ 'MatchParen',
|
||||
\ 'ModeMsg',
|
||||
\ 'MoreMsg',
|
||||
\ 'NonText',
|
||||
\ 'Normal',
|
||||
\ 'Pmenu',
|
||||
\ 'PmenuSbar',
|
||||
\ 'PmenuSel',
|
||||
\ 'PmenuThumb',
|
||||
\ 'PreProc',
|
||||
\ 'Question',
|
||||
\ 'QuickFixLine',
|
||||
\ 'Search',
|
||||
\ 'SignColumn',
|
||||
\ 'Special',
|
||||
\ 'SpecialKey',
|
||||
\ 'SpellBad',
|
||||
\ 'SpellCap',
|
||||
\ 'SpellLocal',
|
||||
\ 'SpellRare',
|
||||
\ 'Statement',
|
||||
\ 'StatusLine',
|
||||
\ 'StatusLineNC',
|
||||
\ 'StatusLineTerm',
|
||||
\ 'StatusLineTermNC',
|
||||
\ 'TabLine',
|
||||
\ 'TabLineFill',
|
||||
\ 'TabLineSel',
|
||||
\ 'Title',
|
||||
\ 'Todo',
|
||||
\ 'ToolbarButton',
|
||||
\ 'ToolbarLine',
|
||||
\ 'Type',
|
||||
\ 'Underlined',
|
||||
\ 'VertSplit',
|
||||
\ 'Visual',
|
||||
\ 'VisualNOS',
|
||||
\ 'WarningMsg',
|
||||
\ 'WildMenu',
|
||||
\ ]
|
||||
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] \+'.group, 'cnW')
|
||||
let groups[group] = 'No highlight definition for '.group
|
||||
if search('hi\%[ghlight]!\= \+link \+' .. group, 'cnW') " Linked group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*fg=', 'cnW')
|
||||
let groups[group] = 'Missing foreground color for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>', 'cnW')
|
||||
let groups[group] = 'No highlight definition 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 .. '\>.*[bf]g=', 'cnW')
|
||||
let groups[group] = 'Missing foreground or background color for ' .. group
|
||||
continue
|
||||
endif
|
||||
call search('hi\%[ghlight] \+'.group, 'cW')
|
||||
" only check in the current line
|
||||
if !search('guifg', 'cnW', line('.')) || !search('ctermfg', 'cnW', line('.'))
|
||||
" do not check for background colors, they could be intentionally left out
|
||||
let groups[group] = 'Missing fg definition 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')
|
||||
\ && group !~ '^Diff'
|
||||
let groups[group] = 'Missing guifg definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
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
|
||||
call cursor(1,1)
|
||||
endfor
|
||||
let err['highlight'] = groups
|
||||
|
||||
" 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')
|
||||
@@ -80,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
|
||||
@@ -91,15 +159,43 @@ func! Test_check_colors()
|
||||
endif
|
||||
|
||||
" 7) Does not define filetype specific groups like vimCommand, htmlTag,
|
||||
let hi_groups = ['vim', 'html', 'python', 'sh', 'ruby']
|
||||
let hi_groups = filter(getcompletion('', 'filetype'), { _,v -> v !~# '\%[no]syn\%(color\|load\|tax\)' })
|
||||
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]\s*\zs'.group.'\w\+\>'
|
||||
let pat = '\Chi\%[ghlight]!\= *\%[link] \+\zs' .. group .. '\w\+\>\ze \+.' " Skips `hi clear`
|
||||
if search(pat, 'cW')
|
||||
call add(ft_groups, matchstr(getline('.'), pat))
|
||||
endif
|
||||
call cursor(1,1)
|
||||
endfor
|
||||
if !empty(ft_groups)
|
||||
let err['filetype'] = get(err, 'filetype', 'Should not define: ') . join(uniq(sort(ft_groups)))
|
||||
endif
|
||||
|
||||
" 8) Were debugPC and debugBreakpoint defined?
|
||||
for group in ['debugPC', 'debugBreakpoint']
|
||||
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). ' '
|
||||
endif
|
||||
call cursor(1,1)
|
||||
endfor
|
||||
|
||||
" 9) Normal should be defined first, not use reverse, fg or bg
|
||||
call cursor(1,1)
|
||||
let pat = 'hi\%[light] \+\%(link\|clear\)\@!\w\+\>'
|
||||
call search(pat, 'cW') " Look for the first hi def, skipping `hi link` and `hi clear`
|
||||
if getline('.') !~# '\m\<Normal\>'
|
||||
let err['highlight']['Normal'] = 'Should be defined first'
|
||||
elseif getline('.') =~# '\m\%(=\%(fg\|bg\)\)'
|
||||
let err['highlight']['Normal'] = "Should not use 'fg' or 'bg'"
|
||||
elseif getline('.') =~# '\m=\%(inv\|rev\)erse'
|
||||
let err['highlight']['Normal'] = 'Should not use reverse mode'
|
||||
endif
|
||||
|
||||
call winrestview(l:savedview)
|
||||
let g:err = err
|
||||
|
||||
" print Result
|
||||
@@ -107,11 +203,11 @@ func! Test_check_colors()
|
||||
endfu
|
||||
|
||||
fu! Result(err)
|
||||
let do_roups = 0
|
||||
let do_groups = 0
|
||||
echohl Title|echomsg "---------------"|echohl Normal
|
||||
for key in sort(keys(a:err))
|
||||
if key is# 'highlight'
|
||||
let do_groups = 1
|
||||
let do_groups = !empty(a:err[key])
|
||||
continue
|
||||
else
|
||||
if a:err[key] !~ 'OK'
|
||||
|
||||
@@ -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,11 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: ocaml
|
||||
" Maintainer: See ftplugin/ocaml.vim (?)
|
||||
" Last Change: June 2013 by Marc Weber
|
||||
" Compiler: ocaml
|
||||
" Maintainer: Markus Mottl <markus.mottl@gmail.com>
|
||||
" URL: https://github.com/rgrinberg/vim-ocaml
|
||||
" Last Change:
|
||||
" 2017 Nov 26 - Improved error format (Markus Mottl)
|
||||
" 2013 Aug 27 - Added a new OCaml error format (Markus Mottl)
|
||||
" 2013 Jun 30 - Initial version (Marc Weber)
|
||||
"
|
||||
" Marc Weber's comments:
|
||||
" Setting makeprg doesn't make sense, because there is ocamlc, ocamlopt,
|
||||
@@ -17,7 +21,6 @@
|
||||
"
|
||||
" So having it here makes people opt-in
|
||||
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
@@ -28,6 +31,7 @@ set cpo&vim
|
||||
|
||||
CompilerSet errorformat =
|
||||
\%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d:,
|
||||
\%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d\ %.%#,
|
||||
\%EFile\ \"%f\"\\,\ line\ %l\\,\ character\ %c:%m,
|
||||
\%+EReference\ to\ unbound\ regexp\ name\ %m,
|
||||
\%Eocamlyacc:\ e\ -\ line\ %l\ of\ \"%f\"\\,\ %m,
|
||||
@@ -38,6 +42,12 @@ CompilerSet errorformat =
|
||||
\%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',
|
||||
\%DEntering\ directory\ '%f',
|
||||
\%XLeaving\ directory\ '%f',
|
||||
\%DMaking\ %*\\a\ in\ %f
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
||||
@@ -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 May 05
|
||||
*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
|
||||
|
||||
@@ -407,8 +414,8 @@ BufFilePost After changing the name of the current buffer
|
||||
BufFilePre Before changing the name of the current buffer
|
||||
with the ":file" or ":saveas" command.
|
||||
*BufHidden*
|
||||
BufHidden Just after a buffer has become hidden. That
|
||||
is, when there are no longer windows that show
|
||||
BufHidden Just before a buffer becomes hidden. That is,
|
||||
when there are no longer windows that show
|
||||
the buffer, but the buffer is not unloaded or
|
||||
deleted. Not used for ":qa" or ":q" when
|
||||
exiting Vim.
|
||||
@@ -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
|
||||
@@ -873,15 +882,32 @@ MenuPopup Just before showing the popup menu (under the
|
||||
*OptionSet*
|
||||
OptionSet After setting an option. The pattern is
|
||||
matched against the long option name.
|
||||
The |v:option_old| variable indicates the
|
||||
old option value, |v:option_new| variable
|
||||
indicates the newly set value, the
|
||||
|v:option_type| variable indicates whether
|
||||
it's global or local scoped and |<amatch>|
|
||||
indicates what option has been set.
|
||||
|<amatch>| indicates what option has been set.
|
||||
|
||||
Is not triggered on startup and for the 'key'
|
||||
option for obvious reasons.
|
||||
|v:option_type| indicates whether it's global
|
||||
or local scoped.
|
||||
|v:option_command| indicates what type of
|
||||
set/let command was used (follow the tag to
|
||||
see the table).
|
||||
|v:option_new| indicates the newly set value.
|
||||
|v:option_oldlocal| has the old local value.
|
||||
|v:option_oldglobal| has the old global value.
|
||||
|v:option_old| indicates the old option value.
|
||||
|
||||
|v:option_oldlocal| is only set when |:set|
|
||||
or |:setlocal| or a |modeline| was used to set
|
||||
the option. Similarly |v:option_oldglobal| is
|
||||
only set when |:set| or |:setglobal| was used.
|
||||
|
||||
Note that when setting a |global-local| string
|
||||
option with |:set|, then |v:option_old| is the
|
||||
old global value. However, for all other kinds
|
||||
of options (local string options, global-local
|
||||
number options, ...) it is the old local
|
||||
value.
|
||||
|
||||
OptionSet is not triggered on startup and for
|
||||
the 'key' option for obvious reasons.
|
||||
|
||||
Usage example: Check for the existence of the
|
||||
directory in the 'backupdir' and 'undodir'
|
||||
@@ -936,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.
|
||||
@@ -1032,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|
|
||||
@@ -1068,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)
|
||||
@@ -1105,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
|
||||
@@ -1365,7 +1423,7 @@ have changed autocommands, or when Vim has executed the wrong autocommands
|
||||
Note that the 'eventignore' option applies here too. Events listed in this
|
||||
option will not cause any commands to be executed.
|
||||
|
||||
*:do* *:doau* *:doautocmd* *E217*
|
||||
*:do* *:doau* *:doaut* *:doautocmd* *E217*
|
||||
:do[autocmd] [<nomodeline>] [group] {event} [fname]
|
||||
Apply the autocommands matching [fname] (default:
|
||||
current file name) for {event} to the current buffer.
|
||||
|
||||
@@ -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 05
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 Sep 11
|
||||
|
||||
|
||||
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')`
|
||||
@@ -155,7 +157,10 @@ Use |ch_status()| to see if the channel could be opened.
|
||||
func MyCloseHandler(channel)
|
||||
< Vim will invoke callbacks that handle data before invoking
|
||||
close_cb, thus when this function is called no more data will
|
||||
be passed to the callbacks.
|
||||
be passed to the callbacks. However, if a callback causes Vim
|
||||
to check for messages, the close_cb may be invoked while still
|
||||
in the callback. The plugin must handle this somehow, it can
|
||||
be useful to know that no more data is coming.
|
||||
*channel-drop*
|
||||
"drop" Specifies when to drop messages:
|
||||
"auto" When there is no callback to handle a message.
|
||||
@@ -457,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})
|
||||
@@ -549,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,
|
||||
@@ -576,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
|
||||
@@ -770,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)
|
||||
@@ -786,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 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -129,7 +129,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 +191,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 +380,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 +700,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 +909,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 +1061,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 +1136,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 +1171,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 05
|
||||
*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|
|
||||
@@ -87,7 +89,11 @@ This feature allows a debugger, or other external tool, to display dynamic
|
||||
information based on where the mouse is pointing. The purpose of this feature
|
||||
was to allow Sun's Visual WorkShop debugger to display expression evaluations.
|
||||
However, the feature was implemented in as general a manner as possible and
|
||||
could be used for displaying other information as well.
|
||||
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,
|
||||
@@ -105,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 Aug 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -529,7 +529,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 May 04
|
||||
*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: >
|
||||
@@ -185,7 +186,7 @@ hidden buffers. You can use ":hide" to close a window without unloading the
|
||||
buffer. If you don't want a buffer to remain used for the diff do ":set
|
||||
nodiff" before hiding it.
|
||||
|
||||
*:dif* *:diffupdate*
|
||||
*:dif* *:diff* *:diffupdate*
|
||||
:dif[fupdate][!] Update the diff highlighting and folds.
|
||||
|
||||
Vim attempts to keep the differences updated when you make changes to the
|
||||
@@ -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: >
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
/* vim:set ts=4 sw=4:
|
||||
* this program makes a tags file for vim_ref.txt
|
||||
*
|
||||
* Usage: doctags vim_ref.txt vim_win.txt ... >tags
|
||||
* This program makes a tags file for help text.
|
||||
*
|
||||
* Usage: doctags *.txt ... >tags
|
||||
*
|
||||
* A tag in this context is an identifier between stars, e.g. *c_files*
|
||||
*/
|
||||
|
||||
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 May 07
|
||||
*editing.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
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
|
||||
@@ -593,7 +593,7 @@ You can use the argument list with the following commands, and with the
|
||||
expression functions |argc()| and |argv()|. These all work on the argument
|
||||
list of the current window.
|
||||
|
||||
*:ar* *:args*
|
||||
*:ar* *:arg* *:args*
|
||||
:ar[gs] Print the argument list, with the current file in
|
||||
square brackets.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
3189
runtime/doc/eval.txt
3189
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 @@
|
||||
*fold.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*fold.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -441,7 +441,7 @@ zk Move upwards to the end of the previous fold. A closed fold
|
||||
|
||||
EXECUTING COMMANDS ON FOLDS ~
|
||||
|
||||
:[range]foldd[oopen] {cmd} *:foldd* *:folddoopen*
|
||||
:[range]foldd[oopen] {cmd} *:foldd* *:folddo* *:folddoopen*
|
||||
Execute {cmd} on all lines that are not in a closed fold.
|
||||
When [range] is given, only these lines are used.
|
||||
Each time {cmd} is executed the cursor is positioned on the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*gui.txt* For Vim version 8.1. Last change: 2019 Nov 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -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.
|
||||
@@ -1112,10 +1113,9 @@ For the Win32 GUI *E244* *E245*
|
||||
cXX - character set XX. Valid charsets are: ANSI, ARABIC, BALTIC,
|
||||
CHINESEBIG5, DEFAULT, EASTEUROPE, GB2312, GREEK, HANGEUL,
|
||||
HEBREW, JOHAB, MAC, OEM, RUSSIAN, SHIFTJIS, SYMBOL, THAI,
|
||||
TURKISH, VIETNAMESE ANSI and BALTIC. Normally you would use
|
||||
"cDEFAULT".
|
||||
TURKISH and VIETNAMESE. Normally you would use "cDEFAULT".
|
||||
qXX - quality XX. Valid quality names are: PROOF, DRAFT, ANTIALIASED,
|
||||
NONANTIALIASED, CLEARTYPE, DEFAULT. Normally you would use
|
||||
NONANTIALIASED, CLEARTYPE and DEFAULT. Normally you would use
|
||||
"qDEFAULT".
|
||||
Some quality values are not supported in legacy OSs.
|
||||
- A '_' can be used in the place of a space, so you don't need to use
|
||||
@@ -1139,30 +1139,28 @@ substitution.
|
||||
GUIFONTWIDE *gui-fontwide*
|
||||
|
||||
When not empty, 'guifontwide' specifies a comma-separated list of fonts to be
|
||||
used for double-width characters. The first font that can be loaded is
|
||||
used.
|
||||
used for double-width characters. The first font that can be loaded is used.
|
||||
|
||||
Note: The size of these fonts must be exactly twice as wide as the one
|
||||
specified with 'guifont' and the same height. If there is a mismatch then
|
||||
the text will not be drawn correctly.
|
||||
specified with 'guifont' and the same height. If there is a mismatch then the
|
||||
text will not be drawn correctly.
|
||||
|
||||
All GUI versions but GTK+:
|
||||
|
||||
'guifontwide' is only used when 'encoding' is set to "utf-8" and
|
||||
'guifontset' is empty or invalid.
|
||||
When 'guifont' is set and a valid font is found in it and
|
||||
'guifontwide' is empty Vim will attempt to find a matching
|
||||
double-width font and set 'guifontwide' to it.
|
||||
'guifontwide' is only used when 'encoding' is set to "utf-8" and 'guifontset'
|
||||
is empty or invalid.
|
||||
When 'guifont' is set and a valid font is found in it and 'guifontwide' is
|
||||
empty Vim will attempt to find a matching double-width font and set
|
||||
'guifontwide' to it.
|
||||
|
||||
GTK+ GUI only: *guifontwide_gtk*
|
||||
|
||||
If set and valid, 'guifontwide' is always used for double width
|
||||
characters, even if 'encoding' is not set to "utf-8".
|
||||
If set and valid, 'guifontwide' is always used for double width characters,
|
||||
even if 'encoding' is not set to "utf-8".
|
||||
Vim does not attempt to find an appropriate value for 'guifontwide'
|
||||
automatically. If 'guifontwide' is empty Pango/Xft will choose the
|
||||
font for characters not available in 'guifont'. Thus you do not need
|
||||
to set 'guifontwide' at all unless you want to override the choice
|
||||
made by Pango/Xft.
|
||||
automatically. If 'guifontwide' is empty Pango/Xft will choose the font for
|
||||
characters not available in 'guifont'. Thus you do not need to set
|
||||
'guifontwide' at all unless you want to override the choice made by Pango/Xft.
|
||||
|
||||
Windows +multibyte only: *guifontwide_win_mbyte*
|
||||
|
||||
@@ -1181,7 +1179,8 @@ This section describes other features which are related to the GUI.
|
||||
get "<Modifiers-Key>".
|
||||
|
||||
- In the GUI, the modifiers SHIFT, CTRL, and ALT (or META) may be used within
|
||||
mappings of special keys and mouse events. E.g.: :map <M-LeftDrag> <LeftDrag>
|
||||
mappings of special keys and mouse events.
|
||||
E.g.: :map <M-LeftDrag> <LeftDrag>
|
||||
|
||||
- In the GUI, several normal keys may have modifiers in mappings etc, these
|
||||
are <Space>, <Tab>, <NL>, <CR>, <Esc>.
|
||||
@@ -1218,8 +1217,8 @@ http://www.lexikan.com/mincho.htm
|
||||
For the X11 GUI the external commands are executed inside the gvim window.
|
||||
See |gui-pty|.
|
||||
|
||||
WARNING: Executing an external command from the X11 GUI will not always
|
||||
work. "normal" commands like "ls", "grep" and "make" mostly work fine.
|
||||
WARNING: Executing an external command from the X11 GUI will not always work.
|
||||
"normal" commands like "ls", "grep" and "make" mostly work fine.
|
||||
Commands that require an intelligent terminal like "less" and "ispell" won't
|
||||
work. Some may even hang and need to be killed from another terminal. So be
|
||||
careful!
|
||||
|
||||
@@ -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,4 +1,4 @@
|
||||
*help.txt* For Vim version 8.1. Last change: 2019 Jan 17
|
||||
*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 Jul 21
|
||||
|
||||
|
||||
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}.
|
||||
|
||||
|
||||
@@ -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 Jul 21
|
||||
|
||||
|
||||
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
|
||||
|
||||
@@ -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 Jul 21
|
||||
|
||||
|
||||
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.
|
||||
|
||||
|
||||
@@ -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 Aug 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -901,7 +901,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 +928,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 May 09
|
||||
*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"
|
||||
@@ -1241,6 +1243,7 @@ tag command action ~
|
||||
|:compiler| :comp[iler] do settings for a specific compiler
|
||||
|:continue| :con[tinue] go back to :while
|
||||
|:confirm| :conf[irm] prompt user when confirmation required
|
||||
|:const| :cons[t] create a variable as a constant
|
||||
|:copen| :cope[n] open quickfix window
|
||||
|:cprevious| :cp[revious] go to previous error
|
||||
|:cpfile| :cpf[ile] go to last error in previous file
|
||||
@@ -1591,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 Oct 20
|
||||
|
||||
|
||||
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!
|
||||
@@ -300,8 +300,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 +608,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 +1088,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 +1110,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 initally 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 May 07
|
||||
*intro.txt* For Vim version 8.1. Last change: 2019 Nov 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -65,14 +65,21 @@ contain links to the most recent version of Vim. The FAQ is a list of
|
||||
Frequently Asked Questions. Read this if you have problems.
|
||||
|
||||
Vim home page: https://www.vim.org/
|
||||
Vim FAQ: https://vimhelp.appspot.com/vim_faq.txt.html
|
||||
Vim FAQ: https://vimhelp.org/vim_faq.txt.html
|
||||
Downloading: https://www.vim.org/download.php
|
||||
|
||||
|
||||
Asking questions, finding answers: https://vi.stackexchange.com/
|
||||
"Vi and Vim Stack Exchange is a question and answer site for people using the
|
||||
vi and Vim families of text editors"
|
||||
|
||||
|
||||
Usenet News group where Vim is discussed: *news* *usenet*
|
||||
comp.editors
|
||||
This group is also for other editors. If you write about Vim, don't forget to
|
||||
mention that.
|
||||
You can access it here:
|
||||
https://groups.google.com/forum/#!topic/comp.editors
|
||||
|
||||
*mail-list* *maillist*
|
||||
There are several mailing lists for Vim:
|
||||
@@ -227,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
|
||||
@@ -501,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 May 05
|
||||
*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|
|
||||
@@ -53,7 +54,7 @@ modes.
|
||||
:om[ap] {lhs} {rhs} |mapmode-o| *:om* *:omap*
|
||||
:map! {lhs} {rhs} |mapmode-ic| *:map!*
|
||||
:im[ap] {lhs} {rhs} |mapmode-i| *:im* *:imap*
|
||||
:lm[ap] {lhs} {rhs} |mapmode-l| *:lm* *:lmap*
|
||||
:lm[ap] {lhs} {rhs} |mapmode-l| *:lm* *:lma* *:lmap*
|
||||
:cm[ap] {lhs} {rhs} |mapmode-c| *:cm* *:cmap*
|
||||
:tma[p] {lhs} {rhs} |mapmode-t| *:tma* *:tmap*
|
||||
Map the key sequence {lhs} to {rhs} for the modes
|
||||
@@ -66,12 +67,12 @@ modes.
|
||||
:nn[oremap] {lhs} {rhs} |mapmode-n| *:nn* *:nnoremap*
|
||||
:vn[oremap] {lhs} {rhs} |mapmode-v| *:vn* *:vnoremap*
|
||||
:xn[oremap] {lhs} {rhs} |mapmode-x| *:xn* *:xnoremap*
|
||||
:snor[emap] {lhs} {rhs} |mapmode-s| *:snor* *:snoremap*
|
||||
:snor[emap] {lhs} {rhs} |mapmode-s| *:snor* *:snore* *:snoremap*
|
||||
:ono[remap] {lhs} {rhs} |mapmode-o| *:ono* *:onoremap*
|
||||
:no[remap]! {lhs} {rhs} |mapmode-ic| *:no!* *:noremap!*
|
||||
:ino[remap] {lhs} {rhs} |mapmode-i| *:ino* *:inoremap*
|
||||
:ino[remap] {lhs} {rhs} |mapmode-i| *:ino* *:inor* *:inoremap*
|
||||
:ln[oremap] {lhs} {rhs} |mapmode-l| *:ln* *:lnoremap*
|
||||
:cno[remap] {lhs} {rhs} |mapmode-c| *:cno* *:cnoremap*
|
||||
:cno[remap] {lhs} {rhs} |mapmode-c| *:cno* *:cnor* *:cnoremap*
|
||||
:tno[remap] {lhs} {rhs} |mapmode-t| *:tno* *:tnoremap*
|
||||
Map the key sequence {lhs} to {rhs} for the modes
|
||||
where the map command applies. Disallow mapping of
|
||||
@@ -88,7 +89,7 @@ modes.
|
||||
:unm[ap]! {lhs} |mapmode-ic| *:unm!* *:unmap!*
|
||||
:iu[nmap] {lhs} |mapmode-i| *:iu* *:iunmap*
|
||||
:lu[nmap] {lhs} |mapmode-l| *:lu* *:lunmap*
|
||||
:cu[nmap] {lhs} |mapmode-c| *:cu* *:cunmap*
|
||||
:cu[nmap] {lhs} |mapmode-c| *:cu* *:cun* *:cunmap*
|
||||
:tunma[p] {lhs} |mapmode-t| *:tunma* *:tunmap*
|
||||
Remove the mapping of {lhs} for the modes where the
|
||||
map command applies. The mapping may remain defined
|
||||
@@ -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
|
||||
@@ -1016,7 +1054,7 @@ See |:verbose-cmd| for more information.
|
||||
:norea[bbrev] [<expr>] [<buffer>] [lhs] [rhs]
|
||||
Same as ":ab", but no remapping for this {rhs}.
|
||||
|
||||
*:ca* *:cabbrev*
|
||||
*:ca* *:cab* *:cabbrev*
|
||||
:ca[bbrev] [<expr>] [<buffer>] [lhs] [rhs]
|
||||
Same as ":ab", but for Command-line mode only.
|
||||
|
||||
|
||||
@@ -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 07
|
||||
*message.txt* For Vim version 8.1. Last change: 2019 Oct 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -247,6 +247,9 @@ format of the file. The file will not be marked unmodified. If you care
|
||||
about the loss of information, set the 'fileencoding' option to another value
|
||||
that can handle the characters in the buffer and write again. If you don't
|
||||
care, you can abandon the buffer or reset the 'modified' option.
|
||||
If there is a backup file, when 'writebackup' or 'backup' is set, it will not
|
||||
be deleted, so you can move it back into place if you want to discard the
|
||||
changes.
|
||||
|
||||
*E302* >
|
||||
Could not rename swap file
|
||||
@@ -476,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:
|
||||
@@ -576,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
|
||||
@@ -806,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 May 07
|
||||
*motion.txt* For Vim version 8.1. Last change: 2019 Nov 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -53,6 +53,7 @@ or change text. The following operators are available:
|
||||
|!| ! filter through an external program
|
||||
|=| = filter through 'equalprg' or C-indenting if empty
|
||||
|gq| gq text formatting
|
||||
|gw| gw text formatting with no cursor movement
|
||||
|g?| g? ROT13 encoding
|
||||
|>| > shift right
|
||||
|<| < shift left
|
||||
@@ -226,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
|
||||
@@ -943,7 +950,7 @@ These commands are not marks themselves, but jump to a mark:
|
||||
[` [count] times to lowercase mark before the cursor.
|
||||
|
||||
|
||||
:loc[kmarks] {command} *:loc* *:lockmarks*
|
||||
:loc[kmarks] {command} *:loc* *:lock* *:lockmarks*
|
||||
Execute {command} without adjusting marks. This is
|
||||
useful when changing text in a way that the line count
|
||||
will be the same when the change has completed.
|
||||
@@ -969,7 +976,7 @@ These commands are not marks themselves, but jump to a mark:
|
||||
- folds
|
||||
- diffs
|
||||
|
||||
:kee[pmarks] {command} *:kee* *:keepmarks*
|
||||
:kee[pmarks] {command} *:kee* *:keep* *:keepmarks*
|
||||
Currently only has effect for the filter command
|
||||
|:range!|:
|
||||
- When the number of lines after filtering is equal to
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 May 08
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Nov 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -578,14 +578,17 @@ backslash in front of the ':' will be removed. Example:
|
||||
/* vi:set dir=c\:\tmp: */ ~
|
||||
This sets the 'dir' option to "c:\tmp". Only a single backslash before the
|
||||
':' is removed. Thus to include "\:" you have to specify "\\:".
|
||||
|
||||
*E992*
|
||||
No other commands than "set" are supported, for security reasons (somebody
|
||||
might create a Trojan horse text file with modelines). And not all options
|
||||
can be set. For some options a flag is set, so that when it's used the
|
||||
|sandbox| is effective. Still, there is always a small risk that a modeline
|
||||
causes trouble. E.g., when some joker sets 'textwidth' to 5 all your lines
|
||||
are wrapped unexpectedly. So disable modelines before editing untrusted text.
|
||||
The mail ftplugin does this, for example.
|
||||
can be set. For some options a flag is set, so that when the value is used
|
||||
the |sandbox| is effective. Some options can only be set from the modeline
|
||||
when 'modelineexpr' is set (the default is off).
|
||||
|
||||
Still, there is always a small risk that a modeline causes trouble. E.g.,
|
||||
when some joker sets 'textwidth' to 5 all your lines are wrapped unexpectedly.
|
||||
So disable modelines before editing untrusted text. The mail ftplugin does
|
||||
this, for example.
|
||||
|
||||
Hint: If you would like to do something else than setting an option, you could
|
||||
define an autocommand that checks the file for a specific string. For
|
||||
@@ -853,6 +856,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
|
||||
@@ -1128,6 +1133,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()
|
||||
@@ -1139,8 +1148,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,
|
||||
@@ -1149,9 +1160,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
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")
|
||||
@@ -1357,6 +1369,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
prompt buffer where only the last line can be edited, meant
|
||||
to be used by a plugin, see |prompt-buffer|
|
||||
{only when compiled with the |+channel| feature}
|
||||
popup buffer used in a popup window, see |popup|.
|
||||
{only when compiled with the |+textprop| feature}
|
||||
|
||||
This option is used together with 'bufhidden' and 'swapfile' to
|
||||
specify special kinds of buffers. See |special-buffers|.
|
||||
@@ -1428,8 +1442,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.
|
||||
@@ -1632,8 +1644,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'*
|
||||
@@ -1675,8 +1685,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.
|
||||
@@ -1858,7 +1866,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
|
||||
@@ -1866,11 +1874,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:
|
||||
|
||||
@@ -1892,6 +1913,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.
|
||||
@@ -1901,6 +1935,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
|
||||
@@ -2423,13 +2468,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
|
||||
@@ -2527,7 +2591,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}
|
||||
@@ -2586,6 +2650,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.
|
||||
|
||||
@@ -2636,7 +2706,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"
|
||||
@@ -2697,8 +2767,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
|
||||
@@ -2871,6 +2939,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 "")
|
||||
@@ -3134,8 +3205,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:
|
||||
|
||||
@@ -3226,7 +3297,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The expression will be evaluated in the |sandbox| if set from a
|
||||
modeline, see |sandbox-option|.
|
||||
This option can't be set from a |modeline| when the 'diff' option is
|
||||
on.
|
||||
on or the 'modelineexpr' option is off.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'foldexpr' |textlock|.
|
||||
@@ -3359,6 +3430,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
The expression will be evaluated in the |sandbox| if set from a
|
||||
modeline, see |sandbox-option|.
|
||||
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 'foldtext' |textlock|.
|
||||
@@ -3396,6 +3468,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|. That stops the option from working,
|
||||
since changing the buffer text is not allowed.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
NOTE: This option is set to "" when 'compatible' is set.
|
||||
|
||||
*'formatlistpat'* *'flp'*
|
||||
@@ -3452,6 +3525,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Also see 'swapsync' for controlling fsync() on swap files.
|
||||
'fsync' also applies to |writefile()|, unless a flag is used to
|
||||
overrule it.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'gdefault'* *'gd'* *'nogdefault'* *'nogd'*
|
||||
'gdefault' 'gd' boolean (default off)
|
||||
@@ -3619,7 +3694,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'guiheadroom'* *'ghr'*
|
||||
'guiheadroom' 'ghr' number (default 50)
|
||||
global
|
||||
- {only for GTK and X11 GUI}
|
||||
{only for GTK and X11 GUI}
|
||||
The number of pixels subtracted from the screen height when fitting
|
||||
the GUI window on the screen. Set this before the GUI is started,
|
||||
e.g., in your |gvimrc| file. When zero, the whole screen height will
|
||||
@@ -3680,6 +3755,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.
|
||||
@@ -3767,8 +3845,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.
|
||||
@@ -3777,6 +3854,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'guitabtooltip' is used for the tooltip, see below.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
|
||||
Only used when the GUI tab pages line is displayed. 'e' must be
|
||||
present in 'guioptions'. For the non-GUI tab pages line 'tabline' is
|
||||
@@ -3785,8 +3863,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.
|
||||
@@ -3811,8 +3888,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
|
||||
@@ -3857,6 +3932,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,
|
||||
@@ -3888,6 +3964,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
|
||||
@@ -4027,6 +4107,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When this option contains printf-style '%' items, they will be
|
||||
expanded according to the rules used for 'statusline'. See
|
||||
'titlestring' for example settings.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
{not available when compiled without the |+statusline| feature}
|
||||
|
||||
*'ignorecase'* *'ic'* *'noignorecase'* *'noic'*
|
||||
@@ -4044,6 +4125,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option specifies a function that will be called to
|
||||
activate or deactivate the Input Method.
|
||||
It is not used in the GUI.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
Example: >
|
||||
function ImActivateFunc(active)
|
||||
@@ -4160,6 +4243,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
set imstatusfunc=ImStatusFunc
|
||||
<
|
||||
NOTE: This function is invoked very often. Keep it fast.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
*'imstyle'* *'imst'*
|
||||
'imstyle' 'imst' number (default 1)
|
||||
@@ -4176,6 +4261,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|single-repeat|, etc. Therefore over-the-spot style becomes the
|
||||
default now. This should work fine for most people, however if you
|
||||
have any problem with it, try using on-the-spot style.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
*'include'* *'inc'*
|
||||
'include' 'inc' string (default "^\s*#\s*include")
|
||||
@@ -4210,6 +4297,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
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 'includeexpr' |textlock|.
|
||||
@@ -4297,6 +4385,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
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 'indentexpr' |textlock|.
|
||||
@@ -4771,9 +4860,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.
|
||||
@@ -4915,7 +5004,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'matchtime'* *'mat'*
|
||||
'matchtime' 'mat' number (default 5)
|
||||
global
|
||||
{in Nvi}
|
||||
Tenths of a second to show the matching paren, when 'showmatch' is
|
||||
set. Note that this is not in milliseconds, like other options that
|
||||
set a time. This is to be compatible with Nvi.
|
||||
@@ -5045,10 +5133,25 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
< If you have less than 512 Mbyte |:mkspell| may fail for some
|
||||
languages, no matter what you set 'mkspellmem' to.
|
||||
|
||||
This option cannot be set from a |modeline| or in the |sandbox|.
|
||||
|
||||
*'modeline'* *'ml'* *'nomodeline'* *'noml'*
|
||||
'modeline' 'ml' boolean (Vim default: on (off for root),
|
||||
Vi default: off)
|
||||
local to buffer
|
||||
If 'modeline' is on 'modelines' gives the number of lines that is
|
||||
checked for set commands. If 'modeline' is off or 'modelines' is zero
|
||||
no lines are checked. See |modeline|.
|
||||
|
||||
*'modelineexpr'* *'mle'* *'nomodelineexpr'* *'nomle'*
|
||||
'modelineexpr' 'mle' boolean (default: off)
|
||||
global
|
||||
When on allow some options that are an expression to be set in the
|
||||
modeline. Check the option for whether it is affected by
|
||||
'modelineexpr'. Also see |modeline|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'modelines'* *'mls'*
|
||||
'modelines' 'mls' number (default 5)
|
||||
global
|
||||
@@ -5059,9 +5162,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
*'modifiable'* *'ma'* *'nomodifiable'* *'noma'*
|
||||
*E21*
|
||||
'modifiable' 'ma' boolean (default on)
|
||||
local to buffer
|
||||
*E21*
|
||||
When off the buffer contents cannot be changed. The 'fileformat' and
|
||||
'fileencoding' options also can't be changed.
|
||||
Can be reset on startup with the |-M| command line argument.
|
||||
@@ -5102,12 +5205,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
|
||||
@@ -5118,7 +5220,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'|.
|
||||
@@ -5137,6 +5247,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)
|
||||
@@ -5173,8 +5285,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
|
||||
@@ -5351,7 +5461,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
rows in the window, depending on whether 'number' or 'relativenumber'
|
||||
is set. Thus with the Vim default of 4 there is room for a line number
|
||||
up to 999. When the buffer has 1000 lines five columns will be used.
|
||||
The minimum value is 1, the maximum value is 10.
|
||||
The minimum value is 1, the maximum value is 20.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
@@ -5359,7 +5469,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
|
||||
@@ -5588,17 +5698,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.
|
||||
@@ -5678,8 +5799,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|.
|
||||
@@ -5687,8 +5806,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|.
|
||||
|
||||
@@ -6058,6 +6175,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When this option is not empty, it determines the content of the ruler
|
||||
string, as displayed for the 'ruler' option.
|
||||
The format of this option is like that of 'statusline'.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
|
||||
The default ruler width is 17 characters. To make the ruler 15
|
||||
characters wide, put "%15(" at the start and "%)" at the end.
|
||||
Example: >
|
||||
@@ -6174,6 +6293,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
|
||||
@@ -6345,8 +6473,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
|
||||
@@ -6401,10 +6529,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
|
||||
@@ -6444,13 +6572,14 @@ 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
|
||||
@@ -6474,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
|
||||
@@ -6598,7 +6728,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"Pattern not found", "Back at original", etc.
|
||||
q use "recording" instead of "recording @a"
|
||||
F don't give the file info when editing a file, like `:silent`
|
||||
was used for the command
|
||||
was used for the command; note that this also affects messages
|
||||
from autocommands
|
||||
S do not show search count message when searching, e.g.
|
||||
"[1/5]"
|
||||
|
||||
@@ -6628,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
|
||||
@@ -6645,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|)
|
||||
@@ -6712,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
|
||||
@@ -6766,6 +6898,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"auto" only when there is a sign to display
|
||||
"no" never
|
||||
"yes" always
|
||||
"number" display signs in the 'number' column. If the number
|
||||
column is not present, then behaves like "auto".
|
||||
|
||||
|
||||
*'smartcase'* *'scs'* *'nosmartcase'* *'noscs'*
|
||||
@@ -7008,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|
|
||||
|
||||
@@ -7052,7 +7182,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When the option starts with "%!" then it is used as an expression,
|
||||
evaluated and the result is used as the option value. Example: >
|
||||
:set statusline=%!MyStatusLine()
|
||||
< The result can contain %{} items that will be evaluated too.
|
||||
< The *g:statusline_winid* variable will be set to the |window-ID| of the
|
||||
window that the status line belongs to.
|
||||
The result can contain %{} items that will be evaluated too.
|
||||
Note that the "%!" expression is evaluated in the context of the
|
||||
current window and buffer, while %{} items are evaluated in the
|
||||
context of the window that the statusline belongs to.
|
||||
@@ -7155,16 +7287,19 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
become empty. This will make a group like the following disappear
|
||||
completely from the statusline when none of the flags are set. >
|
||||
:set statusline=...%(\ [%M%R%H]%)...
|
||||
< *g:actual_curbuf*
|
||||
Beware that an expression is evaluated each and every time the status
|
||||
line is displayed. 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.
|
||||
< 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.
|
||||
|
||||
The 'statusline' option will be evaluated in the |sandbox| if set from
|
||||
a modeline, see |sandbox-option|.
|
||||
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 'statusline' |textlock|.
|
||||
@@ -7327,8 +7462,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.
|
||||
@@ -7345,6 +7478,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
When changing something that is used in 'tabline' that does not
|
||||
trigger it to be updated, use |:redrawtabline|.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
|
||||
Keep in mind that only one of the tab pages is the current one, others
|
||||
are invisible and you can't jump to their windows.
|
||||
@@ -7353,8 +7487,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|
|
||||
|
||||
@@ -7873,8 +8005,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
non-empty 't_ts' option).
|
||||
When Vim was compiled with HAVE_X11 defined, the original title will
|
||||
be restored if possible, see |X11|.
|
||||
|
||||
When this option contains printf-style '%' items, they will be
|
||||
expanded according to the rules used for 'statusline'.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
|
||||
Example: >
|
||||
:auto BufEnter * let &titlestring = hostname() . "/" . expand("%:p")
|
||||
:set title titlestring=%<%F%=%l/%L-%P titlelen=70
|
||||
@@ -8022,7 +8157,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
already.
|
||||
Additionally, if vim is compiled with the |+termresponse| feature and
|
||||
|t_RV| is set to the escape sequence to request the xterm version
|
||||
number, more intelligent detection process runs.
|
||||
number, more intelligent detection is done.
|
||||
The "xterm2" value will be set if the xterm version is reported to be
|
||||
from 95 to 276. The "sgr" value will be set if Vim detects Mac
|
||||
Terminal.app, iTerm2 or mintty, and when the xterm version is 277 or
|
||||
@@ -8060,6 +8195,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
undo file that exists is used. When it cannot be read an error is
|
||||
given, no further entry is used.
|
||||
See |undo-persistence|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'undofile'* *'noundofile'* *'udf'* *'noudf'*
|
||||
'undofile' 'udf' boolean (default off)
|
||||
@@ -8080,8 +8217,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
|
||||
@@ -8369,6 +8506,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When equal to "NONE" no viminfo file will be read or written.
|
||||
This option can be set with the |-i| command line flag. The |--clean|
|
||||
command line flag sets it to "NONE".
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'virtualedit'* *'ve'*
|
||||
'virtualedit' 've' string (default "")
|
||||
@@ -8466,8 +8605,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.
|
||||
|
||||
@@ -8585,6 +8724,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: >
|
||||
@@ -8635,6 +8776,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option is not used for <F10>; on Win32 and with GTK <F10> will
|
||||
select the menu, unless it has been mapped.
|
||||
|
||||
*'wincolor'* *'wcr'*
|
||||
'wincolor' 'wcr' string (default empty)
|
||||
local to window
|
||||
Highlight group name to use for this window instead of the Normal
|
||||
color |hl-Normal|.
|
||||
|
||||
*'window'* *'wi'*
|
||||
'window' 'wi' number (default screen height - 1)
|
||||
global
|
||||
@@ -8651,8 +8798,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
|
||||
@@ -8673,8 +8818,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|.
|
||||
@@ -8683,8 +8826,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.
|
||||
@@ -8692,8 +8833,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
|
||||
@@ -8707,8 +8846,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
|
||||
@@ -8736,8 +8873,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
|
||||
|
||||
@@ -61,11 +61,11 @@ explanations are in chapter 27 |usr_27.txt|.
|
||||
n Repeat the latest "/" or "?" [count] times.
|
||||
If the cursor doesn't move the search is repeated with
|
||||
count + 1.
|
||||
|last-pattern| {Vi: no count}
|
||||
|last-pattern|
|
||||
|
||||
*N*
|
||||
N Repeat the latest "/" or "?" [count] times in
|
||||
opposite direction. |last-pattern| {Vi: no count}
|
||||
opposite direction. |last-pattern|
|
||||
|
||||
*star* *E348* *E349*
|
||||
* Search forward for the [count]'th occurrence of the
|
||||
|
||||
@@ -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 10
|
||||
|
||||
------------------------------------------------
|
||||
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
|
||||
@@ -3502,7 +3512,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
- Click "Add..."
|
||||
- Set External Editor (adjust path as needed, include
|
||||
the quotes and !.! at the end):
|
||||
"c:\Program Files\Vim\vim81\gvim.exe" !.!
|
||||
"c:\Program Files\Vim\vim881\gvim.exe" !.!
|
||||
- Check that the filetype in the box below is
|
||||
{asterisk}.{asterisk} (all files), or whatever types
|
||||
you want (cec: change {asterisk} to * ; I had to
|
||||
@@ -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,20 @@ netrw:
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
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 +4289,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
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*quickfix.txt* For Vim version 8.1. Last change: 2019 Oct 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -102,7 +102,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
:ll[!] [nr] Same as ":cc", except the location list for the
|
||||
:[nr]ll[!] current window is used instead of the quickfix list.
|
||||
|
||||
*:cn* *:cnext* *E553*
|
||||
*:cn* *:cne* *:cnext* *E553*
|
||||
:[count]cn[ext][!] Display the [count] next error in the list that
|
||||
includes a file name. If there are no file names at
|
||||
all, go to the [count] next error. See |:cc| for
|
||||
@@ -246,7 +246,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
'encoding' option, you can use the 'makeencoding'
|
||||
option to specify the encoding.
|
||||
|
||||
*:lf* *:lfile*
|
||||
*:lf* *:lfi* *:lfile*
|
||||
:lf[ile][!] [errorfile] Same as ":cfile", except the location list for the
|
||||
current window is used instead of the quickfix list.
|
||||
You can not use the -q command-line option to set
|
||||
@@ -261,7 +261,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
option to specify the encoding.
|
||||
|
||||
|
||||
:lg[etfile] [errorfile] *:lg* *:lgetfile*
|
||||
:lg[etfile] [errorfile] *:lg* *:lge* *:lgetfile*
|
||||
Same as ":cgetfile", except the location list for the
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
@@ -299,7 +299,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
the current window is used instead of the quickfix
|
||||
list.
|
||||
|
||||
*:cad* *:caddbuffer*
|
||||
*:cad* *:cadd* *:caddbuffer*
|
||||
:cad[dbuffer] [bufnr] Read the error list from the current buffer and add
|
||||
the errors to the current quickfix list. If a
|
||||
quickfix list is not present, then a new list is
|
||||
@@ -346,7 +346,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
Example: >
|
||||
:g/mypattern/caddexpr expand("%") . ":" . line(".") . ":" . getline(".")
|
||||
<
|
||||
*:lad* *:laddexpr*
|
||||
*:lad* *:addd* *:laddexpr*
|
||||
:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
|
||||
current window is used instead of 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
|
||||
@@ -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 Apr 28
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 Nov 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
|
||||
@@ -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
|
||||
@@ -798,6 +802,7 @@ Short explanation of each option: *option-list*
|
||||
'menuitems' 'mis' maximum number of items in a menu
|
||||
'mkspellmem' 'msm' memory used before |:mkspell| compresses the tree
|
||||
'modeline' 'ml' recognize modelines at start or end of file
|
||||
'modelineexpr' 'mle' allow setting expression options from a modeline
|
||||
'modelines' 'mls' number of lines checked for modelines
|
||||
'modifiable' 'ma' changes to the text are not possible
|
||||
'modified' 'mod' buffer has been modified
|
||||
@@ -828,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
|
||||
@@ -863,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
|
||||
@@ -981,6 +988,7 @@ Short explanation of each option: *option-list*
|
||||
'wildmode' 'wim' mode for 'wildchar' command-line expansion
|
||||
'wildoptions' 'wop' specifies how command line completion is done
|
||||
'winaltkeys' 'wak' when the windows system handles ALT keys
|
||||
'wincolor' 'wcr' window-local highlighting
|
||||
'window' 'wi' nr of lines to scroll for CTRL-F and CTRL-B
|
||||
'winheight' 'wh' minimum number of lines for the current window
|
||||
'winfixheight' 'wfh' keep window height when opening/closing windows
|
||||
@@ -1071,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 May 07
|
||||
*repeat.txt* For Vim version 8.1. Last change: 2019 Sep 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -178,7 +178,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
:so[urce] {file} Read Ex commands from {file}. These are commands that
|
||||
start with a ":".
|
||||
Triggers the |SourcePre| autocommand.
|
||||
|
||||
*:source!*
|
||||
:so[urce]! {file} Read Vim commands from {file}. These are commands
|
||||
that are executed from Normal mode, like you type
|
||||
them.
|
||||
@@ -186,6 +186,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
|:bufdo|, in a loop or when another command follows
|
||||
the display won't be updated while executing the
|
||||
commands.
|
||||
Cannot be used in the |sandbox|.
|
||||
|
||||
*:ru* *:runtime*
|
||||
:ru[ntime][!] [where] {file} ..
|
||||
@@ -218,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
|
||||
@@ -279,9 +280,16 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
after loading your .vimrc file. With this command it
|
||||
can be done earlier.
|
||||
|
||||
Packages will be loaded only once. After this command
|
||||
it won't happen again. When the optional ! is added
|
||||
this command will load packages even when done before.
|
||||
Packages will be loaded only once. Using
|
||||
`:packloadall` a second time will have no effect.
|
||||
When the optional ! is added this command will load
|
||||
packages even when done before.
|
||||
|
||||
Note that when using `:packloadall` in the |vimrc|
|
||||
file, the 'runtimepath' option is updated, and later
|
||||
all plugins in 'runtimepath' will be loaded, which
|
||||
means they are loaded again. Plugins are expected to
|
||||
handle that.
|
||||
|
||||
An error only causes sourcing the script where it
|
||||
happens to be aborted, further plugins will be loaded.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*scroll.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*scroll.txt* For Vim version 8.1. Last change: 2019 May 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -82,9 +82,6 @@ CTRL-U Scroll window Upwards in the buffer. The number of
|
||||
may be a difference). When the cursor is on the first
|
||||
line of the buffer nothing happens and a beep is
|
||||
produced. See also 'startofline' option.
|
||||
{difference from vi: Vim scrolls 'scroll' screen
|
||||
lines, instead of file lines; makes a difference when
|
||||
lines wrap}
|
||||
|
||||
<S-Up> or *<S-Up>* *<kPageUp>*
|
||||
<PageUp> or *<PageUp>* *CTRL-B*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Nov 12
|
||||
|
||||
|
||||
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,8 @@ 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.
|
||||
|
||||
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
|
||||
@@ -182,9 +185,9 @@ See |sign_place()| for the equivalent Vim script function.
|
||||
|
||||
By default, the sign is assigned a default priority of 10. To
|
||||
assign a different priority value, use "priority={prio}" to
|
||||
specify a value. The priority is used to determine the
|
||||
highlight group used when multiple signs are placed on the
|
||||
same line.
|
||||
specify a value. The priority is used to determine the sign
|
||||
that is displayed when multiple signs are placed on the same
|
||||
line.
|
||||
|
||||
Examples: >
|
||||
:sign place 5 line=3 name=sign1 file=a.py
|
||||
@@ -204,7 +207,9 @@ See |sign_place()| for the equivalent Vim script function.
|
||||
it (e.g., when the debugger has stopped at a breakpoint).
|
||||
|
||||
The optional "group={group}" attribute can be used before
|
||||
"file=" to select a sign in a particular group.
|
||||
"file=" to select a sign in a particular group. The optional
|
||||
"priority={prio}" attribute can be used to change the priority
|
||||
of an existing sign.
|
||||
|
||||
:sign place {id} name={name} [buffer={nr}]
|
||||
Same, but use buffer {nr}. If the buffer argument is not
|
||||
@@ -342,4 +347,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 May 05
|
||||
*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*
|
||||
|
||||
@@ -1252,7 +1254,7 @@ vimrc file.
|
||||
options to [file] (default ".exrc" in the current
|
||||
directory).
|
||||
|
||||
*:mkv* *:mkvimrc*
|
||||
*:mkv* *:mkvi* *:mkvimrc*
|
||||
:mkv[imrc][!] [file] Like ":mkexrc", but the default is ".vimrc" in the
|
||||
current directory. The ":version" command is also
|
||||
written to the file.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Mar 29
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Oct 27
|
||||
|
||||
|
||||
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.
|
||||
|
||||
@@ -1158,6 +1158,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
|
||||
@@ -1746,7 +1766,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 +1943,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 +2653,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
|
||||
@@ -3140,7 +3169,7 @@ in your <.vimrc>, and :set fdm=syntax. I suggest doing the latter via a
|
||||
modeline at the end of your LaTeX file: >
|
||||
% vim: fdm=syntax
|
||||
If your system becomes too slow, then you might wish to look into >
|
||||
https://vimhelp.appspot.com/vim_faq.txt.html#faq-29.7
|
||||
https://vimhelp.org/vim_faq.txt.html#faq-29.7
|
||||
<
|
||||
*g:tex_nospell*
|
||||
Tex: No Spell Checking Wanted~
|
||||
@@ -4827,8 +4856,9 @@ cterm={attr-list} *highlight-cterm*
|
||||
The "cterm" argument is likely to be different from "term", when
|
||||
colors are used. For example, in a normal terminal comments could
|
||||
be underlined, in a color terminal they can be made Blue.
|
||||
Note: Many terminals (e.g., DOS console) can't mix these attributes
|
||||
with coloring. Use only one of "cterm=" OR "ctermfg=" OR "ctermbg=".
|
||||
Note: Some terminals (e.g., DOS console) can't mix these attributes
|
||||
with coloring. To be portable, use only one of "cterm=" OR "ctermfg="
|
||||
OR "ctermbg=".
|
||||
|
||||
ctermfg={color-nr} *highlight-ctermfg* *E421*
|
||||
ctermbg={color-nr} *highlight-ctermbg*
|
||||
@@ -5041,8 +5071,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
|
||||
@@ -5209,6 +5246,15 @@ load the syntax file.
|
||||
The command also deletes the "b:current_syntax" variable, since no syntax is
|
||||
loaded after this command.
|
||||
|
||||
To clean up specific syntax groups for the current buffer: >
|
||||
:syntax clear {group-name} ..
|
||||
This removes all patterns and keywords for {group-name}.
|
||||
|
||||
To clean up specific syntax group lists for the current buffer: >
|
||||
:syntax clear @{grouplist-name} ..
|
||||
This sets {grouplist-name}'s contents to an empty list.
|
||||
|
||||
*:syntax-off* *:syn-off*
|
||||
If you want to disable syntax highlighting for all buffers, you need to remove
|
||||
the autocommands that load the syntax files: >
|
||||
:syntax off
|
||||
@@ -5218,14 +5264,6 @@ What this command actually does, is executing the command >
|
||||
See the "nosyntax.vim" file for details. Note that for this to work
|
||||
$VIMRUNTIME must be valid. See |$VIMRUNTIME|.
|
||||
|
||||
To clean up specific syntax groups for the current buffer: >
|
||||
:syntax clear {group-name} ..
|
||||
This removes all patterns and keywords for {group-name}.
|
||||
|
||||
To clean up specific syntax group lists for the current buffer: >
|
||||
:syntax clear @{grouplist-name} ..
|
||||
This sets {grouplist-name}'s contents to an empty list.
|
||||
|
||||
*:syntax-reset* *:syn-reset*
|
||||
If you have changed the colors and messed them up, use this command to get the
|
||||
defaults back: >
|
||||
|
||||
417
runtime/doc/tags
417
runtime/doc/tags
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*tagsrch.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*tagsrch.txt* For Vim version 8.1. Last change: 2019 Nov 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -85,18 +85,21 @@ changed, to avoid confusion when using ":tnext". It is changed when using
|
||||
":tag {name}".
|
||||
|
||||
The ignore-case matches are not found for a ":tag" command when:
|
||||
- the 'ignorecase' option is off and 'tagcase' is "followic"
|
||||
- 'tagcase' is "followic" and the 'ignorecase' option is off
|
||||
- 'tagcase' is "followscs" and the 'ignorecase' option is off and the
|
||||
'smartcase' option is off or the pattern contains an upper case character.
|
||||
- 'tagcase' is "match"
|
||||
- 'tagcase' is "smart" and the pattern contains an upper case character.
|
||||
- 'tagcase' is "followscs" and 'smartcase' option is on and the pattern
|
||||
contains an upper case character.
|
||||
|
||||
The ignore-case matches are found when:
|
||||
- a pattern is used (starting with a "/")
|
||||
- for ":tselect"
|
||||
- when 'tagcase' is "followic" and 'ignorecase' is off
|
||||
- when 'tagcase' is "match"
|
||||
- when 'tagcase' is "followscs" and the 'smartcase' option is off
|
||||
- when 'tagcase' is "followic" and 'ignorecase' is on
|
||||
- when 'tagcase' is "followscs" and 'ignorecase' is on or the 'smartcase'
|
||||
option is on and the pattern does not contain an upper case character
|
||||
- when 'tagcase' is "ignore"
|
||||
- when 'tagcase' is "smart" and the patter does not contain an upper case
|
||||
character
|
||||
|
||||
Note that using ignore-case tag searching disables binary searching in the
|
||||
tags file, which causes a slowdown. This can be avoided by fold-case sorting
|
||||
@@ -433,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
|
||||
@@ -503,7 +506,7 @@ Some programs that generate tags files:
|
||||
ctags As found on most Unix systems. Only supports C. Only
|
||||
does the basic work.
|
||||
*Exuberant_ctags*
|
||||
exuberant ctags This a very good one. It works for C, C++, Java,
|
||||
exuberant ctags This is a very good one. It works for C, C++, Java,
|
||||
Fortran, Eiffel and others. It can generate tags for
|
||||
many items. See http://ctags.sourceforge.net.
|
||||
etags Connected to Emacs. Supports many languages.
|
||||
@@ -824,7 +827,7 @@ CTRL-W d Open a new window, with the cursor on the first
|
||||
(default: whole file).
|
||||
See |:search-args| for [/] and [!].
|
||||
|
||||
*:che* *:checkpath*
|
||||
*:che* *:chec* *:check* *:checkpath*
|
||||
:che[ckpath] List all the included files that could not be found.
|
||||
|
||||
:che[ckpath]! List all the included files.
|
||||
|
||||
@@ -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 Oct 27
|
||||
|
||||
|
||||
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.
|
||||
@@ -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 May 05
|
||||
*terminal.txt* For Vim version 8.1. Last change: 2019 Nov 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -12,35 +12,36 @@ The terminal feature is optional, use this to check if your Vim has it: >
|
||||
If the result is "1" you have it.
|
||||
|
||||
|
||||
1. Basic use |terminal-use|
|
||||
Typing |terminal-typing|
|
||||
Size and color |terminal-size-color|
|
||||
Syntax |:terminal|
|
||||
Resizing |terminal-resizing|
|
||||
Terminal Modes |Terminal-mode|
|
||||
Cursor style |terminal-cursor-style|
|
||||
Session |terminal-session|
|
||||
Special keys |terminal-special-keys|
|
||||
Unix |terminal-unix|
|
||||
MS-Windows |terminal-ms-windows|
|
||||
2. Terminal communication |terminal-communication|
|
||||
Vim to job: term_sendkeys() |terminal-to-job|
|
||||
Job to Vim: JSON API |terminal-api|
|
||||
Using the client-server feature |terminal-client-server|
|
||||
3. Remote testing |terminal-testing|
|
||||
4. Diffing screen dumps |terminal-diff|
|
||||
Writing a screen dump test for Vim |terminal-dumptest|
|
||||
Creating a screen dump |terminal-screendump|
|
||||
Comparing screen dumps |terminal-diffscreendump|
|
||||
5. Debugging |terminal-debug|
|
||||
Starting |termdebug-starting|
|
||||
Example session |termdebug-example|
|
||||
Stepping through code |termdebug-stepping|
|
||||
Inspecting variables |termdebug-variables|
|
||||
Other commands |termdebug-commands|
|
||||
Prompt mode |termdebug-prompt|
|
||||
Communication |termdebug-communication|
|
||||
Customizing |termdebug-customizing|
|
||||
1. Basic use |terminal-use|
|
||||
Typing |terminal-typing|
|
||||
Size and color |terminal-size-color|
|
||||
Command syntax |:terminal|
|
||||
Resizing |terminal-resizing|
|
||||
Terminal Modes |Terminal-mode|
|
||||
Cursor style |terminal-cursor-style|
|
||||
Session |terminal-session|
|
||||
Special keys |terminal-special-keys|
|
||||
Unix |terminal-unix|
|
||||
MS-Windows |terminal-ms-windows|
|
||||
2. Terminal functions |terminal-function-details|
|
||||
3. Terminal communication |terminal-communication|
|
||||
Vim to job: term_sendkeys() |terminal-to-job|
|
||||
Job to Vim: JSON API |terminal-api|
|
||||
Using the client-server feature |terminal-client-server|
|
||||
4. Remote testing |terminal-testing|
|
||||
5. Diffing screen dumps |terminal-diff|
|
||||
Writing a screen dump test for Vim |terminal-dumptest|
|
||||
Creating a screen dump |terminal-screendump|
|
||||
Comparing screen dumps |terminal-diffscreendump|
|
||||
6. Debugging |terminal-debug|
|
||||
Starting |termdebug-starting|
|
||||
Example session |termdebug-example|
|
||||
Stepping through code |termdebug-stepping|
|
||||
Inspecting variables |termdebug-variables|
|
||||
Other commands |termdebug-commands|
|
||||
Prompt mode |termdebug-prompt|
|
||||
Communication |termdebug-communication|
|
||||
Customizing |termdebug-customizing|
|
||||
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
The terminal feature requires the |+job| and |+channel| features.
|
||||
@@ -159,7 +160,7 @@ The |term_setansicolors()| function can be used to change the colors, and
|
||||
|term_getansicolors()| to get the currently used colors.
|
||||
|
||||
|
||||
Syntax ~
|
||||
Command syntax ~
|
||||
|
||||
:[range]ter[minal] [options] [command] *:ter* *:terminal*
|
||||
Open a new terminal window.
|
||||
@@ -192,6 +193,7 @@ 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
|
||||
@@ -208,6 +210,10 @@ 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.
|
||||
@@ -221,7 +227,7 @@ 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
|
||||
@@ -233,6 +239,10 @@ 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.
|
||||
@@ -262,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
|
||||
@@ -426,8 +442,450 @@ ConPTY problems have been fixed "winpty" will be preferred.
|
||||
Environment variables are used to pass information to the running job:
|
||||
VIM_SERVERNAME v:servername
|
||||
|
||||
|
||||
==============================================================================
|
||||
2. Terminal communication *terminal-communication*
|
||||
2. Terminal functions *terminal-function-details*
|
||||
|
||||
*term_dumpdiff()*
|
||||
term_dumpdiff({filename}, {filename} [, {options}])
|
||||
Open a new window displaying the difference between the two
|
||||
files. The files must have been created with
|
||||
|term_dumpwrite()|.
|
||||
Returns the buffer number or zero when the diff fails.
|
||||
Also see |terminal-diff|.
|
||||
NOTE: this does not work with double-width characters yet.
|
||||
|
||||
The top part of the buffer contains the contents of the first
|
||||
file, the bottom part of the buffer contains the contents of
|
||||
the second file. The middle part shows the differences.
|
||||
The parts are separated by a line of equals.
|
||||
|
||||
If the {options} argument is present, it must be a Dict with
|
||||
these possible members:
|
||||
"term_name" name to use for the buffer name, instead
|
||||
of the first file name.
|
||||
"term_rows" vertical size to use for the terminal,
|
||||
instead of using 'termwinsize'
|
||||
"term_cols" horizontal size to use for the terminal,
|
||||
instead of using 'termwinsize'
|
||||
"vertical" split the window vertically
|
||||
"curwin" use the current window, do not split the
|
||||
window; fails if the current buffer
|
||||
cannot be |abandon|ed
|
||||
"bufnr" do not create a new buffer, use the
|
||||
existing buffer "bufnr". This buffer
|
||||
must have been previously created with
|
||||
term_dumpdiff() or term_dumpload() and
|
||||
visible in a window.
|
||||
"norestore" do not add the terminal window to a
|
||||
session file
|
||||
|
||||
Each character in the middle part indicates a difference. If
|
||||
there are multiple differences only the first in this list is
|
||||
used:
|
||||
X different character
|
||||
w different width
|
||||
f different foreground color
|
||||
b different background color
|
||||
a different attribute
|
||||
+ missing position in first file
|
||||
- missing position in second file
|
||||
|
||||
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}
|
||||
The file must have been created with |term_dumpwrite()|.
|
||||
Returns the buffer number or zero when it fails.
|
||||
Also see |terminal-diff|.
|
||||
|
||||
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
|
||||
{filename}. This uses a format that can be used with
|
||||
|term_dumpload()| and |term_dumpdiff()|.
|
||||
If the job in the terminal already finished an error is given:
|
||||
*E958*
|
||||
If {filename} already exists an error is given: *E953*
|
||||
Also see |terminal-diff|.
|
||||
|
||||
{options} is a dictionary with these optional entries:
|
||||
"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()|.
|
||||
|
||||
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}.
|
||||
Returns a List of length 16 where each element is a String
|
||||
representing a color in hexadecimal "#rrggbb" format.
|
||||
Also see |term_setansicolors()| and |g:terminal_ansi_colors|.
|
||||
If neither was used returns the default colors.
|
||||
|
||||
{buf} is used as with |term_getsize()|. If the buffer does not
|
||||
exist or is not a terminal window, an empty list is returned.
|
||||
|
||||
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"
|
||||
item, return whether {what} is on. {what} can be one of:
|
||||
bold
|
||||
italic
|
||||
underline
|
||||
strike
|
||||
reverse
|
||||
|
||||
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
|
||||
two numbers and a dictionary: [row, col, dict].
|
||||
|
||||
"row" and "col" are one based, the first screen cell is row
|
||||
1, column 1. This is the cursor position of the terminal
|
||||
itself, not of the Vim window.
|
||||
|
||||
"dict" can have these members:
|
||||
"visible" one when the cursor is visible, zero when it
|
||||
is hidden.
|
||||
"blink" one when the cursor is blinking, zero when it
|
||||
is not blinking.
|
||||
"shape" 1 for a block cursor, 2 for underline and 3
|
||||
for a vertical bar.
|
||||
"color" color of the cursor, e.g. "green"
|
||||
|
||||
{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.
|
||||
|
||||
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.
|
||||
|
||||
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}.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
|
||||
The first line has {row} one. When {row} is "." the cursor
|
||||
line is used. When {row} is invalid an empty string is
|
||||
returned.
|
||||
|
||||
To get attributes of each character use |term_scrape()|.
|
||||
|
||||
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
|
||||
terminal {buf}. This is the offset between the row number
|
||||
used for |term_getline()| and |getline()|, so that: >
|
||||
term_getline(buf, N)
|
||||
< is equal to: >
|
||||
getline(N + term_getscrolled(buf))
|
||||
< (if that line exists).
|
||||
|
||||
{buf} is used as with |term_getsize()|.
|
||||
|
||||
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
|
||||
numbers: [rows, cols]. This is the size of the terminal, not
|
||||
the window containing the terminal.
|
||||
|
||||
{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.
|
||||
|
||||
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
|
||||
separated list of these items:
|
||||
running job is running
|
||||
finished job has finished
|
||||
normal in Terminal-Normal mode
|
||||
One of "running" or "finished" is always present.
|
||||
|
||||
{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.
|
||||
|
||||
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
|
||||
job in the terminal has set.
|
||||
|
||||
{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.
|
||||
|
||||
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
|
||||
terminal window {buf}. {buf} is used as with |term_getsize()|.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
|
||||
term_scrape({buf}, {row}) *term_scrape()*
|
||||
Get the contents of {row} of terminal screen of {buf}.
|
||||
For {buf} see |term_getsize()|.
|
||||
|
||||
The first line has {row} one. When {row} is "." the cursor
|
||||
line is used. When {row} is invalid an empty string is
|
||||
returned.
|
||||
|
||||
Return a List containing a Dict for each screen cell:
|
||||
"chars" character(s) at the cell
|
||||
"fg" foreground color as #rrggbb
|
||||
"bg" background color as #rrggbb
|
||||
"attr" attributes of the cell, use |term_getattr()|
|
||||
to get the individual flags
|
||||
"width" cell width: 1 or 2
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_scrape(row)
|
||||
|
||||
|
||||
term_sendkeys({buf}, {keys}) *term_sendkeys()*
|
||||
Send keystrokes {keys} to terminal {buf}.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
|
||||
{keys} are translated as key sequences. For example, "\<c-x>"
|
||||
means the character CTRL-X.
|
||||
|
||||
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}.
|
||||
{colors} must be a List of 16 valid color names or hexadecimal
|
||||
color codes, like those accepted by |highlight-guifg|.
|
||||
Also see |term_getansicolors()| and |g:terminal_ansi_colors|.
|
||||
|
||||
The colors normally are:
|
||||
0 black
|
||||
1 dark red
|
||||
2 dark green
|
||||
3 brown
|
||||
4 dark blue
|
||||
5 dark magenta
|
||||
6 dark cyan
|
||||
7 light grey
|
||||
8 dark grey
|
||||
9 red
|
||||
10 green
|
||||
11 yellow
|
||||
12 blue
|
||||
13 magenta
|
||||
14 cyan
|
||||
15 white
|
||||
|
||||
These colors are used in the GUI and in the terminal when
|
||||
'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.
|
||||
|
||||
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
|
||||
another way, {how} defines whether the job in the terminal can
|
||||
be stopped.
|
||||
When {how} is empty (the default), the job will not be
|
||||
stopped, trying to exit will result in |E947|.
|
||||
Otherwise, {how} specifies what signal to send to the job.
|
||||
See |job_stop()| for the values.
|
||||
|
||||
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: >
|
||||
terminal ++curwin ++cols=%d ++rows=%d {command}
|
||||
< Make sure to escape the command properly.
|
||||
|
||||
Use an empty {command} to run 'shell'.
|
||||
Use "NONE" to not restore this window.
|
||||
|
||||
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
|
||||
containing the terminal will also be adjusted, if possible.
|
||||
If {rows} or {cols} is zero or negative, that dimension is not
|
||||
changed.
|
||||
|
||||
{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.
|
||||
|
||||
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.
|
||||
|
||||
{cmd} can be a string or a List, like with |job_start()|. The
|
||||
string "NONE" can be used to open a terminal window without
|
||||
starting a job, the pty of the terminal can be used by a
|
||||
command like gdb.
|
||||
|
||||
Returns the buffer number of the terminal window. If {cmd}
|
||||
cannot be executed the window does open and shows an error
|
||||
message.
|
||||
If opening the window fails zero is returned.
|
||||
|
||||
{options} are similar to what is used for |job_start()|, see
|
||||
|job-options|. However, not all options can be used. These
|
||||
are supported:
|
||||
all timeout options
|
||||
"stoponexit", "cwd", "env"
|
||||
"callback", "out_cb", "err_cb", "exit_cb", "close_cb"
|
||||
"in_io", "in_top", "in_bot", "in_name", "in_buf"
|
||||
"out_io", "out_name", "out_buf", "out_modifiable", "out_msg"
|
||||
"err_io", "err_name", "err_buf", "err_modifiable", "err_msg"
|
||||
However, at least one of stdin, stdout or stderr must be
|
||||
connected to the terminal. When I/O is connected to the
|
||||
terminal then the callback function for that part is not used.
|
||||
|
||||
There are extra options:
|
||||
"term_name" name to use for the buffer name, instead
|
||||
of the command name.
|
||||
"term_rows" vertical size to use for the terminal,
|
||||
instead of using 'termwinsize'
|
||||
"term_cols" horizontal size to use for the terminal,
|
||||
instead of using 'termwinsize'
|
||||
"vertical" split the window vertically; note that
|
||||
other window position can be defined with
|
||||
command modifiers, such as |:belowright|.
|
||||
"curwin" use the current window, do not split the
|
||||
window; fails if the current buffer
|
||||
cannot be |abandon|ed
|
||||
"hidden" do not open a window
|
||||
"norestore" do not add the terminal window to a
|
||||
session file
|
||||
"term_kill" what to do when trying to close the
|
||||
terminal window, see |term_setkill()|
|
||||
"term_finish" What to do when the job is finished:
|
||||
"close": close any windows
|
||||
"open": open window if needed
|
||||
Note that "open" can be interruptive.
|
||||
See |term++close| and |term++open|.
|
||||
"term_opencmd" command to use for opening the window when
|
||||
"open" is used for "term_finish"; must
|
||||
have "%d" where the buffer number goes,
|
||||
e.g. "10split|buffer %d"; when not
|
||||
specified "botright sbuf %d" is used
|
||||
"eof_chars" Text to send after all buffer lines were
|
||||
written to the terminal. When not set
|
||||
CTRL-D is used on MS-Windows. For Python
|
||||
use CTRL-Z or "exit()". For a shell use
|
||||
"exit". A CR is always added.
|
||||
"ansi_colors" A list of 16 color names or hex codes
|
||||
defining the ANSI palette used in GUI
|
||||
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()
|
||||
|
||||
|
||||
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.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_wait()
|
||||
|
||||
==============================================================================
|
||||
3. Terminal communication *terminal-communication*
|
||||
|
||||
There are several ways to communicate with the job running in a terminal:
|
||||
- Use |term_sendkeys()| to send text and escape sequences from Vim to the job.
|
||||
@@ -469,9 +927,9 @@ 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
|
||||
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: >
|
||||
@@ -495,7 +953,8 @@ Currently supported commands:
|
||||
directory, thus it's best to use the full path.
|
||||
|
||||
[options] is only used when opening a new window. If present,
|
||||
it must be a Dict. Similarly to |++opt|, These entries are recognized:
|
||||
it must be a Dict. Similarly to |++opt|, These entries are
|
||||
recognized:
|
||||
"ff" file format: "dos", "mac" or "unix"
|
||||
"fileformat" idem
|
||||
"enc" overrides 'fileencoding'
|
||||
@@ -533,7 +992,7 @@ In the job you can then do something like: >
|
||||
This will open the file "some_file.c" and put the cursor on line 123.
|
||||
|
||||
==============================================================================
|
||||
3. Remote testing *terminal-testing*
|
||||
4. Remote testing *terminal-testing*
|
||||
|
||||
Most Vim tests execute a script inside Vim. For some tests this does not
|
||||
work, running the test interferes with the code being tested. To avoid this
|
||||
@@ -548,7 +1007,7 @@ Functions ~
|
||||
|
||||
|
||||
==============================================================================
|
||||
4. Diffing screen dumps *terminal-diff*
|
||||
5. Diffing screen dumps *terminal-diff*
|
||||
|
||||
In some cases it can be bothersome to test that Vim displays the right
|
||||
characters on the screen. E.g. with syntax highlighting. To make this
|
||||
@@ -649,7 +1108,7 @@ Alternatively, press "s" to swap the first and second dump. Do this several
|
||||
times so that you can spot the difference in the context of the text.
|
||||
|
||||
==============================================================================
|
||||
5. Debugging *terminal-debug* *terminal-debugger*
|
||||
6. Debugging *terminal-debug* *terminal-debugger*
|
||||
|
||||
The Terminal debugging plugin can be used to debug a program with gdb and view
|
||||
the source code in a Vim window. Since this is completely contained inside
|
||||
@@ -718,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
|
||||
@@ -791,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)
|
||||
@@ -906,7 +1371,7 @@ When 'background' is "dark":
|
||||
hi debugBreakpoint term=reverse ctermbg=red guibg=red
|
||||
|
||||
|
||||
Shorcuts *termdebug_shortcuts*
|
||||
Shortcuts *termdebug_shortcuts*
|
||||
|
||||
You can define your own shortcuts (mappings) to control gdb, that can work in
|
||||
any window, using the TermDebugSendCommand() function. Example: >
|
||||
|
||||
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 May 06
|
||||
*textprop.txt* For Vim version 8.1. Last change: 2019 Nov 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -6,14 +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()
|
||||
- callbacks when text properties are outdated
|
||||
|
||||
|
||||
1. Introduction |text-prop-intro|
|
||||
2. Functions |text-prop-functions|
|
||||
@@ -56,8 +48,8 @@ Property Types ~
|
||||
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 highligting, 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
|
||||
@@ -95,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*
|
||||
|
||||
@@ -117,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*
|
||||
|
||||
@@ -127,10 +340,21 @@ 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.
|
||||
|
||||
To update text properties after the text was changed, install a callback with
|
||||
`listener_add()`. E.g, if your plugin does spell checking, you can have the
|
||||
callback update spelling mistakes in the changed text. Vim will move the
|
||||
properties below the changed text, so that they still highlight the same text,
|
||||
thus you don't need to update these.
|
||||
|
||||
|
||||
Text property columns are not updated: ~
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 May 09
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Nov 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,9 +38,40 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
'incsearch' with :s: (#3321)
|
||||
Add a function to fetch the mouse_lnum and mouse_col values? Can be used in a
|
||||
mapping. Remove setting v:mouse_lnum etc. from the popup filter, the values
|
||||
are wrong.
|
||||
|
||||
Problem with cursor in wrong position: #5214
|
||||
|
||||
Don't use javascriptreact but javascript.jsx? #4830
|
||||
Although there is a good argument against using ".jsx".
|
||||
|
||||
Update libvterm on github, rename termscreen.c back to screen.c.
|
||||
|
||||
|
||||
Popup windows:
|
||||
- Use popup (or popup menu) for command line completion
|
||||
- Implement flip option
|
||||
- Make redrawing more efficient and avoid flicker:
|
||||
- put popup menu also in popup_mask?
|
||||
- Any other commands to disable in a popup window?
|
||||
Use ERROR_IF_POPUP_WINDOW for more commands.
|
||||
- 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.
|
||||
|
||||
Text properties:
|
||||
- Implement prop_find() issue #4970
|
||||
- Adjusting column/length when inserting text
|
||||
- Text properties spanning more than one line
|
||||
- See remakrs at top of src/textprop.c
|
||||
|
||||
'incsearch' with :s:
|
||||
- Get E20 when using command history to get "'<,'>s/a/b" and no Visual area
|
||||
was set. (#3837)
|
||||
was set. (issue #3837)
|
||||
- :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)
|
||||
@@ -52,7 +83,7 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
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
|
||||
|
||||
@@ -65,7 +96,7 @@ 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
|
||||
@@ -79,13 +110,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
|
||||
@@ -104,19 +132,103 @@ Terminal emulator window:
|
||||
- When 'encoding' is not utf-8, or the job is using another encoding, setup
|
||||
conversions.
|
||||
|
||||
Support for popup widows:
|
||||
- Use text properties to define highlighting.
|
||||
- Proposal on issue #4063
|
||||
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
|
||||
|
||||
Notifications for text changes, could be used for LSP.
|
||||
- New event, similar to TextChanged, but guaranteed to provide sequential
|
||||
information of all text changes.
|
||||
Possibly build on undo info (but undo itself is also a change).
|
||||
How to deal with ":%s/this/that" ?
|
||||
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.
|
||||
|
||||
Remove check for cmd_silent when calling search_stat()? (Gary Johnson)
|
||||
|
||||
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 user manual: #5098. Comments by DC Slagel:
|
||||
- semicolon use should be OK.
|
||||
- Keep capital after colon.
|
||||
|
||||
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.
|
||||
Also #4994: window-local options not always restored, related to using :badd.
|
||||
|
||||
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.
|
||||
Should do current file first and not split it up when more results are found.
|
||||
(Also #1890)
|
||||
|
||||
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
|
||||
(#4087)
|
||||
|
||||
":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)
|
||||
|
||||
When 'selection' is "exclusive" then using vi' on the second ' does not select
|
||||
anything. (#5183)
|
||||
Patch from Christian:
|
||||
https://github.com/chrisbra/vim/commit/7482d1d389e7db97e247f8b509003e5ec27427a9
|
||||
When using exclusive selection and vi" that fails, cursor moves to the left.
|
||||
Cursor should not move. (#4024)
|
||||
|
||||
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
|
||||
|
||||
Patch: New value "uselast" for 'switchbuf'. (Lemonboy, 2017 Apr 23, #1652)
|
||||
|
||||
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.
|
||||
|
||||
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
|
||||
|
||||
Patch to remove FORTIFY_SOURCE also from CPPFLAGS. (Benedikt Morbach, #2786)
|
||||
|
||||
Patch from Namsh to allow building with both XIM and hangulin. (2019 Aug 29)
|
||||
|
||||
When using :packadd files under "later" are not used, which is inconsistent
|
||||
with packages under "start". (xtal8, #1994)
|
||||
|
||||
Modeless selection doesn't work in gvim. (#4783)
|
||||
Caused by patch 8.1.1534.
|
||||
|
||||
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.
|
||||
|
||||
Visual highlight not removed when 'dipslay' is "lastline" and line doesn't
|
||||
fit. (Kevin Lawler, #4457)
|
||||
|
||||
Patch to add interrupt(). (Yasuhiro Matsumoto, #2834)
|
||||
|
||||
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?
|
||||
@@ -124,9 +236,48 @@ 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?
|
||||
|
||||
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)
|
||||
|
||||
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
|
||||
Have another look at the implementation: Is the code worth it?
|
||||
|
||||
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?
|
||||
@@ -134,30 +285,121 @@ 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)
|
||||
|
||||
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.
|
||||
Should do current file first and not split it up when more results are found.
|
||||
(Also #1890)
|
||||
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)
|
||||
|
||||
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)
|
||||
|
||||
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)
|
||||
|
||||
Should we include some part of pull request #4505, not increment changedtick
|
||||
in some cases? E.g. for ":write" when the changed flag was already off, the
|
||||
buffer didn't change at all.
|
||||
|
||||
Patch to add getreginfo() and setreg() with an option to set the unnamed
|
||||
register "", So that registers can be saved and fully restored.
|
||||
(Andy Massimino, 2018 Aug 24, #3370)
|
||||
|
||||
Line numbers in profile are off when function was defined with ":execute".
|
||||
(Daniel Hahler, #4511)
|
||||
|
||||
Add a way to create an empty, hidden buffer. Like doing ":new|hide".
|
||||
":let buf = bufcreate('name')
|
||||
|
||||
Session file contains absolute paths when "curdir" is removed form
|
||||
'sessionoptions', making it impossible to have a session with a relative path.
|
||||
(#4450)
|
||||
|
||||
When using a timer callback vgetc_busy is reset, allowing for using input().
|
||||
But in a channel callback this does not happen. We need to do something
|
||||
similar to check_due_timer(). Also see #3809.
|
||||
@@ -171,6 +413,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)
|
||||
|
||||
@@ -201,21 +446,19 @@ https://lgtm.com/projects/g/vim/vim/alerts/?mode=list
|
||||
|
||||
Still a E315 error when using terminal. (Masato Nishihata, #3959)
|
||||
|
||||
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?
|
||||
@@ -243,6 +486,11 @@ punctuation is repeated. (Smylers, 2018 Nov 17, #3621)
|
||||
|
||||
ml_get error: (Israel Chauca Fuentes, 2018 Oct 17, #3550).
|
||||
|
||||
Patch to add more info to OptionSet. Should mention what triggered the change
|
||||
":set", ":setlocal", ":setglobal", "modeline"; and the old global value.
|
||||
#4118. Proposed implementation: 2019 Mar 27.
|
||||
Updated 2019 May 25.
|
||||
|
||||
Using single wide base character with double wide composing character gives
|
||||
drawing errors. Fill up the base character? (Dominique, #4328)
|
||||
|
||||
@@ -269,35 +517,9 @@ Make ":interactive !cmd" stop termcap mode, also when used in an autocommand.
|
||||
|
||||
Add buffer argument to undotree(). (#4001)
|
||||
|
||||
Patch to fix that Normal is not defined when not compiled with GUI.
|
||||
(Christian Brabandt, 2019 May 7, on issue #4072)
|
||||
|
||||
Patch to add optional arguments with default values.
|
||||
(Andy Massimino, #3952) Needs to be reviewed.
|
||||
|
||||
Patch to add more info to OptionSet. Should mention what triggered the change
|
||||
":set", ":setlocal", ":setglobal", "modeline"; and the old global value.
|
||||
#4118. Proposed implementation: 2019 Mar 27.
|
||||
Updated 2019 Apr 9: ASAN fails.
|
||||
|
||||
Problem with Visual yank when 'linebreak' and 'showbreak' are set.
|
||||
Patch with tests, but it's not clear how it is supposed to work. (tommm, 2018
|
||||
Nov 17) Asked about this, Dec 22. Christian will have a look.
|
||||
|
||||
Patch for larger icons in installer. (#978) Still not good.
|
||||
|
||||
Patch to add commands to jump to quickfix entry above/below the cursor.
|
||||
(Yegappan Lakshmanan, #4316) Also do :cbefore and :cafter.
|
||||
|
||||
Patch to fix that using "5gj" starting inside a closed fold does not work on
|
||||
screen lines but on text lines. (Julius Hulsmann, #4095) Lacks a test.
|
||||
|
||||
Patch to implement 'diffref' option. (#3535)
|
||||
Easier to use a 'diffmaster' option, is the extra complexity needed?
|
||||
Not ready to include.
|
||||
|
||||
Memory leaks in test_channel? (or is it because of fork())
|
||||
Using uninitialized value in test_gn
|
||||
Using uninitialized value in test_crypt.
|
||||
memory leak in test_paste
|
||||
Memory leak in test_terminal:
|
||||
==23530== by 0x2640D7: alloc (misc2.c:874)
|
||||
==23530== by 0x2646D6: vim_strsave (misc2.c:1315)
|
||||
@@ -308,26 +530,22 @@ Memory leak in test_terminal:
|
||||
==23530== by 0x35C923: term_start (terminal.c:421)
|
||||
==23530== by 0x2AFF30: mch_call_shell_terminal (os_unix.c:4377)
|
||||
==23530== by 0x2B16BE: mch_call_shell (os_unix.c:5383)
|
||||
TODO: be able to run all parts of test_alot with valgrind separately
|
||||
Memory leak in test_alot with pyeval() (allocating partial)
|
||||
Memory leak in test_alot with expand()
|
||||
Memory leaks in test_channel? (or is it because of fork())
|
||||
|
||||
gethostbyname() is old, use getaddrinfo() if available. (#3227)
|
||||
|
||||
matchaddpos() gets slow with many matches. Proposal by Rick Howe, 2018 Jul
|
||||
19.
|
||||
|
||||
Patch to specify color for cterm=underline and cterm=undercurl, like "guisp".
|
||||
Does #2405 do this?
|
||||
|
||||
Patch to add an interrupt() function: sets got_int. Useful in an autocommand
|
||||
such as BufWritePre that checks the file name or contents.
|
||||
|
||||
More patches to check:
|
||||
- #4098 improve Travis config
|
||||
|
||||
Should make 'listchars' global-local. Local to window or to buffer?
|
||||
Probably window.
|
||||
Add something like 'fillchars' local to window, but allow for specifying a
|
||||
highlight name. Esp. for the statusline.
|
||||
And "extends" and "precedes" are also useful without 'list' set. Also in
|
||||
'fillchars' or another option?
|
||||
|
||||
Sourceforge Vim pages still have content, redirect from empty page.
|
||||
Check for PHP errors. (Wayne Davison, 2018 Oct 26)
|
||||
@@ -336,8 +554,21 @@ Patch to support ":tag <tagkind> <tagname>". (emmrk, 2018 May 7, #2871)
|
||||
Use something like ":tag {kind}/{tagname}".
|
||||
Not ready to include.
|
||||
|
||||
:pedit resets the 'buflisted' option unexpectedly. (Wang Shidong, 2018 Oct 12,
|
||||
#3536)
|
||||
Problem with Visual yank when 'linebreak' and 'showbreak' are set.
|
||||
Patch with tests, but it's not clear how it is supposed to work. (tommm, 2018
|
||||
Nov 17) Asked about this, Dec 22. Christian will have a look.
|
||||
|
||||
Patch for larger icons in installer. (#978) Still not good.
|
||||
|
||||
Patch to fix that using "5gj" starting inside a closed fold does not work on
|
||||
screen lines but on text lines. (Julius Hulsmann, #4095) Lacks a test.
|
||||
|
||||
Patch to implement 'diffref' option. (#3535)
|
||||
Easier to use a 'diffmaster' option, is the extra complexity needed?
|
||||
Not ready to include.
|
||||
|
||||
Patch to specify color for cterm=underline and cterm=undercurl, like "guisp".
|
||||
Patch #2405 does something like this, but in the wrong way.
|
||||
|
||||
home_replace() uses $HOME instead of "homedir". (Cesar Martins, 2018 Aug 9)
|
||||
|
||||
@@ -355,9 +586,6 @@ Feedback from someone who uses this?
|
||||
|
||||
ml_get error. (Dominique Pelle, 2018 Sep 14, #3434)
|
||||
|
||||
Patch to use forward slash for completion even when 'shellslash' is set.
|
||||
Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612)
|
||||
|
||||
Only output t_Cs when t_Ce is also set. do not use Cs and Ce termcap entries. (Daniel Hahler, 2018 Sep 25)
|
||||
Add t_cS and t_cR for cursor color select and reset. Use Cs and Cr terminfo
|
||||
values.
|
||||
@@ -371,9 +599,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?
|
||||
|
||||
@@ -381,20 +606,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.
|
||||
|
||||
Patch to add getregpoint() and setreg() with an option to set "".
|
||||
(Andy Massimino, 2018 Aug 24, #3370)
|
||||
Better name?
|
||||
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!"
|
||||
@@ -465,9 +696,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?
|
||||
@@ -497,9 +725,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.
|
||||
|
||||
@@ -641,7 +866,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.
|
||||
@@ -664,32 +889,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
|
||||
@@ -709,22 +915,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"
|
||||
@@ -797,8 +987,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.
|
||||
|
||||
@@ -886,10 +1074,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
|
||||
@@ -945,10 +1129,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)
|
||||
|
||||
@@ -968,6 +1148,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)
|
||||
@@ -1047,8 +1231,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)
|
||||
|
||||
@@ -1064,11 +1246,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.
|
||||
@@ -1151,9 +1328,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
|
||||
@@ -1215,10 +1389,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'
|
||||
|
||||
@@ -1234,9 +1404,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
|
||||
@@ -1355,18 +1522,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.
|
||||
|
||||
@@ -1439,10 +1594,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
|
||||
@@ -1479,14 +1630,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.
|
||||
@@ -1787,12 +1930,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.
|
||||
|
||||
@@ -2036,10 +2173,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
|
||||
@@ -2602,10 +2735,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.
|
||||
|
||||
@@ -2635,10 +2764,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)
|
||||
|
||||
@@ -2773,12 +2898,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
|
||||
@@ -2793,12 +2912,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.
|
||||
|
||||
@@ -2892,11 +3005,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)?
|
||||
|
||||
@@ -2931,8 +3039,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
|
||||
@@ -2987,11 +3093,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
|
||||
@@ -3193,9 +3294,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?
|
||||
@@ -3588,7 +3686,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
|
||||
@@ -3603,10 +3700,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
|
||||
@@ -4277,8 +4370,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.
|
||||
@@ -4540,9 +4631,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 @@
|
||||
*usr_05.txt* For Vim version 8.1. Last change: 2019 Feb 27
|
||||
*usr_05.txt* For Vim version 8.1. Last change: 2019 May 23
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -234,7 +234,7 @@ remote connection, increase the number. See 'ttimeout'.
|
||||
set display=truncate
|
||||
|
||||
Show @@@ in the last line if it is truncated, instead of hiding the whole
|
||||
like. See 'display'.
|
||||
line. See 'display'.
|
||||
|
||||
>
|
||||
set incsearch
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_06.txt* For Vim version 8.1. Last change: 2009 Oct 28
|
||||
*usr_06.txt* For Vim version 8.1. Last change: 2019 Jun 01
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -196,13 +196,12 @@ too slow, you might want to disable syntax highlighting for a moment: >
|
||||
|
||||
When editing another file (or the same one) the colors will come back.
|
||||
|
||||
*:syn-off*
|
||||
If you want to stop highlighting completely use: >
|
||||
|
||||
:syntax off
|
||||
|
||||
This will completely disable syntax highlighting and remove it immediately for
|
||||
all buffers.
|
||||
all buffers. See |:syntax-off| for more details.
|
||||
|
||||
*:syn-manual*
|
||||
If you want syntax highlighting only for specific files, use this: >
|
||||
|
||||
@@ -220,7 +220,7 @@ a tab page share this directory except for windows with a window-local
|
||||
directory. Any new windows opened in this tab page will use this directory as
|
||||
the current working directory. Using a `:cd` command in a tab page will not
|
||||
change the working directory of tab pages which have a tab local directory.
|
||||
When the global working directory is changed using the ":cd" command in a tab
|
||||
When the global working directory is changed using the `:cd` command in a tab
|
||||
page, it will also change the current tab page working directory.
|
||||
|
||||
|
||||
|
||||
@@ -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 May 09
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Sep 23
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -105,20 +105,21 @@ We won't explain how |:for| and |range()| work until later. Follow the links
|
||||
if you are impatient.
|
||||
|
||||
|
||||
THREE KINDS OF NUMBERS
|
||||
FOUR KINDS OF NUMBERS
|
||||
|
||||
Numbers can be decimal, hexadecimal or octal. A hexadecimal number starts
|
||||
with "0x" or "0X". For example "0x1f" is decimal 31. An octal number starts
|
||||
with a zero. "017" is decimal 15. Careful: don't put a zero before a decimal
|
||||
number, it will be interpreted as an octal number!
|
||||
Numbers can be decimal, hexadecimal, octal or binary. A hexadecimal number
|
||||
starts with "0x" or "0X". For example "0x1f" is decimal 31. An octal number
|
||||
starts with a zero. "017" is decimal 15. A binary number starts with "0b" or
|
||||
"0B". For example "0b101" is decimal 5. Careful: don't put a zero before a
|
||||
decimal number, it will be interpreted as an octal number!
|
||||
The ":echo" command always prints decimal numbers. Example: >
|
||||
|
||||
:echo 0x7f 036
|
||||
< 127 30 ~
|
||||
|
||||
A number is made negative with a minus sign. This also works for hexadecimal
|
||||
and octal numbers. A minus sign is also used for subtraction. Compare this
|
||||
with the previous example: >
|
||||
A number is made negative with a minus sign. This also works for hexadecimal,
|
||||
octal and binary numbers. A minus sign is also used for subtraction. Compare
|
||||
this with the previous example: >
|
||||
|
||||
:echo 0x7f -036
|
||||
< 97 ~
|
||||
@@ -608,12 +609,14 @@ String manipulation: *string-functions*
|
||||
strcharpart() get part of a string using char index
|
||||
strgetchar() get character from a string using char index
|
||||
expand() expand special keywords
|
||||
expandcmd() expand a command like done for `:edit`
|
||||
iconv() convert text from one encoding to another
|
||||
byteidx() byte index of a character in a string
|
||||
byteidxcomp() like byteidx() but count composing characters
|
||||
repeat() repeat a string multiple times
|
||||
eval() evaluate a string expression
|
||||
execute() execute an Ex command and get the output
|
||||
win_execute() like execute() but in a specified window
|
||||
trim() trim characters from a string
|
||||
|
||||
List manipulation: *list-functions*
|
||||
@@ -717,6 +720,7 @@ Cursor and mark position: *cursor-functions* *mark-functions*
|
||||
cursor() position the cursor at a line/column
|
||||
screencol() get screen column of the cursor
|
||||
screenrow() get screen row of the cursor
|
||||
screenpos() screen row and col of a text character
|
||||
getcurpos() get position of the cursor
|
||||
getpos() get position of cursor, mark, etc.
|
||||
setpos() set position of cursor, mark, etc.
|
||||
@@ -745,6 +749,12 @@ Working with text in the current buffer: *text-functions*
|
||||
getcharsearch() return character search information
|
||||
setcharsearch() set character search information
|
||||
|
||||
Working with text in another buffer:
|
||||
getbufline() get a list of lines from the specified buffer
|
||||
setbufline() replace a line in the specified buffer
|
||||
appendbufline() append a list of lines in the specified buffer
|
||||
deletebufline() delete lines from a specified buffer
|
||||
|
||||
*system-functions* *file-functions*
|
||||
System functions and manipulation of files:
|
||||
glob() expand wildcards
|
||||
@@ -796,8 +806,10 @@ Buffers, windows and the argument list:
|
||||
argidx() current position in the argument list
|
||||
arglistid() get id of the argument list
|
||||
argv() get one entry from the argument list
|
||||
bufadd() add a file to the list of buffers
|
||||
bufexists() check if a buffer exists
|
||||
buflisted() check if a buffer exists and is listed
|
||||
bufload() ensure a buffer is loaded
|
||||
bufloaded() check if a buffer exists and is loaded
|
||||
bufname() get the name of a specific buffer
|
||||
bufnr() get the buffer number of a specific buffer
|
||||
@@ -808,11 +820,8 @@ Buffers, windows and the argument list:
|
||||
bufwinid() get the window ID of a specific buffer
|
||||
bufwinnr() get the window number of a specific buffer
|
||||
winbufnr() get the buffer number of a specific window
|
||||
getbufline() get a list of lines from the specified buffer
|
||||
setbufline() replace a line in the specified buffer
|
||||
appendbufline() append a list of lines in the specified buffer
|
||||
deletebufline() delete lines from a specified buffer
|
||||
listener_add() add a callback to listen to changes
|
||||
listener_flush() invoke listener callbacks
|
||||
listener_remove() remove a listener callback
|
||||
win_findbuf() find windows containing a buffer
|
||||
win_getid() get window ID of a window
|
||||
@@ -847,6 +856,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
|
||||
@@ -953,6 +963,7 @@ Testing: *test-functions*
|
||||
test_autochdir() enable 'autochdir' during startup
|
||||
test_override() test with Vim internal overrides
|
||||
test_garbagecollect_now() free memory right now
|
||||
test_getvalue() get value of an internal variable
|
||||
test_ignore_error() ignore a specific error message
|
||||
test_null_blob() return a null Blob
|
||||
test_null_channel() return a null Channel
|
||||
@@ -1005,8 +1016,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
|
||||
@@ -1033,6 +1046,27 @@ Terminal window: *terminal-functions*
|
||||
term_setrestore() set command to restore a terminal
|
||||
term_setsize() set the size of a terminal
|
||||
|
||||
Popup window: *popup-window-functions*
|
||||
popup_create() create popup centered in the screen
|
||||
popup_atcursor() create popup just above the cursor position,
|
||||
closes when the cursor moves away
|
||||
popup_beval() at the position indicated by v:beval_
|
||||
variables, closes when the mouse moves away
|
||||
popup_notification() show a notification for three seconds
|
||||
popup_dialog() create popup centered with padding and border
|
||||
popup_menu() prompt for selecting an item from a list
|
||||
popup_hide() hide a popup temporarily
|
||||
popup_show() show a previously hidden popup
|
||||
popup_move() change the position and size of a popup
|
||||
popup_setoptions() override options of a popup
|
||||
popup_settext() replace the popup buffer contents
|
||||
popup_close() close one popup
|
||||
popup_clear() close all popups
|
||||
popup_filter_menu() select from a list of items
|
||||
popup_filter_yesno() blocks until 'y' or 'n' is pressed
|
||||
popup_getoptions() get current options for a popup
|
||||
popup_getpos() get actual position and size of a popup
|
||||
|
||||
Timers: *timer-functions*
|
||||
timer_start() create a timer
|
||||
timer_pause() pause or unpause a timer
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_toc.txt* For Vim version 8.1. Last change: 2016 Mar 25
|
||||
*usr_toc.txt* For Vim version 8.1. Last change: 2019 May 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -103,12 +103,13 @@ Read this from start to end to learn the essential commands.
|
||||
|usr_05.txt| Set your settings
|
||||
|05.1| The vimrc file
|
||||
|05.2| The example vimrc file explained
|
||||
|05.3| Simple mappings
|
||||
|05.4| Adding a package
|
||||
|05.5| Adding a plugin
|
||||
|05.6| Adding a help file
|
||||
|05.7| The option window
|
||||
|05.8| Often used options
|
||||
|05.3| The defaults.vim file explained
|
||||
|05.4| Simple mappings
|
||||
|05.5| Adding a package
|
||||
|05.6| Adding a plugin
|
||||
|05.7| Adding a help file
|
||||
|05.8| The option window
|
||||
|05.9| Often used options
|
||||
|
||||
|usr_06.txt| Using syntax highlighting
|
||||
|06.1| Switching it on
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 8.1. Last change: 2019 May 09
|
||||
*various.txt* For Vim version 8.1. Last change: 2019 Oct 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -288,7 +288,7 @@ g8 Print the hex values of the bytes used in the
|
||||
*:!!*
|
||||
:!! Repeat last ":!{cmd}".
|
||||
|
||||
*:ve* *:version*
|
||||
*:ve* *:ver* *:version*
|
||||
:ve[rsion] Print the version number of the editor. If the
|
||||
compiler used understands "__DATE__" the compilation
|
||||
date is mentioned. Otherwise a fixed release-date is
|
||||
@@ -332,11 +332,12 @@ N *+byte_offset* support for 'o' flag in 'statusline' option, "go"
|
||||
m *+channel* inter process communication |channel|
|
||||
N *+cindent* |'cindent'|, C indenting
|
||||
N *+clientserver* Unix and Win32: Remote invocation |clientserver|
|
||||
*+clipboard* |clipboard| support
|
||||
N *+cmdline_compl* command line completion |cmdline-completion|
|
||||
*+clipboard* |clipboard| support compiled-in
|
||||
*+clipboard_working* |clipboard| support compiled-in and working
|
||||
T *+cmdline_compl* command line completion |cmdline-completion|
|
||||
S *+cmdline_hist* command line history |cmdline-history|
|
||||
N *+cmdline_info* |'showcmd'| and |'ruler'|
|
||||
N *+comments* |'comments'| support
|
||||
T *+comments* |'comments'| support
|
||||
B *+conceal* "conceal" support, see |conceal| |:syn-conceal| etc.
|
||||
N *+cryptv* encryption support |encryption|
|
||||
B *+cscope* |cscope| support
|
||||
@@ -371,7 +372,7 @@ N *+gettext* message translations |multi-lang|
|
||||
m *+hangul_input* Hangul input support |hangul|
|
||||
*+iconv* Compiled with the |iconv()| function
|
||||
*+iconv/dyn* Likewise |iconv-dynamic| |/dyn|
|
||||
N *+insert_expand* |insert_expand| Insert mode completion
|
||||
T *+insert_expand* |insert_expand| Insert mode completion
|
||||
m *+job* starting and stopping jobs |job|
|
||||
S *+jumplist* |jumplist|
|
||||
B *+keymap* |'keymap'|
|
||||
@@ -382,13 +383,13 @@ N *+linebreak* |'linebreak'|, |'breakat'| and |'showbreak'|
|
||||
N *+lispindent* |'lisp'|
|
||||
T *+listcmds* Vim commands for the list of buffers |buffer-hidden|
|
||||
and argument list |:argdelete|
|
||||
N *+localmap* Support for mappings local to a buffer |:map-local|
|
||||
T *+localmap* Support for mappings local to a buffer |:map-local|
|
||||
m *+lua* |Lua| interface
|
||||
m *+lua/dyn* |Lua| interface |/dyn|
|
||||
N *+menu* |:menu|
|
||||
N *+mksession* |:mksession|
|
||||
N *+modify_fname* |filename-modifiers|
|
||||
N *+mouse* Mouse handling |mouse-using|
|
||||
T *+modify_fname* |filename-modifiers|
|
||||
T *+mouse* Mouse handling |mouse-using|
|
||||
N *+mouseshape* |'mouseshape'|
|
||||
B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
|
||||
N *+mouse_gpm* Unix only: Linux console mouse handling |gpm-mouse|
|
||||
@@ -428,6 +429,8 @@ m *+ruby/dyn* Ruby interface |ruby-dynamic| |/dyn|
|
||||
T *+scrollbind* |'scrollbind'|
|
||||
B *+signs* |:sign|
|
||||
N *+smartindent* |'smartindent'|
|
||||
B *+sound* |sound_playevent()|, |sound_playfile()| functions, etc.
|
||||
N *+spell* spell checking support, see |spell|
|
||||
N *+startuptime* |--startuptime| argument
|
||||
N *+statusline* Options 'statusline', 'rulerformat' and special
|
||||
formats of 'titlestring' and 'iconstring'
|
||||
@@ -455,7 +458,6 @@ B *+vartabs* Variable-width tabstops. |'vartabstop'|
|
||||
N *+viminfo* |'viminfo'|
|
||||
*+vertsplit* Vertically split windows |:vsplit|; Always enabled
|
||||
since 8.0.1118.
|
||||
in sync with the |+windows| feature
|
||||
N *+virtualedit* |'virtualedit'|
|
||||
T *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200.
|
||||
T *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||
@@ -573,6 +575,8 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
|:marks| - filter by text in the current file,
|
||||
or file name for other files
|
||||
|:oldfiles| - filter by file name
|
||||
|:registers| - filter by register contents
|
||||
(does not work multi-line)
|
||||
|:set| - filter by variable name
|
||||
|
||||
Only normal messages are filtered, error messages are
|
||||
@@ -708,7 +712,7 @@ K Run a program to lookup the keyword under the
|
||||
:xr[estore] [display] Reinitializes the connection to the X11 server. Useful
|
||||
after the X server restarts, e.g. when running Vim for
|
||||
long time inside screen/tmux and connecting from
|
||||
different machines).
|
||||
different machines.
|
||||
[display] should be in the format of the $DISPLAY
|
||||
environment variable (e.g. "localhost:10.0")
|
||||
If [display] is omitted, then it reinitializes the
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*vi_diff.txt* For Vim version 8.1. Last change: 2019 Nov 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -64,6 +64,9 @@ w300 number (default 23) *'w300'*
|
||||
w1200 number (default 23) *'w1200'*
|
||||
w9600 number (default 23) *'w9600'*
|
||||
|
||||
Vi did not allow for changing the termcap entries, you would have to exit Vi,
|
||||
edit the termcap entry and try again. Vim has the |terminal-options|.
|
||||
|
||||
==============================================================================
|
||||
3. Limits *limits*
|
||||
|
||||
@@ -199,7 +202,7 @@ Syntax highlighting. |:syntax|
|
||||
|
||||
Text properties |textprop.txt|
|
||||
Vim supports highlighting text by a plugin. Property types can be
|
||||
specificed with |prop_type_add()| and properties can be placed with
|
||||
specified with |prop_type_add()| and properties can be placed with
|
||||
|prop_add()|.
|
||||
|
||||
Spell checking. |spell|
|
||||
@@ -703,7 +706,7 @@ first character).
|
||||
|
||||
CTRL-A works like CTRL-@ but does not leave insert mode.
|
||||
|
||||
CTRL-R {0-9a-z..} can be used to insert the contents of a register.
|
||||
CTRL-R {register} can be used to insert the contents of a register.
|
||||
|
||||
When the 'smartindent' option is set, C programs will be better auto-indented.
|
||||
With 'cindent' even more.
|
||||
@@ -866,7 +869,7 @@ The following Ex commands are supported by Vi: ~
|
||||
`:set all&`, `:set option+=value`, `:set option^=value`
|
||||
`:set option-=value` `:set option<`
|
||||
`:shell` escape to a shell
|
||||
`:source` read Vim or Ex commands from a file
|
||||
`:source` read Vi or Ex commands from a file
|
||||
`:stop` suspend the editor or escape to a shell
|
||||
`:substitute` find and replace text; Vi: no '&', 'i', 's', 'r' or 'I' flag,
|
||||
confirm prompt only supports 'y' and 'n', no highlighting
|
||||
@@ -901,6 +904,9 @@ Common for these commands is that Vi doesn't support the ++opt argument on
|
||||
|
||||
The following Normal mode commands are supported by Vi: ~
|
||||
|
||||
note: See the beginning of |normal-index| for the meaning of WORD, N, Nmove
|
||||
and etc in the description text.
|
||||
|
||||
|CTRL-B| scroll N screens Backwards
|
||||
|CTRL-C| interrupt current (search) command
|
||||
|CTRL-D| scroll Down N lines (default: half a screen); Vim scrolls
|
||||
@@ -920,7 +926,9 @@ The following Normal mode commands are supported by Vi: ~
|
||||
|CTRL-P| same as "k"
|
||||
|CTRL-R| in some Vi versions: same as CTRL-L
|
||||
|CTRL-T| jump to N older Tag in tag list
|
||||
|CTRL-U| N lines Upwards (default: half a screen)
|
||||
|CTRL-U| N lines Upwards (default: half a screen) {Vi used file lines
|
||||
while Vim scrolls 'scroll' screen lines; makes a difference
|
||||
when lines wrap}
|
||||
|CTRL-Y| scroll N lines downwards
|
||||
|CTRL-Z| suspend program (or start new shell)
|
||||
|CTRL-]| :ta to ident under cursor {Vi: identifier after the cursor}
|
||||
@@ -1055,7 +1063,7 @@ CTRL-T insert one shiftwidth of indent in current line {Vi: only when
|
||||
in indent}
|
||||
CTRL-V {char} insert next non-digit literally {Vi: no decimal byte entry}
|
||||
CTRL-W delete word before the cursor
|
||||
CTRL-Z when 'insertmode' set: suspend Vim
|
||||
CTRL-Z when 'insertmode' set: suspend Vi
|
||||
<Esc> end insert mode (unless 'insertmode' set)
|
||||
CTRL-[ same as <Esc>
|
||||
0 CTRL-D delete all indent in the current line
|
||||
@@ -1315,6 +1323,11 @@ Set the $VIM_POSIX environment variable to have 'cpoptions' include the POSIX
|
||||
flags when Vim starts up. This makes Vim run as POSIX as it can. That's
|
||||
a bit different from being Vi compatible.
|
||||
|
||||
You can find the Posix specification for Vi here:
|
||||
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/vi.html
|
||||
And the related Ex specification:
|
||||
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html
|
||||
|
||||
This is where Vim does not behave as POSIX specifies and why:
|
||||
|
||||
*posix-screen-size*
|
||||
|
||||
@@ -266,7 +266,7 @@ Otherwise an error message is given and
|
||||
aborts.
|
||||
.TP
|
||||
\-i {viminfo}
|
||||
When using the viminfo file is enabled, this option sets the filename to use,
|
||||
Specifies the filename to use when reading or writing the viminfo file,
|
||||
instead of the default "~/.viminfo".
|
||||
This can also be used to skip the use of the .viminfo file, by giving the name
|
||||
"NONE".
|
||||
@@ -289,7 +289,7 @@ so that changes are not allowed and files can not be written. Note that these
|
||||
options can be set to enable making modifications.
|
||||
.TP
|
||||
\-N
|
||||
No-compatible mode. Reset the 'compatible' option.
|
||||
No-compatible mode. Resets the 'compatible' option.
|
||||
This will make
|
||||
.B Vim
|
||||
behave a bit better, but less Vi compatible, even though a .vimrc file does
|
||||
|
||||
@@ -62,10 +62,10 @@ DESCRIPTION
|
||||
-q [errorfile]
|
||||
Start in quickFix mode. The file [errorfile] is read and
|
||||
the first error is displayed. If [errorfile] is omitted,
|
||||
the filename is obtained from the 'errorfile' option
|
||||
(defaults to "AztecC.Err" for the Amiga, "errors.err" on
|
||||
other systems). Further errors can be jumped to with the
|
||||
":cn" command. See ":help quickfix".
|
||||
the filename is obtained from the 'errorfile' option (de‐
|
||||
faults to "AztecC.Err" for the Amiga, "errors.err" on other
|
||||
systems). Further errors can be jumped to with the ":cn"
|
||||
command. See ":help quickfix".
|
||||
|
||||
Vim behaves differently, depending on the name of the command (the exe‐
|
||||
cutable may still be the same file).
|
||||
@@ -92,8 +92,8 @@ DESCRIPTION
|
||||
done with the "-Z" argument.
|
||||
|
||||
OPTIONS
|
||||
The options may be given in any order, before or after filenames.
|
||||
Options without an argument can be combined after a single dash.
|
||||
The options may be given in any order, before or after filenames. Op‐
|
||||
tions without an argument can be combined after a single dash.
|
||||
|
||||
+[num] For the first file the cursor will be positioned on line
|
||||
"num". If "num" is missing, the cursor will be positioned
|
||||
@@ -132,8 +132,8 @@ OPTIONS
|
||||
sible to edit a binary or executable file.
|
||||
|
||||
-C Compatible. Set the 'compatible' option. This will make
|
||||
Vim behave mostly like Vi, even though a .vimrc file
|
||||
exists.
|
||||
Vim behave mostly like Vi, even though a .vimrc file ex‐
|
||||
ists.
|
||||
|
||||
-d Start in diff mode. There should be two, three or four
|
||||
file name arguments. Vim will open all the files and show
|
||||
@@ -151,15 +151,15 @@ OPTIONS
|
||||
-E Start Vim in improved Ex mode, just like the executable was
|
||||
called "exim".
|
||||
|
||||
-f Foreground. For the GUI version, Vim will not fork and
|
||||
detach from the shell it was started in. On the Amiga, Vim
|
||||
-f Foreground. For the GUI version, Vim will not fork and de‐
|
||||
tach from the shell it was started in. On the Amiga, Vim
|
||||
is not restarted to open a new window. This option should
|
||||
be used when Vim is executed by a program that will wait
|
||||
for the edit session to finish (e.g. mail). On the Amiga
|
||||
the ":sh" and ":!" commands will not work.
|
||||
|
||||
--nofork Foreground. For the GUI version, Vim will not fork and
|
||||
detach from the shell it was started in.
|
||||
--nofork Foreground. For the GUI version, Vim will not fork and de‐
|
||||
tach from the shell it was started in.
|
||||
|
||||
-F If Vim has been compiled with FKMAP support for editing
|
||||
right-to-left oriented files and Farsi keyboard mapping,
|
||||
@@ -167,12 +167,12 @@ OPTIONS
|
||||
'rightleft' are set. Otherwise an error message is given
|
||||
and Vim aborts.
|
||||
|
||||
-g If Vim has been compiled with GUI support, this option
|
||||
enables the GUI. If no GUI support was compiled in, an
|
||||
error message is given and Vim aborts.
|
||||
-g If Vim has been compiled with GUI support, this option en‐
|
||||
ables the GUI. If no GUI support was compiled in, an error
|
||||
message is given and Vim aborts.
|
||||
|
||||
-h Give a bit of help about the command line arguments and
|
||||
options. After this Vim exits.
|
||||
-h Give a bit of help about the command line arguments and op‐
|
||||
tions. After this Vim exits.
|
||||
|
||||
-H If Vim has been compiled with RIGHTLEFT support for editing
|
||||
right-to-left oriented files and Hebrew keyboard mapping,
|
||||
@@ -181,10 +181,10 @@ OPTIONS
|
||||
and Vim aborts.
|
||||
|
||||
-i {viminfo}
|
||||
When using the viminfo file is enabled, this option sets
|
||||
the filename to use, instead of the default "~/.viminfo".
|
||||
This can also be used to skip the use of the .viminfo file,
|
||||
by giving the name "NONE".
|
||||
Specifies the filename to use when reading or writing the
|
||||
viminfo file, instead of the default "~/.viminfo". This
|
||||
can also be used to skip the use of the .viminfo file, by
|
||||
giving the name "NONE".
|
||||
|
||||
-L Same as -r.
|
||||
|
||||
@@ -199,7 +199,7 @@ OPTIONS
|
||||
files can not be written. Note that these options can be
|
||||
set to enable making modifications.
|
||||
|
||||
-N No-compatible mode. Reset the 'compatible' option. This
|
||||
-N No-compatible mode. Resets the 'compatible' option. This
|
||||
will make Vim behave a bit better, but less Vi compatible,
|
||||
even though a .vimrc file does not exist.
|
||||
|
||||
@@ -208,8 +208,8 @@ OPTIONS
|
||||
slow medium (e.g. floppy). Can also be done with ":set
|
||||
uc=0". Can be undone with ":set uc=200".
|
||||
|
||||
-nb Become an editor server for NetBeans. See the docs for
|
||||
details.
|
||||
-nb Become an editor server for NetBeans. See the docs for de‐
|
||||
tails.
|
||||
|
||||
-o[N] Open N windows stacked. When N is omitted, open one window
|
||||
for each file.
|
||||
@@ -228,8 +228,8 @@ OPTIONS
|
||||
above). The 'readonly' option can be reset with ":set
|
||||
noro". See ":help 'readonly'".
|
||||
|
||||
-r List swap files, with information about using them for
|
||||
recovery.
|
||||
-r List swap files, with information about using them for re‐
|
||||
covery.
|
||||
|
||||
-r {file} Recovery mode. The swap file is used to recover a crashed
|
||||
editing session. The swap file is a file with the same
|
||||
@@ -247,8 +247,8 @@ OPTIONS
|
||||
characters are read from the keyboard.
|
||||
|
||||
-T {terminal}
|
||||
Tells Vim the name of the terminal you are using. Only
|
||||
required when the automatic way doesn't work. Should be a
|
||||
Tells Vim the name of the terminal you are using. Only re‐
|
||||
quired when the automatic way doesn't work. Should be a
|
||||
terminal known to Vim (builtin) or defined in the termcap
|
||||
or terminfo file.
|
||||
|
||||
@@ -342,8 +342,8 @@ OPTIONS
|
||||
the server to connect to.
|
||||
|
||||
--socketid {id}
|
||||
GTK GUI only: Use the GtkPlug mechanism to run gvim in
|
||||
another window.
|
||||
GTK GUI only: Use the GtkPlug mechanism to run gvim in an‐
|
||||
other window.
|
||||
|
||||
--version Print version information and exit.
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user