Compare commits
664 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8df9748edb | ||
|
|
b1fd26d208 | ||
|
|
b34c4b7863 | ||
|
|
693729ae58 | ||
|
|
bbbda8fd81 | ||
|
|
f6196f4244 | ||
|
|
ff85d4a107 | ||
|
|
393f8d61f5 | ||
|
|
eda29c971c | ||
|
|
b393275ae9 | ||
|
|
3292a22940 | ||
|
|
a4e0b9785e | ||
|
|
b850c39676 | ||
|
|
87b4e5c5db | ||
|
|
145d1fd910 | ||
|
|
cfb4d4f312 | ||
|
|
a5d1a67bee | ||
|
|
d0121c63cf | ||
|
|
6586a01514 | ||
|
|
b152b6a40f | ||
|
|
7dd5a78b88 | ||
|
|
ac38ec7c7f | ||
|
|
fa1039760e | ||
|
|
9f573a8df0 | ||
|
|
fc06cda837 | ||
|
|
50faf02f43 | ||
|
|
572a4433c8 | ||
|
|
82418263fa | ||
|
|
1936c76536 | ||
|
|
371951d0c3 | ||
|
|
52df40eb04 | ||
|
|
ef976323e7 | ||
|
|
caa1d19da1 | ||
|
|
47da934844 | ||
|
|
70e672580b | ||
|
|
859ea4bc76 | ||
|
|
66000ff9af | ||
|
|
9fbdbb814f | ||
|
|
26f09ea54b | ||
|
|
f802767df7 | ||
|
|
524c853e5e | ||
|
|
439a2ba174 | ||
|
|
49c311c9b1 | ||
|
|
7c1cbb6cd4 | ||
|
|
7fc6c0e4da | ||
|
|
368aa69088 | ||
|
|
d324742292 | ||
|
|
cde0319385 | ||
|
|
8279af514c | ||
|
|
3bdef10dc1 | ||
|
|
7381c0ce3f | ||
|
|
1190139ed0 | ||
|
|
2cb4a89797 | ||
|
|
311df6bb0f | ||
|
|
838b746cce | ||
|
|
4569020538 | ||
|
|
ee09fcc9b6 | ||
|
|
b7e07dc103 | ||
|
|
4d2073b261 | ||
|
|
9882e9ddc9 | ||
|
|
124af71a28 | ||
|
|
6a879878f4 | ||
|
|
dc21552c9a | ||
|
|
b9725bc7f6 | ||
|
|
ec1238b406 | ||
|
|
d4566c14e7 | ||
|
|
1d61408af3 | ||
|
|
0ff01835a4 | ||
|
|
865bf2ed30 | ||
|
|
96b9bf8f74 | ||
|
|
b2209f213e | ||
|
|
78aed95c8d | ||
|
|
140f6d0eda | ||
|
|
81fd3b2b44 | ||
|
|
75f4bafabd | ||
|
|
f7e7302acb | ||
|
|
d3eafdd709 | ||
|
|
5939c35743 | ||
|
|
e9dcf13a30 | ||
|
|
87af60c915 | ||
|
|
9fd1583c83 | ||
|
|
dfa8be4944 | ||
|
|
0056ca7137 | ||
|
|
a9b0f8f7f3 | ||
|
|
35fdd9a67d | ||
|
|
3bcd0ddc2d | ||
|
|
b9093d5009 | ||
|
|
4ecf16bbf9 | ||
|
|
7f9a5a68fe | ||
|
|
259a741044 | ||
|
|
86fb3f8b99 | ||
|
|
20e58561ab | ||
|
|
f8addf1ca1 | ||
|
|
f5f4e85f01 | ||
|
|
69082916c8 | ||
|
|
f87eeb43fb | ||
|
|
62de54b48d | ||
|
|
5800c79838 | ||
|
|
f1c60d4bf1 | ||
|
|
6d313bec53 | ||
|
|
236ccbf6f8 | ||
|
|
daaa3d9965 | ||
|
|
fcba86c031 | ||
|
|
e24b5e0b0f | ||
|
|
f1d2ddcb9b | ||
|
|
ee7c8d999b | ||
|
|
6f98114e4a | ||
|
|
21d393a12b | ||
|
|
5c645a25bb | ||
|
|
4740394f23 | ||
|
|
6a434e93a9 | ||
|
|
e8e369a796 | ||
|
|
ec5e1483eb | ||
|
|
e49f9acecc | ||
|
|
14f91765c0 | ||
|
|
c20a41972c | ||
|
|
8ecfa2c56b | ||
|
|
8eaee1fa5c | ||
|
|
c3430cb583 | ||
|
|
2b1ddf19f8 | ||
|
|
f7c7aa3594 | ||
|
|
5917341f65 | ||
|
|
4cbdcbda2d | ||
|
|
2d2e25b3e3 | ||
|
|
f64b75b1d9 | ||
|
|
31724238c8 | ||
|
|
848db57e52 | ||
|
|
d7657e95b2 | ||
|
|
b84d565c62 | ||
|
|
320d910064 | ||
|
|
ccfaa07591 | ||
|
|
2fdc9b5419 | ||
|
|
a22c56a59a | ||
|
|
9781d9c005 | ||
|
|
c14bfc31d9 | ||
|
|
bdedd2bcce | ||
|
|
7c046ae99b | ||
|
|
500a1f9972 | ||
|
|
cd9fa256b5 | ||
|
|
bcd6924245 | ||
|
|
a2b91036d1 | ||
|
|
faf1d412f5 | ||
|
|
c9e4a6f191 | ||
|
|
65449bd1ee | ||
|
|
cc34181f99 | ||
|
|
18ee0feb5d | ||
|
|
b2f0ca820e | ||
|
|
566badc76b | ||
|
|
747f110420 | ||
|
|
9712ff1288 | ||
|
|
65ee49decf | ||
|
|
27b53be3a6 | ||
|
|
dbbb02bc77 | ||
|
|
96caa557f9 | ||
|
|
1e8009e34a | ||
|
|
312af65d1a | ||
|
|
73e28dcc61 | ||
|
|
1c3dd8ddcb | ||
|
|
fb593c5350 | ||
|
|
4c7fd4d68f | ||
|
|
acd6b9976b | ||
|
|
d5bc762dea | ||
|
|
0cdfb7ce46 | ||
|
|
8abb584ab8 | ||
|
|
c249913edc | ||
|
|
e24b4aba1f | ||
|
|
8fa745e7be | ||
|
|
abd58d8aee | ||
|
|
1aea184a0d | ||
|
|
594f9e09cd | ||
|
|
3e8b7a6056 | ||
|
|
48db5dafec | ||
|
|
dd674774bb | ||
|
|
dd44b58f64 | ||
|
|
aa5341477c | ||
|
|
a4abe514ec | ||
|
|
12167d8b84 | ||
|
|
b46c083a5e | ||
|
|
3735f11050 | ||
|
|
aeef1f7f6d | ||
|
|
d3922afbd6 | ||
|
|
ebd0e8bb85 | ||
|
|
e697d48890 | ||
|
|
702bd6c7c6 | ||
|
|
febe13892e | ||
|
|
98b373075e | ||
|
|
470a14140b | ||
|
|
766ae5b252 | ||
|
|
353b68a991 | ||
|
|
3b93cf218f | ||
|
|
a04f457a6c | ||
|
|
b1842de5ca | ||
|
|
5ed391708a | ||
|
|
810cb5a3bf | ||
|
|
83a19c5fda | ||
|
|
6eda17d881 | ||
|
|
c9dc03fff5 | ||
|
|
7b2d87220c | ||
|
|
cd2d5c181a | ||
|
|
cdc839353f | ||
|
|
5a4eb55122 | ||
|
|
cf0995d7d7 | ||
|
|
87e74d0e03 | ||
|
|
29ab524358 | ||
|
|
9510d22463 | ||
|
|
cce82a55b8 | ||
|
|
79f8b8494c | ||
|
|
c069edeab2 | ||
|
|
f5fec05c7f | ||
|
|
88b79cb7d4 | ||
|
|
04e0ed1ddf | ||
|
|
55e9366e32 | ||
|
|
71b6d33976 | ||
|
|
2da11a4124 | ||
|
|
f21d546d8f | ||
|
|
9ba2786f15 | ||
|
|
12553ada3b | ||
|
|
6de2296e5e | ||
|
|
7cf5839287 | ||
|
|
375141e1f8 | ||
|
|
0adae2da17 | ||
|
|
be9fc5b60c | ||
|
|
8995c4cd4e | ||
|
|
65258d36dd | ||
|
|
ae04a6049b | ||
|
|
7d56cfc861 | ||
|
|
9132426334 | ||
|
|
0dc2fd307f | ||
|
|
5bc13453b2 | ||
|
|
c572ad508f | ||
|
|
169003289f | ||
|
|
45bbaef038 | ||
|
|
2a4c885d54 | ||
|
|
58a3cae3eb | ||
|
|
0500e87eba | ||
|
|
753aead960 | ||
|
|
b0d12e63e8 | ||
|
|
e5a420fb33 | ||
|
|
6f14da15ac | ||
|
|
d7633114af | ||
|
|
7c7e1e9b98 | ||
|
|
fef38d86a1 | ||
|
|
75a115e8d6 | ||
|
|
9667b2c888 | ||
|
|
c9c967da09 | ||
|
|
1540d334a0 | ||
|
|
fd7e60a33d | ||
|
|
bb6c4073e7 | ||
|
|
bd01f476ea | ||
|
|
e68f1348f2 | ||
|
|
98aff658d5 | ||
|
|
ca16c60f33 | ||
|
|
58779858fb | ||
|
|
2834ebdee4 | ||
|
|
635bb49085 | ||
|
|
5903aaf7eb | ||
|
|
a9480dbc8c | ||
|
|
e53a0d4409 | ||
|
|
3411265a36 | ||
|
|
86d87256c4 | ||
|
|
ccfde4d028 | ||
|
|
8894761daf | ||
|
|
ddf7dba96e | ||
|
|
b1f471ee20 | ||
|
|
c47b16a470 | ||
|
|
c7d2ff2ca0 | ||
|
|
963ab26842 | ||
|
|
31ea6bf530 | ||
|
|
b40ad4ff14 | ||
|
|
e1f3ab73bc | ||
|
|
8f7116cadd | ||
|
|
fed6bdae6f | ||
|
|
0daafaa7d9 | ||
|
|
806a273f3c | ||
|
|
c1eb131c9e | ||
|
|
eb5adf19d1 | ||
|
|
6b085b9d73 | ||
|
|
c8ac3a072f | ||
|
|
3c7707680f | ||
|
|
a5348f241b | ||
|
|
5fbbec180b | ||
|
|
06fef1b2bd | ||
|
|
1d84f7608f | ||
|
|
06d32a0c17 | ||
|
|
89083466fa | ||
|
|
0a6bb59f6b | ||
|
|
6ac69ed9a2 | ||
|
|
91a874eb88 | ||
|
|
c99e182e1f | ||
|
|
b18b496997 | ||
|
|
f5724376ab | ||
|
|
956be4678f | ||
|
|
35d21c6830 | ||
|
|
8deb2b30c7 | ||
|
|
119167265e | ||
|
|
cf2bb63397 | ||
|
|
a02a8a4d84 | ||
|
|
6c667bdc94 | ||
|
|
a906e8e1ab | ||
|
|
68a635a80a | ||
|
|
3b474dcd30 | ||
|
|
b5b4f61cf1 | ||
|
|
7d7ad7b2e8 | ||
|
|
be807d5824 | ||
|
|
36eb14fa3e | ||
|
|
df5320c439 | ||
|
|
d3de178e53 | ||
|
|
d83392a43a | ||
|
|
e42c8dae32 | ||
|
|
5d09a401ec | ||
|
|
21c3a80a7f | ||
|
|
92a3d20682 | ||
|
|
a2a8973e51 | ||
|
|
a63ad78ed3 | ||
|
|
9ba6194d4c | ||
|
|
b22653a98e | ||
|
|
61abe7d8f8 | ||
|
|
9b03d3e75b | ||
|
|
04c4c5746e | ||
|
|
f240395fca | ||
|
|
171a1607f4 | ||
|
|
9c8f94636b | ||
|
|
3e518a8ec7 | ||
|
|
f92cfb1acc | ||
|
|
24735f2a19 | ||
|
|
e27d6e6382 | ||
|
|
976f859763 | ||
|
|
0e412be00f | ||
|
|
816736bcc7 | ||
|
|
15cae5c9ca | ||
|
|
3b0d70f4ff | ||
|
|
4f1b083be4 | ||
|
|
37fef16c22 | ||
|
|
54acb90d9e | ||
|
|
d5c8f11905 | ||
|
|
13608d851a | ||
|
|
b13d3405ff | ||
|
|
f73e5ba56f | ||
|
|
309c4e0ed7 | ||
|
|
bf26941f40 | ||
|
|
e7cda97b6b | ||
|
|
98d1069a9c | ||
|
|
926218b5da | ||
|
|
b849c82851 | ||
|
|
7a99da43d1 | ||
|
|
33a5dd8b23 | ||
|
|
134b86553c | ||
|
|
f2fb54f641 | ||
|
|
533c306921 | ||
|
|
670ab0334b | ||
|
|
2f892d8663 | ||
|
|
75e9a6693e | ||
|
|
878e1d25a0 | ||
|
|
a85e4db978 | ||
|
|
25f1e55562 | ||
|
|
8934ec027d | ||
|
|
c8bf59e9b2 | ||
|
|
35a4fbc5d0 | ||
|
|
00d4ceecca | ||
|
|
43568648df | ||
|
|
b0509c542e | ||
|
|
d1f8fd5907 | ||
|
|
efdfb0c5ee | ||
|
|
d54af2e550 | ||
|
|
beedd0a266 | ||
|
|
9198de3ae2 | ||
|
|
aebc6ef7cd | ||
|
|
6d24a51b94 | ||
|
|
07ea5f1509 | ||
|
|
5ff595d9db | ||
|
|
af9a6002e0 | ||
|
|
0f61838636 | ||
|
|
58dcbf1c65 | ||
|
|
7dd543246a | ||
|
|
2ee347fbc0 | ||
|
|
5416232707 | ||
|
|
074fbd4131 | ||
|
|
c361842f14 | ||
|
|
93f72cc119 | ||
|
|
a9b5b85068 | ||
|
|
c312619f7c | ||
|
|
d55f9ef8b2 | ||
|
|
b1d2c8116c | ||
|
|
9b7d2a9596 | ||
|
|
2bd9dbc19f | ||
|
|
520f6ef60a | ||
|
|
0166e398d1 | ||
|
|
930830a68b | ||
|
|
340dafd155 | ||
|
|
f80f40a55c | ||
|
|
b213703f35 | ||
|
|
6d4b2f54df | ||
|
|
2e6dcbc445 | ||
|
|
2eddbacd6d | ||
|
|
d6c67629ed | ||
|
|
80525751c5 | ||
|
|
fd999452ad | ||
|
|
44b9abb150 | ||
|
|
7ea9fcb48d | ||
|
|
5214b29461 | ||
|
|
0af2ecfe44 | ||
|
|
5fb3aabc2b | ||
|
|
753885b6c5 | ||
|
|
f5240b96f7 | ||
|
|
762df0477c | ||
|
|
dde77a7c4d | ||
|
|
3a7ad904d2 | ||
|
|
a247142ae4 | ||
|
|
f396ce83ee | ||
|
|
adce965162 | ||
|
|
471c0fa3ee | ||
|
|
f768c3d19c | ||
|
|
e89aeed43e | ||
|
|
171c683237 | ||
|
|
448f72a78a | ||
|
|
6669de1b23 | ||
|
|
8884916043 | ||
|
|
300175fd7f | ||
|
|
e24a14118c | ||
|
|
b82a2ab8ad | ||
|
|
474ad390cc | ||
|
|
8d69637133 | ||
|
|
a7704226a2 | ||
|
|
38ea5bda2b | ||
|
|
57e95179ab | ||
|
|
2984ed31d9 | ||
|
|
62e0e2e54b | ||
|
|
e80086446c | ||
|
|
13ed494bb5 | ||
|
|
213e70e284 | ||
|
|
9e043181ad | ||
|
|
91c7cbfe31 | ||
|
|
4875d6ab06 | ||
|
|
5fd6ab820b | ||
|
|
887748742d | ||
|
|
1889f499a4 | ||
|
|
f6d39c31d2 | ||
|
|
948a3894d9 | ||
|
|
e98c88c44c | ||
|
|
e1f3fd1d02 | ||
|
|
5a4fff4d94 | ||
|
|
cce293f87b | ||
|
|
8a77d208ff | ||
|
|
d8d4cfcb39 | ||
|
|
249e1b903a | ||
|
|
dbdd16b625 | ||
|
|
d1d8f6bacb | ||
|
|
c3a483fc3c | ||
|
|
677a39fdf6 | ||
|
|
9e7e28fc4c | ||
|
|
28c162f6f1 | ||
|
|
a4d158b3c8 | ||
|
|
28c9f89571 | ||
|
|
63acae13f5 | ||
|
|
c9b6570fab | ||
|
|
3fbf6cd355 | ||
|
|
9113c2cd19 | ||
|
|
8f369fb1ab | ||
|
|
f0ccfa474a | ||
|
|
cfeb8a584b | ||
|
|
6a76e84f55 | ||
|
|
b218655d5a | ||
|
|
9032b9ceb6 | ||
|
|
326c5d36e7 | ||
|
|
e38fc86180 | ||
|
|
fdc5d17d58 | ||
|
|
d4cf9fc53e | ||
|
|
f797e309ca | ||
|
|
87f3a2ca3d | ||
|
|
82b14c143a | ||
|
|
96bde99bf8 | ||
|
|
3331dd0351 | ||
|
|
952c9b02f8 | ||
|
|
1d8844aa59 | ||
|
|
52de3a8d39 | ||
|
|
3a9687fb27 | ||
|
|
e5a0e8c1d7 | ||
|
|
ef257e7bd1 | ||
|
|
49a90792d9 | ||
|
|
e428fa04a7 | ||
|
|
8f49e690dc | ||
|
|
8ca29b6a35 | ||
|
|
afa23d1b99 | ||
|
|
ad6d9cc679 | ||
|
|
e6a3d81e05 | ||
|
|
1024690c01 | ||
|
|
6e5c61119a | ||
|
|
113d9dec99 | ||
|
|
48c3f4e0bf | ||
|
|
cf85d97baf | ||
|
|
25463610df | ||
|
|
38ea2733b4 | ||
|
|
50652b0c5c | ||
|
|
e44336b00a | ||
|
|
c390cc13e5 | ||
|
|
ecb00c7b61 | ||
|
|
73c3842fa5 | ||
|
|
bf9158408a | ||
|
|
83bf11a1ff | ||
|
|
da70cf30ef | ||
|
|
48ca24d913 | ||
|
|
cba6952e34 | ||
|
|
3f74c0ab32 | ||
|
|
db9b96d844 | ||
|
|
7d0f7e9524 | ||
|
|
1306b36a7b | ||
|
|
e2086350d3 | ||
|
|
4d91d347e6 | ||
|
|
25f40af9d2 | ||
|
|
5ac4b1a24e | ||
|
|
3ec3b8e92d | ||
|
|
50e75fe8d8 | ||
|
|
4d2031fdbe | ||
|
|
213bbaf15a | ||
|
|
f4ba8bc47e | ||
|
|
afd2aa79ed | ||
|
|
2f83cc4cfa | ||
|
|
206fce307b | ||
|
|
3d3f6ac098 | ||
|
|
398649ee44 | ||
|
|
bc49c5f48f | ||
|
|
db7a88db8b | ||
|
|
d6212b80d6 | ||
|
|
0b0ccbbfb0 | ||
|
|
f05a1e59a3 | ||
|
|
e175dc6911 | ||
|
|
09ff4b54fb | ||
|
|
783ef7214b | ||
|
|
1f4ee19eef | ||
|
|
05a8061eec | ||
|
|
ab146dac6b | ||
|
|
3f79b61288 | ||
|
|
e95f22f63a | ||
|
|
95fca12b0e | ||
|
|
84b247fab7 | ||
|
|
101d57b34b | ||
|
|
c146d974f1 | ||
|
|
be33e5e4a9 | ||
|
|
b7963df98f | ||
|
|
6b568b1cc7 | ||
|
|
dbdcc79910 | ||
|
|
750209459c | ||
|
|
3a4cd39d47 | ||
|
|
711483cd13 | ||
|
|
6747cf1671 | ||
|
|
f39cfb7262 | ||
|
|
d90f91fe30 | ||
|
|
0f823c3609 | ||
|
|
de78632c41 | ||
|
|
ddab3ce345 | ||
|
|
1eead4cf1d | ||
|
|
5f6cae8b8a | ||
|
|
2ecbe53f45 | ||
|
|
72981ac94f | ||
|
|
cb36c2a3cd | ||
|
|
f50940531d | ||
|
|
1e56bda904 | ||
|
|
efffa5360e | ||
|
|
a6f9e30016 | ||
|
|
4e677b9c40 | ||
|
|
cb5ed4d625 | ||
|
|
46af7bc08d | ||
|
|
5748b7f2c8 | ||
|
|
5f30e26f69 | ||
|
|
f6782732ab | ||
|
|
122dea7007 | ||
|
|
3d6ee8bda0 | ||
|
|
7abd1c6d8e | ||
|
|
61021aa318 | ||
|
|
34d1773bd4 | ||
|
|
28f84e17b0 | ||
|
|
7db3a8e329 | ||
|
|
30e212dac1 | ||
|
|
3f0266739d | ||
|
|
6791adca53 | ||
|
|
1f0dc5e84f | ||
|
|
15b87b6610 | ||
|
|
c9e8fd6fc7 | ||
|
|
3cfae39b08 | ||
|
|
c2842adfb2 | ||
|
|
0494789ece | ||
|
|
6809ff978a | ||
|
|
559f230fd6 | ||
|
|
b03950fafa | ||
|
|
92a1678d48 | ||
|
|
be3dbda871 | ||
|
|
34a1f77979 | ||
|
|
1b67f07f76 | ||
|
|
6d023f98df | ||
|
|
ecdc82e74e | ||
|
|
4dc513a22c | ||
|
|
0c740e745a | ||
|
|
fe3fb6e1e6 | ||
|
|
7f9969c559 | ||
|
|
b529cfbd04 | ||
|
|
cd6ad6439d | ||
|
|
509695c1c3 | ||
|
|
c963ec31a0 | ||
|
|
d61efa50f8 | ||
|
|
5ac50de83f | ||
|
|
5fa9f23a63 | ||
|
|
b9e717367c | ||
|
|
bb404f5ad5 | ||
|
|
81a3ff97e2 | ||
|
|
5154a88800 | ||
|
|
bd683e3a79 | ||
|
|
fa49eb4827 | ||
|
|
c7bd2f08e5 | ||
|
|
3a393790a4 | ||
|
|
2ebcc35826 | ||
|
|
f754fe6a3d | ||
|
|
b26592a84c | ||
|
|
99af91e582 | ||
|
|
b90818867c | ||
|
|
fee0c4aa99 | ||
|
|
32acf1f1a7 | ||
|
|
baefde1455 | ||
|
|
caea66442d | ||
|
|
b8329db36a | ||
|
|
5ed11535e0 | ||
|
|
cf34434b5e | ||
|
|
3244780379 | ||
|
|
704988f0c3 | ||
|
|
b67f0c8e49 | ||
|
|
4c99e622dd | ||
|
|
5ed26faace | ||
|
|
510f03738d | ||
|
|
96ba25ac01 | ||
|
|
54e5fed6d2 | ||
|
|
288ed23e39 | ||
|
|
4dd9252d6f | ||
|
|
7fe956d176 | ||
|
|
9359e8a6d9 | ||
|
|
22e7e867e2 | ||
|
|
daaca8a128 | ||
|
|
022f9ef16c | ||
|
|
2d29501982 | ||
|
|
c5274dd122 | ||
|
|
c6fdb15d42 | ||
|
|
af043e12d9 | ||
|
|
f2ce76a8c0 | ||
|
|
95afae6d17 | ||
|
|
5e59ea54c0 | ||
|
|
f12129f171 | ||
|
|
eb273cd7b0 | ||
|
|
0d878b95d8 | ||
|
|
27efc62f5d | ||
|
|
3d51ce18ab | ||
|
|
c2a79b87fc | ||
|
|
79ae152697 | ||
|
|
9610f94510 | ||
|
|
fa4873ccfc | ||
|
|
cdbfc6dbab | ||
|
|
d25f003342 | ||
|
|
b0375d466e | ||
|
|
083692d598 | ||
|
|
83e11800cc | ||
|
|
84f5463630 | ||
|
|
8b5901e2f9 | ||
|
|
040674129f | ||
|
|
d14bb1aef9 | ||
|
|
ee47eaceaa | ||
|
|
c207fd2535 | ||
|
|
75417d960b |
@@ -15,9 +15,8 @@ matrix:
|
||||
fast_finish: true
|
||||
|
||||
before_build:
|
||||
# Use Windows SDK 7.1 (= MSVC 2010)
|
||||
- '"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 /release'
|
||||
- 'set INCLUDE=%INCLUDE%C:\Program Files (x86)\Windows Kits\8.1\Include\um'
|
||||
# Use Visual Studio 2015 compiler tools (default is 2012)
|
||||
- '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64'
|
||||
|
||||
build_script:
|
||||
- ci/appveyor.bat
|
||||
@@ -26,9 +25,9 @@ test_script:
|
||||
- cd src/testdir
|
||||
# Testing with MSVC gvim
|
||||
- path C:\Python35-x64;%PATH%
|
||||
- nmake -f Make_dos.mak VIMPROG=..\gvim
|
||||
- nmake -f Make_dos.mak clean
|
||||
- nmake -f Make_mvc.mak VIMPROG=..\gvim
|
||||
- nmake -f Make_mvc.mak clean
|
||||
# Testing with MSVC console version
|
||||
- nmake -f Make_dos.mak VIMPROG=..\vim
|
||||
- nmake -f Make_mvc.mak VIMPROG=..\vim
|
||||
|
||||
# vim: sw=2 sts=2 et ts=8 sr
|
||||
|
||||
18
.cirrus.yml
18
.cirrus.yml
@@ -11,7 +11,6 @@ freebsd_task:
|
||||
- name: FreeBSD 12.3
|
||||
freebsd_instance:
|
||||
image_family: freebsd-12-3
|
||||
only_if: $CIRRUS_TAG == ''
|
||||
timeout_in: 20m
|
||||
install_script:
|
||||
- pkg update -f
|
||||
@@ -26,3 +25,20 @@ freebsd_task:
|
||||
- pw useradd cirrus -m
|
||||
- chown -R cirrus:cirrus .
|
||||
- sudo -u cirrus make test
|
||||
|
||||
macos_task:
|
||||
name: macOS m1
|
||||
macos_instance:
|
||||
image: ghcr.io/cirruslabs/macos-ventura-xcode:latest
|
||||
timeout_in: 20m
|
||||
install_script:
|
||||
- uname -a
|
||||
- brew update
|
||||
- brew install gettext libtool
|
||||
build_script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
- ./configure --with-features=${FEATURES}
|
||||
- make -j${NPROC} CC=clang
|
||||
test_script:
|
||||
- src/vim --version
|
||||
- make CC=clang test
|
||||
|
||||
52
.github/CODEOWNERS
vendored
52
.github/CODEOWNERS
vendored
@@ -57,6 +57,7 @@ runtime/compiler/gawk.vim @dkearns
|
||||
runtime/compiler/gjs.vim @dkearns
|
||||
runtime/compiler/go.vim @dbarnett
|
||||
runtime/compiler/haml.vim @tpope
|
||||
runtime/compiler/hare.vim @rsaihe
|
||||
runtime/compiler/icon.vim @dkearns
|
||||
runtime/compiler/javac.vim @dkearns
|
||||
runtime/compiler/jest.vim @dkearns
|
||||
@@ -69,6 +70,10 @@ runtime/compiler/perlcritic.vim @petdance @dkearns
|
||||
runtime/compiler/php.vim @dkearns
|
||||
runtime/compiler/podchecker.vim @petdance @dkearns
|
||||
runtime/compiler/powershell.vim @heaths
|
||||
runtime/compiler/raco.vim @benknoble
|
||||
runtime/compiler/racomake.vim @benknoble
|
||||
runtime/compiler/racosetup.vim @benknoble
|
||||
runtime/compiler/racotest.vim @benknoble
|
||||
runtime/compiler/rake.vim @tpope @dkearns
|
||||
runtime/compiler/rhino.vim @dkearns
|
||||
runtime/compiler/rspec.vim @tpope @dkearns
|
||||
@@ -98,34 +103,50 @@ runtime/doc/pi_tar.txt @cecamp
|
||||
runtime/doc/pi_vimball.txt @cecamp
|
||||
runtime/doc/pi_zip.txt @cecamp
|
||||
runtime/doc/ps1.txt @heaths
|
||||
runtime/ftplugin/abaqus.vim @costerwi
|
||||
runtime/ftplugin/awk.vim @dkearns
|
||||
runtime/ftplugin/basic.vim @dkearns
|
||||
runtime/ftplugin/bst.vim @tpope
|
||||
runtime/ftplugin/cfg.vim @chrisbra
|
||||
runtime/ftplugin/chatito.vim @ObserverOfTime
|
||||
runtime/ftplugin/clojure.vim @axvr
|
||||
runtime/ftplugin/cs.vim @nickspoons
|
||||
runtime/ftplugin/csh.vim @dkearns
|
||||
runtime/ftplugin/css.vim @dkearns
|
||||
runtime/ftplugin/cucumber.vim @tpope
|
||||
runtime/ftplugin/desktop.vim @e-kwsm
|
||||
runtime/ftplugin/dosbatch.vim @mrdubya
|
||||
runtime/ftplugin/eiffel.vim @dkearns
|
||||
runtime/ftplugin/elixir.vim @mhanberg
|
||||
runtime/ftplugin/erlang.vim @hcs42
|
||||
runtime/ftplugin/eruby.vim @tpope @dkearns
|
||||
runtime/ftplugin/expect.vim @dkearns
|
||||
runtime/ftplugin/fennel.vim @gpanders
|
||||
runtime/ftplugin/fetchmail.vim @dkearns
|
||||
runtime/ftplugin/fpcmake.vim @dkearns
|
||||
runtime/ftplugin/freebasic.vim @dkearns
|
||||
runtime/ftplugin/fstab.vim @rid9
|
||||
runtime/ftplugin/gdb.vim @xeyownt
|
||||
runtime/ftplugin/gdscript.vim @habamax
|
||||
runtime/ftplugin/gdshader.vim @habamax
|
||||
runtime/ftplugin/git.vim @tpope
|
||||
runtime/ftplugin/gitattributes.vim @ObserverOfTime
|
||||
runtime/ftplugin/gitcommit.vim @tpope
|
||||
runtime/ftplugin/gitconfig.vim @tpope
|
||||
runtime/ftplugin/gitignore.vim @ObserverOfTime
|
||||
runtime/ftplugin/gitrebase.vim @tpope
|
||||
runtime/ftplugin/gitsendemail.vim @tpope
|
||||
runtime/ftplugin/gyp.vim @ObserverOfTime
|
||||
runtime/ftplugin/go.vim @dbarnett
|
||||
runtime/ftplugin/gprof.vim @dpelle
|
||||
runtime/ftplugin/haml.vim @tpope
|
||||
runtime/ftplugin/hare.vim @rsaihe
|
||||
runtime/ftplugin/hgcommit.vim @k-takata
|
||||
runtime/ftplugin/html.vim @dkearns
|
||||
runtime/ftplugin/i3config.vim @hiqua
|
||||
runtime/ftplugin/icon.vim @dkearns
|
||||
runtime/ftplugin/indent.vim @dkearns
|
||||
runtime/ftplugin/j.vim @glts
|
||||
runtime/ftplugin/javascript.vim @dkearns
|
||||
runtime/ftplugin/javascriptreact.vim @dkearns
|
||||
runtime/ftplugin/jsonc.vim @izhakjakov
|
||||
@@ -134,6 +155,7 @@ runtime/ftplugin/kconfig.vim @chrisbra
|
||||
runtime/ftplugin/less.vim @genoma
|
||||
runtime/ftplugin/liquid.vim @tpope
|
||||
runtime/ftplugin/lua.vim @dkearns
|
||||
runtime/ftplugin/lynx.vim @dkearns
|
||||
runtime/ftplugin/m3build.vim @dkearns
|
||||
runtime/ftplugin/m3quake.vim @dkearns
|
||||
runtime/ftplugin/markdown.vim @tpope
|
||||
@@ -155,6 +177,7 @@ runtime/ftplugin/ps1xml.vim @heaths
|
||||
runtime/ftplugin/python.vim @tpict
|
||||
runtime/ftplugin/qb64.vim @dkearns
|
||||
runtime/ftplugin/r.vim @jalvesaq
|
||||
runtime/ftplugin/racket.vim @benknoble
|
||||
runtime/ftplugin/rhelp.vim @jalvesaq
|
||||
runtime/ftplugin/rmd.vim @jalvesaq
|
||||
runtime/ftplugin/rnoweb.vim @jalvesaq
|
||||
@@ -166,8 +189,10 @@ runtime/ftplugin/sass.vim @tpope
|
||||
runtime/ftplugin/scala.vim @derekwyatt
|
||||
runtime/ftplugin/scss.vim @tpope
|
||||
runtime/ftplugin/sdoc.vim @gpanders
|
||||
runtime/ftplugin/sh.vim @dkearns
|
||||
runtime/ftplugin/solution.vim @dkearns
|
||||
runtime/ftplugin/spec.vim @ignatenkobrain
|
||||
runtime/ftplugin/swayconfig.vim @jamespeapen
|
||||
runtime/ftplugin/systemverilog.vim @Kocha
|
||||
runtime/ftplugin/tap.vim @petdance
|
||||
runtime/ftplugin/tcsh.vim @dkearns
|
||||
@@ -177,6 +202,7 @@ runtime/ftplugin/toml.vim @averms
|
||||
runtime/ftplugin/tt2html.vim @petdance
|
||||
runtime/ftplugin/typescript.vim @dkearns
|
||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||
runtime/ftplugin/vdf.vim @ObserverOfTime
|
||||
runtime/ftplugin/wast.vim @rhysd
|
||||
runtime/ftplugin/wget.vim @dkearns
|
||||
runtime/ftplugin/wget2.vim @dkearns
|
||||
@@ -186,6 +212,7 @@ runtime/ftplugin/zsh.vim @chrisbra
|
||||
runtime/indent/basic.vim @dkearns
|
||||
runtime/indent/bst.vim @tpope
|
||||
runtime/indent/cdl.vim @dkearns
|
||||
runtime/indent/chatito.vim @ObserverOfTime
|
||||
runtime/indent/clojure.vim @axvr
|
||||
runtime/indent/config.vim @dkearns
|
||||
runtime/indent/cs.vim @nickspoons
|
||||
@@ -203,11 +230,15 @@ runtime/indent/eterm.vim @dkearns
|
||||
runtime/indent/falcon.vim @steveno
|
||||
runtime/indent/framescript.vim @dkearns
|
||||
runtime/indent/freebasic.vim @dkearns
|
||||
runtime/indent/gdscript.vim @habamax
|
||||
runtime/indent/gitconfig.vim @tpope
|
||||
runtime/indent/gitolite.vim @sitaramc
|
||||
runtime/indent/go.vim @dbarnett
|
||||
runtime/indent/gyp.vim @ObserverOfTime
|
||||
runtime/indent/haml.vim @tpope
|
||||
runtime/indent/hare.vim @rsaihe
|
||||
runtime/indent/idlang.vim @dkearns
|
||||
runtime/indent/j.vim @glts
|
||||
runtime/indent/java.vim @xuhdev
|
||||
runtime/indent/javascript.vim @bounceme
|
||||
runtime/indent/json.vim @elzr
|
||||
@@ -229,6 +260,7 @@ runtime/indent/prolog.vim @dkearns
|
||||
runtime/indent/ps1.vim @heaths
|
||||
runtime/indent/qb64.vim @dkearns
|
||||
runtime/indent/r.vim @jalvesaq
|
||||
runtime/indent/racket.vim @benknoble
|
||||
runtime/indent/readline.vim @dkearns
|
||||
runtime/indent/rhelp.vim @jalvesaq
|
||||
runtime/indent/rmd.vim @jalvesaq
|
||||
@@ -260,6 +292,7 @@ runtime/plugin/netrwPlugin.vim @cecamp
|
||||
runtime/plugin/tarPlugin.vim @cecamp
|
||||
runtime/plugin/vimballPlugin.vim @cecamp
|
||||
runtime/plugin/zipPlugin.vim @cecamp
|
||||
runtime/syntax/abaqus.vim @costerwi
|
||||
runtime/syntax/aidl.vim @dpelle
|
||||
runtime/syntax/amiga.vim @cecamp
|
||||
runtime/syntax/arduino.vim @johshoff
|
||||
@@ -277,6 +310,7 @@ runtime/syntax/cabal.vim @coot
|
||||
runtime/syntax/cabalconfig.vim @coot
|
||||
runtime/syntax/cabalproject.vim @coot
|
||||
runtime/syntax/cf.vim @ernstvanderlinden
|
||||
runtime/syntax/chatito.vim @ObserverOfTime
|
||||
runtime/syntax/clojure.vim @axvr
|
||||
runtime/syntax/cs.vim @nickspoons
|
||||
runtime/syntax/csh.vim @cecamp
|
||||
@@ -296,26 +330,39 @@ runtime/syntax/eiffel.vim @jocelyn
|
||||
runtime/syntax/elmfilt.vim @cecamp
|
||||
runtime/syntax/erlang.vim @hcs42
|
||||
runtime/syntax/eruby.vim @tpope @dkearns
|
||||
runtime/syntax/expect.vim @dkearns
|
||||
runtime/syntax/exports.vim @cecamp
|
||||
runtime/syntax/falcon.vim @steveno
|
||||
runtime/syntax/fennel.vim @gpanders
|
||||
runtime/syntax/fetchmail.vim @dkearns
|
||||
runtime/syntax/forth.vim @jkotlinski
|
||||
runtime/syntax/fpcmake.vim @dkearns
|
||||
runtime/syntax/freebasic.vim @dkearns
|
||||
runtime/syntax/fstab.vim @rid9
|
||||
runtime/syntax/gdresource.vim @habamax
|
||||
runtime/syntax/gdscript.vim @habamax
|
||||
runtime/syntax/gdshader.vim @habamax
|
||||
runtime/syntax/git.vim @tpope
|
||||
runtime/syntax/gitattributes.vim @ObserverOfTime
|
||||
runtime/syntax/gitcommit.vim @tpope
|
||||
runtime/syntax/gitconfig.vim @tpope
|
||||
runtime/syntax/gitignore.vim @ObserverOfTime
|
||||
runtime/syntax/gitolite.vim @sitaramc
|
||||
runtime/syntax/gitrebase.vim @tpope
|
||||
runtime/syntax/go.vim @bhcleek
|
||||
runtime/syntax/godoc.vim @dbarnett
|
||||
runtime/syntax/gprof.vim @dpelle
|
||||
runtime/syntax/groff.vim @jmarshall
|
||||
runtime/syntax/gyp.vim @ObserverOfTime
|
||||
runtime/syntax/haml.vim @tpope
|
||||
runtime/syntax/hare.vim @rsaihe
|
||||
runtime/syntax/haskell.vim @coot
|
||||
runtime/syntax/hgcommit.vim @k-takata
|
||||
runtime/syntax/html.vim @dkearns
|
||||
runtime/syntax/i3config.vim @hiqua
|
||||
runtime/syntax/icon.vim @dkearns
|
||||
runtime/syntax/indent.vim @dkearns
|
||||
runtime/syntax/j.vim @glts
|
||||
runtime/syntax/jargon.vim @h3xx
|
||||
runtime/syntax/java.vim @fleiner
|
||||
runtime/syntax/jsonc.vim @izhakjakov
|
||||
@@ -325,6 +372,7 @@ runtime/syntax/less.vim @genoma
|
||||
runtime/syntax/lex.vim @cecamp
|
||||
runtime/syntax/liquid.vim @tpope
|
||||
runtime/syntax/lisp.vim @cecamp
|
||||
runtime/syntax/lyrics.vim @ObserverOfTime
|
||||
runtime/syntax/lynx.vim @dkearns
|
||||
runtime/syntax/m3build.vim @dkearns
|
||||
runtime/syntax/m3quake.vim @dkearns
|
||||
@@ -357,6 +405,7 @@ runtime/syntax/ps1xml.vim @heaths
|
||||
runtime/syntax/psl.vim @danielkho
|
||||
runtime/syntax/qb64.vim @dkearns
|
||||
runtime/syntax/r.vim @jalvesaq
|
||||
runtime/syntax/racket.vim @benknoble
|
||||
runtime/syntax/raml.vim @in3d
|
||||
runtime/syntax/ratpoison.vim @trapd00r
|
||||
runtime/syntax/rc.vim @chrisbra
|
||||
@@ -378,12 +427,14 @@ runtime/syntax/sdoc.vim @gpanders
|
||||
runtime/syntax/sh.vim @cecamp
|
||||
runtime/syntax/sm.vim @cecamp
|
||||
runtime/syntax/spec.vim @ignatenkobrain
|
||||
runtime/syntax/srt.vim @ObserverOfTime
|
||||
runtime/syntax/sqloracle.vim @chrisbra
|
||||
runtime/syntax/squirrel.vim @zenmatic
|
||||
runtime/syntax/sshconfig.vim @Jakuje
|
||||
runtime/syntax/sshdconfig.vim @Jakuje
|
||||
runtime/syntax/sudoers.vim @e-kwsm
|
||||
runtime/syntax/svn.vim @hdima
|
||||
runtime/syntax/swayconfig.vim @jamespeapen
|
||||
runtime/syntax/systemverilog.vim @Kocha
|
||||
runtime/syntax/tags.vim @cecamp
|
||||
runtime/syntax/tap.vim @petdance
|
||||
@@ -399,6 +450,7 @@ runtime/syntax/tt2js.vim @petdance
|
||||
runtime/syntax/typescript.vim @HerringtonDarkholme
|
||||
runtime/syntax/typescriptcommon.vim @HerringtonDarkholme
|
||||
runtime/syntax/typescriptreact.vim @HerringtonDarkholme
|
||||
runtime/syntax/vdf.vim @ObserverOfTime
|
||||
runtime/syntax/vim.vim @cecamp
|
||||
runtime/syntax/vroom.vim @dbarnett
|
||||
runtime/syntax/wast.vim @rhysd
|
||||
|
||||
6
.github/dependabot.yml
vendored
Normal file
6
.github/dependabot.yml
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
224
.github/workflows/ci.yml
vendored
224
.github/workflows/ci.yml
vendored
@@ -12,16 +12,19 @@ concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
TEST: test
|
||||
SRCDIR: ./src
|
||||
LEAK_CFLAGS: -DEXITFREE
|
||||
CFLAGS: -Wno-error=deprecated-declarations
|
||||
CFLAGS: -Wno-deprecated-declarations
|
||||
LOG_DIR: ${{ github.workspace }}/logs
|
||||
TERM: xterm
|
||||
DISPLAY: ':99'
|
||||
@@ -98,17 +101,17 @@ jobs:
|
||||
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100
|
||||
sudo update-alternatives --set gcc /usr/bin/gcc-11
|
||||
|
||||
- name: Install clang-14
|
||||
- name: Install clang-15
|
||||
if: matrix.compiler == 'clang'
|
||||
run: |
|
||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
. /etc/lsb-release
|
||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-14 main"
|
||||
sudo apt install -y clang-14 llvm-14
|
||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-14 100
|
||||
sudo update-alternatives --set clang /usr/bin/clang-14
|
||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-14 100
|
||||
sudo update-alternatives --install /usr/bin/asan_symbolize asan_symbolize /usr/bin/asan_symbolize-14 100
|
||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-15 main"
|
||||
sudo apt install -y clang-15 llvm-15
|
||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100
|
||||
sudo update-alternatives --set clang /usr/bin/clang-15
|
||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-15 100
|
||||
sudo update-alternatives --install /usr/bin/asan_symbolize asan_symbolize /usr/bin/asan_symbolize-15 100
|
||||
|
||||
- name: Set up environment
|
||||
run: |
|
||||
@@ -167,11 +170,6 @@ jobs:
|
||||
# Use llvm-cov instead of gcov when compiler is clang.
|
||||
ln -fs /usr/bin/llvm-cov ${HOME}/bin/gcov
|
||||
fi
|
||||
# Setup lua5.3 manually since its package doesn't provide alternative.
|
||||
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
|
||||
if [[ ${CONFOPT} =~ luainterp ]]; then
|
||||
sudo update-alternatives --install /usr/bin/lua lua /usr/bin/lua5.3 10
|
||||
fi
|
||||
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
|
||||
sudo usermod -a -G audio "${USER}"
|
||||
sudo bash ci/setup-xvfb.sh
|
||||
@@ -255,7 +253,7 @@ jobs:
|
||||
|
||||
- name: Codecov
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v3.1.0
|
||||
uses: codecov/codecov-action@v3.1.1
|
||||
with:
|
||||
flags: linux,${{ matrix.features }}-${{ matrix.compiler }}-${{ matrix.extra }}
|
||||
|
||||
@@ -268,7 +266,7 @@ jobs:
|
||||
done
|
||||
|
||||
# coveralls:
|
||||
# runs-on: ubuntu-18.04
|
||||
# runs-on: ubuntu-20.04
|
||||
#
|
||||
# needs: linux
|
||||
# if: always() && github.event_name != 'pull_request'
|
||||
@@ -387,35 +385,15 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
toolchain: [msvc, mingw]
|
||||
arch: [x64, x86]
|
||||
features: [HUGE, NORMAL]
|
||||
include:
|
||||
- arch: x64
|
||||
vcarch: amd64
|
||||
warch: x64
|
||||
bits: 64
|
||||
msystem: MINGW64
|
||||
cygreg: registry
|
||||
pyreg: ""
|
||||
- arch: x86
|
||||
vcarch: x86
|
||||
warch: ia32
|
||||
bits: 32
|
||||
msystem: MINGW32
|
||||
cygreg: registry32
|
||||
pyreg: "-32"
|
||||
- toolchain: mingw
|
||||
arch: x64
|
||||
features: HUGE
|
||||
coverage: yes
|
||||
exclude:
|
||||
- toolchain: msvc
|
||||
arch: x64
|
||||
features: NORMAL
|
||||
- toolchain: mingw
|
||||
arch: x86
|
||||
features: NORMAL
|
||||
- { features: HUGE, toolchain: msvc, VIMDLL: no, GUI: no, arch: x64 }
|
||||
- { features: HUGE, toolchain: mingw, VIMDLL: yes, GUI: yes, arch: x86, coverage: yes }
|
||||
- { features: HUGE, toolchain: msvc, VIMDLL: no, GUI: yes, arch: x86 }
|
||||
- { features: HUGE, toolchain: mingw, VIMDLL: yes, GUI: no, arch: x64, coverage: yes }
|
||||
- { features: NORMAL, toolchain: msvc, VIMDLL: yes, GUI: no, arch: x86 }
|
||||
- { features: NORMAL, toolchain: mingw, VIMDLL: no, GUI: yes, arch: x64 }
|
||||
- { features: TINY, toolchain: msvc, VIMDLL: yes, GUI: yes, arch: x64 }
|
||||
- { features: TINY, toolchain: mingw, VIMDLL: no, GUI: no, arch: x86 }
|
||||
|
||||
steps:
|
||||
- name: Initialize
|
||||
@@ -423,13 +401,32 @@ jobs:
|
||||
shell: bash
|
||||
run: |
|
||||
git config --global core.autocrlf input
|
||||
echo "VCVARSALL=$(vswhere -products \* -latest -property installationPath)\\VC\\Auxiliary\\Build\\vcvarsall.bat" >> $GITHUB_ENV
|
||||
if [ "${{ matrix.arch }}" = "x86" ]; then
|
||||
choco install python2 --forcex86
|
||||
|
||||
if [ "${{ matrix.arch }}" = "x64" ]; then
|
||||
cygreg=registry
|
||||
pyreg=
|
||||
echo "VCARCH=amd64" >> $GITHUB_ENV
|
||||
echo "WARCH=x64" >> $GITHUB_ENV
|
||||
echo "BITS=64" >> $GITHUB_ENV
|
||||
echo "MSYSTEM=MINGW64" >> $GITHUB_ENV
|
||||
else
|
||||
choco install python2
|
||||
cygreg=registry32
|
||||
pyreg=-32
|
||||
echo "VCARCH=x86" >> $GITHUB_ENV
|
||||
echo "WARCH=ia32" >> $GITHUB_ENV
|
||||
echo "BITS=32" >> $GITHUB_ENV
|
||||
echo "MSYSTEM=MINGW32" >> $GITHUB_ENV
|
||||
fi
|
||||
python3_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}${{ matrix.pyreg }}/InstallPath/@")
|
||||
|
||||
echo "VCVARSALL=$(vswhere -products \* -latest -property installationPath)\\VC\\Auxiliary\\Build\\vcvarsall.bat" >> $GITHUB_ENV
|
||||
if [ "${{ matrix.features }}" != "TINY" ]; then
|
||||
if [ "${{ matrix.arch }}" = "x86" ]; then
|
||||
choco install python2 --forcex86
|
||||
else
|
||||
choco install python2
|
||||
fi
|
||||
fi
|
||||
python3_dir=$(cat "/proc/$cygreg/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}$pyreg/InstallPath/@")
|
||||
echo "PYTHON3_DIR=$python3_dir" >> $GITHUB_ENV
|
||||
|
||||
- uses: msys2/setup-msys2@v2
|
||||
@@ -439,7 +436,7 @@ jobs:
|
||||
install: tar
|
||||
pacboy: >-
|
||||
make:p gcc:p
|
||||
msystem: ${{ matrix.msystem }}
|
||||
msystem: ${{ env.MSYSTEM }}
|
||||
release: false
|
||||
|
||||
- name: Checkout repository from github
|
||||
@@ -456,7 +453,7 @@ jobs:
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: downloads
|
||||
key: ${{ runner.os }}-${{ matrix.bits }}-${{ hashFiles('urls.txt') }}
|
||||
key: ${{ runner.os }}-${{ matrix.arch }}-${{ hashFiles('urls.txt') }}
|
||||
|
||||
- name: Download dependencies
|
||||
shell: cmd
|
||||
@@ -465,14 +462,14 @@ jobs:
|
||||
if not exist downloads mkdir downloads
|
||||
|
||||
echo %COL_GREEN%Download Lua%COL_RESET%
|
||||
call :downloadfile %LUA${{ matrix.bits }}_URL% downloads\lua.zip
|
||||
call :downloadfile %LUA${{ env.BITS }}_URL% downloads\lua.zip
|
||||
7z x downloads\lua.zip -o%LUA_DIR% > nul || exit 1
|
||||
|
||||
echo %COL_GREEN%Download winpty%COL_RESET%
|
||||
call :downloadfile %WINPTY_URL% downloads\winpty.zip
|
||||
7z x -y downloads\winpty.zip -oD:\winpty > nul || exit 1
|
||||
copy /Y D:\winpty\${{ matrix.warch }}\bin\winpty.dll src\winpty${{ matrix.bits }}.dll
|
||||
copy /Y D:\winpty\${{ matrix.warch }}\bin\winpty-agent.exe src\
|
||||
copy /Y D:\winpty\%WARCH%\bin\winpty.dll src\winpty%BITS%.dll
|
||||
copy /Y D:\winpty\%WARCH%\bin\winpty-agent.exe src\
|
||||
|
||||
goto :eof
|
||||
|
||||
@@ -487,31 +484,28 @@ jobs:
|
||||
)
|
||||
goto :eof
|
||||
|
||||
- name: Copy src directory to src2
|
||||
shell: cmd
|
||||
run: xcopy src src2\ /E > nul
|
||||
|
||||
- name: Build (MSVC)
|
||||
if: matrix.toolchain == 'msvc'
|
||||
shell: cmd
|
||||
run: |
|
||||
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
||||
call "%VCVARSALL%" %VCARCH%
|
||||
cd src
|
||||
if "${{ matrix.VIMDLL }}"=="yes" (
|
||||
set GUI=yes
|
||||
) else (
|
||||
set GUI=${{ matrix.GUI }}
|
||||
)
|
||||
if "${{ matrix.features }}"=="HUGE" (
|
||||
nmake -nologo -f Make_mvc.mak ^
|
||||
FEATURES=${{ matrix.features }} ^
|
||||
GUI=yes IME=yes ICONV=yes VIMDLL=yes ^
|
||||
GUI=%GUI% IME=yes ICONV=yes VIMDLL=${{ matrix.VIMDLL }} ^
|
||||
DYNAMIC_LUA=yes LUA=%LUA_DIR% ^
|
||||
DYNAMIC_PYTHON=yes PYTHON=%PYTHON_DIR% ^
|
||||
DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR%
|
||||
) else (
|
||||
nmake -nologo -f Make_mvc.mak ^
|
||||
FEATURES=${{ matrix.features }} ^
|
||||
GUI=yes IME=yes ICONV=yes VIMDLL=yes
|
||||
)
|
||||
if not exist vim${{ matrix.bits }}.dll (
|
||||
echo %COL_RED%Build failure.%COL_RESET%
|
||||
exit 1
|
||||
GUI=%GUI% IME=yes ICONV=yes VIMDLL=${{ matrix.VIMDLL }}
|
||||
)
|
||||
|
||||
- name: Build (MinGW)
|
||||
@@ -519,10 +513,15 @@ jobs:
|
||||
shell: msys2 {0}
|
||||
run: |
|
||||
cd src
|
||||
if [ "${{ matrix.VIMDLL }}" = "yes" ]; then
|
||||
GUI=yes
|
||||
else
|
||||
GUI=${{ matrix.GUI }}
|
||||
fi
|
||||
if [ "${{ matrix.features }}" = "HUGE" ]; then
|
||||
mingw32-make -f Make_ming.mak -j2 \
|
||||
FEATURES=${{ matrix.features }} \
|
||||
GUI=yes IME=yes ICONV=yes VIMDLL=yes \
|
||||
GUI=$GUI IME=yes ICONV=yes VIMDLL=${{ matrix.VIMDLL }} \
|
||||
DYNAMIC_LUA=yes LUA=${LUA_DIR_SLASH} \
|
||||
DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \
|
||||
DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \
|
||||
@@ -530,17 +529,27 @@ jobs:
|
||||
else
|
||||
mingw32-make -f Make_ming.mak -j2 \
|
||||
FEATURES=${{ matrix.features }} \
|
||||
GUI=yes IME=yes ICONV=yes VIMDLL=yes \
|
||||
GUI=$GUI IME=yes ICONV=yes VIMDLL=${{ matrix.VIMDLL }} \
|
||||
STATIC_STDCPLUS=yes
|
||||
fi
|
||||
|
||||
- name: Check version
|
||||
shell: cmd
|
||||
run: |
|
||||
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
||||
src\vim --version || exit 1
|
||||
src\vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
|
||||
src\vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%
|
||||
if "${{ matrix.GUI }}"=="yes" (
|
||||
start /wait src\gvim -u NONE -i NONE -c "redir > version.txt | ver | q" || exit 1
|
||||
type version.txt
|
||||
echo.
|
||||
start /wait src\gvim -u NONE -i NONE -c "redir! > version.txt | so ci\if_ver-1.vim | q"
|
||||
start /wait src\gvim -u NONE -i NONE -c "redir >> version.txt | so ci\if_ver-2.vim | q"
|
||||
type version.txt
|
||||
del version.txt
|
||||
) else (
|
||||
src\vim --version || exit 1
|
||||
src\vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
|
||||
src\vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
|
||||
)
|
||||
|
||||
#- name: Prepare Artifact
|
||||
# shell: cmd
|
||||
@@ -555,51 +564,39 @@ jobs:
|
||||
# name: vim${{ matrix.bits }}-${{ matrix.toolchain }}
|
||||
# path: ./artifacts
|
||||
|
||||
- name: Copy gcov data files to src2
|
||||
if: matrix.coverage
|
||||
shell: msys2 {0}
|
||||
run: find src -name '*.gcno' | tar -c -T - | tar -x -C src2 --strip-components 1
|
||||
|
||||
- name: Test and show the result of testing gVim
|
||||
if: matrix.GUI == 'yes' || matrix.VIMDLL == 'yes'
|
||||
shell: cmd
|
||||
timeout-minutes: 20
|
||||
timeout-minutes: 15
|
||||
run: |
|
||||
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
||||
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
||||
|
||||
echo %COL_GREEN%Start testing Vim in background.%COL_RESET%
|
||||
start cmd /c "cd src2\testdir & nmake -nologo -f Make_dos.mak VIMPROG=..\..\src\vim > nul & echo done>done.txt"
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%
|
||||
call "%VCVARSALL%" %VCARCH%
|
||||
|
||||
echo %COL_GREEN%Test gVim:%COL_RESET%
|
||||
cd src\testdir
|
||||
nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1
|
||||
|
||||
- name: Show the result of testing Vim
|
||||
shell: cmd
|
||||
timeout-minutes: 20
|
||||
run: |
|
||||
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
|
||||
call "%VCVARSALL%" ${{ matrix.vcarch }}
|
||||
|
||||
echo %COL_GREEN%Wait for Vim tests to finish.%COL_RESET%
|
||||
cd src2\testdir
|
||||
:: Wait about 10 minutes.
|
||||
for /L %%i in (1,1,60) do (
|
||||
if exist done.txt goto exitloop
|
||||
timeout 10 > NUL 2>&1
|
||||
if ERRORLEVEL 1 ping -n 11 localhost > NUL
|
||||
if "${{ matrix.GUI }}"=="yes" (
|
||||
nmake -nologo -f Make_mvc.mak VIMPROG=..\gvim || exit 1
|
||||
) else (
|
||||
@rem Run only tiny tests.
|
||||
nmake -nologo -f Make_mvc.mak tiny VIMPROG=..\gvim || exit 1
|
||||
)
|
||||
set timeout=1
|
||||
:exitloop
|
||||
|
||||
echo %COL_GREEN%The result of testing Vim:%COL_RESET%
|
||||
cd src2\testdir
|
||||
if exist messages type messages
|
||||
nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1
|
||||
- name: Test and show the result of testing Vim
|
||||
if: matrix.GUI == 'no' || matrix.VIMDLL == 'yes'
|
||||
shell: cmd
|
||||
timeout-minutes: 15
|
||||
run: |
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%
|
||||
call "%VCVARSALL%" %VCARCH%
|
||||
|
||||
if "%timeout%"=="1" (
|
||||
echo %COL_RED%Timed out.%COL_RESET%
|
||||
exit 1
|
||||
echo %COL_GREEN%Test Vim:%COL_RESET%
|
||||
cd src\testdir
|
||||
nmake -nologo -f Make_mvc.mak clean
|
||||
if "${{ matrix.GUI }}"=="no" (
|
||||
nmake -nologo -f Make_mvc.mak VIMPROG=..\vim || exit 1
|
||||
) else (
|
||||
@rem Run only tiny tests.
|
||||
nmake -nologo -f Make_mvc.mak tiny VIMPROG=..\vim || exit 1
|
||||
)
|
||||
|
||||
- name: Generate gcov files
|
||||
@@ -608,19 +605,10 @@ jobs:
|
||||
run: |
|
||||
cd src
|
||||
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||
cd ../src2
|
||||
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||
|
||||
- name: Codecov (gVim)
|
||||
- name: Codecov
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v3.1.0
|
||||
uses: codecov/codecov-action@v3.1.1
|
||||
with:
|
||||
directory: src
|
||||
flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}-gui
|
||||
|
||||
- name: Codecov (Vim)
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v3.1.0
|
||||
with:
|
||||
directory: src2
|
||||
flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}
|
||||
|
||||
7
.github/workflows/codeql-analysis.yml
vendored
7
.github/workflows/codeql-analysis.yml
vendored
@@ -21,8 +21,15 @@ concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
security-events: write # (github/codeql-action/autobuild)
|
||||
|
||||
name: Analyze
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
|
||||
12
.github/workflows/coverity.yml
vendored
12
.github/workflows/coverity.yml
vendored
@@ -4,12 +4,16 @@ on:
|
||||
- cron: '42 0 * * *' # Run once per day, to avoid Coverity's submission limits
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
jobs:
|
||||
scan:
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
env:
|
||||
CC: gcc
|
||||
CFLAGS: -Wno-deprecated-declarations
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
|
||||
steps:
|
||||
@@ -50,12 +54,6 @@ jobs:
|
||||
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
) >> $GITHUB_ENV
|
||||
|
||||
- name: Set up system
|
||||
run: |
|
||||
# Setup lua5.3 manually since its package doesn't provide alternative.
|
||||
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
|
||||
sudo update-alternatives --install /usr/bin/lua lua /usr/bin/lua5.3 10
|
||||
|
||||
- name: Configure
|
||||
run: |
|
||||
./configure --with-features=huge ${CONFOPT} --enable-fail-if-missing
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -82,6 +82,7 @@ src/testdir/dostmp/*
|
||||
src/testdir/messages
|
||||
src/testdir/viminfo
|
||||
src/testdir/opt_test.vim
|
||||
src/testdir/failed
|
||||
runtime/indent/testdir/*.out
|
||||
runtime/indent/testdir/*.fail
|
||||
src/memfile_test
|
||||
|
||||
288
.travis.yml
288
.travis.yml
@@ -1,288 +0,0 @@
|
||||
language: c
|
||||
|
||||
env:
|
||||
global:
|
||||
- BUILD=yes TEST=test CONFOPT= LEAK_CFLAGS="-DEXITFREE" SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no LOG_DIR="$TRAVIS_BUILD_DIR/logs"
|
||||
|
||||
_anchors:
|
||||
envs:
|
||||
- &tiny-nogui
|
||||
FEATURES=tiny TEST=testtiny CONFOPT="--disable-gui"
|
||||
- &tiny
|
||||
FEATURES=tiny TEST=testtiny
|
||||
- &small
|
||||
FEATURES=small TEST=testtiny
|
||||
- &normal
|
||||
FEATURES=normal
|
||||
- &linux-huge
|
||||
FEATURES=huge TEST="scripttests test_libvterm"
|
||||
CONFOPT="--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
- &osx-huge # macOS build
|
||||
FEATURES=huge
|
||||
CONFOPT="--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
- &unittests
|
||||
BUILD=no TEST=unittests FEATURES=huge CHECK_AUTOCONF=yes
|
||||
- &coverage
|
||||
CFLAGS="--coverage -DUSE_GCOV_FLUSH" LDFLAGS=--coverage
|
||||
- &asan # ASAN build
|
||||
SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize-recover=all -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer"
|
||||
ASAN_OPTIONS="print_stacktrace=1 log_path=$LOG_DIR/asan" UBSAN_OPTIONS="print_stacktrace=1 log_path=$LOG_DIR/ubsan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt"
|
||||
- &shadowopt
|
||||
SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow
|
||||
|
||||
linux: &linux
|
||||
os: linux
|
||||
dist: bionic
|
||||
addons:
|
||||
apt:
|
||||
packages: &apt-packages
|
||||
- autoconf
|
||||
- clang
|
||||
- lcov
|
||||
- gettext
|
||||
- libcanberra-dev
|
||||
- libperl-dev
|
||||
- python-dev
|
||||
- python3-dev
|
||||
- liblua5.3-dev
|
||||
- lua5.3
|
||||
- ruby-dev
|
||||
- tcl-dev
|
||||
- cscope
|
||||
- libgtk2.0-dev
|
||||
- desktop-file-utils
|
||||
- libtool-bin
|
||||
services:
|
||||
- xvfb
|
||||
before_install:
|
||||
- rvm reset
|
||||
# Use llvm-cov instead of gcov when compiler is clang.
|
||||
- |
|
||||
if [[ "${CC}" = "clang" ]]; then
|
||||
ln -sf "$(command -v llvm-cov)" /home/travis/bin/gcov
|
||||
fi
|
||||
# Setup lua5.3 manually since its package doesn't provide alternative.
|
||||
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
|
||||
- |
|
||||
if [[ "${CONFOPT}" =~ luainterp ]]; then
|
||||
sudo update-alternatives --install /usr/bin/lua lua /usr/bin/lua5.3 10
|
||||
fi
|
||||
before_script:
|
||||
- sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
|
||||
# It appears we can load "snd-dummy" on only amd64.
|
||||
- |
|
||||
if [[ "${TRAVIS_CPU_ARCH}" = amd64 ]]; then
|
||||
sudo bash ci/load-snd-dummy.sh || true
|
||||
fi
|
||||
- sudo usermod -a -G audio $USER
|
||||
- do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||
|
||||
osx: &osx
|
||||
os: osx
|
||||
before_script:
|
||||
- do_test() { "$@"; }
|
||||
|
||||
homebrew: &osx-homebrew
|
||||
addons:
|
||||
homebrew:
|
||||
packages:
|
||||
- lua
|
||||
update: true
|
||||
cache:
|
||||
directories:
|
||||
- /usr/local/Homebrew/Library/Homebrew/vendor/
|
||||
- /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/
|
||||
before_install:
|
||||
- rvm reset
|
||||
# Lua is not installed on macOS
|
||||
- export LUA_PREFIX=/usr/local
|
||||
|
||||
coverage: &eval-coverage
|
||||
# needed for https support for coveralls building cffi only works with gcc,
|
||||
# not with clang
|
||||
- CC=gcc pip install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
|
||||
- ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
||||
- (cd "${SRCDIR}" && bash <(curl -s https://codecov.io/bash))
|
||||
|
||||
asan_symbolize: &asan_symbolize
|
||||
# Update pyenv to fix the error "/opt/pyenv/libexec/pyenv: line 43: cd: asan_symbolize-6.0: Not a directory".
|
||||
# https://github.com/pyenv/pyenv/issues/580
|
||||
- (cd "${PYENV_ROOT}" && git fetch -p origin && git checkout "$(git rev-list --tags -n1)") &>/dev/null || true
|
||||
- for f in $(grep -l '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "$LOG_DIR"/*); do asan_symbolize-11 -l "$f"; done
|
||||
|
||||
branches:
|
||||
except:
|
||||
- /^v[0-9]/
|
||||
|
||||
script:
|
||||
- mkdir -p "$LOG_DIR"
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
- set -o errexit
|
||||
- echo -e "\\033[33;1mConfiguring Vim\\033[0m" && echo -en "travis_fold:start:configure\\r\\033[0K"
|
||||
- |
|
||||
if [[ "${CHECK_AUTOCONF}" = "yes" ]] && [[ "${CC}" = "gcc" ]]; then
|
||||
make -C src autoconf
|
||||
fi
|
||||
- |
|
||||
if [[ -n "${SHADOWOPT}" ]]; then
|
||||
make -C src shadow
|
||||
fi
|
||||
# "./configure" changes its working directory into "$SRCDIR".
|
||||
- ./configure --with-features=${FEATURES} ${CONFOPT} --enable-fail-if-missing
|
||||
- echo -en "travis_fold:end:configure\\r\\033[0K"
|
||||
- echo -e "\\033[33;1mBuilding Vim\\033[0m" && echo -en "travis_fold:start:build\\r\\033[0K"
|
||||
- |
|
||||
if [[ "${BUILD}" = "yes" ]]; then
|
||||
# Append various warning flags to CFLAGS.
|
||||
# BSD sed needs backup extension specified.
|
||||
sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
|
||||
if [[ "${TRAVIS_OS_NAME}" = "osx" ]] || [[ "${CC}" = "clang-11" ]]; then
|
||||
# On macOS, the entity of gcc is clang.
|
||||
sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk
|
||||
else
|
||||
sed -i.bak -f ci/config.mk.${CC}.sed ${SRCDIR}/auto/config.mk
|
||||
fi
|
||||
make ${SHADOWOPT} -j${NPROC}
|
||||
fi
|
||||
- echo -en "travis_fold:end:build\\r\\033[0K"
|
||||
- set +o errexit
|
||||
# Show Vim version and also if_xx versions.
|
||||
- |
|
||||
if [[ "${BUILD}" = "yes" ]]; then
|
||||
"${SRCDIR}"/vim --version
|
||||
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
|
||||
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
|
||||
fi
|
||||
- echo -e "\\033[33;1mTesting Vim\\033[0m" && echo -en "travis_fold:start:test\\r\\033[0K"
|
||||
- do_test make ${SHADOWOPT} ${TEST} && FOLD_MARKER=travis_fold
|
||||
- echo -en "${FOLD_MARKER}:end:test\\r\\033[0K"
|
||||
- |
|
||||
# Not all sanitizers will cause the tests to fail. This helps since we can
|
||||
# see all the failures instead of just the first one, but we still want the
|
||||
# test phase to fail if any sanitizer issues are detected.
|
||||
if [[ -n "${ASAN_OPTIONS}" ]]; then
|
||||
if grep -q '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "$LOG_DIR"/*; then
|
||||
false
|
||||
fi
|
||||
fi
|
||||
|
||||
# Instead of using all environments with both compilers on both systems,
|
||||
# exclude some builds on mac os x and linux.
|
||||
# On mac os x "tiny" is always without GUI, use 2 compilers in 2 environments.
|
||||
# Linux: 2 compilers on some of the environments + gcc on os390
|
||||
jobs:
|
||||
include:
|
||||
#- <<: *osx
|
||||
# name: tiny-nogui/clang
|
||||
# compiler: clang
|
||||
# env: *tiny-nogui
|
||||
#- <<: *osx
|
||||
# name: tiny-nogui/gcc
|
||||
# compiler: gcc
|
||||
# env: *tiny-nogui
|
||||
#- <<: *osx
|
||||
# <<: *osx-homebrew
|
||||
# name: huge/clang
|
||||
# compiler: clang
|
||||
# env: *osx-huge
|
||||
#- <<: *osx
|
||||
# <<: *osx-homebrew
|
||||
# name: huge/gcc
|
||||
# compiler: gcc
|
||||
# env: *osx-huge
|
||||
#- <<: *linux
|
||||
# name: tiny-nogui/clang
|
||||
# compiler: clang
|
||||
# env: *tiny-nogui
|
||||
#- <<: *linux
|
||||
# name: tiny-nogui/gcc
|
||||
# compiler: gcc
|
||||
# env: *tiny-nogui
|
||||
#- <<: *linux
|
||||
# name: tiny/clang
|
||||
# compiler: clang
|
||||
# env: *tiny
|
||||
#- <<: *linux
|
||||
# name: tiny/gcc
|
||||
# compiler: gcc
|
||||
# env: *tiny
|
||||
#- <<: *linux
|
||||
# name: small/gcc
|
||||
# compiler: gcc
|
||||
# env: *small
|
||||
#- <<: *linux
|
||||
# name: normal+shadow/clang
|
||||
# compiler: clang
|
||||
# env:
|
||||
# - *normal
|
||||
# - *shadowopt
|
||||
#- <<: *linux
|
||||
# name: normal+shadow/gcc
|
||||
# compiler: gcc
|
||||
# env:
|
||||
# - *normal
|
||||
# - *shadowopt
|
||||
- <<: *linux
|
||||
arch: s390x
|
||||
name: huge/gcc-s390x
|
||||
compiler: gcc
|
||||
env: *linux-huge
|
||||
services: []
|
||||
- <<: *linux
|
||||
arch: arm64
|
||||
name: huge/gcc-arm64
|
||||
compiler: gcc
|
||||
env: *linux-huge
|
||||
services: []
|
||||
#- <<: *linux
|
||||
# name: huge+coverage/clang
|
||||
# compiler: clang
|
||||
# env:
|
||||
# - *linux-huge
|
||||
# - *coverage
|
||||
# after_success: *eval-coverage
|
||||
#- <<: *linux
|
||||
# name: huge+coverage/gcc
|
||||
# compiler: gcc
|
||||
# env:
|
||||
# - *linux-huge
|
||||
# - *coverage
|
||||
# after_success: *eval-coverage
|
||||
#- <<: *linux # ASAN
|
||||
# name: huge+asan/clang
|
||||
# compiler: clang-11
|
||||
# addons:
|
||||
# apt:
|
||||
# sources:
|
||||
# - sourceline: 'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main'
|
||||
# key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
|
||||
# packages:
|
||||
# - *apt-packages
|
||||
# - clang-11
|
||||
# env:
|
||||
# - *linux-huge
|
||||
# - *asan
|
||||
# after_failure: *asan_symbolize
|
||||
#- <<: *linux
|
||||
# name: huge-testgui+coverage/gcc
|
||||
# compiler: gcc
|
||||
# env:
|
||||
# - *linux-huge
|
||||
# - *coverage
|
||||
# - TEST="-C src testgui"
|
||||
# after_success: *eval-coverage
|
||||
#- <<: *linux
|
||||
# name: unittests+coverage/gcc
|
||||
# compiler: gcc
|
||||
# env:
|
||||
# - *unittests
|
||||
# - *coverage
|
||||
# after_success: *eval-coverage
|
||||
#- <<: *linux
|
||||
# name: vimtags/gcc
|
||||
# compiler: gcc
|
||||
# env:
|
||||
# - *normal
|
||||
# - TEST="-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim"
|
||||
|
||||
# vim:set sts=2 sw=2 tw=0 et:
|
||||
@@ -65,9 +65,6 @@ If the maintainer does not respond, contact the vim-dev maillist.
|
||||
|
||||
# Translations
|
||||
|
||||
Translations of this CONTRIBUTING file:
|
||||
[Korean](https://github.com/cjw1359/opensource/blob/master/Vim/CONTRIBUTING_ko.md)
|
||||
|
||||
Translating messages and runtime files is very much appreciated! These things
|
||||
can be translated:
|
||||
* Messages in Vim, see [src/po/README.txt][1]
|
||||
|
||||
26
Filelist
26
Filelist
@@ -15,7 +15,6 @@ SRC_ALL = \
|
||||
.gitignore \
|
||||
.hgignore \
|
||||
.lgtm.yml \
|
||||
.travis.yml \
|
||||
.appveyor.yml \
|
||||
.codecov.yml \
|
||||
ci/appveyor.bat \
|
||||
@@ -172,7 +171,6 @@ SRC_ALL = \
|
||||
src/viminfo.c \
|
||||
src/winclip.c \
|
||||
src/window.c \
|
||||
src/tee/tee.c \
|
||||
src/xxd/xxd.c \
|
||||
src/testdir/gen_opt_test.vim \
|
||||
src/testdir/README.txt \
|
||||
@@ -211,6 +209,7 @@ SRC_ALL = \
|
||||
src/testdir/python_before/*.py \
|
||||
src/testdir/pyxfile/*.py \
|
||||
src/testdir/dumps/*.dump \
|
||||
src/testdir/dumps/*.vim \
|
||||
src/testdir/samples/*.txt \
|
||||
src/testdir/samples/test000 \
|
||||
src/testdir/color_ramp.vim \
|
||||
@@ -488,7 +487,6 @@ SRC_UNIX = \
|
||||
src/vimtutor \
|
||||
src/gvimtutor \
|
||||
src/which.sh \
|
||||
src/tee/Makefile \
|
||||
src/xxd/Makefile \
|
||||
|
||||
# source files for both DOS and Unix
|
||||
@@ -517,7 +515,7 @@ SRC_DOS_UNIX = \
|
||||
src/proto/if_tcl.pro \
|
||||
src/typemap \
|
||||
|
||||
# source files for DOS (also in the extra archive)
|
||||
# source files for MS-Windows (also in the extra archive)
|
||||
SRC_DOS = \
|
||||
src/GvimExt/*.mak \
|
||||
src/GvimExt/GvimExt.reg \
|
||||
@@ -541,9 +539,11 @@ SRC_DOS = \
|
||||
tools/rename.bat \
|
||||
src/bigvim.bat \
|
||||
src/bigvim64.bat \
|
||||
src/msvc2008.bat \
|
||||
src/msvc2010.bat \
|
||||
src/msvc-latest.bat \
|
||||
src/msvc2015.bat \
|
||||
src/msvc2017.bat \
|
||||
src/msvc2019.bat \
|
||||
src/msvc2022.bat \
|
||||
src/msys32.bat \
|
||||
src/msys64.bat \
|
||||
src/dlldata.c \
|
||||
@@ -556,7 +556,6 @@ SRC_DOS = \
|
||||
src/if_ole.cpp \
|
||||
src/if_ole.h \
|
||||
src/if_ole.idl \
|
||||
src/if_perl_msvc/stdbool.h \
|
||||
src/iscygpty.c \
|
||||
src/iscygpty.h \
|
||||
src/iid_ole.c \
|
||||
@@ -571,6 +570,7 @@ SRC_DOS = \
|
||||
src/proto/os_win32.pro \
|
||||
src/proto/os_mswin.pro \
|
||||
src/testdir/Make_dos.mak \
|
||||
src/testdir/Make_mvc.mak \
|
||||
src/testdir/Make_ming.mak \
|
||||
src/testdir/dos.vim \
|
||||
src/uninstall.c \
|
||||
@@ -579,7 +579,10 @@ SRC_DOS = \
|
||||
src/vimrun.c \
|
||||
src/xpm_w32.c \
|
||||
src/xpm_w32.h \
|
||||
src/tee/Make_ming.mak \
|
||||
src/tee/Make_mvc.mak \
|
||||
src/tee/Makefile \
|
||||
src/tee/tee.c \
|
||||
src/xxd/Make_ming.mak \
|
||||
src/xxd/Make_mvc.mak \
|
||||
nsis/gvim.nsi \
|
||||
@@ -621,10 +624,9 @@ SRC_DOS_BIN = \
|
||||
src/xpm/include/*.h \
|
||||
src/xpm/x64/lib-vc14/libXpm.lib \
|
||||
src/xpm/x64/lib/libXpm.a \
|
||||
src/xpm/x64/lib/libXpm.lib \
|
||||
src/xpm/x86/lib-vc14/libXpm.lib \
|
||||
src/xpm/x86/lib/libXpm.a \
|
||||
src/xpm/x86/lib/libXpm.lib \
|
||||
runtime/bitmaps/vim.ico \
|
||||
nsis/icons.zip \
|
||||
|
||||
# source files for Amiga, DOS, etc. (also in the extra archive)
|
||||
@@ -814,6 +816,8 @@ RT_SCRIPTS = \
|
||||
runtime/plugin/README.txt \
|
||||
runtime/syntax/*.vim \
|
||||
runtime/syntax/README.txt \
|
||||
runtime/syntax/shared/*.vim \
|
||||
runtime/syntax/shared/README.txt \
|
||||
|
||||
# Unix runtime
|
||||
RT_UNIX = \
|
||||
@@ -943,9 +947,6 @@ EXTRA = \
|
||||
README_extra.txt \
|
||||
src/VisVim/VisVim.dll \
|
||||
runtime/vimlogo.xpm \
|
||||
src/tee/Makefile \
|
||||
src/tee/Make_mvc.mak \
|
||||
src/tee/tee.c \
|
||||
|
||||
# files in READMEdir that are included from the top dir
|
||||
IN_README_DIR = \
|
||||
@@ -1017,6 +1018,7 @@ LANG_GEN = \
|
||||
runtime/spell/??/*.diff \
|
||||
runtime/spell/??/main.aap \
|
||||
runtime/spell/sr/README_sr.txt \
|
||||
runtime/spell/sr/convert.vim \
|
||||
runtime/spell/tet/*.diff \
|
||||
runtime/spell/tet/main.aap \
|
||||
runtime/spell/check/main.aap \
|
||||
|
||||
4
Makefile
4
Makefile
@@ -414,6 +414,7 @@ dossrc: dist no_title.vim dist/$(COMMENT_SRC) \
|
||||
tar cf - \
|
||||
$(SRC_ALL) \
|
||||
$(SRC_DOS) \
|
||||
$(SRC_DOS_BIN) \
|
||||
$(SRC_AMI_DOS) \
|
||||
$(SRC_DOS_UNIX) \
|
||||
runtime/doc/uganda.nsis.txt \
|
||||
@@ -423,9 +424,6 @@ dossrc: dist no_title.vim dist/$(COMMENT_SRC) \
|
||||
rmdir dist/vim/$(VIMRTDIR)/runtime
|
||||
# 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 -)
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)src.zip vim <$(COMMENT_SRC)
|
||||
|
||||
runtime/doc/uganda.nsis.txt: runtime/doc/uganda.txt
|
||||
|
||||
17
README.md
17
README.md
@@ -1,6 +1,6 @@
|
||||
[](https://www.vim.org)
|
||||
|
||||
[](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22) [](https://travis-ci.com/github/vim/vim) [](https://ci.appveyor.com/project/chrisbra/vim) [](https://cirrus-ci.com/github/vim/vim) [](https://codecov.io/gh/vim/vim?branch=master) [](https://scan.coverity.com/projects/vim) [](https://lgtm.com/projects/g/vim/vim/context:cpp) [](https://buildd.debian.org/vim) [](https://repology.org/metapackage/vim) [](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
|
||||
[](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22) [](https://ci.appveyor.com/project/chrisbra/vim) [](https://cirrus-ci.com/github/vim/vim) [](https://codecov.io/gh/vim/vim?branch=master) [](https://scan.coverity.com/projects/vim) [](https://lgtm.com/projects/g/vim/vim/context:cpp) [](https://buildd.debian.org/vim) [](https://repology.org/metapackage/vim) [](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
|
||||
|
||||
<sub>For translations of this README see the end.</sub>
|
||||
|
||||
@@ -28,10 +28,10 @@ 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
|
||||
mapped to commands by the user, and the mouse can be used.
|
||||
|
||||
Vim runs under MS-Windows (XP, Vista, 7, 8, 10), macOS, Haiku, VMS and almost
|
||||
all flavours of UNIX. Porting to other systems should not be very difficult.
|
||||
Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me/NT/2000, Amiga DOS,
|
||||
Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
Vim runs under MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS and almost all
|
||||
flavours of UNIX. Porting to other systems should not be very difficult.
|
||||
Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me/NT/2000/XP/Vista,
|
||||
Amiga DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
For Vim9 script see [README_VIM9](README_VIM9.md).
|
||||
|
||||
@@ -128,6 +128,8 @@ If you would like to help making Vim better, see the
|
||||
|
||||
## Information ##
|
||||
|
||||
If you are on macOS, you can use [Macvim](https://macvim-dev.github.io/macvim/).
|
||||
|
||||
The latest news about Vim can be found on the Vim home page:
|
||||
https://www.vim.org/
|
||||
|
||||
@@ -150,8 +152,3 @@ Send any other comments, patches, flowers and suggestions to:
|
||||
|
||||
|
||||
This is `README.md` for version 9.0 of Vim: Vi IMproved.
|
||||
|
||||
|
||||
## Translations of this README ##
|
||||
|
||||
[Korean](https://github.com/cjw1359/opensource/blob/master/Vim/README_ko.md)
|
||||
|
||||
@@ -16,10 +16,10 @@ 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
|
||||
mapped to commands by the user, and the mouse can be used.
|
||||
|
||||
Vim runs under MS-Windows (XP, Vista, 7, 8, 10), macOS, VMS and almost all
|
||||
Vim runs under MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS and almost all
|
||||
flavours of UNIX. Porting to other systems should not be very difficult.
|
||||
Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me/NT/2000, Amiga DOS,
|
||||
Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me/NT/2000/XP/Vista,
|
||||
Amiga DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
|
||||
DISTRIBUTION
|
||||
|
||||
@@ -366,11 +366,7 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ${VIMTOOLS}\winpty-agent.exe
|
||||
|
||||
SetOutPath $0\colors
|
||||
File ${VIMRT}\colors\*.*
|
||||
SetOutPath $0\colors\tools
|
||||
File ${VIMRT}\colors\tools\*.*
|
||||
SetOutPath $0\colors\lists
|
||||
File ${VIMRT}\colors\lists\*.*
|
||||
File /r ${VIMRT}\colors\*.*
|
||||
|
||||
SetOutPath $0\compiler
|
||||
File ${VIMRT}\compiler\*.*
|
||||
@@ -395,13 +391,7 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ${VIMRT}\plugin\*.*
|
||||
|
||||
SetOutPath $0\autoload
|
||||
File ${VIMRT}\autoload\*.*
|
||||
|
||||
SetOutPath $0\autoload\dist
|
||||
File ${VIMRT}\autoload\dist\*.*
|
||||
|
||||
SetOutPath $0\autoload\xml
|
||||
File ${VIMRT}\autoload\xml\*.*
|
||||
File /r ${VIMRT}\autoload\*.*
|
||||
|
||||
SetOutPath $0\import\dist
|
||||
File ${VIMRT}\import\dist\*.*
|
||||
@@ -410,7 +400,7 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ${VIMSRC}\vim.ico
|
||||
|
||||
SetOutPath $0\syntax
|
||||
File ${VIMRT}\syntax\*.*
|
||||
File /r ${VIMRT}\syntax\*.*
|
||||
|
||||
SetOutPath $0\spell
|
||||
File ${VIMRT}\spell\*.txt
|
||||
|
||||
95
runtime/autoload/bitbake.vim
Normal file
95
runtime/autoload/bitbake.vim
Normal file
@@ -0,0 +1,95 @@
|
||||
" Support for bitbake indenting, see runtime/indent/bitbake.vim
|
||||
|
||||
function s:is_bb_python_func_def(lnum)
|
||||
let stack = synstack(a:lnum, 1)
|
||||
if len(stack) == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
return synIDattr(stack[0], "name") == "bbPyFuncDef"
|
||||
endfunction
|
||||
|
||||
function bitbake#Indent(lnum)
|
||||
if !has('syntax_items')
|
||||
return -1
|
||||
endif
|
||||
|
||||
let stack = synstack(a:lnum, 1)
|
||||
if len(stack) == 0
|
||||
return -1
|
||||
endif
|
||||
|
||||
let name = synIDattr(stack[0], "name")
|
||||
|
||||
" TODO: support different styles of indentation for assignments. For now,
|
||||
" we only support like this:
|
||||
" VAR = " \
|
||||
" value1 \
|
||||
" value2 \
|
||||
" "
|
||||
"
|
||||
" i.e. each value indented by shiftwidth(), with the final quote " completely unindented.
|
||||
if name == "bbVarValue"
|
||||
" Quote handling is tricky. kernel.bbclass has this line for instance:
|
||||
" EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" " HOSTCPP="${BUILD_CPP}""
|
||||
" Instead of trying to handle crazy cases like that, just assume that a
|
||||
" double-quote on a line by itself (following an assignment) means the
|
||||
" user is closing the assignment, and de-dent.
|
||||
if getline(a:lnum) =~ '^\s*"$'
|
||||
return 0
|
||||
endif
|
||||
|
||||
let prevstack = synstack(a:lnum - 1, 1)
|
||||
if len(prevstack) == 0
|
||||
return -1
|
||||
endif
|
||||
|
||||
let prevname = synIDattr(prevstack[0], "name")
|
||||
|
||||
" Only indent if there was actually a continuation character on
|
||||
" the previous line, to avoid misleading indentation.
|
||||
let prevlinelastchar = synIDattr(synID(a:lnum - 1, col([a:lnum - 1, "$"]) - 1, 1), "name")
|
||||
let prev_continued = prevlinelastchar == "bbContinue"
|
||||
|
||||
" Did the previous line introduce an assignment?
|
||||
if index(["bbVarDef", "bbVarFlagDef"], prevname) != -1
|
||||
if prev_continued
|
||||
return shiftwidth()
|
||||
endif
|
||||
endif
|
||||
|
||||
if !prev_continued
|
||||
return 0
|
||||
endif
|
||||
|
||||
" Autoindent can take it from here
|
||||
return -1
|
||||
endif
|
||||
|
||||
if index(["bbPyDefRegion", "bbPyFuncRegion"], name) != -1
|
||||
let ret = python#GetIndent(a:lnum, function('s:is_bb_python_func_def'))
|
||||
" Should normally always be indented by at least one shiftwidth; but allow
|
||||
" return of -1 (defer to autoindent) or -2 (force indent to 0)
|
||||
if ret == 0
|
||||
return shiftwidth()
|
||||
elseif ret == -2
|
||||
return 0
|
||||
endif
|
||||
return ret
|
||||
endif
|
||||
|
||||
" TODO: GetShIndent doesn't detect tasks prepended with 'fakeroot'
|
||||
" Need to submit a patch upstream to Vim to provide an extension point.
|
||||
" Unlike the Python indenter, the Sh indenter is way too large to copy and
|
||||
" modify here.
|
||||
if name == "bbShFuncRegion"
|
||||
return GetShIndent()
|
||||
endif
|
||||
|
||||
" TODO:
|
||||
" + heuristics for de-denting out of a bbPyDefRegion? e.g. when the user
|
||||
" types an obvious BB keyword like addhandler or addtask, or starts
|
||||
" writing a shell task. Maybe too hard to implement...
|
||||
|
||||
return -1
|
||||
endfunction
|
||||
@@ -1,184 +1,100 @@
|
||||
" Language: ConTeXt typesetting engine
|
||||
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
" Latest Revision: 2016 Oct 21
|
||||
vim9script
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
# Language: ConTeXt typesetting engine
|
||||
# Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
# Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
||||
# Latest Revision: 2022 Sep 19
|
||||
|
||||
" Helper functions {{{
|
||||
function! s:context_echo(message, mode)
|
||||
redraw
|
||||
echo "\r"
|
||||
execute 'echohl' a:mode
|
||||
echomsg '[ConTeXt]' a:message
|
||||
echohl None
|
||||
endf
|
||||
# Typesetting {{{
|
||||
import autoload './typeset.vim'
|
||||
|
||||
function! s:sh()
|
||||
return has('win32') || has('win64') || has('win16') || has('win95')
|
||||
\ ? ['cmd.exe', '/C']
|
||||
\ : ['/bin/sh', '-c']
|
||||
endfunction
|
||||
export def ConTeXtCmd(path: string): list<string>
|
||||
var cmd = ['mtxrun', '--script', 'context', '--nonstopmode', '--autogenerate']
|
||||
if !empty(get(g:, 'context_extra_options', ''))
|
||||
cmd += g:context_extra_options
|
||||
endif
|
||||
cmd->add(path)
|
||||
return cmd
|
||||
enddef
|
||||
|
||||
" For backward compatibility
|
||||
if exists('*win_getid')
|
||||
export def Typeset(bufname: string, env = {}, Cmd = ConTeXtCmd): bool
|
||||
return typeset.TypesetBuffer(bufname, Cmd, env, 'ConTeXt')
|
||||
enddef
|
||||
|
||||
function! s:win_getid()
|
||||
return win_getid()
|
||||
endf
|
||||
export def JobStatus()
|
||||
typeset.JobStatus('ConTeXt')
|
||||
enddef
|
||||
|
||||
function! s:win_id2win(winid)
|
||||
return win_id2win(a:winid)
|
||||
endf
|
||||
export def StopJobs()
|
||||
typeset.StopJobs('ConTeXt')
|
||||
enddef
|
||||
|
||||
else
|
||||
export def Log(bufname: string)
|
||||
execute 'edit' typeset.LogPath(bufname)
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
function! s:win_getid()
|
||||
return winnr()
|
||||
endf
|
||||
# Completion {{{
|
||||
def BinarySearch(base: string, keywords: list<string>): list<string>
|
||||
const pat = '^' .. base
|
||||
const len = len(keywords)
|
||||
var res = []
|
||||
var lft = 0
|
||||
var rgt = len
|
||||
|
||||
function! s:win_id2win(winnr)
|
||||
return a:winnr
|
||||
endf
|
||||
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" ConTeXt jobs {{{
|
||||
if has('job')
|
||||
|
||||
let g:context_jobs = []
|
||||
|
||||
" Print the status of ConTeXt jobs
|
||||
function! context#job_status()
|
||||
let l:jobs = filter(g:context_jobs, 'job_status(v:val) == "run"')
|
||||
let l:n = len(l:jobs)
|
||||
call s:context_echo(
|
||||
\ 'There '.(l:n == 1 ? 'is' : 'are').' '.(l:n == 0 ? 'no' : l:n)
|
||||
\ .' job'.(l:n == 1 ? '' : 's').' running'
|
||||
\ .(l:n == 0 ? '.' : ' (' . join(l:jobs, ', ').').'),
|
||||
\ 'ModeMsg')
|
||||
endfunction
|
||||
|
||||
" Stop all ConTeXt jobs
|
||||
function! context#stop_jobs()
|
||||
let l:jobs = filter(g:context_jobs, 'job_status(v:val) == "run"')
|
||||
for job in l:jobs
|
||||
call job_stop(job)
|
||||
endfor
|
||||
sleep 1
|
||||
let l:tmp = []
|
||||
for job in l:jobs
|
||||
if job_status(job) == "run"
|
||||
call add(l:tmp, job)
|
||||
endif
|
||||
endfor
|
||||
let g:context_jobs = l:tmp
|
||||
if empty(g:context_jobs)
|
||||
call s:context_echo('Done. No jobs running.', 'ModeMsg')
|
||||
# Find the leftmost index matching base
|
||||
while lft < rgt
|
||||
var i = (lft + rgt) / 2
|
||||
if keywords[i] < base
|
||||
lft = i + 1
|
||||
else
|
||||
call s:context_echo('There are still some jobs running. Please try again.', 'WarningMsg')
|
||||
rgt = i
|
||||
endif
|
||||
endfunction
|
||||
endwhile
|
||||
|
||||
function! context#callback(path, job, status)
|
||||
if index(g:context_jobs, a:job) != -1 && job_status(a:job) != 'run' " just in case
|
||||
call remove(g:context_jobs, index(g:context_jobs, a:job))
|
||||
while lft < len && keywords[lft] =~ pat
|
||||
add(res, keywords[lft])
|
||||
lft += 1
|
||||
endwhile
|
||||
|
||||
return res
|
||||
enddef
|
||||
|
||||
var isMetaPostBlock = false
|
||||
|
||||
var MP_KEYWORDS: list<string> = []
|
||||
var CTX_KEYWORDS: list<string> = []
|
||||
|
||||
# Complete only MetaPost keywords in MetaPost blocks, and complete only
|
||||
# ConTeXt keywords otherwise.
|
||||
export def Complete(findstart: number, base: string): any
|
||||
if findstart == 1
|
||||
if len(synstack(line("."), 1)) > 0 && synIDattr(synstack(line("."), 1)[0], "name") ==# 'contextMPGraphic'
|
||||
isMetaPostBlock = true
|
||||
return match(getline('.'), '\S\+\%' .. col('.') .. 'c')
|
||||
endif
|
||||
call s:callback(a:path, a:job, a:status)
|
||||
endfunction
|
||||
|
||||
function! context#close_cb(channel)
|
||||
call job_status(ch_getjob(a:channel)) " Trigger exit_cb's callback for faster feedback
|
||||
endfunction
|
||||
|
||||
function! s:typeset(path)
|
||||
call add(g:context_jobs,
|
||||
\ job_start(add(s:sh(), context#command() . ' ' . shellescape(fnamemodify(a:path, ":t"))), {
|
||||
\ 'close_cb' : 'context#close_cb',
|
||||
\ 'exit_cb' : function(get(b:, 'context_callback', get(g:, 'context_callback', 'context#callback')),
|
||||
\ [a:path]),
|
||||
\ 'in_io' : 'null'
|
||||
\ }))
|
||||
endfunction
|
||||
|
||||
else " No jobs
|
||||
|
||||
function! context#job_status()
|
||||
call s:context_echo('Not implemented', 'WarningMsg')
|
||||
endfunction!
|
||||
|
||||
function! context#stop_jobs()
|
||||
call s:context_echo('Not implemented', 'WarningMsg')
|
||||
endfunction
|
||||
|
||||
function! context#callback(path, job, status)
|
||||
call s:callback(a:path, a:job, a:status)
|
||||
endfunction
|
||||
|
||||
function! s:typeset(path)
|
||||
execute '!' . context#command() . ' ' . shellescape(fnamemodify(a:path, ":t"))
|
||||
call call(get(b:, 'context_callback', get(g:, 'context_callback', 'context#callback')),
|
||||
\ [a:path, 0, v:shell_error])
|
||||
endfunction
|
||||
|
||||
endif " has('job')
|
||||
|
||||
function! s:callback(path, job, status) abort
|
||||
if a:status < 0 " Assume the job was terminated
|
||||
return
|
||||
# Complete only \commands starting with a backslash
|
||||
isMetaPostBlock = false
|
||||
var pos = match(getline('.'), '\\\zs\S\+\%' .. col('.') .. 'c')
|
||||
return (pos == -1) ? -3 : pos
|
||||
endif
|
||||
" Get info about the current window
|
||||
let l:winid = s:win_getid() " Save window id
|
||||
let l:efm = &l:errorformat " Save local errorformat
|
||||
let l:cwd = fnamemodify(getcwd(), ":p") " Save local working directory
|
||||
" Set errorformat to parse ConTeXt errors
|
||||
execute 'setl efm=' . escape(b:context_errorformat, ' ')
|
||||
try " Set cwd to expand error file correctly
|
||||
execute 'lcd' fnameescape(fnamemodify(a:path, ':h'))
|
||||
catch /.*/
|
||||
execute 'setl efm=' . escape(l:efm, ' ')
|
||||
throw v:exception
|
||||
endtry
|
||||
try
|
||||
execute 'cgetfile' fnameescape(fnamemodify(a:path, ':r') . '.log')
|
||||
botright cwindow
|
||||
finally " Restore cwd and errorformat
|
||||
execute s:win_id2win(l:winid) . 'wincmd w'
|
||||
execute 'lcd ' . fnameescape(l:cwd)
|
||||
execute 'setl efm=' . escape(l:efm, ' ')
|
||||
endtry
|
||||
if a:status == 0
|
||||
call s:context_echo('Success!', 'ModeMsg')
|
||||
else
|
||||
call s:context_echo('There are errors. ', 'ErrorMsg')
|
||||
|
||||
if isMetaPostBlock
|
||||
if empty(MP_KEYWORDS)
|
||||
MP_KEYWORDS = sort(syntaxcomplete#OmniSyntaxList(['mf\w\+', 'mp\w\+']))
|
||||
endif
|
||||
return BinarySearch(base, MP_KEYWORDS)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! context#command()
|
||||
return get(b:, 'context_mtxrun', get(g:, 'context_mtxrun', 'mtxrun'))
|
||||
\ . ' --script context --autogenerate --nonstopmode'
|
||||
\ . ' --synctex=' . (get(b:, 'context_synctex', get(g:, 'context_synctex', 0)) ? '1' : '0')
|
||||
\ . ' ' . get(b:, 'context_extra_options', get(g:, 'context_extra_options', ''))
|
||||
endfunction
|
||||
if empty(CTX_KEYWORDS)
|
||||
CTX_KEYWORDS = sort(syntaxcomplete#OmniSyntaxList([
|
||||
'context\w\+', 'texAleph', 'texEtex', 'texLuatex', 'texOmega',
|
||||
'texPdftex', 'texTex', 'texXeTeX'
|
||||
]))
|
||||
endif
|
||||
return BinarySearch(base, CTX_KEYWORDS)
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
" Accepts an optional path (useful for big projects, when the file you are
|
||||
" editing is not the project's root document). If no argument is given, uses
|
||||
" the path of the current buffer.
|
||||
function! context#typeset(...) abort
|
||||
let l:path = fnamemodify(strlen(a:000[0]) > 0 ? a:1 : expand("%"), ":p")
|
||||
let l:cwd = fnamemodify(getcwd(), ":p") " Save local working directory
|
||||
call s:context_echo('Typesetting...', 'ModeMsg')
|
||||
execute 'lcd' fnameescape(fnamemodify(l:path, ":h"))
|
||||
try
|
||||
call s:typeset(l:path)
|
||||
finally " Restore local working directory
|
||||
execute 'lcd ' . fnameescape(l:cwd)
|
||||
endtry
|
||||
endfunction!
|
||||
"}}}
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" vim: sw=2 fdm=marker
|
||||
# vim: sw=2 fdm=marker
|
||||
|
||||
111
runtime/autoload/dist/ft.vim
vendored
111
runtime/autoload/dist/ft.vim
vendored
@@ -72,22 +72,35 @@ export def FTbas()
|
||||
|
||||
# most frequent FreeBASIC-specific keywords in distro files
|
||||
var fb_keywords = '\c^\s*\%(extern\|var\|enum\|private\|scope\|union\|byref\|operator\|constructor\|delete\|namespace\|public\|property\|with\|destructor\|using\)\>\%(\s*[:=(]\)\@!'
|
||||
var fb_preproc = '\c^\s*\%(#\a\+\|option\s\+\%(byval\|dynamic\|escape\|\%(no\)\=gosub\|nokeyword\|private\|static\)\>\)'
|
||||
var fb_preproc = '\c^\s*\%(' ..
|
||||
# preprocessor
|
||||
'#\s*\a\+\|' ..
|
||||
# compiler option
|
||||
'option\s\+\%(byval\|dynamic\|escape\|\%(no\)\=gosub\|nokeyword\|private\|static\)\>\|' ..
|
||||
# metacommand
|
||||
'\%(''\|rem\)\s*\$lang\>\|' ..
|
||||
# default datatype
|
||||
'def\%(byte\|longint\|short\|ubyte\|uint\|ulongint\|ushort\)\>' ..
|
||||
'\)'
|
||||
var fb_comment = "^\\s*/'"
|
||||
|
||||
# OPTION EXPLICIT, without the leading underscore, is common to many dialects
|
||||
var qb64_preproc = '\c^\s*\%($\a\+\|option\s\+\%(_explicit\|_\=explicitarray\)\>\)'
|
||||
|
||||
var lines = getline(1, min([line("$"), 100]))
|
||||
|
||||
if match(lines, fb_preproc) > -1 || match(lines, fb_comment) > -1 || match(lines, fb_keywords) > -1
|
||||
setf freebasic
|
||||
elseif match(lines, qb64_preproc) > -1
|
||||
setf qb64
|
||||
elseif match(lines, ft_visual_basic_content) > -1
|
||||
setf vb
|
||||
else
|
||||
setf basic
|
||||
endif
|
||||
for lnum in range(1, min([line("$"), 100]))
|
||||
var line = getline(lnum)
|
||||
if line =~ ft_visual_basic_content
|
||||
setf vb
|
||||
return
|
||||
elseif line =~ fb_preproc || line =~ fb_comment || line =~ fb_keywords
|
||||
setf freebasic
|
||||
return
|
||||
elseif line =~ qb64_preproc
|
||||
setf qb64
|
||||
return
|
||||
endif
|
||||
endfor
|
||||
setf basic
|
||||
enddef
|
||||
|
||||
export def FTbtm()
|
||||
@@ -126,6 +139,23 @@ export def FTcfg()
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTcls()
|
||||
if exists("g:filetype_cls")
|
||||
exe "setf " .. g:filetype_cls
|
||||
return
|
||||
endif
|
||||
|
||||
if getline(1) =~ '^%'
|
||||
setf tex
|
||||
elseif getline(1)[0] == '#' && getline(1) =~ 'rexx'
|
||||
setf rexx
|
||||
elseif getline(1) == 'VERSION 1.0 CLASS'
|
||||
setf vb
|
||||
else
|
||||
setf st
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTlpc()
|
||||
if exists("g:lpc_syntax_for_c")
|
||||
var lnum = 1
|
||||
@@ -318,7 +348,7 @@ export def FTidl()
|
||||
setf idl
|
||||
enddef
|
||||
|
||||
# Distinguish between "default" and Cproto prototype file. */
|
||||
# Distinguish between "default", Prolog and Cproto prototype file.
|
||||
export def ProtoCheck(default: string)
|
||||
# Cproto files have a comment in the first line and a function prototype in
|
||||
# the second line, it always ends in ";". Indent files may also have
|
||||
@@ -328,7 +358,14 @@ export def ProtoCheck(default: string)
|
||||
if getline(2) =~ '.;$'
|
||||
setf cpp
|
||||
else
|
||||
exe 'setf ' .. default
|
||||
# recognize Prolog by specific text in the first non-empty line
|
||||
# require a blank after the '%' because Perl uses "%list" and "%translate"
|
||||
var l = getline(nextnonblank(1))
|
||||
if l =~ '\<prolog\>' || l =~ '^\s*\(%\+\(\s\|$\)\|/\*\)' || l =~ ':-'
|
||||
setf prolog
|
||||
else
|
||||
exe 'setf ' .. default
|
||||
endif
|
||||
endif
|
||||
enddef
|
||||
|
||||
@@ -429,7 +466,7 @@ export def FTmm()
|
||||
setf nroff
|
||||
enddef
|
||||
|
||||
# Returns true if file content looks like LambdaProlog
|
||||
# Returns true if file content looks like LambdaProlog module
|
||||
def IsLProlog(): bool
|
||||
# skip apparent comments and blank lines, what looks like
|
||||
# LambdaProlog comment may be RAPID header
|
||||
@@ -489,12 +526,14 @@ export def FTinc()
|
||||
# headers so assume POV-Ray
|
||||
elseif lines =~ '^\s*\%({\|(\*\)' || lines =~? ft_pascal_keywords
|
||||
setf pascal
|
||||
elseif lines =~# '\<\%(require\|inherit\)\>' || lines =~# '[A-Z][A-Za-z0-9_:${}]*\s\+\%(??\|[?:+]\)\?= '
|
||||
setf bitbake
|
||||
else
|
||||
FTasmsyntax()
|
||||
if exists("b:asmsyntax")
|
||||
exe "setf " .. fnameescape(b:asmsyntax)
|
||||
exe "setf " .. fnameescape(b:asmsyntax)
|
||||
else
|
||||
setf pov
|
||||
setf pov
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -818,6 +857,44 @@ export def FTperl(): number
|
||||
return 0
|
||||
enddef
|
||||
|
||||
# LambdaProlog and Standard ML signature files
|
||||
export def FTsig()
|
||||
if exists("g:filetype_sig")
|
||||
exe "setf " .. g:filetype_sig
|
||||
return
|
||||
endif
|
||||
|
||||
var lprolog_comment = '^\s*\%(/\*\|%\)'
|
||||
var lprolog_keyword = '^\s*sig\s\+\a'
|
||||
var sml_comment = '^\s*(\*'
|
||||
var sml_keyword = '^\s*\%(signature\|structure\)\s\+\a'
|
||||
|
||||
var line = getline(nextnonblank(1))
|
||||
|
||||
if line =~ lprolog_comment || line =~# lprolog_keyword
|
||||
setf lprolog
|
||||
elseif line =~ sml_comment || line =~# sml_keyword
|
||||
setf sml
|
||||
endif
|
||||
enddef
|
||||
|
||||
# This function checks the first 100 lines of files matching "*.sil" to
|
||||
# resolve detection between Swift Intermediate Language and SILE.
|
||||
export def FTsil()
|
||||
for lnum in range(1, [line('$'), 100]->min())
|
||||
var line: string = getline(lnum)
|
||||
if line =~ '^\s*[\\%]'
|
||||
setf sile
|
||||
return
|
||||
elseif line =~ '^\s*\S'
|
||||
setf sil
|
||||
return
|
||||
endif
|
||||
endfor
|
||||
# no clue, default to "sil"
|
||||
setf sil
|
||||
enddef
|
||||
|
||||
export def FTsys()
|
||||
if exists("g:filetype_sys")
|
||||
exe "setf " .. g:filetype_sys
|
||||
|
||||
4
runtime/autoload/dist/script.vim
vendored
4
runtime/autoload/dist/script.vim
vendored
@@ -193,6 +193,10 @@ def DetectFromHashBang(firstline: string)
|
||||
elseif name =~ 'icon\>'
|
||||
set ft=icon
|
||||
|
||||
# Guile
|
||||
elseif name =~ 'guile'
|
||||
set ft=scheme
|
||||
|
||||
endif
|
||||
enddef
|
||||
|
||||
|
||||
1200
runtime/autoload/dist/vimindent.vim
vendored
Normal file
1200
runtime/autoload/dist/vimindent.vim
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: FreeBASIC
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2021 Mar 16
|
||||
" Last Change: 2022 June 24
|
||||
|
||||
" Dialects can be one of fb, qb, fblite, or deprecated
|
||||
" Precedence is forcelang > #lang > lang
|
||||
@@ -18,17 +18,16 @@ function! freebasic#GetDialect() abort
|
||||
|
||||
" override with #lang directive or metacommand
|
||||
|
||||
let skip = "has('syntax_items') && synIDattr(synID(line('.'), col('.'), 1), 'name') =~ 'Comment$'"
|
||||
let pat = '\c^\s*\%(#\s*lang\s\+\|''\s*$lang\s*:\s*\)"\([^"]*\)"'
|
||||
|
||||
let save_cursor = getcurpos()
|
||||
call cursor(1, 1)
|
||||
let lnum = search(pat, 'n', '', '', skip)
|
||||
let lnum = search(pat, 'cn')
|
||||
call setpos('.', save_cursor)
|
||||
|
||||
if lnum
|
||||
let word = matchlist(getline(lnum), pat)[1]
|
||||
if word =~? '\%(fb\|deprecated\|fblite\|qb\)'
|
||||
if word =~? '\<\%(fb\|deprecated\|fblite\|qb\)\>'
|
||||
let dialect = word
|
||||
else
|
||||
echomsg "freebasic#GetDialect: Invalid lang, found '" .. word .. "' at line " .. lnum .. " " .. getline(lnum)
|
||||
|
||||
252
runtime/autoload/python.vim
Normal file
252
runtime/autoload/python.vim
Normal file
@@ -0,0 +1,252 @@
|
||||
" Support for Python indenting, see runtime/indent/python.vim
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
" need to inspect some old g:pyindent_* variables to be backward compatible
|
||||
let g:python_indent = extend(get(g:, 'python_indent', {}), #{
|
||||
\ closed_paren_align_last_line: v:true,
|
||||
\ open_paren: get(g:, 'pyindent_open_paren', 'shiftwidth() * 2'),
|
||||
\ nested_paren: get(g:, 'pyindent_nested_paren', 'shiftwidth()'),
|
||||
\ continue: get(g:, 'pyindent_continue', 'shiftwidth() * 2'),
|
||||
"\ searchpair() can be slow, limit the time to 150 msec or what is put in
|
||||
"\ g:python_indent.searchpair_timeout
|
||||
\ searchpair_timeout: get(g:, 'pyindent_searchpair_timeout', 150),
|
||||
"\ Identing inside parentheses can be very slow, regardless of the searchpair()
|
||||
"\ timeout, so let the user disable this feature if he doesn't need it
|
||||
\ disable_parentheses_indenting: get(g:, 'pyindent_disable_parentheses_indenting', v:false),
|
||||
\ }, 'keep')
|
||||
|
||||
let s:maxoff = 50 " maximum number of lines to look backwards for ()
|
||||
|
||||
function s:SearchBracket(fromlnum, flags)
|
||||
return searchpairpos('[[({]', '', '[])}]', a:flags,
|
||||
\ {-> synstack('.', col('.'))
|
||||
\ ->map({_, id -> id->synIDattr('name')})
|
||||
\ ->match('\%(Comment\|Todo\|String\)$') >= 0},
|
||||
\ [0, a:fromlnum - s:maxoff]->max(), g:python_indent.searchpair_timeout)
|
||||
endfunction
|
||||
|
||||
" See if the specified line is already user-dedented from the expected value.
|
||||
function s:Dedented(lnum, expected)
|
||||
return indent(a:lnum) <= a:expected - shiftwidth()
|
||||
endfunction
|
||||
|
||||
" Some other filetypes which embed Python have slightly different indent
|
||||
" rules (e.g. bitbake). Those filetypes can pass an extra funcref to this
|
||||
" function which is evaluated below.
|
||||
function python#GetIndent(lnum, ...)
|
||||
let ExtraFunc = a:0 > 0 ? a:1 : 0
|
||||
|
||||
" If this line is explicitly joined: If the previous line was also joined,
|
||||
" line it up with that one, otherwise add two 'shiftwidth'
|
||||
if getline(a:lnum - 1) =~ '\\$'
|
||||
if a:lnum > 1 && getline(a:lnum - 2) =~ '\\$'
|
||||
return indent(a:lnum - 1)
|
||||
endif
|
||||
return indent(a:lnum - 1) + get(g:, 'pyindent_continue', g:python_indent.continue)->eval()
|
||||
endif
|
||||
|
||||
" If the start of the line is in a string don't change the indent.
|
||||
if has('syntax_items')
|
||||
\ && synIDattr(synID(a:lnum, 1, 1), "name") =~ "String$"
|
||||
return -1
|
||||
endif
|
||||
|
||||
" Search backwards for the previous non-empty line.
|
||||
let plnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
if plnum == 0
|
||||
" This is the first non-empty line, use zero indent.
|
||||
return 0
|
||||
endif
|
||||
|
||||
if g:python_indent.disable_parentheses_indenting == 1
|
||||
let plindent = indent(plnum)
|
||||
let plnumstart = plnum
|
||||
else
|
||||
" Indent inside parens.
|
||||
" Align with the open paren unless it is at the end of the line.
|
||||
" E.g.
|
||||
" open_paren_not_at_EOL(100,
|
||||
" (200,
|
||||
" 300),
|
||||
" 400)
|
||||
" open_paren_at_EOL(
|
||||
" 100, 200, 300, 400)
|
||||
call cursor(a:lnum, 1)
|
||||
let [parlnum, parcol] = s:SearchBracket(a:lnum, 'nbW')
|
||||
if parlnum > 0
|
||||
if parcol != col([parlnum, '$']) - 1
|
||||
return parcol
|
||||
elseif getline(a:lnum) =~ '^\s*[])}]' && !g:python_indent.closed_paren_align_last_line
|
||||
return indent(parlnum)
|
||||
endif
|
||||
endif
|
||||
|
||||
call cursor(plnum, 1)
|
||||
|
||||
" If the previous line is inside parenthesis, use the indent of the starting
|
||||
" line.
|
||||
let [parlnum, _] = s:SearchBracket(plnum, 'nbW')
|
||||
if parlnum > 0
|
||||
if a:0 > 0 && ExtraFunc(parlnum)
|
||||
" We may have found the opening brace of a bitbake Python task, e.g. 'python do_task {'
|
||||
" If so, ignore it here - it will be handled later.
|
||||
let parlnum = 0
|
||||
let plindent = indent(plnum)
|
||||
let plnumstart = plnum
|
||||
else
|
||||
let plindent = indent(parlnum)
|
||||
let plnumstart = parlnum
|
||||
endif
|
||||
else
|
||||
let plindent = indent(plnum)
|
||||
let plnumstart = plnum
|
||||
endif
|
||||
|
||||
" When inside parenthesis: If at the first line below the parenthesis add
|
||||
" two 'shiftwidth', otherwise same as previous line.
|
||||
" i = (a
|
||||
" + b
|
||||
" + c)
|
||||
call cursor(a:lnum, 1)
|
||||
let [p, _] = s:SearchBracket(a:lnum, 'bW')
|
||||
if p > 0
|
||||
if a:0 > 0 && ExtraFunc(p)
|
||||
" Currently only used by bitbake
|
||||
" Handle first non-empty line inside a bitbake Python task
|
||||
if p == plnum
|
||||
return shiftwidth()
|
||||
endif
|
||||
|
||||
" Handle the user actually trying to close a bitbake Python task
|
||||
let line = getline(a:lnum)
|
||||
if line =~ '^\s*}'
|
||||
return -2
|
||||
endif
|
||||
|
||||
" Otherwise ignore the brace
|
||||
let p = 0
|
||||
else
|
||||
if p == plnum
|
||||
" When the start is inside parenthesis, only indent one 'shiftwidth'.
|
||||
let [pp, _] = s:SearchBracket(a:lnum, 'bW')
|
||||
if pp > 0
|
||||
return indent(plnum)
|
||||
\ + get(g:, 'pyindent_nested_paren', g:python_indent.nested_paren)->eval()
|
||||
endif
|
||||
return indent(plnum)
|
||||
\ + get(g:, 'pyindent_open_paren', g:python_indent.open_paren)->eval()
|
||||
endif
|
||||
if plnumstart == p
|
||||
return indent(plnum)
|
||||
endif
|
||||
return plindent
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
" Get the line and remove a trailing comment.
|
||||
" Use syntax highlighting attributes when possible.
|
||||
let pline = getline(plnum)
|
||||
let pline_len = strlen(pline)
|
||||
if has('syntax_items')
|
||||
" If the last character in the line is a comment, do a binary search for
|
||||
" the start of the comment. synID() is slow, a linear search would take
|
||||
" too long on a long line.
|
||||
if synstack(plnum, pline_len)
|
||||
\ ->map({_, id -> id->synIDattr('name')})
|
||||
\ ->match('\%(Comment\|Todo\)$') >= 0
|
||||
let min = 1
|
||||
let max = pline_len
|
||||
while min < max
|
||||
let col = (min + max) / 2
|
||||
if synstack(plnum, col)
|
||||
\ ->map({_, id -> id->synIDattr('name')})
|
||||
\ ->match('\%(Comment\|Todo\)$') >= 0
|
||||
let max = col
|
||||
else
|
||||
let min = col + 1
|
||||
endif
|
||||
endwhile
|
||||
let pline = strpart(pline, 0, min - 1)
|
||||
endif
|
||||
else
|
||||
let col = 0
|
||||
while col < pline_len
|
||||
if pline[col] == '#'
|
||||
let pline = strpart(pline, 0, col)
|
||||
break
|
||||
endif
|
||||
let col = col + 1
|
||||
endwhile
|
||||
endif
|
||||
|
||||
" If the previous line ended with a colon, indent this line
|
||||
if pline =~ ':\s*$'
|
||||
return plindent + shiftwidth()
|
||||
endif
|
||||
|
||||
" If the previous line was a stop-execution statement...
|
||||
if getline(plnum) =~ '^\s*\(break\|continue\|raise\|return\|pass\)\>'
|
||||
" See if the user has already dedented
|
||||
if s:Dedented(a:lnum, indent(plnum))
|
||||
" If so, trust the user
|
||||
return -1
|
||||
endif
|
||||
" If not, recommend one dedent
|
||||
return indent(plnum) - shiftwidth()
|
||||
endif
|
||||
|
||||
" If the current line begins with a keyword that lines up with "try"
|
||||
if getline(a:lnum) =~ '^\s*\(except\|finally\)\>'
|
||||
let lnum = a:lnum - 1
|
||||
while lnum >= 1
|
||||
if getline(lnum) =~ '^\s*\(try\|except\)\>'
|
||||
let ind = indent(lnum)
|
||||
if ind >= indent(a:lnum)
|
||||
return -1 " indent is already less than this
|
||||
endif
|
||||
return ind " line up with previous try or except
|
||||
endif
|
||||
let lnum = lnum - 1
|
||||
endwhile
|
||||
return -1 " no matching "try"!
|
||||
endif
|
||||
|
||||
" If the current line begins with a header keyword, dedent
|
||||
if getline(a:lnum) =~ '^\s*\(elif\|else\)\>'
|
||||
|
||||
" Unless the previous line was a one-liner
|
||||
if getline(plnumstart) =~ '^\s*\(for\|if\|elif\|try\)\>'
|
||||
return plindent
|
||||
endif
|
||||
|
||||
" Or the user has already dedented
|
||||
if s:Dedented(a:lnum, plindent)
|
||||
return -1
|
||||
endif
|
||||
|
||||
return plindent - shiftwidth()
|
||||
endif
|
||||
|
||||
" When after a () construct we probably want to go back to the start line.
|
||||
" a = (b
|
||||
" + c)
|
||||
" here
|
||||
if parlnum > 0
|
||||
" ...unless the user has already dedented
|
||||
if s:Dedented(a:lnum, plindent)
|
||||
return -1
|
||||
else
|
||||
return plindent
|
||||
endif
|
||||
endif
|
||||
|
||||
return -1
|
||||
endfunction
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
233
runtime/autoload/typeset.vim
Normal file
233
runtime/autoload/typeset.vim
Normal file
@@ -0,0 +1,233 @@
|
||||
vim9script
|
||||
|
||||
# Language: Generic TeX typesetting engine
|
||||
# Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
# Latest Revision: 2022 Aug 12
|
||||
|
||||
# Constants and helpers {{{
|
||||
const SLASH = !exists("+shellslash") || &shellslash ? '/' : '\'
|
||||
|
||||
def Echo(msg: string, mode: string, label: string)
|
||||
redraw
|
||||
echo "\r"
|
||||
execute 'echohl' mode
|
||||
echomsg printf('[%s] %s', label, msg)
|
||||
echohl None
|
||||
enddef
|
||||
|
||||
def EchoMsg(msg: string, label = 'Notice')
|
||||
Echo(msg, 'ModeMsg', label)
|
||||
enddef
|
||||
|
||||
def EchoWarn(msg: string, label = 'Warning')
|
||||
Echo(msg, 'WarningMsg', label)
|
||||
enddef
|
||||
|
||||
def EchoErr(msg: string, label = 'Error')
|
||||
Echo(msg, 'ErrorMsg', label)
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
# Track jobs {{{
|
||||
var running_jobs = {} # Dictionary of job IDs of jobs currently executing
|
||||
|
||||
def AddJob(label: string, j: job)
|
||||
if !has_key(running_jobs, label)
|
||||
running_jobs[label] = []
|
||||
endif
|
||||
|
||||
add(running_jobs[label], j)
|
||||
enddef
|
||||
|
||||
def RemoveJob(label: string, j: job)
|
||||
if has_key(running_jobs, label) && index(running_jobs[label], j) != -1
|
||||
remove(running_jobs[label], index(running_jobs[label], j))
|
||||
endif
|
||||
enddef
|
||||
|
||||
def GetRunningJobs(label: string): list<job>
|
||||
return has_key(running_jobs, label) ? running_jobs[label] : []
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
# Callbacks {{{
|
||||
def ProcessOutput(qfid: number, wd: string, efm: string, ch: channel, msg: string)
|
||||
# Make sure the quickfix list still exists
|
||||
if getqflist({'id': qfid}).id != qfid
|
||||
EchoErr("Quickfix list not found, stopping the job")
|
||||
call job_stop(ch_getjob(ch))
|
||||
return
|
||||
endif
|
||||
|
||||
# Make sure the working directory is correct
|
||||
silent execute "lcd" wd
|
||||
setqflist([], 'a', {'id': qfid, 'lines': [msg], 'efm': efm})
|
||||
silent lcd -
|
||||
enddef
|
||||
|
||||
def CloseCb(ch: channel)
|
||||
job_status(ch_getjob(ch)) # Trigger exit_cb's callback
|
||||
enddef
|
||||
|
||||
def ExitCb(label: string, jobid: job, exitStatus: number)
|
||||
RemoveJob(label, jobid)
|
||||
|
||||
if exitStatus == 0
|
||||
botright cwindow
|
||||
EchoMsg('Success!', label)
|
||||
elseif exitStatus < 0
|
||||
EchoWarn('Job terminated', label)
|
||||
else
|
||||
botright copen
|
||||
wincmd p
|
||||
EchoWarn('There are errors.', label)
|
||||
endif
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
# Create a new empty quickfix list at the end of the stack and return its id {{{
|
||||
def NewQuickfixList(path: string): number
|
||||
if setqflist([], ' ', {'nr': '$', 'title': path}) == -1
|
||||
return -1
|
||||
endif
|
||||
|
||||
return getqflist({'nr': '$', 'id': 0}).id
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
# Public interface {{{
|
||||
# When a TeX document is split into several source files, each source file
|
||||
# may contain a "magic line" specifiying the "root" file, e.g.:
|
||||
#
|
||||
# % !TEX root = main.tex
|
||||
#
|
||||
# Using this line, Vim can know which file to typeset even if the current
|
||||
# buffer is different from main.tex.
|
||||
#
|
||||
# This function searches for the magic line in the first ten lines of the
|
||||
# given buffer, and returns the full path of the root document.
|
||||
#
|
||||
# NOTE: the value of "% !TEX root" *must* be a relative path.
|
||||
export def FindRootDocument(bufname: string = bufname("%")): string
|
||||
const bufnr = bufnr(bufname)
|
||||
|
||||
if !bufexists(bufnr)
|
||||
return bufname
|
||||
endif
|
||||
|
||||
var rootpath = fnamemodify(bufname(bufnr), ':p')
|
||||
|
||||
# Search for magic line `% !TEX root = ...` in the first ten lines
|
||||
const header = getbufline(bufnr, 1, 10)
|
||||
const idx = match(header, '^\s*%\s\+!TEX\s\+root\s*=\s*\S')
|
||||
if idx > -1
|
||||
const main = matchstr(header[idx], '!TEX\s\+root\s*=\s*\zs.*$')
|
||||
rootpath = simplify(fnamemodify(rootpath, ":h") .. SLASH .. main)
|
||||
endif
|
||||
|
||||
return rootpath
|
||||
enddef
|
||||
|
||||
export def LogPath(bufname: string): string
|
||||
const logfile = FindRootDocument(bufname)
|
||||
return fnamemodify(logfile, ":r") .. ".log"
|
||||
enddef
|
||||
|
||||
# Typeset the specified path
|
||||
#
|
||||
# Parameters:
|
||||
# label: a descriptive string used in messages to identify the kind of job
|
||||
# Cmd: a function that takes the path of a document and returns the typesetting command
|
||||
# path: the path of the document to be typeset. To avoid ambiguities, pass a *full* path.
|
||||
# efm: the error format string to parse the output of the command.
|
||||
# env: environment variables for the process (passed to job_start())
|
||||
#
|
||||
# Returns:
|
||||
# true if the job is started successfully;
|
||||
# false otherwise.
|
||||
export def Typeset(
|
||||
label: string,
|
||||
Cmd: func(string): list<string>,
|
||||
path: string,
|
||||
efm: string,
|
||||
env: dict<string> = {}
|
||||
): bool
|
||||
var fp = fnamemodify(path, ":p")
|
||||
var wd = fnamemodify(fp, ":h")
|
||||
var qfid = NewQuickfixList(fp)
|
||||
|
||||
if qfid == -1
|
||||
EchoErr('Could not create quickfix list', label)
|
||||
return false
|
||||
endif
|
||||
|
||||
if !filereadable(fp)
|
||||
EchoErr(printf('File not readable: %s', fp), label)
|
||||
return false
|
||||
endif
|
||||
|
||||
var jobid = job_start(Cmd(path), {
|
||||
env: env,
|
||||
cwd: wd,
|
||||
in_io: "null",
|
||||
callback: (c, m) => ProcessOutput(qfid, wd, efm, c, m),
|
||||
close_cb: CloseCb,
|
||||
exit_cb: (j, e) => ExitCb(label, j, e),
|
||||
})
|
||||
|
||||
if job_status(jobid) ==# "fail"
|
||||
EchoErr("Failed to start job", label)
|
||||
return false
|
||||
endif
|
||||
|
||||
AddJob(label, jobid)
|
||||
|
||||
EchoMsg('Typesetting...', label)
|
||||
|
||||
return true
|
||||
enddef
|
||||
|
||||
export def JobStatus(label: string)
|
||||
EchoMsg('Jobs still running: ' .. string(len(GetRunningJobs(label))), label)
|
||||
enddef
|
||||
|
||||
export def StopJobs(label: string)
|
||||
for job in GetRunningJobs(label)
|
||||
job_stop(job)
|
||||
endfor
|
||||
|
||||
EchoMsg('Done.', label)
|
||||
enddef
|
||||
|
||||
# Typeset the specified buffer
|
||||
#
|
||||
# Parameters:
|
||||
# name: a buffer's name. this may be empty to indicate the current buffer.
|
||||
# cmd: a function that takes the path of a document and returns the typesetting command
|
||||
# label: a descriptive string used in messages to identify the kind of job
|
||||
# env: environment variables for the process (passed to job_start())
|
||||
#
|
||||
# Returns:
|
||||
# true if the job is started successfully;
|
||||
# false otherwise.
|
||||
export def TypesetBuffer(
|
||||
name: string,
|
||||
Cmd: func(string): list<string>,
|
||||
env = {},
|
||||
label = 'Typeset'
|
||||
): bool
|
||||
const bufname = bufname(name)
|
||||
|
||||
if empty(bufname)
|
||||
EchoErr('Please save the buffer first.', label)
|
||||
return false
|
||||
endif
|
||||
|
||||
const efm = getbufvar(bufnr(bufname), "&efm")
|
||||
const rootpath = FindRootDocument(bufname)
|
||||
|
||||
return Typeset('ConTeXt', Cmd, rootpath, efm, env)
|
||||
enddef
|
||||
# }}}
|
||||
|
||||
# vim: sw=2 fdm=marker
|
||||
BIN
runtime/bitmaps/vim.ico
Normal file
BIN
runtime/bitmaps/vim.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Steven Vertigan <steven@vertigan.wattle.id.au>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sat 11 Jun 2022 11:16:14 MSK
|
||||
" Last Updated: Fri 02 Sep 2022 09:41:44 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,12 +13,12 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'blue'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#870000', '#006400', '#878700', '#000087', '#870087', '#008787', '#bcbcbc', '#878787', '#d70000', '#00ff00', '#ffdf00', '#5fafff', '#d787d7', '#5fffff', '#ffffff']
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#ffdf00 guibg=#000087 gui=NONE cterm=NONE
|
||||
hi Normal guifg=#ffd700 guibg=#000087 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#005faf gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#ffffff guibg=#008787 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#008787 guibg=#ffffff gui=NONE cterm=NONE
|
||||
@@ -27,9 +27,9 @@ hi ColorColumn guifg=NONE guibg=#870087 gui=NONE cterm=NONE
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor guifg=#000000 guibg=#00ff00 gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#005faf gui=NONE cterm=NONE
|
||||
hi CursorIM guifg=#000000 guibg=#ffdf00 gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#ffdf00 guibg=#005faf gui=bold cterm=NONE
|
||||
hi EndOfBuffer guifg=#ffdf00 guibg=#000087 gui=NONE cterm=NONE
|
||||
hi CursorIM guifg=#000000 guibg=#ffd700 gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#ffd700 guibg=#005faf gui=bold cterm=NONE
|
||||
hi EndOfBuffer guifg=#ffd700 guibg=#000087 gui=NONE cterm=NONE
|
||||
hi Error guifg=#ff7f50 guibg=#000087 gui=reverse cterm=reverse
|
||||
hi ErrorMsg guifg=#ffffff guibg=#d70000 gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#008787 guibg=NONE gui=NONE cterm=NONE
|
||||
@@ -43,7 +43,7 @@ hi NonText guifg=#d787d7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=NONE guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi Question guifg=#00ff00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Search guifg=#ffdf00 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Search guifg=#ffd700 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi SignColumn guifg=#008787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#5fffff guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=#d70000 guibg=NONE guisp=#d70000 gui=undercurl cterm=underline
|
||||
@@ -57,8 +57,8 @@ hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NO
|
||||
hi VertSplit guifg=#008787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Visual guifg=#ffffff guibg=#008787 gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#008787 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#d70000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#000087 guibg=#ffdf00 gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#d787d7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#000087 guibg=#ffd700 gui=NONE cterm=NONE
|
||||
hi debugBreakpoint guifg=#00ff00 guibg=#000087 gui=reverse cterm=reverse
|
||||
hi debugPC guifg=#5fffff guibg=#000087 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#5fffff guibg=NONE gui=NONE cterm=NONE
|
||||
@@ -73,7 +73,7 @@ hi Statement guifg=#ffffff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Type guifg=#ffa500 guibg=NONE gui=bold cterm=NONE
|
||||
hi Underlined guifg=NONE guibg=NONE gui=underline ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Label guifg=#ffdf00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Label guifg=#ffd700 guibg=NONE gui=NONE cterm=NONE
|
||||
hi! link Terminal Normal
|
||||
hi! link Debug Special
|
||||
hi! link diffAdded String
|
||||
@@ -120,6 +120,8 @@ hi! link Structure Type
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd guifg=#ffffff guibg=#5f875f gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#ffffff guibg=#5f87af gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#000000 guibg=#c6c6c6 gui=NONE cterm=NONE
|
||||
@@ -165,7 +167,7 @@ if s:t_Co >= 256
|
||||
hi VertSplit ctermfg=30 ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=231 ctermbg=30 cterm=NONE
|
||||
hi VisualNOS ctermfg=30 ctermbg=231 cterm=NONE
|
||||
hi WarningMsg ctermfg=160 ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=176 ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=18 ctermbg=220 cterm=NONE
|
||||
hi debugBreakpoint ctermfg=46 ctermbg=18 cterm=reverse
|
||||
hi debugPC ctermfg=87 ctermbg=18 cterm=reverse
|
||||
@@ -228,6 +230,8 @@ if s:t_Co >= 256
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=231 ctermbg=65 cterm=NONE
|
||||
hi DiffChange ctermfg=231 ctermbg=67 cterm=NONE
|
||||
hi DiffText ctermfg=16 ctermbg=251 cterm=NONE
|
||||
@@ -276,7 +280,7 @@ if s:t_Co >= 16
|
||||
hi VertSplit ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=white ctermbg=darkcyan cterm=NONE
|
||||
hi VisualNOS ctermfg=darkcyan ctermbg=white cterm=NONE
|
||||
hi WarningMsg ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=darkblue ctermbg=yellow cterm=NONE
|
||||
hi debugBreakpoint ctermfg=green ctermbg=darkblue cterm=reverse
|
||||
hi debugPC ctermfg=cyan ctermbg=darkblue cterm=reverse
|
||||
@@ -339,6 +343,8 @@ if s:t_Co >= 16
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=grey cterm=NONE
|
||||
@@ -449,6 +455,8 @@ if s:t_Co >= 8
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=darkblue cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=grey cterm=NONE
|
||||
@@ -526,6 +534,22 @@ if s:t_Co >= 0
|
||||
endif
|
||||
|
||||
" Background: dark
|
||||
" Color: x_black #000000 16 black
|
||||
" Color: x_darkred #cd0000 160 darkred
|
||||
" Color: x_darkgreen #00cd00 40 darkgreen
|
||||
" Color: x_darkyellow #cdcd00 184 darkyellow
|
||||
" Color: x_darkblue #0000ee 21 darkblue
|
||||
" Color: x_darkmagenta #cd00cd 164 darkmagenta
|
||||
" Color: x_darkcyan #00cdcd 44 darkcyan
|
||||
" Color: x_gray #e5e5e5 254 gray
|
||||
" Color: x_darkgray #7f7f7f 244 darkgray
|
||||
" Color: x_red #ff0000 196 red
|
||||
" Color: x_green #00ff00 46 green
|
||||
" Color: x_yellow #ffff00 226 yellow
|
||||
" Color: x_blue #5c5cff 63 blue
|
||||
" Color: x_magenta #ff00ff 201 magenta
|
||||
" Color: x_cyan #00ffff 51 cyan
|
||||
" Color: x_white #ffffff 231 white
|
||||
" Color: black #000000 16 black
|
||||
" Color: darkred #870000 88 darkred
|
||||
" Color: darkyellow #878700 100 darkyellow
|
||||
@@ -537,7 +561,7 @@ endif
|
||||
" Color: darkgray #878787 102 darkgray
|
||||
" Color: red #d70000 160 red
|
||||
" Color: green #00ff00 46 green
|
||||
" Color: yellow #ffdf00 220 yellow
|
||||
" Color: yellow #ffd700 220 yellow
|
||||
" Color: blue #005faf 25 blue
|
||||
" Color: magenta #d787d7 176 magenta
|
||||
" Color: cyan #5fffff 87 cyan
|
||||
@@ -549,8 +573,8 @@ endif
|
||||
" Color: coral #ff7f50 209 red
|
||||
" Color: olivedrab #6b8e23 64 green
|
||||
" Color: slateblue #6a5acd 62 darkmagenta
|
||||
" Term colors: black darkred darkgreen darkyellow darkblue darkmagenta darkcyan gray
|
||||
" Term colors: darkgray red green yellow xtermblue magenta cyan white
|
||||
" Term colors: x_black x_darkred x_darkgreen x_darkyellow x_darkblue x_darkmagenta x_darkcyan x_gray
|
||||
" Term colors: x_darkgray x_red x_green x_yellow x_blue x_magenta x_cyan x_white
|
||||
" Color: bgDiffA #5F875F 65 darkgreen
|
||||
" Color: bgDiffC #5F87AF 67 blue
|
||||
" Color: bgDiffD #AF5FAF 133 magenta
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original author Bohdan Vlasyuk <bohdan@vstu.edu.ua>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sat 11 Jun 2022 14:37:41 MSK
|
||||
" Last Updated: Fri 02 Sep 2022 09:40:36 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'darkblue'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#8b0000', '#90f020', '#ffa500', '#00008b', '#8b008b', '#008b8b', '#c0c0c0', '#808080', '#ffa0a0', '#90f020', '#ffff60', '#0030ff', '#ff00ff', '#90fff0', '#ffffff']
|
||||
@@ -65,6 +65,8 @@ hi! link diffCommon WarningMsg
|
||||
hi! link diffBDiffer WarningMsg
|
||||
hi! link lCursor Cursor
|
||||
hi! link CurSearch Search
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#c0c0c0 guibg=#000040 gui=NONE cterm=NONE
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn guifg=#c0c0c0 guibg=#8b0000 gui=NONE cterm=NONE
|
||||
@@ -171,6 +173,8 @@ if s:t_Co >= 256
|
||||
hi! link diffBDiffer WarningMsg
|
||||
hi! link lCursor Cursor
|
||||
hi! link CurSearch Search
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=252 ctermbg=17 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=252 ctermbg=88 cterm=NONE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer David Schweikert <david@schweikert.ch>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:50:30 2022
|
||||
" Last Updated: Sun 04 Sep 2022 09:31:26 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=light
|
||||
hi clear
|
||||
let g:colors_name = 'delek'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#ffffff', '#0000ff', '#00cd00', '#cd00cd', '#008b8b', '#0000ff', '#ff1493', '#bcbcbc', '#ee0000', '#0000ff', '#00cd00', '#cd00cd', '#008b8b', '#0000ff', '#ff1493', '#000000']
|
||||
@@ -25,6 +25,8 @@ hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link ErrorMsg Error
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#000000 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#bcbcbc guibg=NONE gui=NONE cterm=NONE
|
||||
hi StatusLine guifg=#ffff00 guibg=#00008b gui=bold cterm=bold
|
||||
@@ -57,7 +59,7 @@ hi Error guifg=#ff0000 guibg=#ffffff gui=reverse cterm=reverse
|
||||
hi WarningMsg guifg=#cd00cd guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi MoreMsg guifg=#000000 guibg=#ffffff gui=bold cterm=bold
|
||||
hi ModeMsg guifg=#000000 guibg=#ffffff gui=bold cterm=bold
|
||||
hi Question guifg=#00cd00 guibg=NONE gui=bold cterm=bold
|
||||
hi Question guifg=#008700 guibg=NONE gui=bold cterm=bold
|
||||
hi Todo guifg=#000000 guibg=#ffff00 gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=#ffffff guibg=#ff1493 gui=NONE cterm=NONE
|
||||
hi Search guifg=#ffffff guibg=#cd00cd gui=NONE cterm=NONE
|
||||
@@ -97,6 +99,8 @@ if s:t_Co >= 256
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link ErrorMsg Error
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi EndOfBuffer ctermfg=250 ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=226 ctermbg=18 cterm=bold
|
||||
@@ -129,7 +133,7 @@ if s:t_Co >= 256
|
||||
hi WarningMsg ctermfg=164 ctermbg=231 cterm=NONE
|
||||
hi MoreMsg ctermfg=16 ctermbg=231 cterm=bold
|
||||
hi ModeMsg ctermfg=16 ctermbg=231 cterm=bold
|
||||
hi Question ctermfg=40 ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=28 ctermbg=NONE cterm=bold
|
||||
hi Todo ctermfg=16 ctermbg=226 cterm=NONE
|
||||
hi MatchParen ctermfg=231 ctermbg=198 cterm=NONE
|
||||
hi Search ctermfg=231 ctermbg=164 cterm=NONE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Hans Fugal <hans@fugal.net>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:51:36 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:39:21 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'desert'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#7f7f8c', '#cd5c5c', '#9acd32', '#bdb76b', '#75a0ff', '#eeee00', '#cd853f', '#666666', '#8a7f7f', '#ff0000', '#89fb98', '#f0e68c', '#6dceeb', '#ffde9b', '#ffa0a0', '#c2bfa5']
|
||||
@@ -25,6 +25,8 @@ hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link EndOfBuffer NonText
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#ffffff guibg=#333333 gui=NONE cterm=NONE
|
||||
hi StatusLine guifg=#333333 guibg=#c2bfa5 gui=NONE cterm=NONE
|
||||
hi StatusLineNC guifg=#7f7f8c guibg=#c2bfa5 gui=NONE cterm=NONE
|
||||
@@ -40,7 +42,7 @@ hi TabLineFill guifg=NONE guibg=#c2bfa5 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#333333 guibg=#f0e68c gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=#666666 gui=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#333333 guibg=#ffde9b gui=bold cterm=bold
|
||||
hi NonText guifg=#6dceeb guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#6dceeb guibg=#4d4d4d gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#9acd32 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Folded guifg=#eeee00 guibg=#4d4d4d gui=NONE cterm=NONE
|
||||
hi Visual guifg=#f0e68c guibg=#6b8e24 gui=NONE cterm=NONE
|
||||
@@ -97,6 +99,8 @@ if s:t_Co >= 256
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link EndOfBuffer NonText
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=231 ctermbg=236 cterm=NONE
|
||||
hi StatusLine ctermfg=236 ctermbg=144 cterm=NONE
|
||||
hi StatusLineNC ctermfg=242 ctermbg=144 cterm=NONE
|
||||
@@ -112,7 +116,7 @@ if s:t_Co >= 256
|
||||
hi TabLineSel ctermfg=236 ctermbg=186 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=241 cterm=NONE
|
||||
hi ToolbarButton ctermfg=236 ctermbg=222 cterm=bold
|
||||
hi NonText ctermfg=81 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=81 ctermbg=239 cterm=NONE
|
||||
hi SpecialKey ctermfg=112 ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=226 ctermbg=239 cterm=NONE
|
||||
hi Visual ctermfg=186 ctermbg=64 cterm=NONE
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: original maintainer Ron Aaron <ron@ronware.org>
|
||||
" Website: https://www.github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:48:00 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:44:22 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -12,7 +12,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'elflord'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
hi! link Terminal Normal
|
||||
hi! link Boolean Constant
|
||||
@@ -43,6 +43,8 @@ hi! link lCursor Cursor
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Steven Vertigan <steven@vertigan.wattle.id.au>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:52:56 2022
|
||||
" Last Updated: Sun 04 Sep 2022 09:48:34 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,10 +13,10 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'evening'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#ffa500', '#2e8b57', '#ffff00', '#006faf', '#8b008b', '#008b8b', '#bebebe', '#4d4d4d', '#ff5f5f', '#00ff00', '#ffff60', '#0087ff', '#ff80ff', '#00ffff', '#ffffff']
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0087ff', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
endif
|
||||
hi! link VertSplit StatusLineNC
|
||||
hi! link StatusLineTerm StatusLine
|
||||
@@ -64,6 +64,8 @@ hi! link String Constant
|
||||
hi! link Structure Type
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#ffffff guibg=#333333 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#8b0000 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#666666 gui=NONE cterm=NONE
|
||||
@@ -98,7 +100,7 @@ hi ToolbarButton guifg=NONE guibg=#999999 gui=bold cterm=bold
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual guifg=#ffffff guibg=#999999 gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=NONE guibg=NONE gui=bold,underline ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi WarningMsg guifg=#8b0000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#ff0000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#000000 guibg=#ffff00 gui=bold cterm=bold
|
||||
hi debugBreakpoint guifg=#00008b guibg=#ff0000 gui=NONE cterm=NONE
|
||||
hi debugPC guifg=#00008b guibg=#0000ff gui=NONE cterm=NONE
|
||||
@@ -170,6 +172,8 @@ if s:t_Co >= 256
|
||||
hi! link Structure Type
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=231 ctermbg=236 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=88 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=241 cterm=NONE
|
||||
@@ -204,7 +208,7 @@ if s:t_Co >= 256
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=231 ctermbg=246 cterm=NONE
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi WarningMsg ctermfg=88 ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=196 ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=16 ctermbg=226 cterm=bold
|
||||
hi debugBreakpoint ctermfg=18 ctermbg=196 cterm=NONE
|
||||
hi debugPC ctermfg=18 ctermbg=21 cterm=NONE
|
||||
@@ -279,6 +283,8 @@ if s:t_Co >= 16
|
||||
hi! link Structure Type
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=white ctermbg=black cterm=NONE
|
||||
hi ColorColumn ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
@@ -313,7 +319,7 @@ if s:t_Co >= 16
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=white ctermbg=darkgray cterm=NONE
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi WarningMsg ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=black ctermbg=darkyellow cterm=bold
|
||||
hi debugBreakpoint ctermfg=darkblue ctermbg=red cterm=NONE
|
||||
hi debugPC ctermfg=darkblue ctermbg=blue cterm=NONE
|
||||
@@ -494,13 +500,26 @@ endif
|
||||
" Color: grey30 #4d4d4d 239 darkgray
|
||||
" Color: grey40 #666666 241 darkgray
|
||||
" Color: grey60 #999999 246 darkgray
|
||||
" Color: xtermblue #0087ff 33 blue
|
||||
" Color: xtermdarkblue #006faf 25 darkblue
|
||||
" Color: xtermred #ff5f5f 203 red
|
||||
" Color: comment #80a0ff 111 lightblue
|
||||
" Color: darkred #8b0000 88 darkred
|
||||
" Term colors: black orange seagreen yellow xtermdarkblue darkmagenta darkcyan grey
|
||||
" Term colors: grey30 xtermred green lightyellow xtermblue magenta cyan white
|
||||
" Color: x_black #000000 16 black
|
||||
" Color: x_darkred #cd0000 160 darkred
|
||||
" Color: x_darkgreen #00cd00 40 darkgreen
|
||||
" Color: x_darkyellow #cdcd00 184 darkyellow
|
||||
" Color: x_darkblue_m #0087ff 33 darkblue
|
||||
" Color: x_darkmagenta #cd00cd 164 darkmagenta
|
||||
" Color: x_darkcyan #00cdcd 44 darkcyan
|
||||
" Color: x_gray #e5e5e5 254 gray
|
||||
" Color: x_darkgray #7f7f7f 244 darkgray
|
||||
" Color: x_red #ff0000 196 red
|
||||
" Color: x_green #00ff00 46 green
|
||||
" Color: x_yellow #ffff00 226 yellow
|
||||
" Color: x_blue #5c5cff 63 blue
|
||||
" Color: x_magenta #ff00ff 201 magenta
|
||||
" Color: x_cyan #00ffff 51 cyan
|
||||
" Color: x_white #ffffff 231 white
|
||||
" Term colors: x_black x_darkred x_darkgreen x_darkyellow x_darkblue_m x_darkmagenta x_darkcyan x_gray
|
||||
" Term colors: x_darkgray x_red x_green x_yellow x_blue x_magenta x_cyan x_white
|
||||
" Color: bgDiffA #5F875F 65 darkgreen
|
||||
" Color: bgDiffC #5F87AF 67 blue
|
||||
" Color: bgDiffD #AF5FAF 133 magenta
|
||||
|
||||
523
runtime/colors/habamax.vim
Normal file
523
runtime/colors/habamax.vim
Normal file
@@ -0,0 +1,523 @@
|
||||
" Name: habamax
|
||||
" Description: Hubba hubba hubba.
|
||||
" Author: Maxim Kim <habamax@gmail.com>
|
||||
" Maintainer: Maxim Kim <habamax@gmail.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Fri 02 Sep 2022 09:45:11 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
set background=dark
|
||||
|
||||
hi clear
|
||||
let g:colors_name = 'habamax'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#1c1c1c', '#d75f5f', '#87af87', '#afaf87', '#5f87af', '#af87af', '#5f8787', '#9e9e9e', '#767676', '#d7875f', '#afd7af', '#d7d787', '#87afd7', '#d7afd7', '#87afaf', '#bcbcbc']
|
||||
endif
|
||||
hi! link Terminal Normal
|
||||
hi! link StatuslineTerm Statusline
|
||||
hi! link StatuslineTermNC StatuslineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi! link javaScriptFunction Statement
|
||||
hi! link javaScriptIdentifier Statement
|
||||
hi! link sqlKeyword Statement
|
||||
hi! link yamlBlockMappingKey Statement
|
||||
hi! link rubyMacro Statement
|
||||
hi! link rubyDefine Statement
|
||||
hi! link vimVar Normal
|
||||
hi! link vimOper Normal
|
||||
hi! link vimSep Normal
|
||||
hi! link vimParenSep Normal
|
||||
hi! link vimCommentString Comment
|
||||
hi! link gitCommitSummary Title
|
||||
hi! link markdownUrl String
|
||||
hi! link elixirOperator Statement
|
||||
hi! link elixirKeyword Statement
|
||||
hi! link elixirBlockDefinition Statement
|
||||
hi! link elixirDefine Statement
|
||||
hi! link elixirPrivateDefine Statement
|
||||
hi! link elixirGuard Statement
|
||||
hi! link elixirPrivateGuard Statement
|
||||
hi! link elixirModuleDefine Statement
|
||||
hi! link elixirProtocolDefine Statement
|
||||
hi! link elixirImplDefine Statement
|
||||
hi! link elixirRecordDefine Statement
|
||||
hi! link elixirPrivateRecordDefine Statement
|
||||
hi! link elixirMacroDefine Statement
|
||||
hi! link elixirPrivateMacroDefine Statement
|
||||
hi! link elixirDelegateDefine Statement
|
||||
hi! link elixirOverridableDefine Statement
|
||||
hi! link elixirExceptionDefine Statement
|
||||
hi! link elixirCallbackDefine Statement
|
||||
hi! link elixirStructDefine Statement
|
||||
hi! link elixirExUnitMacro Statement
|
||||
hi! link elixirInclude Statement
|
||||
hi! link elixirAtom PreProc
|
||||
hi! link elixirDocTest String
|
||||
hi ALEErrorSign guifg=#d75f5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi ALEInfoSign guifg=#d7d787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi ALEWarningSign guifg=#af87af guibg=NONE gui=NONE cterm=NONE
|
||||
hi ALEError guifg=#1c1c1c guibg=#d75f5f gui=NONE cterm=NONE
|
||||
hi ALEVirtualTextError guifg=#1c1c1c guibg=#d75f5f gui=NONE cterm=NONE
|
||||
hi ALEWarning guifg=#1c1c1c guibg=#af87af gui=NONE cterm=NONE
|
||||
hi ALEVirtualTextWarning guifg=#1c1c1c guibg=#af87af gui=NONE cterm=NONE
|
||||
hi ALEInfo guifg=#d7d787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi ALEVirtualTextInfo guifg=#d7d787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Normal guifg=#bcbcbc guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi Statusline guifg=#1c1c1c guibg=#9e9e9e gui=NONE cterm=NONE
|
||||
hi StatuslineNC guifg=#1c1c1c guibg=#767676 gui=NONE cterm=NONE
|
||||
hi VertSplit guifg=#767676 guibg=#767676 gui=NONE cterm=NONE
|
||||
hi TabLine guifg=#1c1c1c guibg=#767676 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=#1c1c1c guibg=#767676 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=NONE guibg=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#9e9e9e guibg=#1c1c1c gui=bold,reverse cterm=bold,reverse
|
||||
hi QuickFixLine guifg=#1c1c1c guibg=#5f87af gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#ffaf5f guibg=NONE gui=bold cterm=bold
|
||||
hi LineNr guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi LineNrAbove guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi LineNrBelow guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Visual guifg=#1c1c1c guibg=#87afaf gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#1c1c1c guibg=#5f8787 gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=NONE guibg=#767676 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#1c1c1c guibg=#afaf87 gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error guifg=#d75f5f guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi ErrorMsg guifg=#d75f5f guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi ModeMsg guifg=#1c1c1c guibg=#d7d787 gui=NONE cterm=NONE
|
||||
hi MoreMsg guifg=#87af87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Question guifg=#afaf87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#d7875f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#d7d787 guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi MatchParen guifg=#5f8787 guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi Search guifg=#1c1c1c guibg=#87af87 gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#1c1c1c guibg=#ffaf5f gui=NONE cterm=NONE
|
||||
hi CurSearch guifg=#1c1c1c guibg=#afaf87 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#1c1c1c guibg=#d7d787 gui=NONE cterm=NONE
|
||||
hi debugPC guifg=#1c1c1c guibg=#5f87af gui=NONE cterm=NONE
|
||||
hi debugBreakpoint guifg=#1c1c1c guibg=#d7875f gui=NONE cterm=NONE
|
||||
hi Cursor guifg=#1c1c1c guibg=#ffaf5f gui=NONE cterm=NONE
|
||||
hi lCursor guifg=#1c1c1c guibg=#5fff00 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi Folded guifg=#9e9e9e guibg=#262626 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=NONE guibg=NONE guisp=#d75f5f gui=undercurl ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi SpellCap guifg=NONE guibg=NONE guisp=#5f87af gui=undercurl ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi SpellLocal guifg=NONE guibg=NONE guisp=#87af87 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi SpellRare guifg=NONE guibg=NONE guisp=#d7afd7 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Comment guifg=#767676 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#d7875f guibg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#87af87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Character guifg=#afd7af guibg=NONE gui=NONE cterm=NONE
|
||||
hi Identifier guifg=#87afaf guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#af87af guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#afaf87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Type guifg=#87afd7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#5f8787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=NONE guibg=NONE gui=underline ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title guifg=#d7d787 guibg=NONE gui=bold cterm=bold
|
||||
hi Directory guifg=#87afaf guibg=NONE gui=bold cterm=bold
|
||||
hi Conceal guifg=#767676 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Debug guifg=#5f8787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#000000 guibg=#87af87 gui=NONE cterm=NONE
|
||||
hi DiffDelete guifg=#af875f guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffAdded guifg=#87af87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffRemoved guifg=#d75f5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffSubname guifg=#af87af guibg=NONE gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#000000 guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#000000 guibg=#afafaf gui=NONE cterm=NONE
|
||||
|
||||
if s:t_Co >= 256
|
||||
hi! link Terminal Normal
|
||||
hi! link StatuslineTerm Statusline
|
||||
hi! link StatuslineTermNC StatuslineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi! link javaScriptFunction Statement
|
||||
hi! link javaScriptIdentifier Statement
|
||||
hi! link sqlKeyword Statement
|
||||
hi! link yamlBlockMappingKey Statement
|
||||
hi! link rubyMacro Statement
|
||||
hi! link rubyDefine Statement
|
||||
hi! link vimVar Normal
|
||||
hi! link vimOper Normal
|
||||
hi! link vimSep Normal
|
||||
hi! link vimParenSep Normal
|
||||
hi! link vimCommentString Comment
|
||||
hi! link gitCommitSummary Title
|
||||
hi! link markdownUrl String
|
||||
hi! link elixirOperator Statement
|
||||
hi! link elixirKeyword Statement
|
||||
hi! link elixirBlockDefinition Statement
|
||||
hi! link elixirDefine Statement
|
||||
hi! link elixirPrivateDefine Statement
|
||||
hi! link elixirGuard Statement
|
||||
hi! link elixirPrivateGuard Statement
|
||||
hi! link elixirModuleDefine Statement
|
||||
hi! link elixirProtocolDefine Statement
|
||||
hi! link elixirImplDefine Statement
|
||||
hi! link elixirRecordDefine Statement
|
||||
hi! link elixirPrivateRecordDefine Statement
|
||||
hi! link elixirMacroDefine Statement
|
||||
hi! link elixirPrivateMacroDefine Statement
|
||||
hi! link elixirDelegateDefine Statement
|
||||
hi! link elixirOverridableDefine Statement
|
||||
hi! link elixirExceptionDefine Statement
|
||||
hi! link elixirCallbackDefine Statement
|
||||
hi! link elixirStructDefine Statement
|
||||
hi! link elixirExUnitMacro Statement
|
||||
hi! link elixirInclude Statement
|
||||
hi! link elixirAtom PreProc
|
||||
hi! link elixirDocTest String
|
||||
hi ALEErrorSign ctermfg=167 ctermbg=NONE cterm=NONE
|
||||
hi ALEInfoSign ctermfg=186 ctermbg=NONE cterm=NONE
|
||||
hi ALEWarningSign ctermfg=139 ctermbg=NONE cterm=NONE
|
||||
hi ALEError ctermfg=234 ctermbg=167 cterm=NONE
|
||||
hi ALEVirtualTextError ctermfg=234 ctermbg=167 cterm=NONE
|
||||
hi ALEWarning ctermfg=234 ctermbg=139 cterm=NONE
|
||||
hi ALEVirtualTextWarning ctermfg=234 ctermbg=139 cterm=NONE
|
||||
hi ALEInfo ctermfg=186 ctermbg=NONE cterm=NONE
|
||||
hi ALEVirtualTextInfo ctermfg=186 ctermbg=NONE cterm=NONE
|
||||
hi Normal ctermfg=250 ctermbg=234 cterm=NONE
|
||||
hi Statusline ctermfg=234 ctermbg=247 cterm=NONE
|
||||
hi StatuslineNC ctermfg=234 ctermbg=243 cterm=NONE
|
||||
hi VertSplit ctermfg=243 ctermbg=243 cterm=NONE
|
||||
hi TabLine ctermfg=234 ctermbg=243 cterm=NONE
|
||||
hi TabLineFill ctermfg=234 ctermbg=243 cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=247 ctermbg=234 cterm=bold,reverse
|
||||
hi QuickFixLine ctermfg=234 ctermbg=67 cterm=NONE
|
||||
hi CursorLineNr ctermfg=215 ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi LineNrAbove ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi LineNrBelow ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=234 ctermbg=109 cterm=NONE
|
||||
hi VisualNOS ctermfg=234 ctermbg=66 cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=243 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=234 ctermbg=144 cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=167 ctermbg=234 cterm=reverse
|
||||
hi ErrorMsg ctermfg=167 ctermbg=234 cterm=reverse
|
||||
hi ModeMsg ctermfg=234 ctermbg=186 cterm=NONE
|
||||
hi MoreMsg ctermfg=108 ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=144 ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=173 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=186 ctermbg=234 cterm=reverse
|
||||
hi MatchParen ctermfg=66 ctermbg=234 cterm=reverse
|
||||
hi Search ctermfg=234 ctermbg=108 cterm=NONE
|
||||
hi IncSearch ctermfg=234 ctermbg=215 cterm=NONE
|
||||
hi CurSearch ctermfg=234 ctermbg=144 cterm=NONE
|
||||
hi WildMenu ctermfg=234 ctermbg=186 cterm=NONE
|
||||
hi debugPC ctermfg=234 ctermbg=67 cterm=NONE
|
||||
hi debugBreakpoint ctermfg=234 ctermbg=173 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi Folded ctermfg=247 ctermbg=235 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi SpellBad ctermfg=167 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=67 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=108 ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=182 ctermbg=NONE cterm=underline
|
||||
hi Comment ctermfg=243 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=173 ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=108 ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=151 ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=109 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=139 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=144 ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=110 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=66 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=186 ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=109 ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=243 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=66 ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=16 ctermbg=108 cterm=NONE
|
||||
hi DiffDelete ctermfg=137 ctermbg=NONE cterm=NONE
|
||||
hi diffAdded ctermfg=108 ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=167 ctermbg=NONE cterm=NONE
|
||||
hi diffSubname ctermfg=139 ctermbg=NONE cterm=NONE
|
||||
hi DiffText ctermfg=16 ctermbg=188 cterm=NONE
|
||||
hi DiffChange ctermfg=16 ctermbg=145 cterm=NONE
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
hi ALEErrorSign ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi ALEInfoSign ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi ALEWarningSign ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi ALEError ctermfg=black ctermbg=darkred cterm=NONE
|
||||
hi ALEVirtualTextError ctermfg=black ctermbg=darkred cterm=NONE
|
||||
hi ALEWarning ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi ALEVirtualTextWarning ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi ALEInfo ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi ALEVirtualTextInfo ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Normal ctermfg=white ctermbg=black cterm=NONE
|
||||
hi Statusline ctermfg=black ctermbg=gray cterm=NONE
|
||||
hi StatuslineNC ctermfg=black ctermbg=darkgray cterm=NONE
|
||||
hi VertSplit ctermfg=darkgray ctermbg=darkgray cterm=NONE
|
||||
hi TabLine ctermfg=black ctermbg=darkgray cterm=NONE
|
||||
hi TabLineFill ctermfg=black ctermbg=darkgray cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=gray ctermbg=black cterm=bold,reverse
|
||||
hi QuickFixLine ctermfg=black ctermbg=blue cterm=NONE
|
||||
hi CursorLineNr ctermfg=red ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi LineNrAbove ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi LineNrBelow ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=black ctermbg=cyan cterm=NONE
|
||||
hi VisualNOS ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=darkgrey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgray cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi ErrorMsg ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi ModeMsg ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=yellow ctermbg=black cterm=reverse
|
||||
hi MatchParen ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=red cterm=NONE
|
||||
hi CurSearch ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi WildMenu ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi debugPC ctermfg=black ctermbg=blue cterm=NONE
|
||||
hi debugBreakpoint ctermfg=black ctermbg=red cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Folded ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi ColorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=blue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=darkgreen ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=magenta ctermbg=NONE cterm=underline
|
||||
hi Comment ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=yellow ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=cyan ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi DiffDelete ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi diffAdded ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi diffSubname ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=lightgrey cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=darkgray cterm=NONE
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
hi Normal ctermfg=gray ctermbg=black cterm=NONE
|
||||
hi Statusline ctermfg=gray ctermbg=black cterm=bold,reverse
|
||||
hi StatuslineNC ctermfg=gray ctermbg=black cterm=reverse
|
||||
hi VertSplit ctermfg=gray ctermbg=black cterm=reverse
|
||||
hi TabLine ctermfg=black ctermbg=gray cterm=NONE
|
||||
hi TabLineFill ctermfg=black ctermbg=gray cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=gray ctermbg=black cterm=bold,reverse
|
||||
hi QuickFixLine ctermfg=black ctermbg=blue cterm=NONE
|
||||
hi CursorLineNr ctermfg=darkyellow ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi LineNrAbove ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi LineNrBelow ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi NonText ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi EndOfBuffer ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi SpecialKey ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi FoldColumn ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi Visual ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Pmenu ctermfg=black ctermbg=gray cterm=NONE
|
||||
hi PmenuThumb ctermfg=gray ctermbg=black cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=gray cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=darkred ctermbg=gray cterm=bold,reverse
|
||||
hi ErrorMsg ctermfg=darkred ctermbg=gray cterm=bold,reverse
|
||||
hi ModeMsg ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi MatchParen ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi CurSearch ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi WildMenu ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi debugPC ctermfg=black ctermbg=blue cterm=NONE
|
||||
hi debugBreakpoint ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Folded ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi ColorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SpellBad ctermfg=darkred ctermbg=gray cterm=reverse
|
||||
hi SpellCap ctermfg=blue ctermbg=gray cterm=reverse
|
||||
hi SpellLocal ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi SpellRare ctermfg=darkmagenta ctermbg=gray cterm=reverse
|
||||
hi Comment ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=darkyellow ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=darkcyan ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi DiffDelete ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi diffAdded ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi diffSubname ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi DiffText ctermfg=white ctermbg=black cterm=bold,reverse
|
||||
hi DiffChange ctermfg=black ctermbg=white cterm=NONE
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 0
|
||||
hi Normal term=NONE
|
||||
hi ColorColumn term=reverse
|
||||
hi Conceal term=NONE
|
||||
hi Cursor term=reverse
|
||||
hi CursorColumn term=NONE
|
||||
hi CursorLine term=underline
|
||||
hi CursorLineNr term=bold
|
||||
hi DiffAdd term=reverse
|
||||
hi DiffChange term=NONE
|
||||
hi DiffDelete term=reverse
|
||||
hi DiffText term=reverse
|
||||
hi Directory term=NONE
|
||||
hi EndOfBuffer term=NONE
|
||||
hi ErrorMsg term=bold,reverse
|
||||
hi FoldColumn term=NONE
|
||||
hi Folded term=NONE
|
||||
hi IncSearch term=bold,reverse,underline
|
||||
hi LineNr term=NONE
|
||||
hi MatchParen term=bold,underline
|
||||
hi ModeMsg term=bold
|
||||
hi MoreMsg term=NONE
|
||||
hi NonText term=NONE
|
||||
hi Pmenu term=reverse
|
||||
hi PmenuSbar term=reverse
|
||||
hi PmenuSel term=bold
|
||||
hi PmenuThumb term=NONE
|
||||
hi Question term=standout
|
||||
hi Search term=reverse
|
||||
hi SignColumn term=reverse
|
||||
hi SpecialKey term=bold
|
||||
hi SpellBad term=underline
|
||||
hi SpellCap term=underline
|
||||
hi SpellLocal term=underline
|
||||
hi SpellRare term=underline
|
||||
hi StatusLine term=bold,reverse
|
||||
hi StatusLineNC term=bold,underline
|
||||
hi TabLine term=bold,underline
|
||||
hi TabLineFill term=NONE
|
||||
hi Terminal term=NONE
|
||||
hi TabLineSel term=bold,reverse
|
||||
hi Title term=NONE
|
||||
hi VertSplit term=NONE
|
||||
hi Visual term=reverse
|
||||
hi VisualNOS term=NONE
|
||||
hi WarningMsg term=standout
|
||||
hi WildMenu term=bold
|
||||
hi CursorIM term=NONE
|
||||
hi ToolbarLine term=reverse
|
||||
hi ToolbarButton term=bold,reverse
|
||||
hi CurSearch term=reverse
|
||||
hi CursorLineFold term=underline
|
||||
hi CursorLineSign term=underline
|
||||
hi Comment term=bold
|
||||
hi Constant term=NONE
|
||||
hi Error term=bold,reverse
|
||||
hi Identifier term=NONE
|
||||
hi Ignore term=NONE
|
||||
hi PreProc term=NONE
|
||||
hi Special term=NONE
|
||||
hi Statement term=NONE
|
||||
hi Todo term=bold,reverse
|
||||
hi Type term=NONE
|
||||
hi Underlined term=underline
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
" Background: dark
|
||||
" Color: color00 #1C1C1C 234 black
|
||||
" Color: color08 #767676 243 darkgray
|
||||
" Color: color01 #D75F5F 167 darkred
|
||||
" Color: color09 #D7875F 173 red
|
||||
" Color: color02 #87AF87 108 darkgreen
|
||||
" Color: color10 #AFD7AF 151 green
|
||||
" Color: color03 #AFAF87 144 darkyellow
|
||||
" Color: color11 #D7D787 186 yellow
|
||||
" Color: color04 #5F87AF 67 blue
|
||||
" Color: color12 #87AFD7 110 blue
|
||||
" Color: color05 #AF87AF 139 darkmagenta
|
||||
" Color: color13 #D7AFD7 182 magenta
|
||||
" Color: color06 #5F8787 66 darkcyan
|
||||
" Color: color14 #87AFAF 109 cyan
|
||||
" Color: color07 #9E9E9E 247 gray
|
||||
" Color: color15 #BCBCBC 250 white
|
||||
" Color: colorLine #303030 236 darkgrey
|
||||
" Color: colorB #262626 235 darkgrey
|
||||
" Color: colorNonT #585858 240 darkgrey
|
||||
" Color: colorC #FFAF5F 215 red
|
||||
" Color: colorlC #5FFF00 82 green
|
||||
" Color: colorV #1F3F5F 109 cyan
|
||||
" Color: diffAdd #87AF87 108 darkgreen
|
||||
" Color: diffDelete #af875f 137 darkyellow
|
||||
" Color: diffChange #AFAFAF 145 darkgray
|
||||
" Color: diffText #D7D7D7 188 lightgrey
|
||||
" Color: black #000000 16 black
|
||||
" Color: white #FFFFFF 231 white
|
||||
" Term colors: color00 color01 color02 color03 color04 color05 color06 color07
|
||||
" Term colors: color08 color09 color10 color11 color12 color13 color14 color15
|
||||
" vim: et ts=2 sw=2
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Shian Lee.
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:53:58 2022
|
||||
" Last Updated: Sun 04 Sep 2022 09:50:04 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'industry'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#303030', '#870000', '#5fd75f', '#afaf00', '#87afff', '#af00af', '#00afaf', '#6c6c6c', '#444444', '#ff0000', '#00ff00', '#ffff00', '#005fff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
@@ -51,7 +51,7 @@ hi Underlined guifg=#87afff guibg=NONE gui=underline cterm=underline
|
||||
hi Error guifg=#ffffff guibg=#ff0000 gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#ffffff guibg=#ff0000 gui=NONE cterm=NONE
|
||||
hi ModeMsg guifg=#ffffff guibg=NONE gui=bold cterm=bold
|
||||
hi WarningMsg guifg=#870000 guibg=NONE gui=bold cterm=bold
|
||||
hi WarningMsg guifg=#ff0000 guibg=NONE gui=bold cterm=bold
|
||||
hi MoreMsg guifg=#5fd75f guibg=NONE gui=bold cterm=bold
|
||||
hi Question guifg=#00ff00 guibg=NONE gui=bold cterm=bold
|
||||
hi Todo guifg=#005fff guibg=#ffff00 gui=NONE cterm=NONE
|
||||
@@ -84,6 +84,8 @@ hi! link LineNrBelow LineNr
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd guifg=#ffffff guibg=#5f875f gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#ffffff guibg=#5f87af gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#000000 guibg=#c6c6c6 gui=NONE cterm=NONE
|
||||
@@ -123,7 +125,7 @@ if s:t_Co >= 256
|
||||
hi Error ctermfg=231 ctermbg=196 cterm=NONE
|
||||
hi ErrorMsg ctermfg=231 ctermbg=196 cterm=NONE
|
||||
hi ModeMsg ctermfg=231 ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=88 ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=196 ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=77 ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=46 ctermbg=NONE cterm=bold
|
||||
hi Todo ctermfg=27 ctermbg=226 cterm=NONE
|
||||
@@ -156,6 +158,8 @@ if s:t_Co >= 256
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=231 ctermbg=65 cterm=NONE
|
||||
hi DiffChange ctermfg=231 ctermbg=67 cterm=NONE
|
||||
hi DiffText ctermfg=16 ctermbg=251 cterm=NONE
|
||||
@@ -198,7 +202,7 @@ if s:t_Co >= 16
|
||||
hi Error ctermfg=white ctermbg=red cterm=NONE
|
||||
hi ErrorMsg ctermfg=white ctermbg=red cterm=NONE
|
||||
hi ModeMsg ctermfg=white ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=darkred ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=red ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=green ctermbg=NONE cterm=bold
|
||||
hi Todo ctermfg=blue ctermbg=yellow cterm=NONE
|
||||
@@ -231,6 +235,8 @@ if s:t_Co >= 16
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=grey cterm=NONE
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: original maintainer Ron Aaron <ron@ronware.org>
|
||||
" Website: https://www.github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sat 11 Jun 2022 11:24:58 MSK
|
||||
" Last Updated: Fri 02 Sep 2022 09:23:56 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -12,7 +12,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'koehler'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
hi! link Terminal Normal
|
||||
hi! link Boolean Constant
|
||||
@@ -49,6 +49,8 @@ hi! link lCursor Cursor
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
|
||||
1002
runtime/colors/lunaperche.vim
Normal file
1002
runtime/colors/lunaperche.vim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Bram Moolenaar <Bram@vim.org>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:55:30 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:46:24 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=light
|
||||
hi clear
|
||||
let g:colors_name = 'morning'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#e4e4e4', '#a52a2a', '#ff00ff', '#6a0dad', '#008787', '#2e8b57', '#6a5acd', '#bcbcbc', '#0000ff', '#a52a2a', '#ff00ff', '#6a0dad', '#008787', '#2e8b57', '#6a5acd', '#000000']
|
||||
@@ -26,6 +26,8 @@ hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link StatuslineTerm Statusline
|
||||
hi! link StatuslineTermNC StatuslineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#000000 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#0000ff guibg=#cccccc gui=bold cterm=bold
|
||||
hi Folded guifg=#00008b guibg=#d3d3d3 gui=NONE cterm=NONE
|
||||
@@ -96,6 +98,8 @@ if s:t_Co >= 256
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link StatuslineTerm Statusline
|
||||
hi! link StatuslineTermNC StatuslineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=16 ctermbg=254 cterm=NONE
|
||||
hi EndOfBuffer ctermfg=21 ctermbg=252 cterm=bold
|
||||
hi Folded ctermfg=18 ctermbg=252 cterm=NONE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Ron Aaron <ron@ronware.org>.
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:56:21 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:47:20 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'murphy'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#303030', '#ffa700', '#005f00', '#ffd7af', '#87afff', '#ffafaf', '#00afaf', '#bcbcbc', '#444444', '#ff0000', '#00875f', '#ffff00', '#005fff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
@@ -26,6 +26,8 @@ hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#87ff87 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#0000ff guibg=#000000 gui=NONE cterm=NONE
|
||||
hi StatusLine guifg=#ffffff guibg=#00008b gui=NONE cterm=NONE
|
||||
@@ -96,6 +98,8 @@ if s:t_Co >= 256
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=120 ctermbg=16 cterm=NONE
|
||||
hi EndOfBuffer ctermfg=21 ctermbg=16 cterm=NONE
|
||||
hi StatusLine ctermfg=231 ctermbg=18 cterm=NONE
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Original maintainerRon Aaron <ron@ronware.org>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:57:11 2022
|
||||
" Last Updated: Wed 14 Sep 2022 19:05:27 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -12,18 +12,20 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'pablo'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#ffffff guibg=#000000 gui=NONE cterm=NONE
|
||||
hi! link Terminal Normal
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#ffffff guibg=#000000 gui=NONE cterm=NONE
|
||||
hi Comment guifg=#808080 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#00ffff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Identifier guifg=#00c0c0 guibg=NONE gui=NONE cterm=NONE
|
||||
@@ -88,13 +90,15 @@ hi DiffText guifg=#000000 guibg=#c6c6c6 gui=NONE cterm=NONE
|
||||
hi DiffDelete guifg=#ffffff guibg=#af5faf gui=NONE cterm=NONE
|
||||
|
||||
if s:t_Co >= 256
|
||||
hi Normal ctermfg=231 ctermbg=16 cterm=NONE
|
||||
hi! link Terminal Normal
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=231 ctermbg=16 cterm=NONE
|
||||
hi Comment ctermfg=244 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=51 ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=37 ctermbg=NONE cterm=NONE
|
||||
@@ -117,7 +121,7 @@ if s:t_Co >= 256
|
||||
hi NonText ctermfg=63 ctermbg=NONE cterm=bold
|
||||
hi EndOfBuffer ctermfg=63 ctermbg=NONE cterm=bold
|
||||
hi ErrorMsg ctermfg=231 ctermbg=160 cterm=NONE
|
||||
hi WarningMsg ctermfg=224 ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=196 ctermbg=NONE cterm=NONE
|
||||
hi SignColumn ctermfg=51 ctermbg=248 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=239 cterm=NONE
|
||||
hi FoldColumn ctermfg=102 ctermbg=236 cterm=NONE
|
||||
@@ -163,12 +167,6 @@ endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
hi Normal ctermfg=white ctermbg=black cterm=NONE
|
||||
hi! link Terminal Normal
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi Comment ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
@@ -191,7 +189,7 @@ if s:t_Co >= 16
|
||||
hi NonText ctermfg=blue ctermbg=NONE cterm=bold
|
||||
hi EndOfBuffer ctermfg=blue ctermbg=NONE cterm=bold
|
||||
hi ErrorMsg ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi WarningMsg ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi SignColumn ctermfg=cyan ctermbg=black cterm=NONE
|
||||
hi ColorColumn ctermfg=white ctermbg=darkgrey cterm=NONE
|
||||
hi FoldColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -282,7 +280,6 @@ if s:t_Co >= 8
|
||||
hi SpellLocal ctermfg=darkmagenta ctermbg=darkyellow cterm=reverse
|
||||
hi SpellRare ctermfg=darkgreen ctermbg=NONE cterm=reverse
|
||||
hi Comment ctermfg=grey ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=darkcyan ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkyellow ctermbg=NONE cterm=bold
|
||||
@@ -405,7 +402,7 @@ endif
|
||||
" Color: SpecialKey #00ffff 81 cyan
|
||||
" Color: StatusLineTerm #90ee90 121 darkgreen
|
||||
" Color: Title #ff00ff 225 magenta
|
||||
" Color: WarningMsg #ff0000 224 darkred
|
||||
" Color: WarningMsg #ff0000 196 red
|
||||
" Color: ToolbarLine #7f7f7f 242 darkgrey
|
||||
" Color: ToolbarButton #d3d3d3 254 grey
|
||||
" Color: Underlined #80a0ff 111 darkgreen
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 10:58:17 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:50:02 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=light
|
||||
hi clear
|
||||
let g:colors_name = 'peachpuff'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#ffdab9', '#a52a2a', '#c00058', '#cd00cd', '#008b8b', '#2e8b57', '#6a5acd', '#737373', '#406090', '#a52a2a', '#c00058', '#cd00cd', '#008b8b', '#2e8b57', '#6a5acd', '#000000']
|
||||
@@ -24,6 +24,8 @@ hi! link LineNrBelow LineNr
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#000000 guibg=#ffdab9 gui=NONE cterm=NONE
|
||||
hi Folded guifg=#000000 guibg=#e3c1a5 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#f5c195 gui=NONE cterm=NONE
|
||||
@@ -94,6 +96,8 @@ if s:t_Co >= 256
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=16 ctermbg=223 cterm=NONE
|
||||
hi Folded ctermfg=16 ctermbg=252 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=180 cterm=NONE
|
||||
|
||||
702
runtime/colors/quiet.vim
Normal file
702
runtime/colors/quiet.vim
Normal file
@@ -0,0 +1,702 @@
|
||||
" Name: quiet
|
||||
" Description: `monochrome`, but less ugly, with diffs, searches, a few other niceties, and both light and dark versions.
|
||||
" Author: neutaaaaan <neutaaaaan-gh@protonmail.com>
|
||||
" Maintainer: neutaaaaan <neutaaaaan-gh@protonmail.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Vim License (see `:help license`)`
|
||||
" Last Updated: Fri 16 Sep 2022 09:52:50 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
hi clear
|
||||
let g:colors_name = 'quiet'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
hi! link Terminal Normal
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi! link Boolean Constant
|
||||
hi! link Character Constant
|
||||
hi! link Conditional Statement
|
||||
hi! link Define PreProc
|
||||
hi! link Debug Special
|
||||
hi! link Delimiter Special
|
||||
hi! link Exception Statement
|
||||
hi! link Float Constant
|
||||
hi! link Function Identifier
|
||||
hi! link Include PreProc
|
||||
hi! link Keyword Statement
|
||||
hi! link Label Statement
|
||||
hi! link Macro PreProc
|
||||
hi! link Number Constant
|
||||
hi! link Operator Statement
|
||||
hi! link PreCondit PreProc
|
||||
hi! link Repeat Statement
|
||||
hi! link SpecialChar Special
|
||||
hi! link SpecialComment Special
|
||||
hi! link StorageClass Type
|
||||
hi! link String Constant
|
||||
hi! link Structure Type
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link lCursor Cursor
|
||||
hi! link debugBreakpoint ModeMsg
|
||||
hi! link debugPC CursorLine
|
||||
|
||||
if &background ==# 'dark'
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#080808', '#d7005f', '#00af5f', '#d78700', '#0087d7', '#d787d7', '#00afaf', '#dadada', '#707070', '#ff005f', '#00d75f', '#ffaf00', '#5fafff', '#ff87ff', '#00d7d7', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#dadada guibg=#080808 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#dadada guibg=#303030 gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#00af00 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#87afd7 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#d75f5f guibg=#080808 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#d787d7 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#dadada guibg=#080808 gui=reverse cterm=reverse
|
||||
hi FoldColumn guifg=#707070 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Folded guifg=#707070 guibg=#080808 gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#ffaf00 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi LineNr guifg=#444444 guibg=NONE gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=#ff00af guibg=NONE gui=bold cterm=bold
|
||||
hi ModeMsg guifg=#dadada guibg=NONE gui=bold cterm=bold
|
||||
hi MoreMsg guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#707070 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#080808 guibg=#87afd7 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=#dadada guibg=#707070 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#080808 guibg=#d787d7 gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=#dadada guibg=#d787d7 gui=NONE cterm=NONE
|
||||
hi Question guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#d787d7 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi Search guifg=#00afff guibg=#080808 gui=reverse cterm=reverse
|
||||
hi SignColumn guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=#d7005f guibg=NONE guisp=#d7005f gui=undercurl cterm=underline
|
||||
hi SpellCap guifg=#0087d7 guibg=NONE guisp=#0087d7 gui=undercurl cterm=underline
|
||||
hi SpellLocal guifg=#d787d7 guibg=NONE guisp=#d787d7 gui=undercurl cterm=underline
|
||||
hi SpellRare guifg=#00afaf guibg=NONE guisp=#00afaf gui=undercurl cterm=underline
|
||||
hi StatusLine guifg=#080808 guibg=#dadada gui=bold cterm=bold
|
||||
hi StatusLineNC guifg=#707070 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi TabLine guifg=#707070 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi TabLineFill guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#080808 guibg=#dadada gui=bold cterm=bold
|
||||
hi Title guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit guifg=#707070 guibg=#080808 gui=NONE cterm=NONE
|
||||
hi Visual guifg=#ffaf00 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi VisualNOS guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#00afff guibg=#080808 gui=bold cterm=bold
|
||||
hi Comment guifg=#707070 guibg=NONE gui=bold cterm=bold
|
||||
hi Constant guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#ff005f guibg=#080808 gui=bold,reverse cterm=bold,reverse
|
||||
hi Identifier guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#00ffaf guibg=NONE gui=bold,reverse cterm=bold,reverse
|
||||
hi Type guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#dadada guibg=NONE gui=underline cterm=underline
|
||||
hi CursorIM guifg=#080808 guibg=#afff00 gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=#080808 gui=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#dadada guibg=#080808 gui=bold cterm=bold
|
||||
else
|
||||
" Light background
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#080808', '#af0000', '#005f00', '#af5f00', '#005faf', '#870087', '#008787', '#d7d7d7', '#626262', '#d70000', '#008700', '#d78700', '#0087d7', '#af00af', '#00afaf', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#080808 guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#080808 guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#87d787 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#afafd7 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#d78787 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#d787d7 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#080808 guibg=#d7d7d7 gui=reverse cterm=reverse
|
||||
hi FoldColumn guifg=#626262 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Folded guifg=#626262 guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#ffaf00 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi LineNr guifg=#a8a8a8 guibg=NONE gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=#ff00af guibg=#d7d7d7 gui=bold cterm=bold
|
||||
hi ModeMsg guifg=#080808 guibg=NONE gui=bold cterm=bold
|
||||
hi MoreMsg guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#626262 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#080808 guibg=#afafd7 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=#080808 guibg=#626262 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#080808 guibg=#d787d7 gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=#080808 guibg=#d787d7 gui=NONE cterm=NONE
|
||||
hi Question guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#d787d7 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi Search guifg=#00afff guibg=#080808 gui=reverse cterm=reverse
|
||||
hi SignColumn guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=#af0000 guibg=#d7d7d7 guisp=#af0000 gui=undercurl cterm=underline
|
||||
hi SpellCap guifg=#005faf guibg=#d7d7d7 guisp=#005faf gui=undercurl cterm=underline
|
||||
hi SpellLocal guifg=#870087 guibg=#d7d7d7 guisp=#870087 gui=undercurl cterm=underline
|
||||
hi SpellRare guifg=#008787 guibg=#d7d7d7 guisp=#008787 gui=undercurl cterm=underline
|
||||
hi StatusLine guifg=#eeeeee guibg=#080808 gui=bold cterm=bold
|
||||
hi StatusLineNC guifg=#080808 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi TabLine guifg=#080808 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=#080808 guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#eeeeee guibg=#080808 gui=bold cterm=bold
|
||||
hi Title guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit guifg=#626262 guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi Visual guifg=#ffaf00 guibg=#080808 gui=reverse cterm=reverse
|
||||
hi VisualNOS guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#080808 guibg=#eeeeee gui=bold cterm=bold
|
||||
hi Comment guifg=#080808 guibg=NONE gui=bold cterm=bold
|
||||
hi Constant guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#ff005f guibg=#080808 gui=bold,reverse cterm=bold,reverse
|
||||
hi Identifier guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#00ffaf guibg=#080808 gui=bold,reverse cterm=bold,reverse
|
||||
hi Type guifg=#080808 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#080808 guibg=NONE gui=underline cterm=underline
|
||||
hi CursorIM guifg=#080808 guibg=#afff00 gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#080808 guibg=#d7d7d7 gui=bold cterm=bold
|
||||
endif
|
||||
|
||||
if s:t_Co >= 256
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=253 ctermbg=232 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=234 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi CursorLineNr ctermfg=253 ctermbg=236 cterm=NONE
|
||||
hi DiffAdd ctermfg=34 ctermbg=232 cterm=reverse
|
||||
hi DiffChange ctermfg=110 ctermbg=232 cterm=reverse
|
||||
hi DiffDelete ctermfg=167 ctermbg=232 cterm=reverse
|
||||
hi DiffText ctermfg=176 ctermbg=232 cterm=reverse
|
||||
hi Directory ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=253 ctermbg=232 cterm=reverse
|
||||
hi FoldColumn ctermfg=242 ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=242 ctermbg=232 cterm=NONE
|
||||
hi IncSearch ctermfg=214 ctermbg=232 cterm=reverse
|
||||
hi LineNr ctermfg=238 ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=199 ctermbg=NONE cterm=bold
|
||||
hi ModeMsg ctermfg=253 ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=242 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=232 ctermbg=110 cterm=NONE
|
||||
hi PmenuSbar ctermfg=253 ctermbg=242 cterm=NONE
|
||||
hi PmenuSel ctermfg=232 ctermbg=176 cterm=NONE
|
||||
hi PmenuThumb ctermfg=253 ctermbg=176 cterm=NONE
|
||||
hi Question ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=176 ctermbg=232 cterm=reverse
|
||||
hi Search ctermfg=39 ctermbg=232 cterm=reverse
|
||||
hi SignColumn ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi SpellBad ctermfg=161 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=32 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=176 ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=37 ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=232 ctermbg=253 cterm=bold
|
||||
hi StatusLineNC ctermfg=242 ctermbg=232 cterm=reverse
|
||||
hi TabLine ctermfg=242 ctermbg=232 cterm=reverse
|
||||
hi TabLineFill ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=232 ctermbg=253 cterm=bold
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=242 ctermbg=232 cterm=NONE
|
||||
hi Visual ctermfg=214 ctermbg=232 cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi WarningMsg ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=39 ctermbg=232 cterm=bold
|
||||
hi Comment ctermfg=242 ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=197 ctermbg=232 cterm=bold,reverse
|
||||
hi Identifier ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=49 ctermbg=NONE cterm=bold,reverse
|
||||
hi Type ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=253 ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=232 ctermbg=154 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=232 cterm=NONE
|
||||
hi ToolbarButton ctermfg=253 ctermbg=232 cterm=bold
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=232 ctermbg=188 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi CursorLineNr ctermfg=232 ctermbg=255 cterm=NONE
|
||||
hi DiffAdd ctermfg=114 ctermbg=232 cterm=reverse
|
||||
hi DiffChange ctermfg=146 ctermbg=232 cterm=reverse
|
||||
hi DiffDelete ctermfg=174 ctermbg=232 cterm=reverse
|
||||
hi DiffText ctermfg=176 ctermbg=232 cterm=reverse
|
||||
hi Directory ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=232 ctermbg=188 cterm=reverse
|
||||
hi FoldColumn ctermfg=241 ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=241 ctermbg=188 cterm=NONE
|
||||
hi IncSearch ctermfg=214 ctermbg=232 cterm=reverse
|
||||
hi LineNr ctermfg=248 ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=199 ctermbg=188 cterm=bold
|
||||
hi ModeMsg ctermfg=232 ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=241 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=232 ctermbg=146 cterm=NONE
|
||||
hi PmenuSbar ctermfg=232 ctermbg=241 cterm=NONE
|
||||
hi PmenuSel ctermfg=232 ctermbg=176 cterm=NONE
|
||||
hi PmenuThumb ctermfg=232 ctermbg=176 cterm=NONE
|
||||
hi Question ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=176 ctermbg=232 cterm=reverse
|
||||
hi Search ctermfg=39 ctermbg=232 cterm=reverse
|
||||
hi SignColumn ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi SpellBad ctermfg=124 ctermbg=188 cterm=underline
|
||||
hi SpellCap ctermfg=25 ctermbg=188 cterm=underline
|
||||
hi SpellLocal ctermfg=90 ctermbg=188 cterm=underline
|
||||
hi SpellRare ctermfg=30 ctermbg=188 cterm=underline
|
||||
hi StatusLine ctermfg=255 ctermbg=232 cterm=bold
|
||||
hi StatusLineNC ctermfg=232 ctermbg=248 cterm=NONE
|
||||
hi TabLine ctermfg=232 ctermbg=248 cterm=NONE
|
||||
hi TabLineFill ctermfg=232 ctermbg=188 cterm=NONE
|
||||
hi TabLineSel ctermfg=255 ctermbg=232 cterm=bold
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=241 ctermbg=188 cterm=NONE
|
||||
hi Visual ctermfg=214 ctermbg=232 cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi WarningMsg ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=232 ctermbg=255 cterm=bold
|
||||
hi Comment ctermfg=232 ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=197 ctermbg=232 cterm=bold,reverse
|
||||
hi Identifier ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=49 ctermbg=232 cterm=bold,reverse
|
||||
hi Type ctermfg=232 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=232 ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=232 ctermbg=154 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=188 cterm=NONE
|
||||
hi ToolbarButton ctermfg=232 ctermbg=188 cterm=bold
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLineNr ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi DiffAdd ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi DiffChange ctermfg=darkblue ctermbg=black cterm=reverse
|
||||
hi DiffDelete ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi DiffText ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Directory ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi FoldColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=bold,reverse,underline
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi QuickFixLine ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=darkblue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=darkmagenta ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=darkcyan ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLineFill ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi WildMenu ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Identifier ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Type ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ToolbarButton ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLineNr ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi DiffAdd ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi DiffChange ctermfg=darkblue ctermbg=black cterm=reverse
|
||||
hi DiffDelete ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi DiffText ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Directory ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi FoldColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=bold,reverse,underline
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi QuickFixLine ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=darkblue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=darkmagenta ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=darkcyan ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLineFill ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi WildMenu ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Identifier ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Type ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ToolbarButton ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLineNr ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi DiffAdd ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi DiffChange ctermfg=darkblue ctermbg=black cterm=reverse
|
||||
hi DiffDelete ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi DiffText ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Directory ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi FoldColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=bold,reverse,underline
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi QuickFixLine ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=darkblue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=darkmagenta ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=darkcyan ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLineFill ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi WildMenu ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Identifier ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Type ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ToolbarButton ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CursorLineNr ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi DiffAdd ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi DiffChange ctermfg=darkblue ctermbg=black cterm=reverse
|
||||
hi DiffDelete ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi DiffText ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Directory ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi FoldColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=bold,reverse,underline
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi QuickFixLine ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=darkblue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=darkmagenta ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=darkcyan ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLineFill ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=NONE ctermbg=NONE cterm=standout
|
||||
hi WildMenu ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Identifier ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi Type ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ToolbarButton ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 0
|
||||
hi Normal term=NONE
|
||||
hi ColorColumn term=reverse
|
||||
hi Conceal term=NONE
|
||||
hi Cursor term=reverse
|
||||
hi CursorColumn term=NONE
|
||||
hi CursorLine term=underline
|
||||
hi CursorLineNr term=bold
|
||||
hi DiffAdd term=reverse
|
||||
hi DiffChange term=NONE
|
||||
hi DiffDelete term=reverse
|
||||
hi DiffText term=reverse
|
||||
hi Directory term=NONE
|
||||
hi EndOfBuffer term=NONE
|
||||
hi ErrorMsg term=bold,reverse
|
||||
hi FoldColumn term=NONE
|
||||
hi Folded term=NONE
|
||||
hi IncSearch term=bold,reverse,underline
|
||||
hi LineNr term=NONE
|
||||
hi MatchParen term=bold,underline
|
||||
hi ModeMsg term=bold
|
||||
hi MoreMsg term=NONE
|
||||
hi NonText term=NONE
|
||||
hi Pmenu term=reverse
|
||||
hi PmenuSbar term=reverse
|
||||
hi PmenuSel term=bold
|
||||
hi PmenuThumb term=NONE
|
||||
hi Question term=standout
|
||||
hi Search term=reverse
|
||||
hi SignColumn term=reverse
|
||||
hi SpecialKey term=bold
|
||||
hi SpellBad term=underline
|
||||
hi SpellCap term=underline
|
||||
hi SpellLocal term=underline
|
||||
hi SpellRare term=underline
|
||||
hi StatusLine term=bold,reverse
|
||||
hi StatusLineNC term=bold,underline
|
||||
hi TabLine term=bold,underline
|
||||
hi TabLineFill term=NONE
|
||||
hi Terminal term=NONE
|
||||
hi TabLineSel term=bold,reverse
|
||||
hi Title term=NONE
|
||||
hi VertSplit term=NONE
|
||||
hi Visual term=reverse
|
||||
hi VisualNOS term=NONE
|
||||
hi WarningMsg term=standout
|
||||
hi WildMenu term=bold
|
||||
hi CursorIM term=NONE
|
||||
hi ToolbarLine term=reverse
|
||||
hi ToolbarButton term=bold,reverse
|
||||
hi CurSearch term=reverse
|
||||
hi CursorLineFold term=underline
|
||||
hi CursorLineSign term=underline
|
||||
hi Comment term=bold
|
||||
hi Constant term=NONE
|
||||
hi Error term=bold,reverse
|
||||
hi Identifier term=NONE
|
||||
hi Ignore term=NONE
|
||||
hi PreProc term=NONE
|
||||
hi Special term=NONE
|
||||
hi Statement term=NONE
|
||||
hi Todo term=bold,reverse
|
||||
hi Type term=NONE
|
||||
hi Underlined term=underline
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
" Background: dark
|
||||
" Color: dark0 #080808 232 black
|
||||
" Color: dark1 #d7005f 161 darkred
|
||||
" Color: dark2 #00af5f 35 darkgreen
|
||||
" Color: dark3 #d78700 172 darkyellow
|
||||
" Color: dark4 #0087d7 32 darkblue
|
||||
" Color: dark5 #d787d7 176 darkmagenta
|
||||
" Color: dark6 #00afaf 37 darkcyan
|
||||
" Color: dark7 #dadada 253 grey
|
||||
" Color: dark8 #707070 242 darkgrey
|
||||
" Color: dark9 #ff005f 197 red
|
||||
" Color: dark10 #00d75f 41 green
|
||||
" Color: dark11 #ffaf00 214 yellow
|
||||
" Color: dark12 #5fafff 75 blue
|
||||
" Color: dark13 #ff87ff 213 magenta
|
||||
" Color: dark14 #00d7d7 44 cyan
|
||||
" Color: dark15 #ffffff 231 white
|
||||
" Color: diffred #d75f5f 167 darkred
|
||||
" Color: diffgreen #00af00 34 darkgreen
|
||||
" Color: diffblue #87afd7 110 darkblue
|
||||
" Color: diffpink #d787d7 176 darkmagenta
|
||||
" Color: uipink #ff00af 199 magenta
|
||||
" Color: uilime #afff00 154 green
|
||||
" Color: uiteal #00ffaf 49 green
|
||||
" Color: uiblue #00afff 39 blue
|
||||
" Color: uipurple #af00ff 129 darkmagenta
|
||||
" Color: uiamber #ffaf00 214 darkyellow
|
||||
" Color: uiblack #303030 236 darkgrey
|
||||
" Color: yasogrey #1c1c1c 234 black
|
||||
" Color: linenrblack #444444 238 darkgrey
|
||||
" Color: errorred #ff005f 197 red
|
||||
" Term colors: dark0 dark1 dark2 dark3 dark4 dark5 dark6 dark7
|
||||
" Term colors: dark8 dark9 dark10 dark11 dark12 dark13 dark14 dark15
|
||||
" Background: light
|
||||
" Color: brightwhite #eeeeee 255 grey
|
||||
" Color: light0 #080808 232 black
|
||||
" Color: light1 #af0000 124 darkred
|
||||
" Color: light2 #005f00 22 darkgreen
|
||||
" Color: light3 #af5f00 130 darkyellow
|
||||
" Color: light4 #005faf 25 darkblue
|
||||
" Color: light5 #870087 90 darkmagenta
|
||||
" Color: light6 #008787 30 darkcyan
|
||||
" Color: light7 #d7d7d7 188 grey
|
||||
" Color: light8 #626262 241 darkgrey
|
||||
" Color: light9 #d70000 160 red
|
||||
" Color: light10 #008700 28 green
|
||||
" Color: light11 #d78700 172 yellow
|
||||
" Color: light12 #0087d7 32 blue
|
||||
" Color: light13 #af00af 127 magenta
|
||||
" Color: light14 #00afaf 37 cyan
|
||||
" Color: light15 #ffffff 231 white
|
||||
" Color: diffred #d78787 174 red
|
||||
" Color: diffgreen #87d787 114 green
|
||||
" Color: diffblue #afafd7 146 blue
|
||||
" Color: diffpink #d787d7 176 magenta
|
||||
" Color: uipink #ff00af 199 magenta
|
||||
" Color: uilime #afff00 154 green
|
||||
" Color: uiteal #00ffaf 49 cyan
|
||||
" Color: uiblue #00afff 39 blue
|
||||
" Color: uipurple #af00ff 129 darkmagenta
|
||||
" Color: uiamber #ffaf00 214 yellow
|
||||
" Color: invisigrey #a8a8a8 248 darkgrey
|
||||
" Color: yasogrey #e4e4e4 254 grey
|
||||
" Color: errorred #ff005f 197 red
|
||||
" Term colors: light0 light1 light2 light3 light4 light5 light6 light7
|
||||
" Term colors: light8 light9 light10 light11 light12 light13 light14 light15
|
||||
" Background: any
|
||||
" vim: et ts=2 sw=2
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: original maintainer Ron Aaron <ron@ronware.org>
|
||||
" Website: https://www.github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sat 11 Jun 2022 11:29:07 MSK
|
||||
" Last Updated: Fri 02 Sep 2022 09:50:56 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -12,7 +12,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'ron'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
hi! link Terminal Normal
|
||||
hi! link Boolean Constant
|
||||
@@ -46,6 +46,8 @@ hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer is Yasuhiro Matsumoto <mattn@mail.goo.ne.jp>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 11:02:11 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:51:42 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=light
|
||||
hi clear
|
||||
let g:colors_name = 'shine'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#8b0000', '#006400', '#ffff00', '#00008b', '#6a0dad', '#008b8b', '#dadada', '#767676', '#ffafaf', '#90ee90', '#ffff60', '#add8e6', '#ff00ff', '#00ffff', '#ffffff']
|
||||
@@ -28,6 +28,8 @@ hi! link EndOfBuffer NonText
|
||||
hi! link ErrorMsg Error
|
||||
hi! link Tag Special
|
||||
hi! link Operator Statement
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#000000 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi Folded guifg=#00008b guibg=#dadada gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#dadada gui=NONE cterm=NONE
|
||||
@@ -104,6 +106,8 @@ if s:t_Co >= 256
|
||||
hi! link ErrorMsg Error
|
||||
hi! link Tag Special
|
||||
hi! link Operator Statement
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi Folded ctermfg=18 ctermbg=253 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=253 cterm=NONE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Ralph Amissah <ralph@amissah.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 11:03:10 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:52:25 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,10 +13,10 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'slate'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#ff0000', '#5f8700', '#ffff00', '#87d7ff', '#d7d787', '#ffd7af', '#666666', '#333333', '#ffafaf', '#00875f', '#ffd700', '#5f87d7', '#afaf87', '#ff8787', '#ffffff']
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
endif
|
||||
hi! link Terminal Normal
|
||||
hi! link LineNrAbove LineNr
|
||||
@@ -24,6 +24,8 @@ hi! link LineNrBelow LineNr
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#ffffff guibg=#262626 gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#5f87d7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi StatusLine guifg=#000000 guibg=#afaf87 gui=NONE cterm=NONE
|
||||
@@ -53,18 +55,18 @@ hi Visual guifg=#d7d787 guibg=#5f8700 gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#d7d787 guibg=#5f8700 gui=NONE cterm=NONE
|
||||
hi LineNr guifg=#666666 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#5f87d7 guibg=NONE gui=underline cterm=underline
|
||||
hi Error guifg=#ff0000 guibg=#ffffff gui=reverse cterm=reverse
|
||||
hi ErrorMsg guifg=#ff0000 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi ModeMsg guifg=#262626 guibg=#ffd700 gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#ff8787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi MoreMsg guifg=#00875f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Question guifg=#ffd700 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#ff0000 guibg=#ffff00 gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=#000000 guibg=#ffd700 gui=NONE cterm=NONE
|
||||
hi Search guifg=#000000 guibg=#d7875f gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#000000 guibg=#00ff00 gui=NONE cterm=NONE
|
||||
hi Todo guifg=#ff0000 guibg=#ffff00 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#262626 guibg=#d7d787 gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#5f87d7 guibg=NONE gui=underline cterm=underline
|
||||
hi Cursor guifg=#333333 guibg=#d7d787 gui=NONE cterm=NONE
|
||||
hi lCursor guifg=#262626 guibg=#ffafaf gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=#ff0000 guibg=NONE guisp=#ff0000 gui=undercurl cterm=underline
|
||||
@@ -99,6 +101,8 @@ if s:t_Co >= 256
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=231 ctermbg=235 cterm=NONE
|
||||
hi EndOfBuffer ctermfg=68 ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=16 ctermbg=144 cterm=NONE
|
||||
@@ -128,18 +132,18 @@ if s:t_Co >= 256
|
||||
hi SignColumn ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi VisualNOS ctermfg=186 ctermbg=64 cterm=NONE
|
||||
hi LineNr ctermfg=241 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=68 ctermbg=NONE cterm=underline
|
||||
hi Error ctermfg=196 ctermbg=231 cterm=reverse
|
||||
hi ErrorMsg ctermfg=196 ctermbg=16 cterm=reverse
|
||||
hi ModeMsg ctermfg=235 ctermbg=220 cterm=NONE
|
||||
hi WarningMsg ctermfg=210 ctermbg=NONE cterm=NONE
|
||||
hi MoreMsg ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=220 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=196 ctermbg=226 cterm=NONE
|
||||
hi MatchParen ctermfg=16 ctermbg=220 cterm=NONE
|
||||
hi Search ctermfg=16 ctermbg=173 cterm=NONE
|
||||
hi IncSearch ctermfg=16 ctermbg=46 cterm=NONE
|
||||
hi Todo ctermfg=196 ctermbg=226 cterm=NONE
|
||||
hi WildMenu ctermfg=235 ctermbg=186 cterm=NONE
|
||||
hi Underlined ctermfg=68 ctermbg=NONE cterm=underline
|
||||
hi SpellBad ctermfg=196 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=226 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=217 ctermbg=NONE cterm=underline
|
||||
@@ -169,12 +173,12 @@ if s:t_Co >= 256
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
hi Normal ctermfg=white ctermbg=black cterm=NONE
|
||||
hi EndOfBuffer ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi StatusLineNC ctermfg=darkgrey ctermbg=grey cterm=NONE
|
||||
hi StatusLineTerm ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi StatusLineTermNC ctermfg=darkgrey ctermbg=grey cterm=NONE
|
||||
hi Normal ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi EndOfBuffer ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi StatusLine ctermfg=white ctermbg=black cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi StatusLineTerm ctermfg=white ctermbg=black cterm=bold,reverse
|
||||
hi StatusLineTermNC ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi VertSplit ctermfg=darkgrey ctermbg=grey cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=darkgrey cterm=NONE
|
||||
@@ -198,38 +202,38 @@ if s:t_Co >= 16
|
||||
hi SignColumn ctermfg=NONE ctermbg=black cterm=NONE
|
||||
hi VisualNOS ctermfg=darkmagenta ctermbg=darkgreen cterm=NONE
|
||||
hi LineNr ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=blue ctermbg=NONE cterm=underline
|
||||
hi Error ctermfg=darkred ctermbg=white cterm=reverse
|
||||
hi ErrorMsg ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi ModeMsg ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi WarningMsg ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi MoreMsg ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi MatchParen ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi Search ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi Todo ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi WildMenu ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Underlined ctermfg=blue ctermbg=NONE cterm=underline
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=darkyellow ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=red ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=darkcyan ctermbg=NONE cterm=underline
|
||||
hi Comment ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=blue ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=red ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=blue ctermbg=NONE cterm=bold
|
||||
hi Operator ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=yellow ctermbg=NONE cterm=bold
|
||||
hi Structure ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Directory ctermfg=green ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Directory ctermfg=darkgreen ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Title ctermfg=yellow ctermbg=NONE cterm=bold
|
||||
hi Title ctermfg=darkyellow ctermbg=NONE cterm=bold
|
||||
hi DiffAdd ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=grey cterm=NONE
|
||||
@@ -274,27 +278,28 @@ if s:t_Co >= 8
|
||||
hi WarningMsg ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi MatchParen ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Search ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi Todo ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi WildMenu ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Underlined ctermfg=blue ctermbg=NONE cterm=underline
|
||||
hi SpellBad ctermfg=darkred ctermbg=darkyellow cterm=reverse
|
||||
hi SpellCap ctermfg=darkyellow ctermbg=NONE cterm=reverse
|
||||
hi SpellLocal ctermfg=darkmagenta ctermbg=darkyellow cterm=reverse
|
||||
hi SpellRare ctermfg=darkcyan ctermbg=NONE cterm=reverse
|
||||
hi Comment ctermfg=grey ctermbg=NONE cterm=bold
|
||||
hi String ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=darkred ctermbg=NONE cterm=bold
|
||||
hi PreProc ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=darkred ctermbg=NONE cterm=bold
|
||||
hi Comment ctermfg=darkgray ctermbg=NONE cterm=bold
|
||||
hi Operator ctermfg=darkred ctermbg=NONE cterm=bold
|
||||
hi PreProc ctermfg=darkred ctermbg=NONE cterm=bold
|
||||
hi Structure ctermfg=darkgreen ctermbg=NONE cterm=bold
|
||||
hi Function ctermfg=darkyellow ctermbg=NONE cterm=bold
|
||||
hi Type ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Operator ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=darkyellow ctermbg=NONE cterm=bold
|
||||
hi Structure ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Directory ctermfg=darkgreen ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -376,29 +381,45 @@ if s:t_Co >= 0
|
||||
endif
|
||||
|
||||
" Background: dark
|
||||
" Color: foreground #FFFFFF 231 white
|
||||
" Color: background #262626 235 black
|
||||
" Color: color00 #000000 16 black
|
||||
" Color: color08 #333333 236 darkgrey
|
||||
" Color: color01 #FF0000 196 darkred
|
||||
" Color: color09 #FFAFAF 217 red
|
||||
" Color: color02 #5F8700 64 darkgreen
|
||||
" Color: color10 #00875F 29 green
|
||||
" Color: color03 #ffff00 226 darkyellow
|
||||
" Color: color11 #FFD700 220 yellow
|
||||
" Color: color04 #87d7FF 117 darkblue
|
||||
" Color: color12 #5F87D7 68 blue
|
||||
" Color: color05 #d7d787 186 darkmagenta
|
||||
" Color: color13 #AFAF87 144 magenta
|
||||
" Color: color06 #FFD7AF 223 darkcyan
|
||||
" Color: color14 #FF8787 210 cyan
|
||||
" Color: color07 #666666 241 grey
|
||||
" Color: color15 #FFFFFF 231 white
|
||||
" Color: color16 #D7875F 173 darkmagenta
|
||||
" Color: color17 #00FF00 46 darkgreen
|
||||
" Color: Pmenu #4A4A4A 239 darkgrey
|
||||
" Term colors: color00 color01 color02 color03 color04 color05 color06 color07
|
||||
" Term colors: color08 color09 color10 color11 color12 color13 color14 color15
|
||||
" Color: x_black #000000 16 black
|
||||
" Color: x_darkred #cd0000 160 darkred
|
||||
" Color: x_darkgreen #00cd00 40 darkgreen
|
||||
" Color: x_darkyellow #cdcd00 184 darkyellow
|
||||
" Color: x_darkblue #0000ee 21 darkblue
|
||||
" Color: x_darkmagenta #cd00cd 164 darkmagenta
|
||||
" Color: x_darkcyan #00cdcd 44 darkcyan
|
||||
" Color: x_gray #e5e5e5 254 gray
|
||||
" Color: x_darkgray #7f7f7f 244 darkgray
|
||||
" Color: x_red #ff0000 196 red
|
||||
" Color: x_green #00ff00 46 green
|
||||
" Color: x_yellow #ffff00 226 yellow
|
||||
" Color: x_blue #5c5cff 63 blue
|
||||
" Color: x_magenta #ff00ff 201 magenta
|
||||
" Color: x_cyan #00ffff 51 cyan
|
||||
" Color: x_white #ffffff 231 white
|
||||
" Color: foreground #FFFFFF 231 white
|
||||
" Color: background #262626 235 black
|
||||
" Color: color00 #000000 16 black
|
||||
" Color: color08 #333333 236 darkgrey
|
||||
" Color: color01 #FF0000 196 darkred
|
||||
" Color: color09 #FFAFAF 217 red
|
||||
" Color: color02 #5F8700 64 darkgreen
|
||||
" Color: color10 #00875F 29 green
|
||||
" Color: color03 #ffff00 226 darkyellow
|
||||
" Color: color11 #FFD700 220 yellow
|
||||
" Color: color04 #87d7FF 117 darkblue
|
||||
" Color: color12 #5F87D7 68 blue
|
||||
" Color: color05 #d7d787 186 darkmagenta
|
||||
" Color: color13 #AFAF87 144 magenta
|
||||
" Color: color06 #FFD7AF 223 darkcyan
|
||||
" Color: color14 #FF8787 210 cyan
|
||||
" Color: color07 #666666 241 grey
|
||||
" Color: color15 #FFFFFF 231 white
|
||||
" Color: color16 #D7875F 173 darkmagenta
|
||||
" Color: color17 #00FF00 46 darkgreen
|
||||
" Color: Pmenu #4A4A4A 239 darkgrey
|
||||
" Term colors: x_black x_darkred x_darkgreen x_darkyellow x_darkblue x_darkmagenta x_darkcyan x_gray
|
||||
" Term colors: x_darkgray x_red x_green x_yellow x_blue x_magenta x_cyan x_white
|
||||
" Color: bgDiffA #5F875F 65 darkgreen
|
||||
" Color: bgDiffC #5F87AF 67 blue
|
||||
" Color: bgDiffD #AF5FAF 133 magenta
|
||||
|
||||
@@ -6,10 +6,23 @@ vim9script
|
||||
def Test_check_colors()
|
||||
const savedview = winsaveview()
|
||||
cursor(1, 1)
|
||||
var err = {}
|
||||
|
||||
# err is
|
||||
# {
|
||||
# colors_name: "message",
|
||||
# init: "message",
|
||||
# background: "message",
|
||||
# ....etc
|
||||
# highlight: {
|
||||
# 'Normal': "Missing ...",
|
||||
# 'Conceal': "Missing ..."
|
||||
# ....etc
|
||||
# }
|
||||
# }
|
||||
var err: dict<any> = {}
|
||||
|
||||
# 1) Check g:colors_name is existing
|
||||
if !search('\<\%(g:\)\?colors_name\>', 'cnW')
|
||||
if search('\<\%(g:\)\?colors_name\>', 'cnW') == 0
|
||||
err['colors_name'] = 'g:colors_name not set'
|
||||
else
|
||||
err['colors_name'] = 'OK'
|
||||
@@ -180,11 +193,12 @@ def Test_check_colors()
|
||||
Result(err)
|
||||
enddef
|
||||
|
||||
def Result(err: any)
|
||||
|
||||
def Result(err: dict<any>)
|
||||
var do_groups: bool = v:false
|
||||
echohl Title | echomsg "---------------" | echohl Normal
|
||||
for key in sort(keys(err))
|
||||
if key is 'highlight'
|
||||
if key == 'highlight'
|
||||
do_groups = !empty(err[key])
|
||||
continue
|
||||
else
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Thorsten Maerz <info@netztorte.de>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 11:04:48 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:53:21 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=dark
|
||||
hi clear
|
||||
let g:colors_name = 'torte'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5', '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff']
|
||||
@@ -26,6 +26,8 @@ hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#cccccc guibg=#000000 gui=NONE cterm=NONE
|
||||
hi Comment guifg=#80a0ff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#ffa0a0 guibg=NONE gui=NONE cterm=NONE
|
||||
@@ -97,6 +99,8 @@ if s:t_Co >= 256
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=251 ctermbg=16 cterm=NONE
|
||||
hi Comment ctermfg=111 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=217 ctermbg=NONE cterm=NONE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Original maintainer Ron Aaron <ron@ronware.org>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Jun 12 11:05:43 2022
|
||||
" Last Updated: Fri 02 Sep 2022 09:54:15 MSK
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -13,7 +13,7 @@ set background=light
|
||||
hi clear
|
||||
let g:colors_name = 'zellner'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#ffffff', '#a52a2a', '#ff00ff', '#a020f0', '#0000ff', '#0000ff', '#ff00ff', '#a9a9a9', '#ff0000', '#a52a2a', '#ff00ff', '#a020f0', '#0000ff', '#0000ff', '#ff00ff', '#000000']
|
||||
@@ -24,6 +24,8 @@ hi! link LineNrBelow LineNr
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal guifg=#000000 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi Folded guifg=#00008b guibg=#d3d3d3 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#e5e5e5 gui=NONE cterm=NONE
|
||||
@@ -95,6 +97,8 @@ if s:t_Co >= 256
|
||||
hi! link CurSearch Search
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi Normal ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi Folded ctermfg=18 ctermbg=252 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
|
||||
@@ -1,54 +1,48 @@
|
||||
" Vim compiler file
|
||||
" Compiler: ConTeXt typesetting engine
|
||||
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
" Last Change: 2016 Oct 21
|
||||
vim9script
|
||||
|
||||
if exists("current_compiler")
|
||||
# Language: ConTeXt typesetting engine
|
||||
# Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
# Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
||||
# Latest Revision: 2022 Aug 12
|
||||
|
||||
if exists("g:current_compiler")
|
||||
finish
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
import autoload '../autoload/context.vim'
|
||||
|
||||
if exists(":CompilerSet") != 2 # Older Vim always used :setlocal
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
" If makefile exists and we are not asked to ignore it, we use standard make
|
||||
" (do not redefine makeprg)
|
||||
g:current_compiler = 'context'
|
||||
|
||||
if get(b:, 'context_ignore_makefile', get(g:, 'context_ignore_makefile', 0)) ||
|
||||
\ (!filereadable('Makefile') && !filereadable('makefile'))
|
||||
let current_compiler = 'context'
|
||||
" The following assumes that the current working directory is set to the
|
||||
" directory of the file to be typeset
|
||||
let &l:makeprg = get(b:, 'context_mtxrun', get(g:, 'context_mtxrun', 'mtxrun'))
|
||||
\ . ' --script context --autogenerate --nonstopmode --synctex='
|
||||
\ . (get(b:, 'context_synctex', get(g:, 'context_synctex', 0)) ? '1' : '0')
|
||||
\ . ' ' . get(b:, 'context_extra_options', get(g:, 'context_extra_options', ''))
|
||||
\ . ' ' . shellescape(expand('%:p:t'))
|
||||
(!filereadable('Makefile') && !filereadable('makefile'))
|
||||
&l:makeprg = join(context.ConTeXtCmd(shellescape(expand('%:p:t'))), ' ')
|
||||
else
|
||||
let current_compiler = 'make'
|
||||
g:current_compiler = 'make'
|
||||
endif
|
||||
|
||||
let b:context_errorformat = ''
|
||||
\ . '%-Popen source%.%#> %f,'
|
||||
\ . '%-Qclose source%.%#> %f,'
|
||||
\ . "%-Popen source%.%#name '%f',"
|
||||
\ . "%-Qclose source%.%#name '%f',"
|
||||
\ . '%Etex %trror%.%#mp error on line %l in file %f:%.%#,'
|
||||
\ . 'tex %trror%.%#error on line %l in file %f: %m,'
|
||||
\ . '%Elua %trror%.%#error on line %l in file %f:,'
|
||||
\ . '%+Emetapost %#> error: %#,'
|
||||
\ . '! error: %#%m,'
|
||||
\ . '%-C %#,'
|
||||
\ . '%C! %m,'
|
||||
\ . '%Z[ctxlua]%m,'
|
||||
\ . '%+C<*> %.%#,'
|
||||
\ . '%-C%.%#,'
|
||||
\ . '%Z...%m,'
|
||||
\ . '%-Zno-error,'
|
||||
\ . '%-G%.%#' " Skip remaining lines
|
||||
const context_errorformat = join([
|
||||
"%-Popen source%.%#> %f",
|
||||
"%-Qclose source%.%#> %f",
|
||||
"%-Popen source%.%#name '%f'",
|
||||
"%-Qclose source%.%#name '%f'",
|
||||
"tex %trror%.%#error on line %l in file %f: %m",
|
||||
"%Elua %trror%.%#error on line %l in file %f:",
|
||||
"%+Emetapost %#> error: %#",
|
||||
"%Emetafun%.%#error: %m",
|
||||
"! error: %#%m",
|
||||
"%-C %#",
|
||||
"%C! %m",
|
||||
"%Z[ctxlua]%m",
|
||||
"%+C<*> %.%#",
|
||||
"%-C%.%#",
|
||||
"%Z...%m",
|
||||
"%-Zno-error",
|
||||
"%-G%.%#"], ",")
|
||||
|
||||
execute 'CompilerSet errorformat=' . escape(b:context_errorformat, ' ')
|
||||
execute 'CompilerSet errorformat=' .. escape(context_errorformat, ' ')
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
# vim: sw=2 fdm=marker
|
||||
|
||||
31
runtime/compiler/hare.vim
Normal file
31
runtime/compiler/hare.vim
Normal file
@@ -0,0 +1,31 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Hare Compiler
|
||||
" Maintainer: Amelia Clarke <me@rsaihe.dev>
|
||||
" Last Change: 2022-09-21
|
||||
|
||||
if exists("g:current_compiler")
|
||||
finish
|
||||
endif
|
||||
let g:current_compiler = "hare"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if exists(':CompilerSet') != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
if filereadable("Makefile") || filereadable("makefile")
|
||||
CompilerSet makeprg=make
|
||||
else
|
||||
CompilerSet makeprg=hare\ build
|
||||
endif
|
||||
|
||||
CompilerSet errorformat=
|
||||
\Error\ %f:%l:%c:\ %m,
|
||||
\Syntax\ error:\ %.%#\ at\ %f:%l:%c\\,\ %m,
|
||||
\%-G%.%#
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: tabstop=2 shiftwidth=2 expandtab
|
||||
14
runtime/compiler/raco.vim
Normal file
14
runtime/compiler/raco.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim compiler file
|
||||
" Compiler: raco (Racket command-line tools)
|
||||
" Maintainer: D. Ben Knoble <ben.knoble+github@gmail.com>
|
||||
" URL: https://github.com/benknoble/vim-racket
|
||||
" Last Change: 2022 Aug 12
|
||||
|
||||
let current_compiler = 'raco'
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet makeprg=raco
|
||||
CompilerSet errorformat=%f:%l:%c:%m
|
||||
14
runtime/compiler/racomake.vim
Normal file
14
runtime/compiler/racomake.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim compiler file
|
||||
" Compiler: raco make (Racket command-line tools)
|
||||
" Maintainer: D. Ben Knoble <ben.knoble+github@gmail.com>
|
||||
" URL: https://github.com/benknoble/vim-racket
|
||||
" Last Change: 2022 Aug 12
|
||||
|
||||
let current_compiler = 'racomake'
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet makeprg=raco\ make\ --\ %
|
||||
CompilerSet errorformat=%f:%l:%c:%m
|
||||
14
runtime/compiler/racosetup.vim
Normal file
14
runtime/compiler/racosetup.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim compiler file
|
||||
" Compiler: raco setup (Racket command-line tools)
|
||||
" Maintainer: D. Ben Knoble <ben.knoble+github@gmail.com>
|
||||
" URL: https://github.com/benknoble/vim-racket
|
||||
" Last Change: 2022 Aug 12
|
||||
|
||||
let current_compiler = 'racosetup'
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet makeprg=raco\ setup
|
||||
CompilerSet errorformat=%f:%l:%c:%m
|
||||
14
runtime/compiler/racotest.vim
Normal file
14
runtime/compiler/racotest.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim compiler file
|
||||
" Compiler: raco test (Racket command-line tools)
|
||||
" Maintainer: D. Ben Knoble <ben.knoble+github@gmail.com>
|
||||
" URL: https://github.com/benknoble/vim-racket
|
||||
" Last Change: 2022 Aug 12
|
||||
|
||||
let current_compiler = 'racotest'
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet makeprg=raco\ test\ %
|
||||
CompilerSet errorformat=location:%f:%l:%c
|
||||
@@ -7,6 +7,31 @@
|
||||
aunmenu *
|
||||
tlunmenu *
|
||||
|
||||
if exists('#SetupLazyloadMenus')
|
||||
au! SetupLazyloadMenus
|
||||
augroup! SetupLazyloadMenus
|
||||
endif
|
||||
|
||||
if exists('#buffer_list')
|
||||
au! buffer_list
|
||||
augroup! buffer_list
|
||||
endif
|
||||
|
||||
if exists('#LoadBufferMenu')
|
||||
au! LoadBufferMenu
|
||||
augroup! LoadBufferMenu
|
||||
endif
|
||||
|
||||
if exists('#spellmenu')
|
||||
au! spellmenu
|
||||
augroup! spellmenu
|
||||
endif
|
||||
|
||||
if exists('#SpellPopupMenu')
|
||||
au! SpellPopupMenu
|
||||
augroup! SpellPopupMenu
|
||||
endif
|
||||
|
||||
unlet! g:did_install_default_menus
|
||||
unlet! g:did_install_syntax_menu
|
||||
|
||||
|
||||
@@ -31,6 +31,8 @@ DOCS = \
|
||||
filetype.txt \
|
||||
fold.txt \
|
||||
ft_ada.txt \
|
||||
ft_context.txt \
|
||||
ft_mp.txt \
|
||||
ft_ps1.txt \
|
||||
ft_raku.txt \
|
||||
ft_rust.txt \
|
||||
@@ -113,6 +115,7 @@ DOCS = \
|
||||
todo.txt \
|
||||
uganda.txt \
|
||||
undo.txt \
|
||||
userfunc.txt \
|
||||
usr_01.txt \
|
||||
usr_02.txt \
|
||||
usr_03.txt \
|
||||
@@ -180,6 +183,8 @@ HTMLS = \
|
||||
filetype.html \
|
||||
fold.html \
|
||||
ft_ada.html \
|
||||
ft_context.html \
|
||||
ft_mp.html \
|
||||
ft_ps1.html \
|
||||
ft_raku.html \
|
||||
ft_rust.html \
|
||||
@@ -261,6 +266,7 @@ HTMLS = \
|
||||
todo.html \
|
||||
uganda.html \
|
||||
undo.html \
|
||||
userfunc.html \
|
||||
usr_01.html \
|
||||
usr_02.html \
|
||||
usr_03.html \
|
||||
|
||||
@@ -640,6 +640,8 @@ CmdwinLeave Before leaving the command-line window.
|
||||
|cmdwin-char|
|
||||
*ColorScheme*
|
||||
ColorScheme After loading a color scheme. |:colorscheme|
|
||||
Not triggered if the color scheme is not
|
||||
found.
|
||||
The pattern is matched against the
|
||||
colorscheme name. <afile> can be used for the
|
||||
name of the actual file where this option was
|
||||
@@ -1275,7 +1277,7 @@ User Never executed automatically. To be used for
|
||||
if exists('#User#MyEvent')
|
||||
doautocmd User MyEvent
|
||||
endif
|
||||
|
||||
<
|
||||
*SigUSR1*
|
||||
SigUSR1 After the SIGUSR1 signal has been detected.
|
||||
Could be used if other ways of notifying Vim
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*builtin.txt* For Vim version 9.0. Last change: 2022 Jun 27
|
||||
*builtin.txt* For Vim version 9.0. Last change: 2022 Sep 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -195,7 +195,7 @@ foldlevel({lnum}) Number fold level at {lnum}
|
||||
foldtext() String line displayed for closed fold
|
||||
foldtextresult({lnum}) String text for closed fold at {lnum}
|
||||
foreground() Number bring the Vim window to the foreground
|
||||
fullcommand({name}) String get full command from {name}
|
||||
fullcommand({name} [, {vim9}]) String get full command from {name}
|
||||
funcref({name} [, {arglist}] [, {dict}])
|
||||
Funcref reference to function {name}
|
||||
function({name} [, {arglist}] [, {dict}])
|
||||
@@ -253,6 +253,7 @@ getreg([{regname} [, 1 [, {list}]]])
|
||||
String or List contents of a register
|
||||
getreginfo([{regname}]) Dict information about a register
|
||||
getregtype([{regname}]) String type of a register
|
||||
getscriptinfo([{opts}]) List list of sourced scripts
|
||||
gettabinfo([{expr}]) List list of tab pages
|
||||
gettabvar({nr}, {varname} [, {def}])
|
||||
any variable {varname} in tab {nr} or {def}
|
||||
@@ -291,9 +292,11 @@ iconv({expr}, {from}, {to}) String convert encoding of {expr}
|
||||
indent({lnum}) Number indent of line {lnum}
|
||||
index({object}, {expr} [, {start} [, {ic}]])
|
||||
Number index in {object} where {expr} appears
|
||||
indexof({object}, {expr} [, {opts}]])
|
||||
Number index in {object} where {expr} is true
|
||||
input({prompt} [, {text} [, {completion}]])
|
||||
String get input from the user
|
||||
inputdialog({prompt} [, {text} [, {completion}]])
|
||||
inputdialog({prompt} [, {text} [, {cancelreturn}]])
|
||||
String like input() but in a GUI dialog
|
||||
inputlist({textlist}) Number let the user pick from a choice list
|
||||
inputrestore() Number restore typeahead
|
||||
@@ -322,6 +325,8 @@ js_encode({expr}) String encode JS style JSON
|
||||
json_decode({string}) any decode JSON
|
||||
json_encode({expr}) String encode JSON
|
||||
keys({dict}) List keys in {dict}
|
||||
keytrans({string}) String translate internal keycodes to a form
|
||||
that can be used by |:map|
|
||||
len({expr}) Number the length of {expr}
|
||||
libcall({lib}, {func}, {arg}) String call {func} in library {lib} with {arg}
|
||||
libcallnr({lib}, {func}, {arg}) Number idem, but return a Number
|
||||
@@ -468,7 +473,8 @@ remove({blob}, {idx} [, {end}]) Number/Blob
|
||||
remove bytes {idx}-{end} from {blob}
|
||||
remove({dict}, {key}) any remove entry {key} from {dict}
|
||||
rename({from}, {to}) Number rename (move) file from {from} to {to}
|
||||
repeat({expr}, {count}) String repeat {expr} {count} times
|
||||
repeat({expr}, {count}) List/Blob/String
|
||||
repeat {expr} {count} times
|
||||
resolve({filename}) String get filename a shortcut points to
|
||||
reverse({list}) List reverse {list} in-place
|
||||
round({expr}) Float round off {expr}
|
||||
@@ -502,6 +508,7 @@ setbufvar({buf}, {varname}, {val})
|
||||
setcellwidths({list}) none set character cell width overrides
|
||||
setcharpos({expr}, {list}) Number set the {expr} position to {list}
|
||||
setcharsearch({dict}) Dict set character search from {dict}
|
||||
setcmdline({str} [, {pos}]) Number set command-line
|
||||
setcmdpos({pos}) Number set cursor position in command-line
|
||||
setcursorcharpos({list}) Number move cursor to position in {list}
|
||||
setenv({name}, {val}) none set environment variable
|
||||
@@ -746,8 +753,6 @@ abs({expr}) *abs()*
|
||||
Can also be used as a |method|: >
|
||||
Compute()->abs()
|
||||
|
||||
< {only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
acos({expr}) *acos()*
|
||||
Return the arc cosine of {expr} measured in radians, as a
|
||||
@@ -763,8 +768,6 @@ acos({expr}) *acos()*
|
||||
Can also be used as a |method|: >
|
||||
Compute()->acos()
|
||||
|
||||
< {only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
add({object}, {expr}) *add()*
|
||||
Append the item {expr} to |List| or |Blob| {object}. Returns
|
||||
@@ -897,8 +900,6 @@ asin({expr}) *asin()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->asin()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
assert_ functions are documented here: |assert-functions-details|
|
||||
@@ -918,8 +919,6 @@ atan({expr}) *atan()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->atan()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
atan2({expr1}, {expr2}) *atan2()*
|
||||
@@ -936,8 +935,6 @@ atan2({expr1}, {expr2}) *atan2()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->atan2(1)
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
autocmd_add({acmds}) *autocmd_add()*
|
||||
@@ -1149,7 +1146,7 @@ blob2list({blob}) *blob2list()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBlob()->blob2list()
|
||||
|
||||
<
|
||||
*browse()*
|
||||
browse({save}, {title}, {initdir}, {default})
|
||||
Put up a file requester. This only works when "has("browse")"
|
||||
@@ -1176,7 +1173,8 @@ browsedir({title}, {initdir})
|
||||
browsing is not possible, an empty string is returned.
|
||||
|
||||
bufadd({name}) *bufadd()*
|
||||
Add a buffer to the buffer list with String {name}.
|
||||
Add a buffer to the buffer list with name {name} (must be a
|
||||
String).
|
||||
If a buffer for file {name} already exists, return that buffer
|
||||
number. Otherwise return the buffer number of the newly
|
||||
created buffer. When {name} is an empty string then a new
|
||||
@@ -1229,7 +1227,8 @@ bufload({buf}) *bufload()*
|
||||
Ensure the buffer {buf} is loaded. When the buffer name
|
||||
refers to an existing file then the file is read. Otherwise
|
||||
the buffer will be empty. If the buffer was already loaded
|
||||
then there is no change.
|
||||
then there is no change. If the buffer is not related to a
|
||||
file the no file is read (e.g., when 'buftype' is "nofile").
|
||||
If there is an existing swap file for the file of the buffer,
|
||||
there will be no dialog, the buffer will be loaded anyway.
|
||||
The {buf} argument is used like with |bufexists()|.
|
||||
@@ -1419,8 +1418,6 @@ ceil({expr}) *ceil()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->ceil()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
ch_ functions are documented here: |channel-functions-details|
|
||||
@@ -1665,7 +1662,7 @@ complete_info([{what}]) *complete_info()*
|
||||
typed text only, or the last completion after
|
||||
no item is selected when using the <Up> or
|
||||
<Down> keys)
|
||||
inserted Inserted string. [NOT IMPLEMENT YET]
|
||||
inserted Inserted string. [NOT IMPLEMENTED YET]
|
||||
|
||||
*complete_info_mode*
|
||||
mode values are:
|
||||
@@ -1792,8 +1789,6 @@ cos({expr}) *cos()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->cos()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
cosh({expr}) *cosh()*
|
||||
@@ -1809,8 +1804,6 @@ cosh({expr}) *cosh()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->cosh()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
count({comp}, {expr} [, {ic} [, {start}]]) *count()*
|
||||
@@ -2316,7 +2309,9 @@ exists({expr}) The result is a Number, which is |TRUE| if {expr} is defined,
|
||||
To check for a supported command
|
||||
always check the return value to be 2.
|
||||
:2match The |:2match| command.
|
||||
:3match The |:3match| command.
|
||||
:3match The |:3match| command (but you
|
||||
probably should not use it, it is
|
||||
reserved for internal usage)
|
||||
#event autocommand defined for this event
|
||||
#event#pattern autocommand defined for this event and
|
||||
pattern (the pattern is taken
|
||||
@@ -2394,8 +2389,6 @@ exp({expr}) *exp()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->exp()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
expand({string} [, {nosuf} [, {list}]]) *expand()*
|
||||
@@ -2729,8 +2722,6 @@ finddir({name} [, {path} [, {count}]]) *finddir()*
|
||||
Returns an empty string if the directory is not found.
|
||||
|
||||
This is quite similar to the ex-command `:find`.
|
||||
{only available when compiled with the |+file_in_path|
|
||||
feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetName()->finddir()
|
||||
@@ -2798,8 +2789,6 @@ float2nr({expr}) *float2nr()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->float2nr()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
floor({expr}) *floor()*
|
||||
@@ -2817,8 +2806,6 @@ floor({expr}) *floor()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->floor()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
fmod({expr1}, {expr2}) *fmod()*
|
||||
@@ -2839,8 +2826,6 @@ fmod({expr1}, {expr2}) *fmod()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->fmod(1.22)
|
||||
<
|
||||
{only available when compiled with |+float| feature}
|
||||
|
||||
|
||||
fnameescape({string}) *fnameescape()*
|
||||
@@ -2872,6 +2857,10 @@ fnamemodify({fname}, {mods}) *fnamemodify()*
|
||||
/home/user/vim/vim/src
|
||||
< If {mods} is empty or an unsupported modifier is used then
|
||||
{fname} is returned.
|
||||
When {fname} is empty then with {mods} ":h" returns ".", so
|
||||
that `:cd` can be used with it. This is different from
|
||||
expand('%:h') without a buffer name, which returns an empty
|
||||
string.
|
||||
Note: Environment variables don't work in {fname}, use
|
||||
|expand()| first then.
|
||||
|
||||
@@ -2954,14 +2943,20 @@ foreground() Move the Vim window to the foreground. Useful when sent from
|
||||
{only in the Win32, Motif and GTK GUI versions and the
|
||||
Win32 console version}
|
||||
|
||||
fullcommand({name}) *fullcommand()*
|
||||
fullcommand({name} [, {vim9}]) *fullcommand()*
|
||||
Get the full command name from a short abbreviated command
|
||||
name; see |20.2| for details on command abbreviations.
|
||||
|
||||
The string argument {name} may start with a `:` and can
|
||||
include a [range], these are skipped and not returned.
|
||||
Returns an empty string if a command doesn't exist or if it's
|
||||
ambiguous (for user-defined commands).
|
||||
Returns an empty string if a command doesn't exist, if it's
|
||||
ambiguous (for user-defined commands) or cannot be shortened
|
||||
this way. |vim9-no-shorten|
|
||||
|
||||
Without the {vim9} argument uses the current script version.
|
||||
If {vim9} is present and FALSE then legacy script rules are
|
||||
used. When {vim9} is present and TRUE then Vim9 rules are
|
||||
used, e.g. "en" is not a short form of "endif".
|
||||
|
||||
For example `fullcommand('s')`, `fullcommand('sub')`,
|
||||
`fullcommand(':%substitute')` all return "substitute".
|
||||
@@ -3028,10 +3023,10 @@ function({name} [, {arglist}] [, {dict}])
|
||||
Funcref. The extra arguments are appended to the list of
|
||||
arguments. Example: >
|
||||
func Callback(arg1, arg2, name)
|
||||
...
|
||||
"...
|
||||
let Func = function('Callback', ['one'])
|
||||
let Func2 = function(Func, ['two'])
|
||||
...
|
||||
"...
|
||||
call Func2('name')
|
||||
< Invokes the function as with: >
|
||||
call Callback('one', 'two', 'name')
|
||||
@@ -3041,22 +3036,23 @@ function({name} [, {arglist}] [, {dict}])
|
||||
function Callback() dict
|
||||
echo "called for " .. self.name
|
||||
endfunction
|
||||
...
|
||||
"...
|
||||
let context = {"name": "example"}
|
||||
let Func = function('Callback', context)
|
||||
...
|
||||
"...
|
||||
call Func() " will echo: called for example
|
||||
< The use of function() is not needed when there are no extra
|
||||
arguments, these two are equivalent: >
|
||||
arguments, these two are equivalent, if Callback() is defined
|
||||
as context.Callback(): >
|
||||
let Func = function('Callback', context)
|
||||
let Func = context.Callback
|
||||
|
||||
< The argument list and the Dictionary can be combined: >
|
||||
function Callback(arg1, count) dict
|
||||
...
|
||||
"...
|
||||
let context = {"name": "example"}
|
||||
let Func = function('Callback', ['one'], context)
|
||||
...
|
||||
"...
|
||||
call Func(500)
|
||||
< Invokes the function as with: >
|
||||
call context.Callback('one', 500)
|
||||
@@ -3416,7 +3412,8 @@ getcmdcompltype() *getcmdcompltype()*
|
||||
Only works when the command line is being edited, thus
|
||||
requires use of |c_CTRL-\_e| or |c_CTRL-R_=|.
|
||||
See |:command-completion| for the return string.
|
||||
Also see |getcmdtype()|, |setcmdpos()| and |getcmdline()|.
|
||||
Also see |getcmdtype()|, |setcmdpos()|, |getcmdline()| and
|
||||
|setcmdline()|.
|
||||
Returns an empty string when completion is not defined.
|
||||
|
||||
getcmdline() *getcmdline()*
|
||||
@@ -3425,7 +3422,8 @@ getcmdline() *getcmdline()*
|
||||
|c_CTRL-R_=|.
|
||||
Example: >
|
||||
:cmap <F7> <C-\>eescape(getcmdline(), ' \')<CR>
|
||||
< Also see |getcmdtype()|, |getcmdpos()| and |setcmdpos()|.
|
||||
< Also see |getcmdtype()|, |getcmdpos()|, |setcmdpos()| and
|
||||
|setcmdline()|.
|
||||
Returns an empty string when entering a password or using
|
||||
|inputsecret()|.
|
||||
|
||||
@@ -3435,7 +3433,8 @@ getcmdpos() *getcmdpos()*
|
||||
Only works when editing the command line, thus requires use of
|
||||
|c_CTRL-\_e| or |c_CTRL-R_=| or an expression mapping.
|
||||
Returns 0 otherwise.
|
||||
Also see |getcmdtype()|, |setcmdpos()| and |getcmdline()|.
|
||||
Also see |getcmdtype()|, |setcmdpos()|, |getcmdline()| and
|
||||
|setcmdline()|.
|
||||
|
||||
getcmdscreenpos() *getcmdscreenpos()*
|
||||
Return the screen position of the cursor in the command line
|
||||
@@ -3444,7 +3443,8 @@ getcmdscreenpos() *getcmdscreenpos()*
|
||||
Only works when editing the command line, thus requires use of
|
||||
|c_CTRL-\_e| or |c_CTRL-R_=| or an expression mapping.
|
||||
Returns 0 otherwise.
|
||||
Also see |getcmdpos()|, |setcmdpos()|.
|
||||
Also see |getcmdpos()|, |setcmdpos()|, |getcmdline()| and
|
||||
|setcmdline()|.
|
||||
|
||||
getcmdtype() *getcmdtype()*
|
||||
Return the current command-line type. Possible return values
|
||||
@@ -4080,6 +4080,47 @@ getregtype([{regname}]) *getregtype()*
|
||||
Can also be used as a |method|: >
|
||||
GetRegname()->getregtype()
|
||||
|
||||
getscriptinfo([{opts}) *getscriptinfo()*
|
||||
Returns a |List| with information about all the sourced Vim
|
||||
scripts in the order they were sourced, like what
|
||||
`:scriptnames` shows.
|
||||
|
||||
The optional Dict argument {opts} supports the following
|
||||
optional items:
|
||||
name Script name match pattern. If specified,
|
||||
and "sid" is not specified, information about
|
||||
scripts with name that match the pattern
|
||||
"name" are returned.
|
||||
sid Script ID |<SID>|. If specified, only
|
||||
information about the script with ID "sid" is
|
||||
returned and "name" is ignored.
|
||||
|
||||
Each item in the returned List is a |Dict| with the following
|
||||
items:
|
||||
autoload Set to TRUE for a script that was used with
|
||||
`import autoload` but was not actually sourced
|
||||
yet (see |import-autoload|).
|
||||
functions List of script-local function names defined in
|
||||
the script. Present only when a particular
|
||||
script is specified using the "sid" item in
|
||||
{opts}.
|
||||
name Vim script file name.
|
||||
sid Script ID |<SID>|.
|
||||
sourced Script ID of the actually sourced script that
|
||||
this script name links to, if any, otherwise
|
||||
zero
|
||||
variables A dictionary with the script-local variables.
|
||||
Present only when the a particular script is
|
||||
specified using the "sid" item in {opts}.
|
||||
Note that this is a copy, the value of
|
||||
script-local variables cannot be changed using
|
||||
this dictionary.
|
||||
version Vimscript version (|scriptversion|)
|
||||
|
||||
Examples: >
|
||||
:echo getscriptinfo({'name': 'myscript'})
|
||||
:echo getscriptinfo({'sid': 15}).variables
|
||||
<
|
||||
gettabinfo([{tabnr}]) *gettabinfo()*
|
||||
If {tabnr} is not specified, then information about all the
|
||||
tab pages is returned as a |List|. Each List item is a
|
||||
@@ -4391,8 +4432,11 @@ has({feature} [, {check}])
|
||||
|
||||
has_key({dict}, {key}) *has_key()*
|
||||
The result is a Number, which is TRUE if |Dictionary| {dict}
|
||||
has an entry with key {key}. FALSE otherwise. The {key}
|
||||
argument is a string.
|
||||
has an entry with key {key}. FALSE otherwise.
|
||||
The {key} argument is a string. In |Vim9| script a number is
|
||||
also accepted (and converted to a string) but no other types.
|
||||
In legacy script the usual automatic conversion to string is
|
||||
done.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
mydict->has_key(key)
|
||||
@@ -4724,19 +4768,25 @@ indent({lnum}) The result is a Number, which is indent of line {lnum} in the
|
||||
GetLnum()->indent()
|
||||
|
||||
index({object}, {expr} [, {start} [, {ic}]]) *index()*
|
||||
Find {expr} in {object} and return its index. See
|
||||
|indexof()| for using a lambda to select the item.
|
||||
|
||||
If {object} is a |List| return the lowest index where the item
|
||||
has a value equal to {expr}. There is no automatic
|
||||
conversion, so the String "4" is different from the Number 4.
|
||||
And the number 4 is different from the Float 4.0. The value
|
||||
of 'ignorecase' is not used here, case always matters.
|
||||
of 'ignorecase' is not used here, case matters as indicated by
|
||||
the {ic} argument.
|
||||
|
||||
If {object} is |Blob| return the lowest index where the byte
|
||||
value is equal to {expr}.
|
||||
|
||||
If {start} is given then start looking at the item with index
|
||||
{start} (may be negative for an item relative to the end).
|
||||
|
||||
When {ic} is given and it is |TRUE|, ignore case. Otherwise
|
||||
case must match.
|
||||
|
||||
-1 is returned when {expr} is not found in {object}.
|
||||
Example: >
|
||||
:let idx = index(words, "the")
|
||||
@@ -4745,6 +4795,47 @@ index({object}, {expr} [, {start} [, {ic}]]) *index()*
|
||||
< Can also be used as a |method|: >
|
||||
GetObject()->index(what)
|
||||
|
||||
indexof({object}, {expr} [, {opts}]) *indexof()*
|
||||
Returns the index of an item in {object} where {expr} is
|
||||
v:true. {object} must be a |List| or a |Blob|.
|
||||
|
||||
If {object} is a |List|, evaluate {expr} for each item in the
|
||||
List until the expression is v:true and return the index of
|
||||
this item.
|
||||
|
||||
If {object} is a |Blob| evaluate {expr} for each byte in the
|
||||
Blob until the expression is v:true and return the index of
|
||||
this byte.
|
||||
|
||||
{expr} must be a |string| or |Funcref|.
|
||||
|
||||
If {expr} is a |string|: If {object} is a |List|, inside
|
||||
{expr} |v:key| has the index of the current List item and
|
||||
|v:val| has the value of the item. If {object} is a |Blob|,
|
||||
inside {expr} |v:key| has the index of the current byte and
|
||||
|v:val| has the byte value.
|
||||
|
||||
If {expr} is a |Funcref| it must take two arguments:
|
||||
1. the key or the index of the current item.
|
||||
2. the value of the current item.
|
||||
The function must return |TRUE| if the item is found and the
|
||||
search should stop.
|
||||
|
||||
The optional argument {opts} is a Dict and supports the
|
||||
following items:
|
||||
startidx start evaluating {expr} at the item with this
|
||||
index; may be negative for an item relative to
|
||||
the end
|
||||
Returns -1 when {expr} evaluates to v:false for all the items.
|
||||
Example: >
|
||||
:let l = [#{n: 10}, #{n: 20}, #{n: 30}]
|
||||
:echo indexof(l, "v:val.n == 20")
|
||||
:echo indexof(l, {i, v -> v.n == 30})
|
||||
:echo indexof(l, "v:val.n == 20", #{startidx: 1})
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
mylist->indexof(expr)
|
||||
|
||||
input({prompt} [, {text} [, {completion}]]) *input()*
|
||||
The result is a String, which is whatever the user typed on
|
||||
the command-line. The {prompt} argument is either a prompt
|
||||
@@ -4935,8 +5026,6 @@ isinf({expr}) *isinf()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->isinf()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
islocked({expr}) *islocked()* *E786*
|
||||
The result is a Number, which is |TRUE| when {expr} is the
|
||||
@@ -4965,8 +5054,6 @@ isnan({expr}) *isnan()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->isnan()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
items({dict}) *items()*
|
||||
Return a |List| with all the key-value pairs of {dict}. Each
|
||||
@@ -5098,6 +5185,16 @@ keys({dict}) *keys()*
|
||||
Can also be used as a |method|: >
|
||||
mydict->keys()
|
||||
|
||||
keytrans({string}) *keytrans()*
|
||||
Turn the internal byte representation of keys into a form that
|
||||
can be used for |:map|. E.g. >
|
||||
:let xx = "\<C-Home>"
|
||||
:echo keytrans(xx)
|
||||
< <C-Home>
|
||||
|
||||
Can also be used as a |method|: >
|
||||
"\<C-Home>"->keytrans()
|
||||
|
||||
< *len()* *E701*
|
||||
len({expr}) The result is a Number, which is the length of the argument.
|
||||
When {expr} is a String or a Number the length in bytes is
|
||||
@@ -5385,8 +5482,6 @@ log({expr}) *log()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->log()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
log10({expr}) *log10()*
|
||||
@@ -5401,8 +5496,6 @@ log10({expr}) *log10()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->log10()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
luaeval({expr} [, {expr}]) *luaeval()*
|
||||
Evaluate Lua expression {expr} and return its result converted
|
||||
@@ -5410,8 +5503,7 @@ luaeval({expr} [, {expr}]) *luaeval()*
|
||||
argument accessible as _A inside first {expr}.
|
||||
Strings are returned as they are.
|
||||
Boolean objects are converted to numbers.
|
||||
Numbers are converted to |Float| values if vim was compiled
|
||||
with |+float| and to numbers otherwise.
|
||||
Numbers are converted to |Float| values.
|
||||
Dictionaries and lists obtained by vim.eval() are returned
|
||||
as-is.
|
||||
Other objects are returned as zero without any errors.
|
||||
@@ -5769,8 +5861,10 @@ matchadd({group}, {pattern} [, {priority} [, {id} [, {dict}]]])
|
||||
message will appear and the match will not be added. An ID
|
||||
is specified as a positive integer (zero excluded). IDs 1, 2
|
||||
and 3 are reserved for |:match|, |:2match| and |:3match|,
|
||||
respectively. If the {id} argument is not specified or -1,
|
||||
|matchadd()| automatically chooses a free ID.
|
||||
respectively. 3 is reserved for use by the |matchparen|
|
||||
plugin.
|
||||
If the {id} argument is not specified or -1, |matchadd()|
|
||||
automatically chooses a free ID, which is at least 1000.
|
||||
|
||||
The optional {dict} argument allows for further custom
|
||||
values. Currently this is used to specify a match specific
|
||||
@@ -5824,8 +5918,6 @@ matchaddpos({group}, {pos} [, {priority} [, {id} [, {dict}]]])
|
||||
- A list with three numbers, e.g., [23, 11, 3]. As above, but
|
||||
the third number gives the length of the highlight in bytes.
|
||||
|
||||
The maximum number of positions in {pos} is 8.
|
||||
|
||||
Returns -1 on error.
|
||||
|
||||
Example: >
|
||||
@@ -6131,8 +6223,26 @@ min({expr}) Return the minimum value of all items in {expr}. Example: >
|
||||
mkdir({name} [, {path} [, {prot}]])
|
||||
Create directory {name}.
|
||||
|
||||
If {path} is "p" then intermediate directories are created as
|
||||
necessary. Otherwise it must be "".
|
||||
If {path} contains "p" then intermediate directories are
|
||||
created as necessary. Otherwise it must be "".
|
||||
|
||||
If {path} contains "D" then {name} is deleted at the end of
|
||||
the current function, as with: >
|
||||
defer delete({name}, 'd')
|
||||
<
|
||||
If {path} contains "R" then {name} is deleted recursively at
|
||||
the end of the current function, as with: >
|
||||
defer delete({name}, 'rf')
|
||||
< Note that when {name} has more than one part and "p" is used
|
||||
some directories may already exist. Only the first one that
|
||||
is created and what it contains is scheduled to be deleted.
|
||||
E.g. when using: >
|
||||
call mkdir('subdir/tmp/autoload', 'pR')
|
||||
< and "subdir" already exists then "subdir/tmp" will be
|
||||
scheduled for deletion, like with: >
|
||||
defer delete('subdir/tmp', 'rf')
|
||||
< Note that if scheduling the defer fails the directory is not
|
||||
deleted. This should only happen when out of memory.
|
||||
|
||||
If {prot} is given it is used to set the protection bits of
|
||||
the new directory. The default is 0o755 (rwxr-xr-x: r/w for
|
||||
@@ -6338,8 +6448,6 @@ pow({x}, {y}) *pow()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->pow(3)
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
prevnonblank({lnum}) *prevnonblank()*
|
||||
Return the line number of the first line at or above {lnum}
|
||||
@@ -7168,8 +7276,8 @@ repeat({expr}, {count}) *repeat()*
|
||||
result. Example: >
|
||||
:let separator = repeat('-', 80)
|
||||
< When {count} is zero or negative the result is empty.
|
||||
When {expr} is a |List| the result is {expr} concatenated
|
||||
{count} times. Example: >
|
||||
When {expr} is a |List| or a |Blob| the result is {expr}
|
||||
concatenated {count} times. Example: >
|
||||
:let longlist = repeat(['a', 'b'], 3)
|
||||
< Results in ['a', 'b', 'a', 'b', 'a', 'b'].
|
||||
|
||||
@@ -7221,8 +7329,6 @@ round({expr}) *round()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->round()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
rubyeval({expr}) *rubyeval()*
|
||||
Evaluate Ruby expression {expr} and return its result
|
||||
@@ -7364,8 +7470,10 @@ search({pattern} [, {flags} [, {stopline} [, {timeout} [, {skip}]]]])
|
||||
starts in column zero and then matches before the cursor are
|
||||
skipped. When the 'c' flag is present in 'cpo' the next
|
||||
search starts after the match. Without the 'c' flag the next
|
||||
search starts one column further. This matters for
|
||||
overlapping matches.
|
||||
search starts one column after the start of the match. This
|
||||
matters for overlapping matches. See |cpo-c|. You can also
|
||||
insert "\ze" to change where the match ends, see |/\ze|.
|
||||
|
||||
When searching backwards and the 'z' flag is given then the
|
||||
search starts in column zero, thus no match in the current
|
||||
line will be found (unless wrapping around the end of the
|
||||
@@ -7379,7 +7487,7 @@ search({pattern} [, {flags} [, {stopline} [, {timeout} [, {skip}]]]])
|
||||
< When {stopline} is used and it is not zero this also implies
|
||||
that the search does not wrap around the end of the file.
|
||||
A zero value is equal to not giving the argument.
|
||||
|
||||
*E1285* *E1286* *E1287* *E1288* *E1289*
|
||||
When the {timeout} argument is given the search stops when
|
||||
more than this many milliseconds have passed. Thus when
|
||||
{timeout} is 500 the search stops after half a second.
|
||||
@@ -7471,7 +7579,7 @@ searchcount([{options}]) *searchcount()*
|
||||
" to 1)
|
||||
let result = searchcount()
|
||||
<
|
||||
The function is useful to add the count to |statusline|: >
|
||||
The function is useful to add the count to 'statusline': >
|
||||
function! LastSearchCount() abort
|
||||
let result = searchcount(#{recompute: 0})
|
||||
if empty(result)
|
||||
@@ -7839,6 +7947,16 @@ setcharsearch({dict}) *setcharsearch()*
|
||||
Can also be used as a |method|: >
|
||||
SavedSearch()->setcharsearch()
|
||||
|
||||
setcmdline({str} [, {pos}]) *setcmdline()*
|
||||
Set the command line to {str} and set the cursor position to
|
||||
{pos}.
|
||||
If {pos} is omitted, the cursor is positioned after the text.
|
||||
Returns 0 when successful, 1 when not editing the command
|
||||
line.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->setcmdline()
|
||||
|
||||
setcmdpos({pos}) *setcmdpos()*
|
||||
Set the cursor position in the command line to byte position
|
||||
{pos}. The first position is 1.
|
||||
@@ -7851,8 +7969,8 @@ setcmdpos({pos}) *setcmdpos()*
|
||||
before inserting the resulting text.
|
||||
When the number is too big the cursor is put at the end of the
|
||||
line. A number smaller than one has undefined results.
|
||||
Returns FALSE when successful, TRUE when not editing the
|
||||
command line.
|
||||
Returns 0 when successful, 1 when not editing the command
|
||||
line.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetPos()->setcmdpos()
|
||||
@@ -8379,8 +8497,6 @@ sin({expr}) *sin()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->sin()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
sinh({expr}) *sinh()*
|
||||
@@ -8396,8 +8512,6 @@ sinh({expr}) *sinh()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->sinh()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
slice({expr}, {start} [, {end}]) *slice()*
|
||||
@@ -8664,8 +8778,6 @@ sqrt({expr}) *sqrt()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->sqrt()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
srand([{expr}]) *srand()*
|
||||
@@ -8739,8 +8851,6 @@ str2float({string} [, {quoted}]) *str2float()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
let f = text->substitute(',', '', 'g')->str2float()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
str2list({string} [, {utf8}]) *str2list()*
|
||||
Return a list containing the number values which represent
|
||||
@@ -9225,6 +9335,7 @@ synIDattr({synID}, {what} [, {mode}]) *synIDattr()*
|
||||
"underline" "1" if underlined
|
||||
"undercurl" "1" if undercurled
|
||||
"strike" "1" if strikethrough
|
||||
"nocombine" "1" if nocombine
|
||||
|
||||
Returns an empty string on error.
|
||||
|
||||
@@ -9485,8 +9596,6 @@ tan({expr}) *tan()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->tan()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
tanh({expr}) *tanh()*
|
||||
@@ -9502,8 +9611,6 @@ tanh({expr}) *tanh()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
Compute()->tanh()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
tempname() *tempname()* *temp-file-name*
|
||||
@@ -9739,8 +9846,6 @@ trunc({expr}) *trunc()*
|
||||
Can also be used as a |method|: >
|
||||
Compute()->trunc()
|
||||
<
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
*type()*
|
||||
type({expr}) The result is a Number representing the type of {expr}.
|
||||
Instead of using the number directly, it is better to use the
|
||||
@@ -10328,34 +10433,43 @@ writefile({object}, {fname} [, {flags}])
|
||||
When {object} is a |List| write it to file {fname}. Each list
|
||||
item is separated with a NL. Each list item must be a String
|
||||
or Number.
|
||||
When {flags} contains "b" then binary mode is used: There will
|
||||
not be a NL after the last list item. An empty item at the
|
||||
end does cause the last line in the file to end in a NL.
|
||||
|
||||
When {object} is a |Blob| write the bytes to file {fname}
|
||||
unmodified.
|
||||
|
||||
When {flags} contains "a" then append mode is used, lines are
|
||||
appended to the file: >
|
||||
:call writefile(["foo"], "event.log", "a")
|
||||
:call writefile(["bar"], "event.log", "a")
|
||||
<
|
||||
When {flags} contains "s" then fsync() is called after writing
|
||||
the file. This flushes the file to disk, if possible. This
|
||||
takes more time but avoids losing the file if the system
|
||||
crashes.
|
||||
When {flags} does not contain "S" or "s" then fsync() is
|
||||
called if the 'fsync' option is set.
|
||||
When {flags} contains "S" then fsync() is not called, even
|
||||
when 'fsync' is set.
|
||||
|
||||
All NL characters are replaced with a NUL character.
|
||||
Inserting CR characters needs to be done before passing {list}
|
||||
to writefile().
|
||||
|
||||
When {object} is a |Blob| write the bytes to file {fname}
|
||||
unmodified, also when binary mode is not specified.
|
||||
|
||||
{flags} must be a String. These characters are recognized:
|
||||
|
||||
'b' Binary mode is used: There will not be a NL after the
|
||||
last list item. An empty item at the end does cause the
|
||||
last line in the file to end in a NL.
|
||||
|
||||
'a' Append mode is used, lines are appended to the file: >
|
||||
:call writefile(["foo"], "event.log", "a")
|
||||
:call writefile(["bar"], "event.log", "a")
|
||||
<
|
||||
'D' Delete the file when the current function ends. This
|
||||
works like: >
|
||||
:defer delete({fname})
|
||||
< Fails when not in a function. Also see |:defer|.
|
||||
|
||||
's' fsync() is called after writing the file. This flushes
|
||||
the file to disk, if possible. This takes more time but
|
||||
avoids losing the file if the system crashes.
|
||||
|
||||
'S' fsync() is not called, even when 'fsync' is set.
|
||||
|
||||
When {flags} does not contain "S" or "s" then fsync() is
|
||||
called if the 'fsync' option is set.
|
||||
|
||||
An existing file is overwritten, if possible.
|
||||
|
||||
When the write fails -1 is returned, otherwise 0. There is an
|
||||
error message if the file can't be created or when writing
|
||||
fails.
|
||||
|
||||
Also see |readfile()|.
|
||||
To copy a file byte for byte: >
|
||||
:let fl = readfile("foo", "b")
|
||||
@@ -10404,7 +10518,8 @@ use: `if exists('+shellslash')`
|
||||
|
||||
|
||||
acl Compiled with |ACL| support.
|
||||
all_builtin_terms Compiled with all builtin terminals enabled.
|
||||
all_builtin_terms Compiled with all builtin terminals enabled. (always
|
||||
true)
|
||||
amiga Amiga version of Vim.
|
||||
arabic Compiled with Arabic support |Arabic|.
|
||||
arp Compiled with ARP support (Amiga).
|
||||
@@ -10418,7 +10533,7 @@ browse Compiled with |:browse| support, and browse() will
|
||||
work.
|
||||
browsefilter Compiled with support for |browsefilter|.
|
||||
bsd Compiled on an OS in the BSD family (excluding macOS).
|
||||
builtin_terms Compiled with some builtin terminals.
|
||||
builtin_terms Compiled with some builtin terminals. (always true)
|
||||
byte_offset Compiled with support for 'o' in 'statusline'
|
||||
channel Compiled with support for |channel| and |job|
|
||||
cindent Compiled with 'cindent' support. (always true)
|
||||
@@ -10450,7 +10565,8 @@ ex_extra |+ex_extra| (always true)
|
||||
extra_search Compiled with support for |'incsearch'| and
|
||||
|'hlsearch'|
|
||||
farsi Support for Farsi was removed |farsi|.
|
||||
file_in_path Compiled with support for |gf| and |<cfile>|
|
||||
file_in_path Compiled with support for |gf| and |<cfile>| (always
|
||||
true)
|
||||
filterpipe When 'shelltemp' is off pipes are used for shell
|
||||
read/write/filter commands
|
||||
find_in_path Compiled with support for include file searches
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 9.0. Last change: 2022 May 26
|
||||
*change.txt* For Vim version 9.0. Last change: 2022 Sep 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -802,6 +802,8 @@ When the {string} starts with "\=" it is evaluated as an expression, see
|
||||
|sub-replace-expression|. You can use that for complex replacement or special
|
||||
characters.
|
||||
|
||||
The substitution is limited in recursion to 4 levels. *E1290*
|
||||
|
||||
Otherwise these characters in {string} have a special meaning:
|
||||
*:s%*
|
||||
When {string} is equal to "%" and '/' is included with the 'cpoptions' option,
|
||||
@@ -1186,11 +1188,20 @@ used. If you do need it you can use |p| with another register. E.g., yank
|
||||
the text to copy, Visually select the text to replace and use "0p . You can
|
||||
repeat this as many times as you like, and the unnamed register will be
|
||||
changed each time.
|
||||
|
||||
When you use a blockwise Visual mode command and yank only a single line into
|
||||
a register, a paste on a visual selected area will paste that single line on
|
||||
each of the selected lines (thus replacing the blockwise selected region by a
|
||||
block of the pasted line).
|
||||
*blockwise-put*
|
||||
When a register contains text from one line (characterwise), using a
|
||||
blockwise Visual selection, putting that register will paste that text
|
||||
repeatedly in each of the selected lines, thus replacing the blockwise
|
||||
selected region by multiple copies of the register text. For example:
|
||||
- yank the word "TEXT" into a register with `yw`
|
||||
- select a visual block, marked with "v" in this text:
|
||||
aaavvaaa
|
||||
bbbvvbbb
|
||||
cccvvccc
|
||||
- press `p`, results in:
|
||||
aaaTEXTaaa
|
||||
bbbTEXTbbb
|
||||
cccTEXTccc
|
||||
|
||||
*blockwise-register*
|
||||
If you use a blockwise Visual mode command to get the text into the register,
|
||||
|
||||
@@ -27,6 +27,7 @@ The Netbeans interface also uses a channel. |netbeans|
|
||||
14. Using a prompt buffer |prompt-buffer|
|
||||
15. Language Server Protocol |language-server-protocol|
|
||||
|
||||
*E1277*
|
||||
{only when compiled with the |+channel| feature for channel stuff}
|
||||
You can check this with: `has('channel')`
|
||||
{only when compiled with the |+job| feature for job stuff}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 9.0. Last change: 2022 Jun 16
|
||||
*cmdline.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -199,9 +199,6 @@ CTRL-R CTRL-L *c_CTRL-R_CTRL-L* *c_<C-R>_<C-L>*
|
||||
currently displayed match is used. With CTRL-W the part of
|
||||
the word that was already typed is not inserted again.
|
||||
|
||||
CTRL-F and CTRL-P: {only when |+file_in_path| feature is
|
||||
included}
|
||||
|
||||
*c_CTRL-R_CTRL-R* *c_<C-R>_<C-R>*
|
||||
*c_CTRL-R_CTRL-O* *c_<C-R>_<C-O>*
|
||||
CTRL-R CTRL-R {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
@@ -809,7 +806,7 @@ Count and Range *N:*
|
||||
|
||||
When giving a count before entering ":", this is translated into:
|
||||
:.,.+(count - 1)
|
||||
In words: The 'count' lines at and after the cursor. Example: To delete
|
||||
In words: The "count" lines at and after the cursor. Example: To delete
|
||||
three lines: >
|
||||
3:d<CR> is translated into: .,.+2d<CR>
|
||||
<
|
||||
@@ -1147,6 +1144,8 @@ character that indicates the type of command-line being edited, see
|
||||
|
||||
Vim will be in Normal mode when the editor is opened, except when 'insertmode'
|
||||
is set.
|
||||
*E1292*
|
||||
Once a command-line window is open it is not possible to open another one.
|
||||
|
||||
The height of the window is specified with 'cmdwinheight' (or smaller if there
|
||||
is no room). The window is always full width and is positioned just above the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 9.0. Last change: 2020 Aug 15
|
||||
*develop.txt* For Vim version 9.0. Last change: 2022 Sep 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -188,8 +188,8 @@ C COMPILER *style-compiler* *ANSI-C* *C89* *C99*
|
||||
|
||||
The minimal C compiler version supported is C89, also known as ANSI C.
|
||||
Later standards, such as C99, are not widely supported, or at least not 100%
|
||||
supported. Therefore we use only some of the C99 features and disallow some
|
||||
(at least for now).
|
||||
supported. Therefore we use only some of the C99 features and explicitly
|
||||
disallow some (this will gradually be adjusted over time).
|
||||
|
||||
Please don't make changes everywhere to use the C99 features, it causes merge
|
||||
problems for existing patches. Only use them for new and changed code.
|
||||
@@ -215,12 +215,21 @@ Types ~
|
||||
"long long" is allowed and can be expected to be 64 bits. Use %lld in printf
|
||||
formats. Also "long long unsigned" with %llu.
|
||||
|
||||
Declarations ~
|
||||
|
||||
Now that the minimal supported compiler is MSVC 2015 declarations do not need
|
||||
to be at the start of a block. However, it is often a good idea to do this
|
||||
anyway.
|
||||
|
||||
Declaration of the for loop variable inside the loop is recommended:
|
||||
for (int i = 0; i < len; ++i)
|
||||
Since this is clearly an advantage we'll use this more often.
|
||||
|
||||
|
||||
Not to be used ~
|
||||
|
||||
These C99 features are not to be used, because not enough compilers support
|
||||
them:
|
||||
- Declaration after Statements (MSVC 2012 does not support it). All
|
||||
declarations need to be at the start of the block.
|
||||
- Variable length arrays (even in C11 this is an optional feature).
|
||||
- _Bool and _Complex types.
|
||||
- "inline" (it's hardly ever needed, let the optimizer do its work)
|
||||
|
||||
@@ -376,6 +376,9 @@ Additionally, 'diffexpr' should take care of "icase" and "iwhite" in the
|
||||
'diffopt' option. 'diffexpr' cannot change the value of 'lines' and
|
||||
'columns'.
|
||||
|
||||
The advantage of using a function call without arguments is that it is faster,
|
||||
see |expr-option-function|.
|
||||
|
||||
Example (this does almost the same as 'diffexpr' being empty): >
|
||||
|
||||
set diffexpr=MyDiff()
|
||||
@@ -441,6 +444,9 @@ will have the same effect. These variables are set to the file names used:
|
||||
v:fname_diff patch file
|
||||
v:fname_out resulting patched file
|
||||
|
||||
The advantage of using a function call without arguments is that it is faster,
|
||||
see |expr-option-function|.
|
||||
|
||||
Example (this does the same as 'patchexpr' being empty): >
|
||||
|
||||
set patchexpr=MyPatch()
|
||||
|
||||
@@ -21,6 +21,8 @@ main(int argc, char **argv)
|
||||
char *p1, *p2;
|
||||
char *p;
|
||||
FILE *fd;
|
||||
int len;
|
||||
int in_example;
|
||||
|
||||
if (argc <= 1)
|
||||
{
|
||||
@@ -37,22 +39,28 @@ main(int argc, char **argv)
|
||||
fprintf(stderr, "Unable to open %s for reading\n", argv[0]);
|
||||
continue;
|
||||
}
|
||||
in_example = 0;
|
||||
while (fgets(line, LINELEN, fd) != NULL)
|
||||
{
|
||||
p1 = strchr(line, '*'); /* find first '*' */
|
||||
if (in_example)
|
||||
{
|
||||
// skip over example; non-blank in first column ends example
|
||||
if (strchr(" \t\n\r", line[0]) != NULL)
|
||||
continue;
|
||||
in_example = 0;
|
||||
}
|
||||
p1 = strchr(line, '*'); // find first '*'
|
||||
while (p1 != NULL)
|
||||
{
|
||||
p2 = strchr(p1 + 1, '*'); /* find second '*' */
|
||||
if (p2 != NULL && p2 > p1 + 1) /* skip "*" and "**" */
|
||||
p2 = strchr(p1 + 1, '*'); // find second '*'
|
||||
if (p2 != NULL && p2 > p1 + 1) // skip "*" and "**"
|
||||
{
|
||||
for (p = p1 + 1; p < p2; ++p)
|
||||
if (*p == ' ' || *p == '\t' || *p == '|')
|
||||
break;
|
||||
/*
|
||||
* Only accept a *tag* when it consists of valid
|
||||
* characters, there is white space before it and is
|
||||
* followed by a white character or end-of-line.
|
||||
*/
|
||||
// Only accept a *tag* when it consists of valid
|
||||
// characters, there is white space before it and is
|
||||
// followed by a white character or end-of-line.
|
||||
if (p == p2
|
||||
&& (p1 == line || p1[-1] == ' ' || p1[-1] == '\t')
|
||||
&& (strchr(" \t\n\r", p[1]) != NULL
|
||||
@@ -63,18 +71,22 @@ main(int argc, char **argv)
|
||||
printf("%s\t%s\t/*", p1, argv[0]);
|
||||
while (*p1)
|
||||
{
|
||||
/* insert backslash before '\\' and '/' */
|
||||
// insert backslash before '\\' and '/'
|
||||
if (*p1 == '\\' || *p1 == '/')
|
||||
putchar('\\');
|
||||
putchar(*p1);
|
||||
++p1;
|
||||
}
|
||||
printf("*\n");
|
||||
p2 = strchr(p2 + 1, '*'); /* find next '*' */
|
||||
p2 = strchr(p2 + 1, '*'); // find next '*'
|
||||
}
|
||||
}
|
||||
p1 = p2;
|
||||
}
|
||||
len = strlen(line);
|
||||
if ((len == 2 && strcmp(&line[len - 2], ">\n") == 0)
|
||||
|| (len >= 3 && strcmp(&line[len - 3], " >\n") == 0))
|
||||
in_example = 1;
|
||||
}
|
||||
fclose(fd);
|
||||
}
|
||||
|
||||
@@ -247,8 +247,6 @@ If you want to keep the changed buffer without saving it, switch on the
|
||||
*:fin* *:find*
|
||||
:fin[d][!] [++opt] [+cmd] {file}
|
||||
Find {file} in 'path' and then |:edit| it.
|
||||
{not available when the |+file_in_path| feature was
|
||||
disabled at compile time}
|
||||
|
||||
:{count}fin[d][!] [++opt] [+cmd] {file}
|
||||
Just like ":find", but use the {count} match in
|
||||
@@ -322,8 +320,6 @@ CTRL-^ Edit the alternate file. Mostly the alternate file is
|
||||
For Unix the '~' character is expanded, like in
|
||||
"~user/file". Environment variables are expanded too
|
||||
|expand-env|.
|
||||
{not available when the |+file_in_path| feature was
|
||||
disabled at compile time}
|
||||
|
||||
*v_gf*
|
||||
{Visual}[count]gf Same as "gf", but the highlighted text is used as the
|
||||
@@ -1707,8 +1703,6 @@ problem goes away the next day.
|
||||
==============================================================================
|
||||
11. File Searching *file-searching*
|
||||
|
||||
{not available when compiled without the |+path_extra| feature}
|
||||
|
||||
The file searching is currently used for the 'path', 'cdpath' and 'tags'
|
||||
options, for |finddir()| and |findfile()|. Other commands use |wildcards|
|
||||
which is slightly different.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 9.0. Last change: 2022 Jun 17
|
||||
*eval.txt* For Vim version 9.0. Last change: 2022 Sep 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -54,7 +54,6 @@ Number A 32 or 64 bit signed number. |expr-number|
|
||||
Examples: -123 0x10 0177 0o177 0b1011
|
||||
|
||||
Float A floating point number. |floating-point-format| *Float*
|
||||
{only when compiled with the |+float| feature} *E1076*
|
||||
Examples: 123.456 1.15e-6 -1.1e3
|
||||
|
||||
String A NUL terminated string of 8-bit unsigned characters (bytes).
|
||||
@@ -1098,6 +1097,7 @@ a different type means the values are different: >
|
||||
echo 0 is []
|
||||
0
|
||||
"is#"/"isnot#" and "is?"/"isnot?" can be used to match and ignore case.
|
||||
In |Vim9| script this doesn't work, two strings are never identical.
|
||||
|
||||
In legacy script, when comparing a String with a Number, the String is
|
||||
converted to a Number, and the comparison is done on Numbers. This means
|
||||
@@ -1399,7 +1399,7 @@ parenthesis), or any expression in parentheses: >
|
||||
base->alist[idx](args)
|
||||
base->(getFuncRef())(args)
|
||||
Note that in the last call the base is passed to the function resulting from
|
||||
"(getFuncRef())", inserted before "args".
|
||||
"(getFuncRef())", inserted before "args". *E1275*
|
||||
|
||||
*E274*
|
||||
"->name(" must not contain white space. There can be white space before the
|
||||
@@ -1440,7 +1440,6 @@ digits are ignored.
|
||||
{exp} is the exponent, power of 10.
|
||||
Only a decimal point is accepted, not a comma. No matter what the current
|
||||
locale is.
|
||||
{only when compiled with the |+float| feature}
|
||||
|
||||
Examples:
|
||||
123.456
|
||||
@@ -1549,7 +1548,7 @@ to be doubled. These two commands are equivalent: >
|
||||
if a =~ '\s*'
|
||||
|
||||
|
||||
interpolated-string *$quote* *interp-string* *E256*
|
||||
interpolated-string *$quote* *interp-string*
|
||||
--------------------
|
||||
$"string" interpolated string constant *expr-$quote*
|
||||
$'string' interpolated literal string constant *expr-$'*
|
||||
@@ -1559,7 +1558,7 @@ allowing the inclusion of Vim script expressions (see |expr1|). Any
|
||||
expression returning a value can be enclosed between curly braces. The value
|
||||
is converted to a string. All the text and results of the expressions
|
||||
are concatenated to make a new string.
|
||||
*E1278*
|
||||
*E1278* *E1279*
|
||||
To include an opening brace '{' or closing brace '}' in the string content
|
||||
double it. For double quoted strings using a backslash also works. A single
|
||||
closing brace '}' will result in an error.
|
||||
@@ -1717,6 +1716,9 @@ Recommendation: don't do this.
|
||||
Notice how execute() is used to execute an Ex command. That's ugly though.
|
||||
In Vim9 script you can use a command block, see |inline-function|.
|
||||
|
||||
Although you can use the loop variable of a `for` command, it must still exist
|
||||
when the closure is called, otherwise you get an error. *E1302*
|
||||
|
||||
Lambda expressions have internal names like '<lambda>42'. If you get an error
|
||||
for a lambda expression, you can find what it is with the following command: >
|
||||
:function <lambda>42
|
||||
@@ -2005,6 +2007,8 @@ v:completed_item
|
||||
|Dictionary| containing the |complete-items| for the most
|
||||
recently completed word after |CompleteDone|. The
|
||||
|Dictionary| is empty if the completion failed.
|
||||
Note: Plugins can modify the value to emulate the builtin
|
||||
|CompleteDone| event behavior.
|
||||
|
||||
*v:count* *count-variable*
|
||||
v:count The count given for the last Normal mode command. Can be used
|
||||
@@ -2626,447 +2630,12 @@ help file: |builtin-functions|.
|
||||
5. Defining functions *user-functions*
|
||||
|
||||
New functions can be defined. These can be called just like builtin
|
||||
functions. The function executes a sequence of Ex commands. Normal mode
|
||||
commands can be executed with the |:normal| command.
|
||||
functions. The function takes arguments, executes a sequence of Ex commands
|
||||
and can return a value.
|
||||
|
||||
This section is about the legacy functions. For the Vim9 functions, which
|
||||
execute much faster, support type checking and more, see |vim9.txt|.
|
||||
|
||||
The function name must start with an uppercase letter, to avoid confusion with
|
||||
builtin functions. To prevent from using the same name in different scripts
|
||||
avoid obvious, short names. A good habit is to start the function name with
|
||||
the name of the script, e.g., "HTMLcolor()".
|
||||
|
||||
In legacy script it is also possible to use curly braces, see
|
||||
|curly-braces-names|.
|
||||
The |autoload| facility is useful to define a function only when it's called.
|
||||
|
||||
*local-function*
|
||||
A function local to a legacy script must start with "s:". A local script
|
||||
function can only be called from within the script and from functions, user
|
||||
commands and autocommands defined in the script. It is also possible to call
|
||||
the function from a mapping defined in the script, but then |<SID>| must be
|
||||
used instead of "s:" when the mapping is expanded outside of the script.
|
||||
There are only script-local functions, no buffer-local or window-local
|
||||
functions.
|
||||
|
||||
In |Vim9| script functions are local to the script by default, prefix "g:" to
|
||||
define a global function.
|
||||
|
||||
*:fu* *:function* *E128* *E129* *E123* *E454*
|
||||
:fu[nction] List all functions and their arguments.
|
||||
|
||||
:fu[nction] {name} List function {name}.
|
||||
{name} can also be a |Dictionary| entry that is a
|
||||
|Funcref|: >
|
||||
:function dict.init
|
||||
|
||||
:fu[nction] /{pattern} List functions with a name matching {pattern}.
|
||||
Example that lists all functions ending with "File": >
|
||||
:function /File$
|
||||
<
|
||||
*:function-verbose*
|
||||
When 'verbose' is non-zero, listing a function will also display where it was
|
||||
last defined. Example: >
|
||||
|
||||
:verbose function SetFileTypeSH
|
||||
function SetFileTypeSH(name)
|
||||
Last set from /usr/share/vim/vim-7.0/filetype.vim
|
||||
<
|
||||
See |:verbose-cmd| for more information.
|
||||
|
||||
*E124* *E125* *E853* *E884*
|
||||
:fu[nction][!] {name}([arguments]) [range] [abort] [dict] [closure]
|
||||
Define a new function by the name {name}. The body of
|
||||
the function follows in the next lines, until the
|
||||
matching |:endfunction|.
|
||||
|
||||
The name must be made of alphanumeric characters and
|
||||
'_', and must start with a capital or "s:" (see
|
||||
above). Note that using "b:" or "g:" is not allowed.
|
||||
(since patch 7.4.260 E884 is given if the function
|
||||
name has a colon in the name, e.g. for "foo:bar()".
|
||||
Before that patch no error was given).
|
||||
|
||||
{name} can also be a |Dictionary| entry that is a
|
||||
|Funcref|: >
|
||||
:function dict.init(arg)
|
||||
< "dict" must be an existing dictionary. The entry
|
||||
"init" is added if it didn't exist yet. Otherwise [!]
|
||||
is required to overwrite an existing function. The
|
||||
result is a |Funcref| to a numbered function. The
|
||||
function can only be used with a |Funcref| and will be
|
||||
deleted if there are no more references to it.
|
||||
*E127* *E122*
|
||||
When a function by this name already exists and [!] is
|
||||
not used an error message is given. There is one
|
||||
exception: When sourcing a script again, a function
|
||||
that was previously defined in that script will be
|
||||
silently replaced.
|
||||
When [!] is used, an existing function is silently
|
||||
replaced. Unless it is currently being executed, that
|
||||
is an error.
|
||||
NOTE: Use ! wisely. If used without care it can cause
|
||||
an existing function to be replaced unexpectedly,
|
||||
which is hard to debug.
|
||||
NOTE: In Vim9 script script-local functions cannot be
|
||||
deleted or redefined.
|
||||
|
||||
For the {arguments} see |function-argument|.
|
||||
|
||||
*:func-range* *a:firstline* *a:lastline*
|
||||
When the [range] argument is added, the function is
|
||||
expected to take care of a range itself. The range is
|
||||
passed as "a:firstline" and "a:lastline". If [range]
|
||||
is excluded, ":{range}call" will call the function for
|
||||
each line in the range, with the cursor on the start
|
||||
of each line. See |function-range-example|.
|
||||
The cursor is still moved to the first line of the
|
||||
range, as is the case with all Ex commands.
|
||||
*:func-abort*
|
||||
When the [abort] argument is added, the function will
|
||||
abort as soon as an error is detected.
|
||||
*:func-dict*
|
||||
When the [dict] argument is added, the function must
|
||||
be invoked through an entry in a |Dictionary|. The
|
||||
local variable "self" will then be set to the
|
||||
dictionary. See |Dictionary-function|.
|
||||
*:func-closure* *E932*
|
||||
When the [closure] argument is added, the function
|
||||
can access variables and arguments from the outer
|
||||
scope. This is usually called a closure. In this
|
||||
example Bar() uses "x" from the scope of Foo(). It
|
||||
remains referenced even after Foo() returns: >
|
||||
:function! Foo()
|
||||
: let x = 0
|
||||
: function! Bar() closure
|
||||
: let x += 1
|
||||
: return x
|
||||
: endfunction
|
||||
: return funcref('Bar')
|
||||
:endfunction
|
||||
|
||||
:let F = Foo()
|
||||
:echo F()
|
||||
< 1 >
|
||||
:echo F()
|
||||
< 2 >
|
||||
:echo F()
|
||||
< 3
|
||||
|
||||
*function-search-undo*
|
||||
The last used search pattern and the redo command "."
|
||||
will not be changed by the function. This also
|
||||
implies that the effect of |:nohlsearch| is undone
|
||||
when the function returns.
|
||||
|
||||
*:endf* *:endfunction* *E126* *E193* *W22* *E1151*
|
||||
:endf[unction] [argument]
|
||||
The end of a function definition. Best is to put it
|
||||
on a line by its own, without [argument].
|
||||
|
||||
[argument] can be:
|
||||
| command command to execute next
|
||||
\n command command to execute next
|
||||
" comment always ignored
|
||||
anything else ignored, warning given when
|
||||
'verbose' is non-zero
|
||||
The support for a following command was added in Vim
|
||||
8.0.0654, before that any argument was silently
|
||||
ignored.
|
||||
|
||||
To be able to define a function inside an `:execute`
|
||||
command, use line breaks instead of |:bar|: >
|
||||
:exe "func Foo()\necho 'foo'\nendfunc"
|
||||
<
|
||||
*:delf* *:delfunction* *E131* *E933* *E1084*
|
||||
:delf[unction][!] {name}
|
||||
Delete function {name}.
|
||||
{name} can also be a |Dictionary| entry that is a
|
||||
|Funcref|: >
|
||||
:delfunc dict.init
|
||||
< This will remove the "init" entry from "dict". The
|
||||
function is deleted if there are no more references to
|
||||
it.
|
||||
With the ! there is no error if the function does not
|
||||
exist.
|
||||
*:retu* *:return* *E133*
|
||||
:retu[rn] [expr] Return from a function. When "[expr]" is given, it is
|
||||
evaluated and returned as the result of the function.
|
||||
If "[expr]" is not given, the number 0 is returned.
|
||||
When a function ends without an explicit ":return",
|
||||
the number 0 is returned.
|
||||
In a :def function *E1095* is given if unreachable
|
||||
code follows after the `:return`.
|
||||
In legacy script there is no check for unreachable
|
||||
lines, thus there is no warning if commands follow
|
||||
`:return`.
|
||||
|
||||
If the ":return" is used after a |:try| but before the
|
||||
matching |:finally| (if present), the commands
|
||||
following the ":finally" up to the matching |:endtry|
|
||||
are executed first. This process applies to all
|
||||
nested ":try"s inside the function. The function
|
||||
returns at the outermost ":endtry".
|
||||
|
||||
*function-argument* *a:var*
|
||||
An argument can be defined by giving its name. In the function this can then
|
||||
be used as "a:name" ("a:" for argument).
|
||||
*a:0* *a:1* *a:000* *E740* *...*
|
||||
Up to 20 arguments can be given, separated by commas. After the named
|
||||
arguments an argument "..." can be specified, which means that more arguments
|
||||
may optionally be following. In the function the extra arguments can be used
|
||||
as "a:1", "a:2", etc. "a:0" is set to the number of extra arguments (which
|
||||
can be 0). "a:000" is set to a |List| that contains these arguments. Note
|
||||
that "a:1" is the same as "a:000[0]".
|
||||
*E742* *E1090*
|
||||
The a: scope and the variables in it cannot be changed, they are fixed.
|
||||
However, if a composite type is used, such as |List| or |Dictionary| , you can
|
||||
change their contents. Thus you can pass a |List| to a function and have the
|
||||
function add an item to it. If you want to make sure the function cannot
|
||||
change a |List| or |Dictionary| use |:lockvar|.
|
||||
|
||||
It is also possible to define a function without any arguments. You must
|
||||
still supply the () then.
|
||||
|
||||
It is allowed to define another function inside a function body.
|
||||
|
||||
*optional-function-argument*
|
||||
You can provide default values for positional named arguments. This makes
|
||||
them optional for function calls. When a positional argument is not
|
||||
specified at a call, the default expression is used to initialize it.
|
||||
This only works for functions declared with `:function` or `:def`, not for
|
||||
lambda expressions |expr-lambda|.
|
||||
|
||||
Example: >
|
||||
function Something(key, value = 10)
|
||||
echo a:key .. ": " .. a:value
|
||||
endfunction
|
||||
call Something('empty') "empty: 10"
|
||||
call Something('key', 20) "key: 20"
|
||||
|
||||
The argument default expressions are evaluated at the time of the function
|
||||
call, not definition. Thus it is possible to use an expression which is
|
||||
invalid the moment the function is defined. The expressions are also only
|
||||
evaluated when arguments are not specified during a call.
|
||||
*none-function_argument*
|
||||
You can pass |v:none| to use the default expression. Note that this means you
|
||||
cannot pass v:none as an ordinary value when an argument has a default
|
||||
expression.
|
||||
|
||||
Example: >
|
||||
function Something(a = 10, b = 20, c = 30)
|
||||
endfunction
|
||||
call Something(1, v:none, 3) " b = 20
|
||||
<
|
||||
*E989*
|
||||
Optional arguments with default expressions must occur after any mandatory
|
||||
arguments. You can use "..." after all optional named arguments.
|
||||
|
||||
It is possible for later argument defaults to refer to prior arguments,
|
||||
but not the other way around. They must be prefixed with "a:", as with all
|
||||
arguments.
|
||||
|
||||
Example that works: >
|
||||
:function Okay(mandatory, optional = a:mandatory)
|
||||
:endfunction
|
||||
Example that does NOT work: >
|
||||
:function NoGood(first = a:second, second = 10)
|
||||
:endfunction
|
||||
<
|
||||
When not using "...", the number of arguments in a function call must be at
|
||||
least equal to the number of mandatory named arguments. When using "...", the
|
||||
number of arguments may be larger than the total of mandatory and optional
|
||||
arguments.
|
||||
|
||||
*local-variables*
|
||||
Inside a function local variables can be used. These will disappear when the
|
||||
function returns. Global variables need to be accessed with "g:".
|
||||
|
||||
Example: >
|
||||
:function Table(title, ...)
|
||||
: echohl Title
|
||||
: echo a:title
|
||||
: echohl None
|
||||
: echo a:0 .. " items:"
|
||||
: for s in a:000
|
||||
: echon ' ' .. s
|
||||
: endfor
|
||||
:endfunction
|
||||
|
||||
This function can then be called with: >
|
||||
call Table("Table", "line1", "line2")
|
||||
call Table("Empty Table")
|
||||
|
||||
To return more than one value, return a |List|: >
|
||||
:function Compute(n1, n2)
|
||||
: if a:n2 == 0
|
||||
: return ["fail", 0]
|
||||
: endif
|
||||
: return ["ok", a:n1 / a:n2]
|
||||
:endfunction
|
||||
|
||||
This function can then be called with: >
|
||||
:let [success, div] = Compute(102, 6)
|
||||
:if success == "ok"
|
||||
: echo div
|
||||
:endif
|
||||
<
|
||||
*:cal* *:call* *E107*
|
||||
:[range]cal[l] {name}([arguments])
|
||||
Call a function. The name of the function and its arguments
|
||||
are as specified with `:function`. Up to 20 arguments can be
|
||||
used. The returned value is discarded.
|
||||
In |Vim9| script using `:call` is optional, these two lines do
|
||||
the same thing: >
|
||||
call SomeFunc(arg)
|
||||
SomeFunc(arg)
|
||||
< Without a range and for functions that accept a range, the
|
||||
function is called once. When a range is given the cursor is
|
||||
positioned at the start of the first line before executing the
|
||||
function.
|
||||
When a range is given and the function doesn't handle it
|
||||
itself, the function is executed for each line in the range,
|
||||
with the cursor in the first column of that line. The cursor
|
||||
is left at the last line (possibly moved by the last function
|
||||
call). The arguments are re-evaluated for each line. Thus
|
||||
this works:
|
||||
*function-range-example* >
|
||||
:function Mynumber(arg)
|
||||
: echo line(".") .. " " .. a:arg
|
||||
:endfunction
|
||||
:1,5call Mynumber(getline("."))
|
||||
<
|
||||
The "a:firstline" and "a:lastline" are defined anyway, they
|
||||
can be used to do something different at the start or end of
|
||||
the range.
|
||||
|
||||
Example of a function that handles the range itself: >
|
||||
|
||||
:function Cont() range
|
||||
: execute (a:firstline + 1) .. "," .. a:lastline .. 's/^/\t\\ '
|
||||
:endfunction
|
||||
:4,8call Cont()
|
||||
<
|
||||
This function inserts the continuation character "\" in front
|
||||
of all the lines in the range, except the first one.
|
||||
|
||||
When the function returns a composite value it can be further
|
||||
dereferenced, but the range will not be used then. Example: >
|
||||
:4,8call GetDict().method()
|
||||
< Here GetDict() gets the range but method() does not.
|
||||
|
||||
*E117*
|
||||
When a function cannot be found the error "E117: Unknown function" will be
|
||||
given. If the function was using an autoload path or an autoload import and
|
||||
the script is a |Vim9| script, this may also be caused by the function not
|
||||
being exported.
|
||||
|
||||
*E132*
|
||||
The recursiveness of user functions is restricted with the |'maxfuncdepth'|
|
||||
option.
|
||||
|
||||
It is also possible to use `:eval`. It does not support a range, but does
|
||||
allow for method chaining, e.g.: >
|
||||
eval GetList()->Filter()->append('$')
|
||||
|
||||
A function can also be called as part of evaluating an expression or when it
|
||||
is used as a method: >
|
||||
let x = GetList()
|
||||
let y = GetList()->Filter()
|
||||
|
||||
|
||||
AUTOMATICALLY LOADING FUNCTIONS ~
|
||||
*autoload-functions*
|
||||
When using many or large functions, it's possible to automatically define them
|
||||
only when they are used. There are two methods: with an autocommand and with
|
||||
the "autoload" directory in 'runtimepath'.
|
||||
|
||||
|
||||
Using an autocommand ~
|
||||
|
||||
This is introduced in the user manual, section |51.4|.
|
||||
|
||||
The autocommand is useful if you have a plugin that is a long Vim script file.
|
||||
You can define the autocommand and quickly quit the script with `:finish`.
|
||||
That makes Vim startup faster. The autocommand should then load the same file
|
||||
again, setting a variable to skip the `:finish` command.
|
||||
|
||||
Use the FuncUndefined autocommand event with a pattern that matches the
|
||||
function(s) to be defined. Example: >
|
||||
|
||||
:au FuncUndefined BufNet* source ~/vim/bufnetfuncs.vim
|
||||
|
||||
The file "~/vim/bufnetfuncs.vim" should then define functions that start with
|
||||
"BufNet". Also see |FuncUndefined|.
|
||||
|
||||
|
||||
Using an autoload script ~
|
||||
*autoload* *E746*
|
||||
This is introduced in the user manual, section |52.2|.
|
||||
|
||||
Using a script in the "autoload" directory is simpler, but requires using
|
||||
exactly the right file name. A function that can be autoloaded has a name
|
||||
like this: >
|
||||
|
||||
:call filename#funcname()
|
||||
|
||||
These functions are always global, in Vim9 script "g:" needs to be used: >
|
||||
:call g:filename#funcname()
|
||||
|
||||
When such a function is called, and it is not defined yet, Vim will search the
|
||||
"autoload" directories in 'runtimepath' for a script file called
|
||||
"filename.vim". For example "~/.vim/autoload/filename.vim". That file should
|
||||
then define the function like this: >
|
||||
|
||||
function filename#funcname()
|
||||
echo "Done!"
|
||||
endfunction
|
||||
|
||||
The file name and the name used before the # in the function must match
|
||||
exactly, and the defined function must have the name exactly as it will be
|
||||
called. In Vim9 script the "g:" prefix must be used: >
|
||||
function g:filename#funcname()
|
||||
|
||||
or for a compiled function: >
|
||||
def g:filename#funcname()
|
||||
|
||||
It is possible to use subdirectories. Every # in the function name works like
|
||||
a path separator. Thus when calling a function: >
|
||||
|
||||
:call foo#bar#func()
|
||||
|
||||
Vim will look for the file "autoload/foo/bar.vim" in 'runtimepath'.
|
||||
|
||||
This also works when reading a variable that has not been set yet: >
|
||||
|
||||
:let l = foo#bar#lvar
|
||||
|
||||
However, when the autoload script was already loaded it won't be loaded again
|
||||
for an unknown variable.
|
||||
|
||||
When assigning a value to such a variable nothing special happens. This can
|
||||
be used to pass settings to the autoload script before it's loaded: >
|
||||
|
||||
:let foo#bar#toggle = 1
|
||||
:call foo#bar#func()
|
||||
|
||||
Note that when you make a mistake and call a function that is supposed to be
|
||||
defined in an autoload script, but the script doesn't actually define the
|
||||
function, you will get an error message for the missing function. If you fix
|
||||
the autoload script it won't be automatically loaded again. Either restart
|
||||
Vim or manually source the script.
|
||||
|
||||
Also note that if you have two script files, and one calls a function in the
|
||||
other and vice versa, before the used function is defined, it won't work.
|
||||
Avoid using the autoload functionality at the toplevel.
|
||||
|
||||
In |Vim9| script you will get error *E1263* if you define a function with
|
||||
a "#" character in the name. You should use a name without "#" and use
|
||||
`:export`.
|
||||
|
||||
Hint: If you distribute a bunch of scripts you can pack them together with the
|
||||
|vimball| utility. Also read the user manual |distribute-script|.
|
||||
You can find most information about defining functions in |userfunc.txt|.
|
||||
For Vim9 functions, which execute much faster, support type checking and more,
|
||||
see |vim9.txt|.
|
||||
|
||||
==============================================================================
|
||||
6. Curly braces names *curly-braces-names*
|
||||
@@ -3605,6 +3174,9 @@ text...
|
||||
iterate over. Unlike with |List|, modifying the
|
||||
|Blob| does not affect the iteration.
|
||||
|
||||
When {object} is a |String| each item is a string with
|
||||
one character, plus any combining characters.
|
||||
|
||||
In |Vim9| script `:endfor` cannot be shortened, to
|
||||
improve script readability.
|
||||
|
||||
@@ -3818,6 +3390,19 @@ text...
|
||||
:echomsg "It's a Zizzer Zazzer Zuzz, as you can plainly see."
|
||||
< See |:echo-redraw| to avoid the message disappearing
|
||||
when the screen is redrawn.
|
||||
|
||||
*:echow* *:echowin* *:echowindow*
|
||||
:echow[indow] {expr1} ..
|
||||
Like |:echomsg| but when the messages popup window is
|
||||
available the message is displayed there. This means
|
||||
it will show for three seconds and avoid a
|
||||
|hit-enter| prompt. If you want to hide it before
|
||||
that, press Esc in Normal mode (when it would
|
||||
otherwise beep). If it disappears too soon you can
|
||||
use `:messages` to see the text.
|
||||
The message window is available when Vim was compiled
|
||||
with the +timer and the +popupwin features.
|
||||
|
||||
*:echoe* *:echoerr*
|
||||
:echoe[rr] {expr1} .. Echo the expression(s) as an error message, saving the
|
||||
message in the |message-history|. When used in a
|
||||
|
||||
@@ -143,6 +143,7 @@ variables can be used to overrule the filetype used for certain extensions:
|
||||
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||
*.bas g:filetype_bas |ft-basic-syntax|
|
||||
*.cfg g:filetype_cfg
|
||||
*.cls g:filetype_cls
|
||||
*.csh g:filetype_csh |ft-csh-syntax|
|
||||
*.dat g:filetype_dat
|
||||
*.frm g:filetype_frm |ft-form-syntax|
|
||||
@@ -156,6 +157,7 @@ variables can be used to overrule the filetype used for certain extensions:
|
||||
*.pp g:filetype_pp |ft-pascal-syntax|
|
||||
*.prg g:filetype_prg
|
||||
*.r g:filetype_r
|
||||
*.sig g:filetype_sig
|
||||
*.sql g:filetype_sql |ft-sql-syntax|
|
||||
*.src g:filetype_src
|
||||
*.sys g:filetype_sys
|
||||
@@ -554,12 +556,30 @@ For further discussion of fortran_have_tabs and the method used for the
|
||||
detection of source format see |ft-fortran-syntax|.
|
||||
|
||||
|
||||
FREEBASIC *ft-freebasic-plugin*
|
||||
|
||||
This plugin aims to treat the four FreeBASIC dialects, "fb", "qb", "fblite"
|
||||
and "deprecated", as distinct languages.
|
||||
|
||||
The dialect will be set to the first name found in g:freebasic_forcelang, any
|
||||
#lang directive or $lang metacommand in the file being edited, or finally
|
||||
g:freebasic_lang. These global variables conceptually map to the fbc options
|
||||
-forcelang and -lang. If no dialect is explicitly specified "fb" will be
|
||||
used.
|
||||
|
||||
For example, to set the dialect to a default of "fblite" but still allow for
|
||||
any #lang directive overrides, use the following command: >
|
||||
|
||||
let g:freebasic_lang = "fblite"
|
||||
|
||||
|
||||
GIT COMMIT *ft-gitcommit-plugin*
|
||||
|
||||
One command, :DiffGitCached, is provided to show a diff of the current commit
|
||||
in the preview window. It is equivalent to calling "git diff --cached" plus
|
||||
any arguments given to the command.
|
||||
|
||||
|
||||
GPROF *ft-gprof-plugin*
|
||||
|
||||
The gprof filetype plugin defines a mapping <C-]> to jump from a function
|
||||
@@ -569,6 +589,7 @@ to the details of that function in the call graph.
|
||||
The mapping can be disabled with: >
|
||||
let g:no_gprof_maps = 1
|
||||
|
||||
|
||||
MAIL *ft-mail-plugin*
|
||||
|
||||
Options:
|
||||
|
||||
@@ -74,8 +74,6 @@ method. The value of the 'foldexpr' option is evaluated to get the foldlevel
|
||||
of a line. Examples:
|
||||
This will create a fold for all consecutive lines that start with a tab: >
|
||||
:set foldexpr=getline(v:lnum)[0]==\"\\t\"
|
||||
This will call a function to compute the fold level: >
|
||||
:set foldexpr=MyFoldLevel(v:lnum)
|
||||
This will make a fold out of paragraphs separated by blank lines: >
|
||||
:set foldexpr=getline(v:lnum)=~'^\\s*$'&&getline(v:lnum+1)=~'\\S'?'<1':1
|
||||
This does the same: >
|
||||
@@ -84,6 +82,10 @@ This does the same: >
|
||||
Note that backslashes must be used to escape characters that ":set" handles
|
||||
differently (space, backslash, double quote, etc., see |option-backslash|).
|
||||
|
||||
The most efficient is to call a compiled function without arguments: >
|
||||
:set foldexpr=MyFoldLevel()
|
||||
The function must use v:lnum. See |expr-option-function|.
|
||||
|
||||
These are the conditions with which the expression is evaluated:
|
||||
- The current buffer and window are set for the line.
|
||||
- The variable "v:lnum" is set to the line number.
|
||||
|
||||
158
runtime/doc/ft_context.txt
Normal file
158
runtime/doc/ft_context.txt
Normal file
@@ -0,0 +1,158 @@
|
||||
*ft_context.txt* For Vim version 9.0. Last change: 2022 Sep 27
|
||||
|
||||
This is the documentation for the ConTeXt filetype plugin.
|
||||
|
||||
NOTE: the plugin requires +vim9script.
|
||||
|
||||
==============================================================================
|
||||
CONTENTS *context.vim* *ft-context*
|
||||
|
||||
1. Introduction |ft-context-intro|
|
||||
2. Commands |ft-context-commands|
|
||||
3. Settings |ft-context-settings|
|
||||
4. Mappings |ft-context-mappings|
|
||||
|
||||
==============================================================================
|
||||
*ft-context-intro*
|
||||
Introduction ~
|
||||
|
||||
ConTeXt, similarly to LaTeX, is a macro-based typesetting system built on TeX:
|
||||
>
|
||||
https://wiki.contextgarden.net
|
||||
https://wiki.contextgarden.net/Vim
|
||||
<
|
||||
The ConTeXt plugin provides syntax highlighting, completion and support for
|
||||
typesetting ConTeXt documents. The recommended way to typeset a document is to
|
||||
use |:ConTeXt|. This will invoke the `mtxrun` script that is found in `$PATH`.
|
||||
|
||||
For more fine grained control over the command and its environment,
|
||||
`context.Typeset()` can be used directly (or `context#Typeset()` from legacy
|
||||
Vim script). For instance, if a version of ConTeXt is installed in
|
||||
`~/context`, you may define a function to use it similar to the following:
|
||||
>
|
||||
import autoload 'context.vim'
|
||||
|
||||
def MyConTeXt()
|
||||
const env = {'PATH':
|
||||
printf("%s/context/tex/texmf-<os>-<arch>/bin:%s", $HOME, $PATH)}
|
||||
context.Typeset("%", env)
|
||||
enddef
|
||||
|
||||
This code may go in `~/.vim/after/ftplugin/context.vim`. A mapping can then be
|
||||
defined to invoke the custom command:
|
||||
>
|
||||
nnoremap <silent><buffer><leader>t <scriptcmd>MyConTeXt()<cr>
|
||||
<
|
||||
`context.Typeset()` accepts a third optional argument to specify a custom
|
||||
typesetting command. That must be a function that takes a path and returns the
|
||||
command as a List. For example:
|
||||
>
|
||||
def ConTeXtCustomCommand(path: string): list<string>
|
||||
return ['mtxrun', '--script', 'context', '--nonstopmode, path]
|
||||
enddef
|
||||
|
||||
context.ConTeXtTypeset("%", v:none, ConTeXtCustomCommand)
|
||||
<
|
||||
Large projects are often organized as a root document and various chapter
|
||||
files. When editing a chapter file, it is convenient to invoke |:ConTeXt|
|
||||
directly on it, rather than having to switch to the root file. A "magic line"
|
||||
can be added at the beginning of each chapter file, which specifies the
|
||||
relative path to the root file. For instance:
|
||||
>
|
||||
% !TEX root = ../MyRoot.tex
|
||||
<
|
||||
Vim searches for the magic line in the first ten lines of the current buffer:
|
||||
if it is found, the document specified by that line is typeset rather than the
|
||||
one in the current buffer. The root document does not have to be opened in
|
||||
Vim.
|
||||
|
||||
To extend completion and syntax highlighting, you may generate supporting
|
||||
files using ConTeXt and add them to your configuration. If you configuration
|
||||
resides in `~/.vim`, you may use these commands:
|
||||
>
|
||||
mkdir -p ~/.vim/syntax/shared
|
||||
cd ~/.vim/syntax/shared
|
||||
mtxrun --script interface --vim
|
||||
<
|
||||
The last command will create the following syntax files:
|
||||
|
||||
- `context-data-context.vim`;
|
||||
- `context-data-interfaces.vim`;
|
||||
- `context-data-metafun.vim`;
|
||||
- `context-data-tex.vim`.
|
||||
|
||||
The same command can be used to update those syntax files.
|
||||
|
||||
*ft-context-commands*
|
||||
Commands ~
|
||||
*:ConTeXt*
|
||||
Start a background |job| to typeset the document in the current buffer. The
|
||||
command accepts an optional buffer's name, if you want to typeset a document
|
||||
that is in a different buffer.
|
||||
|
||||
*:ConTeXtLog*
|
||||
Edit the log file corresponding to the source in the current buffer.
|
||||
|
||||
*:ConTeXtJobsStatus*
|
||||
Echo the number of jobs currently running in the background.
|
||||
|
||||
*:ConTeXtStopJobs*
|
||||
Stop all the ConTeXt jobs currently running in the background.
|
||||
|
||||
*ft-context-settings*
|
||||
Settings ~
|
||||
*'b:context_ignore_makefile'*
|
||||
*'g:context_ignore_makefile'*
|
||||
`:make` can be used to (synchronously) typeset a document. If a Makefile exists
|
||||
and this option is not set, standard `make` is used. If this option is set,
|
||||
`mtxrun` is invoked instead, even if a Makefile exists.
|
||||
>
|
||||
g:context_ignore_makefile = 0
|
||||
<
|
||||
NOTE: before using `:make`, set the working directory of the buffer to the
|
||||
directory of the file to be typeset.
|
||||
|
||||
*'g:context_extra_options'*
|
||||
A list of additional options to pass to `mtxrun`.
|
||||
>
|
||||
g:context_extra_options = []
|
||||
<
|
||||
*'b:context_include'*
|
||||
*'g:context_include'*
|
||||
Dictionary of filetype/GROUP pairs for which syntax highlighting should be
|
||||
activated between \startGROUP and \stopGROUP. The default is to highlight XML
|
||||
between `\startXML` and `\stopXML`.
|
||||
>
|
||||
g:context_include = {'xml': 'XML'}
|
||||
|
||||
NOTE: Lua and MetaPost are always highlighted within the respective blocks.
|
||||
|
||||
*'g:no_context_maps'*
|
||||
When set, do not define any mappings.
|
||||
>
|
||||
g:no_context_maps = 0
|
||||
<
|
||||
*ft-context-mappings*
|
||||
Mappings ~
|
||||
|
||||
tp "reflow TeX paragraph".
|
||||
|
||||
i$ "inside inline math block".
|
||||
|
||||
a$ "around inline math block".
|
||||
|
||||
]] [count] start of sections forward.
|
||||
|
||||
[[ [count] start of sections backward.
|
||||
|
||||
][ [count] end sections forward.
|
||||
|
||||
[] [count] end of sections backward.
|
||||
|
||||
]} [count] end of blocks (\stop..., \setup...,
|
||||
\define...) forward.
|
||||
|
||||
[{ [count] begin of blocks (\start..., \setup...,
|
||||
\define...) backward.
|
||||
|
||||
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
|
||||
151
runtime/doc/ft_mp.txt
Normal file
151
runtime/doc/ft_mp.txt
Normal file
@@ -0,0 +1,151 @@
|
||||
*ft_mp.txt* For Vim version 9.0. Last change: 2022 Aug 12
|
||||
|
||||
This is the documentation for the METAFONT and MetaPost filetype plugins.
|
||||
Unless otherwise specified, the commands, settings and mappings defined below
|
||||
apply equally to both filetypes.
|
||||
|
||||
NOTE: the plugin requires +vim9script.
|
||||
|
||||
==============================================================================
|
||||
CONTENTS *mp.vim* *ft-metapost*
|
||||
*mf.vim* *ft-metafont*
|
||||
|
||||
1. Introduction |ft-metapost-intro|
|
||||
2. Commands |ft-metapost-commands|
|
||||
3. Settings |ft-metapost-settings|
|
||||
4. Mappings |ft-metapost-mappings|
|
||||
|
||||
==============================================================================
|
||||
*ft-metapost-intro*
|
||||
*ft-metafont-intro*
|
||||
Introduction ~
|
||||
This filetype plugin provides extensive support for editing METAFONT and
|
||||
MetaPost documents, including syntax coloring, indentation, and completion.
|
||||
|
||||
Defining indentation rules for METAFONT and MetaPost code is tricky and
|
||||
somewhat subjective, because the syntax is quite liberal. The plugin uses some
|
||||
heuristics that work well most of the time, but in particular cases you may
|
||||
want to to override the automatic rules, so that the manually defined
|
||||
indentation is preserved by commands like `gg=G`.
|
||||
|
||||
This can be achieved by appending `%>`, `%<`, `%=` or `%!` to a line to
|
||||
explicitly control the indentation of the next line. The `<` and `>` symbols
|
||||
may be repeated many times: for instance, `%>>` will cause the next line to be
|
||||
indented twice. Of course, `%<` means that the next line should be
|
||||
de-indented; `%=` sets the indentation of the next line to be equal to the
|
||||
indentation of the current line; and `%!` means that the indentation of the
|
||||
next line should not change from whatever it has been manually set.
|
||||
|
||||
For example, this is the default indentation of a simple macro:
|
||||
>
|
||||
def foo =
|
||||
makepen(
|
||||
subpath(T-n,t) of r
|
||||
shifted .5down
|
||||
--subpath(t,T) of r shifted .5up -- cycle
|
||||
)
|
||||
withcolor black
|
||||
enddef
|
||||
<
|
||||
By adding the special comments, the indentation can be adjusted arbitrarily:
|
||||
>
|
||||
def foo =
|
||||
makepen(
|
||||
subpath(T-n,t) of r %>
|
||||
shifted .5down %>
|
||||
--subpath(t,T) of r shifted .5up -- cycle %<<<
|
||||
)
|
||||
withcolor black
|
||||
enddef
|
||||
<
|
||||
*ft-metapost-commands*
|
||||
Commands ~
|
||||
*:FixBeginfigs*
|
||||
Renumber beginfig() blocks in the current buffer so that the n-th figure has
|
||||
number n. MetaPost only.
|
||||
|
||||
*ft-metapost-settings*
|
||||
*ft-metafont-settings*
|
||||
Settings ~
|
||||
*'g:mf_other_macros'*
|
||||
Highlight some other basic macro names, e.g., from cmbase, logo, etc. This is
|
||||
set to 1 by default in METAFONT buffers, and it is set to 0 by default in
|
||||
MetaPost buffers.
|
||||
|
||||
*'g:mf_plain_macros'*
|
||||
Highlight keywords defined by plain.mf. This is set to 1 by default in
|
||||
METAFONT buffers, and it is set to 0 by default in MetaPost buffers.
|
||||
|
||||
*'g:mf_plain_modes'*
|
||||
Highlight keywords defined by modes.mf. This is set to 1 by default in
|
||||
METAFONT buffers, and it is set to 0 by default in MetaPost buffers.
|
||||
|
||||
*'g:mp_close_tag'*
|
||||
Define additional keywords that end indented blocks. For instance, if you
|
||||
define:
|
||||
>
|
||||
g:mp_end_tag = ['\<endfoo\>']
|
||||
<
|
||||
any line starting with `endfoo` will be de-indented compared to its previous
|
||||
line.
|
||||
>
|
||||
g:mp_close_tag = []
|
||||
<
|
||||
*'b:mp_metafun'*
|
||||
*'g:mp_metafun'*
|
||||
If set to 1, highlight ConTeXt's MetaFun keywords. MetaPost only.
|
||||
>
|
||||
g:mp_metafun = 0
|
||||
<
|
||||
*'g:mp_mfplain_macros'*
|
||||
Highlight keywords defined by mfplain.mp. MetaPost only.
|
||||
>
|
||||
g:mp_mfplain_macros = 1
|
||||
<
|
||||
*'g:mp_open_tag'*
|
||||
Define additional keywords that start indented blocks. For instance, if you
|
||||
define:
|
||||
>
|
||||
g:mp_open_tag = ['\<beginfoo\>']
|
||||
<
|
||||
the line following `beginfoo` will be indented.
|
||||
>
|
||||
g:mp_open_tag = []
|
||||
<
|
||||
*'g:mp_other_macros'*
|
||||
Highlight keywords defined by all base macro packages (boxes, rboxes, format,
|
||||
graph, marith, sarith, string, TEX). This option affects only MetaPost
|
||||
buffers.
|
||||
>
|
||||
g:mp_other_macros = 1
|
||||
<
|
||||
*'g:mp_plain_macros'*
|
||||
Highlight keywords defined by plain.mp. MetaPost only.
|
||||
>
|
||||
g:mp_plain_macros = 1
|
||||
<
|
||||
*'g:no_mp_maps'*
|
||||
*'g:no_mf_maps'*
|
||||
When set, do not define any mapping in buffers with the corresponding
|
||||
filetype.
|
||||
>
|
||||
g:no_mp_maps = 0
|
||||
g:no_mf_maps = 0
|
||||
<
|
||||
*ft-metapost-mappings*
|
||||
*ft-metafont-mappings*
|
||||
Mappings ~
|
||||
|
||||
]] [count] vardefs, macros or figures forward.
|
||||
|
||||
[[ [count] vardefs, macros or figures backward.
|
||||
|
||||
][ [count] end of vardefs, macros or figures forward.
|
||||
|
||||
[] [count] end of vardefs, macros or figures backward.
|
||||
|
||||
]} [count] end of blocks (fi, endfor, endgroup) forward.
|
||||
|
||||
[{ [count] begin of blocks (if, for, begingroup) backward.
|
||||
|
||||
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
|
||||
@@ -506,7 +506,7 @@ documentation.
|
||||
Assuming you have followed the dbext-tutorial you can press <C-C>t to
|
||||
display a list of tables. There is a delay while dbext is creating the table
|
||||
list. After the list is displayed press <C-W>. This will remove both the
|
||||
popup window and the table name already chosen when the list became active. >
|
||||
popup window and the table name already chosen when the list became active.
|
||||
|
||||
4.3.1 Table Completion: *sql-completion-tables*
|
||||
|
||||
@@ -514,7 +514,7 @@ Press <C-C>t to display a list of tables from within the database you
|
||||
have connected via the dbext plugin.
|
||||
NOTE: All of the SQL completion popups support typing a prefix before pressing
|
||||
the key map. This will limit the contents of the popup window to just items
|
||||
beginning with those characters. >
|
||||
beginning with those characters.
|
||||
|
||||
4.3.2 Column Completion: *sql-completion-columns*
|
||||
|
||||
@@ -587,13 +587,13 @@ popup a list of columns for the customer table. It does this by looking back
|
||||
to the beginning of the select statement and finding a list of the tables
|
||||
specified in the FROM clause. In this case it notes that in the string
|
||||
"customer c", "c" is an alias for the customer table. The optional "AS"
|
||||
keyword is also supported, "customer AS c". >
|
||||
keyword is also supported, "customer AS c".
|
||||
|
||||
|
||||
4.3.3 Procedure Completion: *sql-completion-procedures*
|
||||
|
||||
Similar to the table list, <C-C>p, will display a list of stored
|
||||
procedures stored within the database. >
|
||||
procedures stored within the database.
|
||||
|
||||
4.3.4 View Completion: *sql-completion-views*
|
||||
|
||||
|
||||
@@ -106,8 +106,7 @@ when you have got a new version):
|
||||
You can also install Vim in the "Send To" menu:
|
||||
1. Start a Windows Explorer
|
||||
2. Navigate to your sendto directory:
|
||||
Windows XP: C:\Documents and Settings\%user%\SendTo
|
||||
Windows Vista: C:\Users\%user%\AppData\Roaming\Microsoft\Windows\SendTo .
|
||||
C:\Users\%user%\AppData\Roaming\Microsoft\Windows\SendTo .
|
||||
3. Right-click in the file pane and select New->Shortcut
|
||||
4. Follow the shortcut wizard, using the full path to VIM/GVIM.
|
||||
|
||||
|
||||
@@ -679,6 +679,9 @@ Of these three, Vim uses PRIMARY when reading and writing the "* register
|
||||
|'clipboard'| of "autoselect"), and CLIPBOARD when reading and writing the "+
|
||||
register. Vim does not access the SECONDARY selection.
|
||||
|
||||
This applies both to the GUI and the terminal version. For non-X11 systems
|
||||
the plus and the star register both use the system clipboard.
|
||||
|
||||
Examples: (assuming the default option values)
|
||||
- Select a URL in Visual mode in Vim. Go to your browser and click the
|
||||
middle mouse button in the URL text field. The selected text will be
|
||||
|
||||
@@ -26,6 +26,7 @@ Get specific help: It is possible to go directly to whatever you want help
|
||||
Option ' :help 'textwidth'
|
||||
Regular expression / :help /[
|
||||
See |help-summary| for more contexts and an explanation.
|
||||
See |notation| for an explanation of the help syntax.
|
||||
|
||||
Search for help: Type ":help word", then hit CTRL-D to see matching
|
||||
help entries for "word".
|
||||
@@ -140,6 +141,7 @@ Advanced editing ~
|
||||
|autocmd.txt| automatically executing commands on an event
|
||||
|eval.txt| expression evaluation, conditional commands
|
||||
|builtin.txt| builtin functions
|
||||
|userfunc.txt| defining user functions
|
||||
|channel.txt| Jobs, Channels, inter-process communication
|
||||
|fold.txt| hide (fold) ranges of lines
|
||||
|
||||
|
||||
@@ -983,25 +983,38 @@ indentation: >
|
||||
PYTHON *ft-python-indent*
|
||||
|
||||
The amount of indent can be set for the following situations. The examples
|
||||
given are the defaults. Note that the variables are set to an expression, so
|
||||
that you can change the value of 'shiftwidth' later.
|
||||
given are the defaults. Note that the dictionary values are set to an
|
||||
expression, so that you can change the value of 'shiftwidth' later.
|
||||
|
||||
Indent after an open paren: >
|
||||
let g:pyindent_open_paren = 'shiftwidth() * 2'
|
||||
let g:python_indent.open_paren = 'shiftwidth() * 2'
|
||||
Indent after a nested paren: >
|
||||
let g:pyindent_nested_paren = 'shiftwidth()'
|
||||
let g:python_indent.nested_paren = 'shiftwidth()'
|
||||
Indent for a continuation line: >
|
||||
let g:pyindent_continue = 'shiftwidth() * 2'
|
||||
let g:python_indent.continue = 'shiftwidth() * 2'
|
||||
|
||||
By default, the closing paren on a multiline construct lines up under the first
|
||||
non-whitespace character of the previous line.
|
||||
If you prefer that it's lined up under the first character of the line that
|
||||
starts the multiline construct, reset this key: >
|
||||
let g:python_indent.closed_paren_align_last_line = v:false
|
||||
|
||||
The method uses |searchpair()| to look back for unclosed parentheses. This
|
||||
can sometimes be slow, thus it timeouts after 150 msec. If you notice the
|
||||
indenting isn't correct, you can set a larger timeout in msec: >
|
||||
let g:pyindent_searchpair_timeout = 500
|
||||
let g:python_indent.searchpair_timeout = 500
|
||||
|
||||
If looking back for unclosed parenthesis is still too slow, especially during
|
||||
a copy-paste operation, or if you don't need indenting inside multi-line
|
||||
parentheses, you can completely disable this feature: >
|
||||
let g:pyindent_disable_parentheses_indenting = 1
|
||||
let g:python_indent.disable_parentheses_indenting = 1
|
||||
|
||||
For backward compatibility, these variables are also supported: >
|
||||
g:pyindent_open_paren
|
||||
g:pyindent_nested_paren
|
||||
g:pyindent_continue
|
||||
g:pyindent_searchpair_timeout
|
||||
g:pyindent_disable_parentheses_indenting
|
||||
|
||||
|
||||
R *ft-r-indent*
|
||||
@@ -1214,13 +1227,31 @@ comments will be indented according to the correctly indented code.
|
||||
|
||||
|
||||
VIM *ft-vim-indent*
|
||||
*g:vim_indent*
|
||||
Vim scripts indentation can be configured with the `g:vim_indent` dictionary
|
||||
variable. It supports 3 keys, `line_continuation`, `more_in_bracket_block`,
|
||||
and `searchpair_timeout`.
|
||||
`line_continuation` expects a number which will be added to the indent level of
|
||||
a continuation line starting with a backslash, and defaults to
|
||||
`shiftwidth() * 3`. It also accepts a string, which is evaluated at runtime.
|
||||
`more_in_bracket_block` expects a boolean value; when on, an extra
|
||||
`shiftwidth()` is added inside blocks surrounded with brackets. It defaults to
|
||||
`v:false`.
|
||||
`searchpair_timeout` expects a number which will be passed to `searchpair()` as
|
||||
a timeout. Increasing the value might give more accurate results, but also
|
||||
causes the indentation to take more time. It defaults to 100 (milliseconds).
|
||||
|
||||
Example of configuration:
|
||||
|
||||
let g:vim_indent = #{
|
||||
\ line_continuation: shiftwidth() * 3,
|
||||
\ more_in_bracket_block: v:false,
|
||||
\ searchpair_timeout: 100,
|
||||
\ }
|
||||
|
||||
*g:vim_indent_cont*
|
||||
For indenting Vim scripts there is one variable that specifies the amount of
|
||||
indent for a continuation line, a line that starts with a backslash: >
|
||||
|
||||
:let g:vim_indent_cont = shiftwidth() * 3
|
||||
|
||||
Three times shiftwidth is the default value.
|
||||
This variable is equivalent to `g:vim_indent.line_continuation`.
|
||||
It's supported for backward compatibility.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -388,10 +388,10 @@ CTRL-G CTRL-J cursor one line down, insert start column *i_CTRL-G_CTRL-J*
|
||||
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, if the cursor stays within the
|
||||
same line
|
||||
CTRL-G u close undo sequence, start new change *i_CTRL-G_u*
|
||||
CTRL-G U don't start a new undo block with the next *i_CTRL-G_U*
|
||||
left/right cursor movement, if the cursor
|
||||
stays within the same line
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
Note: If the cursor keys take you out of Insert mode, check the 'noesckeys'
|
||||
@@ -428,8 +428,8 @@ that, with CTRL-O u. Another example: >
|
||||
|
||||
:inoremap <CR> <C-]><C-G>u<CR>
|
||||
|
||||
This breaks undo at each line break. It also expands abbreviations before
|
||||
this.
|
||||
This starts a new undo block at each line break. It also expands
|
||||
abbreviations before this.
|
||||
|
||||
An example for using CTRL-G U: >
|
||||
|
||||
@@ -443,9 +443,9 @@ An example for using CTRL-G U: >
|
||||
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):
|
||||
This makes it possible to use the cursor keys in Insert mode, without starting
|
||||
a new undo block and therefore using |.| (redo) will work as expected. Also
|
||||
entering a text like (with the "(" mapping from above):
|
||||
|
||||
Lorem ipsum (dolor
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 9.0. Last change: 2022 Apr 03
|
||||
*intro.txt* For Vim version 9.0. Last change: 2022 Sep 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -533,6 +533,10 @@ examples and use them directly. Or type them literally, including the '<' and
|
||||
'>' characters. This does NOT work for other commands, like ":set" and
|
||||
":autocmd"!
|
||||
|
||||
The notation can be used in a double quoted strings, using "\<" at the start,
|
||||
e.g. "\<C-Space>". This results in a special key code. To convert this back
|
||||
to readable text use `keytrans()`.
|
||||
|
||||
==============================================================================
|
||||
5. Modes, introduction *vim-modes-intro* *vim-modes*
|
||||
|
||||
@@ -697,7 +701,8 @@ Q Switch to "Ex" mode. This is a bit like typing ":"
|
||||
line-input editing commands (<Del> or <BS> to erase,
|
||||
CTRL-U to kill the whole line).
|
||||
Vim will enter this mode by default if it's invoked as
|
||||
"ex" on the command-line.
|
||||
"ex" on the command-line or the |-e| command line
|
||||
argument was used.
|
||||
Use the ":vi" command |:visual| to exit "Ex" mode.
|
||||
Note: In older versions of Vim "Q" formatted text,
|
||||
that is now done with |gq|. But if you use the
|
||||
@@ -708,7 +713,7 @@ Q Switch to "Ex" mode. This is a bit like typing ":"
|
||||
gQ Switch to "Ex" mode like with "Q", but really behave
|
||||
like typing ":" commands after another. All command
|
||||
line editing, completion etc. is available.
|
||||
Use the ":vi" command |:visual| to exit "Ex" mode.
|
||||
Use the `:vi` command (`:visual`) to exit "Ex" mode.
|
||||
|
||||
==============================================================================
|
||||
7. The window contents *window-contents*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 9.0. Last change: 2022 Jun 18
|
||||
*map.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -374,15 +374,17 @@ command: it is executed as if an (unrestricted) |autocommand| was invoked.
|
||||
<ScriptCmd> is like <Cmd> but sets the context to the script the mapping was
|
||||
defined in, for the duration of the command execution. This is especially
|
||||
useful for |Vim9| script. It also works to access an import, which is useful
|
||||
in a plugin using an autoload script: >
|
||||
in a plugin using a, possibly autoloaded, script: >
|
||||
vim9script
|
||||
import autoload 'implementation.vim' as impl
|
||||
nnoremap <F4> <ScriptCmd>impl.DoTheWork()<CR>
|
||||
|
||||
<
|
||||
No matter where <F4> is typed, the "impl" import will be found in the script
|
||||
context of where the mapping was defined. And since it's an autoload import,
|
||||
the "implementation.vim" script will only be loaded once <F4> is typed, not
|
||||
when the mapping is defined.
|
||||
context of where the mapping was defined. When it's an autoload import, as in
|
||||
the example, the "implementation.vim" script will only be loaded once <F4> is
|
||||
typed, not when the mapping is defined.
|
||||
|
||||
Without <ScriptCmd> using "s:impl" would result in "E121: Undefined variable".
|
||||
|
||||
Note:
|
||||
- Because <Cmd> and <ScriptCmd> avoid mode-changes it does not trigger
|
||||
@@ -680,19 +682,22 @@ two bytes 0xc3 0xa1. You don't want the 0xc3 byte to be mapped then or
|
||||
otherwise it would be impossible to type the á character.
|
||||
|
||||
*<Leader>* *mapleader*
|
||||
To define a mapping which uses the "mapleader" variable, the special string
|
||||
"<Leader>" can be used. It is replaced with the string value of "mapleader".
|
||||
If "mapleader" is not set or empty, a backslash is used instead. Example: >
|
||||
:map <Leader>A oanother line<Esc>
|
||||
To define a mapping which uses the "g:mapleader" variable, the special string
|
||||
"<Leader>" can be used. It is replaced with the string value of
|
||||
"g:mapleader". If "g:mapleader" is not set or empty, a backslash is used
|
||||
instead. Example: >
|
||||
map <Leader>A oanother line<Esc>
|
||||
Works like: >
|
||||
:map \A oanother line<Esc>
|
||||
But after: >
|
||||
:let mapleader = ","
|
||||
map \A oanother line<Esc>
|
||||
But after (legacy script): >
|
||||
let mapleader = ","
|
||||
Or (Vim9 script): >
|
||||
g:mapleader = ","
|
||||
It works like: >
|
||||
:map ,A oanother line<Esc>
|
||||
map ,A oanother line<Esc>
|
||||
|
||||
Note that the value of "mapleader" is used at the moment the mapping is
|
||||
defined. Changing "mapleader" after that has no effect for already defined
|
||||
Note that the value of "g:mapleader" is used at the moment the mapping is
|
||||
defined. Changing "g:mapleader" after that has no effect for already defined
|
||||
mappings.
|
||||
|
||||
*<LocalLeader>* *maplocalleader*
|
||||
@@ -1578,7 +1583,7 @@ completion candidates as the return value.
|
||||
|
||||
For the "custom" argument, the function should return the completion
|
||||
candidates one per line in a newline separated string.
|
||||
|
||||
*E1303*
|
||||
For the "customlist" argument, the function should return the completion
|
||||
candidates as a Vim List. Non-string items in the list are ignored.
|
||||
|
||||
@@ -1719,12 +1724,12 @@ The valid escape sequences are
|
||||
*<mods>* *<q-mods>* *:command-modifiers*
|
||||
<mods> The command modifiers, if specified. Otherwise, expands to
|
||||
nothing. Supported modifiers are |:aboveleft|, |:belowright|,
|
||||
|:botright|, |:browse|, |:confirm|, |:hide|, |:keepalt|,
|
||||
|:keepjumps|, |:keepmarks|, |:keeppatterns|, |:leftabove|,
|
||||
|:lockmarks|, |:noswapfile| |:rightbelow|, |:silent|, |:tab|,
|
||||
|:topleft|, |:verbose|, and |:vertical|.
|
||||
Note that these are not yet supported: |:noautocmd|,
|
||||
|:sandbox| and |:unsilent|.
|
||||
|:botright|, |:browse|, |:confirm|, |:hide|, |:horizontal|,
|
||||
|:keepalt|, |:keepjumps|, |:keepmarks|, |:keeppatterns|,
|
||||
|:leftabove|, |:lockmarks|, |:noautocmd|, |:noswapfile|
|
||||
|:rightbelow|, |:sandbox|, |:silent|, |:tab|, |:topleft|,
|
||||
|:unsilent|, |:verbose|, and |:vertical|.
|
||||
Note that |:filter| is not supported.
|
||||
Examples: >
|
||||
command! -nargs=+ -complete=file MyEdit
|
||||
\ for f in expand(<q-args>, 0, 1) |
|
||||
@@ -1756,7 +1761,8 @@ The valid escape sequences are
|
||||
If the first two characters of an escape sequence are "q-" (for example,
|
||||
<q-args>) then the value is quoted in such a way as to make it a valid value
|
||||
for use in an expression. This uses the argument as one single value.
|
||||
When there is no argument <q-args> is an empty string.
|
||||
When there is no argument <q-args> is an empty string. See the
|
||||
|q-args-example| below.
|
||||
*<f-args>*
|
||||
To allow commands to pass their arguments on to a user-defined function, there
|
||||
is a special form <f-args> ("function args"). This splits the command
|
||||
@@ -1766,7 +1772,7 @@ See the Mycmd example below. If no arguments are given <f-args> is removed.
|
||||
To embed whitespace into an argument of <f-args>, prepend a backslash.
|
||||
<f-args> replaces every pair of backslashes (\\) with one backslash. A
|
||||
backslash followed by a character other than white space or a backslash
|
||||
remains unmodified. Overview:
|
||||
remains unmodified. Also see |f-args-example| below. Overview:
|
||||
|
||||
command <f-args> ~
|
||||
XX ab 'ab'
|
||||
@@ -1780,7 +1786,8 @@ remains unmodified. Overview:
|
||||
XX a\\\\b 'a\\b'
|
||||
XX a\\\\ b 'a\\', 'b'
|
||||
|
||||
Examples >
|
||||
|
||||
Examples for user commands: >
|
||||
|
||||
" Delete everything after here to the end
|
||||
:com Ddel +,$d
|
||||
@@ -1796,7 +1803,8 @@ Examples >
|
||||
" Count the number of lines in the range
|
||||
:com! -range -nargs=0 Lines echo <line2> - <line1> + 1 "lines"
|
||||
|
||||
" Call a user function (example of <f-args>)
|
||||
< *f-args-example*
|
||||
Call a user function (example of <f-args>) >
|
||||
:com -nargs=* Mycmd call Myfunc(<f-args>)
|
||||
|
||||
When executed as: >
|
||||
@@ -1804,7 +1812,8 @@ When executed as: >
|
||||
This will invoke: >
|
||||
:call Myfunc("arg1","arg2")
|
||||
|
||||
:" A more substantial example
|
||||
< *q-args-example*
|
||||
A more substantial example: >
|
||||
:function Allargs(command)
|
||||
: let i = 0
|
||||
: while i < argc()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mlang.txt* For Vim version 9.0. Last change: 2020 Aug 15
|
||||
*mlang.txt* For Vim version 9.0. Last change: 2022 Sep 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -82,9 +82,9 @@ use of "-" and "_".
|
||||
characters. This sets $LC_COLLATE.
|
||||
Without an argument all are set, and additionally
|
||||
$LANG is set.
|
||||
When compiled with the |+float| feature the LC_NUMERIC
|
||||
value will always be set to "C", so that floating
|
||||
point numbers use '.' as the decimal point.
|
||||
If available the LC_NUMERIC value will always be set
|
||||
to "C", so that floating point numbers use '.' as the
|
||||
decimal point.
|
||||
This will make a difference for items that depend on
|
||||
the language (some messages, time and date format).
|
||||
Not fully supported on all systems
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 9.0. Last change: 2022 Apr 18
|
||||
*motion.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -532,8 +532,6 @@ including white space, the commands starting with "i" select an "inner" object
|
||||
without white space, or just the white space. Thus the "inner" commands
|
||||
always select less text than the "a" commands.
|
||||
|
||||
These commands are not available when the |+textobjects| feature has been
|
||||
disabled at compile time.
|
||||
Also see `gn` and `gN`, operating on the last search pattern.
|
||||
|
||||
*v_aw* *aw*
|
||||
@@ -612,7 +610,8 @@ i) *v_i)* *i)* *i(*
|
||||
i( *vib* *v_ib* *v_i(* *ib*
|
||||
ib "inner block", select [count] blocks, from "[count] [("
|
||||
to the matching ')', excluding the '(' and ')' (see
|
||||
|[(|).
|
||||
|[(|). If the cursor is not inside a () block, then
|
||||
find the next "(".
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
a> *v_a>* *v_a<* *a>* *a<*
|
||||
@@ -633,6 +632,7 @@ at "a tag block", select [count] tag blocks, from the
|
||||
"</aaa>", including the "<aaa>" and "</aaa>".
|
||||
See |tag-blocks| about the details.
|
||||
When used in Visual mode it is made characterwise.
|
||||
Only available when compiled with the |+eval| feature.
|
||||
|
||||
*v_it* *it*
|
||||
it "inner tag block", select [count] tag blocks, from the
|
||||
@@ -1145,7 +1145,7 @@ g; Go to [count] older position in change list.
|
||||
(not a motion command)
|
||||
|
||||
*g,* *E663*
|
||||
g, Go to [count] newer cursor position in change list.
|
||||
g, Go to [count] newer position in change list.
|
||||
Just like |g;| but in the opposite direction.
|
||||
(not a motion command)
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 9.0. Last change: 2022 Jun 27
|
||||
*options.txt* For Vim version 9.0. Last change: 2022 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -799,7 +799,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When on, Vim will change the current working directory whenever you
|
||||
open a file, switch buffers, delete a buffer or open/close a window.
|
||||
It will change to the directory containing the file which was opened
|
||||
or selected.
|
||||
or selected. When a buffer has no name it also has no directory, thus
|
||||
the current directory won't change when navigating to it.
|
||||
Note: When this option is on some plugins may not work.
|
||||
|
||||
*'autoshelldir'* *'asd'* *'noautoshelldir'* *'noasd'*
|
||||
@@ -808,8 +809,33 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When on, Vim will change the current working directory whenever you
|
||||
change the directory of the shell running in a terminal window. You
|
||||
need proper setting-up, so whenever the shell's pwd changes an OSC 7
|
||||
escape sequence will be emitted. For example, on Linux, you can source
|
||||
/etc/profile.d/vte.sh in your shell profile if you use bash or zsh.
|
||||
escape sequence will be emitted. For example, on Linux, you can
|
||||
source /etc/profile.d/vte.sh in your shell profile if you use bash or
|
||||
zsh. For bash this should work (put it in a bash init file): >
|
||||
if [[ -n "$VIM_TERMINAL" ]]; then
|
||||
PROMPT_COMMAND='_vim_sync_PWD'
|
||||
function _vim_sync_PWD() {
|
||||
printf '\033]7;file://%s\033\\' "$PWD"
|
||||
}
|
||||
fi
|
||||
<
|
||||
Or, in a zsh init file: >
|
||||
if [[ -n "$VIM_TERMINAL" ]]; then
|
||||
autoload -Uz add-zsh-hook
|
||||
add-zsh-hook -Uz chpwd _vim_sync_PWD
|
||||
function _vim_sync_PWD() {
|
||||
printf '\033]7;file://%s\033\\' "$PWD"
|
||||
}
|
||||
fi
|
||||
<
|
||||
In a fish init file: >
|
||||
if test -n "$VIM_TERMINAL"
|
||||
function _vim_sync_PWD --on-variable=PWD
|
||||
printf '\033]7;file://%s\033\\' "$PWD"
|
||||
end
|
||||
end
|
||||
<
|
||||
You can find an alternative method at |terminal-autoshelldir|.
|
||||
When the parsing of the OSC sequence fails you get *E1179* .
|
||||
|
||||
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
|
||||
@@ -1151,8 +1177,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Unix: "/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*"
|
||||
Mac: "/private/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*")
|
||||
global
|
||||
{not available when compiled without the |+wildignore|
|
||||
feature}
|
||||
A list of file patterns. When one of the patterns matches with the
|
||||
name of the file which is written, no backup file is created. Both
|
||||
the specified file name and the full path name of the file are used.
|
||||
@@ -1533,8 +1557,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'cdpath'* *'cd'* *E344* *E346*
|
||||
'cdpath' 'cd' string (default: equivalent to $CDPATH or ",,")
|
||||
global
|
||||
{not available when compiled without the
|
||||
|+file_in_path| feature}
|
||||
This is a list of directories which will be searched when using the
|
||||
|:cd|, |:tcd| and |:lcd| commands, provided that the directory being
|
||||
searched for has a relative path, not an absolute part starting with
|
||||
@@ -1604,6 +1626,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Note that v:charconvert_from and v:charconvert_to may be different
|
||||
from 'encoding'. Vim internally uses UTF-8 instead of UCS-2 or UCS-4.
|
||||
|
||||
The advantage of using a function call without arguments is that it is
|
||||
faster, see |expr-option-function|.
|
||||
|
||||
Encryption is not done by Vim when using 'charconvert'. If you want
|
||||
to encrypt the file after conversion, 'charconvert' should take care
|
||||
of this.
|
||||
@@ -1677,10 +1702,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
feature is included}
|
||||
This option is a list of comma-separated names.
|
||||
Note: if one of the items is "exclude:", then you can't add an item
|
||||
after that. Therefore do append an item with += but use ^= to
|
||||
after that. Therefore do not append an item with += but use ^= to
|
||||
prepend, e.g.: >
|
||||
set clipboard^=unnamed
|
||||
< These names are recognized:
|
||||
< When using the GUI see |'go-A'|.
|
||||
These names are recognized:
|
||||
|
||||
*clipboard-unnamed*
|
||||
unnamed When included, Vim will use the clipboard register '*'
|
||||
@@ -1760,9 +1786,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'cmdheight'* *'ch'*
|
||||
'cmdheight' 'ch' number (default 1)
|
||||
global
|
||||
Number of screen lines to use for the command-line. Helps avoiding
|
||||
|hit-enter| prompts.
|
||||
global or local to tab page
|
||||
Number of screen lines to use for the command-line. A larger value
|
||||
helps avoiding |hit-enter| prompts.
|
||||
The value of this option is stored with the tab page, so that each tab
|
||||
page can have a different value.
|
||||
|
||||
@@ -3376,22 +3402,24 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'fillchars'* *'fcs'*
|
||||
'fillchars' 'fcs' string (default "vert:|,fold:-,eob:~")
|
||||
global
|
||||
global or local to window |global-local|
|
||||
{not available when compiled without the |+folding|
|
||||
feature}
|
||||
Characters to fill the statuslines and vertical separators.
|
||||
It is a comma-separated list of items:
|
||||
Characters to fill the statuslines, vertical separators and special
|
||||
lines in the window.
|
||||
It is a comma-separated list of items. Each item has a name, a colon
|
||||
and the value of that item:
|
||||
|
||||
item default Used for ~
|
||||
stl:c ' ' or '^' statusline of the current window
|
||||
stlnc:c ' ' or '=' statusline of the non-current windows
|
||||
vert:c '|' vertical separators |:vsplit|
|
||||
fold:c '-' filling 'foldtext'
|
||||
foldopen:c '-' mark the beginning of a fold
|
||||
foldclose:c '+' show a closed fold
|
||||
foldsep:c '|' open fold middle character
|
||||
diff:c '-' deleted lines of the 'diff' option
|
||||
eob:c '~' empty lines below the end of a buffer
|
||||
item name default Used for ~
|
||||
stl ' ' or '^' statusline of the current window
|
||||
stlnc ' ' or '=' statusline of the non-current windows
|
||||
vert '|' vertical separators |:vsplit|
|
||||
fold '-' filling 'foldtext'
|
||||
foldopen '-' mark the beginning of a fold
|
||||
foldclose '+' show a closed fold
|
||||
foldsep '|' open fold middle character
|
||||
diff '-' deleted lines of the 'diff' option
|
||||
eob '~' empty lines below the end of a buffer
|
||||
|
||||
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 '='
|
||||
@@ -3407,13 +3435,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
characters are not supported.
|
||||
|
||||
The highlighting used for these items:
|
||||
item highlight group ~
|
||||
stl:c StatusLine |hl-StatusLine|
|
||||
stlnc:c StatusLineNC |hl-StatusLineNC|
|
||||
vert:c VertSplit |hl-VertSplit|
|
||||
fold:c Folded |hl-Folded|
|
||||
diff:c DiffDelete |hl-DiffDelete|
|
||||
eob:c EndOfBuffer |hl-EndOfBuffer|
|
||||
item name highlight group ~
|
||||
stl StatusLine |hl-StatusLine|
|
||||
stlnc StatusLineNC |hl-StatusLineNC|
|
||||
vert VertSplit |hl-VertSplit|
|
||||
fold Folded |hl-Folded|
|
||||
diff DiffDelete |hl-DiffDelete|
|
||||
eob EndOfBuffer |hl-EndOfBuffer|
|
||||
|
||||
*'fixendofline'* *'fixeol'* *'nofixendofline'* *'nofixeol'*
|
||||
'fixendofline' 'fixeol' boolean (default on)
|
||||
@@ -3639,6 +3667,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
< This will invoke the mylang#Format() function in the
|
||||
autoload/mylang.vim file in 'runtimepath'. |autoload|
|
||||
|
||||
The advantage of using a function call without arguments is that it is
|
||||
faster, see |expr-option-function|.
|
||||
|
||||
The expression is also evaluated when 'textwidth' is set and adding
|
||||
text beyond that limit. This happens under the same conditions as
|
||||
when internal formatting is used. Make sure the cursor is kept in the
|
||||
@@ -3954,6 +3985,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"A" - yes
|
||||
"aA" yes yes
|
||||
|
||||
When using a terminal see the 'clipboard' option.
|
||||
|
||||
*'go-c'*
|
||||
'c' Use console dialogs instead of popup dialogs for simple
|
||||
choices.
|
||||
@@ -4211,7 +4244,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
b bold (termcap entry "md" and "me")
|
||||
s standout (termcap entry "so" and "se")
|
||||
u underline (termcap entry "us" and "ue")
|
||||
c undercurl (termcap entry "Cs" and "Ce")
|
||||
c undercurl (termcap entry "Us" and "Ce")
|
||||
2 double underline (termcap entry "Ds" and "Ce")
|
||||
d dotted underline (termcap entry "ds" and "Ce")
|
||||
= dashed underline (termcap entry "Ds" and "Ce")
|
||||
t strikethrough (termcap entry "Ts" and "Te")
|
||||
n no highlighting
|
||||
- no highlighting
|
||||
@@ -4504,11 +4540,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
If the expression starts with s: or |<SID>|, then it is replaced with
|
||||
the script ID (|local-function|). Example: >
|
||||
set includeexpr=s:MyIncludeExpr(v:fname)
|
||||
set includeexpr=<SID>SomeIncludeExpr(v:fname)
|
||||
set includeexpr=s:MyIncludeExpr()
|
||||
set includeexpr=<SID>SomeIncludeExpr()
|
||||
< Otherwise, the expression is evaluated in the context of the script
|
||||
where the option was set, thus script-local items are available.
|
||||
|
||||
It is more efficient if the value is just a function call without
|
||||
arguments, see |expr-option-function|.
|
||||
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
@@ -4590,6 +4629,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
< Otherwise, the expression is evaluated in the context of the script
|
||||
where the option was set, thus script-local items are available.
|
||||
|
||||
The advantage of using a function call without arguments is that it is
|
||||
faster, see |expr-option-function|.
|
||||
|
||||
The expression must return the number of spaces worth of indent. It
|
||||
can return "-1" to keep the current indent (this means 'autoindent' is
|
||||
used for the indent).
|
||||
@@ -4838,7 +4880,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
help. (Note that previously setting the global option to the empty
|
||||
value did this, which is now deprecated.)
|
||||
When the first character is ":", the command is invoked as a Vim
|
||||
Ex command prefixed with [count].
|
||||
Ex command with [count] added as an argument if it is not zero.
|
||||
When "man", "man -s" or an Ex command is used, Vim will automatically
|
||||
translate a count for the "K" command and pass it as the first
|
||||
argument. For "man -s" the "-s" is removed when there is no count.
|
||||
@@ -5019,8 +5061,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'lispwords'* *'lw'*
|
||||
'lispwords' 'lw' string (default is very long)
|
||||
global or local to buffer |global-local|
|
||||
Comma-separated list of words that influence the Lisp indenting.
|
||||
|'lisp'|
|
||||
Comma-separated list of words that influence the Lisp indenting when
|
||||
enabled with the |'lisp'| option.
|
||||
|
||||
*'list'* *'nolist'*
|
||||
'list' boolean (default off)
|
||||
@@ -5915,7 +5957,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"http://www.vim.org" will make ":find index.html" work.
|
||||
- Search upwards and downwards in a directory tree using "*", "**" and
|
||||
";". See |file-searching| for info and syntax.
|
||||
{not available when compiled without the |+path_extra| feature}
|
||||
- Careful with '\' characters, type two to get one in the option: >
|
||||
:set path=.,c:\\include
|
||||
< Or just use '/' instead: >
|
||||
@@ -6443,7 +6484,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Each window has its own ruler. If a window has a status line, the
|
||||
ruler is shown there. Otherwise it is shown in the last line of the
|
||||
screen. If the statusline is given by 'statusline' (i.e. not empty),
|
||||
this option takes precedence over 'ruler' and 'rulerformat'
|
||||
this option takes precedence over 'ruler' and 'rulerformat'.
|
||||
If the number of characters displayed is different from the number of
|
||||
bytes in the text (e.g., for a TAB or a multibyte character), both
|
||||
the text column (byte number) and the screen column are shown,
|
||||
@@ -7261,6 +7302,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
reset.
|
||||
NOTE: This option is reset when 'compatible' is set.
|
||||
|
||||
*'smoothscroll'* *'sms'* *'nosmoothscroll'* *'nosms'*
|
||||
'smoothscroll' 'sms' boolean (default off)
|
||||
local to window
|
||||
Scrolling works with screen lines. When 'wrap' is set and the first
|
||||
line in the window wraps part of it may not be visible, as if it is
|
||||
above the window.
|
||||
NOTE: only partly implemented, works with CTRL-E and CTRL-Y.
|
||||
|
||||
*'softtabstop'* *'sts'*
|
||||
'softtabstop' 'sts' number (default 0)
|
||||
local to buffer
|
||||
@@ -7315,6 +7364,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Name of the word list file where words are added for the |zg| and |zw|
|
||||
commands. It must end in ".{encoding}.add". You need to include the
|
||||
path, otherwise the file is placed in the current directory.
|
||||
The path may include characters from 'isfname', space, comma and '@'.
|
||||
*E765*
|
||||
It may also be a comma-separated list of names. A count before the
|
||||
|zg| and |zw| commands can be used to access each. This allows using
|
||||
@@ -7440,9 +7490,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The file is used for all languages.
|
||||
|
||||
expr:{expr} Evaluate expression {expr}. Use a function to avoid
|
||||
trouble with spaces. |v:val| holds the badly spelled
|
||||
word. The expression must evaluate to a List of
|
||||
Lists, each with a suggestion and a score.
|
||||
trouble with spaces. Best is to call a function
|
||||
without arguments, see |expr-option-function|.
|
||||
|v:val| holds the badly spelled word. The expression
|
||||
must evaluate to a List of Lists, each with a
|
||||
suggestion and a score.
|
||||
Example:
|
||||
[['the', 33], ['that', 44]] ~
|
||||
Set 'verbose' and use |z=| to see the scores that the
|
||||
@@ -7472,6 +7524,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When on, splitting a window will put the new window right of the
|
||||
current one. |:vsplit|
|
||||
|
||||
*'splitscroll'* *'spsc'* *'nosplitscroll'* *'nospsc'*
|
||||
'splitscroll' 'spsc' boolean (default on)
|
||||
global
|
||||
The value of this option determines the scroll behavior when opening,
|
||||
closing or resizing horizontal splits. When "on", splitting a window
|
||||
horizontally will keep the same relative cursor position in the old and
|
||||
new window, as well windows that are resized. When "off", scrolling
|
||||
will be avoided to stabilize the window content. Instead, the cursor
|
||||
position will be changed when necessary. In this case, the jumplist
|
||||
will be populated with the previous cursor position. Scrolling cannot
|
||||
be guaranteed to be avoided when 'wrap' is enabled.
|
||||
|
||||
*'startofline'* *'sol'* *'nostartofline'* *'nosol'*
|
||||
'startofline' 'sol' boolean (default on)
|
||||
global
|
||||
@@ -7685,8 +7749,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'suffixesadd'* *'sua'*
|
||||
'suffixesadd' 'sua' string (default "")
|
||||
local to buffer
|
||||
{not available when compiled without the
|
||||
|+file_in_path| feature}
|
||||
Comma-separated list of suffixes, which are used when searching for a
|
||||
file for the "gf", "[I", etc. commands. Example: >
|
||||
:set suffixesadd=.java
|
||||
@@ -7964,8 +8026,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
a directory tree. See |file-searching|. E.g., "/lib/**/tags" will
|
||||
find all files named "tags" below "/lib". The filename itself cannot
|
||||
contain wildcards, it is used as-is. E.g., "/lib/**/tags?" will find
|
||||
files called "tags?". {not available when compiled without the
|
||||
|+path_extra| feature}
|
||||
files called "tags?".
|
||||
The |tagfiles()| function can be used to get a list of the file names
|
||||
actually used.
|
||||
If Vim was compiled with the |+emacs_tags| feature, Emacs-style tag
|
||||
@@ -8989,8 +9050,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'wildignore'* *'wig'*
|
||||
'wildignore' 'wig' string (default "")
|
||||
global
|
||||
{not available when compiled without the |+wildignore|
|
||||
feature}
|
||||
A list of file patterns. A file that matches with one of these
|
||||
patterns is ignored when expanding |wildcards|, completing file or
|
||||
directory names, and influences the result of |expand()|, |glob()| and
|
||||
@@ -9016,13 +9075,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'wildmenu'* *'wmnu'* *'nowildmenu'* *'nowmnu'*
|
||||
'wildmenu' 'wmnu' boolean (default off, set in |defaults.vim|)
|
||||
global
|
||||
{not available if compiled without the |+wildmenu|
|
||||
feature}
|
||||
When 'wildmenu' is on, command-line completion operates in an enhanced
|
||||
mode. On pressing 'wildchar' (usually <Tab>) to invoke completion,
|
||||
the possible matches are shown just above the command line, with the
|
||||
first match highlighted (overwriting the status line, if there is
|
||||
one). This is the behavior without "pum" in 'wildoptions'.
|
||||
the possible matches are shown.
|
||||
When 'wildoptions' contains "pum", then the completion matches are
|
||||
shown in a popup menu. Otherwise they are displayed just above the
|
||||
command line, with the first match highlighted (overwriting the status
|
||||
line, if there is one).
|
||||
Keys that show the previous/next match, such as <Tab> or
|
||||
CTRL-P/CTRL-N, cause the highlight to move to the appropriate match.
|
||||
When 'wildmode' is used, "wildmenu" mode is used where "full" is
|
||||
@@ -9031,8 +9090,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
If there are more matches than can fit in the line, a ">" is shown on
|
||||
the right and/or a "<" is shown on the left. The status line scrolls
|
||||
as needed.
|
||||
When 'wildoptions' contains "pum", then the completion matches are
|
||||
shown in a popup menu.
|
||||
The "wildmenu" mode is abandoned when a key is hit that is not used
|
||||
for selecting a completion.
|
||||
While the "wildmenu" is active, not using the popup menu, the
|
||||
@@ -9121,8 +9178,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'wildoptions'* *'wop'*
|
||||
'wildoptions' 'wop' string (default "")
|
||||
global
|
||||
{not available when compiled without the |+wildignore|
|
||||
feature}
|
||||
A list of words that change how |cmdline-completion| is done.
|
||||
The following values are supported:
|
||||
fuzzy Use |fuzzy-matching| to find completion matches. When
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 9.0. Last change: 2022 May 24
|
||||
*os_win32.txt* For Vim version 9.0. Last change: 2022 Sep 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@@ -7,8 +7,11 @@
|
||||
*win32* *Win32* *MS-Windows*
|
||||
This file documents the idiosyncrasies of the Win32 version of Vim.
|
||||
|
||||
The Win32 version of Vim works on Windows XP, Vista, 7, 8, 10 and 11. There are
|
||||
both console and GUI versions.
|
||||
The Win32 version of Vim works on Windows 7, 8, 10 and 11. There are both
|
||||
console and GUI versions.
|
||||
|
||||
If you have Windows XP or Vista then Vim 9.0 up to patch level 495 can be
|
||||
used.
|
||||
|
||||
The 32 bit version also runs on 64 bit MS-Windows systems.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 9.0. Last change: 2022 Mar 04
|
||||
*pattern.txt* For Vim version 9.0. Last change: 2022 Sep 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -134,6 +134,11 @@ gD Goto global Declaration. When the cursor is on a
|
||||
CTRL-C Interrupt current (search) command. Use CTRL-Break on
|
||||
MS-Windows |dos-CTRL-Break|.
|
||||
In Normal mode, any pending command is aborted.
|
||||
When Vim was started with output redirected and there
|
||||
are no changed buffers CTRL-C exits Vim. That is to
|
||||
help users who use "vim file | grep word" and don't
|
||||
know how to get out (blindly typing :qa<CR> would
|
||||
work).
|
||||
|
||||
*:noh* *:nohlsearch*
|
||||
:noh[lsearch] Stop the highlighting for the 'hlsearch' option. It
|
||||
@@ -928,7 +933,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
becomes invalid. Vim doesn't automatically update the matches.
|
||||
Similar to moving the cursor for "\%#" |/\%#|.
|
||||
|
||||
*/\%l* */\%>l* */\%<l* *E951* *E1204*
|
||||
*/\%l* */\%>l* */\%<l* *E951* *E1204* *E1273*
|
||||
\%23l Matches in a specific line.
|
||||
\%<23l Matches above a specific line (lower line number).
|
||||
\%>23l Matches below a specific line (higher line number).
|
||||
|
||||
@@ -3918,7 +3918,7 @@ netrw:
|
||||
* Installed |g:netrw_clipboard| setting
|
||||
* Installed option bypass for |'guioptions'|
|
||||
a/A settings
|
||||
* Changed popup_beval() to |popup_atcursor|()
|
||||
* Changed popup_beval() to |popup_atcursor()|
|
||||
in netrw#ErrorMsg (lacygoill). Apparently
|
||||
popup_beval doesn't reliably close the
|
||||
popup when the mouse is moved.
|
||||
|
||||
@@ -591,7 +591,7 @@ POPUP_CREATE() ARGUMENTS *popup_create-arguments*
|
||||
|
||||
The first argument of |popup_create()| (and the second argument to
|
||||
|popup_settext()|) specifies the text to be displayed, and optionally text
|
||||
properties. It is in one of four forms:
|
||||
properties. It is in one of four forms: *E1284*
|
||||
- a buffer number
|
||||
- a string
|
||||
- a list of strings
|
||||
|
||||
@@ -158,13 +158,16 @@ currently specified printdevice: >
|
||||
If you change this option, using a function is an easy way to avoid having to
|
||||
escape all the spaces. Example: >
|
||||
|
||||
:set printexpr=PrintFile(v:fname_in)
|
||||
:function PrintFile(fname)
|
||||
: call system("ghostview " .. a:fname)
|
||||
: call delete(a:fname)
|
||||
:set printexpr=PrintFile()
|
||||
:function PrintFile()
|
||||
: call system("ghostview " .. v:fname_in)
|
||||
: call delete(v:fname_in)
|
||||
: return v:shell_error
|
||||
:endfunc
|
||||
|
||||
It is more efficient if the option is set to just a function call,
|
||||
see |expr-option-function|.
|
||||
|
||||
Be aware that some print programs return control before they have read the
|
||||
file. If you delete the file too soon it will not be printed. These programs
|
||||
usually offer an option to have them remove the file when printing is done.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 9.0. Last change: 2022 Feb 22
|
||||
*quickfix.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -478,7 +478,7 @@ You can parse a list of lines using 'errorformat' without creating or
|
||||
modifying a quickfix list using the |getqflist()| function. Examples: >
|
||||
echo getqflist({'lines' : ["F1:10:Line10", "F2:20:Line20"]})
|
||||
echo getqflist({'lines' : systemlist('grep -Hn quickfix *')})
|
||||
This returns a dictionary where the 'items' key contains the list of quickfix
|
||||
This returns a dictionary where the "items" key contains the list of quickfix
|
||||
entries parsed from lines. The following shows how to use a custom
|
||||
'errorformat' to parse the lines without modifying the 'errorformat' option: >
|
||||
echo getqflist({'efm' : '%f#%l#%m', 'lines' : ['F1#10#Line']})
|
||||
@@ -568,6 +568,9 @@ pattern is used.
|
||||
The |:Lfilter| command does the same as |:Cfilter| but operates on the current
|
||||
location list.
|
||||
|
||||
The current quickfix/location list is not modified by these commands, so you
|
||||
can go back to the unfiltered list using the |:colder|/|:lolder| command.
|
||||
|
||||
=============================================================================
|
||||
2. The error window *quickfix-window*
|
||||
|
||||
@@ -594,7 +597,7 @@ location list.
|
||||
quickfix command or function, the |b:changedtick|
|
||||
variable is incremented. You can get the number of
|
||||
this buffer using the getqflist() and getloclist()
|
||||
functions by passing the 'qfbufnr' item. For a
|
||||
functions by passing the "qfbufnr" item. For a
|
||||
location list, this buffer is wiped out when the
|
||||
location list is removed.
|
||||
|
||||
@@ -2008,7 +2011,7 @@ The function should return a single line of text to display in the quickfix
|
||||
window for each entry from start_idx to end_idx. The function can obtain
|
||||
information about the entries using the |getqflist()| function and specifying
|
||||
the quickfix list identifier "id". For a location list, getloclist() function
|
||||
can be used with the 'winid' argument. If an empty list is returned, then the
|
||||
can be used with the "winid" argument. If an empty list is returned, then the
|
||||
default format is used to display all the entries. If an item in the returned
|
||||
list is an empty string, then the default format is used to display the
|
||||
corresponding entry.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 9.0. Last change: 2022 May 05
|
||||
*quickref.txt* For Vim version 9.0. Last change: 2022 Sep 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -910,6 +910,7 @@ Short explanation of each option: *option-list*
|
||||
'smartcase' 'scs' no ignore case when pattern has uppercase
|
||||
'smartindent' 'si' smart autoindenting for C programs
|
||||
'smarttab' 'sta' use 'shiftwidth' when inserting <Tab>
|
||||
'smoothscroll' 'sms' scroll by screen lines when 'wrap' is set
|
||||
'softtabstop' 'sts' number of spaces that <Tab> uses while editing
|
||||
'spell' enable spell checking
|
||||
'spellcapcheck' 'spc' pattern to locate end of a sentence
|
||||
@@ -919,6 +920,7 @@ Short explanation of each option: *option-list*
|
||||
'spellsuggest' 'sps' method(s) used to suggest spelling corrections
|
||||
'splitbelow' 'sb' new window from split is below the current one
|
||||
'splitright' 'spr' new window is put right of the current one
|
||||
'splitscroll' 'spsc' determines scroll behavior for split windows
|
||||
'startofline' 'sol' commands move cursor to first non-blank in line
|
||||
'statusline' 'stl' custom format for the status line
|
||||
'suffixes' 'su' suffixes that are ignored with multiple match
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 9.0. Last change: 2022 Jun 18
|
||||
*repeat.txt* For Vim version 9.0. Last change: 2022 Sep 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -92,7 +92,8 @@ pattern and do not match another pattern: >
|
||||
This first finds all lines containing "found", but only executes {cmd} when
|
||||
there is no match for "notfound".
|
||||
|
||||
To execute a non-Ex command, you can use the `:normal` command: >
|
||||
Any Ex command can be used, see |ex-cmd-index|. To execute a Normal mode
|
||||
command, you can use the `:normal` command: >
|
||||
:g/pat/normal {commands}
|
||||
Make sure that {commands} ends with a whole command, otherwise Vim will wait
|
||||
for you to type the rest of the command for each match. The screen will not
|
||||
@@ -200,7 +201,8 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
*:source-range*
|
||||
:[range]so[urce] [++clear]
|
||||
Read Ex commands from the [range] of lines in the
|
||||
current buffer.
|
||||
current buffer. When [range] is omitted read all
|
||||
lines.
|
||||
|
||||
When sourcing commands from the current buffer, the
|
||||
same script-ID |<SID>| is used even if the buffer is
|
||||
@@ -231,7 +233,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
Examples: >
|
||||
:4,5source
|
||||
:10,18source ++clear
|
||||
|
||||
<
|
||||
*:source!*
|
||||
:so[urce]! {file} Read Vim commands from {file}. These are commands
|
||||
that are executed from Normal mode, like you type
|
||||
@@ -417,6 +419,10 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
For a script that was used with `import autoload` but
|
||||
was not actually sourced yet an "A" is shown after the
|
||||
script ID.
|
||||
For a script that was referred to by one name but
|
||||
after resolving symbolic links got sourced with
|
||||
another name the other script is after "->". E.g.
|
||||
"20->22" means script 20 was sourced as script 22.
|
||||
{not available when compiled without the |+eval|
|
||||
feature}
|
||||
|
||||
@@ -900,6 +906,11 @@ executed like a normal Ex command, "step" will stop once in the compiled
|
||||
context, where local variables can be inspected, and once just before
|
||||
executing the command.
|
||||
|
||||
In a :def function variables that haven't been declared yet cannot be
|
||||
inspected. Variables that have been declared can be inspected, also when the
|
||||
block they were declared in has finished. In commands this would not be
|
||||
possible, thus is slightly misleading (but can be useful).
|
||||
|
||||
The backtrace shows the hierarchy of function calls, e.g.:
|
||||
>bt ~
|
||||
3 function One[3] ~
|
||||
|
||||
@@ -103,7 +103,7 @@ zuW *zuG* *zuW*
|
||||
zuG Undo |zW| and |zG|, remove the word from the internal
|
||||
word list. Count used as with |zg|.
|
||||
|
||||
*:spe* *:spellgood*
|
||||
*:spe* *:spellgood* *E1280*
|
||||
:[count]spe[llgood] {word}
|
||||
Add {word} as a good word to 'spellfile', like with
|
||||
|zg|. Without count the first name is used, with a
|
||||
@@ -1600,7 +1600,7 @@ CHECKCOMPOUNDTRIPLE (Hunspell) *spell-CHECKCOMPOUNDTRIPLE*
|
||||
Forbid three identical characters when compounding. Not
|
||||
supported.
|
||||
|
||||
CHECKSHARPS (Hunspell)) *spell-CHECKSHARPS*
|
||||
CHECKSHARPS (Hunspell) *spell-CHECKSHARPS*
|
||||
SS letter pair in uppercased (German) words may be upper case
|
||||
sharp s (ß). Not supported.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 9.0. Last change: 2022 Jun 10
|
||||
*syntax.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1694,6 +1694,21 @@ because Fortran90 has no reserved words.
|
||||
For further information related to fortran, see |ft-fortran-indent| and
|
||||
|ft-fortran-plugin|.
|
||||
|
||||
FREEBASIC *freebasic.vim* *ft-freebasic-syntax*
|
||||
|
||||
FreeBASIC files will be highlighted differently for each of the four available
|
||||
dialects, "fb", "qb", "fblite" and "deprecated". See |ft-freebasic-plugin|
|
||||
for how to select the correct dialect.
|
||||
|
||||
Highlighting is further configurable via the following variables.
|
||||
|
||||
Variable Highlight ~
|
||||
*freebasic_no_comment_fold* disable multiline comment folding
|
||||
*freebasic_operators* non-alpha operators
|
||||
*freebasic_space_errors* trailing white space and spaces before a <Tab>
|
||||
*freebasic_type_suffixes* QuickBASIC style type suffixes
|
||||
|
||||
|
||||
|
||||
FVWM CONFIGURATION FILES *fvwm.vim* *ft-fvwm-syntax*
|
||||
|
||||
@@ -3138,7 +3153,7 @@ The default is to use the twice sh_minlines. Set it to a smaller number to
|
||||
speed up displaying. The disadvantage is that highlight errors may appear.
|
||||
|
||||
syntax/sh.vim tries to flag certain problems as errors; usually things like
|
||||
extra ']'s, 'done's, 'fi's, etc. If you find the error handling problematic
|
||||
unmatched "]", "done", "fi", etc. If you find the error handling problematic
|
||||
for your purposes, you may suppress such error highlighting by putting
|
||||
the following line in your .vimrc: >
|
||||
|
||||
@@ -4890,6 +4905,7 @@ Before the color scheme will be loaded all default color list scripts
|
||||
autocommand event is triggered. After the color scheme has been loaded the
|
||||
|ColorScheme| autocommand event is triggered.
|
||||
|
||||
*colorscheme-override*
|
||||
If a color scheme is almost right, you can add modifications on top of it by
|
||||
using the |ColorScheme| autocommand. For example, to remove the background
|
||||
color (can make it transparent in some terminals): >
|
||||
@@ -5002,14 +5018,18 @@ the same syntax file on all terminals, and use the optimal highlighting.
|
||||
1. highlight arguments for normal terminals
|
||||
|
||||
*bold* *underline* *undercurl*
|
||||
*inverse* *italic* *standout*
|
||||
*nocombine* *strikethrough*
|
||||
*underdouble* *underdotted*
|
||||
*underdashed* *inverse* *italic*
|
||||
*standout* *nocombine* *strikethrough*
|
||||
term={attr-list} *attr-list* *highlight-term* *E418*
|
||||
attr-list is a comma-separated list (without spaces) of the
|
||||
following items (in any order):
|
||||
bold
|
||||
underline
|
||||
undercurl not always available
|
||||
underdouble not always available
|
||||
underdotted not always available
|
||||
underdashed not always available
|
||||
strikethrough not always available
|
||||
reverse
|
||||
inverse same as reverse
|
||||
@@ -5020,6 +5040,7 @@ term={attr-list} *attr-list* *highlight-term* *E418*
|
||||
|
||||
Note that "bold" can be used here and by using a bold font. They
|
||||
have the same effect.
|
||||
*underline-codes*
|
||||
"undercurl" is a curly underline. When "undercurl" is not possible
|
||||
then "underline" is used. In general "undercurl" and "strikethrough"
|
||||
are only available in the GUI and some terminals. The color is set
|
||||
@@ -5028,6 +5049,17 @@ term={attr-list} *attr-list* *highlight-term* *E418*
|
||||
let &t_Cs = "\e[4:3m"
|
||||
let &t_Ce = "\e[4:0m"
|
||||
|
||||
< "underdouble" is a double underline, "underdotted" is a dotted
|
||||
underline and "underdashed" is a dashed underline. These are only
|
||||
supported by some terminals. If your terminal supports them you may
|
||||
have to specify the codes like this: >
|
||||
let &t_Us = "\e[4:2m"
|
||||
let &t_ds = "\e[4:4m"
|
||||
let &t_Ds = "\e[4:5m"
|
||||
< They are reset with |t_Ce|, the same as curly underline (undercurl).
|
||||
When t_Us, t_ds or t_Ds is not set then underline will be used as a
|
||||
fallback.
|
||||
|
||||
|
||||
start={term-list} *highlight-start* *E422*
|
||||
stop={term-list} *term-list* *highlight-stop*
|
||||
@@ -5336,7 +5368,9 @@ CursorLineFold Like FoldColumn when 'cursorline' is set for the cursor line.
|
||||
*hl-MatchParen*
|
||||
MatchParen Character under the cursor or just before it, if it
|
||||
is a paired bracket, and its match. |pi_paren.txt|
|
||||
|
||||
*hl-MessageWindow*
|
||||
MessageWindow Messages popup window used when 'cmdheight' is zero. If not
|
||||
defined |hl-WarningMsg| is used.
|
||||
*hl-ModeMsg*
|
||||
ModeMsg 'showmode' message (e.g., "-- INSERT --").
|
||||
*hl-MoreMsg*
|
||||
@@ -5356,6 +5390,10 @@ PmenuSel Popup menu: Selected item.
|
||||
PmenuSbar Popup menu: Scrollbar.
|
||||
*hl-PmenuThumb*
|
||||
PmenuThumb Popup menu: Thumb of the scrollbar.
|
||||
*hl-PopupNotification*
|
||||
PopupNotification
|
||||
Popup window created with |popup_notification()|. If not
|
||||
defined |hl-WarningMsg| is used.
|
||||
*hl-Question*
|
||||
Question |hit-enter| prompt and yes/no questions.
|
||||
*hl-QuickFixLine*
|
||||
|
||||
@@ -81,8 +81,6 @@ For the related autocommands see |tabnew-autocmd|.
|
||||
:[count]tabf[ind] [++opt] [+cmd] {file} *:tabf* *:tabfind*
|
||||
Open a new tab page and edit {file} in 'path', like with
|
||||
|:find|. For [count] see |:tabnew| above.
|
||||
{not available when the |+file_in_path| feature was disabled
|
||||
at compile time}
|
||||
|
||||
:[count]tab {cmd} *:tab*
|
||||
Execute {cmd} and when it opens a new window open a new tab
|
||||
|
||||
253
runtime/doc/tags
253
runtime/doc/tags
@@ -69,6 +69,9 @@ $quote eval.txt /*$quote*
|
||||
'autowriteall' options.txt /*'autowriteall'*
|
||||
'aw' options.txt /*'aw'*
|
||||
'awa' options.txt /*'awa'*
|
||||
'b:context_ignore_makefile' ft_context.txt /*'b:context_ignore_makefile'*
|
||||
'b:context_include' ft_context.txt /*'b:context_include'*
|
||||
'b:mp_metafun' ft_mp.txt /*'b:mp_metafun'*
|
||||
'background' options.txt /*'background'*
|
||||
'backspace' options.txt /*'backspace'*
|
||||
'backup' options.txt /*'backup'*
|
||||
@@ -299,6 +302,21 @@ $quote eval.txt /*$quote*
|
||||
'fs' options.txt /*'fs'*
|
||||
'fsync' options.txt /*'fsync'*
|
||||
'ft' options.txt /*'ft'*
|
||||
'g:context_extra_options' ft_context.txt /*'g:context_extra_options'*
|
||||
'g:context_ignore_makefile' ft_context.txt /*'g:context_ignore_makefile'*
|
||||
'g:context_include' ft_context.txt /*'g:context_include'*
|
||||
'g:mf_other_macros' ft_mp.txt /*'g:mf_other_macros'*
|
||||
'g:mf_plain_macros' ft_mp.txt /*'g:mf_plain_macros'*
|
||||
'g:mf_plain_modes' ft_mp.txt /*'g:mf_plain_modes'*
|
||||
'g:mp_close_tag' ft_mp.txt /*'g:mp_close_tag'*
|
||||
'g:mp_metafun' ft_mp.txt /*'g:mp_metafun'*
|
||||
'g:mp_mfplain_macros' ft_mp.txt /*'g:mp_mfplain_macros'*
|
||||
'g:mp_open_tag' ft_mp.txt /*'g:mp_open_tag'*
|
||||
'g:mp_other_macros' ft_mp.txt /*'g:mp_other_macros'*
|
||||
'g:mp_plain_macros' ft_mp.txt /*'g:mp_plain_macros'*
|
||||
'g:no_context_maps' ft_context.txt /*'g:no_context_maps'*
|
||||
'g:no_mf_maps' ft_mp.txt /*'g:no_mf_maps'*
|
||||
'g:no_mp_maps' ft_mp.txt /*'g:no_mp_maps'*
|
||||
'gcr' options.txt /*'gcr'*
|
||||
'gd' options.txt /*'gd'*
|
||||
'gdefault' options.txt /*'gdefault'*
|
||||
@@ -701,7 +719,9 @@ $quote eval.txt /*$quote*
|
||||
'nospell' options.txt /*'nospell'*
|
||||
'nosplitbelow' options.txt /*'nosplitbelow'*
|
||||
'nosplitright' options.txt /*'nosplitright'*
|
||||
'nosplitscroll' options.txt /*'nosplitscroll'*
|
||||
'nospr' options.txt /*'nospr'*
|
||||
'nospsc' options.txt /*'nospsc'*
|
||||
'nosr' options.txt /*'nosr'*
|
||||
'nossl' options.txt /*'nossl'*
|
||||
'nosta' options.txt /*'nosta'*
|
||||
@@ -935,9 +955,11 @@ $quote eval.txt /*$quote*
|
||||
'spl' options.txt /*'spl'*
|
||||
'splitbelow' options.txt /*'splitbelow'*
|
||||
'splitright' options.txt /*'splitright'*
|
||||
'splitscroll' options.txt /*'splitscroll'*
|
||||
'spo' options.txt /*'spo'*
|
||||
'spr' options.txt /*'spr'*
|
||||
'sps' options.txt /*'sps'*
|
||||
'spsc' options.txt /*'spsc'*
|
||||
'sr' options.txt /*'sr'*
|
||||
'srr' options.txt /*'srr'*
|
||||
'ss' options.txt /*'ss'*
|
||||
@@ -988,6 +1010,7 @@ $quote eval.txt /*$quote*
|
||||
't_Co' term.txt /*'t_Co'*
|
||||
't_Cs' term.txt /*'t_Cs'*
|
||||
't_DL' term.txt /*'t_DL'*
|
||||
't_Ds' term.txt /*'t_Ds'*
|
||||
't_EC' term.txt /*'t_EC'*
|
||||
't_EI' term.txt /*'t_EI'*
|
||||
't_F1' term.txt /*'t_F1'*
|
||||
@@ -1044,6 +1067,7 @@ $quote eval.txt /*$quote*
|
||||
't_TI' term.txt /*'t_TI'*
|
||||
't_Te' term.txt /*'t_Te'*
|
||||
't_Ts' term.txt /*'t_Ts'*
|
||||
't_Us' term.txt /*'t_Us'*
|
||||
't_VS' term.txt /*'t_VS'*
|
||||
't_WP' term.txt /*'t_WP'*
|
||||
't_WS' term.txt /*'t_WS'*
|
||||
@@ -1059,6 +1083,7 @@ $quote eval.txt /*$quote*
|
||||
't_da' term.txt /*'t_da'*
|
||||
't_db' term.txt /*'t_db'*
|
||||
't_dl' term.txt /*'t_dl'*
|
||||
't_ds' term.txt /*'t_ds'*
|
||||
't_fd' term.txt /*'t_fd'*
|
||||
't_fe' term.txt /*'t_fe'*
|
||||
't_fs' term.txt /*'t_fs'*
|
||||
@@ -1298,7 +1323,6 @@ $quote eval.txt /*$quote*
|
||||
+balloon_eval various.txt /*+balloon_eval*
|
||||
+balloon_eval_term various.txt /*+balloon_eval_term*
|
||||
+browse various.txt /*+browse*
|
||||
+builtin_terms various.txt /*+builtin_terms*
|
||||
+byte_offset various.txt /*+byte_offset*
|
||||
+channel various.txt /*+channel*
|
||||
+cindent various.txt /*+cindent*
|
||||
@@ -1563,7 +1587,7 @@ $quote eval.txt /*$quote*
|
||||
-xrm gui_x11.txt /*-xrm*
|
||||
-y starting.txt /*-y*
|
||||
. repeat.txt /*.*
|
||||
... eval.txt /*...*
|
||||
... userfunc.txt /*...*
|
||||
.Xdefaults gui_x11.txt /*.Xdefaults*
|
||||
.aff spell.txt /*.aff*
|
||||
.dic spell.txt /*.dic*
|
||||
@@ -2033,12 +2057,17 @@ $quote eval.txt /*$quote*
|
||||
:Cfilter quickfix.txt /*:Cfilter*
|
||||
:Clear terminal.txt /*:Clear*
|
||||
:CompilerSet usr_51.txt /*:CompilerSet*
|
||||
:ConTeXt ft_context.txt /*:ConTeXt*
|
||||
:ConTeXtJobsStatus ft_context.txt /*:ConTeXtJobsStatus*
|
||||
:ConTeXtLog ft_context.txt /*:ConTeXtLog*
|
||||
:ConTeXtStopJobs ft_context.txt /*:ConTeXtStopJobs*
|
||||
:Continue terminal.txt /*:Continue*
|
||||
:DiffOrig diff.txt /*:DiffOrig*
|
||||
:DoMatchParen pi_paren.txt /*:DoMatchParen*
|
||||
:Evaluate terminal.txt /*:Evaluate*
|
||||
:Explore pi_netrw.txt /*:Explore*
|
||||
:Finish terminal.txt /*:Finish*
|
||||
:FixBeginfigs ft_mp.txt /*:FixBeginfigs*
|
||||
:GLVS pi_getscript.txt /*:GLVS*
|
||||
:Gdb terminal.txt /*:Gdb*
|
||||
:GetLatestVimScripts_dat pi_getscript.txt /*:GetLatestVimScripts_dat*
|
||||
@@ -2100,7 +2129,6 @@ $quote eval.txt /*$quote*
|
||||
:XMLent insert.txt /*:XMLent*
|
||||
:XMLns insert.txt /*:XMLns*
|
||||
:[range] motion.txt /*:[range]*
|
||||
:[vV\x16] autocmd.txt /*:[vV\\x16]*
|
||||
:\bar cmdline.txt /*:\\bar*
|
||||
:_! cmdline.txt /*:_!*
|
||||
:_# cmdline.txt /*:_#*
|
||||
@@ -2237,8 +2265,8 @@ $quote eval.txt /*$quote*
|
||||
:caddfile quickfix.txt /*:caddfile*
|
||||
:caf quickfix.txt /*:caf*
|
||||
:cafter quickfix.txt /*:cafter*
|
||||
:cal eval.txt /*:cal*
|
||||
:call eval.txt /*:call*
|
||||
:cal userfunc.txt /*:cal*
|
||||
:call userfunc.txt /*:call*
|
||||
:cat eval.txt /*:cat*
|
||||
:catch eval.txt /*:catch*
|
||||
:cb quickfix.txt /*:cb*
|
||||
@@ -2382,13 +2410,14 @@ $quote eval.txt /*$quote*
|
||||
:def vim9.txt /*:def*
|
||||
:defc vim9.txt /*:defc*
|
||||
:defcompile vim9.txt /*:defcompile*
|
||||
:defer userfunc.txt /*:defer*
|
||||
:del change.txt /*:del*
|
||||
:delc map.txt /*:delc*
|
||||
:delcommand map.txt /*:delcommand*
|
||||
:delcr todo.txt /*:delcr*
|
||||
:delete change.txt /*:delete*
|
||||
:delf eval.txt /*:delf*
|
||||
:delfunction eval.txt /*:delfunction*
|
||||
:delf userfunc.txt /*:delf*
|
||||
:delfunction userfunc.txt /*:delfunction*
|
||||
:delm motion.txt /*:delm*
|
||||
:delmarks motion.txt /*:delmarks*
|
||||
:di change.txt /*:di*
|
||||
@@ -2446,6 +2475,9 @@ $quote eval.txt /*$quote*
|
||||
:echom eval.txt /*:echom*
|
||||
:echomsg eval.txt /*:echomsg*
|
||||
:echon eval.txt /*:echon*
|
||||
:echow eval.txt /*:echow*
|
||||
:echowin eval.txt /*:echowin*
|
||||
:echowindow eval.txt /*:echowindow*
|
||||
:edit editing.txt /*:edit*
|
||||
:edit! editing.txt /*:edit!*
|
||||
:edit!_f editing.txt /*:edit!_f*
|
||||
@@ -2462,10 +2494,10 @@ $quote eval.txt /*$quote*
|
||||
:endclass vim9.txt /*:endclass*
|
||||
:enddef vim9.txt /*:enddef*
|
||||
:endenum vim9.txt /*:endenum*
|
||||
:endf eval.txt /*:endf*
|
||||
:endf userfunc.txt /*:endf*
|
||||
:endfo eval.txt /*:endfo*
|
||||
:endfor eval.txt /*:endfor*
|
||||
:endfunction eval.txt /*:endfunction*
|
||||
:endfunction userfunc.txt /*:endfunction*
|
||||
:endif eval.txt /*:endif*
|
||||
:endinterface vim9.txt /*:endinterface*
|
||||
:endt eval.txt /*:endt*
|
||||
@@ -2527,13 +2559,13 @@ $quote eval.txt /*$quote*
|
||||
:foldo fold.txt /*:foldo*
|
||||
:foldopen fold.txt /*:foldopen*
|
||||
:for eval.txt /*:for*
|
||||
:fu eval.txt /*:fu*
|
||||
:func-abort eval.txt /*:func-abort*
|
||||
:func-closure eval.txt /*:func-closure*
|
||||
:func-dict eval.txt /*:func-dict*
|
||||
:func-range eval.txt /*:func-range*
|
||||
:function eval.txt /*:function*
|
||||
:function-verbose eval.txt /*:function-verbose*
|
||||
:fu userfunc.txt /*:fu*
|
||||
:func-abort userfunc.txt /*:func-abort*
|
||||
:func-closure userfunc.txt /*:func-closure*
|
||||
:func-dict userfunc.txt /*:func-dict*
|
||||
:func-range userfunc.txt /*:func-range*
|
||||
:function userfunc.txt /*:function*
|
||||
:function-verbose userfunc.txt /*:function-verbose*
|
||||
:g repeat.txt /*:g*
|
||||
:global repeat.txt /*:global*
|
||||
:go motion.txt /*:go*
|
||||
@@ -2573,6 +2605,8 @@ $quote eval.txt /*$quote*
|
||||
:his cmdline.txt /*:his*
|
||||
:history cmdline.txt /*:history*
|
||||
:history-indexing cmdline.txt /*:history-indexing*
|
||||
:hor windows.txt /*:hor*
|
||||
:horizontal windows.txt /*:horizontal*
|
||||
:i insert.txt /*:i*
|
||||
:ia map.txt /*:ia*
|
||||
:iabbrev map.txt /*:iabbrev*
|
||||
@@ -3023,8 +3057,8 @@ $quote eval.txt /*$quote*
|
||||
:ret change.txt /*:ret*
|
||||
:retab change.txt /*:retab*
|
||||
:retab! change.txt /*:retab!*
|
||||
:retu eval.txt /*:retu*
|
||||
:return eval.txt /*:return*
|
||||
:retu userfunc.txt /*:retu*
|
||||
:return userfunc.txt /*:return*
|
||||
:rew editing.txt /*:rew*
|
||||
:rewind editing.txt /*:rewind*
|
||||
:ri change.txt /*:ri*
|
||||
@@ -4052,31 +4086,32 @@ E1066 vim9.txt /*E1066*
|
||||
E1067 eval.txt /*E1067*
|
||||
E1068 vim9.txt /*E1068*
|
||||
E1069 vim9.txt /*E1069*
|
||||
E107 eval.txt /*E107*
|
||||
E107 userfunc.txt /*E107*
|
||||
E1071 vim9.txt /*E1071*
|
||||
E1072 eval.txt /*E1072*
|
||||
E1073 vim9.txt /*E1073*
|
||||
E1074 vim9.txt /*E1074*
|
||||
E1075 vim9.txt /*E1075*
|
||||
E1076 eval.txt /*E1076*
|
||||
E1077 vim9.txt /*E1077*
|
||||
E1078 autocmd.txt /*E1078*
|
||||
E1079 vim9.txt /*E1079*
|
||||
E108 eval.txt /*E108*
|
||||
E1080 vim9.txt /*E1080*
|
||||
E1081 eval.txt /*E1081*
|
||||
E1082 vim9.txt /*E1082*
|
||||
E1083 editing.txt /*E1083*
|
||||
E1084 eval.txt /*E1084*
|
||||
E1084 userfunc.txt /*E1084*
|
||||
E1085 eval.txt /*E1085*
|
||||
E1087 vim9.txt /*E1087*
|
||||
E1088 vim9.txt /*E1088*
|
||||
E1089 eval.txt /*E1089*
|
||||
E109 eval.txt /*E109*
|
||||
E1090 eval.txt /*E1090*
|
||||
E1090 userfunc.txt /*E1090*
|
||||
E1091 vim9.txt /*E1091*
|
||||
E1092 various.txt /*E1092*
|
||||
E1093 eval.txt /*E1093*
|
||||
E1094 vim9.txt /*E1094*
|
||||
E1095 eval.txt /*E1095*
|
||||
E1095 userfunc.txt /*E1095*
|
||||
E1096 vim9.txt /*E1096*
|
||||
E1097 vim9.txt /*E1097*
|
||||
E1098 eval.txt /*E1098*
|
||||
@@ -4139,7 +4174,7 @@ E1148 eval.txt /*E1148*
|
||||
E1149 vim9.txt /*E1149*
|
||||
E115 eval.txt /*E115*
|
||||
E1150 vim9.txt /*E1150*
|
||||
E1151 eval.txt /*E1151*
|
||||
E1151 userfunc.txt /*E1151*
|
||||
E1152 vim9.txt /*E1152*
|
||||
E1153 eval.txt /*E1153*
|
||||
E1154 eval.txt /*E1154*
|
||||
@@ -4159,7 +4194,7 @@ E1166 eval.txt /*E1166*
|
||||
E1167 vim9.txt /*E1167*
|
||||
E1168 vim9.txt /*E1168*
|
||||
E1169 eval.txt /*E1169*
|
||||
E117 eval.txt /*E117*
|
||||
E117 userfunc.txt /*E117*
|
||||
E1170 vim9.txt /*E1170*
|
||||
E1171 vim9.txt /*E1171*
|
||||
E1172 vim9.txt /*E1172*
|
||||
@@ -4215,7 +4250,7 @@ E1216 builtin.txt /*E1216*
|
||||
E1217 vim9.txt /*E1217*
|
||||
E1218 vim9.txt /*E1218*
|
||||
E1219 vim9.txt /*E1219*
|
||||
E122 eval.txt /*E122*
|
||||
E122 userfunc.txt /*E122*
|
||||
E1220 vim9.txt /*E1220*
|
||||
E1221 vim9.txt /*E1221*
|
||||
E1222 vim9.txt /*E1222*
|
||||
@@ -4226,7 +4261,7 @@ E1226 vim9.txt /*E1226*
|
||||
E1227 vim9.txt /*E1227*
|
||||
E1228 vim9.txt /*E1228*
|
||||
E1229 eval.txt /*E1229*
|
||||
E123 eval.txt /*E123*
|
||||
E123 userfunc.txt /*E123*
|
||||
E1230 options.txt /*E1230*
|
||||
E1231 map.txt /*E1231*
|
||||
E1232 builtin.txt /*E1232*
|
||||
@@ -4236,7 +4271,7 @@ E1236 vim9.txt /*E1236*
|
||||
E1237 map.txt /*E1237*
|
||||
E1238 vim9.txt /*E1238*
|
||||
E1239 builtin.txt /*E1239*
|
||||
E124 eval.txt /*E124*
|
||||
E124 userfunc.txt /*E124*
|
||||
E1240 change.txt /*E1240*
|
||||
E1241 change.txt /*E1241*
|
||||
E1242 change.txt /*E1242*
|
||||
@@ -4247,7 +4282,7 @@ E1246 eval.txt /*E1246*
|
||||
E1247 cmdline.txt /*E1247*
|
||||
E1248 vim9.txt /*E1248*
|
||||
E1249 syntax.txt /*E1249*
|
||||
E125 eval.txt /*E125*
|
||||
E125 userfunc.txt /*E125*
|
||||
E1250 vim9.txt /*E1250*
|
||||
E1251 vim9.txt /*E1251*
|
||||
E1252 vim9.txt /*E1252*
|
||||
@@ -4258,29 +4293,61 @@ E1256 vim9.txt /*E1256*
|
||||
E1257 vim9.txt /*E1257*
|
||||
E1258 vim9.txt /*E1258*
|
||||
E1259 vim9.txt /*E1259*
|
||||
E126 eval.txt /*E126*
|
||||
E126 userfunc.txt /*E126*
|
||||
E1260 vim9.txt /*E1260*
|
||||
E1261 vim9.txt /*E1261*
|
||||
E1262 vim9.txt /*E1262*
|
||||
E1263 eval.txt /*E1263*
|
||||
E1263 userfunc.txt /*E1263*
|
||||
E1264 vim9.txt /*E1264*
|
||||
E1265 eval.txt /*E1265*
|
||||
E1266 if_pyth.txt /*E1266*
|
||||
E127 eval.txt /*E127*
|
||||
E1267 userfunc.txt /*E1267*
|
||||
E1268 vim9.txt /*E1268*
|
||||
E1269 vim9.txt /*E1269*
|
||||
E127 userfunc.txt /*E127*
|
||||
E1270 change.txt /*E1270*
|
||||
E1271 vim9.txt /*E1271*
|
||||
E1272 vim9.txt /*E1272*
|
||||
E1273 pattern.txt /*E1273*
|
||||
E1274 cmdline.txt /*E1274*
|
||||
E1275 eval.txt /*E1275*
|
||||
E1276 builtin.txt /*E1276*
|
||||
E1277 channel.txt /*E1277*
|
||||
E1278 eval.txt /*E1278*
|
||||
E128 eval.txt /*E128*
|
||||
E1279 eval.txt /*E1279*
|
||||
E128 userfunc.txt /*E128*
|
||||
E1280 spell.txt /*E1280*
|
||||
E1281 pattern.txt /*E1281*
|
||||
E1282 eval.txt /*E1282*
|
||||
E1283 eval.txt /*E1283*
|
||||
E129 eval.txt /*E129*
|
||||
E1284 popup.txt /*E1284*
|
||||
E1285 builtin.txt /*E1285*
|
||||
E1286 builtin.txt /*E1286*
|
||||
E1287 builtin.txt /*E1287*
|
||||
E1288 builtin.txt /*E1288*
|
||||
E1289 builtin.txt /*E1289*
|
||||
E129 userfunc.txt /*E129*
|
||||
E1290 change.txt /*E1290*
|
||||
E1291 testing.txt /*E1291*
|
||||
E1292 cmdline.txt /*E1292*
|
||||
E1293 textprop.txt /*E1293*
|
||||
E1294 textprop.txt /*E1294*
|
||||
E1295 textprop.txt /*E1295*
|
||||
E1296 textprop.txt /*E1296*
|
||||
E1297 vim9.txt /*E1297*
|
||||
E1298 vim9.txt /*E1298*
|
||||
E1299 tagsrch.txt /*E1299*
|
||||
E13 message.txt /*E13*
|
||||
E131 eval.txt /*E131*
|
||||
E132 eval.txt /*E132*
|
||||
E133 eval.txt /*E133*
|
||||
E1300 userfunc.txt /*E1300*
|
||||
E1301 vim9.txt /*E1301*
|
||||
E1302 eval.txt /*E1302*
|
||||
E1303 map.txt /*E1303*
|
||||
E1304 vim9.txt /*E1304*
|
||||
E1305 textprop.txt /*E1305*
|
||||
E1306 vim9.txt /*E1306*
|
||||
E131 userfunc.txt /*E131*
|
||||
E132 userfunc.txt /*E132*
|
||||
E133 userfunc.txt /*E133*
|
||||
E134 change.txt /*E134*
|
||||
E135 autocmd.txt /*E135*
|
||||
E136 starting.txt /*E136*
|
||||
@@ -4345,7 +4412,7 @@ E19 message.txt /*E19*
|
||||
E190 message.txt /*E190*
|
||||
E191 motion.txt /*E191*
|
||||
E192 message.txt /*E192*
|
||||
E193 eval.txt /*E193*
|
||||
E193 userfunc.txt /*E193*
|
||||
E194 message.txt /*E194*
|
||||
E195 starting.txt /*E195*
|
||||
E196 various.txt /*E196*
|
||||
@@ -4413,7 +4480,6 @@ E252 options.txt /*E252*
|
||||
E253 mbyte.txt /*E253*
|
||||
E254 message.txt /*E254*
|
||||
E255 sign.txt /*E255*
|
||||
E256 eval.txt /*E256*
|
||||
E257 if_cscop.txt /*E257*
|
||||
E258 remote.txt /*E258*
|
||||
E259 if_cscop.txt /*E259*
|
||||
@@ -4625,7 +4691,7 @@ E450 popup.txt /*E450*
|
||||
E451 eval.txt /*E451*
|
||||
E452 eval.txt /*E452*
|
||||
E453 syntax.txt /*E453*
|
||||
E454 eval.txt /*E454*
|
||||
E454 userfunc.txt /*E454*
|
||||
E455 print.txt /*E455*
|
||||
E456 print.txt /*E456*
|
||||
E457 print.txt /*E457*
|
||||
@@ -4928,13 +4994,13 @@ E737 builtin.txt /*E737*
|
||||
E738 eval.txt /*E738*
|
||||
E739 builtin.txt /*E739*
|
||||
E74 message.txt /*E74*
|
||||
E740 eval.txt /*E740*
|
||||
E740 userfunc.txt /*E740*
|
||||
E741 eval.txt /*E741*
|
||||
E742 eval.txt /*E742*
|
||||
E742 userfunc.txt /*E742*
|
||||
E743 eval.txt /*E743*
|
||||
E744 netbeans.txt /*E744*
|
||||
E745 eval.txt /*E745*
|
||||
E746 eval.txt /*E746*
|
||||
E746 userfunc.txt /*E746*
|
||||
E747 editing.txt /*E747*
|
||||
E748 repeat.txt /*E748*
|
||||
E749 various.txt /*E749*
|
||||
@@ -5036,7 +5102,6 @@ E835 options.txt /*E835*
|
||||
E836 if_pyth.txt /*E836*
|
||||
E837 if_pyth.txt /*E837*
|
||||
E838 netbeans.txt /*E838*
|
||||
E839 vim9.txt /*E839*
|
||||
E84 windows.txt /*E84*
|
||||
E840 insert.txt /*E840*
|
||||
E841 map.txt /*E841*
|
||||
@@ -5052,7 +5117,7 @@ E85 options.txt /*E85*
|
||||
E850 change.txt /*E850*
|
||||
E851 gui_x11.txt /*E851*
|
||||
E852 gui_x11.txt /*E852*
|
||||
E853 eval.txt /*E853*
|
||||
E853 userfunc.txt /*E853*
|
||||
E854 options.txt /*E854*
|
||||
E855 autocmd.txt /*E855*
|
||||
E856 testing.txt /*E856*
|
||||
@@ -5086,7 +5151,7 @@ E880 if_pyth.txt /*E880*
|
||||
E881 autocmd.txt /*E881*
|
||||
E882 builtin.txt /*E882*
|
||||
E883 builtin.txt /*E883*
|
||||
E884 eval.txt /*E884*
|
||||
E884 userfunc.txt /*E884*
|
||||
E885 sign.txt /*E885*
|
||||
E886 starting.txt /*E886*
|
||||
E887 if_pyth.txt /*E887*
|
||||
@@ -5139,8 +5204,8 @@ E929 starting.txt /*E929*
|
||||
E93 windows.txt /*E93*
|
||||
E930 builtin.txt /*E930*
|
||||
E931 message.txt /*E931*
|
||||
E932 eval.txt /*E932*
|
||||
E933 eval.txt /*E933*
|
||||
E932 userfunc.txt /*E932*
|
||||
E933 userfunc.txt /*E933*
|
||||
E934 sign.txt /*E934*
|
||||
E935 builtin.txt /*E935*
|
||||
E936 autocmd.txt /*E936*
|
||||
@@ -5201,7 +5266,7 @@ E985 eval.txt /*E985*
|
||||
E986 tagsrch.txt /*E986*
|
||||
E987 tagsrch.txt /*E987*
|
||||
E988 gui_w32.txt /*E988*
|
||||
E989 eval.txt /*E989*
|
||||
E989 userfunc.txt /*E989*
|
||||
E99 diff.txt /*E99*
|
||||
E990 eval.txt /*E990*
|
||||
E991 eval.txt /*E991*
|
||||
@@ -5523,7 +5588,7 @@ W18 syntax.txt /*W18*
|
||||
W19 autocmd.txt /*W19*
|
||||
W20 if_pyth.txt /*W20*
|
||||
W21 if_pyth.txt /*W21*
|
||||
W22 eval.txt /*W22*
|
||||
W22 userfunc.txt /*W22*
|
||||
WORD motion.txt /*WORD*
|
||||
WSL os_win32.txt /*WSL*
|
||||
WWW intro.txt /*WWW*
|
||||
@@ -5658,12 +5723,12 @@ a' motion.txt /*a'*
|
||||
a( motion.txt /*a(*
|
||||
a) motion.txt /*a)*
|
||||
a4 print.txt /*a4*
|
||||
a:0 eval.txt /*a:0*
|
||||
a:000 eval.txt /*a:000*
|
||||
a:1 eval.txt /*a:1*
|
||||
a:firstline eval.txt /*a:firstline*
|
||||
a:lastline eval.txt /*a:lastline*
|
||||
a:var eval.txt /*a:var*
|
||||
a:0 userfunc.txt /*a:0*
|
||||
a:000 userfunc.txt /*a:000*
|
||||
a:1 userfunc.txt /*a:1*
|
||||
a:firstline userfunc.txt /*a:firstline*
|
||||
a:lastline userfunc.txt /*a:lastline*
|
||||
a:var userfunc.txt /*a:var*
|
||||
a< motion.txt /*a<*
|
||||
a> motion.txt /*a>*
|
||||
aB motion.txt /*aB*
|
||||
@@ -5809,8 +5874,8 @@ autocommand-events autocmd.txt /*autocommand-events*
|
||||
autocommand-pattern autocmd.txt /*autocommand-pattern*
|
||||
autocommands autocmd.txt /*autocommands*
|
||||
autoformat change.txt /*autoformat*
|
||||
autoload eval.txt /*autoload*
|
||||
autoload-functions eval.txt /*autoload-functions*
|
||||
autoload userfunc.txt /*autoload*
|
||||
autoload-functions userfunc.txt /*autoload-functions*
|
||||
avoid-hit-enter version5.txt /*avoid-hit-enter*
|
||||
aw motion.txt /*aw*
|
||||
a{ motion.txt /*a{*
|
||||
@@ -5866,6 +5931,7 @@ blob-modification eval.txt /*blob-modification*
|
||||
blob2list() builtin.txt /*blob2list()*
|
||||
blockwise-examples visual.txt /*blockwise-examples*
|
||||
blockwise-operators visual.txt /*blockwise-operators*
|
||||
blockwise-put change.txt /*blockwise-put*
|
||||
blockwise-register change.txt /*blockwise-register*
|
||||
blockwise-visual visual.txt /*blockwise-visual*
|
||||
blowfish options.txt /*blowfish*
|
||||
@@ -6207,6 +6273,7 @@ collate-variable eval.txt /*collate-variable*
|
||||
color-schemes syntax.txt /*color-schemes*
|
||||
color-xterm syntax.txt /*color-xterm*
|
||||
coloring syntax.txt /*coloring*
|
||||
colorscheme-override syntax.txt /*colorscheme-override*
|
||||
colortest.vim syntax.txt /*colortest.vim*
|
||||
command-attributes map.txt /*command-attributes*
|
||||
command-block vim9.txt /*command-block*
|
||||
@@ -6268,6 +6335,7 @@ conceal syntax.txt /*conceal*
|
||||
confirm() builtin.txt /*confirm()*
|
||||
connection-refused message.txt /*connection-refused*
|
||||
console-menus gui.txt /*console-menus*
|
||||
context.vim ft_context.txt /*context.vim*
|
||||
control intro.txt /*control*
|
||||
conversion-server mbyte.txt /*conversion-server*
|
||||
convert-to-HTML syntax.txt /*convert-to-HTML*
|
||||
@@ -6442,6 +6510,7 @@ decada_members ft_ada.txt /*decada_members*
|
||||
deepcopy() builtin.txt /*deepcopy()*
|
||||
defaults.vim starting.txt /*defaults.vim*
|
||||
defaults.vim-explained usr_05.txt /*defaults.vim-explained*
|
||||
define-function userfunc.txt /*define-function*
|
||||
definition-search tagsrch.txt /*definition-search*
|
||||
definitions intro.txt /*definitions*
|
||||
delete() builtin.txt /*delete()*
|
||||
@@ -6735,6 +6804,7 @@ extendnew() builtin.txt /*extendnew()*
|
||||
extension-removal cmdline.txt /*extension-removal*
|
||||
extensions-improvements todo.txt /*extensions-improvements*
|
||||
f motion.txt /*f*
|
||||
f-args-example map.txt /*f-args-example*
|
||||
false vim9.txt /*false*
|
||||
false-variable eval.txt /*false-variable*
|
||||
falsy eval.txt /*falsy*
|
||||
@@ -6875,6 +6945,11 @@ format-formatexpr change.txt /*format-formatexpr*
|
||||
formatting change.txt /*formatting*
|
||||
forth.vim syntax.txt /*forth.vim*
|
||||
fortran.vim syntax.txt /*fortran.vim*
|
||||
freebasic.vim syntax.txt /*freebasic.vim*
|
||||
freebasic_no_comment_fold syntax.txt /*freebasic_no_comment_fold*
|
||||
freebasic_operators syntax.txt /*freebasic_operators*
|
||||
freebasic_space_errors syntax.txt /*freebasic_space_errors*
|
||||
freebasic_type_suffixes syntax.txt /*freebasic_type_suffixes*
|
||||
friendship intro.txt /*friendship*
|
||||
frombook usr_01.txt /*frombook*
|
||||
ft-abel-syntax syntax.txt /*ft-abel-syntax*
|
||||
@@ -6907,6 +6982,11 @@ ft-clojure-indent indent.txt /*ft-clojure-indent*
|
||||
ft-clojure-syntax syntax.txt /*ft-clojure-syntax*
|
||||
ft-cobol-syntax syntax.txt /*ft-cobol-syntax*
|
||||
ft-coldfusion-syntax syntax.txt /*ft-coldfusion-syntax*
|
||||
ft-context ft_context.txt /*ft-context*
|
||||
ft-context-commands ft_context.txt /*ft-context-commands*
|
||||
ft-context-intro ft_context.txt /*ft-context-intro*
|
||||
ft-context-mappings ft_context.txt /*ft-context-mappings*
|
||||
ft-context-settings ft_context.txt /*ft-context-settings*
|
||||
ft-cpp-syntax syntax.txt /*ft-cpp-syntax*
|
||||
ft-csh-syntax syntax.txt /*ft-csh-syntax*
|
||||
ft-css-omni insert.txt /*ft-css-omni*
|
||||
@@ -6931,6 +7011,8 @@ ft-forth-syntax syntax.txt /*ft-forth-syntax*
|
||||
ft-fortran-indent indent.txt /*ft-fortran-indent*
|
||||
ft-fortran-plugin filetype.txt /*ft-fortran-plugin*
|
||||
ft-fortran-syntax syntax.txt /*ft-fortran-syntax*
|
||||
ft-freebasic-plugin filetype.txt /*ft-freebasic-plugin*
|
||||
ft-freebasic-syntax syntax.txt /*ft-freebasic-syntax*
|
||||
ft-fvwm-syntax syntax.txt /*ft-fvwm-syntax*
|
||||
ft-gitcommit-plugin filetype.txt /*ft-gitcommit-plugin*
|
||||
ft-gprof-plugin filetype.txt /*ft-gprof-plugin*
|
||||
@@ -6964,6 +7046,15 @@ ft-markdown-syntax syntax.txt /*ft-markdown-syntax*
|
||||
ft-masm-syntax syntax.txt /*ft-masm-syntax*
|
||||
ft-mathematica-syntax syntax.txt /*ft-mathematica-syntax*
|
||||
ft-matlab-indent indent.txt /*ft-matlab-indent*
|
||||
ft-metafont ft_mp.txt /*ft-metafont*
|
||||
ft-metafont-intro ft_mp.txt /*ft-metafont-intro*
|
||||
ft-metafont-mappings ft_mp.txt /*ft-metafont-mappings*
|
||||
ft-metafont-settings ft_mp.txt /*ft-metafont-settings*
|
||||
ft-metapost ft_mp.txt /*ft-metapost*
|
||||
ft-metapost-commands ft_mp.txt /*ft-metapost-commands*
|
||||
ft-metapost-intro ft_mp.txt /*ft-metapost-intro*
|
||||
ft-metapost-mappings ft_mp.txt /*ft-metapost-mappings*
|
||||
ft-metapost-settings ft_mp.txt /*ft-metapost-settings*
|
||||
ft-mma-syntax syntax.txt /*ft-mma-syntax*
|
||||
ft-moo-syntax syntax.txt /*ft-moo-syntax*
|
||||
ft-msql-syntax syntax.txt /*ft-msql-syntax*
|
||||
@@ -7042,6 +7133,8 @@ ft-yaml-syntax syntax.txt /*ft-yaml-syntax*
|
||||
ft-zimbu-plugin filetype.txt /*ft-zimbu-plugin*
|
||||
ft-zsh-syntax syntax.txt /*ft-zsh-syntax*
|
||||
ft_ada.txt ft_ada.txt /*ft_ada.txt*
|
||||
ft_context.txt ft_context.txt /*ft_context.txt*
|
||||
ft_mp.txt ft_mp.txt /*ft_mp.txt*
|
||||
ft_ps1.txt ft_ps1.txt /*ft_ps1.txt*
|
||||
ft_raku.txt ft_raku.txt /*ft_raku.txt*
|
||||
ft_rust.txt ft_rust.txt /*ft_rust.txt*
|
||||
@@ -7057,11 +7150,11 @@ ftplugins usr_05.txt /*ftplugins*
|
||||
fullcommand() builtin.txt /*fullcommand()*
|
||||
funcref() builtin.txt /*funcref()*
|
||||
function() builtin.txt /*function()*
|
||||
function-argument eval.txt /*function-argument*
|
||||
function-argument userfunc.txt /*function-argument*
|
||||
function-key intro.txt /*function-key*
|
||||
function-list usr_41.txt /*function-list*
|
||||
function-range-example eval.txt /*function-range-example*
|
||||
function-search-undo eval.txt /*function-search-undo*
|
||||
function-range-example userfunc.txt /*function-range-example*
|
||||
function-search-undo userfunc.txt /*function-search-undo*
|
||||
function_key intro.txt /*function_key*
|
||||
functions eval.txt /*functions*
|
||||
fuzzy-matching pattern.txt /*fuzzy-matching*
|
||||
@@ -7309,6 +7402,7 @@ g:tex_subscripts syntax.txt /*g:tex_subscripts*
|
||||
g:tex_superscripts syntax.txt /*g:tex_superscripts*
|
||||
g:tex_verbspell syntax.txt /*g:tex_verbspell*
|
||||
g:var eval.txt /*g:var*
|
||||
g:vim_indent indent.txt /*g:vim_indent*
|
||||
g:vim_indent_cont indent.txt /*g:vim_indent_cont*
|
||||
g:vimball_home pi_vimball.txt /*g:vimball_home*
|
||||
g:vimball_mkdir pi_vimball.txt /*g:vimball_mkdir*
|
||||
@@ -7416,6 +7510,7 @@ getscript-data pi_getscript.txt /*getscript-data*
|
||||
getscript-history pi_getscript.txt /*getscript-history*
|
||||
getscript-plugins pi_getscript.txt /*getscript-plugins*
|
||||
getscript-start pi_getscript.txt /*getscript-start*
|
||||
getscriptinfo() builtin.txt /*getscriptinfo()*
|
||||
gettabinfo() builtin.txt /*gettabinfo()*
|
||||
gettabvar() builtin.txt /*gettabvar()*
|
||||
gettabwinvar() builtin.txt /*gettabwinvar()*
|
||||
@@ -7664,6 +7759,7 @@ hl-LineNrAbove syntax.txt /*hl-LineNrAbove*
|
||||
hl-LineNrBelow syntax.txt /*hl-LineNrBelow*
|
||||
hl-MatchParen syntax.txt /*hl-MatchParen*
|
||||
hl-Menu syntax.txt /*hl-Menu*
|
||||
hl-MessageWindow syntax.txt /*hl-MessageWindow*
|
||||
hl-ModeMsg syntax.txt /*hl-ModeMsg*
|
||||
hl-MoreMsg syntax.txt /*hl-MoreMsg*
|
||||
hl-NonText syntax.txt /*hl-NonText*
|
||||
@@ -7672,6 +7768,7 @@ hl-Pmenu syntax.txt /*hl-Pmenu*
|
||||
hl-PmenuSbar syntax.txt /*hl-PmenuSbar*
|
||||
hl-PmenuSel syntax.txt /*hl-PmenuSel*
|
||||
hl-PmenuThumb syntax.txt /*hl-PmenuThumb*
|
||||
hl-PopupNotification syntax.txt /*hl-PopupNotification*
|
||||
hl-Question syntax.txt /*hl-Question*
|
||||
hl-QuickFixLine syntax.txt /*hl-QuickFixLine*
|
||||
hl-Scrollbar syntax.txt /*hl-Scrollbar*
|
||||
@@ -7871,6 +7968,9 @@ if_sniff.txt if_sniff.txt /*if_sniff.txt*
|
||||
if_tcl.txt if_tcl.txt /*if_tcl.txt*
|
||||
ignore-errors eval.txt /*ignore-errors*
|
||||
ignore-timestamp editing.txt /*ignore-timestamp*
|
||||
import-autoload vim9.txt /*import-autoload*
|
||||
import-legacy vim9.txt /*import-legacy*
|
||||
import-map vim9.txt /*import-map*
|
||||
improved-autocmds-5.4 version5.txt /*improved-autocmds-5.4*
|
||||
improved-quickfix version5.txt /*improved-quickfix*
|
||||
improved-sessions version5.txt /*improved-sessions*
|
||||
@@ -7903,6 +8003,7 @@ indentkeys-format indent.txt /*indentkeys-format*
|
||||
index index.txt /*index*
|
||||
index() builtin.txt /*index()*
|
||||
index.txt index.txt /*index.txt*
|
||||
indexof() builtin.txt /*indexof()*
|
||||
info-message starting.txt /*info-message*
|
||||
inform.vim syntax.txt /*inform.vim*
|
||||
informix ft_sql.txt /*informix*
|
||||
@@ -8033,6 +8134,7 @@ keypad-page-up intro.txt /*keypad-page-up*
|
||||
keypad-plus intro.txt /*keypad-plus*
|
||||
keypad-point intro.txt /*keypad-point*
|
||||
keys() builtin.txt /*keys()*
|
||||
keytrans() builtin.txt /*keytrans()*
|
||||
known-bugs todo.txt /*known-bugs*
|
||||
l motion.txt /*l*
|
||||
l: eval.txt /*l:*
|
||||
@@ -8060,6 +8162,7 @@ lcs-space options.txt /*lcs-space*
|
||||
lcs-tab options.txt /*lcs-tab*
|
||||
lcs-trail options.txt /*lcs-trail*
|
||||
left-right-motions motion.txt /*left-right-motions*
|
||||
legacy-import vim9.txt /*legacy-import*
|
||||
len() builtin.txt /*len()*
|
||||
less various.txt /*less*
|
||||
letter print.txt /*letter*
|
||||
@@ -8100,10 +8203,10 @@ lnum-variable eval.txt /*lnum-variable*
|
||||
load-plugins starting.txt /*load-plugins*
|
||||
load-vim-script repeat.txt /*load-vim-script*
|
||||
local-additions help.txt /*local-additions*
|
||||
local-function eval.txt /*local-function*
|
||||
local-function userfunc.txt /*local-function*
|
||||
local-options options.txt /*local-options*
|
||||
local-variable eval.txt /*local-variable*
|
||||
local-variables eval.txt /*local-variables*
|
||||
local-variables userfunc.txt /*local-variables*
|
||||
local_markfilelist pi_netrw.txt /*local_markfilelist*
|
||||
locale mbyte.txt /*locale*
|
||||
locale-name mbyte.txt /*locale-name*
|
||||
@@ -8282,6 +8385,7 @@ message.txt message.txt /*message.txt*
|
||||
messages message.txt /*messages*
|
||||
meta intro.txt /*meta*
|
||||
method eval.txt /*method*
|
||||
mf.vim ft_mp.txt /*mf.vim*
|
||||
min() builtin.txt /*min()*
|
||||
missing-options vi_diff.txt /*missing-options*
|
||||
mkdir() builtin.txt /*mkdir()*
|
||||
@@ -8315,6 +8419,7 @@ mouse_lnum-variable eval.txt /*mouse_lnum-variable*
|
||||
mouse_win-variable eval.txt /*mouse_win-variable*
|
||||
mouse_winid-variable eval.txt /*mouse_winid-variable*
|
||||
movement intro.txt /*movement*
|
||||
mp.vim ft_mp.txt /*mp.vim*
|
||||
ms-dos os_msdos.txt /*ms-dos*
|
||||
msdos os_msdos.txt /*msdos*
|
||||
msql.vim syntax.txt /*msql.vim*
|
||||
@@ -8713,7 +8818,7 @@ no_plugin_maps filetype.txt /*no_plugin_maps*
|
||||
nocombine syntax.txt /*nocombine*
|
||||
non-greedy pattern.txt /*non-greedy*
|
||||
non-zero-arg eval.txt /*non-zero-arg*
|
||||
none-function_argument eval.txt /*none-function_argument*
|
||||
none-function_argument userfunc.txt /*none-function_argument*
|
||||
none-variable eval.txt /*none-variable*
|
||||
normal-index index.txt /*normal-index*
|
||||
not-compatible usr_01.txt /*not-compatible*
|
||||
@@ -8767,7 +8872,7 @@ option-value-function options.txt /*option-value-function*
|
||||
option-window options.txt /*option-window*
|
||||
option_restore() todo.txt /*option_restore()*
|
||||
option_save() todo.txt /*option_save()*
|
||||
optional-function-argument eval.txt /*optional-function-argument*
|
||||
optional-function-argument userfunc.txt /*optional-function-argument*
|
||||
options options.txt /*options*
|
||||
options-changed version5.txt /*options-changed*
|
||||
options-in-terminal terminal.txt /*options-in-terminal*
|
||||
@@ -9072,6 +9177,7 @@ pythonx if_pyth.txt /*pythonx*
|
||||
pythonx-directory if_pyth.txt /*pythonx-directory*
|
||||
pyxeval() builtin.txt /*pyxeval()*
|
||||
q repeat.txt /*q*
|
||||
q-args-example map.txt /*q-args-example*
|
||||
q/ cmdline.txt /*q\/*
|
||||
q: cmdline.txt /*q:*
|
||||
q? cmdline.txt /*q?*
|
||||
@@ -9172,6 +9278,7 @@ regexp pattern.txt /*regexp*
|
||||
regexp-changes-5.4 version5.txt /*regexp-changes-5.4*
|
||||
register sponsor.txt /*register*
|
||||
register-faq sponsor.txt /*register-faq*
|
||||
register-functions usr_41.txt /*register-functions*
|
||||
register-variable eval.txt /*register-variable*
|
||||
registers change.txt /*registers*
|
||||
rego.vim syntax.txt /*rego.vim*
|
||||
@@ -9353,6 +9460,7 @@ setbufvar() builtin.txt /*setbufvar()*
|
||||
setcellwidths() builtin.txt /*setcellwidths()*
|
||||
setcharpos() builtin.txt /*setcharpos()*
|
||||
setcharsearch() builtin.txt /*setcharsearch()*
|
||||
setcmdline() builtin.txt /*setcmdline()*
|
||||
setcmdpos() builtin.txt /*setcmdpos()*
|
||||
setcursorcharpos() builtin.txt /*setcursorcharpos()*
|
||||
setenv() builtin.txt /*setenv()*
|
||||
@@ -9726,6 +9834,7 @@ t_Ce term.txt /*t_Ce*
|
||||
t_Co term.txt /*t_Co*
|
||||
t_Cs term.txt /*t_Cs*
|
||||
t_DL term.txt /*t_DL*
|
||||
t_Ds term.txt /*t_Ds*
|
||||
t_EC term.txt /*t_EC*
|
||||
t_EI term.txt /*t_EI*
|
||||
t_F1 term.txt /*t_F1*
|
||||
@@ -9782,6 +9891,7 @@ t_TE term.txt /*t_TE*
|
||||
t_TI term.txt /*t_TI*
|
||||
t_Te term.txt /*t_Te*
|
||||
t_Ts term.txt /*t_Ts*
|
||||
t_Us term.txt /*t_Us*
|
||||
t_VS term.txt /*t_VS*
|
||||
t_WP term.txt /*t_WP*
|
||||
t_WS term.txt /*t_WS*
|
||||
@@ -9808,6 +9918,7 @@ t_da term.txt /*t_da*
|
||||
t_db term.txt /*t_db*
|
||||
t_dict-variable eval.txt /*t_dict-variable*
|
||||
t_dl term.txt /*t_dl*
|
||||
t_ds term.txt /*t_ds*
|
||||
t_ed version4.txt /*t_ed*
|
||||
t_el version4.txt /*t_el*
|
||||
t_f1 version4.txt /*t_f1*
|
||||
@@ -10053,6 +10164,7 @@ termdebug_use_prompt terminal.txt /*termdebug_use_prompt*
|
||||
termdebug_wide terminal.txt /*termdebug_wide*
|
||||
terminal terminal.txt /*terminal*
|
||||
terminal-api terminal.txt /*terminal-api*
|
||||
terminal-autoshelldir terminal.txt /*terminal-autoshelldir*
|
||||
terminal-client-server terminal.txt /*terminal-client-server*
|
||||
terminal-close terminal.txt /*terminal-close*
|
||||
terminal-colors os_unix.txt /*terminal-colors*
|
||||
@@ -10190,25 +10302,27 @@ try-finally eval.txt /*try-finally*
|
||||
try-nested eval.txt /*try-nested*
|
||||
try-nesting eval.txt /*try-nesting*
|
||||
tutor usr_01.txt /*tutor*
|
||||
twice if_cscop.txt /*twice*
|
||||
two-engines pattern.txt /*two-engines*
|
||||
type() builtin.txt /*type()*
|
||||
type-casting vim9.txt /*type-casting*
|
||||
type-checking vim9.txt /*type-checking*
|
||||
type-inference vim9.txt /*type-inference*
|
||||
type-mistakes tips.txt /*type-mistakes*
|
||||
typecorrect-settings usr_51.txt /*typecorrect-settings*
|
||||
typecorrect.txt usr_51.txt /*typecorrect.txt*
|
||||
typename() builtin.txt /*typename()*
|
||||
u undo.txt /*u*
|
||||
uganda uganda.txt /*uganda*
|
||||
uganda.txt uganda.txt /*uganda.txt*
|
||||
undercurl syntax.txt /*undercurl*
|
||||
underdashed syntax.txt /*underdashed*
|
||||
underdotted syntax.txt /*underdotted*
|
||||
underdouble syntax.txt /*underdouble*
|
||||
underline syntax.txt /*underline*
|
||||
underline-codes syntax.txt /*underline-codes*
|
||||
undo undo.txt /*undo*
|
||||
undo-blocks undo.txt /*undo-blocks*
|
||||
undo-branches undo.txt /*undo-branches*
|
||||
undo-break undo.txt /*undo-break*
|
||||
undo-close-block undo.txt /*undo-close-block*
|
||||
undo-commands undo.txt /*undo-commands*
|
||||
undo-persistence undo.txt /*undo-persistence*
|
||||
undo-redo undo.txt /*undo-redo*
|
||||
@@ -10234,6 +10348,7 @@ user-cmd-ambiguous map.txt /*user-cmd-ambiguous*
|
||||
user-commands map.txt /*user-commands*
|
||||
user-functions eval.txt /*user-functions*
|
||||
user-manual usr_toc.txt /*user-manual*
|
||||
userfunc.txt userfunc.txt /*userfunc.txt*
|
||||
using-<Plug> usr_51.txt /*using-<Plug>*
|
||||
using-menus gui.txt /*using-menus*
|
||||
using-scripts repeat.txt /*using-scripts*
|
||||
@@ -10613,6 +10728,7 @@ vim9-literal-dict vim9.txt /*vim9-literal-dict*
|
||||
vim9-mix vim9.txt /*vim9-mix*
|
||||
vim9-namespace vim9.txt /*vim9-namespace*
|
||||
vim9-no-dict-function vim9.txt /*vim9-no-dict-function*
|
||||
vim9-no-shorten vim9.txt /*vim9-no-shorten*
|
||||
vim9-rationale vim9.txt /*vim9-rationale*
|
||||
vim9-reload vim9.txt /*vim9-reload*
|
||||
vim9-s-namespace vim9.txt /*vim9-s-namespace*
|
||||
@@ -10674,6 +10790,7 @@ vimscript-versions eval.txt /*vimscript-versions*
|
||||
vimtutor usr_01.txt /*vimtutor*
|
||||
virtcol() builtin.txt /*virtcol()*
|
||||
virtcol2col() builtin.txt /*virtcol2col()*
|
||||
virtual-text textprop.txt /*virtual-text*
|
||||
visual-block visual.txt /*visual-block*
|
||||
visual-change visual.txt /*visual-change*
|
||||
visual-examples visual.txt /*visual-examples*
|
||||
|
||||
@@ -889,13 +889,16 @@ like |CTRL-]|.
|
||||
|
||||
The function used for generating the taglist is specified by setting the
|
||||
'tagfunc' option. The function will be called with three arguments:
|
||||
a:pattern The tag identifier or pattern used during the tag search.
|
||||
a:flags String containing flags to control the function behavior.
|
||||
a:info Dict containing the following entries:
|
||||
pattern The tag identifier or pattern used during the tag search.
|
||||
flags String containing flags to control the function behavior.
|
||||
info Dict containing the following entries:
|
||||
buf_ffname Full filename which can be used for priority.
|
||||
user_data Custom data String, if stored in the tag
|
||||
stack previously by tagfunc.
|
||||
|
||||
Note that in a legacy function "a:" needs to be prepended to the argument name
|
||||
when using it.
|
||||
|
||||
Currently up to three flags may be passed to the tag function:
|
||||
'c' The function was invoked by a normal command being processed
|
||||
(mnemonic: the tag function may use the context around the
|
||||
@@ -931,6 +934,8 @@ If the function returns |v:null| instead of a List, a standard tag lookup will
|
||||
be performed instead.
|
||||
|
||||
It is not allowed to change the tagstack from inside 'tagfunc'. *E986*
|
||||
It is not allowed to close a window or change window from inside 'tagfunc'.
|
||||
*E1299*
|
||||
|
||||
The following is a hypothetical example of a function used for 'tagfunc'. It
|
||||
uses the output of |taglist()| to generate the result: a list of tags in the
|
||||
|
||||
@@ -43,15 +43,10 @@ On non-Unix systems a termcap is only available if Vim was compiled with
|
||||
TERMCAP defined.
|
||||
|
||||
*builtin-terms* *builtin_terms*
|
||||
Which builtin terminals are available depends on a few defines in feature.h,
|
||||
which need to be set at compile time:
|
||||
define output of ":version" terminals builtin ~
|
||||
NO_BUILTIN_TCAPS -builtin_terms none
|
||||
SOME_BUILTIN_TCAPS +builtin_terms most common ones (default)
|
||||
ALL_BUILTIN_TCAPS ++builtin_terms all available
|
||||
|
||||
You can see a list of available builtin terminals with ":set term=xxx" (when
|
||||
not running the GUI). Also see |+builtin_terms|.
|
||||
A number of builtin terminals are available. Since patch 9.0.0280 there is no
|
||||
difference between Vim versions. You can see a list of available builtin
|
||||
terminals in the error message you get for `:set term=xxx` (when not running
|
||||
the GUI). Also see |++builtin_terms|.
|
||||
|
||||
If the termcap code is included Vim will try to get the strings for the
|
||||
terminal you are using from the termcap file and the builtin termcaps. Both
|
||||
@@ -372,8 +367,11 @@ OUTPUT CODES *terminal-output-codes*
|
||||
|
||||
Added by Vim (there are no standard codes for these):
|
||||
t_AU set underline color (ANSI) *t_AU* *'t_AU'*
|
||||
t_Ce undercurl end *t_Ce* *'t_Ce'*
|
||||
t_Cs undercurl mode *t_Cs* *'t_Cs'*
|
||||
t_Ce undercurl and underline end *t_Ce* *'t_Ce'*
|
||||
t_Cs undercurl (curly underline) mode *t_Cs* *'t_Cs'*
|
||||
t_Us double underline mode *t_Us* *'t_Us'*
|
||||
t_ds dotted underline mode *t_ds* *'t_ds'*
|
||||
t_Ds dashed underline mode *t_Ds* *'t_Ds'*
|
||||
t_Te strikethrough end *t_Te* *'t_Te'*
|
||||
t_Ts strikethrough mode *t_Ts* *'t_Ts'*
|
||||
t_IS set icon text start *t_IS* *'t_IS'*
|
||||
@@ -630,10 +628,13 @@ When the GUI is running 't_Co' is set to 16777216.
|
||||
*termcap-cursor-shape* *termcap-cursor-color*
|
||||
When Vim enters Insert mode the 't_SI' escape sequence is sent. When Vim
|
||||
enters Replace mode the 't_SR' escape sequence is sent if it is set, otherwise
|
||||
't_SI' is sent. When leaving Insert mode or Replace mode 't_EI' is used. This
|
||||
can be used to change the shape or color of the cursor in Insert or Replace
|
||||
mode. These are not standard termcap/terminfo entries, you need to set them
|
||||
yourself.
|
||||
't_SI' is sent. When leaving Insert mode or Replace mode 't_EI' is used.
|
||||
Note: When 't_EI' is not set then 't_SI' and 't_SR' will not be sent. And
|
||||
when 't_SI' or 't_SR' is not set then 't_EI' is sent only once.
|
||||
|
||||
This can be used to change the shape or color of the cursor in Insert or
|
||||
Replace mode. These are not standard termcap/terminfo entries, you need to set
|
||||
them yourself.
|
||||
Example for an xterm, this changes the color of the cursor: >
|
||||
if &term =~ "xterm"
|
||||
let &t_SI = "\<Esc>]12;purple\x7"
|
||||
@@ -642,6 +643,18 @@ Example for an xterm, this changes the color of the cursor: >
|
||||
endif
|
||||
NOTE: When Vim exits the shape for Normal mode will remain. The shape from
|
||||
before Vim started will not be restored.
|
||||
|
||||
For Windows Terminal you can use something like this: >
|
||||
" Note: This should be set after `set termguicolors` or `set t_Co=256`.
|
||||
if &term =~ 'xterm' || &term == 'win32'
|
||||
" Use DECSCUSR escape sequences
|
||||
let &t_SI = "\e[5 q" " blink bar
|
||||
let &t_SR = "\e[3 q" " blink underline
|
||||
let &t_EI = "\e[1 q" " blink block
|
||||
let &t_ti ..= "\e[1 q" " blink block
|
||||
let &t_te ..= "\e[0 q" " default (depends on terminal, normally blink block)
|
||||
endif
|
||||
|
||||
{not available when compiled without the |+cursorshape| feature}
|
||||
|
||||
*termcap-title*
|
||||
|
||||
@@ -1019,6 +1019,38 @@ A trick to have Vim send this escape sequence: >
|
||||
|
||||
Rationale: Why not allow for any command or expression? Because that might
|
||||
create a security problem.
|
||||
*terminal-autoshelldir*
|
||||
This can be used to pass the current directory from a shell to Vim.
|
||||
Put this in your .vimrc: >
|
||||
def g:Tapi_lcd(_, path: string)
|
||||
if isdirectory(path)
|
||||
execute 'silent lcd ' .. fnameescape(path)
|
||||
endif
|
||||
enddef
|
||||
<
|
||||
And, in a bash init file: >
|
||||
if [[ -n "$VIM_TERMINAL" ]]; then
|
||||
PROMPT_COMMAND='_vim_sync_PWD'
|
||||
function _vim_sync_PWD() {
|
||||
printf '\033]51;["call", "Tapi_lcd", "%q"]\007' "$PWD"
|
||||
}
|
||||
fi
|
||||
<
|
||||
Or, for zsh: >
|
||||
if [[ -n "$VIM_TERMINAL" ]]; then
|
||||
autoload -Uz add-zsh-hook
|
||||
add-zsh-hook -Uz chpwd _vim_sync_PWD
|
||||
function _vim_sync_PWD() {
|
||||
printf '\033]51;["call", "Tapi_lcd", "%q"]\007' "$PWD"
|
||||
}
|
||||
fi
|
||||
<
|
||||
Or, for fish: >
|
||||
if test -n "$VIM_TERMINAL"
|
||||
function _vim_sync_PWD --on-variable=PWD
|
||||
printf '\033]51;["call", "Tapi_lcd", "%s"]\007' "$PWD"
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Using the client-server feature ~
|
||||
|
||||
@@ -94,6 +94,7 @@ test_gui_event({event}, {args})
|
||||
"findrepl" search and replace text.
|
||||
"mouse" mouse button click event.
|
||||
"scrollbar" move or drag the scrollbar.
|
||||
"sendevent" send a low-level GUI event.
|
||||
"tabline" select a tab page by mouse click.
|
||||
"tabmenu" select a tabline menu entry.
|
||||
|
||||
@@ -177,6 +178,16 @@ test_gui_event({event}, {args})
|
||||
dragging: 1 to drag the scrollbar and 0 to click in the
|
||||
scrollbar.
|
||||
|
||||
"sendevent":
|
||||
Send a low-level GUI event (e.g. key-up or down).
|
||||
Currently only supported on MS-Windows.
|
||||
The supported items in {args} are:
|
||||
event: The supported string values are:
|
||||
keyup generate a keyup event
|
||||
keydown generate a keydown event
|
||||
keycode: Keycode to use for a keyup or a keydown event.
|
||||
*E1291*
|
||||
|
||||
"tabline":
|
||||
Inject a mouse click event on the tabline to select a
|
||||
tabpage. The supported items in {args} are:
|
||||
@@ -268,6 +279,9 @@ test_override({name}, {val}) *test_override()*
|
||||
Current supported values for {name} are:
|
||||
|
||||
{name} effect when {val} is non-zero ~
|
||||
alloc_lines make a copy of every buffer line into allocated
|
||||
memory, so that memory access errors can be found
|
||||
by valgrind
|
||||
autoload `import autoload` will load the script right
|
||||
away, not postponed until an item is used
|
||||
char_avail disable the char_avail() function
|
||||
@@ -287,7 +301,8 @@ test_override({name}, {val}) *test_override()*
|
||||
uptime overrules sysinfo.uptime
|
||||
vterm_title setting the window title by a job running in a
|
||||
terminal window
|
||||
ALL clear all overrides ({val} is not used)
|
||||
ALL clear all overrides, except alloc_lines ({val} is
|
||||
not used)
|
||||
|
||||
"starting" is to be used when a test should behave like
|
||||
startup was done. Since the tests are run by sourcing a
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*textprop.txt* For Vim version 9.0. Last change: 2021 Nov 23
|
||||
*textprop.txt* For Vim version 9.0. Last change: 2022 Sep 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -126,6 +126,7 @@ prop_add({lnum}, {col}, {props})
|
||||
If {col} is invalid an error is given. *E964*
|
||||
|
||||
{props} is a dictionary with these fields:
|
||||
type name of the text property type
|
||||
length length of text in bytes, can only be used
|
||||
for a property that does not continue in
|
||||
another line; can be zero
|
||||
@@ -137,8 +138,40 @@ prop_add({lnum}, {col}, {props})
|
||||
bufnr buffer to add the property to; when omitted
|
||||
the current buffer is used
|
||||
id user defined ID for the property; must be a
|
||||
number; when omitted zero is used
|
||||
type name of the text property type
|
||||
number, should be positive; when using "text"
|
||||
then "id" must not be present and will be set
|
||||
automatically to a negative number; otherwise
|
||||
zero is used
|
||||
*E1305*
|
||||
text text to be displayed before {col}, or
|
||||
above/below the line if {col} is zero; prepend
|
||||
and/or append spaces for padding with
|
||||
highlighting; cannot be used with "length",
|
||||
"end_lnum" and "end_col" |virtual-text|
|
||||
*E1294*
|
||||
text_align when "text" is present and {col} is zero;
|
||||
specifies where to display the text:
|
||||
after after the end of the line
|
||||
right right aligned in the window (unless
|
||||
the text wraps to the next screen
|
||||
line)
|
||||
below in the next screen line
|
||||
above just above the line
|
||||
When omitted "after" is used. Only one
|
||||
"right" property can fit in each line, if
|
||||
there are two or more these will go in a
|
||||
separate line (still right aligned).
|
||||
text_padding_left *E1296*
|
||||
used when "text" is present and {col} is zero;
|
||||
padding between the end of the text line
|
||||
(leftmost column for "below") and the virtual
|
||||
text, not highlighted
|
||||
text_wrap when "text" is present and {col} is zero,
|
||||
specifies what happens if the text doesn't
|
||||
fit:
|
||||
wrap wrap the text to the next line
|
||||
truncate truncate the text to make it fit
|
||||
When omitted "truncate" is used.
|
||||
All fields except "type" are optional.
|
||||
|
||||
It is an error when both "length" and "end_lnum" or "end_col"
|
||||
@@ -157,6 +190,36 @@ prop_add({lnum}, {col}, {props})
|
||||
"type" will first be looked up in the buffer the property is
|
||||
added to. When not found, the global property types are used.
|
||||
If not found an error is given.
|
||||
*virtual-text*
|
||||
When "text" is used and the column is non-zero then this text
|
||||
will be displayed at the specified start location of the text
|
||||
property. The text of the buffer line will be shifted to make
|
||||
room. This is called "virtual text".
|
||||
When the column is zero the virtual text will appear above,
|
||||
after or below the buffer text. The "text_align" and
|
||||
"text_wrap" arguments determine how it is displayed.
|
||||
To separate the virtual text from the buffer text prepend
|
||||
and/or append spaces to the "text" field or use the
|
||||
"text_padding_left" value.
|
||||
|
||||
Make sure to use a highlight that makes clear to the user that
|
||||
this is virtual text, otherwise it will be very confusing that
|
||||
the text cannot be edited. When using "above" you need to
|
||||
make clear this text belongs to the text line below it, when
|
||||
using "below" you need to make sure it belongs to the text
|
||||
line above it.
|
||||
|
||||
The text will be displayed but it is not part of the actual
|
||||
buffer line, the cursor cannot be placed on it. A mouse click
|
||||
in the text will move the cursor to the first character after
|
||||
the text, or the last character of the line.
|
||||
Any Tab and other control character in the text will be
|
||||
changed to a space (Rationale: otherwise the size of the text
|
||||
is difficult to compute).
|
||||
A negative "id" will be chosen and is returned. Once a
|
||||
property with "text" has been added for a buffer then using a
|
||||
negative "id" for any other property will give an error:
|
||||
*E1293*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetLnum()->prop_add(col, props)
|
||||
@@ -181,6 +244,9 @@ prop_add_list({props}, [[{lnum}, {col}, {end-lnum}, {end-col}], ...])
|
||||
two items {end-lnum} and {end-col} specify the position just
|
||||
after the text.
|
||||
|
||||
It is not possible to add a text property with a "text" field
|
||||
here.
|
||||
|
||||
Example:
|
||||
call prop_add_list(#{type: 'MyProp', id: 2},
|
||||
\ [[1, 4, 1, 7],
|
||||
@@ -304,11 +370,16 @@ prop_remove({props} [, {lnum} [, {lnum-end}]])
|
||||
{props} is a dictionary with these fields:
|
||||
id remove text properties with this ID
|
||||
type remove text properties with this type name
|
||||
both "id" and "type" must both match
|
||||
types remove text properties with type names in this
|
||||
List
|
||||
both "id" and "type"/"types" must both match
|
||||
bufnr use this buffer instead of the current one
|
||||
all when TRUE remove all matching text properties,
|
||||
not just the first one
|
||||
A property matches when either "id" or "type" matches.
|
||||
Only one of "type" and "types" may be supplied. *E1295*
|
||||
|
||||
A property matches when either "id" or one of the supplied
|
||||
types matches.
|
||||
If buffer "bufnr" does not exist you get an error message.
|
||||
If buffer "bufnr" is not loaded then nothing happens.
|
||||
|
||||
@@ -334,6 +405,8 @@ prop_type_add({name}, {props}) *prop_type_add()* *E969* *E970*
|
||||
combine when omitted or TRUE combine the highlight
|
||||
with any syntax highlight; when FALSE syntax
|
||||
highlight will not be used
|
||||
override when TRUE the highlight overrides any other,
|
||||
including 'cursorline' and Visual
|
||||
start_incl when TRUE inserts at the start position will
|
||||
be included in the text property
|
||||
end_incl when TRUE inserts at the end position will be
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 9.0. Last change: 2022 Jun 27
|
||||
*todo.txt* For Vim version 9.0. Last change: 2022 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,10 +38,21 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Prepare for the Vim 9.0 release:
|
||||
- Update version number in help
|
||||
From test_global
|
||||
Found errors in Test_interrupt_global():
|
||||
Run 1, 02:16:22 - 02:16:27:
|
||||
command line..script /home/mool/vim/vim90/src/testdir/runtest.vim[469]..function RunTheTest[44]..Test_interrupt_global[13]..WaitForAssert[2]..<SNR>7_WaitForCommon[11]..<lambda>20 line 1: Pattern 'Interrupted' does not match 'Type :qa! and press...l changes and exit Vim 1,1 All'
|
||||
command line..script /home/mool/vim/vim90/src/testdir/runtest.vim[469]..function RunTheTest[44]..Test_interrupt_global[20]..WaitForAssert[2]..<SNR>7_WaitForCommon[11]..<lambda>21 line 1: Pattern 'Interrupted' does not match 'Entering Ex mode. Type "visual" to go to Normal mode.'
|
||||
|
||||
Use :defer command:
|
||||
- Use "D" flag of writefile() and mkdir() in tests.
|
||||
(testdir/test_e*.vim done)
|
||||
|
||||
New Vim indent script: #11079 OK?
|
||||
|
||||
Further Vim9 improvements, possibly after launch:
|
||||
- For map(), reduce() and filter() use a specific implementation if the second
|
||||
argument is a compiled function. #11163
|
||||
- Use Vim9 for more runtime files.
|
||||
- Check performance with callgrind and kcachegrind.
|
||||
getline()/substitute()/setline() in #5632
|
||||
@@ -70,12 +81,6 @@ Further Vim9 improvements, possibly after launch:
|
||||
has(featureName), len(someString)
|
||||
- Implement as part of an expression: ++expr, --expr, expr++, expr--.
|
||||
|
||||
Update list of features to vote on:
|
||||
- multiple cursors
|
||||
- built-in LSP support
|
||||
- virtual text, using text properties
|
||||
- start first line halfway, scroll per screen line
|
||||
|
||||
Popup windows:
|
||||
- Preview popup not properly updated when it overlaps with completion menu.
|
||||
(Yegappan Lakshmanan, 2021 May 22)
|
||||
@@ -112,21 +117,6 @@ Popup windows:
|
||||
Use ERROR_IF_POPUP_WINDOW for these.
|
||||
- Figure out the size and position better if wrapping inserts indent
|
||||
|
||||
Text properties:
|
||||
- property is overruled by cursorline. (#8225).
|
||||
Add better control over priority? Make list of all highlighting, specify
|
||||
where property fits in.
|
||||
Or Should we let the textprop highlight overrule other (e.g. diff) highlight
|
||||
if the priority is above a certain value? (#7392)
|
||||
Combining text property with 'cursorline' does not always work (Billie
|
||||
Cleek, #5533)
|
||||
- "C" works OK. "dd" fails to delete text property in a buffer with a single
|
||||
line.
|
||||
- Add text property that shifts text to make room for annotation (e.g.
|
||||
variable type). Like the opposite of conceal. Requires fixing the cursor
|
||||
positioning and mouse clicks as with conceal mode.
|
||||
- See remarks at top of src/textprop.c
|
||||
|
||||
'incsearch' with :s:
|
||||
- :s/foo using CTRL-G moves to another line, should not happen, or use the
|
||||
correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
|
||||
@@ -200,21 +190,6 @@ Terminal emulator window:
|
||||
- When 'encoding' is not utf-8, or the job is using another encoding, setup
|
||||
conversions.
|
||||
|
||||
Patches considered for including:
|
||||
- make functions static if possible, add a few tests. #10612
|
||||
- use ngettext() in a few more places #10606
|
||||
- move f_hasmapto() to map.c #10611
|
||||
- allow for nesting of timeout, sketch in #10595
|
||||
- Add "-n" option to xxd. #10599
|
||||
- Add support for "underdouble", "underdot" and "underdash". #9553
|
||||
- Patch to implement the vimtutor with a plugin: #6414
|
||||
Was originally written by Felipe Morales.
|
||||
- Patch to make fillchars global-local. (#5206)
|
||||
- Version of getchar() that does not move the cursor - #10603
|
||||
Use a separate argument for the new flag.
|
||||
- Improved VB filetype detection. (Doug Kearns, June 26)
|
||||
- Improved FreeBasic runtime files (and a second one). (Doug Kearns, June 26)
|
||||
|
||||
Autoconf: must use autoconf 2.69, later version generates lots of warnings
|
||||
- try using autoconf 2.71 and fix all "obsolete" warnings
|
||||
|
||||
@@ -223,6 +198,18 @@ Can deref_func_name() and deref_function_name() be merged?
|
||||
After patch 8.2.4915 w_botline is computed much more often. Can this be
|
||||
reduced?
|
||||
|
||||
Add BufDeletePost. #11041
|
||||
|
||||
Test property disappears when using CR twice in a row. OK when some text was
|
||||
entered. (#11151)
|
||||
|
||||
Add a string to the 'display' option ("smoothscroll" ?) to make CTRL-E and
|
||||
CTRL-Y scroll one screen line, also if this means the first line doesn't start
|
||||
with the first character (like what happens with a last line that doesn't
|
||||
fit). Display "<<<" at the start of the first visible line (like "@@@" is
|
||||
displayed in the last line). (Arseny Nasokin, #5154)
|
||||
Neovim PR: https://github.com/neovim/neovim/pull/11014
|
||||
|
||||
NFA regexp does not handle composing characters well: #10286
|
||||
[ɔ̃] matches both ɔ and ɔ̃
|
||||
\(ɔ\|ɔ̃\) matches ɔ and not ɔ̃
|
||||
@@ -234,8 +221,21 @@ entry separately. #6609
|
||||
Multiplexers (screen, tmux) can request it to the underlying terminal, and
|
||||
pass it on with modifications.
|
||||
|
||||
Using "A" and "o" in manually created fold (in empty buffer) does not behave
|
||||
consistenly (James McCoy, #10698)
|
||||
|
||||
To avoid flicker: add an option that when a screen clear is requested, instead
|
||||
of clearing it draws everything and uses "clear to end of line" for every line.
|
||||
Resetting 't_ut' already causes this?
|
||||
|
||||
When scheme can't be found by configure there is no clear "not found" message:
|
||||
configure:5769: checking MzScheme install prefix
|
||||
configure:5781: result:
|
||||
|
||||
Can "CSI nr X" be used instead of outputting spaces? Is it faster? #8002
|
||||
|
||||
Typed keys invisible after calling interrupt() from a timer. #10631
|
||||
|
||||
With a window height of 6 and 'scrolloff' set to 3, using "j" does not scroll
|
||||
evenly. (#10545) Need to handle this in scroll_cursor_bot().
|
||||
|
||||
@@ -254,6 +254,12 @@ The line number can be obtained from win->w_lines[].
|
||||
|
||||
MS-Windows: did path modifier :p:8 stop working? #8600
|
||||
|
||||
Version of getchar() that does not move the cursor - #10603 Use a separate
|
||||
argument for the new flag.
|
||||
|
||||
Add "lastline" entry to 'fillchars' to specify a character instead of '@'.
|
||||
#10963
|
||||
|
||||
test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows.
|
||||
|
||||
Information for a specific terminal (e.g. gnome, tmux, konsole, alacritty) is
|
||||
@@ -282,6 +288,9 @@ Also, z= in German on a long word can take a very long time, but CTRL-C to
|
||||
interrupt does not work. Where to add ui_breakcheck()?
|
||||
New English spell files also have very slow suggestions.
|
||||
|
||||
French spell files don't work correctly. #4916
|
||||
Make Vim understand the format somehow?
|
||||
|
||||
Make "g>" and "g<" in Visual mode move the text right or left.
|
||||
Also for a block selection. #8558
|
||||
|
||||
@@ -295,6 +304,8 @@ inconsistent with the documentation.
|
||||
|
||||
globpath() does not use 'wildignorecase' at all? (related to #8350)
|
||||
|
||||
mksession uses :buffer instead of :edit in one place but not another. #10629
|
||||
|
||||
Add 'termguiattr' option, use "gui=" attributes in the terminal? Would work
|
||||
with 'termguicolors'. #1740
|
||||
|
||||
@@ -560,12 +571,6 @@ Bug: script written with "-W scriptout" contains Key codes, while the script
|
||||
read with "-s scriptin" expects escape codes. Probably "scriptout" needs to
|
||||
be adjusted. (Daniel Steinberg, 2019 Feb 24, #4041)
|
||||
|
||||
Add a string to the 'display' option ("smoothscroll" ?) to make CTRL-E and
|
||||
CTRL-Y scroll one screen line, also if this means the first line doesn't start
|
||||
with the first character (like what happens with a last line that doesn't
|
||||
fit). Display "<<<" at the start of the first visible line (like "@@@" is
|
||||
displayed in the last line). (Arseny Nasokin, #5154)
|
||||
|
||||
Window size changes after closing a tab. (#4741)
|
||||
|
||||
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
|
||||
@@ -884,9 +889,6 @@ The ++ options for the :edit command are also useful on the Vim command line.
|
||||
Overlong utf-8 sequence is displayed wrong. (Harm te Hennepe, 2017 Sep 14,
|
||||
#2089) Patch with possible solution by Björn Linse.
|
||||
|
||||
The change list index is local to a buffer, but it doesn't make sense using it
|
||||
for another buffer. (lacygoill) Copy w_changelistidx to wininfo_S and back.
|
||||
|
||||
X11: Putting more than about 262040 characters of text on the clipboard and
|
||||
pasting it in another Vim doesn't work. (Dominique Pelle, 2008 Aug 21-23)
|
||||
clip_x11_request_selection_cb() is called with zero value and length.
|
||||
@@ -1163,9 +1165,6 @@ cmap using execute() has side effects. (Killthemule, 2016 Aug 17, #983)
|
||||
|
||||
Patch to order results from taglist(). (Duncan McDougall, 2016 Oct 25)
|
||||
|
||||
Syntax highlighting for messages with RFC3339 timestamp (#946)
|
||||
Did maintainer reply?
|
||||
|
||||
ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19)
|
||||
Also with latest version.
|
||||
|
||||
@@ -2656,6 +2655,13 @@ Better 'rightleft' or BIDI support:
|
||||
|
||||
|
||||
Spell checking:
|
||||
- List of common misspellings in English:
|
||||
https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
|
||||
German:
|
||||
https://de.wikipedia.org/wiki/Wikipedia:Liste_von_Tippfehlern/F%C3%BCr_Maschinen
|
||||
There are other languages.
|
||||
- [s does not find missing capital at start of the line. #10838
|
||||
Probably because the dot at the end of the previous line isn't seen.
|
||||
- When 'cursorline' is set and the first word should have SpellCap
|
||||
highlighting, redrawing the line removes it when moving the cursor away
|
||||
from the line. (#7085) Would need to inspect the end of the previous line
|
||||
@@ -3761,7 +3767,12 @@ Printing:
|
||||
Syntax highlighting:
|
||||
Long term goal: faster, better, etc. Options:
|
||||
- use treesitter, NeoVim uses it - Many people don't like it.
|
||||
- use TextMate, vscode uses it. #9087 - possibly a long term solution
|
||||
After changes requires rebuilding the library.
|
||||
- use TextMate, vscode uses it. #9087 - Other people don't like it.
|
||||
https://github.com/icedman/vim-textmate
|
||||
Vscode is asked to switch to treesitter:
|
||||
https://github.com/microsoft/vscode/issues/50140
|
||||
- sublime grammar?
|
||||
8 Make ":syn off" use 'runtimepath' instead of $VIMRUNTIME. (Gary Johnson)
|
||||
Should do the same for ":syn on" and ":syn manual".
|
||||
8 Support "containedin" argument for ":syn include", so that the defined
|
||||
@@ -3955,15 +3966,16 @@ Vim script language:
|
||||
can be the plugin name.
|
||||
Perhaps also have a way to remove everything that the package added?
|
||||
including autocommands.
|
||||
7 Pre-parse or compile Vim scripts into a bytecode.
|
||||
7 Pre-parse or compile Vim scripts into a bytecode, like :def functions.
|
||||
Possibilities:
|
||||
1. Put the bytecode with the original script, with an ":if
|
||||
has('bytecode')" around it, so that it's only used with a Vim that
|
||||
supports it. Update the code with a command, can be used in an
|
||||
autocommand.
|
||||
has('bytecode-1234')" around it, so that it's only used with a Vim that
|
||||
supports the version. Update the code with a command, can be used in
|
||||
an autocommand.
|
||||
2. Use a ".vic" file (like Python use .pyc). Create it when writing a
|
||||
.vim file. Problem: distribution.
|
||||
3. Use a cache directory for each user. How to recognize which cached
|
||||
file belongs to a sourced script?
|
||||
.vim file. Problem: distribution, non-writable directory, etc.
|
||||
3. Use a cache directory for each user. Disadvantage: cache lookup may
|
||||
cost more time than bytecode wins.
|
||||
7 Add argument to winwidth() to subtract the space taken by 'foldcolumn',
|
||||
signs and/or 'number'.
|
||||
6 Add ++ and -- operators? They only work on variables (lvals), how to
|
||||
@@ -4423,6 +4435,8 @@ GUI:
|
||||
|
||||
|
||||
Autocommands:
|
||||
9 Add WinNewPre - before creating a new window. #10635
|
||||
9 When triggering WinNew provide the window ID somehow. #10633
|
||||
9 Rework the code from FEAT_OSFILETYPE for autocmd-osfiletypes to use
|
||||
'filetype'. Only for when the current buffer is known.
|
||||
- Put autocommand event names in a hashtable for faster lookup?
|
||||
|
||||
@@ -105,13 +105,13 @@ change again. But you can do something like this: >
|
||||
|
||||
After this a "u" command will undo the delete command and the previous
|
||||
change.
|
||||
*undo-break*
|
||||
To do the opposite, break a change into two undo blocks, in Insert mode use
|
||||
CTRL-G u. This is useful if you want an insert command to be undoable in
|
||||
*undo-break* *undo-close-block*
|
||||
To do the opposite, use a new undo block for the next change, in Insert mode
|
||||
use CTRL-G u. This is useful if you want an insert command to be undoable in
|
||||
parts. E.g., for each sentence. |i_CTRL-G_u|
|
||||
|
||||
Setting the value of 'undolevels' also breaks undo. Even when the new value
|
||||
is equal to the old value. In |Vim9| script: >
|
||||
Setting the value of 'undolevels' also closes the undo block. Even when the
|
||||
new value is equal to the old value. In |Vim9| script: >
|
||||
&undolevels = &undolevels
|
||||
In legacy script: >
|
||||
let &undolevels = &undolevels
|
||||
|
||||
531
runtime/doc/userfunc.txt
Normal file
531
runtime/doc/userfunc.txt
Normal file
@@ -0,0 +1,531 @@
|
||||
*userfunc.txt* For Vim version 9.0. Last change: 2022 Sep 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
Defining and using functions.
|
||||
|
||||
This is introduced in section |41.7| of the user manual.
|
||||
|
||||
1. Defining a fuction |define-function|
|
||||
2. Calling a fuction |:call|
|
||||
3. Cleaning up in a function |:defer|
|
||||
4. Automatically loading functions |autoload-functions|
|
||||
|
||||
==============================================================================
|
||||
|
||||
1. Defining a function ~
|
||||
*define-function*
|
||||
New functions can be defined. These can be called just like builtin
|
||||
functions. The function executes a sequence of Ex commands. Normal mode
|
||||
commands can be executed with the |:normal| command.
|
||||
|
||||
The function name must start with an uppercase letter, to avoid confusion with
|
||||
builtin functions. To prevent from using the same name in different scripts
|
||||
make them script-local. If you do use a global function then avoid obvious,
|
||||
short names. A good habit is to start the function name with the name of the
|
||||
script, e.g., "HTMLcolor()".
|
||||
|
||||
In legacy script it is also possible to use curly braces, see
|
||||
|curly-braces-names|.
|
||||
|
||||
The |autoload| facility is useful to define a function only when it's called.
|
||||
|
||||
*local-function*
|
||||
A function local to a legacy script must start with "s:". A local script
|
||||
function can only be called from within the script and from functions, user
|
||||
commands and autocommands defined in the script. It is also possible to call
|
||||
the function from a mapping defined in the script, but then |<SID>| must be
|
||||
used instead of "s:" when the mapping is expanded outside of the script.
|
||||
There are only script-local functions, no buffer-local or window-local
|
||||
functions.
|
||||
|
||||
In |Vim9| script functions are local to the script by default, prefix "g:" to
|
||||
define a global function.
|
||||
|
||||
*:fu* *:function* *E128* *E129* *E123* *E454*
|
||||
:fu[nction] List all functions and their arguments.
|
||||
|
||||
:fu[nction] {name} List function {name}.
|
||||
{name} can also be a |Dictionary| entry that is a
|
||||
|Funcref|: >
|
||||
:function dict.init
|
||||
|
||||
:fu[nction] /{pattern} List functions with a name matching {pattern}.
|
||||
Example that lists all functions ending with "File": >
|
||||
:function /File$
|
||||
<
|
||||
*:function-verbose*
|
||||
When 'verbose' is non-zero, listing a function will also display where it was
|
||||
last defined. Example: >
|
||||
|
||||
:verbose function SetFileTypeSH
|
||||
function SetFileTypeSH(name)
|
||||
Last set from /usr/share/vim/vim-7.0/filetype.vim
|
||||
<
|
||||
See |:verbose-cmd| for more information.
|
||||
|
||||
*E124* *E125* *E853* *E884*
|
||||
:fu[nction][!] {name}([arguments]) [range] [abort] [dict] [closure]
|
||||
Define a new function by the name {name}. The body of
|
||||
the function follows in the next lines, until the
|
||||
matching |:endfunction|.
|
||||
*E1267*
|
||||
The name must be made of alphanumeric characters and
|
||||
'_', and must start with a capital or "s:" (see
|
||||
above). Note that using "b:" or "g:" is not allowed.
|
||||
(since patch 7.4.260 E884 is given if the function
|
||||
name has a colon in the name, e.g. for "foo:bar()".
|
||||
Before that patch no error was given).
|
||||
|
||||
{name} can also be a |Dictionary| entry that is a
|
||||
|Funcref|: >
|
||||
:function dict.init(arg)
|
||||
< "dict" must be an existing dictionary. The entry
|
||||
"init" is added if it didn't exist yet. Otherwise [!]
|
||||
is required to overwrite an existing function. The
|
||||
result is a |Funcref| to a numbered function. The
|
||||
function can only be used with a |Funcref| and will be
|
||||
deleted if there are no more references to it.
|
||||
*E127* *E122*
|
||||
When a function by this name already exists and [!] is
|
||||
not used an error message is given. There is one
|
||||
exception: When sourcing a script again, a function
|
||||
that was previously defined in that script will be
|
||||
silently replaced.
|
||||
When [!] is used, an existing function is silently
|
||||
replaced. Unless it is currently being executed, that
|
||||
is an error.
|
||||
NOTE: Use ! wisely. If used without care it can cause
|
||||
an existing function to be replaced unexpectedly,
|
||||
which is hard to debug.
|
||||
NOTE: In Vim9 script script-local functions cannot be
|
||||
deleted or redefined.
|
||||
|
||||
For the {arguments} see |function-argument|.
|
||||
|
||||
*:func-range* *a:firstline* *a:lastline*
|
||||
When the [range] argument is added, the function is
|
||||
expected to take care of a range itself. The range is
|
||||
passed as "a:firstline" and "a:lastline". If [range]
|
||||
is excluded, ":{range}call" will call the function for
|
||||
each line in the range, with the cursor on the start
|
||||
of each line. See |function-range-example|.
|
||||
The cursor is still moved to the first line of the
|
||||
range, as is the case with all Ex commands.
|
||||
*:func-abort*
|
||||
When the [abort] argument is added, the function will
|
||||
abort as soon as an error is detected.
|
||||
*:func-dict*
|
||||
When the [dict] argument is added, the function must
|
||||
be invoked through an entry in a |Dictionary|. The
|
||||
local variable "self" will then be set to the
|
||||
dictionary. See |Dictionary-function|.
|
||||
*:func-closure* *E932*
|
||||
When the [closure] argument is added, the function
|
||||
can access variables and arguments from the outer
|
||||
scope. This is usually called a closure. In this
|
||||
example Bar() uses "x" from the scope of Foo(). It
|
||||
remains referenced even after Foo() returns: >
|
||||
:function! Foo()
|
||||
: let x = 0
|
||||
: function! Bar() closure
|
||||
: let x += 1
|
||||
: return x
|
||||
: endfunction
|
||||
: return funcref('Bar')
|
||||
:endfunction
|
||||
|
||||
:let F = Foo()
|
||||
:echo F()
|
||||
< 1 >
|
||||
:echo F()
|
||||
< 2 >
|
||||
:echo F()
|
||||
< 3
|
||||
|
||||
*function-search-undo*
|
||||
The last used search pattern and the redo command "."
|
||||
will not be changed by the function. This also
|
||||
implies that the effect of |:nohlsearch| is undone
|
||||
when the function returns.
|
||||
|
||||
*:endf* *:endfunction* *E126* *E193* *W22* *E1151*
|
||||
:endf[unction] [argument]
|
||||
The end of a function definition. Best is to put it
|
||||
on a line by its own, without [argument].
|
||||
|
||||
[argument] can be:
|
||||
| command command to execute next
|
||||
\n command command to execute next
|
||||
" comment always ignored
|
||||
anything else ignored, warning given when
|
||||
'verbose' is non-zero
|
||||
The support for a following command was added in Vim
|
||||
8.0.0654, before that any argument was silently
|
||||
ignored.
|
||||
|
||||
To be able to define a function inside an `:execute`
|
||||
command, use line breaks instead of |:bar|: >
|
||||
:exe "func Foo()\necho 'foo'\nendfunc"
|
||||
<
|
||||
*:delf* *:delfunction* *E131* *E933* *E1084*
|
||||
:delf[unction][!] {name}
|
||||
Delete function {name}.
|
||||
{name} can also be a |Dictionary| entry that is a
|
||||
|Funcref|: >
|
||||
:delfunc dict.init
|
||||
< This will remove the "init" entry from "dict". The
|
||||
function is deleted if there are no more references to
|
||||
it.
|
||||
With the ! there is no error if the function does not
|
||||
exist.
|
||||
*:retu* *:return* *E133*
|
||||
:retu[rn] [expr] Return from a function. When "[expr]" is given, it is
|
||||
evaluated and returned as the result of the function.
|
||||
If "[expr]" is not given, the number 0 is returned.
|
||||
When a function ends without an explicit ":return",
|
||||
the number 0 is returned.
|
||||
In a :def function *E1095* is given if unreachable
|
||||
code follows after the `:return`.
|
||||
In legacy script there is no check for unreachable
|
||||
lines, thus there is no warning if commands follow
|
||||
`:return`.
|
||||
|
||||
If the ":return" is used after a |:try| but before the
|
||||
matching |:finally| (if present), the commands
|
||||
following the ":finally" up to the matching |:endtry|
|
||||
are executed first. This process applies to all
|
||||
nested ":try"s inside the function. The function
|
||||
returns at the outermost ":endtry".
|
||||
|
||||
*function-argument* *a:var*
|
||||
An argument can be defined by giving its name. In the function this can then
|
||||
be used as "a:name" ("a:" for argument).
|
||||
*a:0* *a:1* *a:000* *E740* *...*
|
||||
Up to 20 arguments can be given, separated by commas. After the named
|
||||
arguments an argument "..." can be specified, which means that more arguments
|
||||
may optionally be following. In the function the extra arguments can be used
|
||||
as "a:1", "a:2", etc. "a:0" is set to the number of extra arguments (which
|
||||
can be 0). "a:000" is set to a |List| that contains these arguments. Note
|
||||
that "a:1" is the same as "a:000[0]".
|
||||
*E742* *E1090*
|
||||
The a: scope and the variables in it cannot be changed, they are fixed.
|
||||
However, if a composite type is used, such as |List| or |Dictionary| , you can
|
||||
change their contents. Thus you can pass a |List| to a function and have the
|
||||
function add an item to it. If you want to make sure the function cannot
|
||||
change a |List| or |Dictionary| use |:lockvar|.
|
||||
|
||||
It is also possible to define a function without any arguments. You must
|
||||
still supply the () then.
|
||||
|
||||
It is allowed to define another function inside a function body.
|
||||
|
||||
*optional-function-argument*
|
||||
You can provide default values for positional named arguments. This makes
|
||||
them optional for function calls. When a positional argument is not
|
||||
specified at a call, the default expression is used to initialize it.
|
||||
This only works for functions declared with `:function` or `:def`, not for
|
||||
lambda expressions |expr-lambda|.
|
||||
|
||||
Example: >
|
||||
function Something(key, value = 10)
|
||||
echo a:key .. ": " .. a:value
|
||||
endfunction
|
||||
call Something('empty') "empty: 10"
|
||||
call Something('key', 20) "key: 20"
|
||||
|
||||
The argument default expressions are evaluated at the time of the function
|
||||
call, not definition. Thus it is possible to use an expression which is
|
||||
invalid the moment the function is defined. The expressions are also only
|
||||
evaluated when arguments are not specified during a call.
|
||||
*none-function_argument*
|
||||
You can pass |v:none| to use the default expression. Note that this means you
|
||||
cannot pass v:none as an ordinary value when an argument has a default
|
||||
expression.
|
||||
|
||||
Example: >
|
||||
function Something(a = 10, b = 20, c = 30)
|
||||
endfunction
|
||||
call Something(1, v:none, 3) " b = 20
|
||||
<
|
||||
*E989*
|
||||
Optional arguments with default expressions must occur after any mandatory
|
||||
arguments. You can use "..." after all optional named arguments.
|
||||
|
||||
It is possible for later argument defaults to refer to prior arguments,
|
||||
but not the other way around. They must be prefixed with "a:", as with all
|
||||
arguments.
|
||||
|
||||
Example that works: >
|
||||
:function Okay(mandatory, optional = a:mandatory)
|
||||
:endfunction
|
||||
Example that does NOT work: >
|
||||
:function NoGood(first = a:second, second = 10)
|
||||
:endfunction
|
||||
<
|
||||
When not using "...", the number of arguments in a function call must be at
|
||||
least equal to the number of mandatory named arguments. When using "...", the
|
||||
number of arguments may be larger than the total of mandatory and optional
|
||||
arguments.
|
||||
|
||||
*local-variables*
|
||||
Inside a function local variables can be used. These will disappear when the
|
||||
function returns. Global variables need to be accessed with "g:".
|
||||
Inside functions local variables are accessed without prepending anything.
|
||||
But you can also prepend "l:" if you like. This is required for some reserved
|
||||
names, such as "count".
|
||||
|
||||
Example: >
|
||||
:function Table(title, ...)
|
||||
: echohl Title
|
||||
: echo a:title
|
||||
: echohl None
|
||||
: echo a:0 .. " items:"
|
||||
: for s in a:000
|
||||
: echon ' ' .. s
|
||||
: endfor
|
||||
:endfunction
|
||||
|
||||
This function can then be called with: >
|
||||
call Table("Table", "line1", "line2")
|
||||
call Table("Empty Table")
|
||||
|
||||
To return more than one value, return a |List|: >
|
||||
:function Compute(n1, n2)
|
||||
: if a:n2 == 0
|
||||
: return ["fail", 0]
|
||||
: endif
|
||||
: return ["ok", a:n1 / a:n2]
|
||||
:endfunction
|
||||
|
||||
This function can then be called with: >
|
||||
:let [success, div] = Compute(102, 6)
|
||||
:if success == "ok"
|
||||
: echo div
|
||||
:endif
|
||||
<
|
||||
==============================================================================
|
||||
|
||||
2. Calling a function ~
|
||||
*:cal* *:call* *E107*
|
||||
:[range]cal[l] {name}([arguments])
|
||||
Call a function. The name of the function and its arguments
|
||||
are as specified with `:function`. Up to 20 arguments can be
|
||||
used. The returned value is discarded.
|
||||
In |Vim9| script using `:call` is optional, these two lines do
|
||||
the same thing: >
|
||||
call SomeFunc(arg)
|
||||
SomeFunc(arg)
|
||||
< Without a range and for functions that accept a range, the
|
||||
function is called once. When a range is given the cursor is
|
||||
positioned at the start of the first line before executing the
|
||||
function.
|
||||
When a range is given and the function doesn't handle it
|
||||
itself, the function is executed for each line in the range,
|
||||
with the cursor in the first column of that line. The cursor
|
||||
is left at the last line (possibly moved by the last function
|
||||
call). The arguments are re-evaluated for each line. Thus
|
||||
this works:
|
||||
*function-range-example* >
|
||||
:function Mynumber(arg)
|
||||
: echo line(".") .. " " .. a:arg
|
||||
:endfunction
|
||||
:1,5call Mynumber(getline("."))
|
||||
<
|
||||
The "a:firstline" and "a:lastline" are defined anyway, they
|
||||
can be used to do something different at the start or end of
|
||||
the range.
|
||||
|
||||
Example of a function that handles the range itself: >
|
||||
|
||||
:function Cont() range
|
||||
: execute (a:firstline + 1) .. "," .. a:lastline .. 's/^/\t\\ '
|
||||
:endfunction
|
||||
:4,8call Cont()
|
||||
<
|
||||
This function inserts the continuation character "\" in front
|
||||
of all the lines in the range, except the first one.
|
||||
|
||||
When the function returns a composite value it can be further
|
||||
dereferenced, but the range will not be used then. Example: >
|
||||
:4,8call GetDict().method()
|
||||
< Here GetDict() gets the range but method() does not.
|
||||
|
||||
*E117*
|
||||
When a function cannot be found the error "E117: Unknown function" will be
|
||||
given. If the function was using an autoload path or an autoload import and
|
||||
the script is a |Vim9| script, this may also be caused by the function not
|
||||
being exported.
|
||||
|
||||
*E132*
|
||||
The recursiveness of user functions is restricted with the |'maxfuncdepth'|
|
||||
option.
|
||||
|
||||
It is also possible to use `:eval`. It does not support a range, but does
|
||||
allow for method chaining, e.g.: >
|
||||
eval GetList()->Filter()->append('$')
|
||||
|
||||
A function can also be called as part of evaluating an expression or when it
|
||||
is used as a method: >
|
||||
let x = GetList()
|
||||
let y = GetList()->Filter()
|
||||
|
||||
==============================================================================
|
||||
|
||||
3. Cleaning up in a function ~
|
||||
*:defer*
|
||||
:defer {func}({args}) Call {func} when the current function is done.
|
||||
{args} are evaluated here.
|
||||
|
||||
Quite often a command in a function has a global effect, which must be undone
|
||||
when the function finishes. Handling this in all kinds of situations can be a
|
||||
hassle. Especially when an unexpected error is encountered. This can be done
|
||||
with `try` / `finally` blocks, but this gets complicated when there is more
|
||||
than one.
|
||||
|
||||
A much simpler solution is using `defer`. It schedules a function call when
|
||||
the function is returning, no matter if there is an error. Example: >
|
||||
func Filter(text) abort
|
||||
call writefile(a:text, 'Tempfile')
|
||||
call system('filter < Tempfile > Outfile')
|
||||
call Handle('Outfile')
|
||||
call delete('Tempfile')
|
||||
call delete('Outfile')
|
||||
endfunc
|
||||
|
||||
Here 'Tempfile' and 'Outfile' will not be deleted if something causes the
|
||||
function to abort. `:defer` can be used to avoid that: >
|
||||
func Filter(text) abort
|
||||
call writefile(a:text, 'Tempfile')
|
||||
defer delete('Tempfile')
|
||||
defer delete('Outfile')
|
||||
call system('filter < Tempfile > Outfile')
|
||||
call Handle('Outfile')
|
||||
endfunc
|
||||
|
||||
Note that deleting "Outfile" is scheduled before calling system(), since it
|
||||
can be created even when `system()` fails.
|
||||
|
||||
The deferred functions are called in reverse order, the last one added is
|
||||
executed first. A useless example: >
|
||||
func Useless() abort
|
||||
for s in range(3)
|
||||
defer execute('echomsg "number ' .. s .. '"')
|
||||
endfor
|
||||
endfunc
|
||||
|
||||
Now `:messages` shows:
|
||||
number 2
|
||||
number 1
|
||||
number 0
|
||||
|
||||
Any return value of the deferred function is discarded. The function cannot
|
||||
be followed by anything, such as "->func" or ".member". Currently `:defer
|
||||
GetArg()->TheFunc()` does not work, it may work in a later version.
|
||||
|
||||
Errors are reported but do not cause aborting execution of deferred functions.
|
||||
|
||||
No range is accepted. The function can be a partial with extra arguments, but
|
||||
not with a dictionary. *E1300*
|
||||
|
||||
==============================================================================
|
||||
|
||||
4. Automatically loading functions ~
|
||||
*autoload-functions*
|
||||
When using many or large functions, it's possible to automatically define them
|
||||
only when they are used. There are two methods: with an autocommand and with
|
||||
the "autoload" directory in 'runtimepath'.
|
||||
|
||||
In |Vim9| script there is also an autoload mechanism for imported scripts, see
|
||||
|import-autoload|.
|
||||
|
||||
|
||||
Using an autocommand ~
|
||||
|
||||
This is introduced in the user manual, section |51.4|.
|
||||
|
||||
The autocommand is useful if you have a plugin that is a long Vim script file.
|
||||
You can define the autocommand and quickly quit the script with `:finish`.
|
||||
That makes Vim startup faster. The autocommand should then load the same file
|
||||
again, setting a variable to skip the `:finish` command.
|
||||
|
||||
Use the FuncUndefined autocommand event with a pattern that matches the
|
||||
function(s) to be defined. Example: >
|
||||
|
||||
:au FuncUndefined BufNet* source ~/vim/bufnetfuncs.vim
|
||||
|
||||
The file "~/vim/bufnetfuncs.vim" should then define functions that start with
|
||||
"BufNet". Also see |FuncUndefined|.
|
||||
|
||||
|
||||
Using an autoload script ~
|
||||
*autoload* *E746*
|
||||
This is introduced in the user manual, section |52.2|.
|
||||
|
||||
Using a script in the "autoload" directory is simpler, but requires using
|
||||
exactly the right file name. A function that can be autoloaded has a name
|
||||
like this: >
|
||||
|
||||
:call filename#funcname()
|
||||
|
||||
These functions are always global, in Vim9 script "g:" needs to be used: >
|
||||
:call g:filename#funcname()
|
||||
|
||||
When such a function is called, and it is not defined yet, Vim will search the
|
||||
"autoload" directories in 'runtimepath' for a script file called
|
||||
"filename.vim". For example "~/.vim/autoload/filename.vim". That file should
|
||||
then define the function like this: >
|
||||
|
||||
function filename#funcname()
|
||||
echo "Done!"
|
||||
endfunction
|
||||
|
||||
The file name and the name used before the # in the function must match
|
||||
exactly, and the defined function must have the name exactly as it will be
|
||||
called. In Vim9 script the "g:" prefix must be used: >
|
||||
function g:filename#funcname()
|
||||
|
||||
or for a compiled function: >
|
||||
def g:filename#funcname()
|
||||
|
||||
It is possible to use subdirectories. Every # in the function name works like
|
||||
a path separator. Thus when calling a function: >
|
||||
|
||||
:call foo#bar#func()
|
||||
|
||||
Vim will look for the file "autoload/foo/bar.vim" in 'runtimepath'.
|
||||
|
||||
This also works when reading a variable that has not been set yet: >
|
||||
|
||||
:let l = foo#bar#lvar
|
||||
|
||||
However, when the autoload script was already loaded it won't be loaded again
|
||||
for an unknown variable.
|
||||
|
||||
When assigning a value to such a variable nothing special happens. This can
|
||||
be used to pass settings to the autoload script before it's loaded: >
|
||||
|
||||
:let foo#bar#toggle = 1
|
||||
:call foo#bar#func()
|
||||
|
||||
Note that when you make a mistake and call a function that is supposed to be
|
||||
defined in an autoload script, but the script doesn't actually define the
|
||||
function, you will get an error message for the missing function. If you fix
|
||||
the autoload script it won't be automatically loaded again. Either restart
|
||||
Vim or manually source the script.
|
||||
|
||||
Also note that if you have two script files, and one calls a function in the
|
||||
other and vice versa, before the used function is defined, it won't work.
|
||||
Avoid using the autoload functionality at the toplevel.
|
||||
|
||||
In |Vim9| script you will get error *E1263* if you define a function with
|
||||
a "#" character in the name. You should use a name without "#" and use
|
||||
`:export`.
|
||||
|
||||
Hint: If you distribute a bunch of scripts you can pack them together with the
|
||||
|vimball| utility. Also read the user manual |distribute-script|.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
@@ -268,14 +268,15 @@ when it doesn't, append !: >
|
||||
You cannot `unlet` script-local variables in |Vim9| script, only in legacy
|
||||
script.
|
||||
|
||||
When a script finishes, the local variables declared there will not be
|
||||
deleted. Functions defined in the script can use them. Example:
|
||||
When a script has been processed to the end, the local variables declared
|
||||
there will not be deleted. Functions defined in the script can use them.
|
||||
Example:
|
||||
>
|
||||
vim9script
|
||||
var counter = 0
|
||||
def g:GetCount(): number
|
||||
s:counter += 1
|
||||
return s:counter
|
||||
counter += 1
|
||||
return counter
|
||||
enddef
|
||||
|
||||
Every time you call the function it will return the next count: >
|
||||
@@ -736,6 +737,8 @@ String manipulation: *string-functions*
|
||||
fnameescape() escape a file name for use with a Vim command
|
||||
tr() translate characters from one set to another
|
||||
strtrans() translate a string to make it printable
|
||||
keytrans() translate internal keycodes to a form that
|
||||
can be used by |:map|
|
||||
tolower() turn a string to lowercase
|
||||
toupper() turn a string to uppercase
|
||||
charclass() class of a character
|
||||
@@ -791,14 +794,16 @@ List manipulation: *list-functions*
|
||||
reduce() reduce a List to a value
|
||||
slice() take a slice of a List
|
||||
sort() sort a List
|
||||
reverse() reverse the order of a List
|
||||
reverse() reverse the order of a List or Blob
|
||||
uniq() remove copies of repeated adjacent items
|
||||
split() split a String into a List
|
||||
join() join List items into a String
|
||||
range() return a List with a sequence of numbers
|
||||
string() String representation of a List
|
||||
call() call a function with List as arguments
|
||||
index() index of a value in a List
|
||||
index() index of a value in a List or Blob
|
||||
indexof() index in a List or Blob where an expression
|
||||
evaluates to true
|
||||
max() maximum value in a List
|
||||
min() minimum value in a List
|
||||
count() count number of times a value appears in a List
|
||||
@@ -1035,6 +1040,7 @@ Command line: *command-line-functions*
|
||||
getcmdpos() get position of the cursor in the command line
|
||||
getcmdscreenpos() get screen position of the cursor in the
|
||||
command line
|
||||
setcmdline() set the current command line
|
||||
setcmdpos() set position of the cursor in the command line
|
||||
getcmdtype() return the current command-line type
|
||||
getcmdwintype() return the current command-line window type
|
||||
@@ -1307,6 +1313,14 @@ Prompt Buffer: *promptbuffer-functions*
|
||||
prompt_setinterrupt() set interrupt callback for a buffer
|
||||
prompt_setprompt() set the prompt text for a buffer
|
||||
|
||||
Registers: *register-functions*
|
||||
getreg() get contents of a register
|
||||
getreginfo() get information about a register
|
||||
getregtype() get type of a register
|
||||
setreg() set contents and type of a register
|
||||
reg_executing() return the name of the register being executed
|
||||
reg_recording() return the name of the register being recorded
|
||||
|
||||
Text Properties: *text-property-functions*
|
||||
prop_add() attach a property at a position
|
||||
prop_add_list() attach a property at multiple positions
|
||||
@@ -1338,6 +1352,7 @@ Various: *various-functions*
|
||||
did_filetype() check if a FileType autocommand was used
|
||||
eventhandler() check if invoked by an event handler
|
||||
getpid() get process ID of Vim
|
||||
getscriptinfo() get list of sourced vim scripts
|
||||
getimstatus() check if IME status is active
|
||||
interrupt() interrupt script execution
|
||||
windowsversion() get MS-Windows version
|
||||
@@ -1349,13 +1364,6 @@ Various: *various-functions*
|
||||
undofile() get the name of the undo file
|
||||
undotree() return the state of the undo tree
|
||||
|
||||
getreg() get contents of a register
|
||||
getreginfo() get information about a register
|
||||
getregtype() get type of a register
|
||||
setreg() set contents and type of a register
|
||||
reg_executing() return the name of the register being executed
|
||||
reg_recording() return the name of the register being recorded
|
||||
|
||||
shiftwidth() effective value of 'shiftwidth'
|
||||
|
||||
wordcount() get byte/word/char count of buffer
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 9.0. Last change: 2022 Jun 25
|
||||
*various.txt* For Vim version 9.0. Last change: 2022 Sep 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -29,6 +29,8 @@ CTRL-L Clear and redraw the screen. The redraw may happen
|
||||
Useful to update the status line(s) when 'statusline'
|
||||
includes an item that doesn't cause automatic
|
||||
updating.
|
||||
If the command line is being edited the redraw is
|
||||
postponed until later.
|
||||
|
||||
*:redrawt* *:redrawtabline*
|
||||
:redrawt[abline] Redraw the tabline. Useful to update the tabline when
|
||||
@@ -332,7 +334,8 @@ g8 Print the hex values of the bytes used in the
|
||||
*+ARP* Amiga only: ARP support included
|
||||
B *+arabic* |Arabic| language support
|
||||
B *+autochdir* support 'autochdir' option
|
||||
T *+autocmd* |:autocmd|, automatic commands
|
||||
T *+autocmd* |:autocmd|, automatic commands. Always enabled since
|
||||
8.0.1564
|
||||
H *+autoservername* Automatically enable |clientserver|
|
||||
m *+balloon_eval* |balloon-eval| support in the GUI. Included when
|
||||
compiling with supported GUI (Motif, GTK, GUI) and
|
||||
@@ -341,8 +344,8 @@ m *+balloon_eval* |balloon-eval| support in the GUI. Included when
|
||||
H *+balloon_eval_term* |balloon-eval| support in the terminal,
|
||||
'balloonevalterm'
|
||||
N *+browse* |:browse| command
|
||||
N *+builtin_terms* some terminals builtin |builtin-terms|
|
||||
B *++builtin_terms* maximal terminals builtin |builtin-terms|
|
||||
T *++builtin_terms* maximal terminals builtin |builtin-terms| Always
|
||||
enabled since 9.0.0280
|
||||
N *+byte_offset* support for 'o' flag in 'statusline' option, "go"
|
||||
and ":goto" commands.
|
||||
m *+channel* inter process communication |channel|
|
||||
@@ -373,13 +376,14 @@ N *+eval* expression evaluation |eval.txt|
|
||||
T *+ex_extra* always on now, used to be for Vim's extra Ex commands
|
||||
N *+extra_search* |'hlsearch'| and |'incsearch'| options.
|
||||
- *+farsi* Removed: |farsi| language
|
||||
N *+file_in_path* |gf|, |CTRL-W_f| and |<cfile>|
|
||||
T *+file_in_path* |gf|, |CTRL-W_f| and |<cfile>| Always enabled since
|
||||
9.0.265
|
||||
N *+find_in_path* include file searches: |[I|, |:isearch|,
|
||||
|CTRL-W_CTRL-I|, |:checkpath|, etc.
|
||||
N *+folding* |folding|
|
||||
*+footer* |gui-footer|
|
||||
*+fork* Unix only: |fork| shell commands
|
||||
*+float* Floating point support
|
||||
T *+float* Floating point support Always enabled since 9.0.0491
|
||||
N *+gettext* message translations |multi-lang|
|
||||
- *+GUI_Athena* Unix only: Athena |GUI|
|
||||
*+GUI_neXtaw* Unix only: neXtaw |GUI|
|
||||
@@ -431,7 +435,8 @@ T *+num64* 64-bit Number support |Number|
|
||||
check the actual size of a Number.
|
||||
m *+ole* Win32 GUI only: |ole-interface|
|
||||
N *+packages* Loading |packages|
|
||||
N *+path_extra* Up/downwards search in 'path' and 'tags'
|
||||
T *+path_extra* Up/downwards search in 'path' and 'tags' Always
|
||||
enabled since 9.0.0270
|
||||
m *+perl* Perl interface |perl|
|
||||
m *+perl/dyn* Perl interface |perl-dynamic| |/dyn|
|
||||
N *+persistent_undo* Persistent undo |undo-persistence|
|
||||
@@ -470,7 +475,7 @@ m *+terminal* Support for terminal window |terminal|
|
||||
*+terminfo* uses |terminfo| instead of termcap
|
||||
N *+termresponse* support for |t_RV| and |v:termresponse|
|
||||
B *+termguicolors* 24-bit color in xterm-compatible terminals support
|
||||
N *+textobjects* |text-objects| selection
|
||||
T *+textobjects* |text-objects| selection. Always enabled since 9.0.0222.
|
||||
N *+textprop* |text-properties|
|
||||
*+tgetent* non-Unix only: able to use external termcap
|
||||
N *+timers* the |timer_start()| function
|
||||
@@ -488,8 +493,8 @@ T *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200.
|
||||
T *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||
T *+vreplace* |gR| and |gr|
|
||||
*+vtp* on MS-Windows console: support for 'termguicolors'
|
||||
N *+wildignore* |'wildignore'|
|
||||
N *+wildmenu* |'wildmenu'|
|
||||
T *+wildignore* |'wildignore'| Always enabled since 9.0.0278
|
||||
T *+wildmenu* |'wildmenu'|| Always enabled since 9.0.0279
|
||||
T *+windows* more than one window; Always enabled since 8.0.1118.
|
||||
m *+writebackup* |'writebackup'| is default on
|
||||
m *+xim* X input method |xim|
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user