Compare commits
933 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ea6553bec3 | ||
|
|
4f3f668c84 | ||
|
|
c4dcd60c76 | ||
|
|
fa8b2e173d | ||
|
|
819821c5a9 | ||
|
|
e1581307d2 | ||
|
|
1473551a44 | ||
|
|
8fdd721047 | ||
|
|
92e35efaf6 | ||
|
|
1e7885abe8 | ||
|
|
52c6eaffd4 | ||
|
|
da64ab322a | ||
|
|
610cc1b9b3 | ||
|
|
780d4c3fff | ||
|
|
f68f1d7079 | ||
|
|
aedfcbe1e6 | ||
|
|
bee6c0cf86 | ||
|
|
8b20179c65 | ||
|
|
4c90861e9f | ||
|
|
c5fbe8af4c | ||
|
|
24c77a1e3a | ||
|
|
d4caf5c16a | ||
|
|
6a08454b93 | ||
|
|
5ca84ce4aa | ||
|
|
ffec3c5349 | ||
|
|
5f436fcf99 | ||
|
|
e4eb6ff089 | ||
|
|
6c0e984f26 | ||
|
|
6135d0d803 | ||
|
|
6a06363861 | ||
|
|
8e08125d3a | ||
|
|
b763eba7ae | ||
|
|
6098957458 | ||
|
|
573e445664 | ||
|
|
d63aff0a65 | ||
|
|
b86f10ee10 | ||
|
|
3f3fbd3fdb | ||
|
|
75f7265dd4 | ||
|
|
580984e026 | ||
|
|
e18c0b3981 | ||
|
|
be6aa46c4d | ||
|
|
03602ec28e | ||
|
|
e9d6a298df | ||
|
|
17b56c9f83 | ||
|
|
a63cdb5ed6 | ||
|
|
4077b33a83 | ||
|
|
364fa5c7ec | ||
|
|
a4f6ca717b | ||
|
|
ba61ac0d61 | ||
|
|
ac74d5e86c | ||
|
|
829c8e3696 | ||
|
|
7eba3d2cbf | ||
|
|
064154c3fe | ||
|
|
d293b2b9d4 | ||
|
|
44a2f923c0 | ||
|
|
cc6cf9b9f9 | ||
|
|
4d581a826c | ||
|
|
5c29154b52 | ||
|
|
f0e86a0dbd | ||
|
|
953cc7fb13 | ||
|
|
3905e291fe | ||
|
|
3848e00e01 | ||
|
|
bfb96c047b | ||
|
|
cff572abb9 | ||
|
|
818c9e7edf | ||
|
|
062cc1857d | ||
|
|
8a82c7fa5e | ||
|
|
6d8d849f5a | ||
|
|
9f6154f26e | ||
|
|
ba8cd122ef | ||
|
|
c0a1d7f3ad | ||
|
|
943bb2b8eb | ||
|
|
a889cf4642 | ||
|
|
0899d69803 | ||
|
|
5584df65a0 | ||
|
|
3f242a844e | ||
|
|
9e63f61cb0 | ||
|
|
1ff2b64b11 | ||
|
|
1c8b4edb9b | ||
|
|
8a1bb04637 | ||
|
|
d22a18928e | ||
|
|
0e0b3dd335 | ||
|
|
597385ab43 | ||
|
|
6f2e4b36c9 | ||
|
|
65639032bb | ||
|
|
7a5c46a9df | ||
|
|
a3dc5e92dc | ||
|
|
975b5271ee | ||
|
|
ab1fa3955f | ||
|
|
927030af23 | ||
|
|
89e375a88f | ||
|
|
8067a64852 | ||
|
|
d22e9465f6 | ||
|
|
ce2ec0a82a | ||
|
|
85a7cb4dcf | ||
|
|
8e15ffcde7 | ||
|
|
426dd02195 | ||
|
|
e27dba499a | ||
|
|
00f9e0dbbd | ||
|
|
1abb502635 | ||
|
|
4f118be2bb | ||
|
|
f155196444 | ||
|
|
346418c624 | ||
|
|
790500a8e6 | ||
|
|
9eb3bb2930 | ||
|
|
39afdea203 | ||
|
|
d6c2f05260 | ||
|
|
1735bc988c | ||
|
|
9cdf86b86f | ||
|
|
86edef664e | ||
|
|
a3442cb505 | ||
|
|
fff341eb59 | ||
|
|
52f9c19015 | ||
|
|
8dcf259d90 | ||
|
|
7f8989dd8a | ||
|
|
6bef5306e4 | ||
|
|
2d8f56acb3 | ||
|
|
c835293d54 | ||
|
|
5a2800fd14 | ||
|
|
385111bd86 | ||
|
|
f6f32c38bf | ||
|
|
b4ebf9ae3b | ||
|
|
583c1f14a4 | ||
|
|
5a6ec52392 | ||
|
|
1adda3403d | ||
|
|
8950a563b3 | ||
|
|
ac42afd10b | ||
|
|
8e2c942ce4 | ||
|
|
77cdfd1038 | ||
|
|
4fc563b397 | ||
|
|
509ce2a558 | ||
|
|
de27989157 | ||
|
|
9e496854a9 | ||
|
|
846cdb2275 | ||
|
|
74c5bbf134 | ||
|
|
7bffaa9f9b | ||
|
|
40e8cb292c | ||
|
|
75578a388d | ||
|
|
29fd03878c | ||
|
|
af1a0e371e | ||
|
|
562ca71428 | ||
|
|
d5d3d307dd | ||
|
|
beb003b303 | ||
|
|
045a284a83 | ||
|
|
0622732b32 | ||
|
|
6ff02c9651 | ||
|
|
8322e1f06e | ||
|
|
d9d473ea12 | ||
|
|
13d6fb17a2 | ||
|
|
f65333c9b5 | ||
|
|
367aabdbf7 | ||
|
|
8049253b96 | ||
|
|
9fe885e49a | ||
|
|
e98d121052 | ||
|
|
41e0f2f48f | ||
|
|
94d0191dbc | ||
|
|
af6e36ff16 | ||
|
|
5f148ec0b5 | ||
|
|
304563c0b3 | ||
|
|
151f656e17 | ||
|
|
47cff3a444 | ||
|
|
4e329fcaf7 | ||
|
|
b69fccf377 | ||
|
|
d0b6502a7a | ||
|
|
3f39f64866 | ||
|
|
839fd11d7e | ||
|
|
99ef06296f | ||
|
|
38fd4bb284 | ||
|
|
9ef00be261 | ||
|
|
be82c25486 | ||
|
|
2588b5a43f | ||
|
|
0ecbe33718 | ||
|
|
a96909cfaf | ||
|
|
802d559431 | ||
|
|
119d4693e0 | ||
|
|
5983ad0b03 | ||
|
|
35ca0e7a1c | ||
|
|
019b9c644e | ||
|
|
20b4f463f4 | ||
|
|
2369c15407 | ||
|
|
0c171716c0 | ||
|
|
179f1b9a7d | ||
|
|
328da0dcb7 | ||
|
|
6300317b15 | ||
|
|
f365482736 | ||
|
|
014069a7ac | ||
|
|
c25558bff4 | ||
|
|
d6547fc647 | ||
|
|
da94fdf258 | ||
|
|
9f7820f83b | ||
|
|
91715873d1 | ||
|
|
863c1a9079 | ||
|
|
1bdd42627d | ||
|
|
b5760a1ce5 | ||
|
|
f1d2501ebe | ||
|
|
00ded43a5a | ||
|
|
5fac467474 | ||
|
|
d1413d9098 | ||
|
|
4ca812b153 | ||
|
|
bf73b91c66 | ||
|
|
289a90551d | ||
|
|
42bc6dde46 | ||
|
|
51d1d53680 | ||
|
|
10b369f670 | ||
|
|
6b584af3d7 | ||
|
|
cc7f8be3e0 | ||
|
|
5131c144fe | ||
|
|
a6b8976bb7 | ||
|
|
2f6271b1e7 | ||
|
|
a86f14a923 | ||
|
|
fdcc9afb71 | ||
|
|
e081e21f76 | ||
|
|
fdd6ce4a2f | ||
|
|
d42119fff2 | ||
|
|
29e1951e14 | ||
|
|
fc2457e21d | ||
|
|
9730f74a0b | ||
|
|
9bfdba3de3 | ||
|
|
18b5d6df10 | ||
|
|
707659490d | ||
|
|
1c39102666 | ||
|
|
8cc6977a96 | ||
|
|
c5215e943b | ||
|
|
d6051b5eb8 | ||
|
|
80e7884739 | ||
|
|
b362872837 | ||
|
|
0f526f5652 | ||
|
|
dae8d21dd2 | ||
|
|
3f2a5d8dfb | ||
|
|
e0fd2aa8f6 | ||
|
|
e26643e6bc | ||
|
|
fefecb0fbe | ||
|
|
f97ddbeb25 | ||
|
|
c7f0ebc6d1 | ||
|
|
136f29a91d | ||
|
|
e98991b8cf | ||
|
|
8b1862a316 | ||
|
|
b6ff81188d | ||
|
|
85b11769ab | ||
|
|
4d1961783f | ||
|
|
9e24f0c5c1 | ||
|
|
7ce686c990 | ||
|
|
d804fdf4c2 | ||
|
|
edb4f2b360 | ||
|
|
43acbce1bb | ||
|
|
187db50d04 | ||
|
|
6e722e2f94 | ||
|
|
0c0dac1fb1 | ||
|
|
4cafa6dc7f | ||
|
|
46c85439c9 | ||
|
|
c8dcbb12c5 | ||
|
|
d2227a02b0 | ||
|
|
49c39ff678 | ||
|
|
923d926d57 | ||
|
|
265f64efcf | ||
|
|
669cac0a80 | ||
|
|
f391327adb | ||
|
|
84f4996d2a | ||
|
|
81275ca9ce | ||
|
|
8b374215cc | ||
|
|
68c85fcdf3 | ||
|
|
9e34110816 | ||
|
|
42dd7aee41 | ||
|
|
1858a842af | ||
|
|
3ea0f1ae31 | ||
|
|
f1b6ac7229 | ||
|
|
e16e5a9d8d | ||
|
|
8aefbe0ad5 | ||
|
|
9186a27622 | ||
|
|
0106e3d0bf | ||
|
|
9892189d2e | ||
|
|
6bd364e084 | ||
|
|
254ebaf068 | ||
|
|
48e330aff9 | ||
|
|
4e221c99e8 | ||
|
|
0bb6108eb4 | ||
|
|
1daae446e5 | ||
|
|
eed284a169 | ||
|
|
0b962473dd | ||
|
|
bd73ae1bc6 | ||
|
|
2cd5bb2505 | ||
|
|
4db20ab091 | ||
|
|
33c31d5abf | ||
|
|
b2bd6a087d | ||
|
|
bdcd752750 | ||
|
|
8f8ae40ce4 | ||
|
|
23c463a157 | ||
|
|
5e83840756 | ||
|
|
f6fee0e2d4 | ||
|
|
271273c39f | ||
|
|
02e83b438e | ||
|
|
eab089d22f | ||
|
|
ee1cffc07a | ||
|
|
b7522a2f0c | ||
|
|
65edff8f51 | ||
|
|
08298fa1d3 | ||
|
|
decb14d68c | ||
|
|
b6b5252bcd | ||
|
|
e89ff0472b | ||
|
|
af7559f666 | ||
|
|
ece61b06ef | ||
|
|
6f3a544228 | ||
|
|
fffd5560c6 | ||
|
|
ddbe7d26b1 | ||
|
|
42d38a2db1 | ||
|
|
914331648d | ||
|
|
e0fa3742ea | ||
|
|
c6b14f0a83 | ||
|
|
663128270e | ||
|
|
befb366aff | ||
|
|
cf7164a088 | ||
|
|
065bbac8ad | ||
|
|
8600ace876 | ||
|
|
254e00d714 | ||
|
|
0ba75a9714 | ||
|
|
1f6ef66254 | ||
|
|
1d6fbe6540 | ||
|
|
132006c3d0 | ||
|
|
40ea1da14b | ||
|
|
ed5a78e11c | ||
|
|
223b723be0 | ||
|
|
922d25f99c | ||
|
|
93bf558cae | ||
|
|
81661fb868 | ||
|
|
ec70bdd68a | ||
|
|
74a97b1ea0 | ||
|
|
7f0608fb52 | ||
|
|
8b778d5599 | ||
|
|
a1e24b9bc9 | ||
|
|
a87e2c277e | ||
|
|
203219048f | ||
|
|
cd39bbcd1d | ||
|
|
e74e8e7d75 | ||
|
|
910b8aac5d | ||
|
|
7d63f62460 | ||
|
|
418f81b5fa | ||
|
|
0c2c96e47c | ||
|
|
ba093bc000 | ||
|
|
9a6e33a19b | ||
|
|
5d54a04598 | ||
|
|
6aa2cd4be2 | ||
|
|
f8df7addc5 | ||
|
|
acd58ef676 | ||
|
|
d46ae142aa | ||
|
|
0943a09db8 | ||
|
|
5cefd40982 | ||
|
|
12dcf024e9 | ||
|
|
b6a7737938 | ||
|
|
97eba78f69 | ||
|
|
2368917d8f | ||
|
|
38a55639d6 | ||
|
|
d807036d10 | ||
|
|
a971df849f | ||
|
|
3bece9fee9 | ||
|
|
71b0f7b5c0 | ||
|
|
44d571868f | ||
|
|
16eb4f8800 | ||
|
|
7b3ca76a45 | ||
|
|
0727d362b4 | ||
|
|
fa4bce7dd2 | ||
|
|
7707344dde | ||
|
|
e516c39ee9 | ||
|
|
bfa1ffca8b | ||
|
|
f8b7d890f1 | ||
|
|
d090d7bab5 | ||
|
|
6463ca229c | ||
|
|
00af60bbb6 | ||
|
|
45c7f05473 | ||
|
|
f02c5cffd8 | ||
|
|
76467dfcaf | ||
|
|
7c29f38781 | ||
|
|
7823a3bd2e | ||
|
|
b6a4fee37e | ||
|
|
6119e6156e | ||
|
|
39b21272d5 | ||
|
|
2ab375e54e | ||
|
|
f6157284de | ||
|
|
d6a8d48587 | ||
|
|
a483326e3b | ||
|
|
f068dcafcf | ||
|
|
4d8747cdfc | ||
|
|
7280140c08 | ||
|
|
e56bf15c16 | ||
|
|
2fc83fcd1d | ||
|
|
b92abad0c5 | ||
|
|
cbebd4879c | ||
|
|
ee5aeae22b | ||
|
|
0fa98e7b85 | ||
|
|
ae8eb3ca92 | ||
|
|
74f5e65bcc | ||
|
|
7a84dbe6be | ||
|
|
cb00f03933 | ||
|
|
79c2c881bb | ||
|
|
dc94a26a64 | ||
|
|
942d6b2268 | ||
|
|
768ce2435a | ||
|
|
ea8c219ca8 | ||
|
|
eba6d8c66c | ||
|
|
595e64e259 | ||
|
|
55fab439a6 | ||
|
|
a6f72ba7c6 | ||
|
|
fbc4b4db3a | ||
|
|
cb4b01230b | ||
|
|
835dc636a5 | ||
|
|
c5f98ee987 | ||
|
|
1701481c53 | ||
|
|
3712792637 | ||
|
|
81e7a9c3fb | ||
|
|
4f8b8faec3 | ||
|
|
26dfc41335 | ||
|
|
a03f233515 | ||
|
|
ab9fc7e0cf | ||
|
|
f416086f26 | ||
|
|
6076fe1986 | ||
|
|
4d919d748e | ||
|
|
a07fec9c85 | ||
|
|
4b6a6dcbe7 | ||
|
|
a8343c1808 | ||
|
|
3fc3e14282 | ||
|
|
a02b321686 | ||
|
|
681baaf4a4 | ||
|
|
e24692573a | ||
|
|
b3e2f00f39 | ||
|
|
66624ff0d9 | ||
|
|
3b05b135e3 | ||
|
|
608a8919ca | ||
|
|
e7bed627c8 | ||
|
|
bf087cead9 | ||
|
|
2212c4154c | ||
|
|
fcb1e3d168 | ||
|
|
f92591f7f9 | ||
|
|
a0f9cd148e | ||
|
|
7c764f7bbf | ||
|
|
d7ece1008e | ||
|
|
d087566a41 | ||
|
|
f57969a20a | ||
|
|
fbf9c6b6c3 | ||
|
|
8d8c509ac8 | ||
|
|
04b08c3de6 | ||
|
|
bc07309225 | ||
|
|
df5b27b20e | ||
|
|
56ead341a7 | ||
|
|
d9ea9069f5 | ||
|
|
885f24fbca | ||
|
|
11e0afa00a | ||
|
|
5e9b2fa9bb | ||
|
|
488a130ea2 | ||
|
|
14ad611ca4 | ||
|
|
1357caf31f | ||
|
|
19d2f15898 | ||
|
|
ca568aeec6 | ||
|
|
fb1f62691e | ||
|
|
155500077c | ||
|
|
448a22549b | ||
|
|
3803bad99d | ||
|
|
d14e00ea67 | ||
|
|
bbb3339dbf | ||
|
|
a542c680a8 | ||
|
|
e2c3810c2a | ||
|
|
3c124e3ac8 | ||
|
|
fa399af7ec | ||
|
|
937204a917 | ||
|
|
779a7759ad | ||
|
|
20fb9f3464 | ||
|
|
ba4ef2757c | ||
|
|
b638a7be95 | ||
|
|
764b23c8fd | ||
|
|
055409764c | ||
|
|
c1ab67674a | ||
|
|
9b57814db1 | ||
|
|
52ea13da0f | ||
|
|
02fdaeaa69 | ||
|
|
68c2f638e6 | ||
|
|
66f948e928 | ||
|
|
78c0b7d43e | ||
|
|
7454a06e26 | ||
|
|
305598b712 | ||
|
|
4349c57543 | ||
|
|
3e96c3d241 | ||
|
|
569850724e | ||
|
|
d99df423c5 | ||
|
|
baaa7e9ec7 | ||
|
|
92b8b2d307 | ||
|
|
d25c16e2f2 | ||
|
|
f28dbcea37 | ||
|
|
f12d983dea | ||
|
|
83162468b3 | ||
|
|
b8b6511fc1 | ||
|
|
fa06a517b5 | ||
|
|
298b440930 | ||
|
|
3b5f929b18 | ||
|
|
ba59ddbd36 | ||
|
|
923e43b837 | ||
|
|
009d84a34f | ||
|
|
85be35f33e | ||
|
|
4a1314cb9c | ||
|
|
0d6f835683 | ||
|
|
54e09e7198 | ||
|
|
fb4194e4e0 | ||
|
|
d04a020a8a | ||
|
|
6650a69454 | ||
|
|
ac80999985 | ||
|
|
7465c6375f | ||
|
|
f4f79b84a5 | ||
|
|
767d8c1a1a | ||
|
|
5aec481097 | ||
|
|
1d63539cc7 | ||
|
|
f75612fd99 | ||
|
|
3e53c700a2 | ||
|
|
65591001e4 | ||
|
|
16435480f0 | ||
|
|
2e2301437c | ||
|
|
0e7f88e73e | ||
|
|
e0874f8cbc | ||
|
|
705ada1aff | ||
|
|
f48aa160fd | ||
|
|
0436922965 | ||
|
|
fcaaae6b3f | ||
|
|
938ee834d3 | ||
|
|
6039c7f053 | ||
|
|
17a13437c9 | ||
|
|
9e3be26872 | ||
|
|
2faa29f896 | ||
|
|
bd4593ffb1 | ||
|
|
e240c2da79 | ||
|
|
48e697e4b6 | ||
|
|
f95534c3d4 | ||
|
|
2dedb45260 | ||
|
|
64922b9014 | ||
|
|
520e1e41f3 | ||
|
|
6920c72d4d | ||
|
|
09e786e7a7 | ||
|
|
13d5aeef56 | ||
|
|
5f8a14b9de | ||
|
|
25281634cd | ||
|
|
d6357e8f93 | ||
|
|
e5f2be6159 | ||
|
|
88e8f9f144 | ||
|
|
a7c3795a2e | ||
|
|
23c4f7183c | ||
|
|
17576a1e33 | ||
|
|
f7edf40448 | ||
|
|
b8060fe862 | ||
|
|
6773a348da | ||
|
|
e266d6d664 | ||
|
|
fce7b3d24f | ||
|
|
3a466a8718 | ||
|
|
62ef797496 | ||
|
|
da5dcd9366 | ||
|
|
301417041b | ||
|
|
82e4184d48 | ||
|
|
ef26954a35 | ||
|
|
99dbe291f5 | ||
|
|
b20e334859 | ||
|
|
61ff4dd6a4 | ||
|
|
77324fc9d3 | ||
|
|
85084ef1e9 | ||
|
|
203258c3ad | ||
|
|
021b593e7e | ||
|
|
c970330676 | ||
|
|
e9b892ebcd | ||
|
|
25b2b94ea7 | ||
|
|
a24f0a550f | ||
|
|
42c9cfa7f4 | ||
|
|
08b270a8a4 | ||
|
|
336bd622c3 | ||
|
|
72defda84e | ||
|
|
a99b90437a | ||
|
|
d82103ed85 | ||
|
|
b0967d587f | ||
|
|
d0232917ce | ||
|
|
43a34f9f74 | ||
|
|
4119cf80e1 | ||
|
|
2db5c3b3ce | ||
|
|
f60b796fa9 | ||
|
|
8c600052fa | ||
|
|
4cf7679383 | ||
|
|
58adb14739 | ||
|
|
da440d21a6 | ||
|
|
286eacd3f6 | ||
|
|
9bbf63dbf8 | ||
|
|
4e640bd930 | ||
|
|
d125001297 | ||
|
|
f1f60f859c | ||
|
|
e39b3d9fb4 | ||
|
|
abfa9efb98 | ||
|
|
36d7cd8965 | ||
|
|
b7604cc19f | ||
|
|
345efa013d | ||
|
|
065ee9aebf | ||
|
|
a260b87d9d | ||
|
|
3d6d5cc3a4 | ||
|
|
5a46a58eb6 | ||
|
|
ccb80989f2 | ||
|
|
24c4d539ee | ||
|
|
a803c7f940 | ||
|
|
b01f357791 | ||
|
|
b5690794cf | ||
|
|
ef2b5036b3 | ||
|
|
7ae4fbca55 | ||
|
|
d79e55016c | ||
|
|
507edf63df | ||
|
|
a52dfaed10 | ||
|
|
e1edc1caba | ||
|
|
4514d2769b | ||
|
|
858b96f382 | ||
|
|
254b105b75 | ||
|
|
f32c5cd6e0 | ||
|
|
b86a343280 | ||
|
|
acb4f221c7 | ||
|
|
d08a8d4a31 | ||
|
|
30a89473ee | ||
|
|
6a3c8aff04 | ||
|
|
05fe017c1a | ||
|
|
5fa4d448fb | ||
|
|
28fb79db6b | ||
|
|
44132a10ae | ||
|
|
450919587d | ||
|
|
cfc0a350a9 | ||
|
|
8a5115cf18 | ||
|
|
5f24542e5e | ||
|
|
71bcfdf301 | ||
|
|
449538c3d2 | ||
|
|
64496ffc9c | ||
|
|
25e4fcde76 | ||
|
|
7b877b3605 | ||
|
|
4d1c0a4441 | ||
|
|
eca99bd45f | ||
|
|
0bee2fe25a | ||
|
|
285bf84b4b | ||
|
|
6602af7fe0 | ||
|
|
fd39d08fb6 | ||
|
|
75bdf6aa30 | ||
|
|
2b7db933b0 | ||
|
|
ca1fe98517 | ||
|
|
a61018d7e0 | ||
|
|
e7893a4088 | ||
|
|
2795e21eaa | ||
|
|
da59dd5da6 | ||
|
|
04bff88df6 | ||
|
|
af8af8bfac | ||
|
|
c71982b239 | ||
|
|
485dace817 | ||
|
|
c7803a1c42 | ||
|
|
7f68203168 | ||
|
|
2d6c800272 | ||
|
|
47707f6f34 | ||
|
|
718272a7e1 | ||
|
|
d7a08a23bf | ||
|
|
ed767a2073 | ||
|
|
022b896592 | ||
|
|
fa7353428f | ||
|
|
24db72958f | ||
|
|
d798af8c77 | ||
|
|
d2e03f02c4 | ||
|
|
027387f70c | ||
|
|
fa03fd6c4a | ||
|
|
a3306958dc | ||
|
|
27a82e31ee | ||
|
|
aac624bacd | ||
|
|
ee2739787f | ||
|
|
cbfe32953a | ||
|
|
3c6f92e52e | ||
|
|
a2cce86307 | ||
|
|
d3343960d7 | ||
|
|
92c23d8ab8 | ||
|
|
89b24fcfc2 | ||
|
|
887c1fea4a | ||
|
|
acf92d27c9 | ||
|
|
6c7b44472f | ||
|
|
d5c899a3f1 | ||
|
|
2c15f6aa8f | ||
|
|
43f837dea5 | ||
|
|
17b609ed7f | ||
|
|
7eae47af89 | ||
|
|
40a346dc19 | ||
|
|
39373819fd | ||
|
|
af2dff8fbc | ||
|
|
8f79acdf7e | ||
|
|
8dfc5eb328 | ||
|
|
c21d67e33c | ||
|
|
06b0734d9c | ||
|
|
9b05a0d0f9 | ||
|
|
1000565c3a | ||
|
|
2bf2417612 | ||
|
|
2d820808cd | ||
|
|
53076830fe | ||
|
|
e7fedb6ebe | ||
|
|
e3303cb081 | ||
|
|
96c664af27 | ||
|
|
86e179dbe7 | ||
|
|
cc7ff3fcd8 | ||
|
|
08b7bae91a | ||
|
|
7b5f0a15bc | ||
|
|
604619784c | ||
|
|
f49e240c2d | ||
|
|
c06624661a | ||
|
|
b8cb643eab | ||
|
|
f9c8bd2137 | ||
|
|
4c7bb12c82 | ||
|
|
256972a984 | ||
|
|
e292d80bed | ||
|
|
36e294c00c | ||
|
|
4e5a31c8b3 | ||
|
|
52f6ae1366 | ||
|
|
013806229a | ||
|
|
096c8bb40d | ||
|
|
e5c5f0c66c | ||
|
|
0107f5ba87 | ||
|
|
40bbceee22 | ||
|
|
0d27f64f71 | ||
|
|
da9888a3f0 | ||
|
|
f2f6d29796 | ||
|
|
ad4d8a192a | ||
|
|
a60824308c | ||
|
|
7b6156f4cd | ||
|
|
4686b323e4 | ||
|
|
57d7971b5f | ||
|
|
4a8c2cfc56 | ||
|
|
c42b9c670e | ||
|
|
9bc01ebb95 | ||
|
|
8def26a0f5 | ||
|
|
75e3ad0199 | ||
|
|
f29a82dcd0 | ||
|
|
6f62fed349 | ||
|
|
a988496706 | ||
|
|
099fdde0f0 | ||
|
|
9ec021a2b0 | ||
|
|
35be4534c0 | ||
|
|
b65c749ac5 | ||
|
|
6b90351786 | ||
|
|
49222bee65 | ||
|
|
941aea2b97 | ||
|
|
91376b6387 | ||
|
|
1c57fe8b94 | ||
|
|
2c5e8e80ea | ||
|
|
3f12a2421b | ||
|
|
9dc2ce398b | ||
|
|
90f5d0a5c3 | ||
|
|
0379d01c52 | ||
|
|
e1a61991d9 | ||
|
|
bc96c29ffc | ||
|
|
f882d9f89d | ||
|
|
3b8fcd945c | ||
|
|
f609dcf8c1 | ||
|
|
de0ad40cb3 | ||
|
|
6cd1345307 | ||
|
|
b00da1d6d1 | ||
|
|
4649ded287 | ||
|
|
32a214e78d | ||
|
|
20ad69ccfb | ||
|
|
5311c02f25 | ||
|
|
bbfbaf9741 | ||
|
|
683fa185a4 | ||
|
|
43345546ae | ||
|
|
48a969b488 | ||
|
|
60422e68a3 | ||
|
|
d042dc825c | ||
|
|
0f6562e903 | ||
|
|
2a1b474fd8 | ||
|
|
9a7d58e42e | ||
|
|
88e484bf1b | ||
|
|
5ad075c073 | ||
|
|
294a7e55b0 | ||
|
|
6040256d8b | ||
|
|
7487792ab1 | ||
|
|
e4eda3bc71 | ||
|
|
8f08dab18d | ||
|
|
cfcd1ddd10 | ||
|
|
e392eb41f8 | ||
|
|
97b0b0ec76 | ||
|
|
d29c6fea94 | ||
|
|
5d8afebb5b | ||
|
|
9b1067e038 | ||
|
|
4f8fa1633c | ||
|
|
a0ed84a268 | ||
|
|
32d03b34ac | ||
|
|
6a2697ffd7 | ||
|
|
b4ff518d95 | ||
|
|
1c2836e268 | ||
|
|
cd1c55f706 | ||
|
|
a93f975e8b | ||
|
|
d4ece23e2e | ||
|
|
0796c0625f | ||
|
|
1be2ed6c11 | ||
|
|
8648357841 | ||
|
|
174674743d | ||
|
|
98b30a473a | ||
|
|
72f4cc4a98 | ||
|
|
e01f4f86ce | ||
|
|
450ca4335e | ||
|
|
e7427f4b7e | ||
|
|
de59ba33aa | ||
|
|
a16f472edf | ||
|
|
d94464ee29 | ||
|
|
8a52ba7918 | ||
|
|
1d8d9c0bec | ||
|
|
d424747d58 | ||
|
|
6407b3e80d | ||
|
|
d7464be974 | ||
|
|
7314efd87d | ||
|
|
4c0aac5759 | ||
|
|
a0f849ee40 | ||
|
|
e7d1376b63 | ||
|
|
f1a4c98ea6 | ||
|
|
c92399f4ee | ||
|
|
60cce2fb73 | ||
|
|
04dfd51229 | ||
|
|
4e86150ec5 | ||
|
|
b4f6a46b01 | ||
|
|
23d1b62746 | ||
|
|
f59c73da1e | ||
|
|
d1b15dec4d | ||
|
|
9d6ca1cc5e | ||
|
|
089af18d1f | ||
|
|
094454fa70 | ||
|
|
74b738d414 | ||
|
|
ba117c23df | ||
|
|
c2b717ebd6 | ||
|
|
1d478a6242 | ||
|
|
c79a5452ac | ||
|
|
ca63501fbc | ||
|
|
c1d20998d7 | ||
|
|
10ad1d90da | ||
|
|
5f1fea28f5 | ||
|
|
0a777ab989 | ||
|
|
02d803fc0c | ||
|
|
1d6328ca00 | ||
|
|
69b67f7e77 | ||
|
|
4d0c7bc74a | ||
|
|
b0262f239e | ||
|
|
3fe076f0fe | ||
|
|
8919554fe1 | ||
|
|
b8603882b1 | ||
|
|
0600f3511c | ||
|
|
7b256fe744 | ||
|
|
2455c4ede8 | ||
|
|
3b59755862 | ||
|
|
54f018cd59 | ||
|
|
9534680731 | ||
|
|
93c88e0f6a | ||
|
|
ed84b76021 | ||
|
|
e906c50207 | ||
|
|
43335ea394 | ||
|
|
5325b9bbae | ||
|
|
12969c04fe | ||
|
|
3cbe0c01ad | ||
|
|
a122b5e98a | ||
|
|
d8986fd914 | ||
|
|
aa23b37942 | ||
|
|
4a4b821085 | ||
|
|
a09a2c5857 | ||
|
|
7e2ec008f5 | ||
|
|
b58988b832 | ||
|
|
cf619daa8e | ||
|
|
ac360bf2ca | ||
|
|
615942452e | ||
|
|
544780248b | ||
|
|
8b5f65a527 | ||
|
|
5adfea1ac6 | ||
|
|
8667d66ca9 | ||
|
|
6017f3799d | ||
|
|
5df1ed2de3 | ||
|
|
37a8de17d4 | ||
|
|
d43f0951bc | ||
|
|
cdf0442d00 | ||
|
|
5ea87a0496 | ||
|
|
8e5f5b47c2 | ||
|
|
6ed535dbc0 | ||
|
|
8060687905 | ||
|
|
88774fdd23 | ||
|
|
80ce282107 | ||
|
|
0a38dd29d6 | ||
|
|
f6470c288c | ||
|
|
7e47d1ac6a | ||
|
|
e68c25c677 | ||
|
|
be83b73ddb | ||
|
|
3f188935ec | ||
|
|
b341dda575 | ||
|
|
7fb7d34caf | ||
|
|
670acbc70f | ||
|
|
8cba8ba3e0 | ||
|
|
3cfd5289ca | ||
|
|
1560d07045 | ||
|
|
8e8b486727 | ||
|
|
fc39ecf8de | ||
|
|
25c2f6783a | ||
|
|
cde8854730 | ||
|
|
bd8539aac3 | ||
|
|
8fee878fe2 | ||
|
|
901e58c243 | ||
|
|
89c17c02ca | ||
|
|
2288afed42 | ||
|
|
dd8a5286e1 | ||
|
|
73627d0bd4 | ||
|
|
382197865c | ||
|
|
dbd24b5967 | ||
|
|
fbd302ff38 | ||
|
|
204b93f958 | ||
|
|
9dd33af4ba | ||
|
|
75e6413546 | ||
|
|
bb86ebb0ef | ||
|
|
0bbcb5c8ef | ||
|
|
cc218ab3ca | ||
|
|
29bc9db36e | ||
|
|
43fe32900c | ||
|
|
f7bb86dc59 | ||
|
|
52e21cf057 | ||
|
|
278236000f | ||
|
|
829aef1eb4 | ||
|
|
6b9be1b6f2 | ||
|
|
31b259bf95 | ||
|
|
5f95f288a2 | ||
|
|
33c3a694fc | ||
|
|
dd1616e6ce | ||
|
|
b388be0abf | ||
|
|
d4a95c3bc5 | ||
|
|
f91328100d | ||
|
|
165bc69d1b | ||
|
|
6561d52ecb | ||
|
|
d51cb706a4 | ||
|
|
d113a80c77 | ||
|
|
9cac424d05 | ||
|
|
5cbb8dbc32 | ||
|
|
fb9bc4829a | ||
|
|
537443018d | ||
|
|
34d72d4b6c | ||
|
|
2cf6938706 | ||
|
|
2536d4f396 | ||
|
|
5d1bc78a2b | ||
|
|
fe6f186877 | ||
|
|
1db43b1145 | ||
|
|
3ec3261980 |
5
.gitignore
vendored
@@ -3,6 +3,8 @@
|
||||
src/vim
|
||||
src/xxd/xxd
|
||||
src/auto/if_perl.c
|
||||
src/auto/gui_gtk_gresources.c
|
||||
src/auto/gui_gtk_gresources.h
|
||||
src/tags
|
||||
|
||||
# We do need src/auto/configure.
|
||||
@@ -35,6 +37,7 @@ src/pathdef.c
|
||||
src/Obj*/pathdef.c
|
||||
gvimext.dll
|
||||
gvimext.lib
|
||||
runtime/doc/uganda.nsis.txt
|
||||
|
||||
# Borland C++
|
||||
bcc.cfg
|
||||
@@ -72,4 +75,6 @@ src/testdir/test*.out
|
||||
src/testdir/test*.failed
|
||||
src/testdir/test.log
|
||||
src/testdir/dostmp/*
|
||||
src/testdir/messages
|
||||
src/testdir/viminfo
|
||||
src/memfile_test
|
||||
|
||||
45
.travis.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
language: c
|
||||
|
||||
compiler:
|
||||
- clang
|
||||
- gcc
|
||||
|
||||
env:
|
||||
- COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src
|
||||
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp'"
|
||||
CHECK_AUTOCONF=yes
|
||||
- COVERAGE=no FEATURES=normal CONFOPT= SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow CHECK_AUTOCONF=no
|
||||
- COVERAGE=no FEATURES=small CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
- COVERAGE=no FEATURES=tiny CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
|
||||
|
||||
sudo: false
|
||||
|
||||
branches:
|
||||
except:
|
||||
- /^v[0-9]/
|
||||
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- autoconf
|
||||
- lcov
|
||||
- libperl-dev
|
||||
- python-dev
|
||||
- python3-dev
|
||||
- liblua5.1-0-dev
|
||||
- lua5.1
|
||||
|
||||
before_install:
|
||||
- pip install --user cpp-coveralls
|
||||
|
||||
script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
- if [ "$CHECK_AUTOCONF" = "yes" -a "$CC" = "gcc" ]; then make -C src autoconf; fi
|
||||
- if [ "x$SHADOWOPT" != x ]; then make -C src shadow; fi && (cd ${SRCDIR} && ./configure --with-features=$FEATURES $CONFOPT --enable-fail-if-missing && make -j$NPROC)
|
||||
- ${SRCDIR}/vim --version
|
||||
- make $SHADOWOPT test
|
||||
|
||||
after_success:
|
||||
- if [ x"$COVERAGE" = "xyes" ]; then ~/.local/bin/coveralls -b $SRCDIR -x .xs -e ${SRCDIR}/xxd -e ${SRCDIR}/if_perl.c --encodings utf-8 latin-1 EUC-KR; fi
|
||||
|
||||
# vim:set sts=2 sw=2 tw=0 et:
|
||||
54
CONTRIBUTING.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# Contributing to Vim
|
||||
|
||||
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.
|
||||
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".
|
||||
|
||||
|
||||
# Reporting issues
|
||||
|
||||
We use GitHub issues, but that is not a requirement. Writing to the Vim
|
||||
maillist is also fine.
|
||||
|
||||
Please use the GitHub issues only for actual issues. If you are not 100% sure
|
||||
that your problem is a Vim issue, please first discuss this on the Vim user
|
||||
maillist. Try reproducing the problem without any plugins or settings:
|
||||
|
||||
vim -N -u NONE
|
||||
|
||||
If you report an issue, please describe exactly how to reproduce it.
|
||||
For example, don't say "insert some text" but say what you did exactly:
|
||||
"ahere is some text<Esc>".
|
||||
Ideally, the steps you list can be used to write a test to verify the problem
|
||||
is fixed.
|
||||
|
||||
Feel free to report even the smallest problem, also typos in the documentation.
|
||||
|
||||
You can find known issues in the todo file: ":help todo".
|
||||
Or open [the todo file] on GitHub to see the latest version.
|
||||
|
||||
[the todo file]: https://github.com/vim/vim/blob/master/runtime/doc/todo.txt
|
||||
|
||||
|
||||
# Syntax, indent and other runtime files
|
||||
|
||||
The latest version of these files can be obtained from the repository.
|
||||
They are usually not updated with numbered patches.
|
||||
|
||||
If you find a problem with one of these files or have a suggestion for
|
||||
improvement, please first try to contact the maintainer directly.
|
||||
Look in the header of the file for the name and email address.
|
||||
|
||||
The maintainer will take care of issues and send updates to Bram for
|
||||
distribution with Vim.
|
||||
|
||||
If the maintainer does not react, contact the vim-dev maillist.
|
||||
87
Filelist
@@ -4,12 +4,17 @@
|
||||
# source files for all source archives
|
||||
SRC_ALL = \
|
||||
.hgignore \
|
||||
.travis.yml \
|
||||
appveyor.yml \
|
||||
src/appveyor.bat \
|
||||
src/README.txt \
|
||||
src/alloc.h \
|
||||
src/arabic.c \
|
||||
src/arabic.h \
|
||||
src/ascii.h \
|
||||
src/blowfish.c \
|
||||
src/buffer.c \
|
||||
src/channel.c \
|
||||
src/charset.c \
|
||||
src/crypt.c \
|
||||
src/crypt_zip.c \
|
||||
@@ -36,6 +41,8 @@ SRC_ALL = \
|
||||
src/gui_beval.h \
|
||||
src/hardcopy.c \
|
||||
src/hashtab.c \
|
||||
src/json.c \
|
||||
src/json_test.c \
|
||||
src/keymap.h \
|
||||
src/macros.h \
|
||||
src/main.c \
|
||||
@@ -83,8 +90,11 @@ SRC_ALL = \
|
||||
src/main.aap \
|
||||
src/testdir/main.aap \
|
||||
src/testdir/README.txt \
|
||||
src/testdir/Make_all.mak \
|
||||
src/testdir/*.in \
|
||||
src/testdir/*.py \
|
||||
src/testdir/sautest/autoload/*.vim \
|
||||
src/testdir/runtest.vim \
|
||||
src/testdir/test[0-9]*.ok \
|
||||
src/testdir/test[0-9]*a.ok \
|
||||
src/testdir/test_[a-z]*.ok \
|
||||
@@ -108,6 +118,7 @@ SRC_ALL = \
|
||||
src/proto.h \
|
||||
src/proto/blowfish.pro \
|
||||
src/proto/buffer.pro \
|
||||
src/proto/channel.pro \
|
||||
src/proto/charset.pro \
|
||||
src/proto/crypt.pro \
|
||||
src/proto/crypt_zip.pro \
|
||||
@@ -127,6 +138,7 @@ SRC_ALL = \
|
||||
src/proto/gui_beval.pro \
|
||||
src/proto/hardcopy.pro \
|
||||
src/proto/hashtab.pro \
|
||||
src/proto/json.pro \
|
||||
src/proto/main.pro \
|
||||
src/proto/mark.pro \
|
||||
src/proto/mbyte.pro \
|
||||
@@ -166,6 +178,7 @@ SRC_UNIX = \
|
||||
README_src.txt \
|
||||
configure \
|
||||
pixmaps/*.xpm \
|
||||
pixmaps/*.png \
|
||||
pixmaps/gen-inline-pixbufs.sh \
|
||||
pixmaps/stock_icons.h \
|
||||
src/INSTALL \
|
||||
@@ -186,6 +199,7 @@ SRC_UNIX = \
|
||||
src/gui_gtk_f.c \
|
||||
src/gui_gtk_f.h \
|
||||
src/gui_gtk_x11.c \
|
||||
src/gui_gtk_res.xml \
|
||||
src/gui_motif.c \
|
||||
src/gui_xmdlg.c \
|
||||
src/gui_xmebw.c \
|
||||
@@ -211,6 +225,7 @@ SRC_UNIX = \
|
||||
src/proto/gui_athena.pro \
|
||||
src/proto/gui_gtk.pro \
|
||||
src/proto/gui_gtk_x11.pro \
|
||||
src/proto/gui_gtk_gresources.pro \
|
||||
src/proto/gui_motif.pro \
|
||||
src/proto/gui_xmdlg.pro \
|
||||
src/proto/gui_x11.pro \
|
||||
@@ -247,7 +262,6 @@ SRC_DOS_UNIX = \
|
||||
src/if_python3.c \
|
||||
src/if_py_both.h \
|
||||
src/if_ruby.c \
|
||||
src/if_sniff.h \
|
||||
src/if_tcl.c \
|
||||
src/proto/if_cscope.pro \
|
||||
src/proto/if_lua.pro \
|
||||
@@ -277,16 +291,13 @@ SRC_DOS = \
|
||||
src/GvimExt/uninst.bat \
|
||||
README_srcdos.txt \
|
||||
src/INSTALLpc.txt \
|
||||
src/Make_bc3.mak \
|
||||
src/Make_bc5.mak \
|
||||
src/Make_cyg.mak \
|
||||
src/Make_cyg_ming.mak \
|
||||
src/Make_djg.mak \
|
||||
src/Make_ivc.mak \
|
||||
src/Make_dvc.mak \
|
||||
src/Make_ming.mak \
|
||||
src/Make_mvc.mak \
|
||||
src/Make_w16.mak \
|
||||
src/bigvim.bat \
|
||||
src/bigvim64.bat \
|
||||
src/msvcsetup.bat \
|
||||
@@ -300,30 +311,21 @@ SRC_DOS = \
|
||||
src/glbl_ime.h \
|
||||
src/gui_dwrite.cpp \
|
||||
src/gui_dwrite.h \
|
||||
src/gui_w16.c \
|
||||
src/gui_w32.c \
|
||||
src/gui_w48.c \
|
||||
src/guiw16rc.h \
|
||||
src/gui_w32_rc.h \
|
||||
src/if_ole.cpp \
|
||||
src/if_ole.h \
|
||||
src/if_ole.idl \
|
||||
src/if_perl_msvc/stdbool.h \
|
||||
src/iid_ole.c \
|
||||
src/os_dos.h \
|
||||
src/os_msdos.c \
|
||||
src/os_msdos.h \
|
||||
src/os_w32dll.c \
|
||||
src/os_w32exe.c \
|
||||
src/os_win16.c \
|
||||
src/os_win32.c \
|
||||
src/os_mswin.c \
|
||||
src/os_win16.h \
|
||||
src/os_win32.h \
|
||||
src/proto/gui_w16.pro \
|
||||
src/proto/gui_w32.pro \
|
||||
src/proto/if_ole.pro \
|
||||
src/proto/os_msdos.pro \
|
||||
src/proto/os_win16.pro \
|
||||
src/proto/os_win32.pro \
|
||||
src/proto/os_mswin.pro \
|
||||
src/testdir/Make_dos.mak \
|
||||
@@ -334,19 +336,15 @@ SRC_DOS = \
|
||||
src/vim.rc \
|
||||
src/vimio.h \
|
||||
src/gvim.exe.mnf \
|
||||
src/vim16.def \
|
||||
src/vim16.rc \
|
||||
src/vimrun.c \
|
||||
src/vimtbar.h \
|
||||
src/xpm_w32.c \
|
||||
src/xpm_w32.h \
|
||||
src/xxd/Make_bc3.mak \
|
||||
src/xxd/Make_bc5.mak \
|
||||
src/xxd/Make_cyg.mak \
|
||||
src/xxd/Make_djg.mak \
|
||||
src/xxd/Make_ming.mak \
|
||||
src/xxd/Make_mvc.mak \
|
||||
nsis/gvim.nsi \
|
||||
nsis/gvim_version.nsh \
|
||||
nsis/README.txt \
|
||||
uninstal.txt \
|
||||
src/VisVim/Commands.cpp \
|
||||
@@ -375,7 +373,6 @@ SRC_DOS_BIN = \
|
||||
src/VisVim/Res/*.bmp \
|
||||
src/tearoff.bmp \
|
||||
src/tools.bmp \
|
||||
src/tools16.bmp \
|
||||
src/vim*.ico \
|
||||
src/vim.tlb \
|
||||
src/vimtbar.lib \
|
||||
@@ -437,15 +434,6 @@ SRC_VMS = \
|
||||
src/xxd/Make_vms.mms \
|
||||
vimtutor.com \
|
||||
|
||||
# source files for OS/2 (in the extra archive)
|
||||
SRC_OS2 = \
|
||||
src/Make_os2.mak \
|
||||
src/os_os2_cfg.h \
|
||||
src/testdir/Make_os2.mak \
|
||||
src/testdir/todos.vim \
|
||||
src/testdir/os2.vim \
|
||||
src/xxd/Make_os2.mak \
|
||||
|
||||
# source files for QNX (in the extra archive)
|
||||
SRC_QNX = \
|
||||
src/os_qnx.c \
|
||||
@@ -462,12 +450,10 @@ SRC_EXTRA = \
|
||||
$(SRC_DOS) \
|
||||
$(SRC_DOS_BIN) \
|
||||
$(SRC_MAC) \
|
||||
$(SRC_OS2) \
|
||||
$(SRC_QNX) \
|
||||
$(SRC_VMS) \
|
||||
README_os390.txt \
|
||||
src/Make_mint.mak \
|
||||
src/if_sniff.c \
|
||||
src/infplist.xml \
|
||||
src/link.390 \
|
||||
src/os_beos.c \
|
||||
@@ -482,6 +468,7 @@ SRC_EXTRA = \
|
||||
RT_ALL = \
|
||||
README.txt \
|
||||
README.md \
|
||||
CONTRIBUTING.md \
|
||||
runtime/bugreport.vim \
|
||||
runtime/doc/*.awk \
|
||||
runtime/doc/*.pl \
|
||||
@@ -508,7 +495,6 @@ RT_ALL = \
|
||||
runtime/macros/life/click.me \
|
||||
runtime/macros/life/life.vim \
|
||||
runtime/macros/matchit.vim \
|
||||
runtime/macros/matchit.txt \
|
||||
runtime/macros/maze/README.txt \
|
||||
runtime/macros/maze/[mM]akefile \
|
||||
runtime/macros/maze/main.aap \
|
||||
@@ -538,6 +524,9 @@ RT_ALL = \
|
||||
runtime/tutor/tutor \
|
||||
runtime/tutor/tutor.vim \
|
||||
runtime/vimrc_example.vim \
|
||||
runtime/pack/dist/opt/matchit/plugin/matchit.vim \
|
||||
runtime/pack/dist/opt/matchit/doc/matchit.txt \
|
||||
runtime/pack/dist/opt/matchit/doc/tags \
|
||||
|
||||
# runtime files for all distributions without CR-NL translation
|
||||
RT_ALL_BIN = \
|
||||
@@ -581,6 +570,8 @@ RT_UNIX = \
|
||||
runtime/vim32x32.xpm \
|
||||
runtime/vim48x48.png \
|
||||
runtime/vim48x48.xpm \
|
||||
runtime/gvim.desktop \
|
||||
runtime/vim.desktop \
|
||||
|
||||
# Unix and DOS runtime without CR-LF translation
|
||||
RT_UNIX_DOS_BIN = \
|
||||
@@ -616,7 +607,6 @@ RT_AMI = \
|
||||
README.txt.info \
|
||||
README_ami.txt \
|
||||
README_ami.txt.info \
|
||||
libs/arp.library \
|
||||
runtime/doc.info \
|
||||
runtime/doc/*.info \
|
||||
runtime/icons/README.txt \
|
||||
@@ -701,8 +691,37 @@ EXTRA = \
|
||||
runtime/vimlogo.xpm \
|
||||
src/swis.s \
|
||||
src/tee/Makefile \
|
||||
src/tee/Make_mvc.mak \
|
||||
src/tee/tee.c \
|
||||
csdpmi4b.zip \
|
||||
|
||||
# files in READMEdir that are included from the top dir
|
||||
IN_README_DIR = \
|
||||
README.txt.info \
|
||||
README_ami.txt \
|
||||
README_ami.txt.info \
|
||||
README_amibin.txt \
|
||||
README_amibin.txt.info \
|
||||
README_amisrc.txt \
|
||||
README_amisrc.txt.info \
|
||||
README_bindos.txt \
|
||||
README_dos.txt \
|
||||
README_extra.txt \
|
||||
README_mac.txt \
|
||||
README_ole.txt \
|
||||
README_os2.txt \
|
||||
README_os390.txt \
|
||||
README_src.txt \
|
||||
README_srcdos.txt \
|
||||
README_unix.txt \
|
||||
README_vms.txt \
|
||||
README_w32s.txt \
|
||||
Contents \
|
||||
Contents.info \
|
||||
Vim.info \
|
||||
Xxd.info \
|
||||
runtime.info \
|
||||
src.info \
|
||||
vimdir.info \
|
||||
|
||||
# generic language files
|
||||
LANG_GEN = \
|
||||
|
||||
169
Makefile
@@ -63,9 +63,6 @@ all install uninstall tools config configure reconfig proto depend lint tags typ
|
||||
# amirt vim##rt.tgz runtime for Amiga
|
||||
# amibin vim##bin.tgz binary for Amiga
|
||||
#
|
||||
# os2bin vim##os2.zip binary for OS/2
|
||||
# (use RT from dosrt)
|
||||
#
|
||||
# farsi farsi##.zip Farsi fonts
|
||||
#
|
||||
# All output files are created in the "dist" directory. Existing files are
|
||||
@@ -89,9 +86,9 @@ MINOR = 4
|
||||
#
|
||||
# - Update Vim version number. For a test version in: src/version.h, Contents,
|
||||
# MAJOR/MINOR above, VIMMAJOR and VIMMINOR in src/Makefile, README*.txt,
|
||||
# runtime/doc/*.txt and nsis/gvim.nsi. Other things in README_os2.txt. For a
|
||||
# minor/major version: src/GvimExt/GvimExt.reg, src/vim.def, src/vim16.def,
|
||||
# src/gvim.exe.mnf.
|
||||
# runtime/doc/*.txt and nsis/gvim.nsi.
|
||||
# For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.def,
|
||||
# src/vim16.def, src/gvim.exe.mnf.
|
||||
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, MZscheme, Lua (if
|
||||
# you can make it all work), Cscope and "huge" features. Exclude workshop
|
||||
# and SNiFF.
|
||||
@@ -132,36 +129,61 @@ MINOR = 4
|
||||
# flag).
|
||||
# - "make amirt", "make amibin".
|
||||
#
|
||||
# PC:
|
||||
# MS-Windows:
|
||||
# - Run make on Unix to update the ".mo" files.
|
||||
# - "make dossrc" and "make dosrt". Unpack the archives on a PC.
|
||||
# Win32 console version:
|
||||
# - Set environment for Visual C++ 2008, e.g.: "msvc2008.bat" Or:
|
||||
# "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat".
|
||||
# - Get libintl-8.dll and libiconv-2.dll. E.g. from
|
||||
# https://mlocati.github.io/gettext-iconv-windows/ .
|
||||
# Put them in the top directory, "make dosrt" uses them.
|
||||
# - > make dossrc
|
||||
# > make dosrt
|
||||
# Unpack dist/vim##rt.zip and dist/vim##src.zip on an MS-Windows PC.
|
||||
# Win32 console version build:
|
||||
# - Set environment for Visual C++ 2008, e.g.:
|
||||
# > src/msvc2008.bat
|
||||
# Or:
|
||||
# > C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat
|
||||
# Or, when using the Visual C++ Toolkit 2003: "msvcsetup.bat" (adjust the
|
||||
# paths when necessary).
|
||||
# For Windows 98/ME the 2003 version is required, but then the executable
|
||||
# won't work on Windows 7 and 64 bit systems.
|
||||
# - "nmake -f Make_mvc.mak" (use the same path as for vcvars32.bat)
|
||||
# - "rm testdir/*.out", "nmake -f Make_mvc.mak test" and check the output.
|
||||
# - > cd src
|
||||
# > nmake -f Make_mvc.mak
|
||||
# - Run the tests:
|
||||
# > rm testdir/*.out testdir/*.res
|
||||
# > nmake -f Make_mvc.mak test
|
||||
# - check the output.
|
||||
# - Rename vim.exe to vimw32.exe, xxd/xxd.exe to xxdw32.exe.
|
||||
# - Rename vim.pdb to vimw32.pdb.
|
||||
# - Rename install.exe to installw32.exe and uninstal.exe to uninstalw32.exe.
|
||||
# Win32 GUI version:
|
||||
# - "nmake -f Make_mvc.mak GUI=yes"
|
||||
# Win32 GUI version build:
|
||||
# - > cd src
|
||||
# > nmake -f Make_mvc.mak GUI=yes
|
||||
# - Run the tests:
|
||||
# > rm testdir/*.out testdir/*.res
|
||||
# > nmake -f Make_mvc.mak testgvim
|
||||
# - check the output.
|
||||
# - move "gvim.exe" to here (otherwise the OLE version will overwrite it).
|
||||
# - Move gvim.pdb to here.
|
||||
# - Delete vimrun.exe, install.exe and uninstal.exe.
|
||||
# - Copy "GvimExt/gvimext.dll" to here.
|
||||
# - Delete vimrun.exe, install.exe and uninstal.exe.
|
||||
# Win32 GUI version with OLE, PERL, TCL, PYTHON and dynamic IME:
|
||||
# - Run src/bigvim.bat ("nmake -f Make_mvc.mak GUI=yes OLE=yes IME=yes ...)
|
||||
# - Install the interfaces you want, see src/INSTALLpc.txt
|
||||
# - Build:
|
||||
# > cd src
|
||||
# Adjust bigvim.bat to match the version of each interface you want.
|
||||
# > bigvim.bat
|
||||
# - Run the tests:
|
||||
# > rm testdir/*.out testdir/*.res
|
||||
# > nmake -f Make_mvc.mak testgvim
|
||||
# - check the output.
|
||||
# - Rename "gvim.exe" to "gvim_ole.exe".
|
||||
# - Rename gvim.pdb to "gvim_ole.pdb".
|
||||
# - Delete install.exe and uninstal.exe.
|
||||
# Create the archives:
|
||||
# - Copy all the "*.exe" files to where this Makefile is.
|
||||
# - Copy all the "*.pdb" files to where this Makefile is.
|
||||
# - "make dosbin".
|
||||
# - in this directory:
|
||||
# > make dosbin
|
||||
# NSIS self installing exe:
|
||||
# - To get NSIS see http://nsis.sourceforge.net
|
||||
# - Make sure gvim_ole.exe, vimw32.exe, installw32.exe,
|
||||
@@ -173,38 +195,33 @@ MINOR = 4
|
||||
# Note: VisVim needs to be build with MSVC 5, newer versions don't work.
|
||||
# gvimext64.dll can be obtained from http://code.google.com/p/vim-win3264/
|
||||
# It is part of vim72.zip as vim72/gvimext.dll.
|
||||
# - make sure there is a diff.exe two levels up
|
||||
# - go to ../nsis and do "makensis gvim.nsi" (takes a few minutes).
|
||||
# - Make sure there is a diff.exe two levels up (get it from a previous Vim
|
||||
# version).
|
||||
# - go to ../nsis and do:
|
||||
# > makensis gvim.nsi (takes a few minutes).
|
||||
# - Copy gvim##.exe to the dist directory.
|
||||
#
|
||||
# 64 bit builds (these are not in the normal distribution, the 32 bit build
|
||||
# works just fine on 64 bit systems).
|
||||
# Like the console and GUI version, but first run vcvars64.bat or
|
||||
# "..\VC\vcvarsall.bat x86_amd64".
|
||||
# - "nmake -f Make_mvc.mak"
|
||||
# - "nmake -f Make_mvc.mak GUI=yes"
|
||||
# Or run src/bigvim64.bat for an OLE version.
|
||||
# - Build the console version:
|
||||
# > nmake -f Make_mvc.mak
|
||||
# - Build the GUI version:
|
||||
# > nmake -f Make_mvc.mak GUI=yes
|
||||
# - Build the OLE version with interfaces:
|
||||
# > bigvim64.bat
|
||||
#
|
||||
# OBSOLETE systems: You can build this if you have an appropriate system.
|
||||
#
|
||||
# 16 bit DOS version: (doesn't build anywhere)
|
||||
# - Set environment for compiling with Borland C++ 3.1.
|
||||
# - "bmake -f Make_bc3.mak BOR=E:\borlandc" (compiling xxd might fail, in that
|
||||
# case set environment for compiling with Borland C++ 4.0 and do
|
||||
# "make -f make_bc3.mak BOR=E:\BC4 xxd/xxd.exe").
|
||||
# NOTE: this currently fails because Vim is too big.
|
||||
# - "make test" and check the output.
|
||||
# - Rename the executables to "vimd16.exe", "xxdd16.exe", "installd16.exe" and
|
||||
# "uninstald16.exe".
|
||||
# OBSOLETE systems: You can build these if you have an appropriate system.
|
||||
#
|
||||
# 32 bit DOS version: (requires Windows XP or earlier)
|
||||
# - Set environment for compiling with DJGPP; "gmake -f Make_djg.mak".
|
||||
# - "rm testdir/*.out", "gmake -f Make_djg.mak test" and check the output for
|
||||
# "ALL DONE".
|
||||
# - Rename the executables to "vimd32.exe", "xxdd32.exe", "installd32.exe" and
|
||||
# "uninstald32.exe".
|
||||
# 16 bit DOS version: You need to get a very old version of Vim, for several
|
||||
# years even the tiny build is too big to fit in DOS memory.
|
||||
#
|
||||
# Win32s GUI version: (requires very old compiler)
|
||||
# 32 bit DOS version: Support was removed in 7.4.1399. When syncing to before
|
||||
# that it probably won't build.
|
||||
#
|
||||
# Win32s GUI version: (requires a very old compiler)
|
||||
# - Set environment for Visual C++ 4.1 (requires a new console window):
|
||||
# "vcvars32.bat" (use the path for VC 4.1 e:\msdev\bin)
|
||||
# - "nmake -f Make_mvc.mak GUI=yes INTL=no clean" (use the path for VC 4.1)
|
||||
@@ -214,12 +231,9 @@ MINOR = 4
|
||||
# - Rename "uninstal.exe" to "uninstalw32.exe"
|
||||
# - The produced uninstalw32.exe and vimrun.exe are used.
|
||||
#
|
||||
# OS/2: (requires an OS/2 system)
|
||||
# - Unpack the Unix archive.
|
||||
# - "make -f Make_os2.mak".
|
||||
# - Rename the executables to vimos2.exe, xxdos2.exe and teeos2.exe and copy
|
||||
# them to here.
|
||||
# - "make os2bin".
|
||||
# OS/2 support was removed in patch 7.4.1008. If you want to give it a try
|
||||
# sync to before that and check the old version of this Makefile for
|
||||
# instructions.
|
||||
|
||||
VIMVER = vim-$(MAJOR).$(MINOR)
|
||||
VERSION = $(MAJOR)$(MINOR)
|
||||
@@ -241,9 +255,13 @@ dist:
|
||||
mkdir dist
|
||||
|
||||
# Clean up some files to avoid they are included.
|
||||
# Copy README files to the top directory.
|
||||
prepare:
|
||||
if test -f runtime/doc/uganda.nsis.txt; then \
|
||||
rm runtime/doc/uganda.nsis.txt; fi
|
||||
for name in $(IN_README_DIR); do \
|
||||
cp READMEdir/"$$name" .; \
|
||||
done
|
||||
|
||||
# For the zip files we need to create a file with the comment line
|
||||
dist/comment:
|
||||
@@ -257,7 +275,6 @@ COMMENT_GVIM = comment/$(VERSION)-bin-gvim
|
||||
COMMENT_OLE = comment/$(VERSION)-bin-ole
|
||||
COMMENT_W32S = comment/$(VERSION)-bin-w32s
|
||||
COMMENT_SRC = comment/$(VERSION)-src
|
||||
COMMENT_OS2 = comment/$(VERSION)-bin-os2
|
||||
COMMENT_HTML = comment/$(VERSION)-html
|
||||
COMMENT_FARSI = comment/$(VERSION)-farsi
|
||||
|
||||
@@ -285,9 +302,6 @@ dist/$(COMMENT_W32S): dist/comment
|
||||
dist/$(COMMENT_SRC): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) sources for MS-DOS and MS-Windows" > dist/$(COMMENT_SRC)
|
||||
|
||||
dist/$(COMMENT_OS2): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) binaries + runtime files for OS/2" > dist/$(COMMENT_OS2)
|
||||
|
||||
dist/$(COMMENT_HTML): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) documentation in HTML" > dist/$(COMMENT_HTML)
|
||||
|
||||
@@ -312,6 +326,7 @@ unixall: dist prepare
|
||||
$(EXTRA) \
|
||||
$(LANG_SRC) \
|
||||
| (cd dist/$(VIMRTDIR); tar xf -)
|
||||
-rm $(IN_README_DIR)
|
||||
# Need to use a "distclean" config.mk file
|
||||
# Note: this file is not included in the repository to avoid problems, but it's
|
||||
# OK to put it in the archive.
|
||||
@@ -348,6 +363,7 @@ amirt: dist prepare
|
||||
$(RT_NO_UNIX) \
|
||||
$(RT_AMI_DOS) \
|
||||
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
|
||||
-rm $(IN_README_DIR)
|
||||
mv dist/Vim/$(VIMRTDIR)/vimdir.info dist/Vim.info
|
||||
mv dist/Vim/$(VIMRTDIR)/runtime.info dist/Vim/$(VIMRTDIR).info
|
||||
mv dist/Vim/$(VIMRTDIR)/runtime/* dist/Vim/$(VIMRTDIR)
|
||||
@@ -368,6 +384,7 @@ amibin: dist prepare
|
||||
Vim \
|
||||
Xxd \
|
||||
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
|
||||
-rm $(IN_README_DIR)
|
||||
mv dist/Vim/$(VIMRTDIR)/vimdir.info dist/Vim.info
|
||||
mv dist/Vim/$(VIMRTDIR)/runtime.info dist/Vim/$(VIMRTDIR).info
|
||||
cd dist && tar cf vim$(VERSION)bin.tar Vim Vim.info
|
||||
@@ -386,6 +403,7 @@ amisrc: dist prepare
|
||||
$(SRC_AMI) \
|
||||
$(SRC_AMI_DOS) \
|
||||
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
|
||||
-rm $(IN_README_DIR)
|
||||
mv dist/Vim/$(VIMRTDIR)/vimdir.info dist/Vim.info
|
||||
mv dist/Vim/$(VIMRTDIR)/runtime.info dist/Vim/$(VIMRTDIR).info
|
||||
cd dist && tar cf vim$(VERSION)src.tar Vim Vim.info
|
||||
@@ -396,7 +414,9 @@ no_title.vim: Makefile
|
||||
echo "set notitle noicon nocp nomodeline viminfo=" >no_title.vim
|
||||
|
||||
# MS-DOS sources
|
||||
dossrc: dist no_title.vim dist/$(COMMENT_SRC) runtime/doc/uganda.nsis.txt
|
||||
dossrc: dist no_title.vim dist/$(COMMENT_SRC) \
|
||||
runtime/doc/uganda.nsis.txt \
|
||||
nsis/gvim_version.nsh
|
||||
-rm -rf dist/vim$(VERSION)src.zip
|
||||
-rm -rf dist/vim
|
||||
mkdir dist/vim
|
||||
@@ -407,10 +427,12 @@ dossrc: dist no_title.vim dist/$(COMMENT_SRC) runtime/doc/uganda.nsis.txt
|
||||
$(SRC_AMI_DOS) \
|
||||
$(SRC_DOS_UNIX) \
|
||||
runtime/doc/uganda.nsis.txt \
|
||||
nsis/gvim_version.nsh \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
mv dist/vim/$(VIMRTDIR)/runtime/* dist/vim/$(VIMRTDIR)
|
||||
rmdir dist/vim/$(VIMRTDIR)/runtime
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
# This file needs to be in dos fileformat for NSIS.
|
||||
$(VIM) -e -X -u no_title.vim -c ":set tx|wq" dist/vim/$(VIMRTDIR)/doc/uganda.nsis.txt
|
||||
tar cf - \
|
||||
$(SRC_DOS_BIN) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
@@ -419,12 +441,21 @@ dossrc: dist no_title.vim dist/$(COMMENT_SRC) runtime/doc/uganda.nsis.txt
|
||||
runtime/doc/uganda.nsis.txt: runtime/doc/uganda.txt
|
||||
cd runtime/doc && $(MAKE) uganda.nsis.txt
|
||||
|
||||
dosrt: dist dist/$(COMMENT_RT) dosrt_unix2dos
|
||||
nsis/gvim_version.nsh: Makefile
|
||||
echo "# Generated from Makefile: define the version numbers" > $@
|
||||
echo "!ifndef __GVIM_VER__NSH__" >> $@
|
||||
echo "!define __GVIM_VER__NSH__" >> $@
|
||||
echo "!define VER_MAJOR $(MAJOR)" >> $@
|
||||
echo "!define VER_MINOR $(MINOR)" >> $@
|
||||
echo "!endif" >> $@
|
||||
|
||||
dosrt: dist dist/$(COMMENT_RT) dosrt_files
|
||||
-rm -rf dist/vim$(VERSION)rt.zip
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)rt.zip vim <$(COMMENT_RT)
|
||||
|
||||
# Split in two parts to avoid an "argument list too long" error.
|
||||
dosrt_unix2dos: dist prepare no_title.vim
|
||||
# We no longer convert the files from unix to dos fileformat.
|
||||
dosrt_files: dist prepare no_title.vim
|
||||
-rm -rf dist/vim
|
||||
mkdir dist/vim
|
||||
mkdir dist/vim/$(VIMRTDIR)
|
||||
@@ -440,13 +471,13 @@ dosrt_unix2dos: dist prepare no_title.vim
|
||||
$(RT_AMI_DOS) \
|
||||
$(LANG_GEN) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
tar cf - \
|
||||
$(RT_UNIX_DOS_BIN) \
|
||||
$(RT_ALL_BIN) \
|
||||
$(RT_DOS_BIN) \
|
||||
$(LANG_GEN_BIN) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
-rm $(IN_README_DIR)
|
||||
mv dist/vim/$(VIMRTDIR)/runtime/* dist/vim/$(VIMRTDIR)
|
||||
rmdir dist/vim/$(VIMRTDIR)/runtime
|
||||
# Add the message translations. Trick: skip ja.mo and use ja.sjis.mo instead.
|
||||
@@ -460,12 +491,12 @@ dosrt_unix2dos: dist prepare no_title.vim
|
||||
cp $$i dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES/vim.mo; \
|
||||
fi \
|
||||
done
|
||||
cp libintl.dll dist/vim/$(VIMRTDIR)/
|
||||
cp libintl-8.dll dist/vim/$(VIMRTDIR)/
|
||||
cp libiconv-2.dll dist/vim/$(VIMRTDIR)/
|
||||
|
||||
|
||||
# Convert runtime files from Unix fileformat to dos fileformat.
|
||||
# Used before uploading. Don't delete the AAPDIR/sign files!
|
||||
runtime_unix2dos: dosrt_unix2dos
|
||||
runtime_unix2dos: dosrt_files
|
||||
-rm -rf `find runtime/dos -type f -print | sed -e /AAPDIR/d`
|
||||
cd dist/vim/$(VIMRTDIR); tar cf - * \
|
||||
| (cd ../../../runtime/dos; tar xf -)
|
||||
@@ -481,7 +512,7 @@ dosbin_gvim: dist no_title.vim dist/$(COMMENT_GVIM)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
-rm $(IN_README_DIR)
|
||||
cp gvim.exe dist/vim/$(VIMRTDIR)/gvim.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
@@ -500,7 +531,6 @@ dosbin_w32: dist no_title.vim dist/$(COMMENT_W32)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
cp vimw32.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
@@ -517,7 +547,6 @@ dosbin_d32: dist no_title.vim dist/$(COMMENT_D32)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
cp vimd32.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp xxdd32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installd32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
@@ -534,7 +563,6 @@ dosbin_d16: dist no_title.vim dist/$(COMMENT_D16)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
cp vimd16.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp xxdd16.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installd16.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
@@ -550,7 +578,6 @@ dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
cp gvim_ole.exe dist/vim/$(VIMRTDIR)/gvim.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
@@ -572,7 +599,6 @@ dosbin_s: dist no_title.vim dist/$(COMMENT_W32S)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
cp gvim_w32s.exe dist/vim/$(VIMRTDIR)/gvim.exe
|
||||
cp xxdd32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp README_w32s.txt dist/vim/$(VIMRTDIR)
|
||||
@@ -580,21 +606,6 @@ dosbin_s: dist no_title.vim dist/$(COMMENT_W32S)
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cd dist && zip -9 -rD -z gvim$(VERSION)_s.zip vim <$(COMMENT_W32S)
|
||||
|
||||
os2bin: dist no_title.vim dist/$(COMMENT_OS2)
|
||||
-rm -rf dist/vim$(VERSION)os2.zip
|
||||
-rm -rf dist/vim
|
||||
mkdir dist/vim
|
||||
mkdir dist/vim/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(BIN_OS2) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -X -u no_title.vim -c ":set tx|wq" {} \;
|
||||
cp vimos2.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp xxdos2.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp teeos2.exe dist/vim/$(VIMRTDIR)/tee.exe
|
||||
cp emx.dll emxlibcs.dll dist/vim/$(VIMRTDIR)
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)os2.zip vim <$(COMMENT_OS2)
|
||||
|
||||
html: dist dist/$(COMMENT_HTML)
|
||||
-rm -rf dist/vim$(VERSION)html.zip
|
||||
cd runtime/doc && zip -9 -z ../../dist/vim$(VERSION)html.zip *.html <../../dist/$(COMMENT_HTML)
|
||||
|
||||
23
README.md
@@ -1,7 +1,11 @@
|
||||
`README.md` for version 7.4 of Vim: Vi IMproved.
|
||||
[](https://travis-ci.org/vim/vim)
|
||||
[](https://coveralls.io/github/vim/vim?branch=master)
|
||||
[](https://ci.appveyor.com/project/chrisbra/vim)
|
||||
[](https://scan.coverity.com/projects/vim)
|
||||
|
||||
|
||||
## What is VIM ##
|
||||
## What is Vim? ##
|
||||
|
||||
Vim is an almost compatible version of the UNIX editor Vi. Many new features
|
||||
have been added: multi-level undo, syntax highlighting, command line history,
|
||||
@@ -14,13 +18,18 @@ All commands are given with normal keyboard characters, so those who can type
|
||||
with ten fingers can work very fast. Additionally, function keys can be
|
||||
defined by the user, and the mouse can be used.
|
||||
|
||||
Vim runs under Amiga DOS, MS-DOS, MS-Windows (95, 98, Me, NT, 2000, XP, Vista,
|
||||
7), Atari MiNT, Macintosh, BeOS, VMS, RISC OS, OS/2 and almost all flavours of
|
||||
UNIX. Porting to other systems should not be very difficult.
|
||||
Vim runs under MS-DOS, MS-Windows (NT, 2000, XP, Vista, 7, 8, 10), Macintosh,
|
||||
VMS and almost all flavours of UNIX. Porting to other systems should not be
|
||||
very difficult. Older versions of Vim run on MS-Windows 95/98/Me, Amiga DOS,
|
||||
Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
|
||||
## Distribution ##
|
||||
|
||||
You can often use your favorite package manager to install Vim. On Mac and
|
||||
Linux a small version of Vim is pre-installed, you still need to install Vim
|
||||
if you want more features.
|
||||
|
||||
There are separate distributions for Unix, PC, Amiga and some other systems.
|
||||
This `README.md` file comes with the runtime archive. It includes the
|
||||
documentation, syntax files and other files that are used at runtime. To run
|
||||
@@ -82,13 +91,17 @@ See one of these files for system-specific instructions:
|
||||
README_ami.txt Amiga
|
||||
README_unix.txt Unix
|
||||
README_dos.txt MS-DOS and MS-Windows
|
||||
README_os2.txt OS/2
|
||||
README_mac.txt Macintosh
|
||||
README_vms.txt VMS
|
||||
|
||||
There are more `README_*.txt` files, depending on the distribution you used.
|
||||
|
||||
|
||||
## Contributing ##
|
||||
|
||||
If you would like to help making Vim better, see the [CONTRIBUTING.md](https://github.com/vim/vim/blob/master/CONTRIBUTING.md) file.
|
||||
|
||||
|
||||
## Information ##
|
||||
|
||||
The latest news about Vim can be found on the Vim home page:
|
||||
|
||||
14
README.txt
@@ -1,7 +1,7 @@
|
||||
README.txt for version 7.4 of Vim: Vi IMproved.
|
||||
|
||||
|
||||
WHAT IS VIM
|
||||
WHAT IS VIM?
|
||||
|
||||
Vim is an almost compatible version of the UNIX editor Vi. Many new features
|
||||
have been added: multi-level undo, syntax highlighting, command line history,
|
||||
@@ -14,13 +14,18 @@ All commands are given with normal keyboard characters, so those who can type
|
||||
with ten fingers can work very fast. Additionally, function keys can be
|
||||
defined by the user, and the mouse can be used.
|
||||
|
||||
Vim runs under Amiga DOS, MS-DOS, MS-Windows (95, 98, Me, NT, 2000, XP, Vista,
|
||||
7), Atari MiNT, Macintosh, BeOS, VMS, RISC OS, OS/2 and almost all flavours of
|
||||
UNIX. Porting to other systems should not be very difficult.
|
||||
Vim runs under MS-DOS, MS-Windows (NT, 2000, XP, Vista, 7, 8, 10), Macintosh,
|
||||
VMS and almost all flavours of UNIX. Porting to other systems should not be
|
||||
very difficult. Older versions of Vim run on MS-Windows 95/98/Me, Amiga DOS,
|
||||
Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
|
||||
DISTRIBUTION
|
||||
|
||||
You can often use your favorite package manager to install Vim. On Mac and
|
||||
Linux a small version of Vim is pre-installed, you still need to install Vim
|
||||
if you want more features.
|
||||
|
||||
There are separate distributions for Unix, PC, Amiga and some other systems.
|
||||
This README.txt file comes with the runtime archive. It includes the
|
||||
documentation, syntax files and other files that are used at runtime. To run
|
||||
@@ -82,7 +87,6 @@ See one of these files for system-specific instructions:
|
||||
README_ami.txt Amiga
|
||||
README_unix.txt Unix
|
||||
README_dos.txt MS-DOS and MS-Windows
|
||||
README_os2.txt OS/2
|
||||
README_mac.txt Macintosh
|
||||
README_vms.txt VMS
|
||||
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
README_os2.txt for version 7.4 of Vim: Vi IMproved.
|
||||
|
||||
This file explains the installation of Vim on OS/2 systems.
|
||||
See "README.txt" for general information about Vim.
|
||||
|
||||
|
||||
NOTE: You will need two archives:
|
||||
vim74rt.zip contains the runtime files (same as for the PC version)
|
||||
vim74os2.zip contains the OS/2 executables
|
||||
|
||||
1. Go to the directory where you want to put the Vim files. Examples:
|
||||
cd C:\
|
||||
cd D:\editors
|
||||
|
||||
2. Unpack the zip archives. This will create a new directory "vim/vim74",
|
||||
in which all the distributed Vim files are placed. Since the directory
|
||||
name includes the version number, it is unlikely that you overwrite
|
||||
existing files.
|
||||
Examples:
|
||||
pkunzip -d vim74os2.zip
|
||||
unzip vim74os2.zip
|
||||
|
||||
After you unpacked the files, you can still move the whole directory tree
|
||||
to another location.
|
||||
|
||||
3. Add the directory where vim.exe is to your path. The simplest is to add a
|
||||
line to your autoexec.bat. Examples:
|
||||
set path=%path%;C:\vim\vim74
|
||||
set path=%path%;D:\editors\vim\vim74
|
||||
|
||||
That's it!
|
||||
|
||||
|
||||
Extra remarks:
|
||||
|
||||
- To avoid confusion between distributed files of different versions and your
|
||||
own modified vim scripts, it is recommended to use this directory layout:
|
||||
("C:\vim" is used here as the root, replace with the path you use)
|
||||
Your own files:
|
||||
C:\vim\_vimrc Your personal vimrc.
|
||||
C:\vim\_viminfo Dynamic info for 'viminfo'.
|
||||
C:\vim\... Other files you made.
|
||||
Distributed files:
|
||||
C:\vim\vim74\vim.exe The Vim version 7.4 executable.
|
||||
C:\vim\vim74\doc\*.txt The version 7.4 documentation files.
|
||||
C:\vim\vim74\bugreport.vim A Vim version 7.4 script.
|
||||
C:\vim\vim74\... Other version 7.4 distributed files.
|
||||
In this case the $VIM environment variable would be set like this:
|
||||
set VIM=C:\vim
|
||||
|
||||
- You can put your Vim executable anywhere else. If the executable is not
|
||||
with the other distributed Vim files, you should set $VIM. The simplest is
|
||||
to add a line to your autoexec.bat. Examples:
|
||||
set VIM=c:\vim
|
||||
set VIM=d:\editors\vim
|
||||
|
||||
For further information, type this inside Vim:
|
||||
:help os2
|
||||
@@ -9,7 +9,7 @@ Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful
|
||||
messages, shows current file name in window title, on-line
|
||||
help, rectangular cut/paste, etc., etc., etc...
|
||||
|
||||
Version 7.4. Also runs under UNIX, MSDOS and other systems.
|
||||
Version 7.4. Also runs under UNIX, MS-Windows, Mac, etc.
|
||||
vim74rt.tgz contains the documentation and syntax files.
|
||||
vim74bin.tgz contains the binaries.
|
||||
vim74src.tgz contains the sources.
|
||||
@@ -19,5 +19,5 @@ Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful
|
||||
Xxd Hex dumper and reader. Can be used to view files as hex, edit
|
||||
them and write them back. Can also be used to patch files.
|
||||
|
||||
Version 1.8 (1997 May 22)
|
||||
Version 1.10 (1997 May 22)
|
||||
Author: Juergen Weigert
|
||||
0
Contents.info → READMEdir/Contents.info
Executable file → Normal file
0
README.txt.info → READMEdir/README.txt.info
Executable file → Normal file
0
README_ami.txt.info → READMEdir/README_ami.txt.info
Executable file → Normal file
0
README_amibin.txt.info → READMEdir/README_amibin.txt.info
Executable file → Normal file
0
README_amisrc.txt.info → READMEdir/README_amisrc.txt.info
Executable file → Normal file
5
READMEdir/README_os2.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
README_os2.txt for version 7.4 of Vim: Vi IMproved.
|
||||
|
||||
This file used to explain the installation of Vim on OS/2 systems.
|
||||
However, support for OS/2 has been removed in patch 7.4.1008.
|
||||
See "README.txt" for general information about Vim.
|
||||
0
Vim.info → READMEdir/Vim.info
Executable file → Normal file
0
Xxd.info → READMEdir/Xxd.info
Executable file → Normal file
0
runtime.info → READMEdir/runtime.info
Executable file → Normal file
0
src.info → READMEdir/src.info
Executable file → Normal file
0
vimdir.info → READMEdir/vimdir.info
Executable file → Normal file
34
appveyor.yml
Normal file
@@ -0,0 +1,34 @@
|
||||
version: "{build}"
|
||||
|
||||
skip_tags: true
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
- FEATURE: HUGE
|
||||
- FEATURE: NORMAL
|
||||
# disabled
|
||||
# - FEATURE: TINY
|
||||
# - FEATURE: SMALL
|
||||
# - FEATURE: BIG
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
|
||||
before_build:
|
||||
- '"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 /release'
|
||||
# Work around for Python 2.7.11's bug
|
||||
- reg copy HKLM\SOFTWARE\Python\PythonCore\2.7 HKLM\SOFTWARE\Python\PythonCore\2.7-32 /s /reg:32
|
||||
- reg copy HKLM\SOFTWARE\Python\PythonCore\2.7 HKLM\SOFTWARE\Python\PythonCore\2.7-32 /s /reg:64
|
||||
|
||||
build_script:
|
||||
- src/appveyor.bat
|
||||
|
||||
test_script:
|
||||
- cd src/testdir
|
||||
# Testing with MSVC gvim
|
||||
- nmake -f Make_dos.mak VIMPROG=..\gvim
|
||||
- nmake -f Make_dos.mak clean
|
||||
# Testing with MingW console version
|
||||
- nmake -f Make_dos.mak VIMPROG=..\vim
|
||||
|
||||
# vim: sw=2 sts=2 et ts=2 sr
|
||||
BIN
csdpmi4b.zip
BIN
libs/arp.library
@@ -6,13 +6,19 @@
|
||||
# because uninstall deletes most files in $0.
|
||||
|
||||
# Location of gvim_ole.exe, vimw32.exe, GvimExt/*, etc.
|
||||
!define VIMSRC "..\src"
|
||||
!ifndef VIMSRC
|
||||
!define VIMSRC "..\src"
|
||||
!endif
|
||||
|
||||
# Location of runtime files
|
||||
!define VIMRT ".."
|
||||
!ifndef VIMRT
|
||||
!define VIMRT ".."
|
||||
!endif
|
||||
|
||||
# Location of extra tools: diff.exe
|
||||
!define VIMTOOLS ..\..
|
||||
!ifndef VIMTOOLS
|
||||
!define VIMTOOLS ..\..
|
||||
!endif
|
||||
|
||||
# Comment the next line if you don't have UPX.
|
||||
# Get it at http://upx.sourceforge.net
|
||||
@@ -21,8 +27,7 @@
|
||||
# comment the next line if you do not want to add Native Language Support
|
||||
!define HAVE_NLS
|
||||
|
||||
!define VER_MAJOR 7
|
||||
!define VER_MINOR 4
|
||||
!include gvim_version.nsh # for version number
|
||||
|
||||
# ----------- No configurable settings below this line -----------
|
||||
|
||||
@@ -33,9 +38,10 @@
|
||||
Name "Vim ${VER_MAJOR}.${VER_MINOR}"
|
||||
OutFile gvim${VER_MAJOR}${VER_MINOR}.exe
|
||||
CRCCheck force
|
||||
SetCompressor lzma
|
||||
SetCompressor /SOLID lzma
|
||||
SetDatablockOptimize on
|
||||
RequestExecutionLevel highest
|
||||
XPStyle on
|
||||
|
||||
ComponentText "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer."
|
||||
DirText "Choose a directory to install Vim (should contain 'vim')"
|
||||
@@ -56,9 +62,6 @@ LicenseData ${VIMRT}\doc\uganda.nsis.txt
|
||||
!packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
|
||||
!endif
|
||||
|
||||
SetCompressor /SOLID lzma
|
||||
XPStyle on
|
||||
|
||||
# This adds '\vim' to the user choice automagically. The actual value is
|
||||
# obtained below with ReadINIStr.
|
||||
InstallDir "$PROGRAMFILES\Vim"
|
||||
@@ -356,7 +359,9 @@ SectionEnd
|
||||
File ${VIMRT}\keymap\README.txt
|
||||
File ${VIMRT}\keymap\*.vim
|
||||
SetOutPath $0
|
||||
File ${VIMRT}\libintl.dll
|
||||
File ${VIMRT}\libintl-8.dll
|
||||
File ${VIMRT}\libiconv-2.dll
|
||||
File /nonfatal ${VIMRT}\libwinpthread-1.dll
|
||||
SectionEnd
|
||||
!endif
|
||||
|
||||
|
||||
6
nsis/gvim_version.nsh
Normal file
@@ -0,0 +1,6 @@
|
||||
# Generated from Makefile: define the version numbers
|
||||
!ifndef __GVIM_VER__NSH__
|
||||
!define __GVIM_VER__NSH__
|
||||
!define VER_MAJOR 7
|
||||
!define VER_MINOR 4
|
||||
!endif
|
||||
BIN
pixmaps/stock_vim_build_tags.png
Normal file
|
After Width: | Height: | Size: 439 B |
BIN
pixmaps/stock_vim_find_help.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
pixmaps/stock_vim_save_all.png
Normal file
|
After Width: | Height: | Size: 1021 B |
BIN
pixmaps/stock_vim_session_load.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
pixmaps/stock_vim_session_new.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
pixmaps/stock_vim_session_save.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
pixmaps/stock_vim_shell.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
pixmaps/stock_vim_window_maximize.png
Normal file
|
After Width: | Height: | Size: 540 B |
BIN
pixmaps/stock_vim_window_maximize_width.png
Normal file
|
After Width: | Height: | Size: 514 B |
BIN
pixmaps/stock_vim_window_minimize.png
Normal file
|
After Width: | Height: | Size: 352 B |
BIN
pixmaps/stock_vim_window_minimize_width.png
Normal file
|
After Width: | Height: | Size: 369 B |
BIN
pixmaps/stock_vim_window_split.png
Normal file
|
After Width: | Height: | Size: 246 B |
BIN
pixmaps/stock_vim_window_split_vertical.png
Normal file
|
After Width: | Height: | Size: 196 B |
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
|
||||
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||
" URL: https://github.com/shawncplus/phpcomplete.vim
|
||||
" Last Change: 2015 Jul 03
|
||||
" Last Change: 2015 Jul 13
|
||||
"
|
||||
" OPTIONS:
|
||||
"
|
||||
@@ -318,7 +318,7 @@ function! phpcomplete#CompleteGeneral(base, current_namespace, imports) " {{{
|
||||
\ '^&\?\zs[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\ze')
|
||||
if f_name =~? '^'.substitute(a:base, '\\', '\\\\', 'g')
|
||||
let f_args = matchstr(i,
|
||||
\ '^&\?[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\s*(\zs.\{-}\ze)\_s*\({\|$\)')
|
||||
\ '^&\?[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\s*(\zs.\{-}\ze)\_s*\(;\|{\|$\)')
|
||||
let int_functions[f_name.'('] = f_args.')'
|
||||
endif
|
||||
endfor
|
||||
@@ -646,7 +646,7 @@ function! phpcomplete#CompleteUnknownClass(base, context) " {{{
|
||||
let f_name = matchstr(i,
|
||||
\ '^&\?\zs[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\ze')
|
||||
let f_args = matchstr(i,
|
||||
\ '^&\?[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\s*(\zs.\{-}\ze)\_s*\({\|$\)')
|
||||
\ '^&\?[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\s*(\zs.\{-}\ze)\_s*\(;\|{\|$\)')
|
||||
|
||||
let int_functions[f_name.'('] = f_args.')'
|
||||
endfor
|
||||
@@ -981,7 +981,7 @@ function! phpcomplete#CompleteUserClass(context, base, sccontent, visibility) "
|
||||
let f_name = matchstr(i,
|
||||
\ 'function\s*&\?\zs[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\ze')
|
||||
let f_args = matchstr(i,
|
||||
\ 'function\s*&\?[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\s*(\zs.\{-}\ze)\_s*\({\|\_$\)')
|
||||
\ 'function\s*&\?[a-zA-Z_\x7f-\xff][a-zA-Z_0-9\x7f-\xff]*\s*(\zs.\{-}\ze)\_s*\(;\|{\|\_$\)')
|
||||
if f_name != '' && stridx(f_name, '__') != 0
|
||||
let c_functions[f_name.'('] = f_args
|
||||
if g:phpcomplete_parse_docblock_comments
|
||||
@@ -1379,8 +1379,8 @@ function! phpcomplete#GetCallChainReturnType(classname_candidate, class_candidat
|
||||
" Get Structured information of all classes and subclasses including namespace and includes
|
||||
" try to find the method's return type in docblock comment
|
||||
for classstructure in classcontents
|
||||
let doclock_target_pattern = 'function\s\+&\?'.method.'\|\(public\|private\|protected\|var\).\+\$'.method
|
||||
let doc_str = phpcomplete#GetDocBlock(split(classstructure.content, '\n'), doclock_target_pattern)
|
||||
let docblock_target_pattern = 'function\s\+&\?'.method.'\|\(public\|private\|protected\|var\).\+\$'.method
|
||||
let doc_str = phpcomplete#GetDocBlock(split(classstructure.content, '\n'), docblock_target_pattern)
|
||||
if doc_str != ''
|
||||
break
|
||||
endif
|
||||
@@ -1701,9 +1701,11 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
" try to find the next non-comment or string ";" char
|
||||
let start_col = match(line, '^\s*'.object.'\C\s*=\zs&\?\s\+\(clone\)\?\s*'.variable_name_pattern)
|
||||
let filelines = reverse(copy(lines))
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, [a:start_line - i - 1, start_col])
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, [len(filelines) - i, start_col])
|
||||
let chars_read = 1
|
||||
let last_pos = pos
|
||||
" function_boundary == 0 if we are not in a function
|
||||
let real_lines_offset = len(function_boundary) == 1 ? 1 : function_boundary[0][0]
|
||||
" read while end of the file
|
||||
while char != 'EOF' && chars_read < 1000
|
||||
let last_pos = pos
|
||||
@@ -1711,7 +1713,11 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
let chars_read += 1
|
||||
" we got a candidate
|
||||
if char == ';'
|
||||
let synIDName = synIDattr(synID(pos[0] + 1, pos[1] + 1, 0), 'name')
|
||||
" pos values is relative to the function's lines,
|
||||
" line 0 need to be offsetted with the line number
|
||||
" where te function was started to get the line number
|
||||
" in real buffer terms
|
||||
let synIDName = synIDattr(synID(real_lines_offset + pos[0], pos[1] + 1, 0), 'name')
|
||||
" it's not a comment or string, end search
|
||||
if synIDName !~? 'comment\|string'
|
||||
break
|
||||
@@ -1719,7 +1725,7 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
endif
|
||||
endwhile
|
||||
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(last_pos[0] + 1, last_pos[1], b:phpbegin)
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(real_lines_offset + last_pos[0], last_pos[1], b:phpbegin)
|
||||
if prev_context == ''
|
||||
" cannot get previous context give up
|
||||
return
|
||||
@@ -1739,13 +1745,14 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
|
||||
" assignment for the variable in question with a function on the right hand side
|
||||
if line =~# '^\s*'.object.'\s*=&\?\s*'.function_invocation_pattern
|
||||
|
||||
" try to find the next non-comment or string ";" char
|
||||
let start_col = match(line, '\C^\s*'.object.'\s*=\zs&\?\s*'.function_invocation_pattern)
|
||||
let filelines = reverse(lines)
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, [a:start_line - i - 1, start_col])
|
||||
let filelines = reverse(copy(lines))
|
||||
let [pos, char] = s:getNextCharWithPos(filelines, [len(filelines) - i, start_col])
|
||||
let chars_read = 1
|
||||
let last_pos = pos
|
||||
" function_boundary == 0 if we are not in a function
|
||||
let real_lines_offset = len(function_boundary) == 1 ? 1 : function_boundary[0][0]
|
||||
" read while end of the file
|
||||
while char != 'EOF' && chars_read < 1000
|
||||
let last_pos = pos
|
||||
@@ -1753,7 +1760,11 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
let chars_read += 1
|
||||
" we got a candidate
|
||||
if char == ';'
|
||||
let synIDName = synIDattr(synID(pos[0] + 1, pos[1] + 1, 0), 'name')
|
||||
" pos values is relative to the function's lines,
|
||||
" line 0 need to be offsetted with the line number
|
||||
" where te function was started to get the line number
|
||||
" in real buffer terms
|
||||
let synIDName = synIDattr(synID(real_lines_offset + pos[0], pos[1] + 1, 0), 'name')
|
||||
" it's not a comment or string, end search
|
||||
if synIDName !~? 'comment\|string'
|
||||
break
|
||||
@@ -1761,7 +1772,7 @@ function! phpcomplete#GetClassName(start_line, context, current_namespace, impor
|
||||
endif
|
||||
endwhile
|
||||
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(last_pos[0] + 1, last_pos[1], b:phpbegin)
|
||||
let prev_context = phpcomplete#GetCurrentInstruction(real_lines_offset + last_pos[0], last_pos[1], b:phpbegin)
|
||||
if prev_context == ''
|
||||
" cannot get previous context give up
|
||||
return
|
||||
@@ -1864,6 +1875,9 @@ function! phpcomplete#GetClassLocation(classname, namespace) " {{{
|
||||
if has_key(g:php_builtin_classes, tolower(a:classname)) && (a:namespace == '' || a:namespace == '\')
|
||||
return 'VIMPHP_BUILTINOBJECT'
|
||||
endif
|
||||
if has_key(g:php_builtin_interfaces, tolower(a:classname)) && (a:namespace == '' || a:namespace == '\')
|
||||
return 'VIMPHP_BUILTINOBJECT'
|
||||
endif
|
||||
|
||||
if a:namespace == '' || a:namespace == '\'
|
||||
let search_namespace = '\'
|
||||
@@ -2048,9 +2062,18 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
||||
let content = join(getline(cfline, endline), "\n")
|
||||
" Catch extends
|
||||
if content =~? 'extends'
|
||||
let extends_class = matchstr(content, 'class\_s\+'.a:class_name.'\_s\+extends\_s\+\zs'.class_name_pattern.'\ze')
|
||||
let extends_string = matchstr(content, '\(class\|interface\)\_s\+'.a:class_name.'\_.\+extends\_s\+\zs\('.class_name_pattern.'\(,\|\_s\)*\)\+\ze\(extends\|{\)')
|
||||
let extended_classes = map(split(extends_string, '\(,\|\_s\)\+'), 'substitute(v:val, "\\_s\\+", "", "g")')
|
||||
else
|
||||
let extends_class = ''
|
||||
let extended_classes = ''
|
||||
endif
|
||||
|
||||
" Catch implements
|
||||
if content =~? 'implements'
|
||||
let implements_string = matchstr(content, 'class\_s\+'.a:class_name.'\_.\+implements\_s\+\zs\('.class_name_pattern.'\(,\|\_s\)*\)\+\ze')
|
||||
let implemented_interfaces = map(split(implements_string, '\(,\|\_s\)\+'), 'substitute(v:val, "\\_s\\+", "", "g")')
|
||||
else
|
||||
let implemented_interfaces = []
|
||||
endif
|
||||
call searchpair('{', '', '}', 'W')
|
||||
let class_closing_bracket_line = line('.')
|
||||
@@ -2108,8 +2131,11 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
||||
\ })
|
||||
|
||||
let all_extends = used_traits
|
||||
if extends_class != ''
|
||||
call add(all_extends, extends_class)
|
||||
if len(extended_classes) > 0
|
||||
call extend(all_extends, extended_classes)
|
||||
endif
|
||||
if len(implemented_interfaces) > 0
|
||||
call extend(all_extends, implemented_interfaces)
|
||||
endif
|
||||
if len(all_extends) > 0
|
||||
for class in all_extends
|
||||
@@ -2119,7 +2145,12 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
|
||||
endif
|
||||
let classlocation = phpcomplete#GetClassLocation(class, namespace)
|
||||
if classlocation == "VIMPHP_BUILTINOBJECT"
|
||||
let result += [phpcomplete#GenerateBuiltinClassStub(g:php_builtin_classes[tolower(class)])]
|
||||
if has_key(g:php_builtin_classes, tolower(class))
|
||||
let result += [phpcomplete#GenerateBuiltinClassStub('class', g:php_builtin_classes[tolower(class)])]
|
||||
endif
|
||||
if has_key(g:php_builtin_interfaces, tolower(class))
|
||||
let result += [phpcomplete#GenerateBuiltinClassStub('interface', g:php_builtin_interfaces[tolower(class)])]
|
||||
endif
|
||||
elseif classlocation != '' && filereadable(classlocation)
|
||||
let full_file_path = fnamemodify(classlocation, ':p')
|
||||
let result += phpcomplete#GetClassContentsStructure(full_file_path, readfile(full_file_path), class)
|
||||
@@ -2144,43 +2175,53 @@ function! phpcomplete#GetClassContents(classlocation, class_name) " {{{
|
||||
endfunction
|
||||
" }}}
|
||||
|
||||
function! phpcomplete#GenerateBuiltinClassStub(class_info) " {{{
|
||||
let re = 'class '.a:class_info['name']." {"
|
||||
for [name, initializer] in items(a:class_info.constants)
|
||||
let re .= "\n\tconst ".name." = ".initializer.";"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.properties)
|
||||
let re .= "\n\t// @var $".name." ".info.type
|
||||
let re .= "\n\tpublic $".name.";"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.static_properties)
|
||||
let re .= "\n\t// @var ".name." ".info.type
|
||||
let re .= "\n\tpublic static ".name." = ".info.initializer.";"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.methods)
|
||||
if name =~ '^__'
|
||||
continue
|
||||
endif
|
||||
let re .= "\n\t/**"
|
||||
let re .= "\n\t * ".name
|
||||
let re .= "\n\t *"
|
||||
let re .= "\n\t * @return ".info.return_type
|
||||
let re .= "\n\t */"
|
||||
let re .= "\n\tpublic function ".name."(".info.signature."){"
|
||||
let re .= "\n\t}"
|
||||
endfor
|
||||
for [name, info] in items(a:class_info.static_methods)
|
||||
let re .= "\n\t/**"
|
||||
let re .= "\n\t * ".name
|
||||
let re .= "\n\t *"
|
||||
let re .= "\n\t * @return ".info.return_type
|
||||
let re .= "\n\t */"
|
||||
let re .= "\n\tpublic static function ".name."(".info.signature."){"
|
||||
let re .= "\n\t}"
|
||||
endfor
|
||||
function! phpcomplete#GenerateBuiltinClassStub(type, class_info) " {{{
|
||||
let re = a:type.' '.a:class_info['name']." {"
|
||||
if has_key(a:class_info, 'constants')
|
||||
for [name, initializer] in items(a:class_info.constants)
|
||||
let re .= "\n\tconst ".name." = ".initializer.";"
|
||||
endfor
|
||||
endif
|
||||
if has_key(a:class_info, 'properties')
|
||||
for [name, info] in items(a:class_info.properties)
|
||||
let re .= "\n\t// @var $".name." ".info.type
|
||||
let re .= "\n\tpublic $".name.";"
|
||||
endfor
|
||||
endif
|
||||
if has_key(a:class_info, 'static_properties')
|
||||
for [name, info] in items(a:class_info.static_properties)
|
||||
let re .= "\n\t// @var ".name." ".info.type
|
||||
let re .= "\n\tpublic static ".name." = ".info.initializer.";"
|
||||
endfor
|
||||
endif
|
||||
if has_key(a:class_info, 'methods')
|
||||
for [name, info] in items(a:class_info.methods)
|
||||
if name =~ '^__'
|
||||
continue
|
||||
endif
|
||||
let re .= "\n\t/**"
|
||||
let re .= "\n\t * ".name
|
||||
let re .= "\n\t *"
|
||||
let re .= "\n\t * @return ".info.return_type
|
||||
let re .= "\n\t */"
|
||||
let re .= "\n\tpublic function ".name."(".info.signature."){"
|
||||
let re .= "\n\t}"
|
||||
endfor
|
||||
endif
|
||||
if has_key(a:class_info, 'static_methods')
|
||||
for [name, info] in items(a:class_info.static_methods)
|
||||
let re .= "\n\t/**"
|
||||
let re .= "\n\t * ".name
|
||||
let re .= "\n\t *"
|
||||
let re .= "\n\t * @return ".info.return_type
|
||||
let re .= "\n\t */"
|
||||
let re .= "\n\tpublic static function ".name."(".info.signature."){"
|
||||
let re .= "\n\t}"
|
||||
endfor
|
||||
endif
|
||||
let re .= "\n}"
|
||||
|
||||
return { 'class': a:class_info['name'],
|
||||
return { a:type : a:class_info['name'],
|
||||
\ 'content': re,
|
||||
\ 'namespace': '',
|
||||
\ 'imports': {},
|
||||
@@ -2204,8 +2245,11 @@ function! phpcomplete#GetDocBlock(sccontent, search) " {{{
|
||||
" start backward serch for the comment block
|
||||
while l != 0
|
||||
let line = a:sccontent[l]
|
||||
" if comment end found save line position and end search
|
||||
if line =~? '^\s*\*/'
|
||||
" if it's a one line docblock like comment and we can just return it right away
|
||||
if line =~? '^\s*\/\*\*.\+\*\/\s*$'
|
||||
return substitute(line, '\v^\s*(\/\*\*\s*)|(\s*\*\/)\s*$', '', 'g')
|
||||
"... or if comment end found save line position and end search
|
||||
elseif line =~? '^\s*\*/'
|
||||
let comment_end = l
|
||||
break
|
||||
" ... or the line doesn't blank (only whitespace or nothing) end search
|
||||
@@ -2227,6 +2271,7 @@ function! phpcomplete#GetDocBlock(sccontent, search) " {{{
|
||||
endif
|
||||
let l -= 1
|
||||
endwhile
|
||||
|
||||
" no docblock comment start found
|
||||
if comment_start == -1
|
||||
return ''
|
||||
@@ -2388,7 +2433,15 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
|
||||
break
|
||||
endif
|
||||
let block_end_pos = searchpairpos('{', '', '}\|\%$', 'W', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"')
|
||||
silent! exec block_start_pos[0].','.block_end_pos[0].'d'
|
||||
|
||||
if block_end_pos != [0, 0]
|
||||
" end of the block found, just delete it
|
||||
silent! exec block_start_pos[0].','.block_end_pos[0].'d _'
|
||||
else
|
||||
" block pair not found, use block start as beginning and the end
|
||||
" of the buffer instead
|
||||
silent! exec block_start_pos[0].',$d _'
|
||||
endif
|
||||
endwhile
|
||||
normal! G
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
"python3complete.vim - Omni Completion for python
|
||||
" Maintainer: Aaron Griffin <aaronmgriffin@gmail.com>
|
||||
" Version: 0.9
|
||||
" Last Updated: 18 Jun 2009
|
||||
" Last Updated: 18 Jun 2009 (small fix 2015 Sep 14 from Debian)
|
||||
"
|
||||
" Roland Puntaier: this file contains adaptations for python3 and is parallel to pythoncomplete.vim
|
||||
"
|
||||
@@ -359,6 +359,7 @@ class PyParser:
|
||||
def __init__(self):
|
||||
self.top = Scope('global',0)
|
||||
self.scope = self.top
|
||||
self.parserline = 0
|
||||
|
||||
def _parsedotname(self,pre=None):
|
||||
#returns (dottedname, nexttoken)
|
||||
|
||||
@@ -377,6 +377,7 @@ class PyParser:
|
||||
def __init__(self):
|
||||
self.top = Scope('global',0)
|
||||
self.scope = self.top
|
||||
self.parserline = 0
|
||||
|
||||
def _parsedotname(self,pre=None):
|
||||
#returns (dottedname, nexttoken)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim OMNI completion script for SQL
|
||||
" Language: SQL
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Version: 15.0
|
||||
" Last Change: 2013 May 13
|
||||
" Version: 16.0
|
||||
" Last Change: 2015 Dec 29
|
||||
" Homepage: http://www.vim.org/scripts/script.php?script_id=1572
|
||||
" Usage: For detailed help
|
||||
" ":help sql.txt"
|
||||
@@ -16,6 +16,12 @@
|
||||
" look backwards to a FROM clause and find the first table
|
||||
" and complete it.
|
||||
"
|
||||
" Version 16.0 (Dec 2015)
|
||||
" - NF: If reseting the cache and table, procedure or view completion
|
||||
" had been used via dbext, have dbext delete or recreate the
|
||||
" dictionary so that new objects are picked up for the
|
||||
" next completion.
|
||||
"
|
||||
" Version 15.0 (May 2013)
|
||||
" - NF: Changed the SQL precached syntax items, omni_sql_precache_syntax_groups,
|
||||
" to use regular expressions to pick up extended syntax group names.
|
||||
@@ -103,7 +109,7 @@ endif
|
||||
if exists('g:loaded_sql_completion')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_sql_completion = 150
|
||||
let g:loaded_sql_completion = 160
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -459,6 +465,29 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
let s:tbl_cols = []
|
||||
let s:syn_list = []
|
||||
let s:syn_value = []
|
||||
|
||||
if s:sql_file_table != ""
|
||||
if g:loaded_dbext >= 2300
|
||||
call DB_DictionaryDelete("table")
|
||||
else
|
||||
DBCompleteTables!
|
||||
endif
|
||||
endif
|
||||
if s:sql_file_procedure != ""
|
||||
if g:loaded_dbext >= 2300
|
||||
call DB_DictionaryDelete("procedure")
|
||||
else
|
||||
DBCompleteProcedures!
|
||||
endif
|
||||
endif
|
||||
if s:sql_file_view != ""
|
||||
if g:loaded_dbext >= 2300
|
||||
call DB_DictionaryDelete("view")
|
||||
else
|
||||
DBCompleteViews!
|
||||
endif
|
||||
endif
|
||||
|
||||
let s:sql_file_table = ""
|
||||
let s:sql_file_procedure = ""
|
||||
let s:sql_file_view = ""
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim autoload file for the tohtml plugin.
|
||||
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
|
||||
" Last Change: 2013 Jun 19
|
||||
" Last Change: 2013 Sep 03
|
||||
"
|
||||
" Additional contributors:
|
||||
"
|
||||
@@ -302,7 +302,7 @@ func! tohtml#Convert2HTML(line1, line2) "{{{
|
||||
else "{{{
|
||||
let win_list = []
|
||||
let buf_list = []
|
||||
windo | if &diff | call add(win_list, winbufnr(0)) | endif
|
||||
windo if &diff | call add(win_list, winbufnr(0)) | endif
|
||||
let s:settings.whole_filler = 1
|
||||
let g:html_diff_win_num = 0
|
||||
for window in win_list
|
||||
|
||||
@@ -17,6 +17,7 @@ DOCS = \
|
||||
arabic.txt \
|
||||
autocmd.txt \
|
||||
change.txt \
|
||||
channel.txt \
|
||||
cmdline.txt \
|
||||
debug.txt \
|
||||
debugger.txt \
|
||||
@@ -31,7 +32,6 @@ DOCS = \
|
||||
ft_ada.txt \
|
||||
ft_sql.txt \
|
||||
gui.txt \
|
||||
gui_w16.txt \
|
||||
gui_w32.txt \
|
||||
gui_x11.txt \
|
||||
hangulin.txt \
|
||||
@@ -151,6 +151,7 @@ HTMLS = \
|
||||
arabic.html \
|
||||
autocmd.html \
|
||||
change.html \
|
||||
channel.html \
|
||||
cmdline.html \
|
||||
debug.html \
|
||||
debugger.html \
|
||||
@@ -165,7 +166,6 @@ HTMLS = \
|
||||
ft_ada.html \
|
||||
ft_sql.html \
|
||||
gui.html \
|
||||
gui_w16.html \
|
||||
gui_w32.html \
|
||||
gui_x11.html \
|
||||
hangulin.html \
|
||||
@@ -386,9 +386,6 @@ hebrew.txt:
|
||||
russian.txt:
|
||||
touch russian.txt
|
||||
|
||||
gui_w16.txt:
|
||||
touch gui_w16.txt
|
||||
|
||||
gui_w32.txt:
|
||||
touch gui_w32.txt
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.4. Last change: 2015 Jul 10
|
||||
*autocmd.txt* For Vim version 7.4. Last change: 2016 Mar 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -259,6 +259,7 @@ Name triggered by ~
|
||||
|Syntax| when the 'syntax' option has been set
|
||||
|EncodingChanged| after the 'encoding' option has been changed
|
||||
|TermChanged| after the value of 'term' has changed
|
||||
|OptionSet| after setting any option
|
||||
|
||||
Startup and exit
|
||||
|VimEnter| after doing all the startup stuff
|
||||
@@ -744,6 +745,29 @@ MenuPopup Just before showing the popup menu (under the
|
||||
o Operator-pending
|
||||
i Insert
|
||||
c Command line
|
||||
*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.
|
||||
|
||||
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'
|
||||
options, create the directory if it doesn't
|
||||
exist yet.
|
||||
|
||||
Note: It's a bad idea to reset an option
|
||||
during this autocommand, this may break a
|
||||
plugin. You can always use `:noa` to prevent
|
||||
triggering this autocommand.
|
||||
|
||||
*QuickFixCmdPre*
|
||||
QuickFixCmdPre Before a quickfix command is run (|:make|,
|
||||
|:lmake|, |:grep|, |:lgrep|, |:grepadd|,
|
||||
@@ -894,7 +918,15 @@ VimEnter After doing all the startup stuff, including
|
||||
loading .vimrc files, executing the "-c cmd"
|
||||
arguments, creating all windows and loading
|
||||
the buffers in them.
|
||||
*VimLeave*
|
||||
Just before this event is triggered the
|
||||
|v:vim_did_enter| variable is set, so that you
|
||||
can do: >
|
||||
if v:vim_did_enter
|
||||
call s:init()
|
||||
else
|
||||
au VimEnter * call s:init()
|
||||
endif
|
||||
< *VimLeave*
|
||||
VimLeave Before exiting Vim, just after writing the
|
||||
.viminfo file. Executed only once, like
|
||||
VimLeavePre.
|
||||
@@ -1048,7 +1080,7 @@ Instead of a pattern buffer-local autocommands use one of these forms:
|
||||
Examples: >
|
||||
:au CursorHold <buffer> echo 'hold'
|
||||
:au CursorHold <buffer=33> echo 'hold'
|
||||
:au CursorHold <buffer=abuf> echo 'hold'
|
||||
:au BufNewFile * au CursorHold <buffer=abuf> echo 'hold'
|
||||
|
||||
All the commands for autocommands also work with buffer-local autocommands,
|
||||
simply use the special string instead of the pattern. Examples: >
|
||||
@@ -1107,6 +1139,9 @@ name!
|
||||
:aug[roup] {name} Define the autocmd group name for the
|
||||
following ":autocmd" commands. The name "end"
|
||||
or "END" selects the default group.
|
||||
To avoid confusion, the name should be
|
||||
different from existing {event} names, as this
|
||||
most likely will not do what you intended.
|
||||
|
||||
*:augroup-delete* *E367*
|
||||
:aug[roup]! {name} Delete the autocmd group {name}. Don't use
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 7.4. Last change: 2015 Jun 25
|
||||
*change.txt* For Vim version 7.4. Last change: 2016 Mar 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -98,10 +98,10 @@ These commands delete text. You can repeat them with the `.` command
|
||||
|
||||
An exception for the d{motion} command: If the motion is not linewise, the
|
||||
start and end of the motion are not in the same line, and there are only
|
||||
blanks before the start and after the end of the motion, the delete becomes
|
||||
linewise. This means that the delete also removes the line of blanks that you
|
||||
might expect to remain. Use the |o_v| operator to force the motion to be
|
||||
characterwise.
|
||||
blanks before the start and there are no non-blanks after the end of the
|
||||
motion, the delete becomes linewise. This means that the delete also removes
|
||||
the line of blanks that you might expect to remain. Use the |o_v| operator to
|
||||
force the motion to be characterwise.
|
||||
|
||||
Trying to delete an empty region of text (e.g., "d0" in the first column)
|
||||
is an error when 'cpoptions' includes the 'E' flag.
|
||||
@@ -109,7 +109,9 @@ is an error when 'cpoptions' includes the 'E' flag.
|
||||
*J*
|
||||
J Join [count] lines, with a minimum of two lines.
|
||||
Remove the indent and insert up to two spaces (see
|
||||
below).
|
||||
below). Fails when on the last line of the buffer.
|
||||
If [count] is too big it is reduce to the number of
|
||||
lines available.
|
||||
|
||||
*v_J*
|
||||
{Visual}J Join the highlighted lines, with a minimum of two
|
||||
@@ -409,6 +411,11 @@ CTRL-X Subtract [count] from the number or alphabetic
|
||||
{Visual}CTRL-X Subtract [count] from the number or alphabetic
|
||||
character in the highlighted text. {not in Vi}
|
||||
|
||||
On MS-Windows, this is mapped to cut Visual text
|
||||
|dos-standard-mappings|. If you want to disable the
|
||||
mapping, use this: >
|
||||
silent! vunmap <C-X>
|
||||
<
|
||||
*v_g_CTRL-X*
|
||||
{Visual}g CTRL-X Subtract [count] from the number or alphabetic
|
||||
character in the highlighted text. If several lines
|
||||
@@ -416,9 +423,14 @@ CTRL-X Subtract [count] from the number or alphabetic
|
||||
additional [count] (so effectively creating a [count]
|
||||
decrementing sequence). {not in Vi}
|
||||
|
||||
The CTRL-A and CTRL-X commands work for (signed) decimal numbers, unsigned
|
||||
octal and hexadecimal numbers and alphabetic characters. This depends on the
|
||||
'nrformats' option.
|
||||
The CTRL-A and CTRL-X commands can work for:
|
||||
- signed and unsigned decimal numbers
|
||||
- unsigned binary, octal and hexadecimal numbers
|
||||
- alphabetic characters
|
||||
|
||||
This depends on the 'nrformats' option:
|
||||
- When 'nrformats' includes "bin", Vim assumes numbers starting with '0b' or
|
||||
'0B' are binary.
|
||||
- When 'nrformats' includes "octal", Vim considers numbers starting with a '0'
|
||||
to be octal, unless the number includes a '8' or '9'. Other numbers are
|
||||
decimal and may have a preceding minus sign.
|
||||
@@ -433,8 +445,8 @@ octal and hexadecimal numbers and alphabetic characters. This depends on the
|
||||
index.
|
||||
|
||||
For decimals a leading negative sign is considered for incrementing/
|
||||
decrementing, for octal and hex values, it won't be considered.
|
||||
To ignore the sign Visually select the number before using CTRL-A or CTRL-X.
|
||||
decrementing, for binary, octal and hex values, it won't be considered. To
|
||||
ignore the sign Visually select the number before using CTRL-A or CTRL-X.
|
||||
|
||||
For numbers with leading zeros (including all octal and hexadecimal numbers),
|
||||
Vim preserves the number of characters in the number when possible. CTRL-A on
|
||||
@@ -447,6 +459,10 @@ octal number.
|
||||
Note that when 'nrformats' includes "octal", decimal numbers with leading
|
||||
zeros cause mistakes, because they can be confused with octal numbers.
|
||||
|
||||
Note similarly, when 'nrformats' includes "bin", binary numbers with a leading
|
||||
'0x' or '0X' can be interpreted as hexadecimal rather than binary since '0b'
|
||||
are valid hexadecimal digits.
|
||||
|
||||
The CTRL-A command is very useful in a macro. Example: Use the following
|
||||
steps to make a numbered list.
|
||||
|
||||
@@ -634,9 +650,9 @@ For other systems the tmpnam() library function is used.
|
||||
may add [flags], see |:s_flags|.
|
||||
Note that after `:substitute` the '&' flag can't be
|
||||
used, it's recognized as a pattern separator.
|
||||
The space between `:substitute` and the 'c', 'g' and
|
||||
'r' flags isn't required, but in scripts it's a good
|
||||
idea to keep it to avoid confusion.
|
||||
The space between `:substitute` and the 'c', 'g',
|
||||
'i', 'I' and 'r' flags isn't required, but in scripts
|
||||
it's a good idea to keep it to avoid confusion.
|
||||
|
||||
:[range]~[&][flags] [count] *:~*
|
||||
Repeat last substitute with same substitute string
|
||||
@@ -863,6 +879,36 @@ either the first or second pattern in parentheses did not match, so either
|
||||
:s/\([ab]\)\|\([cd]\)/\1x/g modifies "a b c d" to "ax bx x x"
|
||||
<
|
||||
|
||||
*:sc* *:sce* *:scg* *:sci* *:scI* *:scl* *:scp* *:sg* *:sgc*
|
||||
*:sge* *:sgi* *:sgI* *:sgl* *:sgn* *:sgp* *:sgr* *:sI* *:si*
|
||||
*:sic* *:sIc* *:sie* *:sIe* *:sIg* *:sIl* *:sin* *:sIn* *:sIp*
|
||||
*:sip* *:sIr* *:sir* *:sr* *:src* *:srg* *:sri* *:srI* *:srl*
|
||||
*:srn* *:srp*
|
||||
2-letter and 3-letter :substitute commands ~
|
||||
|
||||
List of :substitute commands
|
||||
| c e g i I n p l r
|
||||
| c :sc :sce :scg :sci :scI :scn :scp :scl ---
|
||||
| e
|
||||
| g :sgc :sge :sg :sgi :sgI :sgn :sgp :sgl :sgr
|
||||
| i :sic :sie --- :si :siI :sin :sip --- :sir
|
||||
| I :sIc :sIe :sIg :sIi :sI :sIn :sIp :sIl :sIr
|
||||
| n
|
||||
| p
|
||||
| l
|
||||
| r :src --- :srg :sri :srI :srn :srp :srl :sr
|
||||
|
||||
Exceptions:
|
||||
:scr is `:scriptnames`
|
||||
:se is `:set`
|
||||
:sig is `:sign`
|
||||
:sil is `:silent`
|
||||
:sn is `:snext`
|
||||
:sp is `:split`
|
||||
:sl is `:sleep`
|
||||
:sre is `:srewind`
|
||||
|
||||
|
||||
Substitute with an expression *sub-replace-expression*
|
||||
*sub-replace-\=* *s/\=*
|
||||
When the substitute string starts with "\=" the remainder is interpreted as an
|
||||
@@ -938,8 +984,6 @@ This replaces each 'E' character with a euro sign. Read more in |<Char->|.
|
||||
`:retab!` may also change a sequence of spaces by
|
||||
<Tab> characters, which can mess up a printf().
|
||||
{not in Vi}
|
||||
Not available when |+ex_extra| feature was disabled at
|
||||
compile time.
|
||||
|
||||
*retab-example*
|
||||
Example for using autocommands and ":retab" to edit a file which is stored
|
||||
@@ -968,7 +1012,7 @@ inside of strings can change! Also see 'softtabstop' option. >
|
||||
|
||||
:reg[isters] {arg} Display the contents of the numbered and named
|
||||
registers that are mentioned in {arg}. For example: >
|
||||
:dis 1a
|
||||
:reg 1a
|
||||
< to display registers '1' and 'a'. Spaces are allowed
|
||||
in {arg}. {not in Vi}
|
||||
|
||||
@@ -1135,7 +1179,7 @@ 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 nine types of registers: *registers* *E354*
|
||||
There are ten types of registers: *registers* *E354*
|
||||
1. The unnamed register ""
|
||||
2. 10 numbered registers "0 to "9
|
||||
3. The small delete register "-
|
||||
@@ -1315,22 +1359,16 @@ The next three commands always work on whole lines.
|
||||
Center lines in [range] between [width] columns
|
||||
(default 'textwidth' or 80 when 'textwidth' is 0).
|
||||
{not in Vi}
|
||||
Not available when |+ex_extra| feature was disabled at
|
||||
compile time.
|
||||
|
||||
:[range]ri[ght] [width] *:ri* *:right*
|
||||
Right-align lines in [range] at [width] columns
|
||||
(default 'textwidth' or 80 when 'textwidth' is 0).
|
||||
{not in Vi}
|
||||
Not available when |+ex_extra| feature was disabled at
|
||||
compile time.
|
||||
|
||||
*:le* *:left*
|
||||
:[range]le[ft] [indent]
|
||||
Left-align lines in [range]. Sets the indent in the
|
||||
lines to [indent] (default 0). {not in Vi}
|
||||
Not available when |+ex_extra| feature was disabled at
|
||||
compile time.
|
||||
|
||||
*gq*
|
||||
gq{motion} Format the lines that {motion} moves over.
|
||||
@@ -1706,7 +1744,7 @@ Vim has a sorting function and a sorting command. The sorting function can be
|
||||
found here: |sort()|, |uniq()|.
|
||||
|
||||
*:sor* *:sort*
|
||||
:[range]sor[t][!] [i][u][r][n][x][o] [/{pattern}/]
|
||||
:[range]sor[t][!] [b][f][i][n][o][r][u][x] [/{pattern}/]
|
||||
Sort lines in [range]. When no range is given all
|
||||
lines are sorted.
|
||||
|
||||
@@ -1714,10 +1752,18 @@ found here: |sort()|, |uniq()|.
|
||||
|
||||
With [i] case is ignored.
|
||||
|
||||
Options [n][f][x][o][b] are mutually exclusive.
|
||||
|
||||
With [n] sorting is done on the first decimal number
|
||||
in the line (after or inside a {pattern} match).
|
||||
One leading '-' is included in the number.
|
||||
|
||||
With [f] sorting is done on the Float in the line.
|
||||
The value of Float is determined similar to passing
|
||||
the text (after or inside a {pattern} match) to
|
||||
str2float() function. This option is available only
|
||||
if Vim was compiled with Floating point support.
|
||||
|
||||
With [x] sorting is done on the first hexadecimal
|
||||
number in the line (after or inside a {pattern}
|
||||
match). A leading "0x" or "0X" is ignored.
|
||||
@@ -1726,10 +1772,13 @@ found here: |sort()|, |uniq()|.
|
||||
With [o] sorting is done on the first octal number in
|
||||
the line (after or inside a {pattern} match).
|
||||
|
||||
With [u] only keep the first of a sequence of
|
||||
identical lines (ignoring case when [i] is used).
|
||||
Without this flag, a sequence of identical lines
|
||||
will be kept in their original order.
|
||||
With [b] sorting is done on the first binary number in
|
||||
the line (after or inside a {pattern} match).
|
||||
|
||||
With [u] (u stands for unique) only keep the first of
|
||||
a sequence of identical lines (ignoring case when [i]
|
||||
is used). Without this flag, a sequence of identical
|
||||
lines will be kept in their original order.
|
||||
Note that leading and trailing white space may cause
|
||||
lines to be different.
|
||||
|
||||
|
||||
672
runtime/doc/channel.txt
Normal file
@@ -0,0 +1,672 @@
|
||||
*channel.txt* For Vim version 7.4. Last change: 2016 Mar 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
Inter-process communication *channel*
|
||||
|
||||
DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT
|
||||
|
||||
Vim uses channels to communicate with other processes.
|
||||
A channel uses a socket or pipes *socket-interface*
|
||||
Jobs can be used to start processes and communicate with them.
|
||||
|
||||
Vim current supports up to 10 simultaneous channels.
|
||||
The Netbeans interface also uses a channel. |netbeans|
|
||||
|
||||
1. Overview |job-channel-overview|
|
||||
2. Channel demo |channel-demo|
|
||||
3. Opening a channel |channel-open|
|
||||
4. Using a JSON or JS channel |channel-use|
|
||||
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|
|
||||
|
||||
{Vi does not have any of these features}
|
||||
{only when compiled with the |+channel| feature for channel stuff}
|
||||
{only when compiled with the |+job| feature for job stuff}
|
||||
|
||||
==============================================================================
|
||||
1. Overview *job-channel-overview*
|
||||
|
||||
There are four main types of jobs:
|
||||
1. A deamon, serving several Vim instances.
|
||||
Vim connects to it with a socket.
|
||||
2. One job working with one Vim instance, asynchronously.
|
||||
Uses a socket or pipes.
|
||||
3. A job performing some work for a short time, asynchronously.
|
||||
Uses a socket or pipes.
|
||||
4. Running a filter, synchronously.
|
||||
Uses pipes.
|
||||
|
||||
For when using sockets See |job-start|, |job-start-nochannel| and
|
||||
|channel-open|. For 2 and 3, one or more jobs using pipes, see |job-start|.
|
||||
For 4 use the ":{range}!cmd" command, see |filter|.
|
||||
|
||||
Over the socket and pipes these protocols are available:
|
||||
RAW nothing known, Vim cannot tell where a message ends
|
||||
NL every message ends in a NL (newline) character
|
||||
JSON JSON encoding |json_encode()|
|
||||
JS JavaScript style JSON-like encoding |js_encode()|
|
||||
|
||||
Common combination are:
|
||||
- Using a job connected through pipes in NL mode. E.g., to run a style
|
||||
checker and receive errors and warnings.
|
||||
- Using a deamon, connecting over a socket in JSON mode. E.g. to lookup
|
||||
crosss-refrences in a database.
|
||||
|
||||
==============================================================================
|
||||
2. Channel demo *channel-demo*
|
||||
|
||||
This requires Python. The demo program can be found in
|
||||
$VIMRUNTIME/tools/demoserver.py
|
||||
Run it in one terminal. We will call this T1.
|
||||
|
||||
Run Vim in another terminal. Connect to the demo server with: >
|
||||
let channel = ch_open('localhost:8765')
|
||||
|
||||
In T1 you should see:
|
||||
=== socket opened === ~
|
||||
|
||||
You can now send a message to the server: >
|
||||
echo ch_evalexpr(channel, 'hello!')
|
||||
|
||||
The message is received in T1 and a response is sent back to Vim.
|
||||
You can see the raw messages in T1. What Vim sends is:
|
||||
[1,"hello!"] ~
|
||||
And the response is:
|
||||
[1,"got it"] ~
|
||||
The number will increase every time you send a message.
|
||||
|
||||
The server can send a command to Vim. Type this on T1 (literally, including
|
||||
the quotes):
|
||||
["ex","echo 'hi there'"] ~
|
||||
And you should see the message in Vim. You can move the cursor a word forward:
|
||||
["normal","w"] ~
|
||||
|
||||
To handle asynchronous communication a callback needs to be used: >
|
||||
func MyHandler(channel, msg)
|
||||
echo "from the handler: " . a:msg
|
||||
endfunc
|
||||
call ch_sendexpr(channel, 'hello!', {'callback': "MyHandler"})
|
||||
Vim will not wait for a response. Now the server can send the response later
|
||||
and MyHandler will be invoked.
|
||||
|
||||
Instead of giving a callback with every send call, it can also be specified
|
||||
when opening the channel: >
|
||||
call ch_close(channel)
|
||||
let channel = ch_open('localhost:8765', {'callback': "MyHandler"})
|
||||
call ch_sendexpr(channel, 'hello!')
|
||||
|
||||
When trying out channels it's useful to see what is going on. You can tell
|
||||
Vim to write lines in log file: >
|
||||
call ch_logfile('channellog', 'w')
|
||||
See |ch_logfile()|.
|
||||
|
||||
==============================================================================
|
||||
3. Opening a channel *channel-open*
|
||||
|
||||
To open a channel: >
|
||||
let channel = ch_open({address} [, {options}])
|
||||
if ch_status(channel) == "open"
|
||||
" use the channel
|
||||
|
||||
Use |ch_status()| to see if the channel could be opened.
|
||||
|
||||
{address} has the form "hostname:port". E.g., "localhost:8765".
|
||||
|
||||
{options} is a dictionary with optional entries: *channel-open-options*
|
||||
|
||||
"mode" can be: *channel-mode*
|
||||
"json" - Use JSON, see below; most convenient way. Default.
|
||||
"js" - Use JS (JavaScript) encoding, more efficient than JSON.
|
||||
"nl" - Use messages that end in a NL character
|
||||
"raw" - Use raw messages
|
||||
*channel-callback* *E921*
|
||||
"callback" A function that is called when a message is received that is
|
||||
not handled otherwise. It gets two arguments: the channel
|
||||
and the received message. Example: >
|
||||
func Handle(channel, msg)
|
||||
echo 'Received: ' . a:msg
|
||||
endfunc
|
||||
let channel = ch_open("localhost:8765", {"callback": "Handle"})
|
||||
<
|
||||
When "mode" is "json" or "js" the "msg" argument is the body
|
||||
of the received message, converted to Vim types.
|
||||
When "mode" is "nl" the "msg" argument is one message,
|
||||
excluding the NL.
|
||||
When "mode" is "raw" the "msg" argument is the whole message
|
||||
as a string.
|
||||
|
||||
For all callbacks: Use |function()| to bind it to arguments
|
||||
and/or a Dictionary. Or use the form "dict.function" to bind
|
||||
the Dictionary.
|
||||
*close_cb*
|
||||
"close_cb" A function that is called when the channel gets closed, other
|
||||
than by calling ch_close(). It should be defined like this: >
|
||||
func MyCloseHandler(channel)
|
||||
< *waittime*
|
||||
"waittime" The time to wait for the connection to be made in
|
||||
milliseconds. A negative number waits forever.
|
||||
|
||||
The default is zero, don't wait, which is useful if a local
|
||||
server is supposed to be running already. On Unix Vim
|
||||
actually uses a 1 msec timeout, that is required on many
|
||||
systems. Use a larger value for a remote server, e.g. 10
|
||||
msec at least.
|
||||
*channel-timeout*
|
||||
"timeout" The time to wait for a request when blocking, E.g. when using
|
||||
ch_evalexpr(). In milliseconds. The default is 2000 (2
|
||||
seconds).
|
||||
|
||||
When "mode" is "json" or "js" the "callback" is optional. When omitted it is
|
||||
only possible to receive a message after sending one.
|
||||
|
||||
To change the channel options after opening it use |ch_setoptions()|. The
|
||||
arguments are similar to what is passed to |ch_open()|, but "waittime" cannot
|
||||
be given, since that only applies to opening the channel.
|
||||
|
||||
For example, the handler can be added or changed: >
|
||||
call ch_setoptions(channel, {'callback': callback})
|
||||
When "callback" is empty (zero or an empty string) the handler is removed.
|
||||
|
||||
After a callback has been invoked Vim will update the screen and put the
|
||||
cursor back where it belongs. Thus the callback should not need to do
|
||||
`:redraw`.
|
||||
|
||||
The timeout can be changed: >
|
||||
call ch_setoptions(channel, {'timeout': msec})
|
||||
<
|
||||
*channel-close* *E906*
|
||||
Once done with the channel, disconnect it like this: >
|
||||
call ch_close(channel)
|
||||
When a socket is used this will close the socket for both directions. When
|
||||
pipes are used (stdin/stdout/stderr) they are all closed. This might not be
|
||||
what you want! Stopping the job with job_stop() might be better.
|
||||
All readahead is discarded, callbacks will no longer be invoked.
|
||||
|
||||
Note that a channel is closed in three stages:
|
||||
- The I/O ends, log message: "Closing channel". There can still be queued
|
||||
messages to read or callbacks to invoke.
|
||||
- The readahead is cleared, log message: "Clearing channel". Some variables
|
||||
may still reference the channel.
|
||||
- The channel is freed, log message: "Freeing channel".
|
||||
|
||||
When the channel can't be opened you will get an error message. There is a
|
||||
difference between MS-Windows and Unix: On Unix when the port doesn't exist
|
||||
ch_open() fails quickly. On MS-Windows "waittime" applies.
|
||||
*E898* *E899* *E900* *E901* *E902*
|
||||
|
||||
If there is an error reading or writing a channel it will be closed.
|
||||
*E896* *E630* *E631*
|
||||
|
||||
==============================================================================
|
||||
4. Using a JSON or JS channel *channel-use*
|
||||
|
||||
If mode is JSON then a message can be sent synchronously like this: >
|
||||
let response = ch_evalexpr(channel, {expr})
|
||||
This awaits a response from the other side.
|
||||
|
||||
When mode is JS this works the same, except that the messages use
|
||||
JavaScript encoding. See |js_encode()| for the difference.
|
||||
|
||||
To send a message, without handling a response or letting the channel callback
|
||||
handle the response: >
|
||||
call ch_sendexpr(channel, {expr})
|
||||
|
||||
To send a message and letting the response handled by a specific function,
|
||||
asynchronously: >
|
||||
call ch_sendexpr(channel, {expr}, {'callback': Handler})
|
||||
|
||||
Vim will match the response with the request using the message ID. Once the
|
||||
response is received the callback will be invoked. Further responses with the
|
||||
same ID will be ignored. If your server sends back multiple responses you
|
||||
need to send them with ID zero, they will be passed to the channel callback.
|
||||
|
||||
The {expr} is converted to JSON and wrapped in an array. An example of the
|
||||
message that the receiver will get when {expr} is the string "hello":
|
||||
[12,"hello"] ~
|
||||
|
||||
The format of the JSON sent is:
|
||||
[{number},{expr}]
|
||||
|
||||
In which {number} is different every time. It must be used in the response
|
||||
(if any):
|
||||
|
||||
[{number},{response}]
|
||||
|
||||
This way Vim knows which sent message matches with which received message and
|
||||
can call the right handler. Also when the messages arrive out of order.
|
||||
|
||||
The sender must always send valid JSON to Vim. Vim can check for the end of
|
||||
the message by parsing the JSON. It will only accept the message if the end
|
||||
was received.
|
||||
|
||||
When the process wants to send a message to Vim without first receiving a
|
||||
message, it must use the number zero:
|
||||
[0,{response}]
|
||||
|
||||
Then channel handler will then get {response} converted to Vim types. If the
|
||||
channel does not have a handler the message is dropped.
|
||||
|
||||
On read error or ch_close(), when using a socket with RAW or NL mode, the
|
||||
string "DETACH\n" is sent, if still possible. The channel will then be
|
||||
inactive.
|
||||
|
||||
It is also possible to use ch_sendraw() and ch_evalraw() on a JSON or JS
|
||||
channel. The caller is then completely responsible for correct encoding and
|
||||
decoding.
|
||||
|
||||
==============================================================================
|
||||
5. Channel commands *channel-commands*
|
||||
|
||||
With a JSON channel the process can send commands to Vim that will be
|
||||
handled by Vim internally, it does not require a handler for the channel.
|
||||
|
||||
Possible commands are: *E903* *E904* *E905*
|
||||
["redraw" {forced}]
|
||||
["ex", {Ex command}]
|
||||
["normal", {Normal mode command}]
|
||||
["expr", {expression}, {number}]
|
||||
["expr", {expression}]
|
||||
["call", {func name}, {argument list}, {number}]
|
||||
["call", {func name}, {argument list}]
|
||||
|
||||
With all of these: Be careful what these commands do! You can easily
|
||||
interfere with what the user is doing. To avoid trouble use |mode()| to check
|
||||
that the editor is in the expected state. E.g., to send keys that must be
|
||||
inserted as text, not executed as a command:
|
||||
["ex","if mode() == 'i' | call feedkeys('ClassName') | endif"] ~
|
||||
|
||||
Errors in these commands are normally not reported to avoid them messing up
|
||||
the display. If you do want to see them, set the 'verbose' option to 3 or
|
||||
higher.
|
||||
|
||||
|
||||
Command "redraw" ~
|
||||
|
||||
The other commands do not update the screen, so that you can send a sequence
|
||||
of commands without the cursor moving around. You must end with the "redraw"
|
||||
command to show any changed text and show the cursor where it belongs.
|
||||
|
||||
The argument is normally an empty string:
|
||||
["redraw", ""] ~
|
||||
To first clear the screen pass "force":
|
||||
["redraw", "force"] ~
|
||||
|
||||
|
||||
Command "ex" ~
|
||||
|
||||
The "ex" command is executed as any Ex command. There is no response for
|
||||
completion or error. You could use functions in an |autoload| script:
|
||||
["ex","call myscript#MyFunc(arg)"]
|
||||
|
||||
You can also use "call |feedkeys()|" to insert any key sequence.
|
||||
|
||||
When there is an error a message is written to the channel log, if it exists,
|
||||
and v:errmsg is set to the error.
|
||||
|
||||
|
||||
Command "normal" ~
|
||||
|
||||
The "normal" command is executed like with ":normal!", commands are not
|
||||
mapped. Example to open the folds under the cursor:
|
||||
["normal" "zO"]
|
||||
|
||||
|
||||
Command "expr" with response ~
|
||||
|
||||
The "expr" command can be used to get the result of an expression. For
|
||||
example, to get the number of lines in the current buffer:
|
||||
["expr","line('$')", -2] ~
|
||||
|
||||
It will send back the result of the expression:
|
||||
[-2, "last line"] ~
|
||||
The format is:
|
||||
[{number}, {result}]
|
||||
|
||||
Here {number} is the same as what was in the request. Use a negative number
|
||||
to avoid confusion with message that Vim sends. Use a different number on
|
||||
every request to be able to match the request with the response.
|
||||
|
||||
{result} is the result of the evaluation and is JSON encoded. If the
|
||||
evaluation fails or the result can't be encoded in JSON it is the string
|
||||
"ERROR".
|
||||
|
||||
|
||||
Command "expr" without a response ~
|
||||
|
||||
This command is similar to "expr" above, but does not send back any response.
|
||||
Example:
|
||||
["expr","setline('$', ['one', 'two', 'three'])"] ~
|
||||
There is no third argument in the request.
|
||||
|
||||
|
||||
Command "call" ~
|
||||
|
||||
This is similar to "expr", but instead of passing the whole expression as a
|
||||
string this passes the name of a function and a list of arguments. This
|
||||
avoids the conversion of the arguments to a string and escaping and
|
||||
concatenating them. Example:
|
||||
["call", "line", ["$"], -2] ~
|
||||
|
||||
Leave out the fourth argument if no response is to be sent:
|
||||
["call", "setline", ["$", ["one", "two", "three"]]] ~
|
||||
|
||||
==============================================================================
|
||||
6. Using a RAW or NL channel *channel-raw*
|
||||
|
||||
If mode is RAW or NL then a message can be send like this: >
|
||||
let response = ch_evalraw(channel, {string})
|
||||
|
||||
The {string} is sent as-is. The response will be what can be read from the
|
||||
channel right away. Since Vim doesn't know how to recognize the end of the
|
||||
message you need to take care of it yourself. The timeout applies for reading
|
||||
the first byte, after that it will not wait for anything more.
|
||||
|
||||
If mode is "nl" you can send a message in a similar way. You are expected
|
||||
to put in the NL after each message. Thus you can also send several messages
|
||||
ending in a NL at once. The response will be the text up to and including the
|
||||
first NL. This can also be just the NL for an empty response.
|
||||
If no NL was read before the channel timeout an empty string is returned.
|
||||
|
||||
To send a message, without expecting a response: >
|
||||
call ch_sendraw(channel, {string})
|
||||
The process can send back a response, the channel handler will be called with
|
||||
it.
|
||||
|
||||
To send a message and letting the response handled by a specific function,
|
||||
asynchronously: >
|
||||
call ch_sendraw(channel, {string}, {'callback': 'MyHandler'})
|
||||
|
||||
This {string} can also be JSON, use |json_encode()| to create it and
|
||||
|json_decode()| to handle a received JSON message.
|
||||
|
||||
It is not possible to use |ch_evalexpr()| or |ch_sendexpr()| on a raw channel.
|
||||
|
||||
==============================================================================
|
||||
7. More channel functions *channel-more*
|
||||
|
||||
To obtain the status of a channel: ch_status(channel). The possible results
|
||||
are:
|
||||
"fail" Failed to open the channel.
|
||||
"open" The channel can be used.
|
||||
"closed" The channel was closed.
|
||||
|
||||
To obtain the job associated with a channel: ch_getjob(channel)
|
||||
|
||||
To read one message from a channel: >
|
||||
let output = ch_read(channel)
|
||||
This uses the channel timeout. To read without a timeout, just get any
|
||||
message that is available: >
|
||||
let output = ch_read(channel, {'timeout': 0})
|
||||
When no message was available then the result is v:none for a JSON or JS mode
|
||||
channels, an empty string for a RAW or NL channel.
|
||||
|
||||
To read all output from a RAW channel that is available: >
|
||||
let output = ch_readraw(channel)
|
||||
To read the error output: >
|
||||
let output = ch_readraw(channel, {"part": "err"})
|
||||
|
||||
ch_read() and ch_readraw() use the channel timeout. When there is nothing to
|
||||
read within that time an empty string is returned. To specify a different
|
||||
timeout in msec use the "timeout" option:
|
||||
{"timeout": 123} ~
|
||||
To read from the error output use the "part" option:
|
||||
{"part": "err"} ~
|
||||
To read a message with a specific ID, on a JS or JSON channel:
|
||||
{"id": 99} ~
|
||||
When no ID is specified or the ID is -1, the first message is returned. This
|
||||
overrules any callback waiting for this message.
|
||||
|
||||
For a RAW channel this returns whatever is available, since Vim does not know
|
||||
where a message ends.
|
||||
For a NL channel this returns one message.
|
||||
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*
|
||||
|
||||
To start a job and open a channel for stdin/stdout/stderr: >
|
||||
let job = job_start(command, {options})
|
||||
|
||||
You can get the channel with: >
|
||||
let channel = job_getchannel(job)
|
||||
|
||||
The channel will use NL mode. If you want another mode it's best to specify
|
||||
this in {options}. When changing the mode later some text may have already
|
||||
been received and not parsed correctly.
|
||||
|
||||
If the command produces a line of output that you want to deal with, specify
|
||||
a handler for stdout: >
|
||||
let job = job_start(command, {"out_cb": "MyHandler"})
|
||||
The function will be called with the channel and a message. You would define
|
||||
it like this: >
|
||||
func MyHandler(channel, msg)
|
||||
|
||||
Without the handler you need to read the output with |ch_read()| or
|
||||
|ch_readraw()|.
|
||||
|
||||
The handler defined for "out_cb" will not receive stderr. If you want to
|
||||
handle that separately, add an "err_cb" handler: >
|
||||
let job = job_start(command, {"out_cb": "MyHandler",
|
||||
\ "err_cb": "ErrHandler"})
|
||||
|
||||
If you want to handle both stderr and stdout with one handler use the
|
||||
"callback" option: >
|
||||
let job = job_start(command, {"callback": "MyHandler"})
|
||||
|
||||
You can send a message to the command with ch_evalraw(). If the channel is in
|
||||
JSON or JS mode you can use ch_evalexpr().
|
||||
|
||||
There are several options you can use, see |job-options|.
|
||||
For example, to start a job and write its output in buffer "dummy": >
|
||||
let logjob = job_start("tail -f /tmp/log",
|
||||
\ {'out_io': 'buffer', 'out_name': 'dummy'})
|
||||
sbuf dummy
|
||||
|
||||
|
||||
Job input from a buffer ~
|
||||
|
||||
To run a job that reads from a buffer: >
|
||||
let job = job_start({command},
|
||||
\ {'in_io': 'buffer', 'in_name': 'mybuffer'})
|
||||
<
|
||||
*E915* *E918*
|
||||
The buffer is found by name, similar to |bufnr()|. The buffer must exist and
|
||||
be loaded when job_start() is called.
|
||||
|
||||
By default this reads the whole buffer. This can be changed with the "in_top"
|
||||
and "in_bot" options.
|
||||
|
||||
A special mode is when "in_top" is set to zero and "in_bot" is not set: Every
|
||||
time a line is added to the buffer, the last-but-one line will be send to the
|
||||
job stdin. This allows for editing the last line and sending it when pressing
|
||||
Enter.
|
||||
|
||||
==============================================================================
|
||||
9. Starting a job without a channel *job-start-nochannel*
|
||||
|
||||
To start another process without creating a channel: >
|
||||
let job = job_start(command,
|
||||
\ {"in_io": "null", "out_io": "null", "err_io": "null"})
|
||||
|
||||
This starts {command} in the background, Vim does not wait for it to finish.
|
||||
|
||||
When Vim sees that neither stdin, stdout or stderr are connected, no channel
|
||||
will be created. Often you will want to include redirection in the command to
|
||||
avoid it getting stuck.
|
||||
|
||||
There are several options you can use, see |job-options|.
|
||||
|
||||
*job-start-if-needed*
|
||||
To start a job only when connecting to an address does not work, do something
|
||||
like this: >
|
||||
let channel = ch_open(address, {"waittime": 0})
|
||||
if ch_status(channel) == "fail"
|
||||
let job = job_start(command)
|
||||
let channel = ch_open(address, {"waittime": 1000})
|
||||
endif
|
||||
|
||||
Note that the waittime for ch_open() gives the job one second to make the port
|
||||
available.
|
||||
|
||||
==============================================================================
|
||||
10. 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
|
||||
job_setoptions(job, {options}). Many options can be used with the channel
|
||||
related to the job, using ch_setoptions(channel, {options}).
|
||||
See |job_setoptions()| and |ch_setoptions()|.
|
||||
|
||||
*in_mode* *out_mode* *err_mode*
|
||||
"in_mode" mode specifically for stdin, only when using pipes
|
||||
"out_mode" mode specifically for stdout, only when using pipes
|
||||
"err_mode" mode specifically for stderr, only when using pipes
|
||||
See |channel-mode| for the values.
|
||||
|
||||
Note: when setting "mode" the part specific mode is
|
||||
overwritten. Therefore set "mode" first and the part
|
||||
specific mode later.
|
||||
|
||||
Note: when writing to a file or buffer and when
|
||||
reading from a buffer NL mode is used by default.
|
||||
|
||||
*job-callback*
|
||||
"callback": handler Callback for something to read on any part of the
|
||||
channel.
|
||||
*job-out_cb* *out_cb*
|
||||
"out_cb": handler Callback for when there is something to read on
|
||||
stdout. Only for when the channel uses pipes. When
|
||||
"out_cb" wasn't set the channel callback is used.
|
||||
|
||||
*job-err_cb* *err_cb*
|
||||
"err_cb": handler Callback for when there is something to read on
|
||||
stderr. Only for when the channel uses pipes. When
|
||||
"err_cb" wasn't set the channel callback is used.
|
||||
*job-close_cb*
|
||||
"close_cb": handler Callback for when the channel is closed. Same as
|
||||
"close_cb" on ch_open().
|
||||
*job-exit_cb*
|
||||
"exit_cb": handler Callback for when the job ends. The arguments are the
|
||||
job and the exit status.
|
||||
Vim checks about every 10 seconds for jobs that ended.
|
||||
The callback can also be triggered by calling
|
||||
|job_status()|.
|
||||
*job-timeout*
|
||||
"timeout" The time to wait for a request when blocking, E.g.
|
||||
when using ch_evalexpr(). In milliseconds. The
|
||||
default is 2000 (2 seconds).
|
||||
*out_timeout* *err_timeout*
|
||||
"out_timeout" Timeout for stdout. Only when using pipes.
|
||||
"err_timeout" Timeout for stderr. Only when using pipes.
|
||||
Note: when setting "timeout" the part specific mode is
|
||||
overwritten. Therefore set "timeout" first and the
|
||||
part specific mode later.
|
||||
|
||||
*job-stoponexit*
|
||||
"stoponexit": {signal} Send {signal} to the job when Vim exits. See
|
||||
|job_stop()| for possible values.
|
||||
"stoponexit": "" Do not stop the job when Vim exits.
|
||||
The default is "term".
|
||||
|
||||
*job-term*
|
||||
"term": "open" Start a terminal and connect the job
|
||||
stdin/stdout/stderr to it.
|
||||
NOTE: Not implemented yet!
|
||||
|
||||
"channel": {channel} Use an existing channel instead of creating a new one.
|
||||
The parts of the channel that get used for the new job
|
||||
will be disconnected from what they were used before.
|
||||
If the channel was still use by another job this may
|
||||
cause I/O errors.
|
||||
Existing callbacks and other settings remain.
|
||||
|
||||
*job-in_io* *in_top* *in_bot* *in_name* *in_buf*
|
||||
"in_io": "null" disconnect stdin (read from /dev/null)
|
||||
"in_io": "pipe" stdin is connected to the channel (default)
|
||||
"in_io": "file" stdin reads from a file
|
||||
"in_io": "buffer" stdin reads from a buffer
|
||||
"in_top": number when using "buffer": first line to send (default: 1)
|
||||
"in_bot": number when using "buffer": last line to send (default: last)
|
||||
"in_name": "/path/file" the name of the file or buffer to read from
|
||||
"in_buf": number the number of the buffer to read from
|
||||
|
||||
*job-out_io* *out_name* *out_buf*
|
||||
"out_io": "null" disconnect stdout (goes to /dev/null)
|
||||
"out_io": "pipe" stdout is connected to the channel (default)
|
||||
"out_io": "file" stdout writes to a file
|
||||
"out_io": "buffer" stdout appends to a buffer
|
||||
"out_name": "/path/file" the name of the file or buffer to write to
|
||||
"out_buf": number the number of the buffer to write to
|
||||
|
||||
*job-err_io* *err_name* *err_buf*
|
||||
"err_io": "out" stderr messages to go to stdout
|
||||
"err_io": "null" disconnect stderr (goes to /dev/null)
|
||||
"err_io": "pipe" stderr is connected to the channel (default)
|
||||
"err_io": "file" stderr writes to a file
|
||||
"err_io": "buffer" stderr appends to a buffer
|
||||
"err_name": "/path/file" the name of the file or buffer to write to
|
||||
"err_buf": number the number of the buffer to write to
|
||||
|
||||
|
||||
Writing to a buffer ~
|
||||
|
||||
When the out_io or err_io mode is "buffer" and there is a callback, the text
|
||||
is appended to the buffer before invoking the callback.
|
||||
|
||||
When a buffer is used both for input and output, the output lines are put
|
||||
above the last line, since the last line is what is written to the channel
|
||||
input. Otherwise lines are appended below the last line.
|
||||
|
||||
When using JS or JSON mode with "buffer", only messages with zero or negative
|
||||
ID will be added to the buffer, after decoding + encoding. Messages with a
|
||||
positive number will be handled by a callback, commands are handled as usual.
|
||||
|
||||
The name of the buffer is compared the full name of existing buffers. If
|
||||
there is a match that buffer is used. Otherwise a new buffer is created.
|
||||
Use an empty name to always create a new buffer. |ch_getbufnr()| can then be
|
||||
used to get the buffer number.
|
||||
|
||||
For a new buffer 'buftype' is set to "nofile" and 'bufhidden' to "hide". If
|
||||
you prefer other settings, create the buffer first and pass the buffer number.
|
||||
|
||||
When the buffer written to is displayed in a window and the cursor is in the
|
||||
first column of the last line, the cursor will be moved to the newly added
|
||||
line and the window is scrolled up to show the cursor if needed.
|
||||
|
||||
Undo is synced for every added line.
|
||||
|
||||
|
||||
Writing to a file ~
|
||||
*E920*
|
||||
The file is created with permissions 600 (read-write for the user, not
|
||||
accessible for others). Use |setfperm()| to change this.
|
||||
|
||||
If the file already exists it is truncated.
|
||||
|
||||
==============================================================================
|
||||
11. Controlling a job *job-control*
|
||||
|
||||
To get the status of a job: >
|
||||
echo job_status(job)
|
||||
|
||||
To make a job stop running: >
|
||||
job_stop(job)
|
||||
|
||||
This is the normal way to end a job. On Unix it sends a SIGTERM to the job.
|
||||
It is possible to use other ways to stop the job, or even send arbitrary
|
||||
signals. E.g. to force a job to stop, "kill it": >
|
||||
job_stop(job, "kill")
|
||||
|
||||
For more options see |job_stop()|.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.4. Last change: 2014 Sep 06
|
||||
*cmdline.txt* For Vim version 7.4. Last change: 2015 Dec 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -101,6 +101,11 @@ CTRL-E or <End> *c_CTRL-E* *c_<End>* *c_End*
|
||||
*c_<LeftMouse>*
|
||||
<LeftMouse> Move the cursor to the position of the mouse click.
|
||||
|
||||
*c_<MiddleMouse>*
|
||||
<MiddleMouse> Paste the contents of the clipboard (for X11 the primary
|
||||
selection). This is similar to using CTRL-R *, but no CR
|
||||
characters are inserted between lines.
|
||||
|
||||
CTRL-H *c_<BS>* *c_CTRL-H* *c_BS*
|
||||
<BS> Delete the character in front of the cursor (see |:fixdel| if
|
||||
your <BS> key does not do what you want).
|
||||
@@ -511,6 +516,8 @@ followed by another Vim command:
|
||||
:argdo
|
||||
:autocmd
|
||||
:bufdo
|
||||
:cdo
|
||||
:cfdo
|
||||
:command
|
||||
:cscope
|
||||
:debug
|
||||
@@ -521,6 +528,8 @@ followed by another Vim command:
|
||||
:help
|
||||
:helpfind
|
||||
:lcscope
|
||||
:ldo
|
||||
:lfdo
|
||||
:make
|
||||
:normal
|
||||
:perl
|
||||
@@ -597,6 +606,7 @@ starts editing the three files "foo bar", "goes to" and "school ".
|
||||
When you want to use the special characters '"' or '|' in a command, or want
|
||||
to use '%' or '#' in a file name, precede them with a backslash. The
|
||||
backslash is not required in a range and in the ":substitute" command.
|
||||
See also |`=|.
|
||||
|
||||
*:_!*
|
||||
The '!' (bang) character after an Ex command makes the command behave in a
|
||||
@@ -749,13 +759,13 @@ to insert special things while typing you can use the CTRL-R command. For
|
||||
example, "%" stands for the current file name, while CTRL-R % inserts the
|
||||
current file name right away. See |c_CTRL-R|.
|
||||
|
||||
Note: If you want to avoid the special characters in a Vim script you may want
|
||||
to use |fnameescape()|.
|
||||
Note: If you want to avoid the effects of special characters in a Vim script
|
||||
you may want to use |fnameescape()|. Also see |`=|.
|
||||
|
||||
|
||||
In Ex commands, at places where a file name can be used, the following
|
||||
characters have a special meaning. These can also be used in the expression
|
||||
function expand() |expand()|.
|
||||
function |expand()|.
|
||||
% Is replaced with the current file name. *:_%* *c_%*
|
||||
# Is replaced with the alternate file name. *:_#* *c_#*
|
||||
This is remembered for every window.
|
||||
@@ -790,6 +800,7 @@ it, no matter how many backslashes.
|
||||
# alternate.file
|
||||
\# #
|
||||
\\# \#
|
||||
Also see |`=|.
|
||||
|
||||
*:<cword>* *:<cWORD>* *:<cfile>* *<cfile>*
|
||||
*:<sfile>* *<sfile>* *:<afile>* *<afile>*
|
||||
@@ -811,13 +822,13 @@ Note: these are typed literally, they are not special keys!
|
||||
<afile> only when the file name isn't used to match with
|
||||
(for FileType, Syntax and SpellFileMissing events).
|
||||
<sfile> When executing a ":source" command, is replaced with the
|
||||
file name of the sourced file. *E498*
|
||||
When executing a function, is replaced with
|
||||
"function {function-name}"; function call nesting is
|
||||
indicated like this:
|
||||
"function {function-name1}..{function-name2}". Note that
|
||||
filename-modifiers are useless when <sfile> is used inside
|
||||
a function.
|
||||
file name of the sourced file. *E498*
|
||||
When executing a function, is replaced with:
|
||||
"function {function-name}[{lnum}]"
|
||||
function call nesting is indicated like this:
|
||||
"function {function-name1}[{lnum}]..{function-name2}[{lnum}]"
|
||||
Note that filename-modifiers are useless when <sfile> is
|
||||
used inside a function.
|
||||
<slnum> When executing a ":source" command, is replaced with the
|
||||
line number. *E842*
|
||||
When executing a function it's the line number relative to
|
||||
@@ -880,7 +891,7 @@ These modifiers can be given, in this order:
|
||||
:gs?pat?sub?
|
||||
Substitute all occurrences of "pat" with "sub". Otherwise
|
||||
this works like ":s".
|
||||
:S Escape special characters for use with a shell command (see
|
||||
:S Escape special characters for use with a shell command (see
|
||||
|shellescape()|). Must be the last one. Examples: >
|
||||
:!dir <cfile>:S
|
||||
:call system('chmod +w -- ' . expand('%:S'))
|
||||
@@ -933,9 +944,8 @@ name). This is included for backwards compatibility with version 3.0, the
|
||||
|
||||
Note: Where a file name is expected wildcards expansion is done. On Unix the
|
||||
shell is used for this, unless it can be done internally (for speed).
|
||||
Backticks also work, like in >
|
||||
Unless in |restricted-mode|, backticks work also, like in >
|
||||
:n `echo *.c`
|
||||
(backtick expansion is not possible in |restricted-mode|)
|
||||
But expansion is only done if there are any wildcards before expanding the
|
||||
'%', '#', etc.. This avoids expanding wildcards inside a file name. If you
|
||||
want to expand the result of <cfile>, add a wildcard character to it.
|
||||
@@ -946,6 +956,7 @@ Examples: (alternate file name is "?readme?")
|
||||
:e #.* :e {files matching "?readme?.*"}
|
||||
:cd <cfile> :cd {file name under cursor}
|
||||
:cd <cfile>* :cd {file name under cursor plus "*" and then expanded}
|
||||
Also see |`=|.
|
||||
|
||||
When the expanded argument contains a "!" and it is used for a shell command
|
||||
(":!cmd", ":r !cmd" or ":w !cmd"), the "!" is escaped with a backslash to
|
||||
@@ -972,6 +983,8 @@ for the file "$home" in the root directory. A few examples:
|
||||
/\$home file "$home" in root directory
|
||||
\\$home file "\\", followed by expanded $home
|
||||
|
||||
Also see |`=|.
|
||||
|
||||
==============================================================================
|
||||
7. Command-line window *cmdline-window* *cmdwin*
|
||||
*command-line-window*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 7.4. Last change: 2014 Mar 27
|
||||
*develop.txt* For Vim version 7.4. Last change: 2016 Jan 31
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -166,12 +166,27 @@ This list is not complete. Look in the source code for more examples.
|
||||
MAKING CHANGES *style-changes*
|
||||
|
||||
The basic steps to make changes to the code:
|
||||
1. Adjust the documentation. Doing this first gives you an impression of how
|
||||
1. Get the code from github. That makes it easier to keep your changed
|
||||
version in sync with the main code base (it may be a while before your
|
||||
changes will be included). You do need to spend some time learning git,
|
||||
it's not the most user friendly tool.
|
||||
2. Adjust the documentation. Doing this first gives you an impression of how
|
||||
your changes affect the user.
|
||||
2. Make the source code changes.
|
||||
3. Check ../doc/todo.txt if the change affects any listed item.
|
||||
4. Make a patch with "diff -c" against the unmodified code and docs.
|
||||
5. Make a note about what changed and include it with the patch.
|
||||
3. Make the source code changes.
|
||||
4. Check ../doc/todo.txt if the change affects any listed item.
|
||||
5. Make a patch with "git diff". You can also create a pull request on
|
||||
github, but it's the diff that matters.
|
||||
6. Make a note about what changed, preferably mentioning the problem and the
|
||||
solution. Send an email to the vim-dev maillist with an explanation and
|
||||
include the diff. Or create a pull request on github.
|
||||
|
||||
|
||||
C COMPILER *style-compiler*
|
||||
|
||||
The minimal C compiler version supported is C89, also known as ANSI C.
|
||||
Later standards don't add much and C89 is the widest supported.
|
||||
|
||||
One restriction that this implies: no // comments, only /* comments */.
|
||||
|
||||
|
||||
USE OF COMMON FUNCTIONS *style-functions*
|
||||
@@ -197,7 +212,7 @@ NAMES *style-names*
|
||||
|
||||
Function names can not be more than 31 characters long (because of VMS).
|
||||
|
||||
Don't use "delete" as a variable name, C++ doesn't like it.
|
||||
Don't use "delete" or "this" as a variable name, C++ doesn't like it.
|
||||
|
||||
Because of the requirement that Vim runs on as many systems as possible, we
|
||||
need to avoid using names that are already defined by the system. This is a
|
||||
@@ -288,8 +303,27 @@ OK: do
|
||||
a = 1;
|
||||
while (cond);
|
||||
|
||||
Wrong: if (cond) {
|
||||
cmd;
|
||||
cmd;
|
||||
} else {
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
|
||||
Functions start with:
|
||||
OK: if (cond)
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
|
||||
Use ANSI (new style) function declarations with the return type on a separate
|
||||
indented line.
|
||||
|
||||
Wrong: int function_name(int arg1, int arg2)
|
||||
|
||||
@@ -299,16 +333,14 @@ OK: /*
|
||||
* Return value explanation.
|
||||
*/
|
||||
int
|
||||
function_name(arg1, arg2)
|
||||
int arg1; /* short comment about arg1 */
|
||||
int arg2; /* short comment about arg2 */
|
||||
function_name(
|
||||
int arg1, /* short comment about arg1 */
|
||||
int arg2) /* short comment about arg2 */
|
||||
{
|
||||
int local; /* comment about local */
|
||||
|
||||
local = arg1 * arg2;
|
||||
|
||||
NOTE: Don't use ANSI style function declarations. A few people still have to
|
||||
use a compiler that doesn't support it.
|
||||
|
||||
|
||||
SPACES AND PUNCTUATION *style-spaces*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*diff.txt* For Vim version 7.4. Last change: 2015 Jul 03
|
||||
*diff.txt* For Vim version 7.4. Last change: 2015 Nov 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -182,8 +182,8 @@ 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.
|
||||
|
||||
*:diffu* *:diffupdate*
|
||||
:diffu[pdate][!] Update the diff highlighting and folds.
|
||||
*:dif* *:diffupdate*
|
||||
:dif[fupdate][!] Update the diff highlighting and folds.
|
||||
|
||||
Vim attempts to keep the differences updated when you make changes to the
|
||||
text. This mostly takes care of inserted and deleted lines. Changes within a
|
||||
|
||||
@@ -14,9 +14,7 @@
|
||||
#define LINELEN 200
|
||||
|
||||
int
|
||||
main(argc, argv)
|
||||
int argc;
|
||||
char **argv;
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
char line[LINELEN];
|
||||
char *p1, *p2;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.4. Last change: 2015 Feb 27
|
||||
*editing.txt* For Vim version 7.4. Last change: 2016 Feb 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -78,7 +78,9 @@ g CTRL-G Prints the current position of the cursor in five
|
||||
than one position on the screen (<Tab> or special
|
||||
character), both the "real" column and the screen
|
||||
column are shown, separated with a dash.
|
||||
See also 'ruler' option. {not in Vi}
|
||||
Also see the 'ruler' option and the |wordcount()|
|
||||
function.
|
||||
{not in Vi}
|
||||
|
||||
*v_g_CTRL-G*
|
||||
{Visual}g CTRL-G Similar to "g CTRL-G", but Word, Character, Line, and
|
||||
@@ -401,36 +403,54 @@ Note there are some commands where this works slightly differently, see
|
||||
Example: >
|
||||
:n **/*.txt
|
||||
Finds files:
|
||||
ttt.txt
|
||||
subdir/ttt.txt
|
||||
a/b/c/d/ttt.txt
|
||||
When non-wildcard characters are used these are only matched in the first
|
||||
directory. Example: >
|
||||
:n /usr/inc**/*.h
|
||||
aaa.txt ~
|
||||
subdir/bbb.txt ~
|
||||
a/b/c/d/ccc.txt ~
|
||||
When non-wildcard characters are used right before or after "**" these are
|
||||
only matched in the top directory. They are not used for directories further
|
||||
down in the tree. For example: >
|
||||
:n /usr/inc**/types.h
|
||||
Finds files:
|
||||
/usr/include/types.h
|
||||
/usr/include/sys/types.h
|
||||
/usr/inc_old/types.h
|
||||
/usr/include/types.h ~
|
||||
/usr/include/sys/types.h ~
|
||||
/usr/inc/old/types.h ~
|
||||
Note that the path with "/sys" is included because it does not need to match
|
||||
"/inc". Thus it's like matching "/usr/inc*/*/*...", not
|
||||
"/usr/inc*/inc*/inc*".
|
||||
|
||||
*backtick-expansion* *`-expansion*
|
||||
On Unix and a few other systems you can also use backticks in the file name,
|
||||
for example: >
|
||||
:e `find . -name ver\\*.c -print`
|
||||
The backslashes before the star are required to prevent "ver*.c" to be
|
||||
expanded by the shell before executing the find program.
|
||||
On Unix and a few other systems you can also use backticks for the file name
|
||||
argument, for example: >
|
||||
:next `find . -name ver\\*.c -print`
|
||||
:view `ls -t *.patch \| head -n1`
|
||||
The backslashes before the star are required to prevent the shell from
|
||||
expanding "ver*.c" prior to execution of the find program. The backslash
|
||||
before the shell pipe symbol "|" prevents Vim from parsing it as command
|
||||
termination.
|
||||
This also works for most other systems, with the restriction that the
|
||||
backticks must be around the whole item. It is not possible to have text
|
||||
directly before the first or just after the last backtick.
|
||||
|
||||
*`=*
|
||||
You can have the backticks expanded as a Vim expression, instead of an
|
||||
external command, by using the syntax `={expr}` e.g.: >
|
||||
You can have the backticks expanded as a Vim expression, instead of as an
|
||||
external command, by putting an equal sign right after the first backtick,
|
||||
e.g.: >
|
||||
:e `=tempname()`
|
||||
The expression can contain just about anything, thus this can also be used to
|
||||
avoid the special meaning of '"', '|', '%' and '#'. However, 'wildignore'
|
||||
does apply like to other wildcards.
|
||||
|
||||
Environment variables in the expression are expanded when evaluating the
|
||||
expression, thus this works: >
|
||||
:e `=$HOME . '/.vimrc'`
|
||||
This does not work, $HOME is inside a string and used literally: >
|
||||
:e `='$HOME' . '/.vimrc'`
|
||||
|
||||
If the expression returns a string then names are to be separated with line
|
||||
breaks. When the result is a |List| then each item is used as a name. Line
|
||||
breaks also separate names.
|
||||
Note that such expressions are only supported in places where a filename is
|
||||
expected as an argument to an Ex-command.
|
||||
|
||||
*++opt* *[++opt]*
|
||||
The [++opt] argument can be used to force the value of 'fileformat',
|
||||
@@ -624,6 +644,7 @@ list of the current window.
|
||||
:0argadd x x a b c
|
||||
:1argadd x a x b c
|
||||
:$argadd x a b c x
|
||||
And after the last one:
|
||||
:+2argadd y a b c x y
|
||||
There is no check for duplicates, it is possible to
|
||||
add a file to the argument list twice.
|
||||
@@ -855,7 +876,8 @@ USING THE ARGUMENT LIST
|
||||
each file.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
Also see |:windo|, |:tabdo| and |:bufdo|.
|
||||
Also see |:windo|, |:tabdo|, |:bufdo|, |:cdo|, |:ldo|,
|
||||
|:cfdo| and |:lfdo|
|
||||
|
||||
Example: >
|
||||
:args *.c
|
||||
@@ -994,7 +1016,7 @@ the newly written file (it might be there but contain bogus data). In that
|
||||
case try recovery, because the swap file is synced to disk and might still be
|
||||
there. |:recover|
|
||||
|
||||
The directories given with the 'backupdir' option is used to put the backup
|
||||
The directories given with the 'backupdir' option are used to put the backup
|
||||
file in. (default: same directory as the written file).
|
||||
|
||||
Whether the backup is a new file, which is a copy of the original file, or the
|
||||
@@ -1091,10 +1113,10 @@ The names can be in upper- or lowercase.
|
||||
the last file in the argument list has not been
|
||||
edited. See |:confirm| and 'confirm'. {not in Vi}
|
||||
|
||||
:q[uit]! Quit without writing, also when currently visible
|
||||
buffers have changes. Does not exit when this is the
|
||||
last window and there is a changed hidden buffer.
|
||||
In this case, the first changed hidden buffer becomes
|
||||
:q[uit]! Quit without writing, also when the current buffer has
|
||||
changes. If this is the last window and there is a
|
||||
modified hidden buffer, the current buffer is
|
||||
abandoned and the first changed hidden buffer becomes
|
||||
the current buffer.
|
||||
Use ":qall!" to exit always.
|
||||
|
||||
@@ -1363,7 +1385,7 @@ There are a few things to remember when editing binary files:
|
||||
- <Nul> characters are shown on the screen as ^@. You can enter them with
|
||||
"CTRL-V CTRL-@" or "CTRL-V 000" {Vi cannot handle <Nul> characters in the
|
||||
file}
|
||||
- To insert a <NL> character in the file split up a line. When writing the
|
||||
- To insert a <NL> character in the file split a line. When writing the
|
||||
buffer to a file a <NL> will be written for the <EOL>.
|
||||
- Vim normally appends an <EOL> at the end of the file if there is none.
|
||||
Setting the 'binary' option prevents this. If you want to add the final
|
||||
@@ -1393,7 +1415,8 @@ reveal it to others. The 'viminfo' file is not encrypted.
|
||||
You could do this to edit very secret text: >
|
||||
:set noundofile viminfo=
|
||||
:noswapfile edit secrets.txt
|
||||
Keep in mind that without a swap file you risk losing your work in a crash.
|
||||
Keep in mind that without a swap file you risk losing your work in the event
|
||||
of a crash or a power failure.
|
||||
|
||||
WARNING: If you make a typo when entering the key and then write the file and
|
||||
exit, the text will be lost!
|
||||
@@ -1441,6 +1464,18 @@ using zip, "[blowfish]" when using blowfish, etc.
|
||||
When writing an undo file, the same key and method will be used for the text
|
||||
in the undo file. |persistent-undo|.
|
||||
|
||||
To test for blowfish support you can use these conditions: >
|
||||
has('crypt-blowfish')
|
||||
has('crypt-blowfish2')
|
||||
This works since Vim 7.4.1099 while blowfish support was added earlier.
|
||||
Thus the condition failing doesn't mean blowfish is not supported. You can
|
||||
test for blowfish with: >
|
||||
v:version >= 703
|
||||
And for blowfish2 with: >
|
||||
v:version > 704 || (v:version == 704 && has('patch401'))
|
||||
If you are sure Vim includes patch 7.4.237 a simpler check is: >
|
||||
has('patch-7.4.401')
|
||||
<
|
||||
*E817* *E818* *E819* *E820*
|
||||
When encryption does not work properly, you would be able to write your text
|
||||
to a file and never be able to read it back. Therefore a test is performed to
|
||||
|
||||
1042
runtime/doc/eval.txt
@@ -1,4 +1,4 @@
|
||||
*farsi.txt* For Vim version 7.4. Last change: 2010 Aug 07
|
||||
*farsi.txt* For Vim version 7.4. Last change: 2015 Aug 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
|
||||
@@ -59,7 +59,7 @@ o Toggling between Farsi ISIR-3342 standard encoding and Vim Farsi via F9
|
||||
right-to-left mode, this function is also supported only in right-to-left
|
||||
mode.
|
||||
|
||||
Farsi Fonts *farsi fonts*
|
||||
Farsi Fonts *farsi-fonts*
|
||||
-----------
|
||||
|
||||
The following files are found in the subdirectories of the '$VIM/farsi/fonts'
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 7.4. Last change: 2013 Dec 15
|
||||
*filetype.txt* For Vim version 7.4. Last change: 2015 Dec 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -552,7 +552,7 @@ Local mappings:
|
||||
to the end of the file in Normal mode. This means "> " is inserted in
|
||||
each line.
|
||||
|
||||
MAN *ft-man-plugin* *:Man*
|
||||
MAN *ft-man-plugin* *:Man* *man.vim*
|
||||
|
||||
Displays a manual page in a nice way. Also see the user manual
|
||||
|find-manpage|.
|
||||
@@ -577,6 +577,13 @@ Global mapping:
|
||||
Local mappings:
|
||||
CTRL-] Jump to the manual page for the word under the cursor.
|
||||
CTRL-T Jump back to the previous manual page.
|
||||
q Same as ":quit"
|
||||
|
||||
To enable folding use this: >
|
||||
let g:ft_man_folding_enable = 1
|
||||
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
|
||||
|
||||
|
||||
PDF *ft-pdf-plugin*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*fold.txt* For Vim version 7.4. Last change: 2013 Dec 04
|
||||
*fold.txt* For Vim version 7.4. Last change: 2016 Jan 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -97,9 +97,9 @@ These are the conditions with which the expression is evaluated:
|
||||
lowest.
|
||||
"=" use fold level from the previous line
|
||||
"a1", "a2", .. add one, two, .. to the fold level of the previous
|
||||
line
|
||||
line, use the result for the current line
|
||||
"s1", "s2", .. subtract one, two, .. from the fold level of the
|
||||
previous line
|
||||
previous line, use the result for the next line
|
||||
"<1", "<2", .. a fold with this level ends at this line
|
||||
">1", ">2", .. a fold with this level starts at this line
|
||||
|
||||
@@ -122,6 +122,18 @@ method can be very slow!
|
||||
Try to avoid the "=", "a" and "s" return values, since Vim often has to search
|
||||
backwards for a line for which the fold level is defined. This can be slow.
|
||||
|
||||
An example of using "a1" and "s1": For a multi-line C comment, a line
|
||||
containing "/*" would return "a1" to start a fold, and a line containing "*/"
|
||||
would return "s1" to end the fold after that line: >
|
||||
if match(thisline, '/\*') >= 0
|
||||
return 'a1'
|
||||
elseif match(thisline, '\*/') >= 0
|
||||
return 's1'
|
||||
else
|
||||
return '='
|
||||
endif
|
||||
However, this won't work for single line comments, strings, etc.
|
||||
|
||||
|foldlevel()| can be useful to compute a fold level relative to a previous
|
||||
fold level. But note that foldlevel() may return -1 if the level is not known
|
||||
yet. And it returns the level at the start of the line, while a fold might
|
||||
@@ -573,8 +585,9 @@ what you type!
|
||||
When using an operator, a closed fold is included as a whole. Thus "dl"
|
||||
deletes the whole closed fold under the cursor.
|
||||
|
||||
For Ex commands the range is adjusted to always start at the first line of a
|
||||
closed fold and end at the last line of a closed fold. Thus this command: >
|
||||
For Ex commands that work on buffer lines the range is adjusted to always
|
||||
start at the first line of a closed fold and end at the last line of a closed
|
||||
fold. Thus this command: >
|
||||
:s/foo/bar/g
|
||||
when used with the cursor on a closed fold, will replace "foo" with "bar" in
|
||||
all lines of the fold.
|
||||
|
||||
@@ -25,7 +25,7 @@ Other GUI documentation:
|
||||
|
||||
First you must make sure you actually have a version of Vim with the GUI code
|
||||
included. You can check this with the ":version" command, it says "with xxx
|
||||
GUI", where "xxx" is X11-Motif, X11-Athena, Photon, GTK, GTK2, etc., or
|
||||
GUI", where "xxx" is X11-Motif, X11-Athena, Photon, GTK2, GTK3, etc., or
|
||||
"MS-Windows 32 bit GUI version".
|
||||
|
||||
How to start the GUI depends on the system used. Mostly you can run the
|
||||
@@ -514,11 +514,14 @@ a menu entry. Hit <Enter> to execute it. Hit <Esc> if you want to cancel.
|
||||
This does require the |+menu| feature enabled at compile time.
|
||||
|
||||
*tear-off-menus*
|
||||
GTK+ and Motif support Tear-off menus. These are sort of sticky menus or
|
||||
GTK+ 2 and Motif support Tear-off menus. These are sort of sticky menus or
|
||||
pop-up menus that are present all the time. If the resizing does not work
|
||||
correctly, this may be caused by using something like "Vim*geometry" in the
|
||||
defaults. Use "Vim.geometry" instead.
|
||||
|
||||
As to GTK+ 3, tear-off menus have been deprecated since GTK+ 3.4.
|
||||
Accordingly, they are disabled if gvim is linked against GTK+ 3.4 or later.
|
||||
|
||||
The Win32 GUI version emulates Motif's tear-off menus. Actually, a Motif user
|
||||
will spot the differences easily, but hopefully they're just as useful. You
|
||||
can also use the |:tearoff| command together with |hidden-menus| to create
|
||||
@@ -650,8 +653,8 @@ When no or zero priority is given, 500 is used.
|
||||
The priority for the PopUp menu is not used.
|
||||
|
||||
The Help menu will be placed on the far right side of the menu bar on systems
|
||||
which support this (Motif and GTK+). For GTK+ 2, this is not done anymore
|
||||
because right-aligning the Help menu is now discouraged UI design.
|
||||
which support this (Motif and GTK+). For GTK+ 2 and 3, this is not done
|
||||
anymore because right-aligning the Help menu is now discouraged UI design.
|
||||
|
||||
You can use a priority higher than 9999, to make it go after the Help menu,
|
||||
but that is non-standard and is discouraged. The highest possible priority is
|
||||
|
||||
@@ -1,186 +0,0 @@
|
||||
*gui_w16.txt* For Vim version 7.4. Last change: 2005 Mar 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
Vim's Graphical User Interface *gui-w16* *win16-gui*
|
||||
|
||||
1. Starting the GUI |win16-start|
|
||||
2. Vim as default editor |win16-default-editor|
|
||||
3. Using the clipboard |win16-clipboard|
|
||||
4. Shell Commands |win16-shell|
|
||||
5. Special colors |win16-colors|
|
||||
6. Windows dialogs & browsers |win16-dialogs|
|
||||
7. Various |win16-various|
|
||||
|
||||
Other relevant documentation:
|
||||
|gui.txt| For generic items of the GUI.
|
||||
|os_msdos.txt| For items common to DOS and Windows.
|
||||
|gui_w32.txt| Some items here are also applicable to the Win16 version.
|
||||
|
||||
{Vi does not have a Windows GUI}
|
||||
|
||||
The Win16 version of Vim will run on Windows 3.1 or later. It has not been
|
||||
tested on 3.0, it probably won't work without being recompiled and
|
||||
modified. (But you really should upgrade to 3.11 anyway. :)
|
||||
|
||||
In most respects it behaves identically to the Win32 GUI version, including
|
||||
having a flat-style toolbar(!). The chief differences:
|
||||
|
||||
1) Bold/Italic text is not available, to speed up repaint/reduce resource
|
||||
usage. (You can re-instate this by undefining MSWIN16_FASTTEXT.)
|
||||
2) No tearoff menu emulation.
|
||||
3) No OLE interface.
|
||||
4) No long filename support (of course).
|
||||
5) No tooltips on toolbar buttons - instead they produce command-line tips
|
||||
like menu items do.
|
||||
6) Line length limited to 32767 characters (like 16-bit DOS version).
|
||||
|
||||
|
||||
==============================================================================
|
||||
1. Starting the GUI *win16-start*
|
||||
|
||||
The Win16 GUI version of Vim will always start the GUI, no matter how you
|
||||
start it or what it's called. There is no 'console' version as such, but you
|
||||
can use one of the DOS versions in a DOS box.
|
||||
|
||||
The Win16 GUI has an extra menu item: "Window/Select Font". It brings up the
|
||||
standard Windows font selector. Note that bold and italic fonts are not
|
||||
supported in an attempt to maximize GDI drawing speed.
|
||||
|
||||
Setting the menu height doesn't work for the Win16 GUI.
|
||||
|
||||
*win16-maximized*
|
||||
If you want Vim to start with a maximized window, add this command to your
|
||||
vimrc or gvimrc file: >
|
||||
au GUIEnter * simalt ~x
|
||||
<
|
||||
|
||||
There is a specific version of gvim.exe that runs under the Win32s subsystem
|
||||
of Windows 3.1 or 3.11. See |win32s|.
|
||||
|
||||
==============================================================================
|
||||
2. Vim as default editor *win16-default-editor*
|
||||
|
||||
To set Vim as the default editor for a file type you can use File Manager's
|
||||
"Associate" feature.
|
||||
|
||||
When you open a file in Vim by double clicking it, Vim changes to that
|
||||
file's directory.
|
||||
|
||||
See also |notepad|.
|
||||
|
||||
==============================================================================
|
||||
3. Using the clipboard *win16-clipboard*
|
||||
|
||||
Windows has a clipboard, where you can copy text to, and paste text from. Vim
|
||||
supports this in several ways.
|
||||
The clipboard works in the same way as the Win32 version: see |gui-clipboard|.
|
||||
|
||||
==============================================================================
|
||||
4. Shell Commands *win16-shell*
|
||||
|
||||
Vim spawns a DOS window for external commands, to make it possible to run any
|
||||
DOS command. The window uses the _default.pif settings.
|
||||
|
||||
*win16-!start*
|
||||
Normally, Vim waits for a command to complete before continuing (this makes
|
||||
sense for most shell commands which produce output for Vim to use). If you
|
||||
want Vim to start a program and return immediately, you can use the following
|
||||
syntax:
|
||||
:!start {command}
|
||||
This may only work for a Windows program though.
|
||||
Don't forget that you must tell Windows 3.1x to keep executing a DOS command
|
||||
in the background while you switch back to Vim.
|
||||
|
||||
==============================================================================
|
||||
5. Special colors *win16-colors*
|
||||
|
||||
On Win16, the normal DOS colors can be used. See |dos-colors|.
|
||||
|
||||
Additionally the system configured colors can also be used. These are known
|
||||
by the names Sys_XXX, where XXX is the appropriate system color name, from the
|
||||
following list (see the Win32 documentation for full descriptions). Case is
|
||||
ignored.
|
||||
|
||||
Sys_BTNFace Sys_BTNShadow Sys_ActiveBorder
|
||||
Sys_ActiveCaption Sys_AppWorkspace Sys_Background
|
||||
Sys_BTNText Sys_CaptionText Sys_GrayText
|
||||
Sys_Highlight Sys_HighlightText Sys_InactiveBorder
|
||||
Sys_InactiveCaption Sys_InactiveCaptionText Sys_Menu
|
||||
Sys_MenuText Sys_ScrollBar Sys_Window
|
||||
Sys_WindowFrame Sys_WindowText
|
||||
|
||||
Probably the most useful values are
|
||||
Sys_Window Normal window background
|
||||
Sys_WindowText Normal window text
|
||||
Sys_Highlight Highlighted background
|
||||
Sys_HighlightText Highlighted text
|
||||
|
||||
These extra colors are also available:
|
||||
Gray, Grey, LightYellow, SeaGreen, Orange, Purple, SlateBlue, Violet,
|
||||
|
||||
|
||||
See also |rgb.txt|.
|
||||
|
||||
==============================================================================
|
||||
*win16-dialogs*
|
||||
6. Windows dialogs & browsers
|
||||
|
||||
The Win16 GUI can use familiar Windows components for some operations, as well
|
||||
as the traditional interface shared with the console version.
|
||||
|
||||
|
||||
6.1 Dialogs
|
||||
|
||||
The dialogs displayed by the "confirm" family (i.e. the 'confirm' option,
|
||||
|:confirm| command and |confirm()| function) are GUI-based rather than the
|
||||
console-based ones used by other versions. There is no option to change this.
|
||||
|
||||
|
||||
6.2 File Browsers
|
||||
|
||||
When prepending ":browse" before file editing commands, a file requester is
|
||||
used to allow you to select an existing file. See |:browse|.
|
||||
|
||||
|
||||
==============================================================================
|
||||
7. Various *win16-various*
|
||||
|
||||
*win16-printing*
|
||||
The "File/Print" menu uses Notepad to print the current buffer. This is a bit
|
||||
clumsy, but it's portable. If you want something else, you can define your
|
||||
own print command. For example, you could look for the 16-bit version of
|
||||
PrintFile. See $VIMRUNTIME/menu.vim for how it works by default.
|
||||
|
||||
Using this should also work: >
|
||||
:w >>prn
|
||||
|
||||
Vim supports a number of standard MS Windows features. Some of these are
|
||||
detailed elsewhere: see |'mouse'|, |win32-hidden-menus|.
|
||||
Also see |:simalt|
|
||||
|
||||
*win16-drag-n-drop*
|
||||
You can drag and drop one or more files into the vim window, where they will
|
||||
be opened as normal. If you hold down Shift while doing this, Vim changes to
|
||||
the (first) dropped file's directory. If you hold Ctrl, Vim will always split
|
||||
a new window for the file. Otherwise it's only done if the current buffer has
|
||||
been changed.
|
||||
You can also drop a directory's icon, but rather than open all files in the
|
||||
directory (which wouldn't usually be what you want) Vim instead changes to
|
||||
that directory and begins a new file.
|
||||
If Vim happens to be editing a command line, the names of the dropped files
|
||||
and directories will be inserted at the cursor. This allows you to use these
|
||||
names with any Ex command.
|
||||
|
||||
*win16-truetype*
|
||||
It is recommended that you use a raster font and not a TrueType
|
||||
fixed-pitch font. E.g. use Courier, not Courier New. This is not just
|
||||
to use less resources but because there are subtle bugs in the
|
||||
handling of fixed-pitch TrueType in Win3.1x. In particular, when you move
|
||||
a block cursor over a pipe character '|', the cursor is drawn in the wrong
|
||||
size and bits get left behind. This is a bug in the Win3.1x GDI, it doesn't
|
||||
happen if you run the exe under 95/NT.
|
||||
|
||||
vim:tw=78:sw=4:ts=8:ft=help:norl:
|
||||
@@ -369,6 +369,16 @@ Write this in the file ~/.gtkrc and it will be used by GTK+. For GTK+ 2
|
||||
you might have to use the file ~/.gtkrc-2.0 instead, depending on your
|
||||
distribution.
|
||||
|
||||
For GTK+ 3, an effect similar to the above can be obtained by adding the
|
||||
following snippet of CSS code to $XDG_HOME_DIR/gtk-3.0/gtk.css (usually,
|
||||
$HOME/.config/gtk-3.0/gtk.css):
|
||||
>
|
||||
.tooltip {
|
||||
background-color: #ffffcc;
|
||||
color: #000000;
|
||||
}
|
||||
<
|
||||
|
||||
Using Vim as a GTK+ plugin *gui-gtk-socketid*
|
||||
|
||||
When the GTK+ version of Vim starts up normally, it creates its own top level
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
*hangulin.txt* For Vim version 7.4. Last change: 2009 Jun 24
|
||||
*hangulin.txt* For Vim version 7.4. Last change: 2015 Nov 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam
|
||||
|
||||
NOTE: The |+hangul_input| feature is scheduled to be removed. If you want to
|
||||
keep it, please send a message to the Vim user maillist.
|
||||
|
||||
|
||||
Introduction *hangul*
|
||||
------------
|
||||
@@ -17,7 +14,8 @@ Compile
|
||||
-------
|
||||
Next is a basic option. You can add any other configure option. >
|
||||
|
||||
./configure --with-x --enable-multibyte --enable-fontset --enable-hangulinput
|
||||
./configure --with-x --enable-multibyte --enable-hangulinput \
|
||||
--disable-xim
|
||||
|
||||
And you should check feature.h. If |+hangul_input| feature is enabled
|
||||
by configure, you can select more options such as keyboard type, 2 bulsik
|
||||
@@ -26,18 +24,21 @@ or 3 bulsik. You can find keywords like next in there. >
|
||||
#define HANGUL_DEFAULT_KEYBOARD 2
|
||||
#define ESC_CHG_TO_ENG_MODE
|
||||
/* #define X_LOCALE */
|
||||
/* #define SLOW_XSERVER */
|
||||
|
||||
Environment variables
|
||||
---------------------
|
||||
You should set LANG variable to Korean locale such as ko or ko_KR.euc.
|
||||
You should set LANG variable to Korean locale such as ko, ko_KR.eucKR
|
||||
or ko_KR.UTF-8.
|
||||
If you set LC_ALL variable, it should be set to Korean locale also.
|
||||
|
||||
VIM resource
|
||||
------------
|
||||
You should add nexts to your global vimrc ($HOME/.vimrc). >
|
||||
You may want to set 'encoding' and 'fileencodings'.
|
||||
Next are examples: >
|
||||
|
||||
:set fileencoding=korea
|
||||
:set encoding=euc-kr
|
||||
:set encoding=utf-8
|
||||
:set fileencodings=ucs-bom,utf-8,cp949,euc-kr,latin1
|
||||
|
||||
Keyboard
|
||||
--------
|
||||
@@ -52,8 +53,16 @@ If both are set, VIM_KEYBOARD has higher priority.
|
||||
|
||||
Hangul Fonts
|
||||
------------
|
||||
You can set text font using $HOME/.Xdefaults or in your gvimrc file.
|
||||
But to use Hangul, you should set 'guifontset' in your vimrc.
|
||||
If you use GTK version of GVIM, you should set 'guifont' and 'guifontwide'.
|
||||
For example: >
|
||||
set guifont=Courier\ 12
|
||||
set guifontwide=NanumGothicCoding\ 12
|
||||
|
||||
If you use Motif or Athena version of GVIM, you should set 'guifontset' in
|
||||
your vimrc. You can set fontset in the .Xdefaults file.
|
||||
|
||||
$HOME/.gvimrc: >
|
||||
set guifontset=english_font,hangul_font
|
||||
|
||||
$HOME/.Xdefaults: >
|
||||
Vim.font: english_font
|
||||
@@ -66,40 +75,38 @@ $HOME/.Xdefaults: >
|
||||
*international: True
|
||||
Vim*fontList: english_font;hangul_font:
|
||||
|
||||
$HOME/.gvimrc: >
|
||||
set guifontset=english_font,hangul_font
|
||||
|
||||
attention! the , (comma) or ; (semicolon)
|
||||
|
||||
And there should be no ':set guifont'. If it exists, then Gvim ignores
|
||||
':set guifontset'. It means VIM runs without fontset supporting.
|
||||
So, you can see only English. Hangul does not be correctly displayed.
|
||||
|
||||
After 'fontset' feature is enabled, VIM does not allow using 'font'.
|
||||
After 'fontset' feature is enabled, VIM does not allow using english
|
||||
font only in 'font' setting for syntax.
|
||||
For example, if you use >
|
||||
:set guifontset=eng_font,your_font
|
||||
in your .gvimrc, then you should do for syntax >
|
||||
:hi Comment guifg=Cyan font=another_eng_font,another_your_font
|
||||
If you just do >
|
||||
:hi Comment font=another_eng_font
|
||||
then you can see a GOOD error message. Be careful!
|
||||
then you can see a error message. Be careful!
|
||||
|
||||
hangul_font width should be twice than english_font width.
|
||||
|
||||
Unsupported Feature
|
||||
-------------------
|
||||
Johab font not yet supported. And I don't have any plan.
|
||||
If you really want to use johab font, you can use the
|
||||
hanguldraw.c in gau package.
|
||||
We don't support Johab font.
|
||||
We don't support Hanja input.
|
||||
And We don't have any plan to support them.
|
||||
|
||||
Hanja input not yet supported. And I don't have any plan.
|
||||
If you really want to input hanja, just use VIM with hanterm.
|
||||
If you really need such features, you can use console version of VIM with a
|
||||
capable terminal emulator.
|
||||
|
||||
Bug or Comment
|
||||
--------------
|
||||
Send comments, patches and suggestions to:
|
||||
|
||||
Chi-Deok Hwang <hwang@mizi.co.kr>
|
||||
SungHyun Nam <goweol@gmail.com>
|
||||
Chi-Deok Hwang <...>
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*help.txt* For Vim version 7.4. Last change: 2015 Jun 21
|
||||
*help.txt* For Vim version 7.4. Last change: 2016 Feb 27
|
||||
|
||||
VIM - main help file
|
||||
k
|
||||
@@ -10,14 +10,14 @@ Close this window: Use ":q<Enter>".
|
||||
Jump to a subject: Position the cursor on a tag (e.g. |bars|) and hit CTRL-].
|
||||
With the mouse: ":set mouse=a" to enable the mouse (in xterm or GUI).
|
||||
Double-click the left mouse button on a tag, e.g. |bars|.
|
||||
Jump back: Type CTRL-T or CTRL-O (repeat to go further back).
|
||||
Jump back: Type CTRL-T or CTRL-O. Repeat to go further back.
|
||||
|
||||
Get specific help: It is possible to go directly to whatever you want help
|
||||
on, by giving an argument to the |:help| command.
|
||||
It is possible to further specify the context:
|
||||
*help-context*
|
||||
Prepend something to specify the context: *help-context*
|
||||
|
||||
WHAT PREPEND EXAMPLE ~
|
||||
Normal mode command (nothing) :help x
|
||||
Normal mode command :help x
|
||||
Visual mode command v_ :help v_u
|
||||
Insert mode command i_ :help i_<Esc>
|
||||
Command-line command : :help :quit
|
||||
@@ -25,6 +25,8 @@ Get specific help: It is possible to go directly to whatever you want help
|
||||
Vim command argument - :help -r
|
||||
Option ' :help 'textwidth'
|
||||
Regular expression / :help /[
|
||||
See |help-summary| for more contexts and an explanation.
|
||||
|
||||
Search for help: Type ":help word", then hit CTRL-D to see matching
|
||||
help entries for "word".
|
||||
Or use ":helpgrep word". |:helpgrep|
|
||||
@@ -153,7 +155,6 @@ Special issues ~
|
||||
|
||||
GUI ~
|
||||
|gui.txt| Graphical User Interface (GUI)
|
||||
|gui_w16.txt| Windows 3.1 GUI
|
||||
|gui_w32.txt| Win32 GUI
|
||||
|gui_x11.txt| X11 GUI
|
||||
|
||||
@@ -163,7 +164,6 @@ Interfaces ~
|
||||
|if_mzsch.txt| MzScheme interface
|
||||
|if_perl.txt| Perl interface
|
||||
|if_pyth.txt| Python interface
|
||||
|if_sniff.txt| SNiFF+ interface
|
||||
|if_tcl.txt| Tcl interface
|
||||
|if_ole.txt| OLE automation interface for Win32
|
||||
|if_ruby.txt| Ruby interface
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*helphelp.txt* For Vim version 7.4. Last change: 2014 Sep 19
|
||||
*helphelp.txt* For Vim version 7.4. Last change: 2016 Mar 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -197,6 +197,9 @@ command: >
|
||||
*E154* *E150* *E151* *E152* *E153* *E670*
|
||||
:helpt[ags] [++t] {dir}
|
||||
Generate the help tags file(s) for directory {dir}.
|
||||
When {dir} is ALL then all "doc" directories in
|
||||
'runtimepath' will be used.
|
||||
|
||||
All "*.txt" and "*.??x" files in the directory and
|
||||
sub-directories are scanned for a help tag definition
|
||||
in between stars. The "*.??x" files are for
|
||||
@@ -205,9 +208,11 @@ command: >
|
||||
sorted.
|
||||
When there are duplicates an error message is given.
|
||||
An existing tags file is silently overwritten.
|
||||
|
||||
The optional "++t" argument forces adding the
|
||||
"help-tags" tag. This is also done when the {dir} is
|
||||
equal to $VIMRUNTIME/doc.
|
||||
|
||||
To rebuild the help tags in the runtime directory
|
||||
(requires write permission there): >
|
||||
:helptags $VIMRUNTIME/doc
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_lua.txt* For Vim version 7.4. Last change: 2013 Sep 04
|
||||
*if_lua.txt* For Vim version 7.4. Last change: 2015 Oct 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Luis Carvalho
|
||||
@@ -14,6 +14,7 @@ The Lua Interface to Vim *lua* *Lua*
|
||||
6. Buffer userdata |lua-buffer|
|
||||
7. Window userdata |lua-window|
|
||||
8. The luaeval function |lua-luaeval|
|
||||
9. Dynamic loading |lua-dynamic|
|
||||
|
||||
{Vi does not have any of these commands}
|
||||
|
||||
@@ -399,5 +400,31 @@ Examples: >
|
||||
:echo Rand(1,10)
|
||||
|
||||
|
||||
==============================================================================
|
||||
9. Dynamic loading *lua-dynamic*
|
||||
|
||||
On MS-Windows and Unix the Lua library can be loaded dynamically. The
|
||||
|:version| output then includes |+lua/dyn|.
|
||||
|
||||
This means that Vim will search for the Lua DLL or shared library file only
|
||||
when needed. When you don't use the Lua interface you don't need it, thus
|
||||
you can use Vim without this file.
|
||||
|
||||
|
||||
MS-Windows ~
|
||||
|
||||
To use the Lua interface the Lua DLL must be in your search path. In a
|
||||
console window type "path" to see what directories are used. The 'luadll'
|
||||
option can be also used to specify the Lua DLL. The version of the DLL must
|
||||
match the Lua version Vim was compiled with.
|
||||
|
||||
|
||||
Unix ~
|
||||
|
||||
The 'luadll' option can be used to specify the Lua shared library file instead
|
||||
of DYNAMIC_LUA_DLL file what was specified at compile time. The version of
|
||||
the shared library must match the Lua version Vim was compiled with.
|
||||
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_mzsch.txt* For Vim version 7.4. Last change: 2012 Dec 17
|
||||
*if_mzsch.txt* For Vim version 7.4. Last change: 2016 Jan 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sergey Khorev
|
||||
@@ -13,6 +13,7 @@ The MzScheme Interface to Vim *mzscheme* *MzScheme*
|
||||
5. mzeval() Vim function |mzscheme-mzeval|
|
||||
6. Using Function references |mzscheme-funcref|
|
||||
7. Dynamic loading |mzscheme-dynamic|
|
||||
8. MzScheme setup |mzscheme-setup|
|
||||
|
||||
{Vi does not have any of these commands}
|
||||
|
||||
@@ -264,7 +265,7 @@ directly from Scheme. For instance: >
|
||||
<
|
||||
|
||||
==============================================================================
|
||||
7. Dynamic loading *mzscheme-dynamic* *E815*
|
||||
7. Dynamic loading *mzscheme-dynamic* *E815*
|
||||
|
||||
On MS-Windows the MzScheme libraries can be loaded dynamically. The |:version|
|
||||
output then includes |+mzscheme/dyn|.
|
||||
@@ -272,6 +273,9 @@ output then includes |+mzscheme/dyn|.
|
||||
This means that Vim will search for the MzScheme DLL files only when needed.
|
||||
When you don't use the MzScheme interface you don't need them, thus you can
|
||||
use Vim without these DLL files.
|
||||
NOTE: Newer version of MzScheme (Racket) require earlier (trampolined)
|
||||
initialisation via scheme_main_setup. So Vim always loads the MzScheme DLL at
|
||||
startup if possible.
|
||||
|
||||
To use the MzScheme interface the MzScheme DLLs must be in your search path.
|
||||
In a console window type "path" to see what directories are used.
|
||||
@@ -282,5 +286,24 @@ For MzScheme version 209 they will be "libmzsch209_000.dll" and
|
||||
command, look for -DDYNAMIC_MZSCH_DLL="something" and
|
||||
-DDYNAMIC_MZGC_DLL="something" in the "Compilation" info.
|
||||
|
||||
For example, if MzScheme (Racket) is installed at C:\Racket63, you may need
|
||||
to set the environment variable as the following: >
|
||||
|
||||
PATH=%PATH%;C:\Racket63\lib
|
||||
PLTCOLLECTS=C:\Racket63\collects
|
||||
PLTCONFIGDIR=C:\Racket63\etc
|
||||
<
|
||||
==============================================================================
|
||||
8. MzScheme setup *mzscheme-setup* *E895*
|
||||
|
||||
Vim requires "racket/base" module for if_mzsch core (fallback to "scheme/base"
|
||||
if it doesn't exist), "r5rs" module for test and "raco ctool" command for
|
||||
building Vim. If MzScheme did not have them, you can install them with
|
||||
MzScheme's raco command:
|
||||
>
|
||||
raco pkg install scheme-lib # scheme/base module
|
||||
raco pkg install r5rs-lib # r5rs module
|
||||
raco pkg install cext-lib # raco ctool command
|
||||
<
|
||||
======================================================================
|
||||
vim:tw=78:ts=8:sts=4:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_perl.txt* For Vim version 7.4. Last change: 2013 Oct 05
|
||||
*if_perl.txt* For Vim version 7.4. Last change: 2015 Oct 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sven Verdoolaege
|
||||
@@ -284,11 +284,20 @@ used for building Vim.
|
||||
To use the Perl interface the Perl DLL must be in your search path.
|
||||
If Vim reports it cannot find the perl512.dll, make sure your $PATH includes
|
||||
the directory where it is located. The Perl installer normally does that.
|
||||
In a console window type "path" to see what directories are used.
|
||||
In a console window type "path" to see what directories are used. The
|
||||
'perldll' option can be also used to specify the Perl DLL.
|
||||
|
||||
The name of the DLL must match the Perl version Vim was compiled with.
|
||||
Currently the name is "perl512.dll". That is for Perl 5.12. To know for
|
||||
sure edit "gvim.exe" and search for "perl\d*.dll\c".
|
||||
|
||||
|
||||
Unix ~
|
||||
|
||||
The 'perldll' option can be used to specify the Perl shared library file
|
||||
instead of DYNAMIC_PERL_DLL file what was specified at compile time. The
|
||||
version of the shared library must match the Perl version Vim was compiled
|
||||
with.
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.4. Last change: 2014 Jul 23
|
||||
*if_pyth.txt* For Vim version 7.4. Last change: 2015 Nov 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -679,20 +679,32 @@ functions to evaluate Python expressions and pass their values to VimL.
|
||||
==============================================================================
|
||||
9. Dynamic loading *python-dynamic*
|
||||
|
||||
On MS-Windows the Python library can be loaded dynamically. The |:version|
|
||||
output then includes |+python/dyn|.
|
||||
On MS-Windows and Unix the Python library can be loaded dynamically. The
|
||||
|:version| output then includes |+python/dyn| or |+python3/dyn|.
|
||||
|
||||
This means that Vim will search for the Python DLL file only when needed.
|
||||
When you don't use the Python interface you don't need it, thus you can use
|
||||
Vim without this DLL file.
|
||||
This means that Vim will search for the Python DLL or shared library file only
|
||||
when needed. When you don't use the Python interface you don't need it, thus
|
||||
you can use Vim without this file.
|
||||
|
||||
|
||||
MS-Windows ~
|
||||
|
||||
To use the Python interface the Python DLL must be in your search path. In a
|
||||
console window type "path" to see what directories are used.
|
||||
console window type "path" to see what directories are used. The 'pythondll'
|
||||
or 'pythonthreedll' option can be also used to specify the Python DLL.
|
||||
|
||||
The name of the DLL must match the Python version Vim was compiled with.
|
||||
Currently the name is "python24.dll". That is for Python 2.4. To know for
|
||||
sure edit "gvim.exe" and search for "python\d*.dll\c".
|
||||
|
||||
|
||||
Unix ~
|
||||
|
||||
The 'pythondll' or 'pythonthreedll' option can be used to specify the Python
|
||||
shared library file instead of DYNAMIC_PYTHON_DLL or DYNAMIC_PYTHON3_DLL file
|
||||
what were specified at compile time. The version of the shared library must
|
||||
match the Python 2.x or Python 3 version Vim was compiled with.
|
||||
|
||||
==============================================================================
|
||||
10. Python 3 *python3*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_ruby.txt* For Vim version 7.4. Last change: 2015 Feb 22
|
||||
*if_ruby.txt* For Vim version 7.4. Last change: 2015 Dec 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Shugo Maeda
|
||||
@@ -7,9 +7,9 @@ The Ruby Interface to Vim *ruby* *Ruby*
|
||||
|
||||
|
||||
1. Commands |ruby-commands|
|
||||
2. The VIM module |ruby-vim|
|
||||
3. VIM::Buffer objects |ruby-buffer|
|
||||
4. VIM::Window objects |ruby-window|
|
||||
2. The Vim module |ruby-vim|
|
||||
3. Vim::Buffer objects |ruby-buffer|
|
||||
4. Vim::Window objects |ruby-window|
|
||||
5. Global variables |ruby-globals|
|
||||
6. Dynamic loading |ruby-dynamic|
|
||||
|
||||
@@ -47,7 +47,7 @@ Example Vim script: >
|
||||
ruby << EOF
|
||||
class Garnet
|
||||
def initialize(s)
|
||||
@buffer = VIM::Buffer.current
|
||||
@buffer = Vim::Buffer.current
|
||||
vimputs(s)
|
||||
end
|
||||
def vimputs(s)
|
||||
@@ -74,19 +74,19 @@ Example Vim script: >
|
||||
Executing Ruby commands is not possible in the |sandbox|.
|
||||
|
||||
==============================================================================
|
||||
2. The VIM module *ruby-vim*
|
||||
2. The Vim module *ruby-vim*
|
||||
|
||||
Ruby code gets all of its access to vim via the "VIM" module.
|
||||
Ruby code gets all of its access to vim via the "Vim" module.
|
||||
|
||||
Overview >
|
||||
Overview: >
|
||||
print "Hello" # displays a message
|
||||
VIM.command(cmd) # execute an Ex command
|
||||
num = VIM::Window.count # gets the number of windows
|
||||
w = VIM::Window[n] # gets window "n"
|
||||
cw = VIM::Window.current # gets the current window
|
||||
num = VIM::Buffer.count # gets the number of buffers
|
||||
b = VIM::Buffer[n] # gets buffer "n"
|
||||
cb = VIM::Buffer.current # gets the current buffer
|
||||
Vim.command(cmd) # execute an Ex command
|
||||
num = Vim::Window.count # gets the number of windows
|
||||
w = Vim::Window[n] # gets window "n"
|
||||
cw = Vim::Window.current # gets the current window
|
||||
num = Vim::Buffer.count # gets the number of buffers
|
||||
b = Vim::Buffer[n] # gets buffer "n"
|
||||
cb = Vim::Buffer.current # gets the current buffer
|
||||
w.height = lines # sets the window height
|
||||
w.cursor = [row, col] # sets the window cursor position
|
||||
pos = w.cursor # gets an array [row, col]
|
||||
@@ -96,29 +96,29 @@ Overview >
|
||||
b[n] = str # sets a line in the buffer
|
||||
b.delete(n) # deletes a line
|
||||
b.append(n, str) # appends a line after n
|
||||
line = VIM::Buffer.current.line # gets the current line
|
||||
num = VIM::Buffer.current.line_number # gets the current line number
|
||||
VIM::Buffer.current.line = "test" # sets the current line number
|
||||
line = Vim::Buffer.current.line # gets the current line
|
||||
num = Vim::Buffer.current.line_number # gets the current line number
|
||||
Vim::Buffer.current.line = "test" # sets the current line number
|
||||
<
|
||||
|
||||
Module Functions:
|
||||
|
||||
*ruby-message*
|
||||
VIM::message({msg})
|
||||
Vim::message({msg})
|
||||
Displays the message {msg}.
|
||||
|
||||
*ruby-set_option*
|
||||
VIM::set_option({arg})
|
||||
Vim::set_option({arg})
|
||||
Sets a vim option. {arg} can be any argument that the ":set" command
|
||||
accepts. Note that this means that no spaces are allowed in the
|
||||
argument! See |:set|.
|
||||
|
||||
*ruby-command*
|
||||
VIM::command({cmd})
|
||||
Vim::command({cmd})
|
||||
Executes Ex command {cmd}.
|
||||
|
||||
*ruby-evaluate*
|
||||
VIM::evaluate({expr})
|
||||
Vim::evaluate({expr})
|
||||
Evaluates {expr} using the vim internal expression evaluator (see
|
||||
|expression|). Returns the expression result as:
|
||||
- a Integer if the Vim expression evaluates to a number
|
||||
@@ -129,9 +129,9 @@ VIM::evaluate({expr})
|
||||
Dictionaries and lists are recursively expanded.
|
||||
|
||||
==============================================================================
|
||||
3. VIM::Buffer objects *ruby-buffer*
|
||||
3. Vim::Buffer objects *ruby-buffer*
|
||||
|
||||
VIM::Buffer objects represent vim buffers.
|
||||
Vim::Buffer objects represent vim buffers.
|
||||
|
||||
Class Methods:
|
||||
|
||||
@@ -159,9 +159,9 @@ line_number Returns the number of the current line if the buffer is
|
||||
active.
|
||||
|
||||
==============================================================================
|
||||
4. VIM::Window objects *ruby-window*
|
||||
4. Vim::Window objects *ruby-window*
|
||||
|
||||
VIM::Window objects represent vim windows.
|
||||
Vim::Window objects represent vim windows.
|
||||
|
||||
Class Methods:
|
||||
|
||||
@@ -199,13 +199,17 @@ This means that Vim will search for the Ruby DLL file or shared library only
|
||||
when needed. When you don't use the Ruby interface you don't need it, thus
|
||||
you can use Vim even though this library file is not on your system.
|
||||
|
||||
|
||||
MS-Windows ~
|
||||
|
||||
You need to install the right version of Ruby for this to work. You can find
|
||||
the package to download from:
|
||||
http://www.garbagecollect.jp/ruby/mswin32/en/download/release.html
|
||||
Currently that is ruby-1.9.1-p429-i386-mswin32.zip
|
||||
|
||||
To use the Ruby interface the Ruby DLL must be in your search path. In a
|
||||
console window type "path" to see what directories are used.
|
||||
console window type "path" to see what directories are used. The 'rubydll'
|
||||
option can be also used to specify the Ruby DLL.
|
||||
|
||||
The name of the DLL must match the Ruby version Vim was compiled with.
|
||||
Currently the name is "msvcrt-ruby191.dll". That is for Ruby 1.9.1. To know
|
||||
@@ -216,5 +220,13 @@ and comment-out the check for _MSC_VER.
|
||||
You may also need to rename the include directory name to match the version,
|
||||
strangely for Ruby 1.9.3 the directory is called 1.9.1.
|
||||
|
||||
|
||||
Unix ~
|
||||
|
||||
The 'rubydll' option can be used to specify the Ruby shared library file
|
||||
instead of DYNAMIC_RUBY_DLL file what was specified at compile time. The
|
||||
version of the shared library must match the Ruby version Vim was compiled
|
||||
with.
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,95 +1,11 @@
|
||||
*if_sniff.txt* For Vim version 7.4. Last change: 2005 Mar 29
|
||||
*if_sniff.txt* For Vim version 7.4. Last change: 2016 Feb 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL
|
||||
by Anton Leherbauer (toni@takefive.co.at)
|
||||
|
||||
|
||||
SNiFF+ and Vim *sniff*
|
||||
|
||||
1. Introduction |sniff-intro|
|
||||
2. Commands |sniff-commands|
|
||||
3. Compiling Vim with SNiFF+ interface |sniff-compiling|
|
||||
|
||||
{Vi does not have any of these commands} *E275* *E274* *E276* *E278* *E279*
|
||||
|
||||
The SNiFF+ interface only works, when Vim was compiled with the |+sniff|
|
||||
feature.
|
||||
|
||||
==============================================================================
|
||||
1. Introduction *sniff-intro*
|
||||
|
||||
The following features for the use with SNiFF+ are available:
|
||||
|
||||
* Vim can be used for all editing requests
|
||||
* SNiFF+ recognizes and updates all browsers when a file is saved in Vim
|
||||
* SNiFF+ commands can be issued directly from Vim
|
||||
|
||||
How to use Vim with SNiFF+
|
||||
1. Make sure SNiFF+ is running.
|
||||
2. In the Editor view of the Preferences dialog set the Field named
|
||||
'External Editor' to 'Emacs/Vim'.
|
||||
4. Start Vim
|
||||
5. Connect to SNiFF+ (:sniff connect)
|
||||
|
||||
Once a connection is established, SNiFF+ uses Vim for all requests to show or
|
||||
edit source code. On the other hand, you can send queries to SNiFF+ with the
|
||||
:sniff command.
|
||||
|
||||
==============================================================================
|
||||
2. Commands *sniff-commands*
|
||||
|
||||
*:sniff* *:sni*
|
||||
:sni[ff] request [symbol] Send request to sniff with optional symbol.
|
||||
{not in Vi}
|
||||
:sni[ff] Display all possible requests and the connection
|
||||
status
|
||||
|
||||
Most requests require a symbol (identifier) as parameter. If it is omitted,
|
||||
Vim will use the current word under the cursor.
|
||||
The available requests are listed below:
|
||||
|
||||
request mapping description
|
||||
-------------------------------------------------------------------------------
|
||||
connect sc Establish connection with SNiFF+.
|
||||
Make sure SNiFF+ is prepared for this in the
|
||||
Preferences
|
||||
disconnect sq Disconnect from SNiFF+. You can reconnect any
|
||||
time with :sniff connect (or 'sc')
|
||||
toggle st Toggle between implementation
|
||||
and definition file
|
||||
find-symbol sf Load the symbol into a Symbol Browser
|
||||
browse-class sb Loads the class into a Class Browser
|
||||
superclass ss Edit superclass of symbol
|
||||
overridden so Edit overridden method of symbol
|
||||
retrieve-file srf Retrieve symbol in current file
|
||||
retrieve-project srp Retrieve symbol in current project
|
||||
retrieve-all-projects srP Retrieve symbol in all projects
|
||||
retrieve-next sR Retrieve symbol using current Retriever
|
||||
settings
|
||||
goto-symbol sg Goto definition or implementation of symbol
|
||||
hierarchy sh Load symbol into the Hierarchy Browser
|
||||
restr-hier sH same as above but show only related classes
|
||||
xref-to sxt Start a refers-to query on symbol and
|
||||
load the results into the Cross Referencer
|
||||
xref-by sxb Start a referred-by query on symbol
|
||||
xref-has sxh Start a refers-to components query on symbol
|
||||
xref-used-by sxu Start a referred-by as component query on
|
||||
symbol
|
||||
show-docu sd Show documentation of symbol
|
||||
gen-docu sD Generate documentation of symbol
|
||||
|
||||
The mappings are defined in a file 'sniff.vim', which is part of every SNiFF+
|
||||
product ($SNIFF_DIR/config/sniff.vim). This file is sourced whenever Vim
|
||||
connects to SNiFF+.
|
||||
|
||||
==============================================================================
|
||||
3. Compiling Vim with SNiFF+ interface *sniff-compiling*
|
||||
|
||||
To compile Vim with SNiFF+ support, you need two source files of the extra
|
||||
archive: if_sniff.c and if_sniff.h.
|
||||
On Unix: Edit the Makefile and uncomment the line "--enable-sniff". Or run
|
||||
configure manually with this argument.
|
||||
On NT: Specify SNIFF=yes with your make command.
|
||||
The SNiFF+ support was removed at patch 7.4.1433. If you want to check it out
|
||||
sync to before that.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_tcl.txt* For Vim version 7.4. Last change: 2012 Aug 02
|
||||
*if_tcl.txt* For Vim version 7.4. Last change: 2016 Jan 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ingo Wilken
|
||||
@@ -515,19 +515,30 @@ startup file (usually "~/.vimrc" on Unix):
|
||||
==============================================================================
|
||||
9. Dynamic loading *tcl-dynamic*
|
||||
|
||||
On MS-Windows the Tcl library can be loaded dynamically. The |:version|
|
||||
output then includes |+tcl/dyn|.
|
||||
On MS-Windows and Unix the Tcl library can be loaded dynamically. The
|
||||
|:version| output then includes |+tcl/dyn|.
|
||||
|
||||
This means that Vim will search for the Tcl DLL file only when needed. When
|
||||
you don't use the Tcl interface you don't need it, thus you can use Vim
|
||||
without this DLL file.
|
||||
This means that Vim will search for the Tcl DLL or shared library file only
|
||||
when needed. When you don't use the Tcl interface you don't need it, thus you
|
||||
can use Vim without this file.
|
||||
|
||||
|
||||
MS-Windows ~
|
||||
|
||||
To use the Tcl interface the Tcl DLL must be in your search path. In a
|
||||
console window type "path" to see what directories are used.
|
||||
console window type "path" to see what directories are used. The 'tcldll'
|
||||
option can be also used to specify the Tcl DLL.
|
||||
|
||||
The name of the DLL must match the Tcl version Vim was compiled with.
|
||||
Currently the name is "tcl83.dll". That is for Tcl 8.3. To know for sure
|
||||
Currently the name is "tcl86.dll". That is for Tcl 8.6. To know for sure
|
||||
edit "gvim.exe" and search for "tcl\d*.dll\c".
|
||||
|
||||
|
||||
Unix ~
|
||||
|
||||
The 'tcldll' option can be used to specify the Tcl shared library file instead
|
||||
of DYNAMIC_TCL_DLL file what was specified at compile time. The version of
|
||||
the shared library must match the Tcl version Vim was compiled with.
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.4. Last change: 2015 Feb 12
|
||||
*index.txt* For Vim version 7.4. Last change: 2016 Mar 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1055,7 +1055,7 @@ tag command action in Command-line editing mode ~
|
||||
|c_<Insert>| <Insert> toggle insert/overstrike mode
|
||||
|c_<LeftMouse>| <LeftMouse> cursor at mouse click
|
||||
|
||||
You found it, Arthur! *holy-grail*
|
||||
You found it, Arthur! *holy-grail* *:smile*
|
||||
|
||||
==============================================================================
|
||||
5. EX commands *ex-cmd-index* *:index*
|
||||
@@ -1138,6 +1138,8 @@ tag command action ~
|
||||
|:cc| :cc go to specific error
|
||||
|:cclose| :ccl[ose] close quickfix window
|
||||
|:cd| :cd change directory
|
||||
|:cdo| :cdo execute command in each valid error list entry
|
||||
|:cfdo| :cfd[o] execute command in each file in error list
|
||||
|:center| :ce[nter] format lines at the center
|
||||
|:cexpr| :cex[pr] read errors from expr and jump to first
|
||||
|:cfile| :cf[ile] read file with error messages and jump to first
|
||||
@@ -1174,7 +1176,7 @@ tag command action ~
|
||||
|:cpfile| :cpf[ile] go to last error in previous file
|
||||
|:cquit| :cq[uit] quit Vim with an error code
|
||||
|:crewind| :cr[ewind] go to the specified error, default first one
|
||||
|:cscope| :cs[cope] execute cscope command
|
||||
|:cscope| :cs[cope] execute cscope command
|
||||
|:cstag| :cst[ag] use cscope to jump to a tag
|
||||
|:cunmap| :cu[nmap] like ":unmap" but for Command-line mode
|
||||
|:cunabbrev| :cuna[bbrev] like ":unabbrev" but for Command-line mode
|
||||
@@ -1295,7 +1297,9 @@ tag command action ~
|
||||
|:lcd| :lc[d] change directory locally
|
||||
|:lchdir| :lch[dir] change directory locally
|
||||
|:lclose| :lcl[ose] close location window
|
||||
|:lcscope| :lcs[cope] like ":cscope" but uses location list
|
||||
|:lcscope| :lcs[cope] like ":cscope" but uses location list
|
||||
|:ldo| :ld[o] execute command in valid location list entries
|
||||
|:lfdo| :lfd[o] execute command in each file in location list
|
||||
|:left| :le[ft] left align lines
|
||||
|:leftabove| :lefta[bove] make split window appear left or above
|
||||
|:let| :let assign a value to a variable or option
|
||||
@@ -1347,7 +1351,7 @@ tag command action ~
|
||||
|:marks| :marks list all marks
|
||||
|:match| :mat[ch] define a match to highlight
|
||||
|:menu| :me[nu] enter a new menu item
|
||||
|:menutranslate| :menut[ranslate] add a menu translation item
|
||||
|:menutranslate| :menut[ranslate] add a menu translation item
|
||||
|:messages| :mes[sages] view previously displayed messages
|
||||
|:mkexrc| :mk[exrc] write current mappings and settings to a file
|
||||
|:mksession| :mks[ession] write session info to a file
|
||||
@@ -1390,6 +1394,8 @@ tag command action ~
|
||||
|:ounmap| :ou[nmap] like ":unmap" but for Operator-pending mode
|
||||
|:ounmenu| :ounme[nu] remove menu for Operator-pending mode
|
||||
|:ownsyntax| :ow[nsyntax] set new local syntax highlight for this window
|
||||
|:packadd| :pa[ckadd] add a plugin from 'packpath'
|
||||
|:packloadall| :packl[oadall] load all packages under 'packpath'
|
||||
|:pclose| :pc[lose] close preview window
|
||||
|:pedit| :ped[it] edit file in the preview window
|
||||
|:perl| :pe[rl] execute Perl command
|
||||
@@ -1491,9 +1497,9 @@ tag command action ~
|
||||
|:smap| :smap like ":map" but for Select mode
|
||||
|:smapclear| :smapc[lear] remove all mappings for Select mode
|
||||
|:smenu| :sme[nu] add menu for Select mode
|
||||
|:smile| :smi[le] make the user happy
|
||||
|:snext| :sn[ext] split window and go to next file in the
|
||||
argument list
|
||||
|:sniff| :sni[ff] send request to sniff
|
||||
|:snomagic| :sno[magic] :substitute with 'nomagic'
|
||||
|:snoremap| :snor[emap] like ":noremap" but for Select mode
|
||||
|:snoremenu| :snoreme[nu] like ":noremenu" but for Select mode
|
||||
@@ -1513,7 +1519,7 @@ tag command action ~
|
||||
|:stop| :st[op] suspend the editor or escape to a shell
|
||||
|:stag| :sta[g] split window and jump to a tag
|
||||
|:startinsert| :star[tinsert] start Insert mode
|
||||
|:startgreplace| :startg[replace] start Virtual Replace mode
|
||||
|:startgreplace| :startg[replace] start Virtual Replace mode
|
||||
|:startreplace| :startr[eplace] start Replace mode
|
||||
|:stopinsert| :stopi[nsert] stop Insert mode
|
||||
|:stjump| :stj[ump] do ":tjump" and split window
|
||||
@@ -1534,14 +1540,14 @@ tag command action ~
|
||||
|:tabdo| :tabdo execute command in each tab page
|
||||
|:tabedit| :tabe[dit] edit a file in a new tab page
|
||||
|:tabfind| :tabf[ind] find file in 'path', edit it in a new tab page
|
||||
|:tabfirst| :tabfir[st] got to first tab page
|
||||
|:tablast| :tabl[ast] got to last tab page
|
||||
|:tabfirst| :tabfir[st] go to first tab page
|
||||
|:tablast| :tabl[ast] go to last tab page
|
||||
|:tabmove| :tabm[ove] move tab page to other position
|
||||
|:tabnew| :tabnew edit a file in a new tab page
|
||||
|:tabnext| :tabn[ext] go to next tab page
|
||||
|:tabonly| :tabo[nly] close all tab pages except the current one
|
||||
|:tabprevious| :tabp[revious] go to previous tab page
|
||||
|:tabrewind| :tabr[ewind] got to first tab page
|
||||
|:tabrewind| :tabr[ewind] go to first tab page
|
||||
|:tabs| :tabs list the tab pages and what they contain
|
||||
|:tab| :tab create new tab when opening new window
|
||||
|:tag| :ta[g] jump to tag
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.4. Last change: 2015 Jun 20
|
||||
*insert.txt* For Vim version 7.4. Last change: 2016 Jan 31
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -152,7 +152,7 @@ CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
|
||||
CTRL-R a results in "ac".
|
||||
CTRL-R CTRL-R a results in "ab^Hc".
|
||||
< Options 'textwidth', 'formatoptions', etc. still apply. If
|
||||
you also want to avoid these, use "<C-R><C-O>r", see below.
|
||||
you also want to avoid these, use CTRL-R CTRL-O, see below.
|
||||
The '.' register (last inserted text) is still inserted as
|
||||
typed. {not in Vi}
|
||||
|
||||
@@ -377,6 +377,9 @@ CTRL-O execute one command, return to Insert mode *i_CTRL-O*
|
||||
CTRL-\ CTRL-O like CTRL-O but don't move the cursor *i_CTRL-\_CTRL-O*
|
||||
CTRL-L when 'insertmode' is set: go to Normal mode *i_CTRL-L*
|
||||
CTRL-G u break undo sequence, start new change *i_CTRL-G_u*
|
||||
CTRL-G U don't break undo with next left/right cursor *i_CTRL-G_U*
|
||||
movement (but only if the cursor stays
|
||||
within same the line)
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
Note: If the cursor keys take you out of Insert mode, check the 'noesckeys'
|
||||
@@ -416,6 +419,28 @@ that, with CTRL-O u. Another example: >
|
||||
This breaks undo at each line break. It also expands abbreviations before
|
||||
this.
|
||||
|
||||
An example for using CTRL-G U: >
|
||||
|
||||
inoremap <Left> <C-G>U<Left>
|
||||
inoremap <Right> <C-G>U<Right>
|
||||
inoremap <expr> <Home> col('.') == match(getline('.'), '\S') + 1 ?
|
||||
\ repeat('<C-G>U<Left>', col('.') - 1) :
|
||||
\ (col('.') < match(getline('.'), '\S') ?
|
||||
\ repeat('<C-G>U<Right>', match(getline('.'), '\S') + 0) :
|
||||
\ repeat('<C-G>U<Left>', col('.') - 1 - match(getline('.'), '\S')))
|
||||
inoremap <expr> <End> repeat('<C-G>U<Right>', col('$') - col('.'))
|
||||
inoremap ( ()<C-G>U<Left>
|
||||
|
||||
This makes it possible to use the cursor keys in Insert mode, without breaking
|
||||
the undo sequence and therefore using |.| (redo) will work as expected.
|
||||
Also entering a text like (with the "(" mapping from above): >
|
||||
|
||||
Lorem ipsum (dolor
|
||||
|
||||
will be repeatable by the |.|to the expected
|
||||
|
||||
Lorem ipsum (dolor)
|
||||
|
||||
Using CTRL-O splits undo: the text typed before and after it is undone
|
||||
separately. If you want to avoid this (e.g., in a mapping) you might be able
|
||||
to use CTRL-R = |i_CTRL-R|. E.g., to call a function: >
|
||||
@@ -1847,8 +1872,6 @@ NOTE: These commands cannot be used with |:global| or |:vglobal|.
|
||||
or script is finished.
|
||||
This command does not work from |:normal|.
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+ex_extra|
|
||||
feature}
|
||||
|
||||
*:stopi* *:stopinsert*
|
||||
:stopi[nsert] Stop Insert mode as soon as possible. Works like
|
||||
@@ -1866,15 +1889,11 @@ NOTE: These commands cannot be used with |:global| or |:vglobal|.
|
||||
script that the replacement will only start after
|
||||
the function or script is finished.
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+ex_extra|
|
||||
feature}
|
||||
|
||||
*:startgreplace*
|
||||
:startg[replace][!] Just like |:startreplace|, but use Virtual Replace
|
||||
mode, like with |gR|.
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+ex_extra|
|
||||
feature}
|
||||
|
||||
==============================================================================
|
||||
10. Inserting a file *inserting-file*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.4. Last change: 2014 Dec 08
|
||||
*map.txt* For Vim version 7.4. Last change: 2016 Jan 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -483,7 +483,7 @@ internal code is written to the script file.
|
||||
|
||||
|
||||
1.6 SPECIAL CHARACTERS *:map-special-chars*
|
||||
*map_backslash*
|
||||
*map_backslash* *map-backslash*
|
||||
Note that only CTRL-V is mentioned here as a special character for mappings
|
||||
and abbreviations. When 'cpoptions' does not contain 'B', a backslash can
|
||||
also be used like CTRL-V. The <> notation can be fully used then |<>|. But
|
||||
@@ -494,21 +494,21 @@ To map a backslash, or use a backslash literally in the {rhs}, the special
|
||||
sequence "<Bslash>" can be used. This avoids the need to double backslashes
|
||||
when using nested mappings.
|
||||
|
||||
*map_CTRL-C*
|
||||
*map_CTRL-C* *map-CTRL-C*
|
||||
Using CTRL-C in the {lhs} is possible, but it will only work when Vim is
|
||||
waiting for a key, not when Vim is busy with something. When Vim is busy
|
||||
CTRL-C interrupts/breaks the command.
|
||||
When using the GUI version on MS-Windows CTRL-C can be mapped to allow a Copy
|
||||
command to the clipboard. Use CTRL-Break to interrupt Vim.
|
||||
|
||||
*map_space_in_lhs*
|
||||
*map_space_in_lhs* *map-space_in_lhs*
|
||||
To include a space in {lhs} precede it with a CTRL-V (type two CTRL-Vs for
|
||||
each space).
|
||||
*map_space_in_rhs*
|
||||
*map_space_in_rhs* *map-space_in_rhs*
|
||||
If you want a {rhs} that starts with a space, use "<Space>". To be fully Vi
|
||||
compatible (but unreadable) don't use the |<>| notation, precede {rhs} with a
|
||||
single CTRL-V (you have to type CTRL-V two times).
|
||||
*map_empty_rhs*
|
||||
*map_empty_rhs* *map-empty-rhs*
|
||||
You can create an empty {rhs} by typing nothing after a single CTRL-V (you
|
||||
have to type CTRL-V two times). Unfortunately, you cannot do this in a vimrc
|
||||
file.
|
||||
@@ -583,7 +583,7 @@ Upper and lowercase differences are ignored.
|
||||
It is not possible to put a comment after these commands, because the '"'
|
||||
character is considered to be part of the {lhs} or {rhs}.
|
||||
|
||||
*map_bar*
|
||||
*map_bar* *map-bar*
|
||||
Since the '|' character is used to separate a map command from the next
|
||||
command, you will have to do something special to include a '|' in {rhs}.
|
||||
There are three methods:
|
||||
@@ -601,7 +601,7 @@ When 'b' is present in 'cpoptions', "\|" will be recognized as a mapping
|
||||
ending in a '\' and then another command. This is Vi compatible, but
|
||||
illogical when compared to other commands.
|
||||
|
||||
*map_return*
|
||||
*map_return* *map-return*
|
||||
When you have a mapping that contains an Ex command, you need to put a line
|
||||
terminator after it to have it executed. The use of <CR> is recommended for
|
||||
this (see |<>|). Example: >
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 7.4. Last change: 2013 Feb 23
|
||||
*message.txt* For Vim version 7.4. Last change: 2016 Feb 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -476,8 +476,6 @@ in memory, you can reduce that with these options:
|
||||
helps for a change that affects all lines.
|
||||
- 'undoreload' Set to zero to disable.
|
||||
|
||||
Also see |msdos-limitations|.
|
||||
|
||||
*E339* >
|
||||
Pattern too long
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mlang.txt* For Vim version 7.4. Last change: 2012 Jan 15
|
||||
*mlang.txt* For Vim version 7.4. Last change: 2016 Jan 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -97,13 +97,15 @@ If you used the self-installing .exe file, message translations should work
|
||||
already. Otherwise get the libintl.dll file if you don't have it yet:
|
||||
|
||||
http://sourceforge.net/projects/gettext
|
||||
Or:
|
||||
https://mlocati.github.io/gettext-iconv-windows/
|
||||
|
||||
This also contains tools xgettext, msgformat and others.
|
||||
|
||||
libintl.dll should be placed in same directory with (g)vim.exe, or some
|
||||
place where PATH environment value describe. Message files (vim.mo)
|
||||
have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES", where "xx" is the
|
||||
abbreviation of the language (mostly two letters).
|
||||
place where PATH environment value describe. Vim also finds libintl-8.dll.
|
||||
Message files (vim.mo) have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES",
|
||||
where "xx" is the abbreviation of the language (mostly two letters).
|
||||
|
||||
If you write your own translations you need to generate the .po file and
|
||||
convert it to a .mo file. You need to get the source distribution and read
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
*netbeans.txt* For Vim version 7.4. Last change: 2015 Mar 14
|
||||
*netbeans.txt* For Vim version 7.4. Last change: 2016 Feb 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur et al.
|
||||
|
||||
|
||||
*socket-interface* *netbeans* *netbeans-support*
|
||||
*netbeans* *netbeans-support*
|
||||
|
||||
Vim NetBeans Protocol: a socket interface for Vim integration into an IDE.
|
||||
|
||||
@@ -194,6 +194,8 @@ There are two different ways to run Vim in NetBeans mode:
|
||||
+ an IDE may start Vim with the |-nb| command line argument
|
||||
+ NetBeans can be started from within Vim with the |:nbstart| command
|
||||
|
||||
Vim uses a 3 second timeout on trying to make the connection.
|
||||
|
||||
*netbeans-parameters*
|
||||
Three forms can be used to setup the NetBeans connection parameters.
|
||||
When started from the command line, the |-nb| command line argument may be:
|
||||
@@ -823,7 +825,7 @@ REJECT Not used.
|
||||
6.7 Protocol errors *nb-protocol_errors*
|
||||
|
||||
These errors occur when a message violates the protocol:
|
||||
*E627* *E628* *E629* *E630* *E631* *E632* *E633* *E634* *E635* *E636*
|
||||
*E627* *E628* *E629* *E632* *E633* *E634* *E635* *E636*
|
||||
*E637* *E638* *E639* *E640* *E641* *E642* *E643* *E644* *E645* *E646*
|
||||
*E647* *E648* *E649* *E650* *E651* *E652* *E653* *E654*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.4. Last change: 2015 Jul 10
|
||||
*options.txt* For Vim version 7.4. Last change: 2016 Mar 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -50,16 +50,26 @@ achieve special effects. These options come in three forms:
|
||||
:se[t] {option}&vi Reset option to its Vi default value. {not in Vi}
|
||||
:se[t] {option}&vim Reset option to its Vim default value. {not in Vi}
|
||||
|
||||
:se[t] all& Set all options, except terminal options, to their
|
||||
default value. The values of 'term', 'lines' and
|
||||
'columns' are not changed. {not in Vi}
|
||||
:se[t] all& Set all options to their default value. The values of
|
||||
these options are not changed:
|
||||
all terminal options, starting with t_
|
||||
'columns'
|
||||
'cryptmethod'
|
||||
'encoding'
|
||||
'key'
|
||||
'lines'
|
||||
'term'
|
||||
'ttymouse'
|
||||
'ttytype'
|
||||
Warning: This may have a lot of side effects.
|
||||
{not in Vi}
|
||||
|
||||
*:set-args* *E487* *E521*
|
||||
:se[t] {option}={value} or
|
||||
:se[t] {option}:{value}
|
||||
Set string or number option to {value}.
|
||||
For numeric options the value can be given in decimal,
|
||||
hex (preceded with 0x) or octal (preceded with '0').
|
||||
hex (preceded with 0x) or octal (preceded with '0').
|
||||
The old value can be inserted by typing 'wildchar' (by
|
||||
default this is a <Tab> or CTRL-E if 'compatible' is
|
||||
set). See |cmdline-completion|.
|
||||
@@ -786,7 +796,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
line.
|
||||
When 'smartindent' or 'cindent' is on the indent is changed in
|
||||
a different way.
|
||||
The 'autoindent' option is reset when the 'paste' option is set.
|
||||
The 'autoindent' option is reset when the 'paste' option is set and
|
||||
restored when 'paste' is reset.
|
||||
{small difference from Vi: After the indent is deleted when typing
|
||||
<Esc> or <CR>, the cursor position when moving up or down is after the
|
||||
deleted indent; Vi puts the cursor somewhere in the deleted indent}.
|
||||
@@ -991,7 +1002,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
- The backup file will be created in the first directory in the list
|
||||
where this is possible. The directory must exist, Vim will not
|
||||
create it for you.
|
||||
- Empty means that no backup file will be created ( 'patchmode' is
|
||||
- Empty means that no backup file will be created ('patchmode' is
|
||||
impossible!). Writing may fail because of this.
|
||||
- A directory "." means to put the backup file in the same directory
|
||||
as the edited file.
|
||||
@@ -1124,6 +1135,47 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
expression evaluates to a |List| this is equal to using each List item
|
||||
as a string and putting "\n" in between them.
|
||||
|
||||
*'belloff'* *'bo'*
|
||||
'belloff' 'bo' string (default "")
|
||||
global
|
||||
{not in Vi}
|
||||
Specifies for which events the bell will not be rung. It is a comma
|
||||
separated list of items. For each item that is present, the bell
|
||||
will be silenced. This is most useful to specify specific events in
|
||||
insert mode to be silenced.
|
||||
|
||||
item meaning when present ~
|
||||
all All events.
|
||||
backspace When hitting <BS> or <Del> and deleting results in an
|
||||
error.
|
||||
cursor Fail to move around using the cursor keys or
|
||||
<PageUp>/<PageDown> in |Insert-mode|.
|
||||
complete Error occurred when using |i_CTRL-X_CTRL-K| or
|
||||
|i_CTRL-X_CTRL-T|.
|
||||
copy Cannot copy char from insert mode using |i_CTRL-Y| or
|
||||
|i_CTRL-E|.
|
||||
ctrlg Unknown Char after <C-G> in Insert mode.
|
||||
error Other Error occurred (e.g. try to join last line)
|
||||
(mostly used in |Normal-mode| or |Cmdline-mode|).
|
||||
esc hitting <Esc> in |Normal-mode|.
|
||||
ex In |Visual-mode|, hitting |Q| results in an error.
|
||||
hangul Error occurred when using hangul input.
|
||||
insertmode Pressing <Esc> in 'insertmode'.
|
||||
lang Calling the beep module for Lua/Mzscheme/TCL.
|
||||
mess No output available for |g<|.
|
||||
showmatch Error occurred for 'showmatch' function.
|
||||
operator Empty region error |cpo-E|.
|
||||
register Unknown register after <C-R> in |Insert-mode|.
|
||||
shell Bell from shell output |:!|.
|
||||
spell Error happened on spell suggest.
|
||||
wildmode More matches in |cmdline-completion| available
|
||||
(depends on the 'wildmode' setting).
|
||||
|
||||
This is most useful, to fine tune when in insert mode the bell should
|
||||
be rung. For normal mode and ex commands, the bell is often rung to
|
||||
indicate that an error occurred. It can be silenced by adding the
|
||||
"error" keyword.
|
||||
|
||||
*'binary'* *'bin'* *'nobinary'* *'nobin'*
|
||||
'binary' 'bin' boolean (default off)
|
||||
local to buffer
|
||||
@@ -1159,10 +1211,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'bioskey' 'biosk' boolean (default on)
|
||||
global
|
||||
{not in Vi} {only for MS-DOS}
|
||||
When on the BIOS is called to obtain a keyboard character. This works
|
||||
better to detect CTRL-C, but only works for the console. When using a
|
||||
terminal over a serial port reset this option.
|
||||
Also see |'conskey'|.
|
||||
This was for MS-DOS and is no longer supported.
|
||||
|
||||
*'bomb'* *'nobomb'*
|
||||
'bomb' boolean (default off)
|
||||
@@ -1196,7 +1245,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
break if 'linebreak' is on. Only works for ASCII and also for 8-bit
|
||||
characters when 'encoding' is an 8-bit encoding.
|
||||
|
||||
*'breakindent'* *'bri'*
|
||||
*'breakindent'* *'bri'* *'nobreakindent'* *'nobri'*
|
||||
'breakindent' 'bri' boolean (default off)
|
||||
local to window
|
||||
{not in Vi}
|
||||
@@ -1743,7 +1792,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
when CTRL-P or CTRL-N are used. It is also used for whole-line
|
||||
completion |i_CTRL-X_CTRL-L|. It indicates the type of completion
|
||||
and the places to scan. It is a comma separated list of flags:
|
||||
. scan the current buffer ( 'wrapscan' is ignored)
|
||||
. scan the current buffer ('wrapscan' is ignored)
|
||||
w scan buffers from other windows
|
||||
b scan other loaded buffers that are in the buffer list
|
||||
u scan the unloaded buffers that are in the buffer list
|
||||
@@ -1894,13 +1943,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'conskey' 'consk' boolean (default off)
|
||||
global
|
||||
{not in Vi} {only for MS-DOS}
|
||||
When on direct console I/O is used to obtain a keyboard character.
|
||||
This should work in most cases. Also see |'bioskey'|. Together,
|
||||
three methods of console input are available:
|
||||
'conskey' 'bioskey' action ~
|
||||
on on or off direct console input
|
||||
off on BIOS
|
||||
off off STDIN
|
||||
This was for MS-DOS and is no longer supported.
|
||||
|
||||
*'copyindent'* *'ci'* *'nocopyindent'* *'noci'*
|
||||
'copyindent' 'ci' boolean (default off)
|
||||
@@ -1917,7 +1960,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
NOTE: 'copyindent' is reset when 'compatible' is set.
|
||||
Also see 'preserveindent'.
|
||||
|
||||
*'cpoptions'* *'cpo'*
|
||||
*'cpoptions'* *'cpo'* *cpo*
|
||||
'cpoptions' 'cpo' string (Vim default: "aABceFs",
|
||||
Vi default: all flags)
|
||||
global
|
||||
@@ -2243,12 +2286,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
the encrypted bytes will be different.
|
||||
*blowfish2*
|
||||
blowfish2 Blowfish method. Medium strong encryption. Requires
|
||||
Vim 7.4.399 or later, files can NOT be read by Vim 7.3
|
||||
Vim 7.4.401 or later, files can NOT be read by Vim 7.3
|
||||
and older. This adds a "seed" to the file, every time
|
||||
you write the file the encrypted bytes will be
|
||||
different. The whole undo file is encrypted, not just
|
||||
the pieces of text.
|
||||
|
||||
You should use "blowfish2", also to re-encrypt older files.
|
||||
|
||||
When reading an encrypted file 'cryptmethod' will be set automatically
|
||||
to the detected method of the file being read. Thus if you write it
|
||||
without changing 'cryptmethod' the same method will be used.
|
||||
@@ -2601,6 +2646,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
also 'gdefault' option.
|
||||
Switching this option on is discouraged!
|
||||
|
||||
*'emoji'* *'emo'*
|
||||
'emoji' 'emo' boolean (default: on)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+multi_byte|
|
||||
feature}
|
||||
When on all Unicode emoji characters are considered to be full width.
|
||||
|
||||
|
||||
*'encoding'* *'enc'* *E543*
|
||||
'encoding' 'enc' string (default: "latin1" or value from $LANG)
|
||||
global
|
||||
@@ -2671,15 +2725,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
local to buffer
|
||||
{not in Vi}
|
||||
When writing a file and this option is off and the 'binary' option
|
||||
is on, no <EOL> will be written for the last line in the file. This
|
||||
option is automatically set when starting to edit a new file, unless
|
||||
the file does not have an <EOL> for the last line in the file, in
|
||||
which case it is reset. Normally you don't have to set or reset this
|
||||
option. When 'binary' is off the value is not used when writing the
|
||||
file. When 'binary' is on it is used to remember the presence of a
|
||||
<EOL> for the last line in the file, so that when you write the file
|
||||
the situation from the original file can be kept. But you can change
|
||||
it if you want to.
|
||||
is on, or 'fixeol' option is off, no <EOL> will be written for the
|
||||
last line in the file. This option is automatically set or reset when
|
||||
starting to edit a new file, depending on whether file has an <EOL>
|
||||
for the last line in the file. Normally you don't have to set or
|
||||
reset this option.
|
||||
When 'binary' is off and 'fixeol' is on the value is not used when
|
||||
writing the file. When 'binary' is on or 'fixeol' is off it is used
|
||||
to remember the presence of a <EOL> for the last line in the file, so
|
||||
that when you write the file the situation from the original file can
|
||||
be kept. But you can change it if you want to.
|
||||
|
||||
*'equalalways'* *'ea'* *'noequalalways'* *'noea'*
|
||||
'equalalways' 'ea' boolean (default on)
|
||||
@@ -2720,7 +2775,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
makes a difference for error messages, the bell will be used always
|
||||
for a lot of errors without a message (e.g., hitting <Esc> in Normal
|
||||
mode). See 'visualbell' on how to make the bell behave like a beep,
|
||||
screen flash or do nothing.
|
||||
screen flash or do nothing. See 'belloff' to finetune when to ring the
|
||||
bell.
|
||||
|
||||
*'errorfile'* *'ef'*
|
||||
'errorfile' 'ef' string (Amiga default: "AztecC.Err",
|
||||
@@ -2782,6 +2838,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
<Tab>. Spaces are used in indents with the '>' and '<' commands and
|
||||
when 'autoindent' is on. To insert a real tab when 'expandtab' is
|
||||
on, use CTRL-V<Tab>. See also |:retab| and |ins-expandtab|.
|
||||
This option is reset when the 'paste' option is set and restored when
|
||||
the 'paste' option is reset.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
|
||||
*'exrc'* *'ex'* *'noexrc'* *'noex'*
|
||||
@@ -2974,8 +3032,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
file only, the option is not changed.
|
||||
When 'binary' is set, the value of 'fileformats' is not used.
|
||||
|
||||
Note that when Vim starts up with an empty buffer this option is not
|
||||
used. Set 'fileformat' in your .vimrc instead.
|
||||
When Vim starts up with an empty buffer the first item is used. You
|
||||
can overrule this by setting 'fileformat' in your .vimrc.
|
||||
|
||||
For systems with a Dos-like <EOL> (<CR><NL>), when reading files that
|
||||
are ":source"ed and for vimrc files, automatic <EOL> detection may be
|
||||
@@ -3040,17 +3098,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
item default Used for ~
|
||||
stl:c ' ' or '^' statusline of the current window
|
||||
stlnc:c ' ' or '-' statusline of the non-current windows
|
||||
stlnc:c ' ' or '=' statusline of the non-current windows
|
||||
vert:c '|' vertical separators |:vsplit|
|
||||
fold:c '-' filling 'foldtext'
|
||||
diff:c '-' deleted lines of the 'diff' option
|
||||
|
||||
Any one that is omitted will fall back to the default. For "stl" and
|
||||
"stlnc" the space will be used when there is highlighting, '^' or '-'
|
||||
"stlnc" the space will be used when there is highlighting, '^' or '='
|
||||
otherwise.
|
||||
|
||||
Example: >
|
||||
:set fillchars=stl:^,stlnc:-,vert:\|,fold:-,diff:-
|
||||
:set fillchars=stl:^,stlnc:=,vert:\|,fold:-,diff:-
|
||||
< This is similar to the default, except that these characters will also
|
||||
be used when there is highlighting.
|
||||
|
||||
@@ -3064,6 +3122,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
fold:c Folded |hl-Folded|
|
||||
diff:c DiffDelete |hl-DiffDelete|
|
||||
|
||||
*'fixendofline'* *'fixeol'* *'nofixendofline'* *'nofixeol'*
|
||||
'fixendofline' 'fixeol' boolean (default on)
|
||||
local to buffer
|
||||
{not in Vi}
|
||||
When writing a file and this option is on, <EOL> at the end of file
|
||||
will be restored if missing. Turn this option off if you want to
|
||||
preserve the situation from the original file.
|
||||
When the 'binary' option is set the value of this option doesn't
|
||||
matter.
|
||||
See the 'endofline' option.
|
||||
|
||||
*'fkmap'* *'fk'* *'nofkmap'* *'nofk'*
|
||||
'fkmap' 'fk' boolean (default off) *E198*
|
||||
global
|
||||
@@ -3345,7 +3414,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
modeline, see |sandbox-option|. That stops the option from working,
|
||||
since changing the buffer text is not allowed.
|
||||
|
||||
*'fsync'* *'fs'*
|
||||
*'fsync'* *'fs'* *'nofsync'* *'nofs'*
|
||||
'fsync' 'fs' boolean (default on)
|
||||
global
|
||||
{not in Vi}
|
||||
@@ -3674,7 +3743,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The same applies to the modeless selection.
|
||||
*'go-P'*
|
||||
'P' Like autoselect but using the "+ register instead of the "*
|
||||
register.
|
||||
register.
|
||||
*'go-A'*
|
||||
'A' Autoselect for the modeless selection. Like 'a', but only
|
||||
applies to the modeless selection.
|
||||
@@ -4042,7 +4111,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global
|
||||
Ignore case in search patterns. Also used when searching in the tags
|
||||
file.
|
||||
Also see 'smartcase'.
|
||||
Also see 'smartcase' and 'tagcase'.
|
||||
Can be overruled by using "\c" or "\C" in the pattern, see
|
||||
|/ignorecase|.
|
||||
|
||||
@@ -4422,6 +4491,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'*', '"' and '|' (so that CTRL-] on a command finds the help for that
|
||||
command).
|
||||
When the 'lisp' option is on the '-' character is always included.
|
||||
This option also influences syntax highlighting, unless the syntax
|
||||
uses |:syn-iskeyword|.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
@@ -4536,7 +4607,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
feature}
|
||||
This option allows switching your keyboard into a special language
|
||||
mode. When you are typing text in Insert mode the characters are
|
||||
inserted directly. When in command mode the 'langmap' option takes
|
||||
inserted directly. When in Normal mode the 'langmap' option takes
|
||||
care of translating these special characters to the original meaning
|
||||
of the key. This means you don't have to change the keyboard mode to
|
||||
be able to execute Normal mode commands.
|
||||
@@ -4599,7 +4670,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
:source $VIMRUNTIME/menu.vim
|
||||
< Warning: This deletes all menus that you defined yourself!
|
||||
|
||||
*'langnoremap'* *'lnr'*
|
||||
*'langnoremap'* *'lnr'* *'nolangnoremap'* *'nolnr'*
|
||||
'langnoremap' 'lnr' boolean (default off)
|
||||
global
|
||||
{not in Vi}
|
||||
@@ -4780,6 +4851,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Note that using the "-u NONE" and "--noplugin" command line arguments
|
||||
reset this option. |-u| |--noplugin|
|
||||
|
||||
*'luadll'*
|
||||
'luadll' string (default depends on the build)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+lua/dyn|
|
||||
feature}
|
||||
Specifies the name of the Lua shared library. The default is
|
||||
DYNAMIC_LUA_DLL, which was specified at compile time.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'macatsui'* *'nomacatsui'*
|
||||
'macatsui' boolean (default on)
|
||||
global
|
||||
@@ -4941,8 +5023,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
Maximum amount of memory in Kbyte to use for all buffers together.
|
||||
The maximum usable value is about 2000000 (2 Gbyte). Use this to work
|
||||
without a limit. On 64 bit machines higher values might work. But
|
||||
hey, do you really need more than 2 Gbyte for text editing?
|
||||
without a limit.
|
||||
On 64 bit machines higher values might work. But hey, do you really
|
||||
need more than 2 Gbyte for text editing? Keep in mind that text is
|
||||
stored in the swap file, one can edit files > 2 Gbyte anyay. We do
|
||||
need the memory to store undo info.
|
||||
Also see 'maxmem'.
|
||||
|
||||
*'menuitems'* *'mis'*
|
||||
@@ -5032,6 +5117,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
written. A ":set nomodified" command also resets the original
|
||||
values to the current values and the 'modified' option will be
|
||||
reset.
|
||||
Similarly for 'eol' and 'bomb'.
|
||||
This option is not set when a change is made to the buffer as the
|
||||
result of a BufNewFile, BufRead/BufReadPost, BufWritePost,
|
||||
FileAppendPost or VimLeave autocommand event. See |gzip-example| for
|
||||
@@ -5216,7 +5302,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Negative or zero value means no thread scheduling.
|
||||
|
||||
*'nrformats'* *'nf'*
|
||||
'nrformats' 'nf' string (default "octal,hex")
|
||||
'nrformats' 'nf' string (default "bin,octal,hex")
|
||||
local to buffer
|
||||
{not in Vi}
|
||||
This defines what bases Vim will consider for numbers when using the
|
||||
@@ -5224,12 +5310,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
respectively; see |CTRL-A| for more info on these commands.
|
||||
alpha If included, single alphabetical characters will be
|
||||
incremented or decremented. This is useful for a list with a
|
||||
letter index a), b), etc. *octal-nrformats*
|
||||
letter index a), b), etc. *octal-nrformats*
|
||||
octal If included, numbers that start with a zero will be considered
|
||||
to be octal. Example: Using CTRL-A on "007" results in "010".
|
||||
hex If included, numbers starting with "0x" or "0X" will be
|
||||
considered to be hexadecimal. Example: Using CTRL-X on
|
||||
"0x100" results in "0x0ff".
|
||||
bin If included, numbers starting with "0b" or "0B" will be
|
||||
considered to be binary. Example: Using CTRL-X on
|
||||
"0b1000" subtracts one, resulting in "0b0111".
|
||||
Numbers which simply begin with a digit in the range 1-9 are always
|
||||
considered decimal. This also happens for numbers that are not
|
||||
recognized as octal or hex.
|
||||
@@ -5251,7 +5340,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
relative to the cursor. Together with 'number' there are these
|
||||
four combinations (cursor in line 3):
|
||||
|
||||
'nonu' 'nu' 'nonu' 'nu'
|
||||
'nonu' 'nu' 'nonu' 'nu'
|
||||
'nornu' 'nornu' 'rnu' 'rnu'
|
||||
|
||||
|apple | 1 apple | 2 apple | 2 apple
|
||||
@@ -5323,6 +5412,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option was supported on RISC OS, which has been removed.
|
||||
|
||||
|
||||
*'packpath'* *'pp'*
|
||||
'packpath' 'pp' string (default: see 'runtimepath')
|
||||
{not in Vi}
|
||||
Directories used to find packages. See |packages|.
|
||||
|
||||
|
||||
*'paragraphs'* *'para'*
|
||||
'paragraphs' 'para' string (default "IPLPPPQPP TPHPLIPpLpItpplpipbp")
|
||||
global
|
||||
@@ -5348,19 +5443,21 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When the 'paste' option is switched on (also when it was already on):
|
||||
- mapping in Insert mode and Command-line mode is disabled
|
||||
- abbreviations are disabled
|
||||
- 'textwidth' is set to 0
|
||||
- 'wrapmargin' is set to 0
|
||||
- 'autoindent' is reset
|
||||
- 'smartindent' is reset
|
||||
- 'softtabstop' is set to 0
|
||||
- 'expandtab' is reset
|
||||
- 'formatoptions' is used like it is empty
|
||||
- 'revins' is reset
|
||||
- 'ruler' is reset
|
||||
- 'showmatch' is reset
|
||||
- 'formatoptions' is used like it is empty
|
||||
- 'smartindent' is reset
|
||||
- 'smarttab' is reset
|
||||
- 'softtabstop' is set to 0
|
||||
- 'textwidth' is set to 0
|
||||
- 'wrapmargin' is set to 0
|
||||
These options keep their value, but their effect is disabled:
|
||||
- 'lisp'
|
||||
- 'indentexpr'
|
||||
- 'cindent'
|
||||
- 'indentexpr'
|
||||
- 'lisp'
|
||||
NOTE: When you start editing another file while the 'paste' option is
|
||||
on, settings from the modelines or autocommands may change the
|
||||
settings again, causing trouble when pasting text. You might want to
|
||||
@@ -5481,6 +5578,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
< Replace the ';' with a ':' or whatever separator is used. Note that
|
||||
this doesn't work when $INCL contains a comma or white space.
|
||||
|
||||
*'perldll'*
|
||||
'perldll' string (default depends on the build)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+perl/dyn|
|
||||
feature}
|
||||
Specifies the name of the Perl shared library. The default is
|
||||
DYNAMIC_PERL_DLL, which was specified at compile time.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'preserveindent'* *'pi'* *'nopreserveindent'* *'nopi'*
|
||||
'preserveindent' 'pi' boolean (default off)
|
||||
local to buffer
|
||||
@@ -5607,6 +5715,27 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Insert mode completion. When zero as much space as available is used.
|
||||
|ins-completion-menu|.
|
||||
|
||||
*'pythondll'*
|
||||
'pythondll' string (default depends on the build)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+python/dyn|
|
||||
feature}
|
||||
Specifies the name of the Python 2.x shared library. The default is
|
||||
DYNAMIC_PYTHON_DLL, which was specified at compile time.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'pythonthreedll'*
|
||||
'pythonthreedll' string (default depends on the build)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+python3/dyn|
|
||||
feature}
|
||||
Specifies the name of the Python 3 shared library. The default is
|
||||
DYNAMIC_PYTHON3_DLL, which was specified at compile time.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'quoteescape'* *'qe'*
|
||||
'quoteescape' 'qe' string (default "\")
|
||||
@@ -5793,7 +5922,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Inserting characters in Insert mode will work backwards. See "typing
|
||||
backwards" |ins-reverse|. This option can be toggled with the CTRL-_
|
||||
command in Insert mode, when 'allowrevins' is set.
|
||||
NOTE: This option is reset when 'compatible' or 'paste' is set.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
This option is reset when 'paste' is set and restored when 'paste' is
|
||||
reset.
|
||||
|
||||
*'rightleft'* *'rl'* *'norightleft'* *'norl'*
|
||||
'rightleft' 'rl' boolean (default off)
|
||||
@@ -5825,6 +5956,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This is useful for languages such as Hebrew, Arabic and Farsi.
|
||||
The 'rightleft' option must be set for 'rightleftcmd' to take effect.
|
||||
|
||||
*'rubydll'*
|
||||
'rubydll' string (default: depends on the build)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+ruby/dyn|
|
||||
feature}
|
||||
Specifies the name of the Ruby shared library. The default is
|
||||
DYNAMIC_RUBY_DLL, which was specified at compile time.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'ruler'* *'ru'* *'noruler'* *'noru'*
|
||||
'ruler' 'ru' boolean (default off)
|
||||
global
|
||||
@@ -5849,7 +5991,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
separated with a dash.
|
||||
For an empty line "0-1" is shown.
|
||||
For an empty buffer the line number will also be zero: "0,0-1".
|
||||
This option is reset when the 'paste' option is set.
|
||||
This option is reset when 'paste' is set and restored when 'paste' is
|
||||
reset.
|
||||
If you don't want to see the ruler all the time but want to know where
|
||||
you are, use "g CTRL-G" |g_CTRL-G|.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
@@ -6402,6 +6545,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
c don't give |ins-completion-menu| messages. For example,
|
||||
"-- XXX completion (YYY)", "match 1 of 2", "The only match",
|
||||
"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
|
||||
|
||||
This gives you the opportunity to avoid that a change between buffers
|
||||
requires you to hit <Enter>, but still gives as useful a message as
|
||||
@@ -6488,7 +6634,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
jump is only done if the match can be seen on the screen. The time to
|
||||
show the match can be set with 'matchtime'.
|
||||
A Beep is given if there is no match (no matter if the match can be
|
||||
seen or not). This option is reset when the 'paste' option is set.
|
||||
seen or not).
|
||||
This option is reset when 'paste' is set and restored when 'paste' is
|
||||
reset.
|
||||
When the 'm' flag is not included in 'cpoptions', typing a character
|
||||
will immediately move the cursor back to where it belongs.
|
||||
See the "sm" field in 'guicursor' for setting the cursor shape and
|
||||
@@ -6597,8 +6745,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
mapping: ":inoremap # X^H#", where ^H is entered with CTRL-V CTRL-H.
|
||||
When using the ">>" command, lines starting with '#' are not shifted
|
||||
right.
|
||||
NOTE: 'smartindent' is reset when 'compatible' is set. When 'paste'
|
||||
is set smart indenting is disabled.
|
||||
NOTE: 'smartindent' is reset when 'compatible' is set.
|
||||
This option is reset when 'paste' is set and restored when 'paste' is
|
||||
reset.
|
||||
|
||||
*'smarttab'* *'sta'* *'nosmarttab'* *'nosta'*
|
||||
'smarttab' 'sta' boolean (default off)
|
||||
@@ -6614,6 +6763,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
What gets inserted (a <Tab> or spaces) depends on the 'expandtab'
|
||||
option. Also see |ins-expandtab|. When 'expandtab' is not set, the
|
||||
number of spaces is minimized by using <Tab>s.
|
||||
This option is reset when 'paste' is set and restored when 'paste' is
|
||||
reset.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
|
||||
*'softtabstop'* *'sts'*
|
||||
@@ -6628,7 +6779,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
commands like "x" still work on the actual characters.
|
||||
When 'sts' is zero, this feature is off.
|
||||
When 'sts' is negative, the value of 'shiftwidth' is used.
|
||||
'softtabstop' is set to 0 when the 'paste' option is set.
|
||||
'softtabstop' is set to 0 when the 'paste' option is set and restored
|
||||
when 'paste' is reset.
|
||||
See also |ins-expandtab|. When 'expandtab' is not set, the number of
|
||||
spaces is minimized by using <Tab>s.
|
||||
The 'L' flag in 'cpoptions' changes how tabs are used when 'list' is
|
||||
@@ -6705,7 +6857,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
the two-letter, lower case region name. You can use more than one
|
||||
region by listing them: "en_us,en_ca" supports both US and Canadian
|
||||
English, but not words specific for Australia, New Zealand or Great
|
||||
Britain.
|
||||
Britain. (Note: currently en_au and en_nz dictionaries are older than
|
||||
en_ca, en_gb and en_us).
|
||||
If the name "cjk" is included East Asian characters are excluded from
|
||||
spell checking. This is useful when editing text that also has Asian
|
||||
words.
|
||||
@@ -6841,7 +6994,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The option consists of printf style '%' items interspersed with
|
||||
normal text. Each status line item is of the form:
|
||||
%-0{minwid}.{maxwid}{item}
|
||||
All fields except the {item} is optional. A single percent sign can
|
||||
All fields except the {item} are optional. A single percent sign can
|
||||
be given as "%%". Up to 80 items can be specified. *E541*
|
||||
|
||||
When the option starts with "%!" then it is used as an expression,
|
||||
@@ -6949,7 +7102,7 @@ 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
|
||||
@@ -7206,19 +7359,22 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
< [The whitespace before and after the '0' must be a single <Tab>]
|
||||
|
||||
When a binary search was done and no match was found in any of the
|
||||
files listed in 'tags', and 'ignorecase' is set or a pattern is used
|
||||
files listed in 'tags', and case is ignored or a pattern is used
|
||||
instead of a normal tag name, a retry is done with a linear search.
|
||||
Tags in unsorted tags files, and matches with different case will only
|
||||
be found in the retry.
|
||||
|
||||
If a tag file indicates that it is case-fold sorted, the second,
|
||||
linear search can be avoided for the 'ignorecase' case. Use a value
|
||||
of '2' in the "!_TAG_FILE_SORTED" line for this. A tag file can be
|
||||
case-fold sorted with the -f switch to "sort" in most unices, as in
|
||||
the command: "sort -f -o tags tags". For "Exuberant ctags" version
|
||||
5.x or higher (at least 5.5) the --sort=foldcase switch can be used
|
||||
for this as well. Note that case must be folded to uppercase for this
|
||||
to work.
|
||||
linear search can be avoided when case is ignored. Use a value of '2'
|
||||
in the "!_TAG_FILE_SORTED" line for this. A tag file can be case-fold
|
||||
sorted with the -f switch to "sort" in most unices, as in the command:
|
||||
"sort -f -o tags tags". For "Exuberant ctags" version 5.x or higher
|
||||
(at least 5.5) the --sort=foldcase switch can be used for this as
|
||||
well. Note that case must be folded to uppercase for this to work.
|
||||
|
||||
By default, tag searches are case-sensitive. Case is ignored when
|
||||
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
|
||||
"ignore".
|
||||
|
||||
When 'tagbsearch' is off, tags searching is slower when a full match
|
||||
exists, but faster when no full match exists. Tags in unsorted tags
|
||||
@@ -7230,6 +7386,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
command-line completion and ":help").
|
||||
{Vi: always uses binary search in some versions}
|
||||
|
||||
*'tagcase'* *'tc'*
|
||||
'tagcase' 'tc' string (default "followic")
|
||||
global or local to buffer |global-local|
|
||||
{not in Vi}
|
||||
This option specifies how case is handled when searching the tags
|
||||
file:
|
||||
followic Follow the 'ignorecase' option
|
||||
ignore Ignore case
|
||||
match Match case
|
||||
|
||||
*'taglength'* *'tl'*
|
||||
'taglength' 'tl' number (default 0)
|
||||
global
|
||||
@@ -7284,6 +7450,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Resetting this option is useful when using a ":tag" command in a
|
||||
mapping which should not change the tagstack.
|
||||
|
||||
*'tcldll'*
|
||||
'tcldll' string (default depends on the build)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+tcl/dyn|
|
||||
feature}
|
||||
Specifies the name of the Tcl shared library. The default is
|
||||
DYNAMIC_TCL_DLL, which was specified at compile time.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'term'* *E529* *E530* *E531*
|
||||
'term' string (default is $TERM, if that fails:
|
||||
in the GUI: "builtin_gui"
|
||||
@@ -7329,17 +7506,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
Encoding used for the terminal. This specifies what character
|
||||
encoding the keyboard produces and the display will understand. For
|
||||
the GUI it only applies to the keyboard ( 'encoding' is used for the
|
||||
the GUI it only applies to the keyboard ('encoding' is used for the
|
||||
display). Except for the Mac when 'macatsui' is off, then
|
||||
'termencoding' should be "macroman".
|
||||
In the Win32 console version the default value is the console codepage
|
||||
when it differs from the ANSI codepage.
|
||||
*E617*
|
||||
Note: This does not apply to the GTK+ 2 GUI. After the GUI has been
|
||||
successfully initialized, 'termencoding' is forcibly set to "utf-8".
|
||||
Any attempts to set a different value will be rejected, and an error
|
||||
message is shown.
|
||||
For the Win32 GUI 'termencoding' is not used for typed characters,
|
||||
For the Win32 GUI and console versions 'termencoding' is not used,
|
||||
because the Win32 system always passes Unicode characters.
|
||||
When empty, the same encoding is used as for the 'encoding' option.
|
||||
This is the normal value.
|
||||
@@ -7389,8 +7564,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
Maximum width of text that is being inserted. A longer line will be
|
||||
broken after white space to get this width. A zero value disables
|
||||
this. 'textwidth' is set to 0 when the 'paste' option is set. When
|
||||
'textwidth' is zero, 'wrapmargin' may be used. See also
|
||||
this.
|
||||
'textwidth' is set to 0 when the 'paste' option is set and restored
|
||||
when 'paste' is reset.
|
||||
When 'textwidth' is zero, 'wrapmargin' may be used. See also
|
||||
'formatoptions' and |ins-textwidth|.
|
||||
When 'formatexpr' is set it will be used to break the line.
|
||||
NOTE: This option is set to 0 when 'compatible' is set.
|
||||
@@ -7405,6 +7582,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
non-keyword characters (white space is preferred). Maximum line
|
||||
length is 510 bytes.
|
||||
To obtain a file to be used here, check out this ftp site:
|
||||
[Sorry this link doesn't work anymore, do you know the right one?]
|
||||
ftp://ftp.ox.ac.uk/pub/wordlists/ First get the README file.
|
||||
To include a comma in a file name precede it with a backslash. Spaces
|
||||
after a comma are ignored, otherwise spaces are included in the file
|
||||
@@ -7605,13 +7783,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
{only in the GTK+ 2 GUI}
|
||||
Controls the size of toolbar icons. The possible values are:
|
||||
tiny Use tiny toolbar icons.
|
||||
small Use small toolbar icons (default).
|
||||
medium Use medium-sized toolbar icons.
|
||||
large Use large toolbar icons.
|
||||
tiny Use tiny icons.
|
||||
small Use small icons (default).
|
||||
medium Use medium-sized icons.
|
||||
large Use large icons.
|
||||
huge Use even larger icons.
|
||||
giant Use very big icons.
|
||||
The exact dimensions in pixels of the various icon sizes depend on
|
||||
the current theme. Common dimensions are large=32x32, medium=24x24,
|
||||
small=20x20 and tiny=16x16.
|
||||
the current theme. Common dimensions are giant=48x48, huge=32x32,
|
||||
large=24x24, medium=24x24, small=20x20 and tiny=16x16.
|
||||
|
||||
If 'toolbariconsize' is empty, the global default size as determined
|
||||
by user preferences or the current theme is used.
|
||||
@@ -7929,9 +8109,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
% When included, save and restore the buffer list. If Vim is
|
||||
started with a file name argument, the buffer list is not
|
||||
restored. If Vim is started without a file name argument, the
|
||||
buffer list is restored from the viminfo file. Buffers
|
||||
without a file name and buffers for help files are not written
|
||||
to the viminfo file.
|
||||
buffer list is restored from the viminfo file. Quickfix
|
||||
('buftype'), unlisted ('buflisted'), unnamed and buffers on
|
||||
removable media (|viminfo-r|) are not saved.
|
||||
When followed by a number, the number specifies the maximum
|
||||
number of buffers that are stored. Without a number all
|
||||
buffers are stored.
|
||||
@@ -8412,6 +8592,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Options that add a margin, such as 'number' and 'foldcolumn', cause
|
||||
the text width to be further reduced. This is Vi compatible.
|
||||
When 'textwidth' is non-zero, this option is not used.
|
||||
This option is set to 0 when 'paste' is set and restored when 'paste'
|
||||
is reset.
|
||||
See also 'formatoptions' and |ins-textwidth|. {Vi: works differently
|
||||
and less usefully}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_390.txt* For Vim version 7.4. Last change: 2010 May 30
|
||||
*os_390.txt* For Vim version 7.4. Last change: 2016 Feb 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ralf Schandl
|
||||
@@ -108,7 +108,6 @@ Never tested:
|
||||
- Langmap (|'langmap'|)
|
||||
- Python support (|Python|)
|
||||
- Right-to-left mode (|'rightleft'|)
|
||||
- SNiFF+ interface (|sniff|)
|
||||
- TCL interface (|tcl|)
|
||||
...
|
||||
|
||||
|
||||
@@ -94,6 +94,7 @@ Shift-Insert paste text (from clipboard) *<S-Insert>*
|
||||
CTRL-Insert copy Visual text (to clipboard) *<C-Insert>*
|
||||
CTRL-Del cut Visual text (to clipboard) *<C-Del>*
|
||||
Shift-Del cut Visual text (to clipboard) *<S-Del>*
|
||||
CTRL-X cut Visual text (to clipboard)
|
||||
|
||||
These mappings accomplish this (Win32 and DJGPP versions of Vim):
|
||||
|
||||
@@ -102,6 +103,7 @@ Shift-Insert <M-N><M-T> "*P "-d"*P <C-R><C-O>*
|
||||
CTRL-Insert <M-N><M-U> "*y
|
||||
Shift-Del <M-N><M-W> "*d
|
||||
CTRL-Del <M-N><M-X> "*d
|
||||
CTRL-X <C-X> "*d
|
||||
|
||||
Or these mappings (non-Win32 version of Vim):
|
||||
|
||||
|
||||
@@ -1,276 +1,15 @@
|
||||
*os_msdos.txt* For Vim version 7.4. Last change: 2005 Mar 29
|
||||
*os_msdos.txt* For Vim version 7.4. Last change: 2016 Feb 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
*msdos* *ms-dos* *MSDOS* *MS-DOS*
|
||||
This file contains the particularities for the MS-DOS version of Vim.
|
||||
This file used to contain the particularities for the MS-DOS version of Vim.
|
||||
MS-DOS support was removed in patch 7.4.1399. If you want to use it you will
|
||||
need to get a version older than that. Note that the MS-DOS version doesn't
|
||||
work, there is not enough memory. The DOS32 version (using DJGPP) might still
|
||||
work on older systems.
|
||||
|
||||
1. Two versions for MS-DOS |msdos-versions|
|
||||
2. Known problems |msdos-problems|
|
||||
3. Long file names |msdos-longfname|
|
||||
4. Termcap codes |msdos-termcap|
|
||||
5. Shifted arrow keys |msdos-arrows|
|
||||
6. Filename extensions |msdos-fname-extensions|
|
||||
7. Memory usage and limitations |msdos-limitations|
|
||||
8. Symbolically linked files |msdos-linked-files|
|
||||
9. Copy/paste in a dos box |msdos-copy-paste|
|
||||
|
||||
Additionally, there are a number of common Win32 and DOS items:
|
||||
File locations |dos-locations|
|
||||
Using backslashes |dos-backslash|
|
||||
Standard mappings |dos-standard-mappings|
|
||||
Screen output and colors |dos-colors|
|
||||
File formats |dos-file-formats|
|
||||
:cd command |dos-:cd|
|
||||
Interrupting |dos-CTRL-Break|
|
||||
Temp files |dos-temp-files|
|
||||
Shell option default |dos-shell|
|
||||
|
||||
For compiling Vim see src/INSTALL.pc. *msdos-compiling*
|
||||
|
||||
==============================================================================
|
||||
1. Two versions for MS-DOS *msdos-versions*
|
||||
|
||||
There are two versions of Vim that can be used with MS-DOS machines:
|
||||
|
||||
*dos16*
|
||||
Dos16 version Can be used on any MS-DOS system, only uses up to 640 Kbyte of
|
||||
memory. Also runs on OS/2, Windows 95, and NT. Excludes some
|
||||
Vim-specific features (autocommands, syntax highlighting,
|
||||
etc.). Recommended for use on pre-386 machines.
|
||||
*dos32*
|
||||
Dos32 version Requires 386 processor and a |DPMI| driver, uses all
|
||||
available memory. Supports long file names and the Windows
|
||||
clipboard, but NOT on Windows NT. Recommended for MS-DOS,
|
||||
Windows 3.1 and Windows 95.
|
||||
|
||||
There are also two versions that run under Windows:
|
||||
Win32 version Requires Windows 95 or Windows NT, uses all available
|
||||
memory, supports long file names, etc. Has some problems on
|
||||
Windows 95. Recommended for Windows NT. See |os_win32.txt|
|
||||
Win32 GUI Requirements like the Win32 version, but runs in its own
|
||||
window, instead of a console. Has scrollbars, menu, etc.
|
||||
Recommended for Windows 95 and Windows NT. See |gui-w32|.
|
||||
|
||||
It is recommended to use the Dos32 or Win32 version. Although the Dos16
|
||||
version is able to edit very big files, it quickly runs out of memory when
|
||||
making big changes. Disabling undo helps: ":set ul=-1". The screen updating
|
||||
of the Dos16 version is the fastest of the three on DOS or Windows 95; on
|
||||
Windows NT, the Win32 version is just as fast.
|
||||
|
||||
*DPMI*
|
||||
For the Dos32 version, you may need a DPMI driver when running in MS-DOS. If
|
||||
you are running Windows or installed a clever memory manager, it will probably
|
||||
work already. If you get the message "No DPMI", you need to install a DPMI
|
||||
driver. Such a driver is included with the executable in CSDPMI4B.ZIP. Run
|
||||
"cwsdpmi" just before starting Vim each time. Or you might want to include
|
||||
"cwsdpmi -p" in your autoexec.bat to make it resident. The latest version of
|
||||
"CSDPMI*.ZIP" can be obtained from: "ftp.neosoft.com:pub/users/s/sandmann".
|
||||
|
||||
*minimal-features*
|
||||
The 16 bit DOS version has been compiled with minimal features. Check the
|
||||
|+feature-list| which ones are included (marked with a "T").
|
||||
You can include more features by editing feature.h and recompiling.
|
||||
|
||||
==============================================================================
|
||||
2. Known problems *msdos-problems*
|
||||
|
||||
When using smartdrive (MS-DOS 6.x) with write-behind caching, it is possible
|
||||
that Vim will try to create a swap file on a read-only file system (e.g.
|
||||
write protected floppy). You will then be given the message >
|
||||
A serious disk error has occurred .., Retry (r)?
|
||||
There is nothing you can do but unprotect the floppy or switch off the
|
||||
computer. Even CTRL-ALT-DEL will not get you out of this. This is really a
|
||||
problem of smartdrive, not Vim. Smartdrive works fine otherwise. If this
|
||||
bothers you, don't use the write-behind caching.
|
||||
|
||||
Vim can't read swap files that have been opened already, unless the "share"
|
||||
command has been used. If you see stray warnings for existing swap files,
|
||||
include the "share" command in your config.sys or autoexec.bat (see your MSDOS
|
||||
documentation).
|
||||
|
||||
The Dos16 version can only have about 10 files open (in a window or hidden) at
|
||||
one time. With more files you will get error messages when trying to read or
|
||||
write a file, and for filter commands. Or Vim runs out of memory, and random
|
||||
problems may result.
|
||||
|
||||
The Dos32 version cannot have an unlimited number of files open at any one
|
||||
time. The limit depends on the setting of FILES in your CONFIG.SYS. This
|
||||
defaults to 15; if you need to edit a lot of files, you should increase this.
|
||||
If you do not set FILES high enough, you can get strange errors, and shell
|
||||
commands may cause a crash!
|
||||
|
||||
The Dos32 version can work with long file names. When doing file name
|
||||
completion, matches for the short file name will also be found. But this will
|
||||
result in the corresponding long file name. For example, if you have the long
|
||||
file name "this_is_a_test" with the short file name "this_i~1", the command
|
||||
":e *1" will start editing "this_is_a_test".
|
||||
|
||||
When using the Dos32 version and you run into problems with DPMI support,
|
||||
check if there is a program in your config.sys that eats resources. One
|
||||
program known to cause this problem is "netx", which says "NetWare v. 3.26
|
||||
Workstation shell". Replace it with version 3.32 to fix the problem.
|
||||
|
||||
The Dos32 version will parse its arguments to handle quotation. This is good
|
||||
to edit a file with spaces in its name, for example: >
|
||||
vim "program files\accessories\ppp.scp"
|
||||
A side effect is that single quotes are removed. Insert a backslash to avoid
|
||||
that. For example, to edit the file "fi'le.txt": >
|
||||
vim fi\'le.txt
|
||||
|
||||
==============================================================================
|
||||
3. Long file names *msdos-longfname*
|
||||
|
||||
If the Dos32 version is run on Windows 95, it can use long file names. It
|
||||
will work by default. If you want to disable this, use this setting:
|
||||
set LFN=N
|
||||
You can put this in your autoexec.bat file.
|
||||
|
||||
Note: If you have installed DJGPP on your machine, you probably have a
|
||||
"djgpp.env" file, which contains "LFN=n". You need to use "LFN=Y" to switch
|
||||
on using long file names then.
|
||||
|
||||
==============================================================================
|
||||
4. Termcap codes *msdos-termcap*
|
||||
|
||||
If you want to use another output method (e.g., when using a terminal on a COM
|
||||
port), set the terminal name to "pcansi". You can change the termcap options
|
||||
when needed (see |terminal-options|). Note that the
|
||||
normal IBM ansi.sys does not support all the codes of the builtin pcansi
|
||||
terminal. If you use ansi.sys, you will need to delete the termcap entries
|
||||
t_al and t_dl with >
|
||||
:set t_al= t_dl=
|
||||
Otherwise, the screen will not be updated correctly. It is better to use
|
||||
nansi.sys, nnansi.sys, or the like instead of ansi.sys.
|
||||
|
||||
If you want to use Vim on a terminal connected to a COM: port, reset the
|
||||
'bioskey' option. Otherwise the commands will be read from the PC keyboard.
|
||||
CTRL-C and CTRL-P may not work correctly with 'bioskey' reset.
|
||||
|
||||
==============================================================================
|
||||
5. Shifted arrow keys *msdos-arrows*
|
||||
|
||||
Use CTRL-arrow-left and CTRL-arrow-right instead of SHIFT-arrow-left and
|
||||
SHIFT-arrow-right. The arrow-up and arrow-down cannot be used with SHIFT or
|
||||
CTRL.
|
||||
|
||||
==============================================================================
|
||||
6. Filename extensions *msdos-fname-extensions*
|
||||
|
||||
MS-DOS allows for only one file name extension. Therefore, when appending an
|
||||
extension, the '.' in the original file name is replaced with a '_', the name
|
||||
is truncated to 8 characters, and the new extension (e.g., ".swp") is
|
||||
appended. Two examples: "test.c" becomes "test_c.bak", "thisisat.est"
|
||||
becomes "thisisat.bak". To reduce these problems, the default for
|
||||
'backupext' is "~" instead of ".bak". The backup file for "thisisat.est"
|
||||
then becomes "thisisat.es~". The 'shortname' option is not available,
|
||||
because it would always be set.
|
||||
|
||||
==============================================================================
|
||||
7. Memory usage and limitations *msdos-limitations*
|
||||
|
||||
A swap file is used to store most of the text. You should be able to edit
|
||||
very large files. However, memory is used for undo and other things. If you
|
||||
delete a lot of text, you can still run out of memory in the Dos16 version.
|
||||
|
||||
If Vim gives an "Out of memory" warning, you should stop editing. The result
|
||||
of further editing actions is unpredictable. Setting 'undolevels' to 0 saves
|
||||
some memory. Running the maze macros on a big maze is guaranteed to run out
|
||||
of memory, because each change is remembered for undo. In this case set
|
||||
'undolevels' to a negative number. This will switch off undo completely.
|
||||
|
||||
*msdos-clipboard-limits*
|
||||
In the Dos32 version, extended memory is used to avoid these problems.
|
||||
However, if you are using the clipboard, you can still run into memory
|
||||
limitations because the Windows clipboard can only communicate with Vim using
|
||||
Dos memory. This means that the largest amount of text that can be sent to
|
||||
or received from the Windows clipboard is limited by how much free Dos memory
|
||||
is available on your system.
|
||||
|
||||
You can usually maximize the amount of available Dos memory by adding the
|
||||
following lines to Dos's "config.sys" file: >
|
||||
|
||||
DOS=HIGH,UMB
|
||||
DEVICE=C:\WINDOWS\himem.sys
|
||||
DEVICE=C:\WINDOWS\emm386.exe RAM
|
||||
|
||||
Modifying config.sys in this way will also help to make more memory available
|
||||
for the Dos16 version, if you are using that.
|
||||
|
||||
In the Dos16 version the line length is limited to about 32000 characters.
|
||||
When reading a file the lines are automatically split. But editing a line
|
||||
in such a way that it becomes too long may give unexpected results.
|
||||
|
||||
==============================================================================
|
||||
8. Symbolically linked files *msdos-linked-files*
|
||||
|
||||
When using Vim to edit a symbolically linked file on a unix NFS file server,
|
||||
you may run into problems. When writing the file, Vim does not "write
|
||||
through" the symlink. Instead, it deletes the symbolic link and creates a new
|
||||
file in its place.
|
||||
|
||||
On Unix, Vim is prepared for links (symbolic or hard). A backup copy of the
|
||||
original file is made and then the original file is overwritten. This assures
|
||||
that all properties of the file remain the same. On non-Unix systems, the
|
||||
original file is renamed and a new file is written. Only the protection bits
|
||||
are set like the original file. However, this doesn't work properly when
|
||||
working on an NFS-mounted file system where links and other things exist. The
|
||||
only way to fix this in the current version is not making a backup file, by
|
||||
":set nobackup nowritebackup" |'writebackup'|
|
||||
|
||||
A similar problem occurs when mounting a Unix filesystem through Samba or a
|
||||
similar system. When Vim creates a new file it will get the default user ID
|
||||
for the mounted file system. This may be different from the original user ID.
|
||||
To avoid this set the 'backupcopy' option to "yes".
|
||||
|
||||
==============================================================================
|
||||
9. Copy/paste in a dos box *msdos-copy-paste*
|
||||
|
||||
*E450* *E451* *E452* *E453* *E454*
|
||||
The 32 bit version can copy/paste from/to the Windows clipboard directly. Use
|
||||
the "* register. Large amounts of text can be copied this way, but it must be
|
||||
possible to allocate memory for it, see |msdos-clipboard-limits|. When moving
|
||||
text from one Vim to another, the type of the selection
|
||||
(characterwise/linewise/blockwise) is passed on.
|
||||
|
||||
In other versions, the following can be used.
|
||||
|
||||
(posted to comp.editors by John Velman <velman@igate1.hac.com>)
|
||||
|
||||
How to copy/paste text from/to vim in a dos box:
|
||||
|
||||
1) To get VIM to run in a window, instead of full screen, press alt+enter.
|
||||
This toggles back and forth between full screen and a dos window.
|
||||
NOTE: In Windows 95 you must have the property "Fast Pasting" unchecked!
|
||||
In the properties dialog box for the MS-DOS window, go to "MS-DOS
|
||||
Prompt/Misc/Fast pasting" and make sure that it is NOT checked.
|
||||
To make this permanent, change the properties for
|
||||
"\windows\system\conagent.exe" (from Philip Nelson, unverified).
|
||||
|
||||
2) To paste something _into_ Vim, put Vim in insert mode.
|
||||
|
||||
3) Put the text you want to paste on the windows clipboard.
|
||||
|
||||
4) Click the control box in the upper left of the Vim window. (This looks
|
||||
like a big minus sign.) If you don't want to use the mouse, you can get
|
||||
this with alt+spacebar.
|
||||
5) On the resulting dropdown menu choose "Edit".
|
||||
6) On the child dropdown menu choose "Paste".
|
||||
|
||||
To copy something from the Vim window to the clipboard,
|
||||
|
||||
1) Select the control box to get the control drop down menu.
|
||||
2) Select "Edit".
|
||||
3) Select "Mark".
|
||||
4) Using either the keys or the mouse, select the part of the Vim window that
|
||||
you want to copy. To use the keys, use the arrow keys, and hold down shift
|
||||
to extend the selection.
|
||||
5) When you've completed your selection, press 'enter'. The selection
|
||||
is now in the windows clipboard. By the way, this can be any
|
||||
rectangular selection, for example columns 4-25 in rows 7-10. It can
|
||||
include anything in the VIM window: the output of a :!dir, for
|
||||
example.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,221 +1,13 @@
|
||||
*os_os2.txt* For Vim version 7.4. Last change: 2007 Apr 22
|
||||
*os_os2.txt* For Vim version 7.4. Last change: 2015 Dec 31
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Slootman
|
||||
|
||||
|
||||
*os2* *OS2* *OS/2*
|
||||
This file contains the particularities for the OS/2 version of Vim.
|
||||
This file used to contain the particularities for the OS/2 version of Vim.
|
||||
|
||||
At present there is no native PM version of the GUI version of Vim: The OS/2
|
||||
version is a console application. However, there is now a Win32s-compatible
|
||||
GUI version, which should be usable by owners of Warp 4 (which supports
|
||||
Win32s) in a Win-OS/2 session. The notes in this file refer to the native
|
||||
console version.
|
||||
The OS/2 support was removed in patch 7.4.1008.
|
||||
|
||||
|
||||
NOTE
|
||||
|
||||
This OS/2 port works well for me and a couple of other OS/2 users; however,
|
||||
since I haven't had much feedback, that either means no (OS/2-specific) bugs
|
||||
exist (besides the ones mentioned below), or no one has yet created a
|
||||
situation in which any bugs are apparent. File I/O in Dos and Unix mode,
|
||||
binary mode, and FAT handling all seem to work well, which would seem to be
|
||||
the most likely places for trouble.
|
||||
|
||||
A known problem is that files opened by Vim are inherited by other programs
|
||||
that are started via a shell escape from within Vim. This specifically means
|
||||
that Vim won't be able to remove the swap file(s) associated with buffers open
|
||||
at the time the other program was started, until the other program is stopped.
|
||||
At that time, the swap file may be removed, but if Vim could not do that the
|
||||
first time, it won't be removed at all. You'll get warnings that some other
|
||||
Vim session may be editing the file when you start Vim up again on that file.
|
||||
This can be reproduced with ":!start epm". Now quit Vim, and start Vim again
|
||||
with the file that was in the buffer at the time epm was started. I'm working
|
||||
on this!
|
||||
|
||||
A second problem is that Vim doesn't understand the situation when using it
|
||||
when accessing the OS/2 system via the network, e.g. using telnet from a Unix
|
||||
system, and then starting Vim. The problem seems to be that OS/2 =sometimes=
|
||||
recognizes function / cursor keys, and tries to convert those to the
|
||||
corresponding OS/2 codes generated by the "normal" PC keyboard. I've been
|
||||
testing a workaround (mapping the OS/2 codes to the correct functions), but so
|
||||
far I can't say anything conclusive (this is on Warp 3, by the way). In the
|
||||
meantime any help will be appreciated.
|
||||
|
||||
|
||||
PREREQUISITES
|
||||
|
||||
To run Vim, you need the emx runtime environment (at least rev. 0.9b). This
|
||||
is generally available as (ask Archie about it):
|
||||
|
||||
emxrt.zip emx runtime package
|
||||
|
||||
I've included a copy of emx.dll, which should be copied to one of the
|
||||
directories listed in your LIBPATH. Emx is GPL'ed, but the emx.dll library is
|
||||
not (read COPYING.EMX to find out what that means to you).
|
||||
|
||||
This emx.dll is from the emxfix04.zip package, which unfortunately has a bug,
|
||||
eh, I mean a POSIX feature, in select(). Versions of Vim before 3.27 will
|
||||
appear to hang when starting (actually, while processing vimrc). Hit <Enter> a
|
||||
couple of times until Vim starts working if this happens. Next, get an up to
|
||||
date version of Vim!
|
||||
|
||||
|
||||
HELP AND VIMRC FILE
|
||||
|
||||
If you unpack the archive that Vim came in and run Vim directly from where it
|
||||
was unpacked, Vim should be able to find the runtime files and your .vimrc
|
||||
without any settings.
|
||||
|
||||
If you put the runtime files separately from the binary, the VIM environment
|
||||
variable is used to find the location of the help files and the system .vimrc.
|
||||
Place an entry such as this in CONFIG.SYS: >
|
||||
|
||||
SET VIM=c:/local/lib/vim
|
||||
|
||||
Put your .vimrc and your other Vim files in this directory. Copy the runtime
|
||||
directory to this directory. Each version of Vim has its own runtime
|
||||
directory. It will be called something like "c:/local/lib/vim/vim54". Thus
|
||||
you get a tree of Vim files like this:
|
||||
c:/local/lib/vim/.vimrc
|
||||
c:/local/lib/vim/vim54/filetype.vim
|
||||
c:/local/lib/vim/vim54/doc/help.txt
|
||||
etc.
|
||||
|
||||
Note: .vimrc may also be called _vimrc to accommodate those who have chosen to
|
||||
install OS/2 on a FAT file system. Vim first tries to find .vimrc and if that
|
||||
fails, looks for _vimrc in the same place. The existence of a .vimrc or
|
||||
_vimrc file influences the 'compatible' options, which can have unexpected side
|
||||
effects. See |'compatible'|.
|
||||
|
||||
If you're using network drives with OS/2, then you can install Vim on a
|
||||
network drive (including .vimrc; this is then called the "system" vimrc file),
|
||||
and then use a personal copy of .vimrc (the "user" vimrc file). This should be
|
||||
located in a directory indicated by the HOME environment variable.
|
||||
|
||||
|
||||
ENVIRONMENT VARIABLES IN FILE NAMES
|
||||
|
||||
This HOME environment variable is also used when using ~ in file names, so
|
||||
":e ~/textfile" will edit the file "textfile" in the directory referred to by
|
||||
HOME. Additionally you can use other environment variables in file names, as
|
||||
in ":n $SRC/*.c".
|
||||
|
||||
The HOME environment variable is also used to locate the .viminfo file
|
||||
(see |viminfo-file|). There is no support yet for .viminfo on FAT file
|
||||
systems yet, sorry. You could try the -i startup flag (as in "vim -i
|
||||
$HOME/_viminfo") however.
|
||||
|
||||
If the HOME environment variable is not set, the value "C:/" is used as a
|
||||
default.
|
||||
|
||||
|
||||
BACKSLASHES
|
||||
|
||||
Using slashes ('/') and backslashes ('\') can be a bit of a problem (see
|
||||
|dos-backslash| for more explanation), but in almost all cases Vim does "The
|
||||
Right Thing". Vim itself uses backslashes in file names, but will happily
|
||||
accept forward slashes if they are entered (in fact, sometimes that works
|
||||
better!).
|
||||
|
||||
|
||||
TEMP FILES
|
||||
|
||||
Temporary files (for filtering) are put in the first directory in the next
|
||||
list that exists and where a file can be created:
|
||||
$TMP
|
||||
$TEMP
|
||||
C:\TMP
|
||||
C:\TEMP
|
||||
current directory
|
||||
|
||||
|
||||
TERMINAL SETTING
|
||||
|
||||
*os2ansi*
|
||||
Use "os2ansi" as the TERM environment variable (or don't set it at all, as the
|
||||
default is the correct value). You can set term to os2ansi in the .vimrc, in
|
||||
case you need TERM to be a different value for other applications. The
|
||||
problem is that OS/2 ANSI emulation is quite limited (it doesn't have insert /
|
||||
delete line, for example).
|
||||
|
||||
If you want to use a different value for TERM (because of other programs, for
|
||||
example), make sure that the termcap entry for that TERM value has the
|
||||
appropriate key mappings. The termcap.dat distributed with emx does not always
|
||||
have them. Here are some suitable values to add to the termcap entry of your
|
||||
choice; these allow the cursor keys and the named function keys (such as
|
||||
pagedown) to work.
|
||||
|
||||
:ku=\316H:kd=\316P:kl=\316K:kr=\316M:%i=\316t:#4=\316s:\
|
||||
:kD=\316S:kI=\316R:kN=\316Q:kP=\316I:kh=\316G:@7=\316O:\
|
||||
:k1=\316;:k2=\316<:k3=\316=:k4=\316>:k5=\316?:k6=\316@:\
|
||||
:k7=\316A:k8=\316B:k9=\316C:k;=\316D:
|
||||
|
||||
|
||||
Paul Slootman
|
||||
|
||||
|
||||
43 LINE WINDOW
|
||||
|
||||
A suggestion from Steven Tryon, on how to run Vim in a bigger window:
|
||||
|
||||
When I call Vim from an OS/2 WPS application such as PMMail it comes up
|
||||
in the default 25-line mode. To get a more useful window size I make
|
||||
my external editor "vimbig.cmd" which in turn calls "vimbig2.cmd".
|
||||
Brute force and awkwardness, perhaps, but it works.
|
||||
|
||||
vimbig.cmd: >
|
||||
@echo off
|
||||
start "Vi Improved" /f vimbig2.cmd %1 %2 %3 %4
|
||||
|
||||
vimbig2.cmd: >
|
||||
@echo off
|
||||
mode 80,43
|
||||
vim.exe %1 %2 %3 %4
|
||||
exit
|
||||
<
|
||||
|
||||
CLIPBOARD ACCESS (provided by Alexander Wagner)
|
||||
|
||||
Vim for OS/2 has no direct access to the system clipboard. To enable access
|
||||
anyway you need an additional tool which gives you access to the clipboard
|
||||
from within a vio application. The freeware package clipbrd.zip by Stefan
|
||||
Gruendel can be used for this purpose. You might download the package
|
||||
including precompiled binaries and all sources from:
|
||||
http://www.os2site.com/sw/util/clipboard/index.html
|
||||
http://download.uni-hd.de/ftp/pub/os2/pmtools/
|
||||
|
||||
Installation of this package is straight forward: just put the two executables
|
||||
that come with this package into a directory within your PATH for Vim should
|
||||
be able to call them from whatever directory you are working.
|
||||
|
||||
To copy text from the clipboard to your Vim session you can use the :r
|
||||
command. Simply call clipbrd.exe from within Vim in the following way: >
|
||||
|
||||
:r !clipbrd -r
|
||||
|
||||
To copy text from Vim to the system clipboard just mark the text in the usual
|
||||
vim-manner and call: >
|
||||
|
||||
:!clipbrd -w
|
||||
|
||||
which will write your selection right into OS/2's clipboard.
|
||||
|
||||
For ease of use you might want to add some maps for these commands. E.g. to
|
||||
use F11 to paste the clipboard into Vim and F12 to copy selected text to the
|
||||
clipboard you would use: >
|
||||
|
||||
if has("os2")
|
||||
imap <F11> <ESC>:r !clipbrd -r<CR>i
|
||||
vmap <F12> :!clipbrd -w<cr>
|
||||
else
|
||||
imap <F11> <ESC>"*p<CR>i
|
||||
vmap <F12> "*y
|
||||
endif
|
||||
|
||||
This will ensure that only on OS/2 clipbrd is called whereas on other
|
||||
platforms vims build in mechanism is used. (To enable this functions on every
|
||||
load of Vim place the above lines in your .vimrc.)
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 7.4. Last change: 2014 Sep 25
|
||||
*os_win32.txt* For Vim version 7.4. Last change: 2016 Mar 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@@ -96,6 +96,31 @@ The directory of the Vim executable is appended to $PATH. This is mostly to
|
||||
make "!xxd" work, as it is in the Tools menu. And it also means that when
|
||||
executable() returns 1 the executable can actually be executed.
|
||||
|
||||
Quotes in file names *win32-quotes*
|
||||
|
||||
Quotes inside a file name (or any other command line argument) can be escaped
|
||||
with a backslash. E.g. >
|
||||
vim -c "echo 'foo\"bar'"
|
||||
|
||||
Alternatively use three quotes to get one: >
|
||||
vim -c "echo 'foo"""bar'"
|
||||
|
||||
The quotation rules are:
|
||||
|
||||
1. A `"` starts quotation.
|
||||
2. Another `"` or `""` ends quotation. If the quotation ends with `""`, a `"`
|
||||
is produced at the end of the quoted string.
|
||||
|
||||
Examples, with [] around an argument:
|
||||
"foo" -> [foo]
|
||||
"foo"" -> [foo"]
|
||||
"foo"bar -> [foobar]
|
||||
"foo" bar -> [foo], [bar]
|
||||
"foo""bar -> [foo"bar]
|
||||
"foo"" bar -> [foo"], [bar]
|
||||
"foo"""bar" -> [foo"bar]
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. Restore screen contents *win32-restore*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 7.4. Last change: 2015 Mar 16
|
||||
*pattern.txt* For Vim version 7.4. Last change: 2016 Jan 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -393,8 +393,8 @@ Use of "\M" makes the pattern after it be interpreted as if 'nomagic' is used.
|
||||
Use of "\v" means that in the pattern after it all ASCII characters except
|
||||
'0'-'9', 'a'-'z', 'A'-'Z' and '_' have a special meaning. "very magic"
|
||||
|
||||
Use of "\V" means that in the pattern after it only the backslash has a
|
||||
special meaning. "very nomagic"
|
||||
Use of "\V" means that in the pattern after it only the backslash and the
|
||||
terminating character (/ or ?) has a special meaning. "very nomagic"
|
||||
|
||||
Examples:
|
||||
after: \v \m \M \V matches ~
|
||||
@@ -402,6 +402,7 @@ after: \v \m \M \V matches ~
|
||||
$ $ $ \$ matches end-of-line
|
||||
. . \. \. matches any character
|
||||
* * \* \* any number of the previous atom
|
||||
~ ~ \~ \~ latest substitute string
|
||||
() \(\) \(\) \(\) grouping into an atom
|
||||
| \| \| \| separating alternatives
|
||||
\a \a \a \a alphabetic character
|
||||
@@ -480,6 +481,7 @@ More explanation and examples below, follow the links.
|
||||
|/\%v| \%23v \%23v in virtual column 23 |/zero-width|
|
||||
|
||||
Character classes {not in Vi}: */character-classes*
|
||||
magic nomagic matches ~
|
||||
|/\i| \i \i identifier character (see 'isident' option)
|
||||
|/\I| \I \I like "\i", but excluding digits
|
||||
|/\k| \k \k keyword character (see 'iskeyword' option)
|
||||
@@ -510,6 +512,7 @@ Character classes {not in Vi}: */character-classes*
|
||||
class with end-of-line included
|
||||
(end of character classes)
|
||||
|
||||
magic nomagic matches ~
|
||||
|/\e| \e \e <Esc>
|
||||
|/\t| \t \t <Tab>
|
||||
|/\r| \r \r <CR>
|
||||
@@ -535,6 +538,7 @@ Character classes {not in Vi}: */character-classes*
|
||||
|/\Z| \Z \Z ignore differences in Unicode "combining characters".
|
||||
Useful when searching voweled Hebrew or Arabic text.
|
||||
|
||||
magic nomagic matches ~
|
||||
|/\m| \m \m 'magic' on for the following chars in the pattern
|
||||
|/\M| \M \M 'magic' off for the following chars in the pattern
|
||||
|/\v| \v \v the following chars in the pattern are "very magic"
|
||||
@@ -1098,7 +1102,10 @@ x A single character, with no special meaning, matches itself
|
||||
plausible pattern for a UNIX filename: "[-./[:alnum:]_~]\+" That is,
|
||||
a list of at least one character, each of which is either '-', '.',
|
||||
'/', alphabetic, numeric, '_' or '~'.
|
||||
These items only work for 8-bit characters.
|
||||
These items only work for 8-bit characters, except [:lower:] and
|
||||
[:upper:] also work for multi-byte characters when using the new
|
||||
regexp engine. In the future these items may work for multi-byte
|
||||
characters.
|
||||
*/[[=* *[==]*
|
||||
- An equivalence class. This means that characters are matched that
|
||||
have almost the same meaning, e.g., when ignoring accents. This
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 7.4. Last change: 2015 Jan 05
|
||||
*pi_netrw.txt* For Vim version 7.4. Last change: 2016 Feb 16
|
||||
|
||||
------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||
@@ -6,7 +6,7 @@
|
||||
Author: Charles E. Campbell <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
|
||||
Copyright: Copyright (C) 1999-2015 Charles E Campbell *netrw-copyright*
|
||||
Copyright: Copyright (C) 2016 Charles E Campbell *netrw-copyright*
|
||||
The VIM LICENSE applies to the files in this package, including
|
||||
netrw.vim, pi_netrw.txt, netrwFileHandlers.vim, netrwSettings.vim, and
|
||||
syntax/netrw.vim. Like anything else that's free, netrw.vim and its
|
||||
@@ -48,9 +48,10 @@ Copyright: Copyright (C) 1999-2015 Charles E Campbell *netrw-copyright*
|
||||
Introduction To Browsing............................|netrw-intro-browse|
|
||||
Quick Reference: Maps...............................|netrw-browse-maps|
|
||||
Quick Reference: Commands...........................|netrw-browse-cmds|
|
||||
Banner Display......................................|netrw-I|
|
||||
Bookmarking A Directory.............................|netrw-mb|
|
||||
Browsing............................................|netrw-cr|
|
||||
Squeezing the Current Tree-Listing Directory......|:netrw-s-cr|
|
||||
Squeezing the Current Tree-Listing Directory........|netrw-s-cr|
|
||||
Browsing With A Horizontally Split Window...........|netrw-o|
|
||||
Browsing With A New Tab.............................|netrw-t|
|
||||
Browsing With A Vertically Split Window.............|netrw-v|
|
||||
@@ -75,11 +76,13 @@ Copyright: Copyright (C) 1999-2015 Charles E Campbell *netrw-copyright*
|
||||
Making The Browsing Directory The Current Directory.|netrw-c|
|
||||
Marking Files.......................................|netrw-mf|
|
||||
Unmarking Files.....................................|netrw-mF|
|
||||
Marking Files By Location List......................|netrw-qL|
|
||||
Marking Files By QuickFix List......................|netrw-qF|
|
||||
Marking Files By Regular Expression.................|netrw-mr|
|
||||
Marked Files: Arbitrary Shell Command...............|netrw-mx|
|
||||
Marked Files: Arbitrary Shell Command, En Bloc......|netrw-mX|
|
||||
Marked Files: Arbitrary Vim Command.................|netrw-mv|
|
||||
Marked Files: Argument List.........................|netrw-ma| |netrw-mA|
|
||||
Marked Files: Compression And Decompression.........|netrw-mz|
|
||||
Marked Files: Copying...............................|netrw-mc|
|
||||
Marked Files: Diff..................................|netrw-md|
|
||||
@@ -367,7 +370,12 @@ settings are described below, in |netrw-browser-options|, and in
|
||||
fun! MyFuncRef()
|
||||
endfun
|
||||
let g:Netrw_funcref= function("MyFuncRef")
|
||||
|
||||
<
|
||||
*g:Netrw_UserMaps* specifies a function or |List| of functions which can
|
||||
be used to set up user-specified maps and functionality.
|
||||
See |netrw-usermaps|
|
||||
|
||||
*g:netrw_ftp* if it doesn't exist, use default ftp
|
||||
=0 use default ftp (uid password)
|
||||
=1 use alternate ftp method (user uid password)
|
||||
@@ -1064,9 +1072,10 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
< <F1> Causes Netrw to issue help
|
||||
<cr> Netrw will enter the directory or read the file |netrw-cr|
|
||||
<del> Netrw will attempt to remove the file/directory |netrw-del|
|
||||
<c-h> Edit file hiding list |netrw-ctrl-h|
|
||||
<c-l> Causes Netrw to refresh the directory listing |netrw-ctrl-l|
|
||||
<c-r> Browse using a gvim server |netrw-ctrl-r|
|
||||
<c-h> Edit file hiding list |netrw-ctrl-h|
|
||||
<c-l> Causes Netrw to refresh the directory listing |netrw-ctrl-l|
|
||||
<c-r> Browse using a gvim server |netrw-ctrl-r|
|
||||
<c-tab> Shrink/expand a netrw/explore window |netrw-c-tab|
|
||||
- Makes Netrw go up one directory |netrw--|
|
||||
a Toggles between normal display, |netrw-a|
|
||||
hiding (suppress display of files matching g:netrw_list_hide)
|
||||
@@ -1079,6 +1088,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
gd Force treatment as directory |netrw-gd|
|
||||
gf Force treatment as file |netrw-gf|
|
||||
gh Quick hide/unhide of dot-files |netrw-gh|
|
||||
gn Make top of tree the directory below the cursor |netrw-gn|
|
||||
i Cycle between thin, long, wide, and tree listings |netrw-i|
|
||||
mb Bookmark current directory |netrw-mb|
|
||||
mc Copy marked files to marked-file target directory |netrw-mc|
|
||||
@@ -1106,8 +1116,9 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
qb List bookmarked directories and history |netrw-qb|
|
||||
qf Display information on file |netrw-qf|
|
||||
qF Mark files using a quickfix list |netrw-qF|
|
||||
qL Mark files using a |location-list| |netrw-qL|
|
||||
r Reverse sorting order |netrw-r|
|
||||
R Rename the designed file(s)/directory(ies) |netrw-R|
|
||||
R Rename the designated file(s)/directory(ies) |netrw-R|
|
||||
s Select sorting style: by name, time, or file size |netrw-s|
|
||||
S Specify suffix priority for name-sorting |netrw-S|
|
||||
t Enter the file/directory under the cursor in a new tab|netrw-t|
|
||||
@@ -1155,6 +1166,14 @@ QUICK REFERENCE: COMMANDS *netrw-explore-cmds* *netrw-browse-cmds* {{{2
|
||||
:Texplore[!] [dir] Tab & Explore..........................|netrw-explore|
|
||||
:Vexplore[!] [dir] Vertical Split & Explore...............|netrw-explore|
|
||||
|
||||
|
||||
BANNER DISPLAY *netrw-I*
|
||||
|
||||
One may toggle the banner display on and off by pressing "I".
|
||||
|
||||
Also See: |g:netrw_banner|
|
||||
|
||||
|
||||
BOOKMARKING A DIRECTORY *netrw-mb* *netrw-bookmark* *netrw-bookmarks* {{{2
|
||||
|
||||
One may easily "bookmark" the currently browsed directory by using >
|
||||
@@ -1176,10 +1195,10 @@ Addtionally, one may use :NetrwMB to bookmark files or directories. >
|
||||
< No bang: enters files/directories into Netrw's bookmark system
|
||||
|
||||
No argument and in netrw buffer:
|
||||
if there are marked files: bookmark marked files
|
||||
otherwise : bookmark file/directory under cursor
|
||||
if there are marked files : bookmark marked files
|
||||
otherwise : bookmark file/directory under cursor
|
||||
No argument and not in netrw buffer: bookmarks current open file
|
||||
Has arguments: globs them individually and bookmarks them
|
||||
Has arguments : |glob()|s each arg and bookmarks them
|
||||
|
||||
With bang: deletes files/directories from Netrw's bookmark system
|
||||
|
||||
@@ -1196,7 +1215,7 @@ Related Topics:
|
||||
|g:netrw_home| controls where .netrwbook is kept
|
||||
|
||||
|
||||
BROWSING *netrw-cr* {{{2
|
||||
BROWSING *netrw-enter* *netrw-cr* {{{2
|
||||
|
||||
Browsing is simple: move the cursor onto a file or directory of interest.
|
||||
Hitting the <cr> (the return key) will select the file or directory.
|
||||
@@ -1237,11 +1256,21 @@ The price for such re-use is that when changes are made (such as new files
|
||||
are introduced into a directory), the listing may become out-of-date. One may
|
||||
always refresh directory listing buffers by pressing ctrl-L (see
|
||||
|netrw-ctrl-l|).
|
||||
*:netrw-s-cr*
|
||||
Squeezing the Current Tree-Listing Directory~
|
||||
When the tree listing style is enabled (see |netrw-i|) and one is using
|
||||
gvim, then the <s-cr> mapping may be used to squeeze (close) the
|
||||
directory currently containing the cursor.
|
||||
|
||||
*netrw-s-cr*
|
||||
Squeezing the Current Tree-Listing Directory~
|
||||
|
||||
When the tree listing style is enabled (see |netrw-i|) and one is using
|
||||
gvim, then the <s-cr> mapping may be used to squeeze (close) the
|
||||
directory currently containing the cursor.
|
||||
|
||||
Otherwise, one may remap a key combination of one's own choice to get
|
||||
this effect: >
|
||||
|
||||
nmap <buffer> <silent> <nowait> YOURKEYCOMBO <Plug>NetrwTreeSqueeze
|
||||
<
|
||||
Put this line in $HOME/ftplugin/netrw/netrw.vim; it needs to be generated
|
||||
for netrw buffers only.
|
||||
|
||||
Related topics:
|
||||
|netrw-ctrl-r| |netrw-o| |netrw-p|
|
||||
@@ -1396,8 +1425,8 @@ list (unless |g:netrw_dirhistmax| is zero; by default, it's ten). With the
|
||||
the opposite, see |netrw-U|.
|
||||
|
||||
The "u" map also accepts counts to go back in the history several slots.
|
||||
For your convenience, |netrw-qb| lists the history number which can be
|
||||
re-used in that count.
|
||||
For your convenience, qb (see |netrw-qb|) lists the history number which may
|
||||
be used in that count.
|
||||
|
||||
*.netrwhist*
|
||||
See |g:netrw_dirhistmax| for how to control the quantity of history stack
|
||||
@@ -1414,7 +1443,7 @@ CHANGING TO A SUCCESSOR DIRECTORY *netrw-U* *netrw-downdir* {{{2
|
||||
|
||||
With the "U" map, one can change to a later directory (successor).
|
||||
This map is the opposite of the "u" map. (see |netrw-u|) Use the
|
||||
q map to list both the bookmarks and history. (see |netrw-qb|)
|
||||
qb map to list both the bookmarks and history. (see |netrw-qb|)
|
||||
|
||||
The "U" map also accepts counts to go forward in the history several slots.
|
||||
|
||||
@@ -1422,7 +1451,7 @@ See |g:netrw_dirhistmax| for how to control the quantity of history stack
|
||||
slots.
|
||||
|
||||
|
||||
CHANGING TREE TOP *netrw-ntree* *:Ntree* {{{2
|
||||
CHANGING TREE TOP *netrw-ntree* *:Ntree* *netrw-gn* {{{2
|
||||
|
||||
One may specify a new tree top for tree listings using >
|
||||
|
||||
@@ -1432,14 +1461,18 @@ Without a "dirname", the current line is used (and any leading depth
|
||||
information is elided).
|
||||
With a "dirname", the specified directory name is used.
|
||||
|
||||
The "gn" map will take the word below the cursor and use that for
|
||||
changing the top of the tree listing.
|
||||
|
||||
|
||||
NETRW CLEAN *netrw-clean* *:NetrwClean* {{{2
|
||||
|
||||
With :NetrwClean one may easily remove netrw from one's home directory;
|
||||
With NetrwClean one may easily remove netrw from one's home directory;
|
||||
more precisely, from the first directory on your |'runtimepath'|.
|
||||
|
||||
With :NetrwClean!, netrw will remove netrw from all directories on your
|
||||
|'runtimepath'|.
|
||||
With NetrwClean!, netrw will attempt to remove netrw from all directories on
|
||||
your |'runtimepath'|. Of course, you have to have write/delete permissions
|
||||
correct to do this.
|
||||
|
||||
With either form of the command, netrw will first ask for confirmation
|
||||
that the removal is in fact what you want to do. If netrw doesn't have
|
||||
@@ -1456,6 +1489,7 @@ operating system). Netrw allows one to invoke such special handlers by: >
|
||||
* when Exploring, hit the "x" key
|
||||
* when editing, hit gx with the cursor atop the special filename
|
||||
< (latter not available if the |g:netrw_nogx| variable exists)
|
||||
|
||||
Netrw determines which special handler by the following method:
|
||||
|
||||
* if |g:netrw_browsex_viewer| exists, then it will be used to attempt to
|
||||
@@ -1485,7 +1519,8 @@ One may also use visual mode (see |visual-start|) to select the text that the
|
||||
special handler will use. Normally gx uses expand("<cfile>") to pick up the
|
||||
text under the cursor; one may change what |expand()| uses via the
|
||||
|g:netrw_gx| variable. Alternatively, one may select the text to be used by
|
||||
gx via first making a visual selection (see |visual-block|).
|
||||
gx via first making a visual selection (see |visual-block|) or by changing
|
||||
the |'isfname'| option (which is global, so netrw doesn't modify it).
|
||||
|
||||
Associated setting variables:
|
||||
|g:netrw_gx| control how gx picks up the text under the cursor
|
||||
@@ -1631,19 +1666,23 @@ DIRECTORY EXPLORATION COMMANDS {{{2
|
||||
of the current tab. It will open a netrw window on the current
|
||||
directory if [dir] is omitted; a :Lexplore [dir] will show the
|
||||
specified directory in the left-hand side browser display no matter
|
||||
from which window the command is issued. By default, :Lexplore will
|
||||
change an uninitialized |g:netrw_chgwin| to 2; edits will thus
|
||||
preferentially be made in window#2.
|
||||
The [N] specifies a |g:netrw_winsize| just for the new :Lexplore
|
||||
from which window the command is issued.
|
||||
|
||||
By default, :Lexplore will change an uninitialized |g:netrw_chgwin|
|
||||
to 2; edits will thus preferentially be made in window#2.
|
||||
|
||||
The [N] specifies a |g:netrw_winsize| just for the new :Lexplore
|
||||
window.
|
||||
Those who like this method often also like tree style displays;
|
||||
|
||||
Those who like this method often also often like tree style displays;
|
||||
see |g:netrw_liststyle|.
|
||||
|
||||
Also see: |netrw-C| |g:netrw_chgwin| |g:netrw_winsize|
|
||||
|netrw-p| |netrw-P| |g:netrw_browse_split|
|
||||
Also see: |netrw-C| |g:netrw_browse_split| |g:netrw_wiw|
|
||||
|netrw-p| |netrw-P| |g:netrw_chgwin|
|
||||
|netrw-c-tab| |g:netrw_winsize|
|
||||
|
||||
:[N]Lexplore! is like :Lexplore, except that the full-height Explorer window
|
||||
will open on the right hand side, and an uninitialized |g:netrw_chgwin|
|
||||
will open on the right hand side and an uninitialized |g:netrw_chgwin|
|
||||
will be set to 1.
|
||||
|
||||
*netrw-:Sexplore*
|
||||
@@ -1699,8 +1738,9 @@ Also see: |g:netrw_alto| |g:netrw_altv| |g:netrw_winsize|
|
||||
EXPLORING WITH STARS AND PATTERNS {{{2
|
||||
|
||||
When Explore, Sexplore, Hexplore, or Vexplore are used with one of the
|
||||
following four patterns Explore generates a list of files which satisfy
|
||||
the request. >
|
||||
following four patterns Explore generates a list of files which satisfy the
|
||||
request for the local file system. These exploration patterns will not work
|
||||
with remote file browsing.
|
||||
|
||||
*/filepat files in current directory which satisfy filepat
|
||||
**/filepat files in current directory or below which satisfy the
|
||||
@@ -2065,15 +2105,22 @@ Netrw provides several ways to mark files:
|
||||
|
||||
:MF *.c
|
||||
<
|
||||
* Note that :MF uses |<f-args>| to break the line
|
||||
at spaces.
|
||||
(Note that :MF uses |<f-args>| to break the line
|
||||
at spaces)
|
||||
|
||||
* Mark files using the |argument-list| (|netrw-mA|)
|
||||
|
||||
* Mark files based upon a |location-list| (|netrw-qL|)
|
||||
|
||||
* Mark files based upon the quickfix list (|netrw-qF|)
|
||||
(|quickfix-error-lists|)
|
||||
|
||||
The following netrw maps make use of marked files:
|
||||
|
||||
|netrw-a| Hide marked files/directories
|
||||
|netrw-D| Delete marked files/directories
|
||||
|netrw-ma| Move marked files' names to |arglist|
|
||||
|netrw-mA| Move |arglist| filenames to marked file list
|
||||
|netrw-mb| Append marked files to bookmarks
|
||||
|netrw-mB| Delete marked files from bookmarks
|
||||
|netrw-mc| Copy marked files to target
|
||||
@@ -2127,19 +2174,24 @@ is unlikely to be fixed.
|
||||
|
||||
|
||||
UNMARKING FILES *netrw-mF* {{{2
|
||||
(also see |netrw-mf|, |netrw-mu|)
|
||||
|
||||
The "mF" command will unmark all files in the current buffer. One may also use
|
||||
mf (|netrw-mf|) on a specific, already marked, file to unmark just that file.
|
||||
|
||||
MARKING FILES BY LOCATION LIST *netrw-qL* {{{2
|
||||
(also see |netrw-mf|)
|
||||
|
||||
This command will unmark all files in the current buffer. One may also use
|
||||
mf (|netrw-mf|) on a specific file to unmark just that file.
|
||||
One may convert |location-list|s into a marked file list using "qL".
|
||||
You may then proceed with commands such as me (|netrw-me|) to edit them.
|
||||
|
||||
|
||||
MARKING FILES BY QUICKFIX LIST *netrw-qF* {{{2
|
||||
MARKING FILES BY QUICKFIX LIST *netrw-qF* {{{2
|
||||
(also see |netrw-mf|)
|
||||
|
||||
One may convert the |quickfix-error-lists| into a marked file list using
|
||||
"qF". You may then proceed with commands such as me (|netrw-me|) to
|
||||
edit them. Quickfix error lists are generated, for example, by calls
|
||||
to |:vimgrep|.
|
||||
One may convert |quickfix-error-lists| into a marked file list using "qF".
|
||||
You may then proceed with commands such as me (|netrw-me|) to edit them.
|
||||
Quickfix error lists are generated, for example, by calls to |:vimgrep|.
|
||||
|
||||
|
||||
MARKING FILES BY REGULAR EXPRESSION *netrw-mr* {{{2
|
||||
@@ -2157,14 +2209,17 @@ MARKED FILES, ARBITRARY VIM COMMAND *netrw-mv* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the local marked-file list)
|
||||
|
||||
The "mv" map causes netrw execute an arbitrary vim command on each file
|
||||
on the local marked file list, individually:
|
||||
The "mv" map causes netrw to execute an arbitrary vim command on each file on
|
||||
the local marked file list, individually:
|
||||
|
||||
* 1split
|
||||
* sil! keepalt e file
|
||||
* run vim command
|
||||
* sil! keepalt wq!
|
||||
|
||||
A prompt, "Enter vim command: ", will be issued to elicit the vim command
|
||||
you wish used.
|
||||
|
||||
|
||||
MARKED FILES, ARBITRARY SHELL COMMAND *netrw-mx* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
@@ -2196,17 +2251,27 @@ command to be applied to all marked files on the global marked file list. The
|
||||
|
||||
command files
|
||||
|
||||
It is useful, for example, to select files and make a tarball:
|
||||
This approach is useful, for example, to select files and make a tarball: >
|
||||
|
||||
(mark files)
|
||||
mX
|
||||
Enter command: tar cf mynewtarball.tar
|
||||
|
||||
The command that will be run in this example:
|
||||
<
|
||||
The command that will be run with this example:
|
||||
|
||||
tar cf mynewtarball.tar 'file1' 'file2' ...
|
||||
|
||||
|
||||
MARKED FILES: ARGUMENT LIST *netrw-ma* *netrw-mA*
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the global marked-file list)
|
||||
|
||||
Using ma, one moves filenames from the marked file list to the argument list.
|
||||
Using mA, one moves filenames from the argument list to the marked file list.
|
||||
|
||||
See Also: |netrw-qF| |argument-list| |:args|
|
||||
|
||||
|
||||
MARKED FILES: COMPRESSION AND DECOMPRESSION *netrw-mz* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the local marked file list)
|
||||
@@ -2216,7 +2281,7 @@ If any marked files are decompressed, then "mz" will compress them
|
||||
using the command specified by |g:netrw_compress|; by default,
|
||||
that's "gzip".
|
||||
|
||||
For decompression, netrw provides a |Dictionary| of suffices and their
|
||||
For decompression, netrw uses a |Dictionary| of suffices and their
|
||||
associated decompressing utilities; see |g:netrw_decompress|.
|
||||
|
||||
Remember that one can mark multiple files by regular expression
|
||||
@@ -2255,7 +2320,7 @@ MARKED FILES: EDITING *netrw-me* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the global marked file list)
|
||||
|
||||
This command will place the marked files on the |arglist| and commence
|
||||
The "me" command will place the marked files on the |arglist| and commence
|
||||
editing them. One may return the to explorer window with |:Rexplore|.
|
||||
(use |:n| and |:p| to edit next and previous files in the arglist)
|
||||
|
||||
@@ -2263,26 +2328,33 @@ MARKED FILES: GREP *netrw-mg* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the global marked file list)
|
||||
|
||||
This command will apply |:vimgrep| to the marked files.
|
||||
The "mg" command will apply |:vimgrep| to the marked files.
|
||||
The command will ask for the requested pattern; one may then enter: >
|
||||
|
||||
/pattern/[g][j]
|
||||
! /pattern/[g][j]
|
||||
pattern
|
||||
<
|
||||
In the cases of "j" option usage as shown above, "mg" will winnow the current
|
||||
marked file list to just those possessing the specified pattern.
|
||||
Thus, one may use >
|
||||
mr ...file-pattern
|
||||
mg ..contents-pattern
|
||||
to have a marked file list satisfying the file-pattern but containing the
|
||||
desired contents-pattern.
|
||||
With /pattern/, editing will start with the first item on the |quickfix| list
|
||||
that vimgrep sets up (see |:copen|, |:cnext|, |:cprevious|, |:cclose|). The |:vimgrep|
|
||||
command is in use, so without 'g' each line is added to quickfix list only
|
||||
once; with 'g' every match is included.
|
||||
|
||||
With /pattern/j, "mg" will winnow the current marked file list to just those
|
||||
marked files also possessing the specified pattern. Thus, one may use >
|
||||
|
||||
mr ...file-pattern...
|
||||
mg /pattern/j
|
||||
<
|
||||
to have a marked file list satisfying the file-pattern but also restricted to
|
||||
files containing some desired pattern.
|
||||
|
||||
|
||||
MARKED FILES: HIDING AND UNHIDING BY SUFFIX *netrw-mh* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the local marked file list)
|
||||
|
||||
This command extracts the suffices of the marked files and toggles their
|
||||
The "mh" command extracts the suffices of the marked files and toggles their
|
||||
presence on the hiding list. Please note that marking the same suffix
|
||||
this way multiple times will result in the suffix's presence being toggled
|
||||
for each file (so an even quantity of marked files having the same suffix
|
||||
@@ -2311,16 +2383,16 @@ MARKED FILES: PRINTING *netrw-mp* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the local marked file list)
|
||||
|
||||
Netrw will apply the |:hardcopy| command to marked files. What it does
|
||||
is open each file in a one-line window, execute hardcopy, then close the
|
||||
one-line window.
|
||||
When "mp" is used, netrw will apply the |:hardcopy| command to marked files.
|
||||
What netrw does is open each file in a one-line window, execute hardcopy, then
|
||||
close the one-line window.
|
||||
|
||||
|
||||
MARKED FILES: SOURCING *netrw-ms* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the local marked file list)
|
||||
|
||||
Netrw will source the marked files (using vim's |:source| command)
|
||||
With "ms", netrw will source the marked files (using vim's |:source| command)
|
||||
|
||||
|
||||
MARKED FILES: SETTING THE TARGET DIRECTORY *netrw-mt* {{{2
|
||||
@@ -2343,6 +2415,9 @@ Set the marked file copy/move-to target (see |netrw-mc| and |netrw-mm|):
|
||||
This command uses |<q-args>|, so spaces in the directory name are
|
||||
permitted without escaping.
|
||||
|
||||
* With mouse-enabled vim or with gvim, one may select a target by using
|
||||
<c-leftmouse>
|
||||
|
||||
There is only one copy/move-to target at a time in a vim session; ie. the
|
||||
target is a script variable (see |s:var|) and is shared between all netrw
|
||||
windows (in an instance of vim).
|
||||
@@ -2419,9 +2494,13 @@ Related topics:
|
||||
|
||||
|
||||
MARKED FILES: UNMARKING *netrw-mu* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(See |netrw-mf|, |netrw-mF|)
|
||||
|
||||
The "mu" mapping will unmark all currently marked files. This command differs
|
||||
from "mF" as the latter only unmarks files in the current directory whereas
|
||||
"mu" will unmark global and all buffer-local marked files.
|
||||
(see |netrw-mF|)
|
||||
|
||||
The "mu" mapping will unmark all currently marked files.
|
||||
|
||||
*netrw-browser-settings*
|
||||
NETRW BROWSER VARIABLES *netrw-browser-options* *netrw-browser-var* {{{2
|
||||
@@ -2726,6 +2805,21 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
evaluation will be suppressed
|
||||
(see |'ballooneval'|)
|
||||
|
||||
*g:netrw_sizestyle* not defined: actual bytes (default)
|
||||
="b" : actual bytes (default)
|
||||
="h" : human-readable (ex. 5k, 4m, 3g)
|
||||
uses 1000 base
|
||||
="H" : human-readable (ex. 5K, 4M, 3G)
|
||||
uses 1024 base
|
||||
The long listing (|netrw-i|) and query-file
|
||||
maps (|netrw-qf|) will display file size
|
||||
using the specified style.
|
||||
|
||||
*g:netrw_usetab* if this variable exists and is non-zero, then
|
||||
the <tab> map supporting shrinking/expanding a
|
||||
Lexplore or netrw window will be enabled.
|
||||
(see |netrw-c-tab|)
|
||||
|
||||
*g:netrw_remote_mkdir* command for making a remote directory
|
||||
via ftp (also see |g:netrw_mkdir_cmd|)
|
||||
default: "mkdir"
|
||||
@@ -2762,7 +2856,8 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
|netrw-ctrl-r| to use for its server.
|
||||
default: "NETRWSERVER"
|
||||
|
||||
*g:netrw_sort_by* sort by "name", "time", or "size"
|
||||
*g:netrw_sort_by* sort by "name", "time", "size", or
|
||||
"exten".
|
||||
default: "name"
|
||||
|
||||
*g:netrw_sort_direction* sorting direction: "normal" or "reverse"
|
||||
@@ -2874,6 +2969,10 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
take effect, for example).
|
||||
default: 50 (for 50%)
|
||||
|
||||
*g:netrw_wiw* =1 specifies the minimum window width to use
|
||||
when shrinking a netrw/Lexplore window
|
||||
(see |netrw-c-tab|).
|
||||
|
||||
*g:netrw_xstrlen* Controls how netrw computes string lengths,
|
||||
including multi-byte characters' string
|
||||
length. (thanks to N Weibull, T Mechelynck)
|
||||
@@ -2919,7 +3018,7 @@ help on what each of the variables do.
|
||||
|
||||
|
||||
==============================================================================
|
||||
OBTAINING A FILE *netrw-O* {{{2
|
||||
OBTAINING A FILE *netrw-obtain* *netrw-O* {{{2
|
||||
|
||||
If there are no marked files:
|
||||
|
||||
@@ -2949,7 +3048,7 @@ Related topics:
|
||||
* To automatically make the currently browsed directory the current
|
||||
directory, see |g:netrw_keepdir|.
|
||||
|
||||
*netrw-createfile*
|
||||
*netrw-newfile* *netrw-createfile*
|
||||
OPEN A NEW FILE IN NETRW'S CURRENT DIRECTORY *netrw-%* {{{2
|
||||
|
||||
To open a new file in netrw's current directory, press "%". This map
|
||||
@@ -2981,14 +3080,17 @@ These will:
|
||||
will use only 30% of the columns available; the rest of the window
|
||||
is used for the preview window.
|
||||
|
||||
Also see: |g:netrw_chgwin| |netrw-P|
|
||||
Related: if you like this idea, you may also find :Lexplore
|
||||
(|netrw-:Lexplore|) or |g:netrw_chgwin| of interest
|
||||
|
||||
Also see: |g:netrw_chgwin| |netrw-P| |'previewwindow'| |CTRL-W_z| |:pclose|
|
||||
|
||||
|
||||
PREVIOUS WINDOW *netrw-P* *netrw-prvwin* {{{2
|
||||
PREVIOUS WINDOW *netrw-P* *netrw-prvwin* {{{2
|
||||
|
||||
To edit a file or directory in the previously used (last accessed) window (see
|
||||
:he |CTRL-W_p|), press a "P". If there's only one window, then the one window
|
||||
will be horizontally split (by default).
|
||||
To edit a file or directory under the cursor in the previously used (last
|
||||
accessed) window (see :he |CTRL-W_p|), press a "P". If there's only one
|
||||
window, then the one window will be horizontally split (by default).
|
||||
|
||||
If there's more than one window, the previous window will be re-used on
|
||||
the selected file/directory. If the previous window's associated buffer
|
||||
@@ -3006,7 +3108,7 @@ Associated setting variables:
|
||||
Also see: |g:netrw_chgwin| |netrw-p|
|
||||
|
||||
|
||||
REFRESHING THE LISTING *netrw-ctrl-l* *netrw-ctrl_l* {{{2
|
||||
REFRESHING THE LISTING *netrw-refresh* *netrw-ctrl-l* *netrw-ctrl_l* {{{2
|
||||
|
||||
To refresh either a local or remote directory listing, press ctrl-l (<c-l>) or
|
||||
hit the <cr> when atop the ./ directory entry in the listing. One may also
|
||||
@@ -3026,11 +3128,12 @@ RENAMING FILES OR DIRECTORIES *netrw-move* *netrw-rename* *netrw-R* {{{2
|
||||
|
||||
If there are no marked files: (see |netrw-mf|)
|
||||
|
||||
Renaming/moving files and directories involves moving the cursor to the
|
||||
Renaming files and directories involves moving the cursor to the
|
||||
file/directory to be moved (renamed) and pressing "R". You will then be
|
||||
queried for where you want the file/directory to be moved. You may select
|
||||
queried for what you want the file/directory to be renamed to You may select
|
||||
a range of lines with the "V" command (visual selection), and then
|
||||
pressing "R".
|
||||
press "R"; you will be queried for each file as to what you want it
|
||||
renamed to.
|
||||
|
||||
If there are marked files: (see |netrw-mf|)
|
||||
|
||||
@@ -3048,6 +3151,14 @@ If there are marked files: (see |netrw-mf|)
|
||||
This example will mark all *.c files and then rename them to *.cpp
|
||||
files.
|
||||
|
||||
The ctrl-X character has special meaning for renaming files: >
|
||||
|
||||
<c-x> : a single ctrl-x tells netrw to ignore the portion of the response
|
||||
lying between the last '/' and the ctrl-x.
|
||||
|
||||
<c-x><c-x> : a pair of contiguous ctrl-x's tells netrw to ignore any
|
||||
portion of the string preceding the double ctrl-x's.
|
||||
<
|
||||
WARNING:~
|
||||
|
||||
Note that moving files is a dangerous operation; copies are safer. That's
|
||||
@@ -3055,13 +3166,13 @@ If there are marked files: (see |netrw-mf|)
|
||||
the copy fails and the delete does not, you may lose the file.
|
||||
Use at your own risk.
|
||||
|
||||
The g:netrw_rename_cmd variable is used to implement renaming. By default its
|
||||
value is:
|
||||
The g:netrw_rename_cmd variable is used to implement remote renaming. By
|
||||
default its value is:
|
||||
|
||||
ssh HOSTNAME mv
|
||||
|
||||
One may rename a block of files and directories by selecting them with
|
||||
the V (|linewise-visual|).
|
||||
V (|linewise-visual|) when using thin style
|
||||
|
||||
|
||||
SELECTING SORTING STYLE *netrw-s* *netrw-sort* {{{2
|
||||
@@ -3074,18 +3185,19 @@ Related topics: |netrw-r| |netrw-S|
|
||||
Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence|
|
||||
|
||||
|
||||
SETTING EDITING WINDOW *netrw-C* *netrw-:NetrwC* {{{2
|
||||
SETTING EDITING WINDOW *netrw-editwindow* *netrw-C* *netrw-:NetrwC* {{{2
|
||||
|
||||
One may select a netrw window for editing with the "C" mapping, using the
|
||||
:NetrwC [win#] command, or by setting g:netrw_chgwin to the selected window
|
||||
:NetrwC [win#] command, or by setting |g:netrw_chgwin| to the selected window
|
||||
number. Subsequent selection of a file to edit (|netrw-cr|) will use that
|
||||
window.
|
||||
|
||||
* C by itself, will select the current window for editing via
|
||||
|netrw-cr|
|
||||
* C : by itself, will select the current window holding a netrw buffer
|
||||
for editing via |netrw-cr|. The C mapping is only available while in
|
||||
netrw buffers.
|
||||
|
||||
* [count]C the count will be used as the window number to be used
|
||||
for editing via |netrw-cr|.
|
||||
* [count]C : the count will be used as the window number to be used
|
||||
for subsequent editing via |netrw-cr|.
|
||||
|
||||
* :NetrwC will set |g:netrw_chgwin| to the current window
|
||||
|
||||
@@ -3094,12 +3206,91 @@ window.
|
||||
|
||||
Using >
|
||||
let g:netrw_chgwin= -1
|
||||
will restore the default editing behavior (ie. use the current window).
|
||||
will restore the default editing behavior
|
||||
(ie. editing will use the current window).
|
||||
|
||||
Related topics: |netrw-cr| |g:netrw_browse_split|
|
||||
Associated setting variables: |g:netrw_chgwin|
|
||||
|
||||
|
||||
SHRINKING OR EXPANDING A NETRW OR LEXPLORE WINDOW *netrw-c-tab* {{{2
|
||||
|
||||
The <c-tab> key will toggle a netrw or |:Lexplore| window's width,
|
||||
but only if |g:netrw_usetab| exists and is non-zero (and, of course,
|
||||
only if your terminal supports differentiating <c-tab> from a plain
|
||||
<tab>).
|
||||
|
||||
* If the current window is a netrw window, toggle its width
|
||||
(between |g:netrw_wiw| and its original width)
|
||||
|
||||
* Else if there is a |:Lexplore| window in the current tab, toggle
|
||||
its width
|
||||
|
||||
* Else bring up a |:Lexplore| window
|
||||
|
||||
If |g:netrw_usetab| exists or is zero, or if there is a pre-existing mapping
|
||||
for <c-tab>, then the <c-tab> will not be mapped. One may map something other
|
||||
than a <c-tab>, too: (but you'll still need to have had g:netrw_usetab set) >
|
||||
|
||||
nmap <unique> (whatever) <Plug>NetrwShrink
|
||||
<
|
||||
Related topics: |:Lexplore|
|
||||
Associated setting variable: |g:netrw_usetab|
|
||||
|
||||
|
||||
USER SPECIFIED MAPS *netrw-usermaps* {{{1
|
||||
|
||||
One may make customized user maps. Specify a variable, |g:Netrw_UserMaps|,
|
||||
to hold a |List| of lists of keymap strings and function names: >
|
||||
|
||||
[["keymap-sequence","ExampleUserMapFunc"],...]
|
||||
<
|
||||
When netrw is setting up maps for a netrw buffer, if |g:Netrw_UserMaps|
|
||||
exists, then the internal function netrw#UserMaps(islocal) is called.
|
||||
This function goes through all the entries in the |g:Netrw_UserMaps| list:
|
||||
|
||||
* sets up maps: >
|
||||
nno <buffer> <silent> KEYMAP-SEQUENCE
|
||||
:call s:UserMaps(islocal,"ExampleUserMapFunc")
|
||||
< * refreshes if result from that function call is the string
|
||||
"refresh"
|
||||
* if the result string is not "", then that string will be
|
||||
executed (:exe result)
|
||||
* if the result is a List, then the above two actions on results
|
||||
will be taken for every string in the result List
|
||||
|
||||
The user function is passed one argument; it resembles >
|
||||
|
||||
fun! ExampleUserMapFunc(islocal)
|
||||
<
|
||||
where a:islocal is 1 if its a local-directory system call or 0 when
|
||||
remote-directory system call.
|
||||
|
||||
Use netrw#Expose("varname") to access netrw-internal (script-local)
|
||||
variables.
|
||||
Use netrw#Modify("varname",newvalue) to change netrw-internal variables.
|
||||
Use netrw#Call("funcname"[,args]) to call a netrw-internal function with
|
||||
specified arguments.
|
||||
|
||||
Example: Get a copy of netrw's marked file list: >
|
||||
|
||||
let netrwmarkfilelist= netrw#Expose("netrwmarkfilelist")
|
||||
<
|
||||
Example: Modify the value of netrw's marked file list: >
|
||||
|
||||
call netrw#Modify("netrwmarkfilelist",[])
|
||||
<
|
||||
Example: Clear netrw's marked file list via a mapping on gu >
|
||||
" ExampleUserMap: {{{2
|
||||
fun! ExampleUserMap(islocal)
|
||||
call netrw#Modify("netrwmarkfilelist",[])
|
||||
call netrw#Modify('netrwmarkfilemtch_{bufnr("%")}',"")
|
||||
let retval= ["refresh"]
|
||||
return retval
|
||||
endfun
|
||||
let g:Netrw_UserMaps= [["gu","ExampleUserMap"]]
|
||||
<
|
||||
|
||||
10. Problems and Fixes *netrw-problems* {{{1
|
||||
|
||||
(This section is likely to grow as I get feedback)
|
||||
@@ -3274,6 +3465,7 @@ Associated setting variables: |g:netrw_chgwin|
|
||||
The first one (|g:netrw_ssh_cmd|) is the most important; most
|
||||
of the others will use the string in g:netrw_ssh_cmd by
|
||||
default.
|
||||
|
||||
*netrw-p9* *netrw-ml_get*
|
||||
P9. I'm browsing, changing directory, and bang! ml_get errors
|
||||
appear and I have to kill vim. Any way around this?
|
||||
@@ -3300,6 +3492,14 @@ Associated setting variables: |g:netrw_chgwin|
|
||||
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?
|
||||
|
||||
You probably want netrw running as in a side window. If so, you
|
||||
will likely find that ":[N]Lexplore" does what you want. The
|
||||
optional "[N]" allows you to select the quantity of columns you
|
||||
wish the |:Lexplore|r window to start with (see |g:netrw_winsize|
|
||||
for how this parameter works).
|
||||
|
||||
Previous solution:
|
||||
|
||||
* Put the following line in your <.vimrc>:
|
||||
let g:netrw_altv = 1
|
||||
* Edit the current directory: :e .
|
||||
@@ -3313,6 +3513,7 @@ Associated setting variables: |g:netrw_chgwin|
|
||||
<leftmouse> in the browser window and then press the
|
||||
<middlemouse> to select the file.
|
||||
|
||||
|
||||
*netrw-p12*
|
||||
P12. My directory isn't sorting correctly, or unwanted letters are
|
||||
appearing in the listed filenames, or things aren't lining
|
||||
@@ -3390,7 +3591,7 @@ Associated setting variables: |g:netrw_chgwin|
|
||||
to open a swap file.
|
||||
|
||||
(romainl) It looks like you are starting Vim from a protected
|
||||
directory. Start if from your $HOME or another writable
|
||||
directory. Start netrw from your $HOME or other writable
|
||||
directory.
|
||||
|
||||
*netrw-p17*
|
||||
@@ -3414,6 +3615,58 @@ Associated setting variables: |g:netrw_chgwin|
|
||||
"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?
|
||||
With |g:netrw_bufsettings|, you can control netrw's buffer
|
||||
settings; try putting >
|
||||
let g:netrw_bufsettings="noma nomod nu nobl nowrap ro nornu"
|
||||
< in your .vimrc. If you'd like to have relative numbering
|
||||
instead, try >
|
||||
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?
|
||||
Try putting the following code snippet into your .vimrc: >
|
||||
augroup VimStartup
|
||||
au!
|
||||
au VimEnter * if expand("%") == "" && argc() == 0 &&
|
||||
\ (v:servername =~ 'GVIM\d*' || v:servername == "")
|
||||
\ | e . | endif
|
||||
augroup END
|
||||
< You may use Lexplore instead of "e" if you're so inclined.
|
||||
This snippet assumes that you have client-server enabled
|
||||
(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:
|
||||
|
||||
Its likely that the shell or o/s is using a different encoding
|
||||
than you have vim (netrw) using. A patch to vim supporting
|
||||
"systemencoding" may address this issue in the future; for
|
||||
now, just have netrw use the proper encoding. For example: >
|
||||
|
||||
au FileType netrw set enc=latin1
|
||||
<
|
||||
*netrw-P22*
|
||||
P22. I get an error message when I try to copy or move a file:
|
||||
|
||||
**error** (netrw) tried using g:netrw_localcopycmd<cp>; it doesn't work!
|
||||
|
||||
What's wrong?
|
||||
|
||||
Netrw uses several system level commands to do things (see
|
||||
|
||||
|g:netrw_localcopycmd|, |g:netrw_localmovecmd|,
|
||||
|g:netrw_localrmdir|, |g:netrw_mkdir_cmd|).
|
||||
|
||||
You may need to adjust the default commands for one or more of
|
||||
these commands by setting them properly in your .vimrc. Another
|
||||
source of difficulty is that these commands use vim's local
|
||||
directory, which may not be the same as the browsing directory
|
||||
shown by netrw (see |g:netrw_keepdir|).
|
||||
|
||||
|
||||
==============================================================================
|
||||
11. Debugging Netrw Itself *netrw-debug* {{{1
|
||||
|
||||
@@ -3443,13 +3696,13 @@ called netrw.vimrc with the following contents: >
|
||||
<
|
||||
Then run netrw as follows: >
|
||||
|
||||
vim -u netrw.vimrc --noplugins [some path here]
|
||||
vim -u netrw.vimrc --noplugins -i NONE [some path here]
|
||||
<
|
||||
Perform whatever netrw commands you need to, and check that the problem is
|
||||
still present. This procedure sidesteps any issues due to personal .vimrc
|
||||
settings and other plugins. If the problem does not appear, then you need
|
||||
to determine what setting in your .vimrc is causing the conflict with netrw
|
||||
or which plugin.
|
||||
settings, .viminfo file, and other plugins. If the problem does not appear,
|
||||
then you need to determine which setting in your .vimrc is causing the
|
||||
conflict with netrw or which plugin(s) is/are involved.
|
||||
|
||||
Step 3: If the problem still is present, then get a debugging trace from
|
||||
netrw:
|
||||
@@ -3504,6 +3757,77 @@ netrw:
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
v155: Oct 29, 2015 * (Timur Fayzrakhmanov) reported that netrw's
|
||||
mapping of ctrl-l was not allowing refresh of
|
||||
other windows when it was done in a netrw
|
||||
window.
|
||||
Nov 05, 2015 * Improved s:TreeSqueezeDir() to use search()
|
||||
instead of a loop
|
||||
* NetrwBrowse() will return line to
|
||||
w:netrw_bannercnt if cursor ended up in
|
||||
banner
|
||||
Nov 16, 2015 * Added a <Plug>NetrwTreeSqueeze (|netrw-s-cr|)
|
||||
Nov 17, 2015 * Commented out imaps -- perhaps someone can
|
||||
tell me how they're useful and should be
|
||||
retained?
|
||||
Nov 20, 2015 * Added |netrw-ma| and |netrw-mA| support
|
||||
Nov 20, 2015 * gx (|netrw-gx|) on an url downloaded the
|
||||
file in addition to simply bringing up the
|
||||
url in a browser. Fixed.
|
||||
Nov 23, 2015 * Added |g:netrw_sizestyle| support
|
||||
Nov 27, 2015 * Inserted a lot of <c-u>s into various netrw
|
||||
maps.
|
||||
Jan 05, 2016 * |netrw-qL| implemented to mark files based
|
||||
upon |location-list|s; similar to |netrw-qF|.
|
||||
Jan 19, 2016 * using - call delete(directoryname,"d") -
|
||||
instead of using g:netrw_localrmdir if
|
||||
v7.4 + patch#1107 is available
|
||||
Jan 28, 2016 * changed to using |winsaveview()| and
|
||||
|winrestview()|
|
||||
Jan 28, 2016 * s:NetrwTreePath() now does a save and
|
||||
restore of view
|
||||
Feb 08, 2016 * Fixed a tree-listing problem with remote
|
||||
directories
|
||||
v154: Feb 26, 2015 * (Yuri Kanivetsky) reported a situation where
|
||||
a file was not treated properly as a file
|
||||
due to g:netrw_keepdir == 1
|
||||
Mar 25, 2015 * (requested by Ben Friz) one may now sort by
|
||||
extension
|
||||
Mar 28, 2015 * (requested by Matt Brooks) netrw has a lot
|
||||
of buffer-local mappings; however, some
|
||||
plugins (such as vim-surround) set up
|
||||
conflicting mappings that cause vim to wait.
|
||||
The "<nowait>" modifier has been included
|
||||
with most of netrw's mappings to avoid that
|
||||
delay.
|
||||
Jun 26, 2015 * |netrw-gn| mapping implemted
|
||||
* :Ntree NotADir resulted in having
|
||||
the tree listing expand in the error messages
|
||||
window. Fixed.
|
||||
Jun 29, 2015 * Attempting to delete a file remotely caused
|
||||
an error with "keepsol" mentioned; fixed.
|
||||
Jul 08, 2015 * Several changes to keep the |:jumps| table
|
||||
correct when working with
|
||||
|g:netrw_fastbrowse| set to 2
|
||||
* wide listing with accented characters fixed
|
||||
(using %-S instead of %-s with a |printf()|
|
||||
Jul 13, 2015 * (Daniel Hahler) CheckIfKde() could be true
|
||||
but kfmclient not installed. Changed order
|
||||
in netrw#BrowseX(): checks if kde and
|
||||
kfmclient, then will use xdg-open on a unix
|
||||
system (if xdg-open is executable)
|
||||
Aug 11, 2015 * (McDonnell) tree listing mode wouldn't
|
||||
select a file in a open subdirectory.
|
||||
* (McDonnell) when multiple subdirectories
|
||||
were concurrently open in tree listing
|
||||
mode, a ctrl-L wouldn't refresh properly.
|
||||
* The netrw:target menu showed duplicate
|
||||
entries
|
||||
Oct 13, 2015 * (mattn) provided an exception to handle
|
||||
windows with shellslash set but no shell
|
||||
Oct 23, 2015 * if g:netrw_usetab and <c-tab> now used
|
||||
to control whether NetrwShrink is used
|
||||
(see |netrw-c-tab|)
|
||||
v153: May 13, 2014 * added another |g:netrw_ffkeep| usage {{{2
|
||||
May 14, 2014 * changed s:PerformListing() so that it
|
||||
always sets ft=netrw for netrw buffers
|
||||
@@ -3624,7 +3948,7 @@ netrw:
|
||||
handling.
|
||||
* |:Lexplore| path: will be used to update
|
||||
a left-side netrw browsing directory.
|
||||
Mar 12, 2014 * |:netrw-s-cr|: use <s-cr> to close
|
||||
Mar 12, 2014 * |netrw-s-cr|: use <s-cr> to close
|
||||
tree directory implemented
|
||||
Mar 13, 2014 * (Tony Mechylynck) reported that using
|
||||
the browser with ftp on a directory,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 7.4. Last change: 2014 Mar 27
|
||||
*quickfix.txt* For Vim version 7.4. Last change: 2016 Mar 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -56,6 +56,14 @@ The following quickfix commands can be used. The location list commands are
|
||||
similar to the quickfix commands, replacing the 'c' prefix in the quickfix
|
||||
command with 'l'.
|
||||
|
||||
*E924*
|
||||
If the current window was closed by an |autocommand| while processing a
|
||||
location list command, it will be aborted.
|
||||
|
||||
*E925* *E926*
|
||||
If the current quickfix or location list was changed by an |autocommand| while
|
||||
processing a quickfix or location list command, it will be aborted.
|
||||
|
||||
*:cc*
|
||||
:cc[!] [nr] Display error [nr]. If [nr] is omitted, the same
|
||||
error is displayed again. Without [!] this doesn't
|
||||
@@ -299,6 +307,75 @@ use this code: >
|
||||
au QuickfixCmdPost make call QfMakeConv()
|
||||
|
||||
|
||||
EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST:
|
||||
*:cdo*
|
||||
:cdo[!] {cmd} Execute {cmd} in each valid entry in the quickfix list.
|
||||
It works like doing this: >
|
||||
:cfirst
|
||||
:{cmd}
|
||||
:cnext
|
||||
:{cmd}
|
||||
etc.
|
||||
< When the current file can't be |abandon|ed and the [!]
|
||||
is not present, the command fails.
|
||||
When an error is detected excecution stops.
|
||||
The last buffer (or where an error occurred) becomes
|
||||
the current buffer.
|
||||
{cmd} can contain '|' to concatenate several commands.
|
||||
|
||||
Only valid entries in the quickfix list are used.
|
||||
A range can be used to select entries, e.g.: >
|
||||
:10,$cdo cmd
|
||||
< To skip entries 1 to 9.
|
||||
|
||||
Note: While this command is executing, the Syntax
|
||||
autocommand event is disabled by adding it to
|
||||
'eventignore'. This considerably speeds up editing
|
||||
each buffer.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
Also see |:bufdo|, |:tabdo|, |:argdo|, |:windo|,
|
||||
|:ldo|, |:cfdo| and |:lfdo|.
|
||||
|
||||
*:cfdo*
|
||||
:cfdo[!] {cmd} Execute {cmd} in each file in the quickfix list.
|
||||
It works like doing this: >
|
||||
:cfirst
|
||||
:{cmd}
|
||||
:cnfile
|
||||
:{cmd}
|
||||
etc.
|
||||
< Otherwise it works the same as `:cdo`.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
|
||||
*:ldo*
|
||||
:ld[o][!] {cmd} Execute {cmd} in each valid entry in the location list
|
||||
for the current window.
|
||||
It works like doing this: >
|
||||
:lfirst
|
||||
:{cmd}
|
||||
:lnext
|
||||
:{cmd}
|
||||
etc.
|
||||
< Only valid entries in the location list are used.
|
||||
Otherwise it works the same as `:cdo`.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
|
||||
*:lfdo*
|
||||
:lfdo[!] {cmd} Execute {cmd} in each file in the location list for
|
||||
the current window.
|
||||
It works like doing this: >
|
||||
:lfirst
|
||||
:{cmd}
|
||||
:lnfile
|
||||
:{cmd}
|
||||
etc.
|
||||
< Otherwise it works the same as `:ldo`.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|+listcmds| feature}
|
||||
|
||||
=============================================================================
|
||||
2. The error window *quickfix-window*
|
||||
|
||||
|
||||