mirror of
https://github.com/zoriya/vim.git
synced 2025-12-07 15:56:17 +00:00
Compare commits
1157 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4c8da025ef | ||
|
|
c97b3febc8 | ||
|
|
a634b92b96 | ||
|
|
f8da324619 | ||
|
|
4a82bdfaa8 | ||
|
|
41e6f7d6ba | ||
|
|
54844857fd | ||
|
|
b07b9dc4da | ||
|
|
e467189022 | ||
|
|
f4ee1cb74b | ||
|
|
b56cef0be0 | ||
|
|
d4afbdd071 | ||
|
|
7879bc5c13 | ||
|
|
1e33cd72b6 | ||
|
|
b852305dbf | ||
|
|
75b277d35c | ||
|
|
9771b2a67f | ||
|
|
1087b8c29a | ||
|
|
2a281ccca0 | ||
|
|
e6c9aa5e6a | ||
|
|
85f4521808 | ||
|
|
580c1fcb4a | ||
|
|
27e12c7669 | ||
|
|
fa145f2009 | ||
|
|
26e8f7b0ab | ||
|
|
a991ce9c08 | ||
|
|
ac9c6d5c78 | ||
|
|
9960ebcace | ||
|
|
20d161ace3 | ||
|
|
290b887e8c | ||
|
|
ea746f9e86 | ||
|
|
0e95841004 | ||
|
|
f449825ae2 | ||
|
|
9b259f520e | ||
|
|
d615a3122a | ||
|
|
d2f4800099 | ||
|
|
da5da654de | ||
|
|
c661e11e9c | ||
|
|
b5a0719cb7 | ||
|
|
b6d01f131c | ||
|
|
9a00e7c7cf | ||
|
|
85ff0c1912 | ||
|
|
8e5f26ec6a | ||
|
|
4dbb2669e9 | ||
|
|
64885645e7 | ||
|
|
0583491277 | ||
|
|
119fdd9293 | ||
|
|
317468aace | ||
|
|
3d90f71b76 | ||
|
|
fe7b20a1a3 | ||
|
|
b9a974df9e | ||
|
|
b74ebfc6bf | ||
|
|
b043ff34c1 | ||
|
|
2dfc22908e | ||
|
|
3f168ec8ae | ||
|
|
993b17569b | ||
|
|
12a0d999b1 | ||
|
|
cd39b69b02 | ||
|
|
20f48d5b2d | ||
|
|
ba77bbb5c7 | ||
|
|
b32064fedb | ||
|
|
6d11347260 | ||
|
|
4a1ad55564 | ||
|
|
f59cbefd0a | ||
|
|
7086b3e76a | ||
|
|
3bd7fa12e1 | ||
|
|
6ee7b521fa | ||
|
|
7ece036d72 | ||
|
|
e379e21ddc | ||
|
|
8c358e024f | ||
|
|
a4dfbfed89 | ||
|
|
6de4e58cf2 | ||
|
|
e085dfda5d | ||
|
|
1f025b01e2 | ||
|
|
f7f746b167 | ||
|
|
f3b68d4759 | ||
|
|
900894b09a | ||
|
|
3695d0e41b | ||
|
|
28a23602e8 | ||
|
|
ee865f37ac | ||
|
|
112431f217 | ||
|
|
789b8854d2 | ||
|
|
5a05d374d3 | ||
|
|
02902b547b | ||
|
|
b90e3bc491 | ||
|
|
413f83990f | ||
|
|
f057aca1cc | ||
|
|
db38552dcd | ||
|
|
03ca4002c1 | ||
|
|
e845b38dab | ||
|
|
9eb1ce5315 | ||
|
|
2dede3dbfa | ||
|
|
5277cfaf8a | ||
|
|
54f70cf078 | ||
|
|
02774f99ce | ||
|
|
3474594239 | ||
|
|
a76fbe6e00 | ||
|
|
91adcbdcc1 | ||
|
|
f109bf93c9 | ||
|
|
c1946267f2 | ||
|
|
54e1f56cf2 | ||
|
|
3aa114463f | ||
|
|
e1b95f5252 | ||
|
|
ec8deb092c | ||
|
|
b80ae6cec3 | ||
|
|
ceffca683b | ||
|
|
c3b315f496 | ||
|
|
abc808112e | ||
|
|
46a0582ffa | ||
|
|
e6fca0e822 | ||
|
|
7fe8f43f49 | ||
|
|
46bdae036a | ||
|
|
edcba96c00 | ||
|
|
7398f367d5 | ||
|
|
960822a11f | ||
|
|
7c948644fb | ||
|
|
790f9a890c | ||
|
|
ca0ffc0d63 | ||
|
|
8ffcb47a43 | ||
|
|
4927bc7d27 | ||
|
|
99c3849a92 | ||
|
|
b895b0fabc | ||
|
|
ceee7a808c | ||
|
|
696270bcae | ||
|
|
02c51b1dd8 | ||
|
|
1926ae4184 | ||
|
|
db54e989b5 | ||
|
|
a7aba6ca50 | ||
|
|
78c5a5abc6 | ||
|
|
87018255e3 | ||
|
|
98e68c07ce | ||
|
|
03cd697d63 | ||
|
|
5790a54166 | ||
|
|
d606fccf6f | ||
|
|
aa64ba1587 | ||
|
|
476733f3d0 | ||
|
|
1db1514365 | ||
|
|
2ce070c27a | ||
|
|
6f00d17e8d | ||
|
|
3da696db6a | ||
|
|
346ac1429c | ||
|
|
063c562a37 | ||
|
|
00cd18222e | ||
|
|
d25021cf03 | ||
|
|
d8b86c937a | ||
|
|
e30d8e4ce0 | ||
|
|
6b5efcdd8e | ||
|
|
92d9ee5f4c | ||
|
|
0483e49f90 | ||
|
|
e6059c321b | ||
|
|
177437cc6f | ||
|
|
a66feb5fb5 | ||
|
|
249a208803 | ||
|
|
e2deb7e598 | ||
|
|
ad29f6af0a | ||
|
|
e7d79eb98a | ||
|
|
ffb13674d1 | ||
|
|
c30a90d9b2 | ||
|
|
35928ee8f8 | ||
|
|
c1f8bb37c6 | ||
|
|
6ffcc58be3 | ||
|
|
8b2457a381 | ||
|
|
fc93594d56 | ||
|
|
f5356bf675 | ||
|
|
596ad66d1d | ||
|
|
62145db91b | ||
|
|
504543f98b | ||
|
|
6b9c202549 | ||
|
|
4d00b835c4 | ||
|
|
f787ee8451 | ||
|
|
213c323184 | ||
|
|
e5f7cd0a60 | ||
|
|
983d808674 | ||
|
|
24a95f42b8 | ||
|
|
e7833e7347 | ||
|
|
0ce2c594d0 | ||
|
|
f36bbcd402 | ||
|
|
0661033075 | ||
|
|
0405405536 | ||
|
|
733bbcde77 | ||
|
|
342f4f626e | ||
|
|
23c92d93c1 | ||
|
|
ee17b6f70d | ||
|
|
7bcd25cad3 | ||
|
|
86cfb39030 | ||
|
|
1bd2cb1169 | ||
|
|
4e554d282c | ||
|
|
cc0bcf4c9f | ||
|
|
11d2aeeca4 | ||
|
|
da200c2f78 | ||
|
|
5856b07795 | ||
|
|
cf138d4ea5 | ||
|
|
f7ac0ef509 | ||
|
|
1689e847ff | ||
|
|
1690ec64ff | ||
|
|
18d2709aa1 | ||
|
|
67c951df4c | ||
|
|
9b04c50319 | ||
|
|
00cb247465 | ||
|
|
28a60f898d | ||
|
|
1c7397f3f1 | ||
|
|
f6d28fe2c9 | ||
|
|
d2a08ba0fa | ||
|
|
a4245a10ea | ||
|
|
00df69e62b | ||
|
|
c2a37013bd | ||
|
|
86eda07805 | ||
|
|
59adcb4c20 | ||
|
|
e4ba5df7c7 | ||
|
|
18143d3111 | ||
|
|
dccc29c228 | ||
|
|
3170342af3 | ||
|
|
282a94be99 | ||
|
|
544be0d893 | ||
|
|
623ba31821 | ||
|
|
e073a8b79f | ||
|
|
7db89bdc23 | ||
|
|
e651e110c1 | ||
|
|
233f956bd4 | ||
|
|
f44cbe96fa | ||
|
|
6e60cf444a | ||
|
|
ee9166eb3b | ||
|
|
fc68299d43 | ||
|
|
aa90d4f031 | ||
|
|
71ebf3baca | ||
|
|
db510ca805 | ||
|
|
15cbaae313 | ||
|
|
d69aecf141 | ||
|
|
3c3cf1d689 | ||
|
|
32f3461465 | ||
|
|
c8a034210f | ||
|
|
ced2c7394a | ||
|
|
889f6af371 | ||
|
|
4c6fe2e2ea | ||
|
|
e0bfb7d301 | ||
|
|
8b20203141 | ||
|
|
b2422f7540 | ||
|
|
67b0ecf754 | ||
|
|
21d3212361 | ||
|
|
9d093fd056 | ||
|
|
397e356d7b | ||
|
|
e1dc9a6275 | ||
|
|
acb91d3905 | ||
|
|
738ce77aa9 | ||
|
|
f3db141aed | ||
|
|
3775f777a6 | ||
|
|
b147d31489 | ||
|
|
456ae556b4 | ||
|
|
c41b7a26fc | ||
|
|
ce53e3ea55 | ||
|
|
7a9d1aa878 | ||
|
|
f6fc255e8d | ||
|
|
da16a1b471 | ||
|
|
816fbcc262 | ||
|
|
0ffa97e8fa | ||
|
|
6ad4a60a97 | ||
|
|
d7085a0635 | ||
|
|
eb91e24d5e | ||
|
|
ac2d8815ae | ||
|
|
e102e44fc6 | ||
|
|
e2528ae111 | ||
|
|
0b8b145bf8 | ||
|
|
1610528cc3 | ||
|
|
1bed993c01 | ||
|
|
6e55e85f92 | ||
|
|
5bbcfbc4a2 | ||
|
|
9d8ef7cc43 | ||
|
|
a96d544bc3 | ||
|
|
e3b6c78ddc | ||
|
|
4b9777a1df | ||
|
|
2ac708b548 | ||
|
|
e06afb7860 | ||
|
|
3e1e63de18 | ||
|
|
3ac2d3da5f | ||
|
|
55460da26c | ||
|
|
0e82b59df3 | ||
|
|
bddc6adca6 | ||
|
|
a5eb6785ef | ||
|
|
7129de868c | ||
|
|
00d07a97ad | ||
|
|
0382f05dbd | ||
|
|
f937ab32a1 | ||
|
|
fe1463674c | ||
|
|
2ba9d2e14e | ||
|
|
1d3e0e8f31 | ||
|
|
93ebb5e75e | ||
|
|
85c3a5bc26 | ||
|
|
d08745040b | ||
|
|
6c93c94929 | ||
|
|
f2534434c9 | ||
|
|
9b73902dbe | ||
|
|
73aba18eb7 | ||
|
|
d58bad6bc1 | ||
|
|
90c27b2803 | ||
|
|
639751d218 | ||
|
|
cd7293bf6c | ||
|
|
03e44a1d70 | ||
|
|
e3daa06be1 | ||
|
|
b49ad28d73 | ||
|
|
6a3897232a | ||
|
|
9a6cf34a1e | ||
|
|
e5e04306bf | ||
|
|
6dfdff3f27 | ||
|
|
f97f6bbf56 | ||
|
|
5c018bee0e | ||
|
|
d4e4ecbb37 | ||
|
|
74e1dada41 | ||
|
|
f39842f148 | ||
|
|
d809c0a903 | ||
|
|
58f39d89a8 | ||
|
|
8fbd9449e7 | ||
|
|
0db1ea4815 | ||
|
|
20f61d96f8 | ||
|
|
4c215ecdaf | ||
|
|
535b9e12d0 | ||
|
|
fa0094e162 | ||
|
|
1da9fdb8c7 | ||
|
|
e750f8c330 | ||
|
|
d42f95bbfb | ||
|
|
2f25e40b1f | ||
|
|
e8d6f03f6a | ||
|
|
3fc7a7e44a | ||
|
|
afe0466fb1 | ||
|
|
1193951beb | ||
|
|
c51fa7bc46 | ||
|
|
3d3a9152fa | ||
|
|
79d9cb4cb0 | ||
|
|
e059fae100 | ||
|
|
9180633e68 | ||
|
|
544b209a2d | ||
|
|
6e93689bde | ||
|
|
118f8e9da3 | ||
|
|
cdd934439d | ||
|
|
2ae7ffe0bc | ||
|
|
6551ace0fe | ||
|
|
b557f48982 | ||
|
|
171c5b9b03 | ||
|
|
757593c07a | ||
|
|
618e47d1cd | ||
|
|
8dabccd295 | ||
|
|
a76f3221cd | ||
|
|
b0d584d97a | ||
|
|
e34b51e95f | ||
|
|
c6d533b0ad | ||
|
|
6909639249 | ||
|
|
75dc1ed1ad | ||
|
|
be07caa071 | ||
|
|
6d626c4184 | ||
|
|
a0fddaa2f4 | ||
|
|
5e6e4042b1 | ||
|
|
a03380baa4 | ||
|
|
309ded1954 | ||
|
|
9fa35b1c38 | ||
|
|
e71e9d9ad3 | ||
|
|
c13b3d1350 | ||
|
|
20cd8699ac | ||
|
|
92997dda78 | ||
|
|
19a3bc3add | ||
|
|
6633611f42 | ||
|
|
16af913eee | ||
|
|
478668013f | ||
|
|
17befac581 | ||
|
|
ca22fc36a4 | ||
|
|
a6ab5e69d3 | ||
|
|
f6fb52b667 | ||
|
|
19968fc4ec | ||
|
|
f5d0f54790 | ||
|
|
9f29621415 | ||
|
|
72904d5fda | ||
|
|
2d0988ef93 | ||
|
|
d4376dc3eb | ||
|
|
bedc69f9d6 | ||
|
|
a055b441f5 | ||
|
|
4924ad099f | ||
|
|
787de412b8 | ||
|
|
ab9f2ecfd4 | ||
|
|
f9037f186a | ||
|
|
654bdbbd32 | ||
|
|
6ac1544e13 | ||
|
|
6cc8bc8366 | ||
|
|
8fc6a1dae0 | ||
|
|
0ffc17aa47 | ||
|
|
4b1cc7906f | ||
|
|
e1eaae27f4 | ||
|
|
25dec33c9b | ||
|
|
f244b2fbf2 | ||
|
|
b5f6fe9ca2 | ||
|
|
2b6a12af4d | ||
|
|
8b8f7d19f8 | ||
|
|
0bbc1be0a3 | ||
|
|
dbeadf05b6 | ||
|
|
6d192a4ac9 | ||
|
|
b23db545ce | ||
|
|
6235a109c4 | ||
|
|
28ae5a32fd | ||
|
|
fc3058495d | ||
|
|
c3172fe9e4 | ||
|
|
04510566b1 | ||
|
|
44a6b72d7f | ||
|
|
9994160bfe | ||
|
|
c5d2744c04 | ||
|
|
56bafd7a6a | ||
|
|
0a07646845 | ||
|
|
38ab19e00f | ||
|
|
4dd266cb66 | ||
|
|
b102728c20 | ||
|
|
e27578aee6 | ||
|
|
07a2b61d4c | ||
|
|
817db406bb | ||
|
|
442d1746f4 | ||
|
|
a5988f582e | ||
|
|
e9ef347c13 | ||
|
|
be5cdd1d63 | ||
|
|
d2af6c66fe | ||
|
|
d5475e8d8d | ||
|
|
6e940d9a1d | ||
|
|
8cfe52e6fb | ||
|
|
6e5ab2b994 | ||
|
|
008c91537b | ||
|
|
bfe377b8f2 | ||
|
|
825cf813fa | ||
|
|
b0efa49ed1 | ||
|
|
876f5fb570 | ||
|
|
e500ae8e29 | ||
|
|
2261c89a49 | ||
|
|
5a0dd71ed9 | ||
|
|
bfc461f756 | ||
|
|
ad0c442f1f | ||
|
|
4f389e7c0f | ||
|
|
4112acae08 | ||
|
|
a456b12011 | ||
|
|
20b33b56ad | ||
|
|
cf8cde2e5a | ||
|
|
8a35033782 | ||
|
|
e98fb643ec | ||
|
|
636d32b327 | ||
|
|
10f23e10a9 | ||
|
|
4868f637b8 | ||
|
|
b209b86e66 | ||
|
|
15a0a0281a | ||
|
|
7772c93a3e | ||
|
|
e4c79d3615 | ||
|
|
ba913b14dd | ||
|
|
5b0889b8bf | ||
|
|
d3515a1e88 | ||
|
|
4a8eb6e7a9 | ||
|
|
e5e4709a6a | ||
|
|
8ef1fbc0c3 | ||
|
|
badeedd913 | ||
|
|
02551c9de0 | ||
|
|
96d6c4aabe | ||
|
|
b25dbb3f9b | ||
|
|
0c6181fec4 | ||
|
|
1688938dd5 | ||
|
|
74cc13cc40 | ||
|
|
9ad1bf7afd | ||
|
|
e978b4534a | ||
|
|
9c30f43899 | ||
|
|
2f339aad6c | ||
|
|
f9c4c2f97d | ||
|
|
57a02ccf4c | ||
|
|
32f586eec1 | ||
|
|
6c313bbb04 | ||
|
|
7fe1089904 | ||
|
|
73b8209266 | ||
|
|
8878653a44 | ||
|
|
f1cc4d55b9 | ||
|
|
bacc83009b | ||
|
|
2d63e4b3cc | ||
|
|
db4fd29063 | ||
|
|
7b7b4cb6f2 | ||
|
|
f6cdab3704 | ||
|
|
288bf26c53 | ||
|
|
ca6ac99077 | ||
|
|
7e0bae024d | ||
|
|
cd4e4e169a | ||
|
|
d8f981138a | ||
|
|
5fee111149 | ||
|
|
422b9dcbfa | ||
|
|
b00df7aa38 | ||
|
|
8f5a8d8a8b | ||
|
|
21aaff3faa | ||
|
|
dd0ad25988 | ||
|
|
81b8bf5b4a | ||
|
|
6a500661a9 | ||
|
|
6efb198033 | ||
|
|
6019fed0c5 | ||
|
|
92f076e53e | ||
|
|
6ec7808c4a | ||
|
|
c41b3c9f95 | ||
|
|
1d7caa58e3 | ||
|
|
335c584940 | ||
|
|
c2bd205254 | ||
|
|
64dea84bb0 | ||
|
|
bd76c89e31 | ||
|
|
0401933a5b | ||
|
|
077ade4f67 | ||
|
|
b69b9d5e17 | ||
|
|
958e15bb1c | ||
|
|
2eb413f89b | ||
|
|
44ff25d524 | ||
|
|
7159ac7fec | ||
|
|
8967f6c4b9 | ||
|
|
a13eb2b147 | ||
|
|
8f566fdb1e | ||
|
|
84bc00e9b5 | ||
|
|
9fcde94176 | ||
|
|
ad34abee25 | ||
|
|
4c0089d696 | ||
|
|
16abd997c9 | ||
|
|
7c2beb48ef | ||
|
|
416bd916b4 | ||
|
|
80adaa8ae8 | ||
|
|
d392a74c5a | ||
|
|
e7d9ca2b3b | ||
|
|
bf5f189e44 | ||
|
|
19e6c4fd2d | ||
|
|
0256d76a33 | ||
|
|
e429893741 | ||
|
|
a2a90d5e20 | ||
|
|
590aae3557 | ||
|
|
8154e642aa | ||
|
|
c9a4a8ab28 | ||
|
|
4e2406c7a9 | ||
|
|
b46e0f3263 | ||
|
|
2d8e998544 | ||
|
|
279de0cd1f | ||
|
|
c8b6d4b378 | ||
|
|
79186bee78 | ||
|
|
7d0dbd0070 | ||
|
|
2f43ec9363 | ||
|
|
813b7a85f2 | ||
|
|
b8b1c8ebd4 | ||
|
|
bd32e8ad8d | ||
|
|
10c1dbc06a | ||
|
|
801961d2c2 | ||
|
|
c6530c9d68 | ||
|
|
031d632188 | ||
|
|
1aa5f1c21f | ||
|
|
982ded68b6 | ||
|
|
2b994da57a | ||
|
|
bd087ae8f0 | ||
|
|
c12e4eecbb | ||
|
|
545c8a506e | ||
|
|
55f1b822d8 | ||
|
|
7f29122c8c | ||
|
|
bc385a150f | ||
|
|
438d0c5e58 | ||
|
|
54f50cbf6a | ||
|
|
094dd152fe | ||
|
|
da51ad51bf | ||
|
|
800cdbb7ca | ||
|
|
19dfa276c3 | ||
|
|
166cd7b801 | ||
|
|
4c7cb372c1 | ||
|
|
8d687a7424 | ||
|
|
95707037af | ||
|
|
d5b952a871 | ||
|
|
46acad7284 | ||
|
|
10e8ff9b26 | ||
|
|
f578ca2c8f | ||
|
|
ce723f3918 | ||
|
|
5ca05fa59e | ||
|
|
f07d1a7108 | ||
|
|
740df76c90 | ||
|
|
c81dfaa69c | ||
|
|
19548c6a74 | ||
|
|
85ef2df075 | ||
|
|
7fbcee6f92 | ||
|
|
577922b917 | ||
|
|
5bf042810b | ||
|
|
cdb7b4c508 | ||
|
|
59f7038536 | ||
|
|
d1911a8e2b | ||
|
|
15d4747ffd | ||
|
|
16d2c02c80 | ||
|
|
d9a92dc70b | ||
|
|
f7ca56f719 | ||
|
|
5c606846b9 | ||
|
|
55daae3921 | ||
|
|
58e1e01045 | ||
|
|
114ec813b3 | ||
|
|
abc8130d6a | ||
|
|
3c80227760 | ||
|
|
ecb87dd7d3 | ||
|
|
664fd12aa2 | ||
|
|
f0e68c0e2a | ||
|
|
a109f39ef5 | ||
|
|
47eec6716b | ||
|
|
8509014add | ||
|
|
eb43b7f053 | ||
|
|
e84c773d42 | ||
|
|
68ebcee023 | ||
|
|
3c240f608c | ||
|
|
29b4c513b1 | ||
|
|
c9fbd2560f | ||
|
|
247caa378f | ||
|
|
b140c114f6 | ||
|
|
9cf6ab1332 | ||
|
|
05843e8960 | ||
|
|
78ee62563e | ||
|
|
30805a1aba | ||
|
|
1ba0b9e36f | ||
|
|
3a2a60ce4a | ||
|
|
a40c0bcc83 | ||
|
|
a1d5f9f33c | ||
|
|
9f3afe7a70 | ||
|
|
d87dec0582 | ||
|
|
2ac6497f0e | ||
|
|
1271572a35 | ||
|
|
097c5370ea | ||
|
|
a8490a4952 | ||
|
|
167fb6d39b | ||
|
|
d4a9b7f614 | ||
|
|
50809a45eb | ||
|
|
79cdf026f1 | ||
|
|
bf63011a52 | ||
|
|
2bd6a09691 | ||
|
|
d49f646bf5 | ||
|
|
d13c254d10 | ||
|
|
74ccbb1f7d | ||
|
|
6fadbc1e8c | ||
|
|
0222c2d103 | ||
|
|
c0da540466 | ||
|
|
7268e53996 | ||
|
|
798fa76dbf | ||
|
|
f741e3ec1f | ||
|
|
2ba51236fb | ||
|
|
a2c0028fdf | ||
|
|
9d383f30bb | ||
|
|
cf2610c82b | ||
|
|
b7398fe41c | ||
|
|
e5d91ba1de | ||
|
|
e42c27d9e8 | ||
|
|
b6a19594b2 | ||
|
|
c416fd4ca8 | ||
|
|
24b62ec825 | ||
|
|
81f277f526 | ||
|
|
b848ce6b7e | ||
|
|
ff40b625a6 | ||
|
|
12eb0f4ec5 | ||
|
|
54be5fb382 | ||
|
|
8667a5678f | ||
|
|
378447fc18 | ||
|
|
5d01f86d99 | ||
|
|
6c018680be | ||
|
|
e741f039cf | ||
|
|
f9dc278946 | ||
|
|
4ce1bda869 | ||
|
|
411da64e77 | ||
|
|
65b34868da | ||
|
|
5fc7959dcb | ||
|
|
a4467c433a | ||
|
|
916d6dd5b1 | ||
|
|
6f37e530d3 | ||
|
|
ab9a2d884b | ||
|
|
d1ae8366af | ||
|
|
aa6ba308a1 | ||
|
|
c9471b1872 | ||
|
|
dda01c05c2 | ||
|
|
c28e7a2b2f | ||
|
|
d619d6a9c6 | ||
|
|
3ce8c38915 | ||
|
|
8cf51376b8 | ||
|
|
276410e78f | ||
|
|
e4098457ab | ||
|
|
30b6d6104c | ||
|
|
048d9d2521 | ||
|
|
0b70aeb49d | ||
|
|
34a6a3617b | ||
|
|
00d07e7682 | ||
|
|
3ab3a86481 | ||
|
|
03ff1c2dde | ||
|
|
45fcb7928a | ||
|
|
b926bf47d6 | ||
|
|
c8502f9b88 | ||
|
|
12e7a1fe75 | ||
|
|
70e8028a4d | ||
|
|
2391954036 | ||
|
|
f2588b6fc9 | ||
|
|
53f5e51628 | ||
|
|
88bb3e0a48 | ||
|
|
a93d9cdc74 | ||
|
|
17b695190d | ||
|
|
2dcfe9ae1d | ||
|
|
5b10a14098 | ||
|
|
3ef2e41128 | ||
|
|
58a44751ce | ||
|
|
caf642c25d | ||
|
|
58806c1553 | ||
|
|
971cd2b8bc | ||
|
|
0b933c331d | ||
|
|
660eb9f9db | ||
|
|
bf1b713202 | ||
|
|
4e1ca0d9a6 | ||
|
|
b7f2270bab | ||
|
|
fbf2071ac9 | ||
|
|
73916bac5a | ||
|
|
2f14716c46 | ||
|
|
35a2ec18d6 | ||
|
|
c3eddd2068 | ||
|
|
cfc788c388 | ||
|
|
67672ef097 | ||
|
|
e1b4822137 | ||
|
|
22363c6994 | ||
|
|
2354b66ac5 | ||
|
|
aae583441b | ||
|
|
dcd40cfca0 | ||
|
|
f39d9e9dca | ||
|
|
71badf9547 | ||
|
|
80406c2618 | ||
|
|
b67ba03d3e | ||
|
|
e7f05a8780 | ||
|
|
9be736f2eb | ||
|
|
017227079f | ||
|
|
8281a16efc | ||
|
|
be9624eb47 | ||
|
|
1be4b81bfb | ||
|
|
960cf9119e | ||
|
|
a1f2b5ddc6 | ||
|
|
142ffb024d | ||
|
|
61378a1542 | ||
|
|
89f9ffbe81 | ||
|
|
6e5a9f9482 | ||
|
|
4c42c7eef4 | ||
|
|
42994bf678 | ||
|
|
fc8a601c32 | ||
|
|
961b2e54bd | ||
|
|
e7d49465a4 | ||
|
|
a77670726e | ||
|
|
ceff9cd1bb | ||
|
|
657b31fa3b | ||
|
|
732d69e191 | ||
|
|
7e5fe38efc | ||
|
|
b49dfd0cf2 | ||
|
|
b7f6f93475 | ||
|
|
aa7f25ebf1 | ||
|
|
08210f8def | ||
|
|
ff6c230051 | ||
|
|
d76670fc0d | ||
|
|
474891bc89 | ||
|
|
5299c0933f | ||
|
|
01967f5b10 | ||
|
|
ac6cd31afc | ||
|
|
05a627c3d4 | ||
|
|
bfc7cbd1d4 | ||
|
|
b6ebe5af74 | ||
|
|
23a971da50 | ||
|
|
cde8de0345 | ||
|
|
065088d554 | ||
|
|
3cdd799951 | ||
|
|
2ed57ac367 | ||
|
|
38d867f041 | ||
|
|
39c9ec16ea | ||
|
|
869113f376 | ||
|
|
6ac2e4392a | ||
|
|
2d68b722e3 | ||
|
|
6400203517 | ||
|
|
1a08a3e2a5 | ||
|
|
c174c2e58c | ||
|
|
1f76138ff1 | ||
|
|
99e4ab2a1e | ||
|
|
3ea62381c5 | ||
|
|
7ac36130e0 | ||
|
|
890c772036 | ||
|
|
d0639d717b | ||
|
|
8aa2a37f89 | ||
|
|
aa26153b6c | ||
|
|
4a5c39fc52 | ||
|
|
5fedb8a5ab | ||
|
|
a1fa8b3ac2 | ||
|
|
e6d40dcdc7 | ||
|
|
7c4516fe93 | ||
|
|
ea83c19462 | ||
|
|
2a003177eb | ||
|
|
6e377eca8d | ||
|
|
076de79ad8 | ||
|
|
16110ccf11 | ||
|
|
d11ac403db | ||
|
|
1505bef5c4 | ||
|
|
b8ef029ee4 | ||
|
|
e202ec8a0c | ||
|
|
14338024c1 | ||
|
|
e638acc927 | ||
|
|
e764d1b421 | ||
|
|
d13dd30240 | ||
|
|
c481ad38f0 | ||
|
|
5145c9a829 | ||
|
|
4df0772a41 | ||
|
|
c0bdbfb2ee | ||
|
|
6a7c774920 | ||
|
|
be19d78c3d | ||
|
|
638388b8ef | ||
|
|
cde1f8714e | ||
|
|
ff226d49fe | ||
|
|
7ac5023a5f | ||
|
|
960dcbd098 | ||
|
|
14113fdf9c | ||
|
|
663ee88a82 | ||
|
|
f06c4a7a1d | ||
|
|
cf3c1ca276 | ||
|
|
30585e03a7 | ||
|
|
f86dea8119 | ||
|
|
b0b6b8b07e | ||
|
|
4390d872b6 | ||
|
|
c142d6513e | ||
|
|
d8742476d1 | ||
|
|
5fb78c3fa5 | ||
|
|
5284b23e14 | ||
|
|
c99cbf8f28 | ||
|
|
5c6a3c9bad | ||
|
|
1c73b65229 | ||
|
|
f77a7f704f | ||
|
|
c727b19e9f | ||
|
|
194555c001 | ||
|
|
db1887ce40 | ||
|
|
440d4cb55b | ||
|
|
c3f971f289 | ||
|
|
c6ff21e876 | ||
|
|
4ed914b18a | ||
|
|
e0f8691969 | ||
|
|
ad60898aa4 | ||
|
|
f0300fc7b8 | ||
|
|
da77693b17 | ||
|
|
3f45d67a15 | ||
|
|
99ad3a8bb9 | ||
|
|
dd60c365cd | ||
|
|
341f3876b3 | ||
|
|
80c5b2c0f7 | ||
|
|
5da901bb68 | ||
|
|
30a8447715 | ||
|
|
c4e1b86cb0 | ||
|
|
4f026ea9f1 | ||
|
|
83ae6150bf | ||
|
|
d6a4ea3aa0 | ||
|
|
6d611de58c | ||
|
|
a63fd82328 | ||
|
|
def5521752 | ||
|
|
c2254764bc | ||
|
|
3ddb1182b7 | ||
|
|
44e08c1cf8 | ||
|
|
2824d1ee32 | ||
|
|
ca06b30073 | ||
|
|
8ad862a1f9 | ||
|
|
a8f0835a6b | ||
|
|
3451789f58 | ||
|
|
3e2d5385ed | ||
|
|
4ee083e7f9 | ||
|
|
666cb9c530 | ||
|
|
38f1ab31fa | ||
|
|
99a7c0d89c | ||
|
|
cfce5cf542 | ||
|
|
a23a11b5bf | ||
|
|
d950984489 | ||
|
|
b1e32ac0c9 | ||
|
|
938ae280c7 | ||
|
|
6b066c6d8f | ||
|
|
b444ee761a | ||
|
|
e1121b1394 | ||
|
|
af93691b53 | ||
|
|
997b8a015c | ||
|
|
5b9f57262f | ||
|
|
ea62cee85e | ||
|
|
a572b936ce | ||
|
|
f53e065bce | ||
|
|
441a7a9448 | ||
|
|
3e1ac1443a | ||
|
|
2c1c803c7e | ||
|
|
d114975b9b | ||
|
|
0917e86763 | ||
|
|
9de960ace0 | ||
|
|
f2017f255d | ||
|
|
552bdca781 | ||
|
|
eea0a00811 | ||
|
|
c3a26c6bff | ||
|
|
1d87e11a1e | ||
|
|
ce3189d56e | ||
|
|
bc3dc298b3 | ||
|
|
339e114d70 | ||
|
|
fdbd14e892 | ||
|
|
1d6539cf36 | ||
|
|
1a6476428f | ||
|
|
32ff96ef01 | ||
|
|
5ceb8157bc | ||
|
|
55a27d8ea7 | ||
|
|
234c3fab28 | ||
|
|
094b8473ed | ||
|
|
aab2ead008 | ||
|
|
9d9a20ee87 | ||
|
|
3ec78f973f | ||
|
|
412e0e4ed9 | ||
|
|
c4b7dec382 | ||
|
|
962d916435 | ||
|
|
094cf9f4d5 | ||
|
|
6c41bedeed | ||
|
|
80b817b749 | ||
|
|
0caaf1e465 | ||
|
|
313e4724c3 | ||
|
|
6642982bea | ||
|
|
af9e28a5b8 | ||
|
|
43e234e8b4 | ||
|
|
91deac4539 | ||
|
|
0261e3978e | ||
|
|
546933f497 | ||
|
|
a9a6b0323e | ||
|
|
40b4872966 | ||
|
|
c72078b631 | ||
|
|
c8ef30bc2e | ||
|
|
cb626a4692 | ||
|
|
7a1bdaecf2 | ||
|
|
61fdbfa1e3 | ||
|
|
4ad8ae8465 | ||
|
|
49f0524fb5 | ||
|
|
4be18e77ff | ||
|
|
78012f55fa | ||
|
|
be4e01637e | ||
|
|
685bf83b73 | ||
|
|
8f531662e2 | ||
|
|
e8d4ae0d11 | ||
|
|
1b438a8228 | ||
|
|
a7d36b7320 | ||
|
|
b40c1de384 | ||
|
|
9c51798a1f | ||
|
|
d6e4c75af2 | ||
|
|
ce93d162da | ||
|
|
b8bebd0cd7 | ||
|
|
eb45ad25ab | ||
|
|
907349a743 | ||
|
|
f2e30d0c44 | ||
|
|
2a99fe6c41 | ||
|
|
836137d89a | ||
|
|
492324e588 | ||
|
|
755bf2b3d2 | ||
|
|
94722c5107 | ||
|
|
04e4f1d985 | ||
|
|
8fe5b9c8c1 | ||
|
|
d0200c8631 | ||
|
|
192e24d974 | ||
|
|
f75a2cb3c7 | ||
|
|
fadc02a2a5 | ||
|
|
8dbab1d8ce | ||
|
|
657aea7fc4 | ||
|
|
53f54e49b7 | ||
|
|
870219c58c | ||
|
|
142ed77898 | ||
|
|
032713f829 | ||
|
|
0f843ef091 | ||
|
|
01d4efe2e8 | ||
|
|
b0d45ec67f | ||
|
|
b582010350 | ||
|
|
62a6923470 | ||
|
|
b149d22796 | ||
|
|
5c8771bc5a | ||
|
|
6ec6666047 | ||
|
|
9cbf791995 | ||
|
|
dc7179f9a4 | ||
|
|
ebfec1c531 | ||
|
|
3d79f0a430 | ||
|
|
d343c60df4 | ||
|
|
3770f4c9cd | ||
|
|
f3da4c8427 | ||
|
|
040e795e8d | ||
|
|
145a6afe3a | ||
|
|
a6759381a5 | ||
|
|
51b2fc2ef5 | ||
|
|
11977f9175 | ||
|
|
47bba53bdb | ||
|
|
7193323b77 | ||
|
|
e446a017ff | ||
|
|
f97a295cca | ||
|
|
4aecaa168e | ||
|
|
4219698603 | ||
|
|
90c2353365 | ||
|
|
486fc25a29 | ||
|
|
64f1c4152e | ||
|
|
0ef9a5c094 | ||
|
|
541c87c808 | ||
|
|
da3dd7d857 | ||
|
|
66bb9ae70f | ||
|
|
f7d1c6e188 | ||
|
|
b391e1f805 | ||
|
|
29ac5df37b | ||
|
|
a41e221935 | ||
|
|
450c7a97d1 | ||
|
|
5a57a5e209 | ||
|
|
ae3205aa55 | ||
|
|
912bfee710 | ||
|
|
32517c4c14 | ||
|
|
f450804e14 | ||
|
|
4cae845ce3 | ||
|
|
474f226582 | ||
|
|
584b853ee0 | ||
|
|
24a8d06d7f | ||
|
|
034c350207 | ||
|
|
e857598896 | ||
|
|
378e6c03f9 | ||
|
|
b40a2fb3b3 | ||
|
|
32030a9f3b | ||
|
|
d40f00cb43 | ||
|
|
3213952966 | ||
|
|
60908c4922 | ||
|
|
232bdaaca9 | ||
|
|
c0c2c26265 | ||
|
|
3ce33b120c | ||
|
|
4059400993 | ||
|
|
a86655af84 | ||
|
|
a94bd9d939 | ||
|
|
0233bdfa2b | ||
|
|
043d7b2c84 | ||
|
|
6481accd40 | ||
|
|
bcbfaf32e0 | ||
|
|
6aa0937fb8 | ||
|
|
58b40092e6 | ||
|
|
ad15a39fdb | ||
|
|
f68cddabff | ||
|
|
ea125393af | ||
|
|
9a9432d3a2 | ||
|
|
a47c0fb4ad | ||
|
|
79c11e399b | ||
|
|
2bc849ff81 | ||
|
|
523f22d577 | ||
|
|
566f76e656 | ||
|
|
06cd14d0bf | ||
|
|
1b5f03ec9c | ||
|
|
d41262ed06 | ||
|
|
1cfb14aa97 | ||
|
|
765d82a657 | ||
|
|
01c5f2addf | ||
|
|
dda3053121 | ||
|
|
870cd76283 | ||
|
|
c8ab30a349 | ||
|
|
e01e5215f9 | ||
|
|
8367716a6e | ||
|
|
7f8b2559a3 | ||
|
|
df8f947359 | ||
|
|
0cb3ca9f7a | ||
|
|
eca2c5fff6 | ||
|
|
2c01131c2a | ||
|
|
7d4d87ba89 | ||
|
|
94674f2223 | ||
|
|
5bcd29b84e | ||
|
|
554d031302 | ||
|
|
cf760d50dc | ||
|
|
2468add0b8 | ||
|
|
3259ff3b3b | ||
|
|
c8b204952f | ||
|
|
3ac1d97a1d | ||
|
|
c32949b077 | ||
|
|
7b17eb4b06 | ||
|
|
f057171d8b | ||
|
|
aaa16b0918 | ||
|
|
574950dfb1 | ||
|
|
46ab925937 | ||
|
|
36818a9daa | ||
|
|
ea720aea85 | ||
|
|
e83c133eb9 | ||
|
|
03ff0c6681 | ||
|
|
bcf31ec36b | ||
|
|
a9fa8c58fb | ||
|
|
dc4daa3a39 | ||
|
|
a2942c7468 | ||
|
|
39c82ea656 | ||
|
|
7bdcba08bb | ||
|
|
993dbc33a8 | ||
|
|
6acf757c6a | ||
|
|
fc966c19f8 | ||
|
|
ec8b74f7ab | ||
|
|
1aeb3eb092 | ||
|
|
6bafdd41cb | ||
|
|
9f2d97efe2 | ||
|
|
f1dcd14fc5 | ||
|
|
db4d88c2ad | ||
|
|
c55e8f2c6f | ||
|
|
0d89d8ae89 | ||
|
|
dbe6ef1036 | ||
|
|
7b8db111e8 | ||
|
|
770713794a | ||
|
|
ed0c1d5d4b | ||
|
|
ef91ae4557 | ||
|
|
0a657124a5 | ||
|
|
7b0afc1d76 | ||
|
|
96dd34e534 | ||
|
|
254480736f | ||
|
|
c4b3f6477c | ||
|
|
c6951a76a5 | ||
|
|
73ade49c4b | ||
|
|
09ce0b8e11 | ||
|
|
87c1cbbe98 | ||
|
|
56310d38d8 | ||
|
|
b9a1edfc54 | ||
|
|
a7fbaa43b7 | ||
|
|
b536540ab3 | ||
|
|
d0883faac6 | ||
|
|
81b7ecc5cb | ||
|
|
465de3a57b | ||
|
|
b3d614369f | ||
|
|
71d53e7c57 | ||
|
|
6ef5471afa | ||
|
|
9b99411b93 | ||
|
|
590162cae0 | ||
|
|
e86190e7c1 | ||
|
|
f54cedd676 | ||
|
|
c9207d5d79 | ||
|
|
c53e7904b9 | ||
|
|
9fca133eb7 | ||
|
|
ff3d537704 | ||
|
|
c8b126d70d | ||
|
|
9b8a365d01 | ||
|
|
20b795e0eb | ||
|
|
418b547881 | ||
|
|
104b2ff4d0 | ||
|
|
34820944ed | ||
|
|
afa3f1cc72 | ||
|
|
33e543038b | ||
|
|
07146ad1d3 | ||
|
|
4ce1f99a2d | ||
|
|
8efdcee02e | ||
|
|
c336ae3ce6 | ||
|
|
d505d17885 | ||
|
|
731d00770d | ||
|
|
ba2d191932 | ||
|
|
b5328b46a7 | ||
|
|
b26461715b | ||
|
|
417e88bb75 | ||
|
|
8d754fada8 | ||
|
|
d097af7779 | ||
|
|
67f3094397 | ||
|
|
9d1184cd1d | ||
|
|
9aee8ec400 | ||
|
|
4ab1f4a32f | ||
|
|
4cd45f1408 | ||
|
|
ba936f6f4e | ||
|
|
3d473ee1a6 | ||
|
|
f94178db8d | ||
|
|
91c9d6d772 | ||
|
|
70ef3f546b | ||
|
|
eb53350c02 | ||
|
|
f593fc891c | ||
|
|
74e1274edf | ||
|
|
65b0d16768 | ||
|
|
692fe0889c | ||
|
|
cb94c91070 | ||
|
|
6342e2c5a6 | ||
|
|
67578e5bcf | ||
|
|
b7acea1806 | ||
|
|
7db29e4b5c | ||
|
|
79336e19cb | ||
|
|
3ea8a1b129 | ||
|
|
7ce7daf6cd | ||
|
|
6c87bbb4e4 | ||
|
|
c51a376265 | ||
|
|
4ae0057308 | ||
|
|
ffdaca9e6f | ||
|
|
148bcd3610 | ||
|
|
bb393d8259 | ||
|
|
ffa4e9b43a | ||
|
|
98aeb2100c |
@@ -1,32 +1,52 @@
|
||||
version: "{build}"
|
||||
|
||||
image: Visual Studio 2015
|
||||
|
||||
skip_tags: true
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
- FEATURE: HUGE
|
||||
|
||||
# Alternate environments, not used right now. 2022 is a lot slower.
|
||||
#
|
||||
# - job_name: VS-2015
|
||||
# appveyor_build_worker_image: Visual Studio 2015
|
||||
# FEATURE: HUGE
|
||||
|
||||
# - job_name: VS-2017
|
||||
# appveyor_build_worker_image: Visual Studio 2017
|
||||
# FEATURE: HUGE
|
||||
|
||||
# - job_name: VS-2019
|
||||
# appveyor_build_worker_image: Visual Studio 2019
|
||||
# FEATURE: HUGE
|
||||
|
||||
# - job_name: VS-2022
|
||||
# appveyor_build_worker_image: Visual Studio 2022
|
||||
# FEATURE: HUGE
|
||||
|
||||
# disabled
|
||||
# - FEATURE: TINY
|
||||
# - FEATURE: NORMAL
|
||||
# - FEATURE: BIG
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
|
||||
before_build:
|
||||
# Use Visual Studio 2015 compiler tools (default is 2012)
|
||||
- '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64'
|
||||
- call ver
|
||||
- ci\appveyor.bat install
|
||||
|
||||
build_script:
|
||||
- ci/appveyor.bat
|
||||
- ci\appveyor.bat build
|
||||
|
||||
test_script:
|
||||
- cd src/testdir
|
||||
# Testing with MSVC gvim
|
||||
- path C:\Python35-x64;%PATH%
|
||||
- nmake -f Make_mvc.mak VIMPROG=..\gvim
|
||||
- nmake -f Make_mvc.mak clean
|
||||
# Testing with MSVC console version
|
||||
- nmake -f Make_mvc.mak VIMPROG=..\vim
|
||||
- ci\appveyor.bat test
|
||||
|
||||
artifacts:
|
||||
- path: src/vim.exe
|
||||
name: vim
|
||||
- path: src/gvim.exe
|
||||
name: gvim
|
||||
|
||||
# vim: sw=2 sts=2 et ts=8 sr
|
||||
|
||||
27
.cirrus.yml
27
.cirrus.yml
@@ -5,15 +5,11 @@ env:
|
||||
freebsd_task:
|
||||
name: FreeBSD
|
||||
matrix:
|
||||
- name: FreeBSD 13.1
|
||||
- name: FreeBSD 14.0
|
||||
freebsd_instance:
|
||||
image_family: freebsd-13-1
|
||||
- name: FreeBSD 12.4
|
||||
freebsd_instance:
|
||||
image_family: freebsd-12-4
|
||||
image_family: freebsd-14-0
|
||||
timeout_in: 20m
|
||||
install_script:
|
||||
- pkg update -f
|
||||
- pkg install -y gettext
|
||||
build_script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
@@ -25,22 +21,3 @@ 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
|
||||
env:
|
||||
# only run with clang, gcc is not real, it is a link to clang
|
||||
CC: clang
|
||||
timeout_in: 20m
|
||||
install_script:
|
||||
- brew update
|
||||
- brew install gettext libtool
|
||||
build_script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
- ./configure --with-features=${FEATURES}
|
||||
- make -j${NPROC}
|
||||
test_script:
|
||||
- src/vim --version
|
||||
- make test
|
||||
|
||||
@@ -5,6 +5,8 @@ coverage:
|
||||
default:
|
||||
threshold: 0.05%
|
||||
|
||||
comment: false
|
||||
|
||||
# Files not run by tests
|
||||
ignore:
|
||||
- "src/dosinst.c"
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
service_name: github-actions
|
||||
47
.github/CODEOWNERS
vendored
47
.github/CODEOWNERS
vendored
@@ -18,6 +18,7 @@ runtime/autoload/netrwFileHandlers.vim @cecamp
|
||||
runtime/autoload/netrwSettings.vim @cecamp
|
||||
runtime/autoload/php.vim @david-szabo97
|
||||
runtime/autoload/rubycomplete.vim @segfault @dkearns
|
||||
runtime/autoload/rust.vim @lilyball
|
||||
runtime/autoload/tar.vim @cecamp
|
||||
runtime/autoload/vimball.vim @cecamp
|
||||
runtime/autoload/xmlformat.vim @chrisbra
|
||||
@@ -29,17 +30,24 @@ runtime/colors/delek.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/desert.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/elflord.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/evening.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/habamax.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/industry.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/koehler.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/lunaperche.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/morning.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/murphy.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/pablo.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/peachpuff.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/quiet.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/retrobox.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/ron.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/shine.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/slate.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/sorbet.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/tools @habamax @romainl @neutaaaaan
|
||||
runtime/colors/torte.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/wildcharm.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/zaibatsu.vim @habamax @romainl @neutaaaaan
|
||||
runtime/colors/zellner.vim @habamax @romainl @neutaaaaan
|
||||
runtime/compiler/checkstyle.vim @dkearns
|
||||
runtime/compiler/cm3.vim @dkearns
|
||||
@@ -51,6 +59,7 @@ runtime/compiler/dartanalyser.vim @dkearns
|
||||
runtime/compiler/dartdevc.vim @dkearns
|
||||
runtime/compiler/dartdoc.vim @dkearns
|
||||
runtime/compiler/dartfmt.vim @dkearns
|
||||
runtime/compiler/dotnet.vim @nickspoons
|
||||
runtime/compiler/eruby.vim @dkearns
|
||||
runtime/compiler/fbc.vim @dkearns
|
||||
runtime/compiler/gawk.vim @dkearns
|
||||
@@ -124,6 +133,7 @@ runtime/ftplugin/eruby.vim @tpope @dkearns
|
||||
runtime/ftplugin/expect.vim @dkearns
|
||||
runtime/ftplugin/fennel.vim @gpanders
|
||||
runtime/ftplugin/fetchmail.vim @dkearns
|
||||
runtime/ftplugin/forth.vim @jkotlinski
|
||||
runtime/ftplugin/fpcmake.vim @dkearns
|
||||
runtime/ftplugin/freebasic.vim @dkearns
|
||||
runtime/ftplugin/fstab.vim @rid9
|
||||
@@ -142,17 +152,21 @@ runtime/ftplugin/go.vim @dbarnett
|
||||
runtime/ftplugin/gprof.vim @dpelle
|
||||
runtime/ftplugin/haml.vim @tpope
|
||||
runtime/ftplugin/hare.vim @rsaihe
|
||||
runtime/ftplugin/heex.vim @cvincent
|
||||
runtime/ftplugin/hgcommit.vim @k-takata
|
||||
runtime/ftplugin/hog.vim @wtfbbqhax
|
||||
runtime/ftplugin/html.vim @dkearns
|
||||
runtime/ftplugin/i3config.vim @hiqua
|
||||
runtime/ftplugin/icon.vim @dkearns
|
||||
runtime/ftplugin/indent.vim @dkearns
|
||||
runtime/ftplugin/ishd.vim @dkearns
|
||||
runtime/ftplugin/j.vim @glts
|
||||
runtime/ftplugin/javascript.vim @dkearns
|
||||
runtime/ftplugin/javascriptreact.vim @dkearns
|
||||
runtime/ftplugin/jsonc.vim @izhakjakov
|
||||
runtime/ftplugin/julia.vim @carlobaldassi
|
||||
runtime/ftplugin/kconfig.vim @chrisbra
|
||||
runtime/ftplugin/kotlin.vim @udalov
|
||||
runtime/ftplugin/less.vim @genoma
|
||||
runtime/ftplugin/liquid.vim @tpope
|
||||
runtime/ftplugin/lua.vim @dkearns
|
||||
@@ -172,15 +186,19 @@ runtime/ftplugin/pascal.vim @dkearns
|
||||
runtime/ftplugin/pbtxt.vim @lakshayg
|
||||
runtime/ftplugin/pdf.vim @tpope
|
||||
runtime/ftplugin/perl.vim @petdance @dkearns
|
||||
runtime/ftplugin/php.vim @dkearns
|
||||
runtime/ftplugin/pod.vim @petdance @dkearns
|
||||
runtime/ftplugin/poefilter.vim @ObserverOfTime
|
||||
runtime/ftplugin/postscr.vim @mrdubya
|
||||
runtime/ftplugin/ps1.vim @heaths
|
||||
runtime/ftplugin/ps1xml.vim @heaths
|
||||
runtime/ftplugin/pymanifest.vim @ObserverOfTime
|
||||
runtime/ftplugin/python.vim @tpict
|
||||
runtime/ftplugin/qb64.vim @dkearns
|
||||
runtime/ftplugin/qml.vim @ChaseKnowlden
|
||||
runtime/ftplugin/r.vim @jalvesaq
|
||||
runtime/ftplugin/racket.vim @benknoble
|
||||
runtime/ftplugin/readline.vim @dkearns
|
||||
runtime/ftplugin/rhelp.vim @jalvesaq
|
||||
runtime/ftplugin/rmd.vim @jalvesaq
|
||||
runtime/ftplugin/rnoweb.vim @jalvesaq
|
||||
@@ -188,11 +206,14 @@ runtime/ftplugin/routeros.vim @zainin
|
||||
runtime/ftplugin/rrst.vim @jalvesaq
|
||||
runtime/ftplugin/rst.vim @marshallward
|
||||
runtime/ftplugin/ruby.vim @tpope @dkearns
|
||||
runtime/ftplugin/rust.vim @lilyball
|
||||
runtime/ftplugin/sass.vim @tpope
|
||||
runtime/ftplugin/scala.vim @derekwyatt
|
||||
runtime/ftplugin/scss.vim @tpope
|
||||
runtime/ftplugin/sdoc.vim @gpanders
|
||||
runtime/ftplugin/sed.vim @dkearns
|
||||
runtime/ftplugin/sh.vim @dkearns
|
||||
runtime/ftplugin/solidity.vim @cothi
|
||||
runtime/ftplugin/solution.vim @dkearns
|
||||
runtime/ftplugin/spec.vim @ignatenkobrain
|
||||
runtime/ftplugin/ssa.vim @ObserverOfTime
|
||||
@@ -206,6 +227,7 @@ runtime/ftplugin/toml.vim @averms
|
||||
runtime/ftplugin/tt2html.vim @petdance
|
||||
runtime/ftplugin/typescript.vim @dkearns
|
||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||
runtime/ftplugin/unison.vim @chuwy
|
||||
runtime/ftplugin/vdf.vim @ObserverOfTime
|
||||
runtime/ftplugin/wast.vim @rhysd
|
||||
runtime/ftplugin/wget.vim @dkearns
|
||||
@@ -213,6 +235,7 @@ runtime/ftplugin/wget2.vim @dkearns
|
||||
runtime/ftplugin/xml.vim @chrisbra
|
||||
runtime/ftplugin/xs.vim @petdance
|
||||
runtime/ftplugin/zsh.vim @chrisbra
|
||||
runtime/import/dist/vimhighlight.vim @lacygoill
|
||||
runtime/indent/basic.vim @dkearns
|
||||
runtime/indent/bst.vim @tpope
|
||||
runtime/indent/cdl.vim @dkearns
|
||||
@@ -241,6 +264,7 @@ runtime/indent/go.vim @dbarnett
|
||||
runtime/indent/gyp.vim @ObserverOfTime
|
||||
runtime/indent/haml.vim @tpope
|
||||
runtime/indent/hare.vim @rsaihe
|
||||
runtime/indent/hog.vim @wtfbbqhax
|
||||
runtime/indent/idlang.vim @dkearns
|
||||
runtime/indent/j.vim @glts
|
||||
runtime/indent/java.vim @xuhdev
|
||||
@@ -248,9 +272,12 @@ runtime/indent/javascript.vim @bounceme
|
||||
runtime/indent/json.vim @elzr
|
||||
runtime/indent/jsonc.vim @izhakjakov
|
||||
runtime/indent/julia.vim @carlobaldassi
|
||||
runtime/indent/kotlin.vim @udalov
|
||||
runtime/indent/krl.vim @KnoP-01
|
||||
runtime/indent/ld.vim @dkearns
|
||||
runtime/indent/less.vim @genoma
|
||||
runtime/indent/liquid.vim @tpope
|
||||
runtime/indent/lua.vim @marcuscf
|
||||
runtime/indent/make.vim @dkearns
|
||||
runtime/indent/meson.vim @Liambeguin
|
||||
runtime/indent/mma.vim @dkearns
|
||||
@@ -263,8 +290,10 @@ runtime/indent/postscr.vim @mrdubya
|
||||
runtime/indent/prolog.vim @dkearns
|
||||
runtime/indent/ps1.vim @heaths
|
||||
runtime/indent/qb64.vim @dkearns
|
||||
runtime/indent/qml.vim @ChaseKnowlden
|
||||
runtime/indent/r.vim @jalvesaq
|
||||
runtime/indent/racket.vim @benknoble
|
||||
runtime/indent/rapid.vim @KnoP-01
|
||||
runtime/indent/readline.vim @dkearns
|
||||
runtime/indent/rhelp.vim @jalvesaq
|
||||
runtime/indent/rmd.vim @jalvesaq
|
||||
@@ -275,6 +304,7 @@ runtime/indent/sass.vim @tpope
|
||||
runtime/indent/scala.vim @derekwyatt
|
||||
runtime/indent/scss.vim @tpope
|
||||
runtime/indent/sh.vim @chrisbra
|
||||
runtime/indent/solidity.vim @cothi
|
||||
runtime/indent/systemverilog.vim @Kocha
|
||||
runtime/indent/tcl.vim @dkearns
|
||||
runtime/indent/tcsh.vim @dkearns
|
||||
@@ -297,6 +327,7 @@ runtime/plugin/tarPlugin.vim @cecamp
|
||||
runtime/plugin/vimballPlugin.vim @cecamp
|
||||
runtime/plugin/zipPlugin.vim @cecamp
|
||||
runtime/plugin/manpager.vim @Konfekt
|
||||
runtime/syntax/shared/hgcommitDiff.vim @vegerot
|
||||
runtime/syntax/abaqus.vim @costerwi
|
||||
runtime/syntax/aidl.vim @dpelle
|
||||
runtime/syntax/amiga.vim @cecamp
|
||||
@@ -331,6 +362,7 @@ runtime/syntax/dot.vim @mmottl
|
||||
runtime/syntax/doxygen.vim @frogonwheels
|
||||
runtime/syntax/dtd.vim @chrisbra
|
||||
runtime/syntax/dts.vim @zonque
|
||||
runtime/syntax/editorconfig.vim @gpanders
|
||||
runtime/syntax/eiffel.vim @jocelyn
|
||||
runtime/syntax/elmfilt.vim @cecamp
|
||||
runtime/syntax/erlang.vim @hcs42
|
||||
@@ -356,6 +388,7 @@ runtime/syntax/gitolite.vim @sitaramc
|
||||
runtime/syntax/gitrebase.vim @tpope
|
||||
runtime/syntax/go.vim @bhcleek
|
||||
runtime/syntax/godoc.vim @dbarnett
|
||||
runtime/syntax/gp.vim @KBelabas
|
||||
runtime/syntax/gprof.vim @dpelle
|
||||
runtime/syntax/groff.vim @jmarshall
|
||||
runtime/syntax/gyp.vim @ObserverOfTime
|
||||
@@ -363,6 +396,8 @@ runtime/syntax/haml.vim @tpope
|
||||
runtime/syntax/hare.vim @rsaihe
|
||||
runtime/syntax/haskell.vim @coot
|
||||
runtime/syntax/hgcommit.vim @k-takata
|
||||
runtime/syntax/hitest.vim @lacygoill
|
||||
runtime/syntax/hog.vim @wtfbbqhax
|
||||
runtime/syntax/hollywood.vim @sodero
|
||||
runtime/syntax/html.vim @dkearns
|
||||
runtime/syntax/i3config.vim @hiqua
|
||||
@@ -371,13 +406,17 @@ runtime/syntax/indent.vim @dkearns
|
||||
runtime/syntax/j.vim @glts
|
||||
runtime/syntax/jargon.vim @h3xx
|
||||
runtime/syntax/java.vim @fleiner
|
||||
runtime/syntax/javascript.vim @fleiner
|
||||
runtime/syntax/jsonc.vim @izhakjakov
|
||||
runtime/syntax/julia.vim @carlobaldassi
|
||||
runtime/syntax/kconfig.vim @chrisbra
|
||||
runtime/syntax/kotlin.vim @udalov
|
||||
runtime/syntax/krl.vim @KnoP-01
|
||||
runtime/syntax/less.vim @genoma
|
||||
runtime/syntax/lex.vim @cecamp
|
||||
runtime/syntax/liquid.vim @tpope
|
||||
runtime/syntax/lisp.vim @cecamp
|
||||
runtime/syntax/lua.vim @marcuscf
|
||||
runtime/syntax/lyrics.vim @ObserverOfTime
|
||||
runtime/syntax/lynx.vim @dkearns
|
||||
runtime/syntax/m3build.vim @dkearns
|
||||
@@ -394,6 +433,7 @@ runtime/syntax/n1ql.vim @pr3d4t0r
|
||||
runtime/syntax/netrw.vim @cecamp
|
||||
runtime/syntax/nginx.vim @chr4
|
||||
runtime/syntax/ninja.vim @nico
|
||||
runtime/syntax/nix.vim @equill
|
||||
runtime/syntax/nroff.vim @jmarshall
|
||||
runtime/syntax/nsis.vim @k-takata
|
||||
runtime/syntax/openvpn.vim @ObserverOfTime
|
||||
@@ -411,10 +451,13 @@ runtime/syntax/prolog.vim @XVilka
|
||||
runtime/syntax/ps1.vim @heaths
|
||||
runtime/syntax/ps1xml.vim @heaths
|
||||
runtime/syntax/psl.vim @danielkho
|
||||
runtime/syntax/pymanifest.vim @ObserverOfTime
|
||||
runtime/syntax/qb64.vim @dkearns
|
||||
runtime/syntax/qml.vim @ChaseKnowlden
|
||||
runtime/syntax/r.vim @jalvesaq
|
||||
runtime/syntax/racket.vim @benknoble
|
||||
runtime/syntax/raml.vim @in3d
|
||||
runtime/syntax/rapid.vim @KnoP-01
|
||||
runtime/syntax/ratpoison.vim @trapd00r
|
||||
runtime/syntax/rc.vim @chrisbra
|
||||
runtime/syntax/rcs.vim @hdima
|
||||
@@ -435,6 +478,7 @@ runtime/syntax/sdoc.vim @gpanders
|
||||
runtime/syntax/sed.vim @dkearns
|
||||
runtime/syntax/sh.vim @cecamp
|
||||
runtime/syntax/sm.vim @cecamp
|
||||
runtime/syntax/solidity.vim @cothi
|
||||
runtime/syntax/spec.vim @ignatenkobrain
|
||||
runtime/syntax/sqloracle.vim @chrisbra
|
||||
runtime/syntax/squirrel.vim @zenmatic
|
||||
@@ -460,10 +504,12 @@ runtime/syntax/tt2js.vim @petdance
|
||||
runtime/syntax/typescript.vim @HerringtonDarkholme
|
||||
runtime/syntax/typescriptcommon.vim @HerringtonDarkholme
|
||||
runtime/syntax/typescriptreact.vim @HerringtonDarkholme
|
||||
runtime/syntax/unison.vim @chuwy
|
||||
runtime/syntax/vdf.vim @ObserverOfTime
|
||||
runtime/syntax/vim.vim @cecamp
|
||||
runtime/syntax/vroom.vim @dbarnett
|
||||
runtime/syntax/wast.vim @rhysd
|
||||
runtime/syntax/wdl.vim @zenmatic
|
||||
runtime/syntax/wget.vim @dkearns
|
||||
runtime/syntax/wget2.vim @dkearns
|
||||
runtime/syntax/xbl.vim @dkearns
|
||||
@@ -473,6 +519,7 @@ runtime/syntax/xs.vim @petdance
|
||||
runtime/syntax/xslt.vim @Boobies
|
||||
runtime/syntax/xxd.vim @cecamp
|
||||
runtime/syntax/yacc.vim @cecamp
|
||||
runtime/syntax/zserio.vim @dpelle
|
||||
runtime/syntax/zsh.vim @chrisbra
|
||||
runtime/tutor/tutor.eo @dpelle
|
||||
runtime/tutor/tutor.eo.utf-8 @dpelle
|
||||
|
||||
60
.github/labeler.yml
vendored
Normal file
60
.github/labeler.yml
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
# list of labels and minimatch globs to match to apply the label.
|
||||
|
||||
CI:
|
||||
- any: ['.cirrus.yml']
|
||||
- any: ['.github/dependabot.yml']
|
||||
- any: ['.github/labeler.yml']
|
||||
- any: ['.github/workflows/*']
|
||||
- any: ['.appveyor.yml']
|
||||
- any: ['.codecov.yml']
|
||||
|
||||
translation:
|
||||
- any: ['src/po/*.po']
|
||||
|
||||
if_lua:
|
||||
- any: ['src/if_lua.c']
|
||||
- any: ['src/proto/if_lua.pro']
|
||||
- any: ['runtime/doc/if_lua.txt']
|
||||
|
||||
if_mzscheme:
|
||||
- any: ['src/if_mzsch.c']
|
||||
- any: ['src/if_mzsch.h']
|
||||
- any: ['src/proto/if_mzsch.pro']
|
||||
- any: ['runtime/doc/if_mzsch.txt']
|
||||
|
||||
if_perl:
|
||||
- any: ['src/if_perl.xs']
|
||||
- any: ['src/if_perlsfio.c']
|
||||
- any: ['src/proto/if_perl.pro']
|
||||
- any: ['src/proto/if_perlsfio.pro']
|
||||
- any: ['runtime/doc/if_perl.txt']
|
||||
|
||||
if_python:
|
||||
- any: ['src/if_py_both.h']
|
||||
- any: ['runtime/doc/if_pyth.txt']
|
||||
- any: ['src/if_python.c']
|
||||
- any: ['src/if_python3.c']
|
||||
- any: ['src/proto/if_python.pro']
|
||||
- any: ['src/proto/if_python3.pro']
|
||||
|
||||
if_ruby:
|
||||
- any: ['src/if_ruby.c']
|
||||
- any: ['src/proto/if_ruby.pro']
|
||||
- any: ['runtime/doc/if_ruby.txt']
|
||||
|
||||
if_tcl:
|
||||
- any: ['src/if_tcl.c']
|
||||
- any: ['src/proto/if_tcl.pro']
|
||||
- any: ['runtime/doc/if_tcl.txt']
|
||||
|
||||
runtime:
|
||||
- any: ['runtime/ftplugin']
|
||||
- any: ['runtime/syntax']
|
||||
- any: ['runtime/indent']
|
||||
- any: ['runtime/pack/dist/opt/termdebug/plugin/termdebug.vim']
|
||||
|
||||
termdebug: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
|
||||
|
||||
plugin-netrw:
|
||||
- any: ['runtime/plugin/netrwPlugin.vim']
|
||||
- any: ['runtime/autoload/netrw*']
|
||||
233
.github/workflows/ci.yml
vendored
233
.github/workflows/ci.yml
vendored
@@ -17,14 +17,15 @@ permissions:
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
GCC_VER: 13
|
||||
CLANG_VER: 17
|
||||
TEST: test
|
||||
SRCDIR: ./src
|
||||
LEAK_CFLAGS: -DEXITFREE
|
||||
CFLAGS: -Wno-deprecated-declarations
|
||||
LOG_DIR: ${{ github.workspace }}/logs
|
||||
TERM: xterm
|
||||
DISPLAY: ':99'
|
||||
@@ -35,83 +36,104 @@ jobs:
|
||||
matrix:
|
||||
features: [tiny, normal, huge]
|
||||
compiler: [clang, gcc]
|
||||
extra: [none]
|
||||
extra: [[]]
|
||||
# Only use non-native architecture when features != huge.
|
||||
# features=huge tries to install python3-dev, which fails to install
|
||||
# for the non-native architecture.
|
||||
architecture: [native]
|
||||
include:
|
||||
- features: tiny
|
||||
compiler: clang
|
||||
extra: nogui
|
||||
extra: [nogui]
|
||||
- features: tiny
|
||||
compiler: gcc
|
||||
extra: nogui
|
||||
extra: [nogui]
|
||||
- features: normal
|
||||
shadow: ./src/shadow
|
||||
- features: huge
|
||||
coverage: true
|
||||
- features: huge
|
||||
compiler: gcc
|
||||
architecture: i386
|
||||
- features: huge
|
||||
coverage: true
|
||||
extra: testgui
|
||||
uchar: true
|
||||
- features: huge
|
||||
compiler: clang
|
||||
extra: asan
|
||||
interface: dynamic
|
||||
python3: stable-abi
|
||||
- features: huge
|
||||
compiler: gcc
|
||||
coverage: true
|
||||
extra: unittests
|
||||
interface: dynamic
|
||||
extra: [uchar, testgui]
|
||||
- features: huge
|
||||
compiler: clang
|
||||
# Lua5.1 is the most widely used version (since it's what LuaJIT is
|
||||
# compatible with), so ensure it works
|
||||
lua_ver: '5.1'
|
||||
extra: [asan]
|
||||
- features: huge
|
||||
compiler: gcc
|
||||
coverage: true
|
||||
extra: [unittests]
|
||||
- features: normal
|
||||
compiler: gcc
|
||||
extra: vimtags
|
||||
extra: [vimtags]
|
||||
|
||||
steps:
|
||||
- name: Checkout repository from github
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- run: sudo dpkg --add-architecture i386
|
||||
if: matrix.architecture == 'i386'
|
||||
|
||||
- name: Install packages
|
||||
run: |
|
||||
PKGS=( \
|
||||
gettext \
|
||||
libgtk2.0-dev \
|
||||
libgtk2.0-dev:${{ matrix.architecture }} \
|
||||
desktop-file-utils \
|
||||
libtool-bin \
|
||||
libncurses-dev:${{ matrix.architecture }} \
|
||||
libxt-dev:${{ matrix.architecture }} \
|
||||
)
|
||||
if ${{ matrix.features == 'huge' }}; then
|
||||
LUA_VER=${{ matrix.lua_ver || '5.4' }}
|
||||
PKGS+=( \
|
||||
autoconf \
|
||||
gdb \
|
||||
lcov \
|
||||
libcanberra-dev \
|
||||
libperl-dev \
|
||||
python-dev \
|
||||
python2-dev \
|
||||
python3-dev \
|
||||
liblua5.3-dev \
|
||||
lua5.3 \
|
||||
liblua${LUA_VER}-dev \
|
||||
lua${LUA_VER} \
|
||||
ruby-dev \
|
||||
tcl-dev \
|
||||
cscope \
|
||||
libsodium-dev \
|
||||
attr \
|
||||
libattr1-dev
|
||||
)
|
||||
fi
|
||||
sudo apt update && sudo apt install -y "${PKGS[@]}"
|
||||
sudo apt-get update && sudo apt-get install -y "${PKGS[@]}"
|
||||
|
||||
- name: Install gcc-11
|
||||
- name: Install gcc-${{ env.GCC_VER }}
|
||||
if: matrix.compiler == 'gcc'
|
||||
run: |
|
||||
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
|
||||
sudo apt install -y gcc-11
|
||||
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100
|
||||
sudo update-alternatives --set gcc /usr/bin/gcc-11
|
||||
sudo apt-get install -y gcc-${{ env.GCC_VER }}:${{ matrix.architecture }}
|
||||
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${{ env.GCC_VER }} 100
|
||||
sudo update-alternatives --set gcc /usr/bin/gcc-${{ env.GCC_VER }}
|
||||
|
||||
- name: Install clang-15
|
||||
- name: Install clang-${{ env.CLANG_VER }}
|
||||
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}-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
|
||||
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-${{ env.CLANG_VER }} main"
|
||||
sudo apt-get install -y clang-${{ env.CLANG_VER }} llvm-${{ env.CLANG_VER }}
|
||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-${{ env.CLANG_VER }} 100
|
||||
sudo update-alternatives --set clang /usr/bin/clang-${{ env.CLANG_VER }}
|
||||
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-${{ env.CLANG_VER }} 100
|
||||
sudo update-alternatives --install /usr/bin/asan_symbolize asan_symbolize /usr/bin/asan_symbolize-${{ env.CLANG_VER }} 100
|
||||
|
||||
- name: Set up environment
|
||||
run: |
|
||||
@@ -121,7 +143,6 @@ jobs:
|
||||
(
|
||||
echo "LINUX_VERSION=$(uname -r)"
|
||||
echo "NPROC=$(getconf _NPROCESSORS_ONLN)"
|
||||
echo "SND_DUMMY_DIR=${HOME}/snd-dummy"
|
||||
echo "TMPDIR=${{ runner.temp }}"
|
||||
|
||||
case "${{ matrix.features }}" in
|
||||
@@ -135,16 +156,20 @@ jobs:
|
||||
;;
|
||||
huge)
|
||||
echo "TEST=scripttests test_libvterm"
|
||||
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
INTERFACE=${{ matrix.interface || 'yes' }}
|
||||
if ${{ matrix.python3 == 'stable-abi' }}; then
|
||||
PYTHON3_CONFOPT="--with-python3-stable-abi=3.8"
|
||||
fi
|
||||
echo "CONFOPT=--enable-perlinterp=${INTERFACE} --enable-pythoninterp=${INTERFACE} --enable-python3interp=${INTERFACE} --enable-rubyinterp=${INTERFACE} --enable-luainterp=${INTERFACE} --enable-tclinterp=${INTERFACE} ${PYTHON3_CONFOPT}"
|
||||
;;
|
||||
esac
|
||||
|
||||
if ${{ matrix.coverage == true }}; then
|
||||
CFLAGS="$CFLAGS --coverage -DUSE_GCOV_FLUSH"
|
||||
CFLAGS="${CFLAGS} --coverage -DUSE_GCOV_FLUSH"
|
||||
echo "LDFLAGS=--coverage"
|
||||
fi
|
||||
if ${{ matrix.uchar == true }}; then
|
||||
CFLAGS="$CFLAGS -funsigned-char"
|
||||
if ${{ contains(matrix.extra, 'uchar') }}; then
|
||||
CFLAGS="${CFLAGS} -funsigned-char"
|
||||
fi
|
||||
if ${{ contains(matrix.extra, 'testgui') }}; then
|
||||
echo "TEST=-C src testgui"
|
||||
@@ -161,7 +186,7 @@ jobs:
|
||||
if ${{ contains(matrix.extra, 'vimtags') }}; then
|
||||
echo "TEST=-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim"
|
||||
fi
|
||||
echo "CFLAGS=$CFLAGS"
|
||||
echo "CFLAGS=${CFLAGS}"
|
||||
) >> $GITHUB_ENV
|
||||
|
||||
- name: Set up system
|
||||
@@ -174,23 +199,20 @@ jobs:
|
||||
sudo usermod -a -G audio "${USER}"
|
||||
sudo bash ci/setup-xvfb.sh
|
||||
|
||||
# FIXME: Temporarily disabled because of build errors
|
||||
#- name: Cache snd-dummy
|
||||
# uses: actions/cache@v3
|
||||
# with:
|
||||
# path: ${{ env.SND_DUMMY_DIR }}
|
||||
# key: linux-${{ env.LINUX_VERSION }}-snd-dummy
|
||||
- name: Set up snd-dummy
|
||||
if: (!(contains(matrix.extra, 'unittests') || contains(matrix.extra, 'vimtags')))
|
||||
env:
|
||||
DEST_DIR: ${{ env.TMPDIR }}/linux-modules-extra-${{ env.LINUX_VERSION }}
|
||||
uses: tecolicom/actions-use-apt-tools@main
|
||||
with:
|
||||
tools: linux-modules-extra-${{ env.LINUX_VERSION }}
|
||||
path: "${DEST_DIR}"
|
||||
|
||||
#- name: Set up snd-dummy
|
||||
# run: |
|
||||
# if [[ ! -e ${SND_DUMMY_DIR}/snd-dummy.ko ]]; then
|
||||
# bash ci/build-snd-dummy.sh
|
||||
# fi
|
||||
# cd "${SND_DUMMY_DIR}"
|
||||
# sudo insmod soundcore.ko
|
||||
# sudo insmod snd.ko
|
||||
# sudo insmod snd-pcm.ko
|
||||
# sudo insmod snd-dummy.ko
|
||||
- name: modprobe snd-dummy
|
||||
if: (!(contains(matrix.extra, 'unittests') || contains(matrix.extra, 'vimtags')))
|
||||
run: |
|
||||
sudo depmod --verbose
|
||||
sudo modprobe --verbose snd-dummy || true
|
||||
|
||||
- name: Check autoconf
|
||||
if: contains(matrix.extra, 'unittests')
|
||||
@@ -228,23 +250,16 @@ jobs:
|
||||
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
|
||||
|
||||
- name: Test
|
||||
timeout-minutes: 20
|
||||
timeout-minutes: 25
|
||||
run: |
|
||||
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||
do_test make ${SHADOWOPT} ${TEST}
|
||||
|
||||
# - name: Coveralls
|
||||
# if: matrix.coverage && github.event_name != 'pull_request'
|
||||
# env:
|
||||
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
||||
# COVERALLS_PARALLEL: true
|
||||
# TRAVIS_JOB_ID: ${{ github.run_id }}
|
||||
# run: |
|
||||
# sudo apt-get install -y python3-setuptools python3-wheel
|
||||
# sudo -H pip3 install pip -U
|
||||
# # needed for https support for coveralls building cffi only works with gcc, not with clang
|
||||
# CC=gcc pip3 install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
|
||||
# ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
|
||||
- name: Vim tags
|
||||
if: contains(matrix.extra, 'vimtags')
|
||||
run: |
|
||||
# This will exit with an error code if the generated vim tags differs from source.
|
||||
git diff --exit-code -- runtime/doc/tags
|
||||
|
||||
- name: Generate gcov files
|
||||
if: matrix.coverage
|
||||
@@ -253,8 +268,9 @@ jobs:
|
||||
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||
|
||||
- name: Codecov
|
||||
timeout-minutes: 20
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v3.1.1
|
||||
uses: codecov/codecov-action@v3
|
||||
with:
|
||||
flags: linux,${{ matrix.features }}-${{ matrix.compiler }}-${{ matrix.extra }}
|
||||
|
||||
@@ -266,19 +282,6 @@ jobs:
|
||||
false # in order to fail a job
|
||||
done
|
||||
|
||||
# coveralls:
|
||||
# runs-on: ubuntu-20.04
|
||||
#
|
||||
# needs: linux
|
||||
# if: always() && github.event_name != 'pull_request'
|
||||
#
|
||||
# steps:
|
||||
# - name: Parallel finished
|
||||
# env:
|
||||
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
|
||||
# run: |
|
||||
# curl -k "https://coveralls.io/webhook?repo_token=${COVERALLS_REPO_TOKEN}" -d "payload[build_num]=${GITHUB_RUN_ID}&payload[status]=done"
|
||||
|
||||
macos:
|
||||
runs-on: macos-latest
|
||||
|
||||
@@ -296,16 +299,13 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository from github
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install packages
|
||||
if: matrix.features == 'huge'
|
||||
env:
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
run: |
|
||||
brew install lua
|
||||
echo "LUA_PREFIX=/usr/local" >> $GITHUB_ENV
|
||||
brew uninstall perl
|
||||
|
||||
- name: Set up environment
|
||||
run: |
|
||||
@@ -373,11 +373,17 @@ jobs:
|
||||
PYTHON_VER_DOT: '2.7'
|
||||
PYTHON_DIR: 'C:\Python27'
|
||||
# Python 3
|
||||
PYTHON3_VER: 310
|
||||
PYTHON3_VER_DOT: '3.10'
|
||||
PYTHON3_VER: 311
|
||||
PYTHON3_VER_DOT: '3.11'
|
||||
# Other dependencies
|
||||
# winpty
|
||||
WINPTY_URL: https://github.com/rprichard/winpty/releases/download/0.4.3/winpty-0.4.3-msvc2015.zip
|
||||
# libsodium
|
||||
SODIUM_VER: '1.0.18'
|
||||
SODIUM_MSVC_URL: https://download.libsodium.org/libsodium/releases/libsodium-%SODIUM_VER%-stable-msvc.zip
|
||||
SODIUM_MSVC_VER: v143
|
||||
SODIUM_MINGW_URL: https://download.libsodium.org/libsodium/releases/libsodium-%SODIUM_VER%-stable-mingw.tar.gz
|
||||
SODIUM_MINGW_VER: 23
|
||||
# Escape sequences
|
||||
COL_RED: "\x1b[31m"
|
||||
COL_GREEN: "\x1b[32m"
|
||||
@@ -388,8 +394,8 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- { 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: no, arch: x64, python3: stable }
|
||||
- { features: HUGE, toolchain: mingw, VIMDLL: yes, GUI: yes, arch: x86, python3: stable, 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 }
|
||||
@@ -407,7 +413,7 @@ jobs:
|
||||
|
||||
git config --global core.autocrlf input
|
||||
|
||||
if [ "${{ matrix.arch }}" = "x64" ]; then
|
||||
if ${{ matrix.arch == 'x64' }}; then
|
||||
cygreg=registry
|
||||
pyreg=
|
||||
echo "VCARCH=amd64" >> $GITHUB_ENV
|
||||
@@ -424,8 +430,8 @@ jobs:
|
||||
fi
|
||||
|
||||
echo "VCVARSALL=$(vswhere -products \* -latest -property installationPath)\\VC\\Auxiliary\\Build\\vcvarsall.bat" >> $GITHUB_ENV
|
||||
if [ "${{ matrix.features }}" != "TINY" ]; then
|
||||
if [ "${{ matrix.arch }}" = "x86" ]; then
|
||||
if ${{ matrix.features != 'TINY' }}; then
|
||||
if ${{ matrix.arch == 'x86' }}; then
|
||||
choco install python2 --no-progress --forcex86
|
||||
else
|
||||
choco install python2 --no-progress
|
||||
@@ -434,6 +440,15 @@ jobs:
|
||||
python3_dir=$(cat "/proc/$cygreg/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}$pyreg/InstallPath/@")
|
||||
echo "PYTHON3_DIR=$python3_dir" >> $GITHUB_ENV
|
||||
|
||||
if ${{ matrix.toolchain == 'msvc' }}; then
|
||||
SODIUM_DIR=D:\\libsodium
|
||||
echo "SODIUM_LIB=${SODIUM_DIR}\\${{ matrix.arch == 'x64' && 'x64' || 'Win32' }}\\Release\\${SODIUM_MSVC_VER}\\dynamic" >> $GITHUB_ENV
|
||||
else
|
||||
SODIUM_DIR=D:\\libsodium-win${{ matrix.arch == 'x64' && '64' || '32' }}
|
||||
echo "SODIUM_LIB=${SODIUM_DIR}\\bin" >> $GITHUB_ENV
|
||||
fi
|
||||
echo "SODIUM_DIR=${SODIUM_DIR}" >> $GITHUB_ENV
|
||||
|
||||
- uses: msys2/setup-msys2@v2
|
||||
if: matrix.toolchain == 'mingw'
|
||||
with:
|
||||
@@ -445,7 +460,7 @@ jobs:
|
||||
release: false
|
||||
|
||||
- name: Checkout repository from github
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Create a list of download URLs
|
||||
shell: cmd
|
||||
@@ -453,6 +468,7 @@ jobs:
|
||||
type NUL > urls.txt
|
||||
echo %LUA_RELEASE%>> urls.txt
|
||||
echo %WINPTY_URL%>> urls.txt
|
||||
echo %SODIUM_VER%>> urls.txt
|
||||
|
||||
- name: Cache downloaded files
|
||||
uses: actions/cache@v3
|
||||
@@ -476,6 +492,16 @@ jobs:
|
||||
copy /Y D:\winpty\%WARCH%\bin\winpty.dll src\winpty%BITS%.dll
|
||||
copy /Y D:\winpty\%WARCH%\bin\winpty-agent.exe src\
|
||||
|
||||
echo %COL_GREEN%Download libsodium%COL_RESET%
|
||||
if "${{ matrix.toolchain }}"=="msvc" (
|
||||
call :downloadfile %SODIUM_MSVC_URL% downloads\libsodium.zip
|
||||
7z x -y downloads\libsodium.zip -oD:\ > nul || exit 1
|
||||
) else (
|
||||
call :downloadfile %SODIUM_MINGW_URL% downloads\libsodium.tar.gz
|
||||
7z x -y downloads\libsodium.tar.gz -so | 7z x -si -ttar -oD:\ > nul || exit 1
|
||||
mklink %SODIUM_LIB%\libsodium.dll %SODIUM_LIB%\libsodium-%SODIUM_MINGW_VER%.dll
|
||||
)
|
||||
|
||||
goto :eof
|
||||
|
||||
:downloadfile
|
||||
@@ -500,13 +526,20 @@ jobs:
|
||||
) else (
|
||||
set GUI=${{ matrix.GUI }}
|
||||
)
|
||||
if "${{ matrix.python3 }}"=="stable" (
|
||||
set PYTHON3_STABLE=yes
|
||||
) else (
|
||||
set PYTHON3_STABLE=no
|
||||
)
|
||||
if "${{ matrix.features }}"=="HUGE" (
|
||||
nmake -nologo -f Make_mvc.mak ^
|
||||
FEATURES=${{ matrix.features }} ^
|
||||
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%
|
||||
DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR% ^
|
||||
DYNAMIC_PYTHON3_STABLE_ABI=%PYTHON3_STABLE% ^
|
||||
DYNAMIC_SODIUM=yes SODIUM=%SODIUM_DIR%
|
||||
) else (
|
||||
nmake -nologo -f Make_mvc.mak ^
|
||||
FEATURES=${{ matrix.features }} ^
|
||||
@@ -523,6 +556,11 @@ jobs:
|
||||
else
|
||||
GUI=${{ matrix.GUI }}
|
||||
fi
|
||||
if [ "${{ matrix.python3 }}" = "stable" ]; then
|
||||
PYTHON3_STABLE=yes
|
||||
else
|
||||
PYTHON3_STABLE=no
|
||||
fi
|
||||
if [ "${{ matrix.features }}" = "HUGE" ]; then
|
||||
mingw32-make -f Make_ming.mak -j2 \
|
||||
FEATURES=${{ matrix.features }} \
|
||||
@@ -530,6 +568,8 @@ jobs:
|
||||
DYNAMIC_LUA=yes LUA=${LUA_DIR_SLASH} \
|
||||
DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \
|
||||
DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \
|
||||
DYNAMIC_PYTHON3_STABLE_ABI=${PYTHON3_STABLE} \
|
||||
DYNAMIC_SODIUM=yes SODIUM=${SODIUM_DIR} \
|
||||
STATIC_STDCPLUS=yes COVERAGE=${{ matrix.coverage }}
|
||||
else
|
||||
mingw32-make -f Make_ming.mak -j2 \
|
||||
@@ -574,7 +614,7 @@ jobs:
|
||||
shell: cmd
|
||||
timeout-minutes: 15
|
||||
run: |
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%;%SODIUM_LIB%
|
||||
call "%VCVARSALL%" %VCARCH%
|
||||
|
||||
echo %COL_GREEN%Test gVim:%COL_RESET%
|
||||
@@ -591,7 +631,7 @@ jobs:
|
||||
shell: cmd
|
||||
timeout-minutes: 15
|
||||
run: |
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%
|
||||
PATH %LUA_DIR%;C:\msys64\%MSYSTEM%\bin;%PATH%;%PYTHON3_DIR%;%SODIUM_LIB%
|
||||
call "%VCVARSALL%" %VCARCH%
|
||||
|
||||
echo %COL_GREEN%Test Vim:%COL_RESET%
|
||||
@@ -612,8 +652,9 @@ jobs:
|
||||
find . -type f -name '*.gcno' -exec gcov -pb {} + || true
|
||||
|
||||
- name: Codecov
|
||||
timeout-minutes: 20
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v3.1.1
|
||||
uses: codecov/codecov-action@v3
|
||||
with:
|
||||
directory: src
|
||||
flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}
|
||||
|
||||
2
.github/workflows/codeql-analysis.yml
vendored
2
.github/workflows/codeql-analysis.yml
vendored
@@ -44,7 +44,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository from github
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
|
||||
13
.github/workflows/coverity.yml
vendored
13
.github/workflows/coverity.yml
vendored
@@ -9,18 +9,17 @@ permissions:
|
||||
|
||||
jobs:
|
||||
scan:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
env:
|
||||
CC: gcc
|
||||
CFLAGS: -Wno-deprecated-declarations
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
|
||||
|
||||
steps:
|
||||
- name: Checkout repository from github
|
||||
if: env.TOKEN
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Download Coverity
|
||||
if: env.TOKEN
|
||||
@@ -32,15 +31,15 @@ jobs:
|
||||
- name: Install packages
|
||||
if: env.TOKEN
|
||||
run: |
|
||||
sudo apt update && sudo apt install -y \
|
||||
sudo apt-get update && sudo apt-get install -y \
|
||||
autoconf \
|
||||
gettext \
|
||||
libcanberra-dev \
|
||||
libperl-dev \
|
||||
python-dev \
|
||||
python2-dev \
|
||||
python3-dev \
|
||||
liblua5.3-dev \
|
||||
lua5.3 \
|
||||
liblua5.4-dev \
|
||||
lua5.4 \
|
||||
ruby-dev \
|
||||
tcl-dev \
|
||||
libgtk2.0-dev \
|
||||
|
||||
24
.github/workflows/label.yml
vendored
Normal file
24
.github/workflows/label.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
# This workflow will triage pull requests and apply a label based on the
|
||||
# paths that are modified in the pull request.
|
||||
#
|
||||
# To use this workflow, you will need to set up a .github/labeler.yml
|
||||
# file with configuration. For more information, see:
|
||||
# https://github.com/actions/labeler
|
||||
|
||||
name: Labeler
|
||||
on: [pull_request_target]
|
||||
|
||||
jobs:
|
||||
label:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
- uses: actions/labeler@v4
|
||||
with:
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
configuration-path: .github/labeler.yml
|
||||
sync-labels: ''
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -68,6 +68,7 @@ src/tags
|
||||
/GPATH
|
||||
/GTAGS
|
||||
/GRTAGS
|
||||
nsis/tags
|
||||
|
||||
# Generated by "make test"
|
||||
src/po/*.ck
|
||||
|
||||
22
.hgignore
22
.hgignore
@@ -7,9 +7,9 @@ src/xxd/xxd
|
||||
src/auto/if_perl.c
|
||||
src/auto/gui_gtk_gresources.c
|
||||
src/auto/gui_gtk_gresources.h
|
||||
src/auto/os_haiku.rdef
|
||||
src/objects/.dirstamp
|
||||
src/objects
|
||||
src/tags
|
||||
src/types.vim
|
||||
|
||||
# We do need src/auto/configure.
|
||||
@@ -46,12 +46,15 @@ gvimext.lib
|
||||
gvim.lib
|
||||
runtime/doc/uganda.nsis.txt
|
||||
nsis/icons/*
|
||||
/vim90/
|
||||
.vscode/
|
||||
|
||||
# NetBeans
|
||||
nbproject/*
|
||||
|
||||
# Mac OSX
|
||||
src/xxd/xxd.dSYM
|
||||
.DS_Store
|
||||
|
||||
# All platforms
|
||||
*.rej
|
||||
@@ -62,6 +65,12 @@ src/xxd/xxd.dSYM
|
||||
*.pyc
|
||||
*.log
|
||||
src/po/vim.pot
|
||||
src/tags
|
||||
/tags
|
||||
/GPATH
|
||||
/GTAGS
|
||||
/GRTAGS
|
||||
nsis/tags
|
||||
|
||||
# Generated by "make test"
|
||||
src/po/*.ck
|
||||
@@ -78,14 +87,16 @@ src/testdir/dostmp/*
|
||||
src/testdir/messages
|
||||
src/testdir/viminfo
|
||||
src/testdir/opt_test.vim
|
||||
src/testdir/failed
|
||||
src/testdir/starttime
|
||||
runtime/indent/testdir/*.out
|
||||
runtime/indent/testdir/*.fail
|
||||
src/memfile_test
|
||||
src/json_test
|
||||
src/message_test
|
||||
src/kword_test
|
||||
|
||||
# Generated by "make install"
|
||||
runtime/doc/tags
|
||||
runtime/doc/doctags
|
||||
|
||||
# Generated by "make shadow". The directory names could be anything but we
|
||||
@@ -95,5 +106,10 @@ src/shadow-*
|
||||
src/runtime
|
||||
src/pixmaps
|
||||
|
||||
# other possible files build by tools
|
||||
# other files possibly created by tools
|
||||
src/cscope.out
|
||||
|
||||
# Linter/language server files
|
||||
/.cache/clangd/
|
||||
/.ccls-cache/
|
||||
/compile_commands.json
|
||||
|
||||
9
Filelist
9
Filelist
@@ -18,10 +18,8 @@ SRC_ALL = \
|
||||
.appveyor.yml \
|
||||
.codecov.yml \
|
||||
ci/appveyor.bat \
|
||||
ci/build-snd-dummy.sh \
|
||||
ci/config.mk*.sed \
|
||||
ci/if_ver*.vim \
|
||||
ci/load-snd-dummy.sh \
|
||||
ci/setup-xvfb.sh \
|
||||
src/Make_all.mak \
|
||||
src/README.md \
|
||||
@@ -219,6 +217,7 @@ SRC_ALL = \
|
||||
src/testdir/color_ramp.vim \
|
||||
src/testdir/silent.wav \
|
||||
src/testdir/popupbounce.vim \
|
||||
src/testdir/crash/* \
|
||||
src/proto.h \
|
||||
src/protodef.h \
|
||||
src/proto/alloc.pro \
|
||||
@@ -710,6 +709,7 @@ RT_ALL = \
|
||||
runtime/ftoff.vim \
|
||||
runtime/gvimrc_example.vim \
|
||||
runtime/import/dist/vimhelp.vim \
|
||||
runtime/import/dist/vimhighlight.vim \
|
||||
runtime/macros/README.txt \
|
||||
runtime/macros/editexisting.vim \
|
||||
runtime/macros/hanoi/click.me \
|
||||
@@ -806,6 +806,11 @@ RT_SCRIPTS = \
|
||||
runtime/syntax/README.txt \
|
||||
runtime/syntax/shared/*.vim \
|
||||
runtime/syntax/shared/README.txt \
|
||||
runtime/syntax/Makefile \
|
||||
runtime/syntax/testdir/README.txt \
|
||||
runtime/syntax/testdir/runtest.vim \
|
||||
runtime/syntax/testdir/input/*.* \
|
||||
runtime/syntax/testdir/dumps/*.dump \
|
||||
|
||||
# Unix runtime
|
||||
RT_UNIX = \
|
||||
|
||||
4
LICENSE
4
LICENSE
@@ -21,8 +21,8 @@ II) It is allowed to distribute a modified (or extended) version of Vim,
|
||||
maintainer will do with your changes and under what license they
|
||||
will be distributed is negotiable. If there has been no negotiation
|
||||
then this license, or a later version, also applies to your changes.
|
||||
The current maintainer is Bram Moolenaar <Bram@vim.org>. If this
|
||||
changes it will be announced in appropriate places (most likely
|
||||
The current maintainers are listed here: https://github.com/orgs/vim/people.
|
||||
If this changes it will be announced in appropriate places (most likely
|
||||
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
|
||||
impossible to contact the maintainer, the obligation to send him
|
||||
your changes ceases. Once the maintainer has confirmed that he has
|
||||
|
||||
19
Makefile
19
Makefile
@@ -39,14 +39,15 @@ all install uninstall tools config configure reconfig proto depend lint tags typ
|
||||
@echo "Starting make in the src directory."
|
||||
@echo "If there are problems, cd to the src directory and run make there"
|
||||
cd src && $(MAKE) $@
|
||||
@# When the target is "test" also run the indent tests.
|
||||
@if test "$@" = "test"; then \
|
||||
@# When the target is "test" also run the indent and syntax tests.
|
||||
@if test "$@" = "test" -o "$@" = "testtiny"; then \
|
||||
$(MAKE) indenttest; \
|
||||
$(MAKE) syntaxtest; \
|
||||
fi
|
||||
@# When the target is "clean" also clean for the indent tests.
|
||||
@# When the target is "clean" also clean for the indent and syntax tests.
|
||||
@if test "$@" = "clean" -o "$@" = "distclean" -o "$@" = "testclean"; then \
|
||||
cd runtime/indent && \
|
||||
$(MAKE) clean; \
|
||||
(cd runtime/indent && $(MAKE) clean); \
|
||||
(cd runtime/syntax && $(MAKE) clean); \
|
||||
fi
|
||||
|
||||
# Executable used for running the indent tests.
|
||||
@@ -57,6 +58,14 @@ indenttest:
|
||||
$(MAKE) clean && \
|
||||
$(MAKE) test VIM="$(VIM_FOR_INDENTTEST)"
|
||||
|
||||
# Executable used for running the syntax tests.
|
||||
VIM_FOR_SYNTAXTEST = ../../src/vim
|
||||
|
||||
syntaxtest:
|
||||
cd runtime/syntax && \
|
||||
$(MAKE) clean && \
|
||||
$(MAKE) test VIMPROG="$(VIM_FOR_SYNTAXTEST)"
|
||||
|
||||
|
||||
#########################################################################
|
||||
# 2. Creating the various distribution files.
|
||||
|
||||
83
README.md
83
README.md
@@ -1,17 +1,21 @@
|
||||
[](https://www.vim.org)
|
||||
# [](https://www.vim.org)
|
||||
|
||||
[](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>
|
||||
[](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://buildd.debian.org/vim)
|
||||
[](https://repology.org/metapackage/vim)
|
||||
[](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
|
||||
|
||||
If you find a bug or want to discuss the best way to add a new feature, please
|
||||
open an [issue](https://github.com/vim/vim/issues).
|
||||
[open an issue](https://github.com/vim/vim/issues/new/choose).
|
||||
If you have a question or want to discuss the best way to do something with
|
||||
Vim, you can use [StackExchange](https://vi.stackexchange.com/)
|
||||
or one of the [Maillists](https://www.vim.org/community.php).
|
||||
|
||||
|
||||
## What is Vim? ##
|
||||
## What is Vim?
|
||||
|
||||
Vim is a greatly improved version of the good old UNIX editor
|
||||
[Vi](https://en.wikipedia.org/wiki/Vi). Many new
|
||||
@@ -35,7 +39,7 @@ Amiga DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
For Vim9 script see [README_VIM9](README_VIM9.md).
|
||||
|
||||
## Distribution ##
|
||||
## Distribution
|
||||
|
||||
You can often use your favorite package manager to install Vim. On Mac and
|
||||
Linux a small version of Vim is pre-installed, you still need to install Vim
|
||||
@@ -55,78 +59,72 @@ Some popular places to get the latest Vim:
|
||||
* Get a Windows executable from the
|
||||
[vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository.
|
||||
|
||||
|
||||
|
||||
## Compiling ##
|
||||
## Compiling
|
||||
|
||||
If you obtained a binary distribution you don't need to compile Vim. If you
|
||||
obtained a source distribution, all the stuff for compiling Vim is in the
|
||||
[`src`](/src) directory. See [`src/INSTALL`](src/INSTALL) for instructions.
|
||||
[`src`](./src/) directory. See [`src/INSTALL`](./src/INSTALL) for instructions.
|
||||
|
||||
|
||||
## Installation ##
|
||||
## Installation
|
||||
|
||||
See one of these files for system-specific instructions. Either in the
|
||||
[READMEdir directory](./READMEdir/) (in the repository) or
|
||||
the top directory (if you unpack an archive):
|
||||
|
||||
README_ami.txt Amiga
|
||||
README_unix.txt Unix
|
||||
README_dos.txt MS-DOS and MS-Windows
|
||||
README_mac.txt Macintosh
|
||||
README_haiku.txt Haiku
|
||||
README_vms.txt VMS
|
||||
```
|
||||
README_ami.txt Amiga
|
||||
README_unix.txt Unix
|
||||
README_dos.txt MS-DOS and MS-Windows
|
||||
README_mac.txt Macintosh
|
||||
README_haiku.txt Haiku
|
||||
README_vms.txt VMS
|
||||
```
|
||||
|
||||
There are other `README_*.txt` files, depending on the distribution you used.
|
||||
|
||||
|
||||
## Documentation ##
|
||||
## Documentation
|
||||
|
||||
The Vim tutor is a one hour training course for beginners. Often it can be
|
||||
started as `vimtutor`. See `:help tutor` for more information.
|
||||
|
||||
The best is to use `:help` in Vim. If you don't have an executable yet, read
|
||||
[`runtime/doc/help.txt`](/runtime/doc/help.txt).
|
||||
[`runtime/doc/help.txt`](./runtime/doc/help.txt).
|
||||
It contains pointers to the other documentation files.
|
||||
The User Manual reads like a book and is recommended to learn to use
|
||||
Vim. See `:help user-manual`.
|
||||
|
||||
|
||||
## Copying ##
|
||||
## Copying
|
||||
|
||||
Vim is Charityware. You can use and copy it as much as you like, but you are
|
||||
encouraged to make a donation to help orphans in Uganda. Please read the file
|
||||
[`runtime/doc/uganda.txt`](runtime/doc/uganda.txt)
|
||||
[`runtime/doc/uganda.txt`](./runtime/doc/uganda.txt)
|
||||
for details (do `:help uganda` inside Vim).
|
||||
|
||||
Summary of the license: There are no restrictions on using or distributing an
|
||||
unmodified copy of Vim. Parts of Vim may also be distributed, but the license
|
||||
text must always be included. For modified versions a few restrictions apply.
|
||||
text must always be included. For modified versions, a few restrictions apply.
|
||||
The license is GPL compatible, you may compile Vim with GPL libraries and
|
||||
distribute it.
|
||||
|
||||
|
||||
## Sponsoring ##
|
||||
## Sponsoring
|
||||
|
||||
Fixing bugs and adding new features takes a lot of time and effort. To show
|
||||
your appreciation for the work and motivate Bram and others to continue
|
||||
working on Vim please send a donation.
|
||||
|
||||
Since Bram is back to a paid job the money will now be used to help children
|
||||
in Uganda. See [`runtime/doc/uganda.txt`](runtime/doc/uganda.txt). But
|
||||
in Uganda. See [`runtime/doc/uganda.txt`](./runtime/doc/uganda.txt). But
|
||||
at the same time donations increase Bram's motivation to keep working on Vim!
|
||||
|
||||
For the most recent information about sponsoring look on the Vim web site:
|
||||
https://www.vim.org/sponsor/
|
||||
|
||||
## Contributing
|
||||
|
||||
## Contributing ##
|
||||
If you would like to help make Vim better, see the
|
||||
[CONTRIBUTING.md](./CONTRIBUTING.md) file.
|
||||
|
||||
If you would like to help making Vim better, see the
|
||||
[CONTRIBUTING.md](/CONTRIBUTING.md) file.
|
||||
|
||||
|
||||
## Information ##
|
||||
## Information
|
||||
|
||||
If you are on macOS, you can use [Macvim](https://macvim-dev.github.io/macvim/).
|
||||
|
||||
@@ -141,14 +139,15 @@ If you still have problems or any other questions, use one of the mailing
|
||||
lists to discuss them with Vim users and developers:
|
||||
https://www.vim.org/maillist.php
|
||||
|
||||
If nothing else works, report bugs directly:
|
||||
Bram Moolenaar <Bram@vim.org>
|
||||
If nothing else works, report bugs directly to the vim-dev mailing list:
|
||||
`<vim-dev@vim.org>`
|
||||
|
||||
## Main author
|
||||
|
||||
## Main author ##
|
||||
|
||||
Send any other comments, patches, flowers and suggestions to:
|
||||
Bram Moolenaar <Bram@vim.org>
|
||||
Most of Vim was created by Bram Moolenaar `<Bram@vim.org>`
|
||||
[Bram-Moolenaar](https://vimhelp.org/version9.txt.html#Bram-Moolenaar)
|
||||
|
||||
Send any other comments, patches, flowers and suggestions to the vim-dev mailing list:
|
||||
`<vim-dev@vim.org>`
|
||||
|
||||
This is `README.md` for version 9.0 of Vim: Vi IMproved.
|
||||
|
||||
14
README.txt
14
README.txt
@@ -84,7 +84,7 @@ encouraged to make a donation to help orphans in Uganda. Please read the file
|
||||
|
||||
Summary of the license: There are no restrictions on using or distributing an
|
||||
unmodified copy of Vim. Parts of Vim may also be distributed, but the license
|
||||
text must always be included. For modified versions a few restrictions apply.
|
||||
text must always be included. For modified versions, a few restrictions apply.
|
||||
The license is GPL compatible, you may compile Vim with GPL libraries and
|
||||
distribute it.
|
||||
|
||||
@@ -106,7 +106,7 @@ For the most recent information about sponsoring look on the Vim web site:
|
||||
|
||||
CONTRIBUTING
|
||||
|
||||
If you would like to help making Vim better, see the CONTRIBUTING.md file.
|
||||
If you would like to help make Vim better, see the CONTRIBUTING.md file.
|
||||
|
||||
|
||||
INFORMATION
|
||||
@@ -122,12 +122,14 @@ If you still have problems or any other questions, use one of the mailing
|
||||
lists to discuss them with Vim users and developers:
|
||||
https://www.vim.org/maillist.php
|
||||
|
||||
If nothing else works, report bugs directly:
|
||||
Bram Moolenaar <Bram@vim.org>
|
||||
If nothing else works, report bugs directly to the vim-dev mailing list:
|
||||
<vim-dev@vim.org>
|
||||
|
||||
|
||||
MAIN AUTHOR
|
||||
|
||||
Send any other comments, patches, flowers and suggestions to:
|
||||
Most of Vim was created by Bram Moolenaar <Bram@vim.org> |Bram-Moolenaar|
|
||||
|
||||
Bram Moolenaar E-mail: Bram@vim.org
|
||||
Send any other comments, patches, flowers and suggestions to the vim-dev mailing list:
|
||||
|
||||
<vim-dev@vim.org>
|
||||
|
||||
@@ -2,18 +2,17 @@
|
||||
|
||||
# What is Vim9?
|
||||
|
||||
This is an experimental side of [Vim](https://github.com/vim/vim).
|
||||
It explores ways of making Vim script faster and better.
|
||||
This is a new syntax for Vim script that was introduced with Vim 9.0.
|
||||
It intends making Vim script faster and better.
|
||||
|
||||
WARNING: The Vim9 script features are still under development, anything can
|
||||
break!
|
||||
|
||||
# Why Vim9?
|
||||
|
||||
## 1. FASTER VIM SCRIPT
|
||||
|
||||
The third item on the poll results of 2018, after popup windows and text
|
||||
properties, is faster Vim script. So how do we do that?
|
||||
properties, both of which have been implemented, is faster Vim script.
|
||||
So how do we do that?
|
||||
|
||||
I have been throwing some ideas around, and soon came to the conclusion
|
||||
that the current way functions are called and executed, with
|
||||
@@ -53,7 +52,7 @@ we can gain, and also that Vim script can be faster than builtin
|
||||
interfaces.
|
||||
|
||||
LuaJit is much faster at Lua-only instructions. In practice the script would
|
||||
not do something useless as counting but change the text. For example,
|
||||
not do something useless counting, but change the text. For example,
|
||||
reindent all the lines:
|
||||
|
||||
``` vim
|
||||
|
||||
@@ -46,7 +46,7 @@ Change to the vim directory and do:
|
||||
|
||||
$ export CC=cc
|
||||
$ export _CC_CCMODE=1
|
||||
$./configure --with-features=big --without-x --enable-gui=no
|
||||
$./configure --with-features=normal --without-x --enable-gui=no
|
||||
$ cd src
|
||||
$ make
|
||||
|
||||
|
||||
8
SECURITY.md
Normal file
8
SECURITY.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# Security Policy
|
||||
|
||||
## Reporting a vulnerability
|
||||
|
||||
If you want to report a security issue, please use [huntr.dev](https://huntr.dev/bounties/disclose?target=https%3A%2F%2Fgithub.com%2Fvim%2Fvim) to privately disclose the issue to us.
|
||||
They also have rewards in the form of money, swag and CVEs.
|
||||
|
||||
**Please don't publicly disclose the issue until it has been addressed by us.**
|
||||
@@ -1,9 +1,54 @@
|
||||
@echo off
|
||||
:: Batch file for building/testing Vim on AppVeyor
|
||||
set target=%1
|
||||
|
||||
setlocal ENABLEDELAYEDEXPANSION
|
||||
cd %APPVEYOR_BUILD_FOLDER%
|
||||
|
||||
:: Python3
|
||||
set PYTHON3_VER=311
|
||||
set PYTHON3_RELEASE=3.11.1
|
||||
set PYTHON3_URL=https://www.python.org/ftp/python/%PYTHON3_RELEASE%/python-%PYTHON3_RELEASE%-amd64.exe
|
||||
set PYTHON3_DIR=C:\python%PYTHON3_VER%-x64
|
||||
|
||||
set "VSWHERE=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe"
|
||||
|
||||
if exist "%VSWHERE%" (
|
||||
for /f "usebackq delims=" %%i in (
|
||||
`"%VSWHERE%" -products * -latest -property installationPath`
|
||||
) do (
|
||||
set "VCVARSALL=%%i\VC\Auxiliary\Build\vcvarsall.bat"
|
||||
)
|
||||
)
|
||||
|
||||
if not exist "%VCVARSALL%" (
|
||||
set "VCVARSALL=%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
|
||||
)
|
||||
call "%VCVARSALL%" x64
|
||||
|
||||
goto %target%
|
||||
echo Unknown build target.
|
||||
exit 1
|
||||
|
||||
:: ----------------------------------------------------------------------------
|
||||
:install
|
||||
@echo on
|
||||
if not exist downloads mkdir downloads
|
||||
|
||||
:: Python 3
|
||||
if not exist %PYTHON3_DIR% (
|
||||
call :downloadfile %PYTHON3_URL% downloads\python3.exe
|
||||
cmd /c start /wait downloads\python3.exe /quiet TargetDir=%PYTHON3_DIR% ^
|
||||
Include_pip=0 Include_tcltk=0 Include_test=0 Include_tools=0 ^
|
||||
AssociateFiles=0 Shortcuts=0 Include_doc=0 Include_launcher=0 ^
|
||||
InstallLauncherAllUsers=0
|
||||
)
|
||||
@echo off
|
||||
goto :eof
|
||||
|
||||
:: ----------------------------------------------------------------------------
|
||||
:build
|
||||
|
||||
cd src
|
||||
|
||||
echo "Building MSVC 64bit console Version"
|
||||
@@ -22,7 +67,7 @@ if "%FEATURE%" == "HUGE" (
|
||||
nmake -f Make_mvc.mak CPU=AMD64 ^
|
||||
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no POSTSCRIPT=yes ^
|
||||
PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 ^
|
||||
PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 ^
|
||||
PYTHON3_VER=%PYTHON3_VER% DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR% ^
|
||||
FEATURES=%FEATURE%
|
||||
) ELSE (
|
||||
nmake -f Make_mvc.mak CPU=AMD64 ^
|
||||
@@ -39,4 +84,31 @@ echo "version output MSVC console"
|
||||
.\vim --version || exit 1
|
||||
echo "version output MSVC GUI"
|
||||
type ver_msvc.txt || exit 1
|
||||
cd ..
|
||||
|
||||
goto :eof
|
||||
|
||||
:: ----------------------------------------------------------------------------
|
||||
:test
|
||||
@echo on
|
||||
cd src/testdir
|
||||
:: Testing with MSVC gvim
|
||||
path %PYTHON3_DIR%;%PATH%
|
||||
nmake -f Make_mvc.mak VIMPROG=..\gvim
|
||||
nmake -f Make_mvc.mak clean
|
||||
:: Testing with MSVC console version
|
||||
nmake -f Make_mvc.mak VIMPROG=..\vim
|
||||
|
||||
@echo off
|
||||
goto :eof
|
||||
|
||||
:: ----------------------------------------------------------------------------
|
||||
:downloadfile
|
||||
:: call :downloadfile <URL> <localfile>
|
||||
if not exist %2 (
|
||||
curl -f -L %1 -o %2
|
||||
)
|
||||
if ERRORLEVEL 1 (
|
||||
rem Retry once.
|
||||
curl -f -L %1 -o %2 || exit 1
|
||||
)
|
||||
@goto :eof
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -eu
|
||||
|
||||
LINUX_VERSION=$(uname -r | cut -d. -f1-2)
|
||||
LINUX_ARCHIVE_FILE=v${LINUX_VERSION}.tar.gz
|
||||
LINUX_SOURCE_DIR=linux-${LINUX_VERSION}
|
||||
|
||||
mkdir -p "${TMPDIR}"
|
||||
cd "${TMPDIR}"
|
||||
|
||||
wget -q "https://github.com/torvalds/linux/archive/${LINUX_ARCHIVE_FILE}"
|
||||
|
||||
tar -xf "${LINUX_ARCHIVE_FILE}" "${LINUX_SOURCE_DIR}/sound"
|
||||
cd "${LINUX_SOURCE_DIR}/sound"
|
||||
|
||||
CC=gcc make -C "/lib/modules/$(uname -r)/build" M="${PWD}" CONFIG_SOUND=m CONFIG_SND=m CONFIG_SND_PCM=m CONFIG_SND_DUMMY=m modules
|
||||
|
||||
mkdir -p "${SND_DUMMY_DIR}"
|
||||
cp soundcore.ko core/snd.ko core/snd-pcm.ko drivers/snd-dummy.ko "${SND_DUMMY_DIR}"
|
||||
@@ -1,3 +1,3 @@
|
||||
# Clang 12 (or Apple clang 13) and later makes a warning '-Wcompound-token-split-by-macro' enable by default.
|
||||
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
|
||||
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro -Wno-compound-token-split-by-macro/
|
||||
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
|
||||
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function/
|
||||
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter/
|
||||
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Werror -Wno-deprecated-declarations/
|
||||
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function -Wno-shadow/
|
||||
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter -Wno-strict-prototypes/
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
if ! modprobe snd-dummy; then
|
||||
# snd-dummy is contained in linux-modules-extra (if exists)
|
||||
apt-get install -yq --no-install-suggests --no-install-recommends "linux-modules-extra-$(uname -r)"
|
||||
modprobe snd-dummy
|
||||
fi
|
||||
@@ -29,12 +29,12 @@ To build the installable .exe:
|
||||
|
||||
4. Get a "diff.exe" program. If you skip this the built-in diff will always
|
||||
be used (which is fine for most users). If you do have your own
|
||||
"diff.exe" put it in the "../.." directory (above the "vim82" directory,
|
||||
"diff.exe" put it in the "../.." directory (above the "vim90" directory,
|
||||
it's the same for all Vim versions).
|
||||
You can find one in previous Vim versions or in this archive:
|
||||
http://www.mossbayeng.com/~ron/vim/diffutils.tar.gz
|
||||
|
||||
5 Also put winpty32.dll and winpty-agent.exe in "../.." (above the "vim82"
|
||||
5 Also put winpty32.dll and winpty-agent.exe in "../.." (above the "vim90"
|
||||
directory). This is required for the terminal window.
|
||||
|
||||
6. Do "make uganda.nsis.txt" in runtime/doc. This requires sed, you may have
|
||||
|
||||
@@ -228,6 +228,28 @@ FunctionEnd
|
||||
!insertmacro GetParent ""
|
||||
!insertmacro GetParent "un."
|
||||
|
||||
# Get home directory
|
||||
!macro GetHomeDir un
|
||||
Function ${un}GetHomeDir
|
||||
Push $0
|
||||
Push $1
|
||||
ReadEnvStr $0 "HOME"
|
||||
${If} $0 == ""
|
||||
ReadEnvStr $0 "HOMEDRIVE"
|
||||
ReadEnvStr $1 "HOMEPATH"
|
||||
StrCpy $0 "$0$1"
|
||||
${If} $0 == ""
|
||||
ReadEnvStr $0 "USERPROFILE"
|
||||
${EndIf}
|
||||
${EndIf}
|
||||
Pop $1
|
||||
Exch $0 # put $0 on top of stack, restore $0 to original value
|
||||
FunctionEnd
|
||||
!macroend
|
||||
|
||||
!insertmacro GetHomeDir ""
|
||||
!insertmacro GetHomeDir "un."
|
||||
|
||||
# Check if Vim is already installed.
|
||||
# return: Installed directory. If not found, it will be empty.
|
||||
Function CheckOldVim
|
||||
@@ -520,7 +542,8 @@ SectionGroup $(str_group_plugin) id_group_plugin
|
||||
Section "$(str_section_plugin_home)" id_section_pluginhome
|
||||
SectionIn 1 3
|
||||
|
||||
StrCpy $1 "$1 -create-directories home"
|
||||
# use ShellExecAsUser below instead
|
||||
# StrCpy $1 "$1 -create-directories home"
|
||||
SectionEnd
|
||||
|
||||
Section "$(str_section_plugin_vim)" id_section_pluginvim
|
||||
@@ -594,6 +617,13 @@ Section -call_install_exe
|
||||
DetailPrint "$(str_msg_registering)"
|
||||
nsExec::Exec "$0\install.exe $1"
|
||||
Pop $3
|
||||
|
||||
${If} ${SectionIsSelected} ${id_section_pluginhome}
|
||||
ReadEnvStr $3 "COMSPEC"
|
||||
Call GetHomeDir
|
||||
Pop $4
|
||||
ShellExecAsUser::ShellExecAsUser "" "$3" '/c "cd /d "$4" & mkdir vimfiles & cd vimfiles & mkdir colors compiler doc ftdetect ftplugin indent keymap plugin syntax"' SW_HIDE
|
||||
${EndIf}
|
||||
SectionEnd
|
||||
|
||||
##########################################################
|
||||
@@ -1042,15 +1072,8 @@ SectionEnd
|
||||
SectionGroup "un.$(str_ungroup_plugin)" id_ungroup_plugin
|
||||
Section /o "un.$(str_unsection_plugin_home)" id_unsection_plugin_home
|
||||
# get the home dir
|
||||
ReadEnvStr $0 "HOME"
|
||||
${If} $0 == ""
|
||||
ReadEnvStr $0 "HOMEDRIVE"
|
||||
ReadEnvStr $1 "HOMEPATH"
|
||||
StrCpy $0 "$0$1"
|
||||
${If} $0 == ""
|
||||
ReadEnvStr $0 "USERPROFILE"
|
||||
${EndIf}
|
||||
${EndIf}
|
||||
Call un.GetHomeDir
|
||||
Pop $0
|
||||
|
||||
${If} $0 != ""
|
||||
!insertmacro RemoveVimfiles $0
|
||||
|
||||
@@ -3,9 +3,8 @@
|
||||
# italian.nsi : Italian language strings for gvim NSIS installer.
|
||||
#
|
||||
# Locale ID : 1040
|
||||
# Locale Name : it
|
||||
# fileencoding : UTF-8
|
||||
# Author : Antonio Colombo
|
||||
# Author : Antonio Colombo, bovirus - revision: 12.05.2023
|
||||
|
||||
!insertmacro MUI_LANGUAGE "Italian"
|
||||
|
||||
@@ -22,10 +21,10 @@ LangString ^UninstallCaption ${LANG_ITALIAN} \
|
||||
##############################################################################
|
||||
|
||||
#LangString str_dest_folder ${LANG_ITALIAN} \
|
||||
# "Cartella d'installazione (il nome deve finire con $\"vim$\")"
|
||||
# "Cartella installazione (il percorso deve finire con $\"vim$\")"
|
||||
|
||||
LangString str_show_readme ${LANG_ITALIAN} \
|
||||
"Visualizza README al termine dell'installazione"
|
||||
"Visualizza file README a fine installazione"
|
||||
|
||||
# Install types:
|
||||
LangString str_type_typical ${LANG_ITALIAN} \
|
||||
@@ -43,120 +42,119 @@ LangString str_type_full ${LANG_ITALIAN} \
|
||||
##############################################################################
|
||||
|
||||
LangString str_section_old_ver ${LANG_ITALIAN} \
|
||||
"Disinstalla versione/i esistente/i"
|
||||
"Disinstalla versioni esistenti"
|
||||
LangString str_desc_old_ver ${LANG_ITALIAN} \
|
||||
"Disinstalla versione/i esistente/i di Vim dal vostro sistema."
|
||||
"Disinstalla versioni esistenti di Vim."
|
||||
|
||||
LangString str_section_exe ${LANG_ITALIAN} \
|
||||
"Vim GUI e file di supporto"
|
||||
"GUI e file supporto Vim"
|
||||
LangString str_desc_exe ${LANG_ITALIAN} \
|
||||
"Vim GUI programmi e file di supporto. Questa componente è indispensabile."
|
||||
"GUI programmi e file di supporto Vim. Questa componente è indispensabile."
|
||||
|
||||
LangString str_section_console ${LANG_ITALIAN} \
|
||||
"Vim console (vim.exe per MS-DOS)"
|
||||
"Console Vim (vim.exe per MS-DOS)"
|
||||
LangString str_desc_console ${LANG_ITALIAN} \
|
||||
"Versione console di Vim (vim.exe)."
|
||||
|
||||
LangString str_section_batch ${LANG_ITALIAN} \
|
||||
"Crea file .bat"
|
||||
LangString str_desc_batch ${LANG_ITALIAN} \
|
||||
"Crea file .bat per varianti di Vim nella directory \
|
||||
"Crea file .bat per varianti di Vim nella cartella \
|
||||
di Windows, per utilizzo da riga di comando."
|
||||
|
||||
LangString str_group_icons ${LANG_ITALIAN} \
|
||||
"Crea icone per Vim"
|
||||
"Crea icone Vim"
|
||||
LangString str_desc_icons ${LANG_ITALIAN} \
|
||||
"Crea icone per Vim in vari posti, per rendere facile l'accesso."
|
||||
"Crea icone Vim per rendere facile l'accesso."
|
||||
|
||||
LangString str_section_desktop ${LANG_ITALIAN} \
|
||||
"Sul Desktop"
|
||||
"Icone sul Desktop"
|
||||
LangString str_desc_desktop ${LANG_ITALIAN} \
|
||||
"Crea icone per programma gVim sul desktop."
|
||||
"Crea icone programma gVim sul desktop."
|
||||
|
||||
LangString str_section_start_menu ${LANG_ITALIAN} \
|
||||
"Nella cartella del menù START"
|
||||
"Gruppo programmi menù START"
|
||||
LangString str_desc_start_menu ${LANG_ITALIAN} \
|
||||
"Aggiungi Vim alle cartelle del menù START."
|
||||
"Aggiunge gruppo programmi al menù START."
|
||||
|
||||
#LangString str_section_quick_launch ${LANG_ITALIAN} \
|
||||
# "Nella barra di Avvio Veloce"
|
||||
# "Barra avvio veloce"
|
||||
#LangString str_desc_quick_launch ${LANG_ITALIAN} \
|
||||
# "Aggiungi un puntatore a Vim nella barra di Avvio Veloce."
|
||||
# "Aggiunge un collegamento a Vim nella barra di avvio veloce."
|
||||
|
||||
LangString str_section_edit_with ${LANG_ITALIAN} \
|
||||
"Aggiungi Vim al Menù Contestuale"
|
||||
"Aggiungi Vim al menù contestuale"
|
||||
LangString str_desc_edit_with ${LANG_ITALIAN} \
|
||||
"Aggiungi Vim alla lista contestuale $\"Apri con...$\"."
|
||||
"Aggiunge Vim al menu contestuale $\"Apri con...$\"."
|
||||
|
||||
#LangString str_section_edit_with32 ${LANG_ITALIAN} \
|
||||
# "Versione a 32-bit"
|
||||
# "Versione a 32 bit"
|
||||
#LangString str_desc_edit_with32 ${LANG_ITALIAN} \
|
||||
# "Aggiungi Vim alla lista contestuale $\"Apri con...$\" \
|
||||
# per applicazioni a 32-bit."
|
||||
# "Aggiungi Vim al menu contestuale $\"Apri con...$\" \
|
||||
# per applicazioni a 32 bit."
|
||||
|
||||
#LangString str_section_edit_with64 ${LANG_ITALIAN} \
|
||||
# "Versione a 64-bit"
|
||||
# "Versione a 64 bit"
|
||||
#LangString str_desc_edit_with64 ${LANG_ITALIAN} \
|
||||
# "Aggiungi Vim alla lista contestuale $\"Apri con...$\" \
|
||||
# per applicazioni a 64-bit."
|
||||
# "Aggiunge Vim al menu contestuale $\"Apri con...$\" \
|
||||
# per applicazioni a 64 bit."
|
||||
|
||||
LangString str_section_vim_rc ${LANG_ITALIAN} \
|
||||
"Crea configurazione di default"
|
||||
"Crea configurazione predefinita"
|
||||
LangString str_desc_vim_rc ${LANG_ITALIAN} \
|
||||
"Crea un file configurazione di default (_vimrc) se non \
|
||||
ne esiste già uno."
|
||||
"Crea, se non ne esiste già uno, un file configurazione predefinito (_vimrc) ."
|
||||
|
||||
LangString str_group_plugin ${LANG_ITALIAN} \
|
||||
"Crea directory per plugin"
|
||||
"Crea cartella plugin"
|
||||
LangString str_desc_plugin ${LANG_ITALIAN} \
|
||||
"Crea directory per plugin. Consentono di aggiungere funzionalità \
|
||||
a Vim mettendo file in una di queste directory."
|
||||
"Crea cartella plugin. I plugin consentono di aggiungere funzionalità \
|
||||
a Vim copiando i relativi file in una di queste cartelle."
|
||||
|
||||
LangString str_section_plugin_home ${LANG_ITALIAN} \
|
||||
"Private"
|
||||
"Privata"
|
||||
LangString str_desc_plugin_home ${LANG_ITALIAN} \
|
||||
"Crea directory per plugin nella directory HOME."
|
||||
"Crea cartella plugin nella cartella HOME."
|
||||
|
||||
LangString str_section_plugin_vim ${LANG_ITALIAN} \
|
||||
"Condivise"
|
||||
"Condivisa"
|
||||
LangString str_desc_plugin_vim ${LANG_ITALIAN} \
|
||||
"Crea directory per plugin nella directory di installazione di Vim \
|
||||
"Crea cartella plugin nella cartella di installazione di Vim \
|
||||
per uso da parte di tutti gli utenti di questo sistema."
|
||||
|
||||
LangString str_section_nls ${LANG_ITALIAN} \
|
||||
"Supporto Multilingue (NLS)"
|
||||
"Supporto nativo lingua (NLS)"
|
||||
LangString str_desc_nls ${LANG_ITALIAN} \
|
||||
"Installa file per supportare messaggi in diverse lingue."
|
||||
"Installa i file per il supporto nativo multilingua."
|
||||
|
||||
LangString str_unsection_register ${LANG_ITALIAN} \
|
||||
"Togli Vim dal Registry"
|
||||
"Rimuovi Vim dal registro"
|
||||
LangString str_desc_unregister ${LANG_ITALIAN} \
|
||||
"Togli Vim dal Registry di configurazione sistema."
|
||||
"Rimuove Vim dal registro di configurazione sistema."
|
||||
|
||||
LangString str_unsection_exe ${LANG_ITALIAN} \
|
||||
"Cancella programmi/file di supporto Vim"
|
||||
"Elimina programmi/file di supporto Vim"
|
||||
LangString str_desc_rm_exe ${LANG_ITALIAN} \
|
||||
"Cancella tutti i programmi/file di supporto di Vim."
|
||||
"Elimina tutti i programmi/file di supporto di Vim."
|
||||
|
||||
LangString str_ungroup_plugin ${LANG_ITALIAN} \
|
||||
"Cancella le directory per plugin"
|
||||
"Elimina cartelle plugin"
|
||||
LangString str_desc_rm_plugin ${LANG_ITALIAN} \
|
||||
"Cancella le directory per plugin se sono vuote."
|
||||
"Elimina le cartelle plugin se sono vuote."
|
||||
|
||||
LangString str_unsection_plugin_home ${LANG_ITALIAN} \
|
||||
"Private"
|
||||
LangString str_desc_rm_plugin_home ${LANG_ITALIAN} \
|
||||
"Cancella le directory per plugin dalla directory HOME."
|
||||
"Elimina cartelle plugin nella cartella HOME."
|
||||
|
||||
LangString str_unsection_plugin_vim ${LANG_ITALIAN} \
|
||||
"Condivise"
|
||||
LangString str_desc_rm_plugin_vim ${LANG_ITALIAN} \
|
||||
"Cancella le directory per plugin dalla directory di installazione di Vim."
|
||||
"Elimina cartelle plugin nella cartella di installazione di Vim."
|
||||
|
||||
LangString str_unsection_rootdir ${LANG_ITALIAN} \
|
||||
"Cancella la directory di installazione di Vim"
|
||||
"Elimina la cartella di installazione di Vim"
|
||||
LangString str_desc_rm_rootdir ${LANG_ITALIAN} \
|
||||
"Cancella la directory di installazione di Vim. Contiene i vostri file di configurazione!"
|
||||
"Elimina la cartella di installazione di Vim. Contiene i file di configurazione!"
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -164,75 +162,74 @@ LangString str_desc_rm_rootdir ${LANG_ITALIAN} \
|
||||
##############################################################################
|
||||
|
||||
#LangString str_msg_too_many_ver ${LANG_ITALIAN} \
|
||||
# "Trovate $vim_old_ver_count versioni di Vim sul vostro sistema.$\r$\n\
|
||||
# "Rilevate nel sistema $vim_old_ver_count versioni di Vim.$\r$\n\
|
||||
# Questo programma di installazione può gestire solo \
|
||||
# ${VIM_MAX_OLD_VER} versioni.$\r$\n\
|
||||
# Disinstallate qualche versione precedente e ricominciate."
|
||||
# Disinstalla qualche versione precedente e ricomincia."
|
||||
|
||||
#LangString str_msg_invalid_root ${LANG_ITALIAN} \
|
||||
# "Nome di directory di installazione non valida: $vim_install_root!$\r$\n\
|
||||
# "Nome cartella di installazione non valida: $vim_install_root!$\r$\n\
|
||||
# Dovrebbe terminare con $\"vim$\"."
|
||||
|
||||
#LangString str_msg_bin_mismatch ${LANG_ITALIAN} \
|
||||
# "Conflitto nella directory di installazione!$\r$\n$\r$\n\
|
||||
# Cartella di installazione dev'essere $\"$vim_bin_path$\",$\r$\n\
|
||||
# ma il sistema segnala invece $\"$INSTDIR$\"."
|
||||
# "Conflitto nella cartella di installazione!$\r$\n$\r$\n\
|
||||
# La cartella di installazione dev'essere $\"$vim_bin_path$\",$\r$\n\
|
||||
# ma il sistema indica che il percorso è $\"$INSTDIR$\"."
|
||||
|
||||
#LangString str_msg_vim_running ${LANG_ITALIAN} \
|
||||
# "Vim ancora in esecuzione sul vostro sistema.$\r$\n\
|
||||
# Chiudete tutte le sessioni attive di Vim per continuare."
|
||||
# "Vim è ancora in esecuzione nel sistema.$\r$\n\
|
||||
# Per continuare chiudi tutte le sessioni attive di Vim."
|
||||
|
||||
#LangString str_msg_register_ole ${LANG_ITALIAN} \
|
||||
# "Tentativo di registrazione di Vim con OLE. \
|
||||
# Non c'è messaggio che indica se è riuscito o no."
|
||||
# Non ci sono messaggi che indicano se l'operazione è riuscita."
|
||||
|
||||
#LangString str_msg_unreg_ole ${LANG_ITALIAN} \
|
||||
# "Tentativo di togliere dal Registry Vim con OLE. \
|
||||
# Non c'è messaggio che indica se è riuscito o no."
|
||||
# "Tentativo di rimozione di VIM dal registro via OLE. \
|
||||
# Non ci sono messaggi che indicano se l'operazione è riuscita."
|
||||
|
||||
#LangString str_msg_rm_start ${LANG_ITALIAN} \
|
||||
# "Disinstallazione della seguente versione:"
|
||||
# "Disinstallazione della versione:"
|
||||
|
||||
#LangString str_msg_rm_fail ${LANG_ITALIAN} \
|
||||
# "Disinstallazione non riuscita per la seguente versione:"
|
||||
# "Disinstallazione non riuscita per la versione:"
|
||||
|
||||
#LangString str_msg_no_rm_key ${LANG_ITALIAN} \
|
||||
# "Non riesco a trovare chiave di disinstallazione nel Registry."
|
||||
# "Impossibile trovare chiave disinstallazione nel registro."
|
||||
|
||||
#LangString str_msg_no_rm_reg ${LANG_ITALIAN} \
|
||||
# "Non riesco a trovare programma disinstallazione nel Registry."
|
||||
# "Impossibile trovare programma disinstallazione nel registro."
|
||||
|
||||
#LangString str_msg_no_rm_exe ${LANG_ITALIAN} \
|
||||
# "Non riesco a trovare programma disinstallazione."
|
||||
# "Impossibile trovare programma disinstallazione."
|
||||
|
||||
#LangString str_msg_rm_copy_fail ${LANG_ITALIAN} \
|
||||
# "Non riesco a copiare programma disinstallazione a una \
|
||||
# directory temporanea."
|
||||
# "Impossibile copiare il programma disinstallazione in una cartella temporanea."
|
||||
|
||||
#LangString str_msg_rm_run_fail ${LANG_ITALIAN} \
|
||||
# "Non riesco a eseguire programma disinstallazione."
|
||||
# "Impossibile eseguire programma disinstallazione."
|
||||
|
||||
#LangString str_msg_abort_install ${LANG_ITALIAN} \
|
||||
# "Il programma di disinstallazione verrà chiuso senza aver fatto nulla."
|
||||
# "Il programma di disinstallazione verrà chiuso senza aver eseguito nessuna modifica."
|
||||
|
||||
LangString str_msg_install_fail ${LANG_ITALIAN} \
|
||||
"Installazione non riuscita. Miglior fortuna alla prossima!"
|
||||
"Installazione non riuscita."
|
||||
|
||||
LangString str_msg_rm_exe_fail ${LANG_ITALIAN} \
|
||||
"Alcuni file in $0 non sono stati cancellati!$\r$\n\
|
||||
Dovreste cancellarli voi stessi."
|
||||
"Alcuni file in $0 non sono stati eliminati!$\r$\n\
|
||||
I file vanno rimossi manualmente."
|
||||
|
||||
#LangString str_msg_rm_root_fail ${LANG_ITALIAN} \
|
||||
# "AVVISO: Non posso cancellare $\"$vim_install_root$\", non è vuota!"
|
||||
# "AVVISO: impossibile eliminare $\"$vim_install_root$\", non è vuota!"
|
||||
|
||||
LangString str_msg_uninstalling ${LANG_ITALIAN} \
|
||||
"Sto disinstallando la vecchia versione..."
|
||||
"Disinstallazione vecchia versione Vim..."
|
||||
|
||||
LangString str_msg_registering ${LANG_ITALIAN} \
|
||||
"Sto aggiungendo Vim al Registry..."
|
||||
"Aggiunta di Vim al registro..."
|
||||
|
||||
LangString str_msg_unregistering ${LANG_ITALIAN} \
|
||||
"Sto togliendo Vim dal Registry..."
|
||||
"Rimozione di Vim dal registro..."
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -242,37 +239,37 @@ LangString str_msg_unregistering ${LANG_ITALIAN} \
|
||||
LangString str_vimrc_page_title ${LANG_ITALIAN} \
|
||||
"Scelta impostazioni _vimrc"
|
||||
LangString str_vimrc_page_subtitle ${LANG_ITALIAN} \
|
||||
"Scelta impostazioni per funzionalità ulteriori, tastiera e mouse."
|
||||
"Scelta impostazioni funzionalità aggiuntive, tastiera e mouse."
|
||||
|
||||
LangString str_msg_compat_title ${LANG_ITALIAN} \
|
||||
" comportamento come Vi / Vim "
|
||||
" Comportamento come Vi / Vim "
|
||||
LangString str_msg_compat_desc ${LANG_ITALIAN} \
|
||||
"&Compatibilità e funzionalità ulteriori"
|
||||
"&Compatibilità e funzionalità"
|
||||
LangString str_msg_compat_vi ${LANG_ITALIAN} \
|
||||
"Compatibile con Vi"
|
||||
"Compatibile Vi"
|
||||
LangString str_msg_compat_vim ${LANG_ITALIAN} \
|
||||
"Vim originale"
|
||||
LangString str_msg_compat_defaults ${LANG_ITALIAN} \
|
||||
"Vim con alcune funzionalità ulteriori (esecuzione defaults.vim)"
|
||||
"Vim con alcune funzionalità aggiuntive (defaults.vim)"
|
||||
LangString str_msg_compat_all ${LANG_ITALIAN} \
|
||||
"Vim con tutte le funzionalità ulteriori (esecuzione vimrc_example.vim) (Default)"
|
||||
"Vim con tutte le funzionalità aggiuntive (vimrc_example.vim) (predefinito)"
|
||||
|
||||
LangString str_msg_keymap_title ${LANG_ITALIAN} \
|
||||
" Mappature "
|
||||
" Mappature tastiera "
|
||||
LangString str_msg_keymap_desc ${LANG_ITALIAN} \
|
||||
"&Rimappatura di alcuni tasti per Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc.)"
|
||||
"&Rimappa alcuni tasti Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc.)"
|
||||
LangString str_msg_keymap_default ${LANG_ITALIAN} \
|
||||
"Non effettuare rimappature di tasti (Default)"
|
||||
"Non rimappare i tasti (predefinito)"
|
||||
LangString str_msg_keymap_windows ${LANG_ITALIAN} \
|
||||
"Rimappare solo alcuni tasti"
|
||||
"Rimappa solo alcuni tasti"
|
||||
|
||||
LangString str_msg_mouse_title ${LANG_ITALIAN} \
|
||||
" Mouse "
|
||||
LangString str_msg_mouse_desc ${LANG_ITALIAN} \
|
||||
"&Comportamento dei pulsanti destro e sinistro"
|
||||
"&Comportamento pulsanti destro/sinistro"
|
||||
LangString str_msg_mouse_default ${LANG_ITALIAN} \
|
||||
"Destro: popup menu, Sinistro: modalità visuale (Default)"
|
||||
"Destro: menu popup, Sinistro: modalità visuale (predefinito)"
|
||||
LangString str_msg_mouse_windows ${LANG_ITALIAN} \
|
||||
"Destro: popup menu, Sinistro: seleziona modalità (Windows)"
|
||||
"Destro: menu popup, Sinistro: selezione modalità (Windows)"
|
||||
LangString str_msg_mouse_unix ${LANG_ITALIAN} \
|
||||
"Destro: estende selezione, Sinistro: modalità visuale (Unix)"
|
||||
"Destro: estensione selezione, Sinistro: modalità visuale (Unix)"
|
||||
|
||||
149
runtime/autoload/cargo.vim
Normal file
149
runtime/autoload/cargo.vim
Normal file
@@ -0,0 +1,149 @@
|
||||
" Last Modified: 2023-09-11
|
||||
|
||||
function! cargo#Load()
|
||||
" Utility call to get this script loaded, for debugging
|
||||
endfunction
|
||||
|
||||
function! cargo#cmd(args) abort
|
||||
" Trim trailing spaces. This is necessary since :terminal command parses
|
||||
" trailing spaces as an empty argument.
|
||||
let args = substitute(a:args, '\s\+$', '', '')
|
||||
if exists('g:cargo_shell_command_runner')
|
||||
let cmd = g:cargo_shell_command_runner
|
||||
elseif has('terminal')
|
||||
let cmd = 'terminal'
|
||||
elseif has('nvim')
|
||||
let cmd = 'noautocmd new | terminal'
|
||||
else
|
||||
let cmd = '!'
|
||||
endif
|
||||
execute cmd 'cargo' args
|
||||
endfunction
|
||||
|
||||
function! s:nearest_cargo(...) abort
|
||||
" If the second argument is not specified, the first argument determines
|
||||
" whether we will start from the current directory or the directory of the
|
||||
" current buffer, otherwise, we start with the provided path on the
|
||||
" second argument.
|
||||
|
||||
let l:is_getcwd = get(a:, 1, 0)
|
||||
if l:is_getcwd
|
||||
let l:starting_path = get(a:, 2, getcwd())
|
||||
else
|
||||
let l:starting_path = get(a:, 2, expand('%:p:h'))
|
||||
endif
|
||||
|
||||
return findfile('Cargo.toml', l:starting_path . ';')
|
||||
endfunction
|
||||
|
||||
function! cargo#nearestCargo(is_getcwd) abort
|
||||
return s:nearest_cargo(a:is_getcwd)
|
||||
endfunction
|
||||
|
||||
function! cargo#nearestWorkspaceCargo(is_getcwd) abort
|
||||
let l:nearest = s:nearest_cargo(a:is_getcwd)
|
||||
while l:nearest !=# ''
|
||||
for l:line in readfile(l:nearest, '', 0x100)
|
||||
if l:line =~# '\V[workspace]'
|
||||
return l:nearest
|
||||
endif
|
||||
endfor
|
||||
let l:next = fnamemodify(l:nearest, ':p:h:h')
|
||||
let l:nearest = s:nearest_cargo(0, l:next)
|
||||
endwhile
|
||||
return ''
|
||||
endfunction
|
||||
|
||||
function! cargo#nearestRootCargo(is_getcwd) abort
|
||||
" Try to find a workspace Cargo.toml, and if not found, take the nearest
|
||||
" regular Cargo.toml
|
||||
let l:workspace_cargo = cargo#nearestWorkspaceCargo(a:is_getcwd)
|
||||
if l:workspace_cargo !=# ''
|
||||
return l:workspace_cargo
|
||||
endif
|
||||
return s:nearest_cargo(a:is_getcwd)
|
||||
endfunction
|
||||
|
||||
|
||||
function! cargo#build(args)
|
||||
call cargo#cmd("build " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#check(args)
|
||||
call cargo#cmd("check " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#clean(args)
|
||||
call cargo#cmd("clean " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#doc(args)
|
||||
call cargo#cmd("doc " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#new(args)
|
||||
call cargo#cmd("new " . a:args)
|
||||
cd `=a:args`
|
||||
endfunction
|
||||
|
||||
function! cargo#init(args)
|
||||
call cargo#cmd("init " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#run(args)
|
||||
call cargo#cmd("run " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#test(args)
|
||||
call cargo#cmd("test " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#bench(args)
|
||||
call cargo#cmd("bench " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#update(args)
|
||||
call cargo#cmd("update " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#search(args)
|
||||
call cargo#cmd("search " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#publish(args)
|
||||
call cargo#cmd("publish " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#install(args)
|
||||
call cargo#cmd("install " . a:args)
|
||||
endfunction
|
||||
|
||||
function! cargo#runtarget(args)
|
||||
let l:filename = expand('%:p')
|
||||
let l:read_manifest = system('cargo read-manifest')
|
||||
let l:metadata = json_decode(l:read_manifest)
|
||||
let l:targets = get(l:metadata, 'targets', [])
|
||||
let l:did_run = 0
|
||||
for l:target in l:targets
|
||||
let l:src_path = get(l:target, 'src_path', '')
|
||||
let l:kinds = get(l:target, 'kind', [])
|
||||
let l:name = get(l:target, 'name', '')
|
||||
if l:src_path == l:filename
|
||||
if index(l:kinds, 'example') != -1
|
||||
let l:did_run = 1
|
||||
call cargo#run("--example " . shellescape(l:name) . " " . a:args)
|
||||
return
|
||||
elseif index(l:kinds, 'bin') != -1
|
||||
let l:did_run = 1
|
||||
call cargo#run("--bin " . shellescape(l:name) . " " . a:args)
|
||||
return
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
if l:did_run != 1
|
||||
call cargo#run(a:args)
|
||||
return
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
29
runtime/autoload/cargo/quickfix.vim
Normal file
29
runtime/autoload/cargo/quickfix.vim
Normal file
@@ -0,0 +1,29 @@
|
||||
" Last Modified: 2023-09-11
|
||||
|
||||
function! cargo#quickfix#CmdPre() abort
|
||||
if &filetype ==# 'rust' && get(b:, 'current_compiler', '') ==# 'cargo' &&
|
||||
\ &makeprg =~ '\V\^cargo\ \.\*'
|
||||
" Preserve the current directory, and 'lcd' to the nearest Cargo file.
|
||||
let b:rust_compiler_cargo_qf_has_lcd = haslocaldir()
|
||||
let b:rust_compiler_cargo_qf_prev_cd = getcwd()
|
||||
let b:rust_compiler_cargo_qf_prev_cd_saved = 1
|
||||
let l:nearest = fnamemodify(cargo#nearestRootCargo(0), ':h')
|
||||
execute 'lchdir! '.l:nearest
|
||||
else
|
||||
let b:rust_compiler_cargo_qf_prev_cd_saved = 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! cargo#quickfix#CmdPost() abort
|
||||
if exists("b:rust_compiler_cargo_qf_prev_cd_saved") && b:rust_compiler_cargo_qf_prev_cd_saved
|
||||
" Restore the current directory.
|
||||
if b:rust_compiler_cargo_qf_has_lcd
|
||||
execute 'lchdir! '.b:rust_compiler_cargo_qf_prev_cd
|
||||
else
|
||||
execute 'chdir! '.b:rust_compiler_cargo_qf_prev_cd
|
||||
endif
|
||||
let b:rust_compiler_cargo_qf_prev_cd_saved = 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
@@ -1,10 +1,11 @@
|
||||
vim9script noclear
|
||||
|
||||
# Vim completion script
|
||||
# Language: C
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Language: C
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Rewritten in Vim9 script by github user lacygoill
|
||||
# Last Change: 2022 Jan 31
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
var prepended: string
|
||||
var grepCache: dict<list<dict<any>>>
|
||||
|
||||
227
runtime/autoload/dist/ft.vim
vendored
227
runtime/autoload/dist/ft.vim
vendored
@@ -2,8 +2,9 @@ vim9script
|
||||
|
||||
# Vim functions for file type detection
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last Change: 2022 Nov 24
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
# These functions are moved here from runtime/filetype.vim to make startup
|
||||
# faster.
|
||||
@@ -61,7 +62,7 @@ export def FTasmsyntax()
|
||||
endif
|
||||
enddef
|
||||
|
||||
var ft_visual_basic_content = '\cVB_Name\|Begin VB\.\(Form\|MDIForm\|UserControl\)'
|
||||
var ft_visual_basic_content = '\c^\s*\%(Attribute\s\+VB_Name\|Begin\s\+\%(VB\.\|{\%(\x\+-\)\+\x\+}\)\)'
|
||||
|
||||
# See FTfrm() for Visual Basic form file detection
|
||||
export def FTbas()
|
||||
@@ -145,12 +146,20 @@ export def FTcls()
|
||||
return
|
||||
endif
|
||||
|
||||
if getline(1) =~ '^\v%(\%|\\)'
|
||||
setf tex
|
||||
elseif getline(1)[0] == '#' && getline(1) =~ 'rexx'
|
||||
var line1 = getline(1)
|
||||
if line1 =~ '^#!.*\<\%(rexx\|regina\)\>'
|
||||
setf rexx
|
||||
elseif getline(1) == 'VERSION 1.0 CLASS'
|
||||
return
|
||||
elseif line1 == 'VERSION 1.0 CLASS'
|
||||
setf vb
|
||||
return
|
||||
endif
|
||||
|
||||
var nonblank1 = getline(nextnonblank(1))
|
||||
if nonblank1 =~ '^\v%(\%|\\)'
|
||||
setf tex
|
||||
elseif nonblank1 =~ '^\s*\%(/\*\|::\w\)'
|
||||
setf rexx
|
||||
else
|
||||
setf st
|
||||
endif
|
||||
@@ -286,12 +295,48 @@ export def FTe()
|
||||
endif
|
||||
enddef
|
||||
|
||||
def IsForth(): bool
|
||||
var first_line = nextnonblank(1)
|
||||
|
||||
# SwiftForth block comment (line is usually filled with '-' or '=') or
|
||||
# OPTIONAL (sometimes precedes the header comment)
|
||||
if getline(first_line) =~? '^\%({\%(\s\|$\)\|OPTIONAL\s\)'
|
||||
return true
|
||||
endif
|
||||
|
||||
var n = first_line
|
||||
while n < 100 && n <= line("$")
|
||||
# Forth comments and colon definitions
|
||||
if getline(n) =~ '^[:(\\] '
|
||||
return true
|
||||
endif
|
||||
n += 1
|
||||
endwhile
|
||||
return false
|
||||
enddef
|
||||
|
||||
# Distinguish between Forth and Fortran
|
||||
export def FTf()
|
||||
if exists("g:filetype_f")
|
||||
exe "setf " .. g:filetype_f
|
||||
elseif IsForth()
|
||||
setf forth
|
||||
else
|
||||
setf fortran
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTfrm()
|
||||
if exists("g:filetype_frm")
|
||||
exe "setf " .. g:filetype_frm
|
||||
return
|
||||
endif
|
||||
|
||||
if getline(1) == "VERSION 5.00"
|
||||
setf vb
|
||||
return
|
||||
endif
|
||||
|
||||
var lines = getline(1, min([line("$"), 5]))
|
||||
|
||||
if match(lines, ft_visual_basic_content) > -1
|
||||
@@ -301,20 +346,14 @@ export def FTfrm()
|
||||
endif
|
||||
enddef
|
||||
|
||||
# Distinguish between Forth and F#.
|
||||
# Provided by Doug Kearns.
|
||||
# Distinguish between Forth and F#
|
||||
export def FTfs()
|
||||
if exists("g:filetype_fs")
|
||||
exe "setf " .. g:filetype_fs
|
||||
elseif IsForth()
|
||||
setf forth
|
||||
else
|
||||
var line = getline(nextnonblank(1))
|
||||
# comments and colon definitions
|
||||
if line =~ '^\s*\.\=( ' || line =~ '^\s*\\G\= ' || line =~ '^\\$'
|
||||
\ || line =~ '^\s*: \S'
|
||||
setf forth
|
||||
else
|
||||
setf fsharp
|
||||
endif
|
||||
setf fsharp
|
||||
endif
|
||||
enddef
|
||||
|
||||
@@ -360,8 +399,8 @@ export def ProtoCheck(default: string)
|
||||
else
|
||||
# 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 =~ ':-'
|
||||
var lnum = getline(nextnonblank(1))
|
||||
if lnum =~ '\<prolog\>' || lnum =~ '^\s*\(%\+\(\s\|$\)\|/\*\)' || lnum =~ ':-'
|
||||
setf prolog
|
||||
else
|
||||
exe 'setf ' .. default
|
||||
@@ -468,28 +507,28 @@ enddef
|
||||
|
||||
# Returns true if file content looks like LambdaProlog module
|
||||
def IsLProlog(): bool
|
||||
# skip apparent comments and blank lines, what looks like
|
||||
# skip apparent comments and blank lines, what looks like
|
||||
# LambdaProlog comment may be RAPID header
|
||||
var l: number = nextnonblank(1)
|
||||
while l > 0 && l < line('$') && getline(l) =~ '^\s*%' # LambdaProlog comment
|
||||
l = nextnonblank(l + 1)
|
||||
var lnum: number = nextnonblank(1)
|
||||
while lnum > 0 && lnum < line('$') && getline(lnum) =~ '^\s*%' # LambdaProlog comment
|
||||
lnum = nextnonblank(lnum + 1)
|
||||
endwhile
|
||||
# this pattern must not catch a go.mod file
|
||||
return getline(l) =~ '\<module\s\+\w\+\s*\.\s*\(%\|$\)'
|
||||
return getline(lnum) =~ '\<module\s\+\w\+\s*\.\s*\(%\|$\)'
|
||||
enddef
|
||||
|
||||
# Determine if *.mod is ABB RAPID, LambdaProlog, Modula-2, Modsim III or go.mod
|
||||
export def FTmod()
|
||||
if exists("g:filetype_mod")
|
||||
exe "setf " .. g:filetype_mod
|
||||
elseif expand("<afile>") =~ '\<go.mod$'
|
||||
setf gomod
|
||||
elseif IsLProlog()
|
||||
setf lprolog
|
||||
elseif getline(nextnonblank(1)) =~ '\%(\<MODULE\s\+\w\+\s*;\|^\s*(\*\)'
|
||||
setf modula2
|
||||
elseif IsRapid()
|
||||
setf rapid
|
||||
elseif expand("<afile>") =~ '\<go.mod$'
|
||||
setf gomod
|
||||
else
|
||||
# Nothing recognized, assume modsim3
|
||||
setf modsim3
|
||||
@@ -502,8 +541,8 @@ export def FTpl()
|
||||
else
|
||||
# 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 =~ ':-'
|
||||
var line = getline(nextnonblank(1))
|
||||
if line =~ '\<prolog\>' || line =~ '^\s*\(%\+\(\s\|$\)\|/\*\)' || line =~ ':-'
|
||||
setf prolog
|
||||
else
|
||||
setf perl
|
||||
@@ -676,26 +715,24 @@ export def McSetf()
|
||||
enddef
|
||||
|
||||
# Called from filetype.vim and scripts.vim.
|
||||
export def SetFileTypeSH(name: string)
|
||||
if did_filetype()
|
||||
# When "setft" is passed and false then the 'filetype' option is not set.
|
||||
export def SetFileTypeSH(name: string, setft = true): string
|
||||
if setft && did_filetype()
|
||||
# Filetype was already detected
|
||||
return
|
||||
return ''
|
||||
endif
|
||||
if expand("<amatch>") =~ g:ft_ignore_pat
|
||||
return
|
||||
if setft && expand("<amatch>") =~ g:ft_ignore_pat
|
||||
return ''
|
||||
endif
|
||||
if name =~ '\<csh\>'
|
||||
# Some .sh scripts contain #!/bin/csh.
|
||||
SetFileTypeShell("csh")
|
||||
return
|
||||
return SetFileTypeShell("csh", setft)
|
||||
elseif name =~ '\<tcsh\>'
|
||||
# Some .sh scripts contain #!/bin/tcsh.
|
||||
SetFileTypeShell("tcsh")
|
||||
return
|
||||
return SetFileTypeShell("tcsh", setft)
|
||||
elseif name =~ '\<zsh\>'
|
||||
# Some .sh scripts contain #!/bin/zsh.
|
||||
SetFileTypeShell("zsh")
|
||||
return
|
||||
return SetFileTypeShell("zsh", setft)
|
||||
elseif name =~ '\<ksh\>'
|
||||
b:is_kornshell = 1
|
||||
if exists("b:is_bash")
|
||||
@@ -722,34 +759,43 @@ export def SetFileTypeSH(name: string)
|
||||
unlet b:is_bash
|
||||
endif
|
||||
endif
|
||||
SetFileTypeShell("sh")
|
||||
|
||||
return SetFileTypeShell("sh", setft)
|
||||
enddef
|
||||
|
||||
# For shell-like file types, check for an "exec" command hidden in a comment,
|
||||
# as used for Tcl.
|
||||
# When "setft" is passed and false then the 'filetype' option is not set.
|
||||
# Also called from scripts.vim, thus can't be local to this script.
|
||||
export def SetFileTypeShell(name: string)
|
||||
if did_filetype()
|
||||
export def SetFileTypeShell(name: string, setft = true): string
|
||||
if setft && did_filetype()
|
||||
# Filetype was already detected
|
||||
return
|
||||
return ''
|
||||
endif
|
||||
if expand("<amatch>") =~ g:ft_ignore_pat
|
||||
return
|
||||
if setft && expand("<amatch>") =~ g:ft_ignore_pat
|
||||
return ''
|
||||
endif
|
||||
var l = 2
|
||||
while l < 20 && l < line("$") && getline(l) =~ '^\s*\(#\|$\)'
|
||||
|
||||
var lnum = 2
|
||||
while lnum < 20 && lnum < line("$") && getline(lnum) =~ '^\s*\(#\|$\)'
|
||||
# Skip empty and comment lines.
|
||||
l += 1
|
||||
lnum += 1
|
||||
endwhile
|
||||
if l < line("$") && getline(l) =~ '\s*exec\s' && getline(l - 1) =~ '^\s*#.*\\$'
|
||||
if lnum < line("$") && getline(lnum) =~ '\s*exec\s' && getline(lnum - 1) =~ '^\s*#.*\\$'
|
||||
# Found an "exec" line after a comment with continuation
|
||||
var n = substitute(getline(l), '\s*exec\s\+\([^ ]*/\)\=', '', '')
|
||||
var n = substitute(getline(lnum), '\s*exec\s\+\([^ ]*/\)\=', '', '')
|
||||
if n =~ '\<tclsh\|\<wish'
|
||||
setf tcl
|
||||
return
|
||||
if setft
|
||||
setf tcl
|
||||
endif
|
||||
return 'tcl'
|
||||
endif
|
||||
endif
|
||||
exe "setf " .. name
|
||||
|
||||
if setft
|
||||
exe "setf " .. name
|
||||
endif
|
||||
return name
|
||||
enddef
|
||||
|
||||
export def CSH()
|
||||
@@ -810,10 +856,13 @@ export def SQL()
|
||||
enddef
|
||||
|
||||
# This function checks the first 25 lines of file extension "sc" to resolve
|
||||
# detection between scala and SuperCollider
|
||||
# detection between scala and SuperCollider.
|
||||
# NOTE: We don't check for 'Class : Method', as this can easily be confused
|
||||
# with valid Scala like `val x : Int = 3`. So we instead only rely on
|
||||
# checks that can't be confused.
|
||||
export def FTsc()
|
||||
for lnum in range(1, min([line("$"), 25]))
|
||||
if getline(lnum) =~# '[A-Za-z0-9]*\s:\s[A-Za-z0-9]\|var\s<\|classvar\s<\|\^this.*\||\w*|\|+\s\w*\s{\|\*ar\s'
|
||||
if getline(lnum) =~# 'var\s<\|classvar\s<\|\^this.*\||\w\+|\|+\s\w*\s{\|\*ar\s'
|
||||
setf supercollider
|
||||
return
|
||||
endif
|
||||
@@ -1101,5 +1150,73 @@ export def FTlsl()
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTtyp()
|
||||
if exists("g:filetype_typ")
|
||||
exe "setf " .. g:filetype_typ
|
||||
return
|
||||
endif
|
||||
|
||||
# Look for SQL type definition syntax
|
||||
for line in getline(1, 200)
|
||||
# SQL type files may define the casing
|
||||
if line =~ '^CASE\s\==\s\=\(SAME\|LOWER\|UPPER\|OPPOSITE\)$'
|
||||
setf sql
|
||||
return
|
||||
endif
|
||||
|
||||
# SQL type files may define some types as follows
|
||||
if line =~ '^TYPE\s.*$'
|
||||
setf sql
|
||||
return
|
||||
endif
|
||||
endfor
|
||||
|
||||
# Otherwise, affect the typst filetype
|
||||
setf typst
|
||||
enddef
|
||||
|
||||
# Set the filetype of a *.v file to Verilog, V or Cog based on the first 200
|
||||
# lines.
|
||||
export def FTv()
|
||||
if did_filetype()
|
||||
# ":setf" will do nothing, bail out early
|
||||
return
|
||||
endif
|
||||
|
||||
for line in getline(1, 200)
|
||||
if line[0] =~ '^\s*/'
|
||||
# skip comment line
|
||||
continue
|
||||
endif
|
||||
|
||||
# Verilog: line ends with ';' followed by an optional variable number of
|
||||
# spaces and an optional start of a comment.
|
||||
# Example: " b <= a + 1; // Add 1".
|
||||
if line =~ ';\(\s*\)\?\(/.*\)\?$'
|
||||
setf verilog
|
||||
return
|
||||
endif
|
||||
|
||||
# Coq: line ends with a '.' followed by an optional variable number of
|
||||
# spaces and an optional start of a comment.
|
||||
# Example: "Definition x := 10. (*".
|
||||
if line =~ '\.\(\s*\)\?\((\*.*\)\?$'
|
||||
setf coq
|
||||
return
|
||||
endif
|
||||
endfor
|
||||
|
||||
# No line matched, fall back to "v".
|
||||
setf v
|
||||
enddef
|
||||
|
||||
export def FTvba()
|
||||
if getline(1) =~ '^["#] Vimball Archiver'
|
||||
setf vim
|
||||
else
|
||||
setf vb
|
||||
endif
|
||||
enddef
|
||||
|
||||
# Uncomment this line to check for compilation errors early
|
||||
# defcompile
|
||||
|
||||
90
runtime/autoload/dist/man.vim
vendored
90
runtime/autoload/dist/man.vim
vendored
@@ -1,9 +1,9 @@
|
||||
" Vim filetype plugin autoload file
|
||||
" Language: man
|
||||
" Maintainer: Jason Franklin <vim@justemail.net>
|
||||
" Maintainer: Jason Franklin <jason@oneway.dev>
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Autoload Split: Bram Moolenaar
|
||||
" Last Change: 2022 Jun 18
|
||||
" Last Change: 2023 Jun 28
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
@@ -21,31 +21,65 @@ catch /E145:/
|
||||
" Ignore the error in restricted mode
|
||||
endtry
|
||||
|
||||
func s:ParseIntoPageAndSection()
|
||||
" Accommodate a reference that terminates in a hyphen.
|
||||
"
|
||||
" See init_charset_table() at
|
||||
" https://git.savannah.gnu.org/cgit/groff.git/tree/src/roff/troff/input.cpp?h=1.22.4#n6794
|
||||
"
|
||||
" See can_break_after() at
|
||||
" https://git.savannah.gnu.org/cgit/groff.git/tree/src/roff/troff/charinfo.h?h=1.22.4#n140
|
||||
"
|
||||
" Assumptions and limitations:
|
||||
" 1) Manual-page references (in consequence of command-related filenames)
|
||||
" do not contain non-ASCII HYPHENs (0x2010), any terminating HYPHEN
|
||||
" must have been introduced to mark division of a word at the end of
|
||||
" a line and can be discarded; whereas similar references may contain
|
||||
" ASCII HYPHEN-MINUSes (0x002d) and any terminating HYPHEN-MINUS forms
|
||||
" a compound word in addition to marking word division.
|
||||
" 2) Well-formed manual-page references always have a section suffix, e.g.
|
||||
" "git-commit(1)", therefore suspended hyphenated compounds are not
|
||||
" determined, e.g. [V] (With cursor at _git-merge-_ below...)
|
||||
" ".................... git-merge- and git-merge-base. (See git-cherry-
|
||||
" pick(1) and git-cherry(1).)" (... look up "git-merge-pick(1)".)
|
||||
"
|
||||
" Note that EM DASH (0x2014), a third stooge from init_charset_table(),
|
||||
" neither connects nor divides parts of a word.
|
||||
let str = expand("<cWORD>")
|
||||
|
||||
if str =~ '\%u2010$' " HYPHEN (-1).
|
||||
let str = strpart(str, 0, strridx(str, "\u2010"))
|
||||
|
||||
" Append the leftmost WORD (or an empty string) from the line below.
|
||||
let str .= get(split(get(getbufline(bufnr('%'), line('.') + 1), 0, '')), 0, '')
|
||||
elseif str =~ '-$' " HYPHEN-MINUS.
|
||||
" Append the leftmost WORD (or an empty string) from the line below.
|
||||
let str .= get(split(get(getbufline(bufnr('%'), line('.') + 1), 0, '')), 0, '')
|
||||
endif
|
||||
|
||||
" According to man(1), section name formats vary (MANSECT):
|
||||
" 1 n l 8 3 2 3posix 3pm 3perl 3am 5 4 9 6 7
|
||||
let parts = matchlist(str, '\(\k\+\)(\(\k\+\))')
|
||||
return (len(parts) > 2)
|
||||
\ ? {'page': parts[1], 'section': parts[2]}
|
||||
\ : {'page': matchstr(str, '\k\+'), 'section': ''}
|
||||
endfunc
|
||||
|
||||
func dist#man#PreGetPage(cnt)
|
||||
if a:cnt == 0
|
||||
let old_isk = &iskeyword
|
||||
if &ft == 'man'
|
||||
setl iskeyword+=(,)
|
||||
endif
|
||||
let str = expand("<cword>")
|
||||
let &l:iskeyword = old_isk
|
||||
let page = substitute(str, '(*\(\k\+\).*', '\1', '')
|
||||
let sect = substitute(str, '\(\k\+\)(\([^()]*\)).*', '\2', '')
|
||||
if match(sect, '^[0-9 ]\+$') == -1
|
||||
let sect = ""
|
||||
endif
|
||||
if sect == page
|
||||
let sect = ""
|
||||
endif
|
||||
let what = s:ParseIntoPageAndSection()
|
||||
let sect = what.section
|
||||
let page = what.page
|
||||
else
|
||||
let what = s:ParseIntoPageAndSection()
|
||||
let sect = a:cnt
|
||||
let page = expand("<cword>")
|
||||
let page = what.page
|
||||
endif
|
||||
|
||||
call dist#man#GetPage('', sect, page)
|
||||
endfunc
|
||||
|
||||
func s:GetCmdArg(sect, page)
|
||||
|
||||
if empty(a:sect)
|
||||
return shellescape(a:page)
|
||||
endif
|
||||
@@ -75,9 +109,11 @@ func dist#man#GetPage(cmdmods, ...)
|
||||
return
|
||||
endif
|
||||
|
||||
" To support: nmap K :Man <cword>
|
||||
if page == '<cword>'
|
||||
let page = expand('<cword>')
|
||||
" To support: nmap K :Man <cWORD><CR>
|
||||
if page ==? '<cword>'
|
||||
let what = s:ParseIntoPageAndSection()
|
||||
let sect = what.section
|
||||
let page = what.page
|
||||
endif
|
||||
|
||||
if !exists('g:ft_man_no_sect_fallback') || (g:ft_man_no_sect_fallback == 0)
|
||||
@@ -154,9 +190,14 @@ func dist#man#GetPage(cmdmods, ...)
|
||||
endif
|
||||
let env_cmd = s:env_has_u ? 'env -u MANPAGER' : 'env MANPAGER=cat'
|
||||
let env_cmd .= ' GROFF_NO_SGR=1'
|
||||
let man_cmd = env_cmd . ' man ' . s:GetCmdArg(sect, page) . ' | col -b'
|
||||
let man_cmd = env_cmd . ' man ' . s:GetCmdArg(sect, page)
|
||||
|
||||
silent exec "r !" . man_cmd
|
||||
|
||||
" Emulate piping the buffer through the "col -b" command.
|
||||
" Ref: https://github.com/vim/vim/issues/12301
|
||||
exe 'silent! keepjumps keeppatterns %s/\v(.)\b\ze\1?//e' .. (&gdefault ? '' : 'g')
|
||||
|
||||
if unsetwidth
|
||||
let $MANWIDTH = ''
|
||||
endif
|
||||
@@ -180,9 +221,10 @@ func dist#man#PopPage()
|
||||
exec "let s:man_tag_buf=s:man_tag_buf_".s:man_tag_depth
|
||||
exec "let s:man_tag_lin=s:man_tag_lin_".s:man_tag_depth
|
||||
exec "let s:man_tag_col=s:man_tag_col_".s:man_tag_depth
|
||||
|
||||
exec s:man_tag_buf."b"
|
||||
exec s:man_tag_lin
|
||||
exec "norm! ".s:man_tag_col."|"
|
||||
call cursor(s:man_tag_lin, s:man_tag_col)
|
||||
|
||||
exec "unlet s:man_tag_buf_".s:man_tag_depth
|
||||
exec "unlet s:man_tag_lin_".s:man_tag_depth
|
||||
exec "unlet s:man_tag_col_".s:man_tag_depth
|
||||
|
||||
198
runtime/autoload/dist/script.vim
vendored
198
runtime/autoload/dist/script.vim
vendored
@@ -3,8 +3,9 @@ vim9script
|
||||
# Vim function for detecting a filetype from the file contents.
|
||||
# Invoked from "scripts.vim" in 'runtimepath'
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last Change: 2022 Nov 24
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
export def DetectFiletype()
|
||||
var line1 = getline(1)
|
||||
@@ -44,7 +45,7 @@ def DetectFromHashBang(firstline: string)
|
||||
elseif line1 =~ '^#!\s*[^/\\ ]*\>\([^/\\]\|$\)'
|
||||
name = substitute(line1, '^#!\s*\([^/\\ ]*\>\).*', '\1', '')
|
||||
else
|
||||
name = substitute(line1, '^#!\s*\S*[/\\]\(\i\+\).*', '\1', '')
|
||||
name = substitute(line1, '^#!\s*\S*[/\\]\(\f\+\).*', '\1', '')
|
||||
endif
|
||||
|
||||
# tcl scripts may have #!/bin/sh in the first line and "exec wish" in the
|
||||
@@ -53,151 +54,172 @@ def DetectFromHashBang(firstline: string)
|
||||
name = 'wish'
|
||||
endif
|
||||
|
||||
var ft = Exe2filetype(name, line1)
|
||||
if ft != ''
|
||||
exe 'setl ft=' .. ft
|
||||
endif
|
||||
enddef
|
||||
|
||||
# Returns the filetype name associated with program "name".
|
||||
# "line1" is the #! line at the top of the file. Use the same as "name" if
|
||||
# not available.
|
||||
# Returns an empty string when not recognized.
|
||||
export def Exe2filetype(name: string, line1: string): string
|
||||
# Bourne-like shell scripts: bash bash2 dash ksh ksh93 sh
|
||||
if name =~ '^\(bash\d*\|dash\|ksh\d*\|sh\)\>'
|
||||
call dist#ft#SetFileTypeSH(line1)
|
||||
return dist#ft#SetFileTypeSH(line1, false)
|
||||
|
||||
# csh scripts
|
||||
elseif name =~ '^csh\>'
|
||||
if exists("g:filetype_csh")
|
||||
call dist#ft#SetFileTypeShell(g:filetype_csh)
|
||||
else
|
||||
call dist#ft#SetFileTypeShell("csh")
|
||||
endif
|
||||
return dist#ft#SetFileTypeShell(exists("g:filetype_csh") ? g:filetype_csh : 'csh', false)
|
||||
|
||||
# tcsh scripts
|
||||
elseif name =~ '^tcsh\>'
|
||||
call dist#ft#SetFileTypeShell("tcsh")
|
||||
return dist#ft#SetFileTypeShell("tcsh", false)
|
||||
|
||||
# Z shell scripts
|
||||
elseif name =~ '^zsh\>'
|
||||
set ft=zsh
|
||||
return 'zsh'
|
||||
|
||||
# TCL scripts
|
||||
elseif name =~ '^\(tclsh\|wish\|expectk\|itclsh\|itkwish\)\>'
|
||||
set ft=tcl
|
||||
return 'tcl'
|
||||
|
||||
# Expect scripts
|
||||
elseif name =~ '^expect\>'
|
||||
set ft=expect
|
||||
return 'expect'
|
||||
|
||||
# Gnuplot scripts
|
||||
elseif name =~ '^gnuplot\>'
|
||||
set ft=gnuplot
|
||||
return 'gnuplot'
|
||||
|
||||
# Makefiles
|
||||
elseif name =~ 'make\>'
|
||||
set ft=make
|
||||
return 'make'
|
||||
|
||||
# Pike
|
||||
elseif name =~ '^pike\%(\>\|[0-9]\)'
|
||||
set ft=pike
|
||||
return 'pike'
|
||||
|
||||
# Lua
|
||||
elseif name =~ 'lua'
|
||||
set ft=lua
|
||||
return 'lua'
|
||||
|
||||
# Perl
|
||||
elseif name =~ 'perl'
|
||||
set ft=perl
|
||||
return 'perl'
|
||||
|
||||
# PHP
|
||||
elseif name =~ 'php'
|
||||
set ft=php
|
||||
return 'php'
|
||||
|
||||
# Python
|
||||
elseif name =~ 'python'
|
||||
set ft=python
|
||||
return 'python'
|
||||
|
||||
# Groovy
|
||||
elseif name =~ '^groovy\>'
|
||||
set ft=groovy
|
||||
return 'groovy'
|
||||
|
||||
# Raku
|
||||
elseif name =~ 'raku'
|
||||
set ft=raku
|
||||
return 'raku'
|
||||
|
||||
# Ruby
|
||||
elseif name =~ 'ruby'
|
||||
set ft=ruby
|
||||
return 'ruby'
|
||||
|
||||
# JavaScript
|
||||
elseif name =~ 'node\(js\)\=\>\|js\>' || name =~ 'rhino\>'
|
||||
set ft=javascript
|
||||
return 'javascript'
|
||||
|
||||
# BC calculator
|
||||
elseif name =~ '^bc\>'
|
||||
set ft=bc
|
||||
return 'bc'
|
||||
|
||||
# sed
|
||||
elseif name =~ 'sed\>'
|
||||
set ft=sed
|
||||
return 'sed'
|
||||
|
||||
# OCaml-scripts
|
||||
elseif name =~ 'ocaml'
|
||||
set ft=ocaml
|
||||
return 'ocaml'
|
||||
|
||||
# Awk scripts; also finds "gawk"
|
||||
elseif name =~ 'awk\>'
|
||||
set ft=awk
|
||||
return 'awk'
|
||||
|
||||
# Website MetaLanguage
|
||||
elseif name =~ 'wml'
|
||||
set ft=wml
|
||||
return 'wml'
|
||||
|
||||
# Scheme scripts
|
||||
elseif name =~ 'scheme'
|
||||
set ft=scheme
|
||||
return 'scheme'
|
||||
|
||||
# CFEngine scripts
|
||||
elseif name =~ 'cfengine'
|
||||
set ft=cfengine
|
||||
return 'cfengine'
|
||||
|
||||
# Erlang scripts
|
||||
elseif name =~ 'escript'
|
||||
set ft=erlang
|
||||
return 'erlang'
|
||||
|
||||
# Haskell
|
||||
elseif name =~ 'haskell'
|
||||
set ft=haskell
|
||||
return 'haskell'
|
||||
|
||||
# Scala
|
||||
elseif name =~ 'scala\>'
|
||||
set ft=scala
|
||||
return 'scala'
|
||||
|
||||
# Clojure
|
||||
elseif name =~ 'clojure'
|
||||
set ft=clojure
|
||||
return 'clojure'
|
||||
|
||||
# Free Pascal
|
||||
elseif name =~ 'instantfpc\>'
|
||||
set ft=pascal
|
||||
return 'pascal'
|
||||
|
||||
# Fennel
|
||||
elseif name =~ 'fennel\>'
|
||||
set ft=fennel
|
||||
return 'fennel'
|
||||
|
||||
# MikroTik RouterOS script
|
||||
elseif name =~ 'rsc\>'
|
||||
set ft=routeros
|
||||
return 'routeros'
|
||||
|
||||
# Fish shell
|
||||
elseif name =~ 'fish\>'
|
||||
set ft=fish
|
||||
return 'fish'
|
||||
|
||||
# Gforth
|
||||
elseif name =~ 'gforth\>'
|
||||
set ft=forth
|
||||
return 'forth'
|
||||
|
||||
# Icon
|
||||
elseif name =~ 'icon\>'
|
||||
set ft=icon
|
||||
return 'icon'
|
||||
|
||||
# Guile
|
||||
elseif name =~ 'guile'
|
||||
set ft=scheme
|
||||
return 'scheme'
|
||||
|
||||
# Nix
|
||||
elseif name =~ 'nix-shell'
|
||||
return 'nix'
|
||||
|
||||
# Crystal
|
||||
elseif name =~ '^crystal\>'
|
||||
return 'crystal'
|
||||
|
||||
# Rexx
|
||||
elseif name =~ '^\%(rexx\|regina\)\>'
|
||||
return 'rexx'
|
||||
|
||||
endif
|
||||
|
||||
return ''
|
||||
enddef
|
||||
|
||||
|
||||
@@ -218,28 +240,28 @@ def DetectFromText(line1: string)
|
||||
|| "\n" .. line1 .. "\n" .. line2 .. "\n" .. line3 ..
|
||||
"\n" .. line4 .. "\n" .. line5
|
||||
=~ '\n\s*emulate\s\+\%(-[LR]\s\+\)\=[ckz]\=sh\>'
|
||||
set ft=zsh
|
||||
setl ft=zsh
|
||||
|
||||
# ELM Mail files
|
||||
elseif line1 =~ '^From \([a-zA-Z][a-zA-Z_0-9\.=-]*\(@[^ ]*\)\=\|-\) .* \(19\|20\)\d\d$'
|
||||
set ft=mail
|
||||
setl ft=mail
|
||||
|
||||
# Mason
|
||||
elseif line1 =~ '^<[%&].*>'
|
||||
set ft=mason
|
||||
setl ft=mason
|
||||
|
||||
# Vim scripts (must have '" vim' as the first line to trigger this)
|
||||
elseif line1 =~ '^" *[vV]im$'
|
||||
set ft=vim
|
||||
setl ft=vim
|
||||
|
||||
# libcxx and libstdc++ standard library headers like "iostream" do not have
|
||||
# an extension, recognize the Emacs file mode.
|
||||
elseif line1 =~? '-\*-.*C++.*-\*-'
|
||||
set ft=cpp
|
||||
setl ft=cpp
|
||||
|
||||
# MOO
|
||||
elseif line1 =~ '^\*\* LambdaMOO Database, Format Version \%([1-3]\>\)\@!\d\+ \*\*$'
|
||||
set ft=moo
|
||||
setl ft=moo
|
||||
|
||||
# Diff file:
|
||||
# - "diff" in first line (context diff)
|
||||
@@ -258,11 +280,11 @@ def DetectFromText(line1: string)
|
||||
|| (line1 =~ '^\*\*\* ' && line2 =~ '^--- ')
|
||||
|| (line1 =~ '^=== ' && ((line2 =~ '^=\{66\}' && line3 =~ '^--- ' && line4 =~ '^+++') || (line2 =~ '^--- ' && line3 =~ '^+++ ')))
|
||||
|| (line1 =~ '^=== \(removed\|added\|renamed\|modified\)')
|
||||
set ft=diff
|
||||
setl ft=diff
|
||||
|
||||
# PostScript Files (must have %!PS as the first line, like a2ps output)
|
||||
elseif line1 =~ '^%![ \t]*PS'
|
||||
set ft=postscr
|
||||
setl ft=postscr
|
||||
|
||||
# M4 scripts: Guess there is a line that starts with "dnl".
|
||||
elseif line1 =~ '^\s*dnl\>'
|
||||
@@ -270,64 +292,64 @@ def DetectFromText(line1: string)
|
||||
|| line3 =~ '^\s*dnl\>'
|
||||
|| line4 =~ '^\s*dnl\>'
|
||||
|| line5 =~ '^\s*dnl\>'
|
||||
set ft=m4
|
||||
setl ft=m4
|
||||
|
||||
# AmigaDos scripts
|
||||
elseif $TERM == "amiga" && (line1 =~ "^;" || line1 =~? '^\.bra')
|
||||
set ft=amiga
|
||||
setl ft=amiga
|
||||
|
||||
# SiCAD scripts (must have procn or procd as the first line to trigger this)
|
||||
elseif line1 =~? '^ *proc[nd] *$'
|
||||
set ft=sicad
|
||||
setl ft=sicad
|
||||
|
||||
# Purify log files start with "**** Purify"
|
||||
elseif line1 =~ '^\*\*\*\* Purify'
|
||||
set ft=purifylog
|
||||
setl ft=purifylog
|
||||
|
||||
# XML
|
||||
elseif line1 =~ '<?\s*xml.*?>'
|
||||
set ft=xml
|
||||
setl ft=xml
|
||||
|
||||
# XHTML (e.g.: PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN")
|
||||
elseif line1 =~ '\<DTD\s\+XHTML\s'
|
||||
set ft=xhtml
|
||||
setl ft=xhtml
|
||||
|
||||
# HTML (e.g.: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN")
|
||||
# Avoid "doctype html", used by slim.
|
||||
elseif line1 =~? '<!DOCTYPE\s\+html\>'
|
||||
set ft=html
|
||||
setl ft=html
|
||||
|
||||
# PDF
|
||||
elseif line1 =~ '^%PDF-'
|
||||
set ft=pdf
|
||||
setl ft=pdf
|
||||
|
||||
# XXD output
|
||||
elseif line1 =~ '^\x\{7}: \x\{2} \=\x\{2} \=\x\{2} \=\x\{2} '
|
||||
set ft=xxd
|
||||
setl ft=xxd
|
||||
|
||||
# RCS/CVS log output
|
||||
elseif line1 =~ '^RCS file:' || line2 =~ '^RCS file:'
|
||||
set ft=rcslog
|
||||
setl ft=rcslog
|
||||
|
||||
# CVS commit
|
||||
elseif line2 =~ '^CVS:' || getline("$") =~ '^CVS: '
|
||||
set ft=cvs
|
||||
setl ft=cvs
|
||||
|
||||
# Prescribe
|
||||
elseif line1 =~ '^!R!'
|
||||
set ft=prescribe
|
||||
setl ft=prescribe
|
||||
|
||||
# Send-pr
|
||||
elseif line1 =~ '^SEND-PR:'
|
||||
set ft=sendpr
|
||||
setl ft=sendpr
|
||||
|
||||
# SNNS files
|
||||
elseif line1 =~ '^SNNS network definition file'
|
||||
set ft=snnsnet
|
||||
setl ft=snnsnet
|
||||
elseif line1 =~ '^SNNS pattern definition file'
|
||||
set ft=snnspat
|
||||
setl ft=snnspat
|
||||
elseif line1 =~ '^SNNS result file'
|
||||
set ft=snnsres
|
||||
setl ft=snnsres
|
||||
|
||||
# Virata
|
||||
elseif line1 =~ '^%.\{-}[Vv]irata'
|
||||
@@ -335,79 +357,81 @@ def DetectFromText(line1: string)
|
||||
|| line3 =~ '^%.\{-}[Vv]irata'
|
||||
|| line4 =~ '^%.\{-}[Vv]irata'
|
||||
|| line5 =~ '^%.\{-}[Vv]irata'
|
||||
set ft=virata
|
||||
setl ft=virata
|
||||
|
||||
# Strace
|
||||
elseif line1 =~ '[0-9:.]* *execve(' || line1 =~ '^__libc_start_main'
|
||||
set ft=strace
|
||||
# inaccurate fast match first, then use accurate slow match
|
||||
elseif (line1 =~ 'execve(' && line1 =~ '^[0-9:.]* *execve(')
|
||||
|| line1 =~ '^__libc_start_main'
|
||||
setl ft=strace
|
||||
|
||||
# VSE JCL
|
||||
elseif line1 =~ '^\* $$ JOB\>' || line1 =~ '^// *JOB\>'
|
||||
set ft=vsejcl
|
||||
setl ft=vsejcl
|
||||
|
||||
# TAK and SINDA
|
||||
elseif line4 =~ 'K & K Associates' || line2 =~ 'TAK 2000'
|
||||
set ft=takout
|
||||
setl ft=takout
|
||||
elseif line3 =~ 'S Y S T E M S I M P R O V E D '
|
||||
set ft=sindaout
|
||||
setl ft=sindaout
|
||||
elseif getline(6) =~ 'Run Date: '
|
||||
set ft=takcmp
|
||||
setl ft=takcmp
|
||||
elseif getline(9) =~ 'Node File 1'
|
||||
set ft=sindacmp
|
||||
setl ft=sindacmp
|
||||
|
||||
# DNS zone files
|
||||
elseif line1 .. line2 .. line3 .. line4 =~ '^; <<>> DiG [0-9.]\+.* <<>>\|$ORIGIN\|$TTL\|IN\s\+SOA'
|
||||
set ft=bindzone
|
||||
setl ft=bindzone
|
||||
|
||||
# BAAN
|
||||
elseif line1 =~ '|\*\{1,80}' && line2 =~ 'VRC '
|
||||
|| line2 =~ '|\*\{1,80}' && line3 =~ 'VRC '
|
||||
set ft=baan
|
||||
setl ft=baan
|
||||
|
||||
# Valgrind
|
||||
elseif line1 =~ '^==\d\+== valgrind' || line3 =~ '^==\d\+== Using valgrind'
|
||||
set ft=valgrind
|
||||
setl ft=valgrind
|
||||
|
||||
# Go docs
|
||||
elseif line1 =~ '^PACKAGE DOCUMENTATION$'
|
||||
set ft=godoc
|
||||
setl ft=godoc
|
||||
|
||||
# Renderman Interface Bytestream
|
||||
elseif line1 =~ '^##RenderMan'
|
||||
set ft=rib
|
||||
setl ft=rib
|
||||
|
||||
# Scheme scripts
|
||||
elseif line1 =~ 'exec\s\+\S*scheme' || line2 =~ 'exec\s\+\S*scheme'
|
||||
set ft=scheme
|
||||
setl ft=scheme
|
||||
|
||||
# Git output
|
||||
elseif line1 =~ '^\(commit\|tree\|object\) \x\{40,\}\>\|^tag \S\+$'
|
||||
set ft=git
|
||||
setl ft=git
|
||||
|
||||
# Gprof (gnu profiler)
|
||||
elseif line1 == 'Flat profile:'
|
||||
&& line2 == ''
|
||||
&& line3 =~ '^Each sample counts as .* seconds.$'
|
||||
set ft=gprof
|
||||
setl ft=gprof
|
||||
|
||||
# Erlang terms
|
||||
# (See also: http://www.gnu.org/software/emacs/manual/html_node/emacs/Choosing-Modes.html#Choosing-Modes)
|
||||
elseif line1 =~? '-\*-.*erlang.*-\*-'
|
||||
set ft=erlang
|
||||
setl ft=erlang
|
||||
|
||||
# YAML
|
||||
elseif line1 =~ '^%YAML'
|
||||
set ft=yaml
|
||||
setl ft=yaml
|
||||
|
||||
# MikroTik RouterOS script
|
||||
elseif line1 =~ '^#.*by RouterOS.*$'
|
||||
set ft=routeros
|
||||
setl ft=routeros
|
||||
|
||||
# Sed scripts
|
||||
# #ncomment is allowed but most likely a false positive so require a space
|
||||
# before any trailing comment text
|
||||
elseif line1 =~ '^#n\%($\|\s\)'
|
||||
set ft=sed
|
||||
setl ft=sed
|
||||
|
||||
else
|
||||
var lnum = 1
|
||||
@@ -416,7 +440,7 @@ def DetectFromText(line1: string)
|
||||
endwhile
|
||||
if getline(lnum) =~ '^Index:\s\+\f\+$'
|
||||
# CVS diff
|
||||
set ft=diff
|
||||
setl ft=diff
|
||||
|
||||
# locale input files: Formal Definitions of Cultural Conventions
|
||||
# filename must be like en_US, fr_FR@euro or en_US.UTF-8
|
||||
|
||||
320
runtime/autoload/dist/vimindent.vim
vendored
320
runtime/autoload/dist/vimindent.vim
vendored
@@ -2,12 +2,12 @@ vim9script
|
||||
|
||||
# Language: Vim script
|
||||
# Maintainer: github user lacygoill
|
||||
# Last Change: 2022 Oct 15
|
||||
# Last Change: 2023 Jun 29
|
||||
|
||||
# NOTE: Whenever you change the code, make sure the tests are still passing:
|
||||
#
|
||||
# $ cd runtime/indent/
|
||||
# $ make clean; make test || vimdiff testdir/vim.{fail,ok}
|
||||
# $ make clean; make test || vimdiff testdir/vim.{ok,fail}
|
||||
|
||||
# Config {{{1
|
||||
|
||||
@@ -144,19 +144,43 @@ const HEREDOC_OPERATOR: string = '\s=<<\s\@=\%(\s\+\%(trim\|eval\)\)\{,2}'
|
||||
#
|
||||
# But sometimes, it can be too costly and cause `E363` to be given.
|
||||
const PATTERN_DELIMITER: string = '[-+*/%]\%(=\s\)\@!'
|
||||
|
||||
# QUOTE {{{3
|
||||
|
||||
const QUOTE: string = '["'']'
|
||||
# }}}2
|
||||
# Syntaxes {{{2
|
||||
# ASSIGNS_HEREDOC {{{3
|
||||
# BLOCKS {{{3
|
||||
|
||||
const ASSIGNS_HEREDOC: string = $'^\%({COMMENT}\)\@!.*\%({HEREDOC_OPERATOR}\)\s\+\zs[A-Z]\+{END_OF_LINE}'
|
||||
const BLOCKS: list<list<string>> = [
|
||||
['if', 'el\%[se]', 'elseif\=', 'en\%[dif]'],
|
||||
['for', 'endfor\='],
|
||||
['wh\%[ile]', 'endw\%[hile]'],
|
||||
['try', 'cat\%[ch]', 'fina\|finally\=', 'endt\%[ry]'],
|
||||
['def', 'enddef'],
|
||||
['fu\%[nction](\@!', 'endf\%[unction]'],
|
||||
['class', 'endclass'],
|
||||
['interface', 'endinterface'],
|
||||
['enum', 'endenum'],
|
||||
['aug\%[roup]\%(\s\+[eE][nN][dD]\)\@!\s\+\S\+', 'aug\%[roup]\s\+[eE][nN][dD]'],
|
||||
]
|
||||
|
||||
# CD_COMMAND {{{3
|
||||
# MODIFIERS {{{3
|
||||
|
||||
const CD_COMMAND: string = $'\<[lt]\=cd!\=\s\+-{END_OF_COMMAND}'
|
||||
# some keywords can be prefixed by modifiers (e.g. `def` can be prefixed by `export`)
|
||||
const MODIFIERS: dict<string> = {
|
||||
def: ['export', 'static'],
|
||||
class: ['export', 'abstract', 'export abstract'],
|
||||
interface: ['export'],
|
||||
}
|
||||
# ...
|
||||
# class: ['export', 'abstract', 'export abstract'],
|
||||
# ...
|
||||
# →
|
||||
# ...
|
||||
# class: '\%(export\|abstract\|export\s\+abstract\)\s\+',
|
||||
# ...
|
||||
->map((_, mods: list<string>): string =>
|
||||
'\%(' .. mods
|
||||
->join('\|')
|
||||
->substitute('\s\+', '\\s\\+', 'g')
|
||||
.. '\)' .. '\s\+')
|
||||
|
||||
# HIGHER_ORDER_COMMAND {{{3
|
||||
|
||||
@@ -169,60 +193,106 @@ patterns =<< trim eval END
|
||||
ldo\=\>!\=
|
||||
tabdo\=\>
|
||||
windo\>
|
||||
au\%[tocmd]\>.*
|
||||
com\%[mand]\>.*
|
||||
au\%[tocmd]\>!\=.*
|
||||
com\%[mand]\>!\=.*
|
||||
g\%[lobal]!\={PATTERN_DELIMITER}.*
|
||||
v\%[global]!\={PATTERN_DELIMITER}.*
|
||||
END
|
||||
const HIGHER_ORDER_COMMAND: string = $'\%(^\|{BAR_SEPARATION}\)\s*\<\%(' .. patterns->join('\|') .. '\):\@!'
|
||||
|
||||
# MAPPING_COMMAND {{{3
|
||||
const HIGHER_ORDER_COMMAND: string = $'\%(^\|{BAR_SEPARATION}\)\s*\<\%({patterns->join('\|')}\)\%(\s\|$\)\@='
|
||||
|
||||
const MAPPING_COMMAND: string = '\%(\<sil\%[ent]!\=\s\+\)\=\<[nvxsoilct]\=\%(nore\|un\)map!\=\s'
|
||||
# START_MIDDLE_END {{{3
|
||||
|
||||
# NORMAL_COMMAND {{{3
|
||||
# Let's derive this constant from `BLOCKS`:
|
||||
#
|
||||
# [['if', 'el\%[se]', 'elseif\=', 'en\%[dif]'],
|
||||
# ['for', 'endfor\='],
|
||||
# ...,
|
||||
# [...]]
|
||||
# →
|
||||
# {
|
||||
# 'for': ['for', '', 'endfor\='],
|
||||
# 'endfor': ['for', '', 'endfor\='],
|
||||
# 'if': ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
# 'else': ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
# 'elseif': ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
# 'endif': ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
# ...
|
||||
# }
|
||||
var START_MIDDLE_END: dict<list<string>>
|
||||
|
||||
const NORMAL_COMMAND: string = '\<norm\%[al]!\=\s*\S\+$'
|
||||
def Unshorten(kwd: string): string
|
||||
return BlockStartKeyword(kwd)
|
||||
enddef
|
||||
|
||||
# PLUS_MINUS_COMMAND {{{3
|
||||
def BlockStartKeyword(line: string): string
|
||||
var kwd: string = line->matchstr('\l\+')
|
||||
return fullcommand(kwd, false)
|
||||
enddef
|
||||
|
||||
# In legacy, the `:+` and `:-` commands are not required to be preceded by a colon.
|
||||
# As a result, when `+` or `-` is alone on a line, there is ambiguity.
|
||||
# It might be an operator or a command.
|
||||
# To not break the indentation in legacy scripts, we might need to consider such
|
||||
# lines as commands.
|
||||
const PLUS_MINUS_COMMAND: string = '^\s*[+-]\s*$'
|
||||
{
|
||||
for kwds: list<string> in BLOCKS
|
||||
var [start: string, middle: string, end: string] = [kwds[0], '', kwds[-1]]
|
||||
if MODIFIERS->has_key(start->Unshorten())
|
||||
start = $'\%({MODIFIERS[start]}\)\={start}'
|
||||
endif
|
||||
if kwds->len() > 2
|
||||
middle = kwds[1 : -2]->join('\|')
|
||||
endif
|
||||
for kwd: string in kwds
|
||||
START_MIDDLE_END->extend({[kwd->Unshorten()]: [start, middle, end]})
|
||||
endfor
|
||||
endfor
|
||||
}
|
||||
|
||||
START_MIDDLE_END = START_MIDDLE_END
|
||||
->map((_, kwds: list<string>) =>
|
||||
kwds->map((_, kwd: string) => kwd == ''
|
||||
? ''
|
||||
: $'\%(^\|{BAR_SEPARATION}\|\<sil\%[ent]\|{HIGHER_ORDER_COMMAND}\)\s*'
|
||||
.. $'\<\%({kwd}\)\>\%(\s\|$\|!\)\@=\%(\s*{OPERATOR}\)\@!'))
|
||||
|
||||
lockvar! START_MIDDLE_END
|
||||
|
||||
# ENDS_BLOCK {{{3
|
||||
|
||||
const ENDS_BLOCK: string = '^\s*\%('
|
||||
.. 'en\%[dif]'
|
||||
.. '\|' .. 'endfor\='
|
||||
.. '\|' .. 'endw\%[hile]'
|
||||
.. '\|' .. 'endt\%[ry]'
|
||||
.. '\|' .. 'enddef'
|
||||
.. '\|' .. 'endf\%[unction]'
|
||||
.. '\|' .. 'aug\%[roup]\s\+[eE][nN][dD]'
|
||||
.. BLOCKS
|
||||
->copy()
|
||||
->map((_, kwds: list<string>): string => kwds[-1])
|
||||
->join('\|')
|
||||
.. '\|' .. CLOSING_BRACKET
|
||||
.. $'\){END_OF_COMMAND}'
|
||||
|
||||
# ENDS_BLOCK_OR_CLAUSE {{{3
|
||||
|
||||
patterns =<< trim END
|
||||
en\%[dif]
|
||||
el\%[se]
|
||||
endfor\=
|
||||
endw\%[hile]
|
||||
endt\%[ry]
|
||||
fina\|finally\=
|
||||
enddef
|
||||
endf\%[unction]
|
||||
aug\%[roup]\s\+[eE][nN][dD]
|
||||
END
|
||||
patterns = BLOCKS
|
||||
->copy()
|
||||
->map((_, kwds: list<string>) => kwds[1 :])
|
||||
->flattennew()
|
||||
# `catch` and `elseif` need to be handled as special cases
|
||||
->filter((_, pat: string): bool => pat->Unshorten() !~ '^\%(catch\|elseif\)\>')
|
||||
|
||||
const ENDS_BLOCK_OR_CLAUSE: string = '^\s*\%(' .. patterns->join('\|') .. $'\){END_OF_COMMAND}'
|
||||
.. $'\|^\s*cat\%[ch]\%(\s\+\({PATTERN_DELIMITER}\).*\1\)\={END_OF_COMMAND}'
|
||||
.. $'\|^\s*elseif\=\>\%({OPERATOR}\)\@!'
|
||||
.. $'\|^\s*elseif\=\>\%(\s\|$\)\@=\%(\s*{OPERATOR}\)\@!'
|
||||
|
||||
# STARTS_NAMED_BLOCK {{{3
|
||||
|
||||
patterns = []
|
||||
{
|
||||
for kwds: list<string> in BLOCKS
|
||||
for kwd: string in kwds[0 : -2]
|
||||
if MODIFIERS->has_key(kwd->Unshorten())
|
||||
patterns += [$'\%({MODIFIERS[kwd]}\)\={kwd}']
|
||||
else
|
||||
patterns += [kwd]
|
||||
endif
|
||||
endfor
|
||||
endfor
|
||||
}
|
||||
|
||||
const STARTS_NAMED_BLOCK: string = $'^\s*\%(sil\%[ent]\s\+\)\=\%({patterns->join('\|')}\)\>\%(\s\|$\|!\)\@='
|
||||
|
||||
# STARTS_CURLY_BLOCK {{{3
|
||||
|
||||
@@ -236,70 +306,57 @@ const STARTS_CURLY_BLOCK: string = '\%('
|
||||
.. '\|' .. $'^\%(\s*\|.*{BAR_SEPARATION}\s*\)\%(com\%[mand]\|au\%[tocmd]\).*\zs\s{{'
|
||||
.. '\)' .. END_OF_COMMAND
|
||||
|
||||
# STARTS_NAMED_BLOCK {{{3
|
||||
|
||||
# All of these will be used at the start of a line (or after a bar).
|
||||
# NOTE: Don't replace `\%x28` with `(`.{{{
|
||||
#
|
||||
# Otherwise, the paren would be unbalanced which might cause syntax highlighting
|
||||
# issues much later in the code of the current script (sometimes, the syntax
|
||||
# highlighting plugin fails to correctly recognize a heredoc which is far away
|
||||
# and/or not displayed because inside a fold).
|
||||
# }}}
|
||||
patterns =<< trim END
|
||||
if
|
||||
el\%[se]
|
||||
elseif\=
|
||||
for
|
||||
wh\%[ile]
|
||||
try
|
||||
cat\%[ch]
|
||||
fina\|finally\=
|
||||
fu\%[nction]\%x28\@!
|
||||
\%(export\s\+\)\=def
|
||||
aug\%[roup]\%(\s\+[eE][nN][dD]\)\@!\s\+\S\+
|
||||
END
|
||||
const STARTS_NAMED_BLOCK: string = '^\s*\%(sil\%[ent]\s\+\)\=\%(' .. patterns->join('\|') .. '\)\>:\@!'
|
||||
|
||||
# STARTS_FUNCTION {{{3
|
||||
|
||||
const STARTS_FUNCTION: string = '^\s*\%(export\s\+\)\=def\>:\@!'
|
||||
const STARTS_FUNCTION: string = $'^\s*\%({MODIFIERS.def}\)\=def\>!\=\s\@='
|
||||
|
||||
# ENDS_FUNCTION {{{3
|
||||
|
||||
const ENDS_FUNCTION: string = $'^\s*enddef\>:\@!{END_OF_COMMAND}'
|
||||
const ENDS_FUNCTION: string = $'^\s*enddef\>{END_OF_COMMAND}'
|
||||
|
||||
# START_MIDDLE_END {{{3
|
||||
# ASSIGNS_HEREDOC {{{3
|
||||
|
||||
const START_MIDDLE_END: dict<list<string>> = {
|
||||
if: ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
else: ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
elseif: ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
endif: ['if', 'el\%[se]\|elseif\=', 'en\%[dif]'],
|
||||
for: ['for', '', 'endfor\='],
|
||||
endfor: ['for', '', 'endfor\='],
|
||||
while: ['wh\%[ile]', '', 'endw\%[hile]'],
|
||||
endwhile: ['wh\%[ile]', '', 'endw\%[hile]'],
|
||||
try: ['try', 'cat\%[ch]\|fina\|finally\=', 'endt\%[ry]'],
|
||||
catch: ['try', 'cat\%[ch]\|fina\|finally\=', 'endt\%[ry]'],
|
||||
finally: ['try', 'cat\%[ch]\|fina\|finally\=', 'endt\%[ry]'],
|
||||
endtry: ['try', 'cat\%[ch]\|fina\|finally\=', 'endt\%[ry]'],
|
||||
def: ['\%(export\s\+\)\=def', '', 'enddef'],
|
||||
enddef: ['\%(export\s\+\)\=def', '', 'enddef'],
|
||||
function: ['fu\%[nction]', '', 'endf\%[unction]'],
|
||||
endfunction: ['fu\%[nction]', '', 'endf\%[unction]'],
|
||||
augroup: ['aug\%[roup]\%(\s\+[eE][nN][dD]\)\@!\s\+\S\+', '', 'aug\%[roup]\s\+[eE][nN][dD]'],
|
||||
}->map((_, kwds: list<string>) =>
|
||||
kwds->map((_, kwd: string) => kwd == ''
|
||||
? ''
|
||||
: $'\%(^\|{BAR_SEPARATION}\|\<sil\%[ent]\|{HIGHER_ORDER_COMMAND}\)\s*'
|
||||
.. $'\%({printf('\C\<\%%(%s\)\>:\@!\%%(\s*%s\)\@!', kwd, OPERATOR)}\)'))
|
||||
const ASSIGNS_HEREDOC: string = $'^\%({COMMENT}\)\@!.*\%({HEREDOC_OPERATOR}\)\s\+\zs[A-Z]\+{END_OF_LINE}'
|
||||
|
||||
# PLUS_MINUS_COMMAND {{{3
|
||||
|
||||
# In legacy, the `:+` and `:-` commands are not required to be preceded by a colon.
|
||||
# As a result, when `+` or `-` is alone on a line, there is ambiguity.
|
||||
# It might be an operator or a command.
|
||||
# To not break the indentation in legacy scripts, we might need to consider such
|
||||
# lines as commands.
|
||||
const PLUS_MINUS_COMMAND: string = '^\s*[+-]\s*$'
|
||||
|
||||
# TRICKY_COMMANDS {{{3
|
||||
|
||||
# Some commands are tricky because they accept an argument which can be
|
||||
# conflated with an operator. Examples:
|
||||
#
|
||||
# argdelete *
|
||||
# cd -
|
||||
# normal! ==
|
||||
# nunmap <buffer> (
|
||||
#
|
||||
# TODO: Other commands might accept operators as argument. Handle them too.
|
||||
patterns =<< trim eval END
|
||||
{'\'}<argd\%[elete]\s\+\*\s*$
|
||||
\<[lt]\=cd!\=\s\+-\s*$
|
||||
\<norm\%[al]!\=\s*\S\+$
|
||||
\%(\<sil\%[ent]!\=\s\+\)\=\<[nvxsoilct]\=\%(nore\|un\)map!\=\s
|
||||
{PLUS_MINUS_COMMAND}
|
||||
END
|
||||
|
||||
const TRICKY_COMMANDS: string = patterns->join('\|')
|
||||
# }}}2
|
||||
# EOL {{{2
|
||||
# OPENING_BRACKET_AT_EOL {{{3
|
||||
|
||||
const OPENING_BRACKET_AT_EOL: string = OPENING_BRACKET .. END_OF_VIM9_LINE
|
||||
|
||||
# CLOSING_BRACKET_AT_EOL {{{3
|
||||
|
||||
const CLOSING_BRACKET_AT_EOL: string = CLOSING_BRACKET .. END_OF_VIM9_LINE
|
||||
|
||||
# COMMA_AT_EOL {{{3
|
||||
|
||||
const COMMA_AT_EOL: string = $',{END_OF_VIM9_LINE}'
|
||||
@@ -387,6 +444,7 @@ export def Expr(lnum = v:lnum): number # {{{2
|
||||
endif
|
||||
|
||||
if line_A->AtStartOf('FuncHeader')
|
||||
&& !IsInInterface()
|
||||
line_A.lnum->CacheFuncHeader()
|
||||
elseif line_A.lnum->IsInside('FuncHeader')
|
||||
return b:vimindent.startindent + 2 * shiftwidth()
|
||||
@@ -425,6 +483,7 @@ export def Expr(lnum = v:lnum): number # {{{2
|
||||
if line_A.text->ContinuesBelowBracketBlock(line_B, past_bracket_block)
|
||||
&& line_A.text !~ CLOSING_BRACKET_AT_SOL
|
||||
return past_bracket_block.startindent
|
||||
+ (past_bracket_block.startline =~ STARTS_NAMED_BLOCK ? 2 * shiftwidth() : 0)
|
||||
endif
|
||||
|
||||
# Problem: If we press `==` on the line right below the start of a multiline
|
||||
@@ -433,6 +492,18 @@ export def Expr(lnum = v:lnum): number # {{{2
|
||||
if line_B->EndsWithLambdaArrow()
|
||||
return Indent(line_B.lnum) + shiftwidth() + IndentMoreInBracketBlock()
|
||||
endif
|
||||
# FIXME: Similar issue here:
|
||||
#
|
||||
# var x = []
|
||||
# ->filter((_, _) =>
|
||||
# true)
|
||||
# ->items()
|
||||
#
|
||||
# Press `==` on last line.
|
||||
# Expected: The `->items()` line is indented like `->filter(...)`.
|
||||
# Actual: It's indented like `true)`.
|
||||
# Is it worth fixing? `=ip` gives the correct indentation, because then the
|
||||
# cache is used.
|
||||
|
||||
# Don't move this block before the heredoc one.{{{
|
||||
#
|
||||
@@ -531,8 +602,13 @@ def Offset( # {{{2
|
||||
line_B: dict<any>,
|
||||
): number
|
||||
|
||||
if line_B->AtStartOf('FuncHeader')
|
||||
&& IsInInterface()
|
||||
return 0
|
||||
|
||||
# increase indentation inside a block
|
||||
if line_B.text =~ STARTS_NAMED_BLOCK || line_B->EndsWithCurlyBlock()
|
||||
elseif line_B.text =~ STARTS_NAMED_BLOCK
|
||||
|| line_B->EndsWithCurlyBlock()
|
||||
# But don't indent if the line starting the block also closes it.
|
||||
if line_B->AlsoClosesBlock()
|
||||
return 0
|
||||
@@ -802,11 +878,6 @@ def Indent(lnum: number): number # {{{3
|
||||
return indent(lnum)
|
||||
enddef
|
||||
|
||||
def BlockStartKeyword(line: string): string # {{{3
|
||||
var kwd: string = line->matchstr('\l\+')
|
||||
return fullcommand(kwd, false)
|
||||
enddef
|
||||
|
||||
def MatchingOpenBracket(line: dict<any>): number # {{{3
|
||||
var end: string = line.text->matchstr(CLOSING_BRACKET)
|
||||
var start: string = {']': '[', '}': '{', ')': '('}[end]
|
||||
@@ -903,7 +974,8 @@ def SearchPair( # {{{3
|
||||
if end == '[' || end == ']'
|
||||
e = e->escape('[]')
|
||||
endif
|
||||
return searchpair(s, middle, e, flags, (): bool => InCommentOrString(), stopline, TIMEOUT)
|
||||
return searchpair('\C' .. s, (middle == '' ? '' : '\C' .. middle), '\C' .. e,
|
||||
flags, (): bool => InCommentOrString(), stopline, TIMEOUT)
|
||||
enddef
|
||||
|
||||
def SearchPairStart( # {{{3
|
||||
@@ -1011,6 +1083,10 @@ def IsInThisBlock(line_A: dict<any>, lnum: number): bool # {{{3
|
||||
return line_A.lnum <= end
|
||||
enddef
|
||||
|
||||
def IsInInterface(): bool # {{{3
|
||||
return SearchPair('interface', '', 'endinterface', 'nW') > 0
|
||||
enddef
|
||||
|
||||
def IsFirstLineOfCommand(line_1: dict<any>, line_2: dict<any>): bool # {{{3
|
||||
if line_1.text->Is_IN_KeywordForLoop(line_2.text)
|
||||
return false
|
||||
@@ -1041,13 +1117,8 @@ def Is_IN_KeywordForLoop(line_1: string, line_2: string): bool # {{{3
|
||||
enddef
|
||||
|
||||
def InCommentOrString(): bool # {{{3
|
||||
for synID: number in synstack('.', col('.'))
|
||||
if synIDattr(synID, 'name') =~ '\ccomment\|string\|heredoc'
|
||||
return true
|
||||
endif
|
||||
endfor
|
||||
|
||||
return false
|
||||
return synstack('.', col('.'))
|
||||
->indexof((_, id: number): bool => synIDattr(id, 'name') =~ '\ccomment\|string\|heredoc') >= 0
|
||||
enddef
|
||||
|
||||
def AlsoClosesBlock(line_B: dict<any>): bool # {{{3
|
||||
@@ -1091,6 +1162,10 @@ def EndsWithOpeningBracket(line: dict<any>): bool # {{{3
|
||||
return NonCommentedMatch(line, OPENING_BRACKET_AT_EOL)
|
||||
enddef
|
||||
|
||||
def EndsWithClosingBracket(line: dict<any>): bool # {{{3
|
||||
return NonCommentedMatch(line, CLOSING_BRACKET_AT_EOL)
|
||||
enddef
|
||||
|
||||
def NonCommentedMatch(line: dict<any>, pat: string): bool # {{{3
|
||||
# Could happen if there is no code above us, and we're not on the 1st line.
|
||||
# In that case, `PrevCodeLine()` returns `{lnum: 0, line: ''}`.
|
||||
@@ -1098,16 +1173,6 @@ def NonCommentedMatch(line: dict<any>, pat: string): bool # {{{3
|
||||
return false
|
||||
endif
|
||||
|
||||
if line.text =~ PLUS_MINUS_COMMAND
|
||||
return false
|
||||
endif
|
||||
|
||||
# In `argdelete *`, `*` is not a multiplication operator.
|
||||
# TODO: Other commands can accept `*` as an argument. Handle them too.
|
||||
if line.text =~ '\<argd\%[elete]\s\+\*\s*$'
|
||||
return false
|
||||
endif
|
||||
|
||||
# Technically, that's wrong. A line might start with a range and end with a
|
||||
# line continuation symbol. But it's unlikely. And it's useful to assume the
|
||||
# opposite because it prevents us from conflating a mark with an operator or
|
||||
@@ -1174,24 +1239,7 @@ def NonCommentedMatch(line: dict<any>, pat: string): bool # {{{3
|
||||
return false
|
||||
endif
|
||||
|
||||
# `:help cd-`
|
||||
if line.text =~ CD_COMMAND
|
||||
return false
|
||||
endif
|
||||
|
||||
# At the end of a mapping, any character might appear; e.g. a paren:
|
||||
#
|
||||
# nunmap <buffer> (
|
||||
#
|
||||
# Don't conflate this with a line continuation symbol.
|
||||
if line.text =~ MAPPING_COMMAND
|
||||
return false
|
||||
endif
|
||||
|
||||
# not a comparison operator
|
||||
# vv
|
||||
# normal! ==
|
||||
if line.text =~ NORMAL_COMMAND
|
||||
if line.text =~ TRICKY_COMMANDS
|
||||
return false
|
||||
endif
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim autoload file for editing compressed files.
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2016 Sep 28
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" These functions are used by the gzip plugin.
|
||||
|
||||
@@ -9,12 +10,20 @@
|
||||
fun s:check(cmd)
|
||||
let name = substitute(a:cmd, '\(\S*\).*', '\1', '')
|
||||
if !exists("s:have_" . name)
|
||||
" safety check, don't execute anything from the current directory
|
||||
let s:tmp_cwd = getcwd()
|
||||
let f = (fnamemodify(exepath(name), ":p:h") !=# s:tmp_cwd
|
||||
\ || (index(split($PATH,has("win32")? ';' : ':'), s:tmp_cwd) != -1 && s:tmp_cwd != '.'))
|
||||
unlet s:tmp_cwd
|
||||
if !f
|
||||
echoerr "Warning: NOT executing " .. name .. " from current directory!"
|
||||
endif
|
||||
let e = executable(name)
|
||||
if e < 0
|
||||
let r = system(name . " --version")
|
||||
let e = (r !~ "not found" && r != "")
|
||||
endif
|
||||
exe "let s:have_" . name . "=" . e
|
||||
exe "let s:have_" . name . "=" . (e && f)
|
||||
endif
|
||||
exe "return s:have_" . name
|
||||
endfun
|
||||
|
||||
@@ -156,8 +156,8 @@ function! javascriptcomplete#CompleteJS(findstart, base)
|
||||
\ 'text', 'vLink']
|
||||
let bodys = bodyprop
|
||||
" Document - document.
|
||||
let docuprop = ['anchors', 'body', 'characterSet', 'doctype',
|
||||
\ 'documentElement', 'documentURI', 'embeds', 'fonts', 'forms',
|
||||
let docuprop = ['anchors', 'applets', 'body', 'characterSet', 'childNodes',
|
||||
\ 'doctype', 'documentElement', 'documentURI', 'embeds', 'fonts', 'forms',
|
||||
\ 'head', 'hidden', 'images', 'implementation', 'lastStyleSheetSet',
|
||||
\ 'links', 'plugins', 'preferredStyleSheetSet', 'scripts',
|
||||
\ 'scrollingElement', 'selectedStyleSheetSet', 'styleSheetSets',
|
||||
@@ -171,7 +171,7 @@ function! javascriptcomplete#CompleteJS(findstart, base)
|
||||
\ 'createEvent', 'createExpression', 'createNSResolver',
|
||||
\ 'createNodeIterator', 'createProcessingInstruction', 'createRange',
|
||||
\ 'createTextNode', 'createTouchList', 'createTreeWalker',
|
||||
\ 'enableStyleSheetsForSet', 'evaluate', 'focus', 'getElementById',
|
||||
\ 'enableStyleSheetsForSet', 'evaluate', 'focus',
|
||||
\ 'getElementById', 'getElementsByClassName', 'getElementsByName',
|
||||
\ 'getElementsByTagName', 'getElementsByTagNameNS',
|
||||
\ 'hasStorageAccess', 'importNode', 'onClick', 'onDblClick',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" netrw.vim: Handles file transfer and remote directory listing across
|
||||
" AUTOLOAD SECTION
|
||||
" Date: Aug 16, 2021
|
||||
" Version: 171
|
||||
" Date: May 03, 2023
|
||||
" Version: 173
|
||||
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||
" Copyright: Copyright (C) 2016 Charles E. Campbell {{{1
|
||||
@@ -43,7 +43,7 @@ if exists("s:needspatches")
|
||||
endfor
|
||||
endif
|
||||
|
||||
let g:loaded_netrw = "v171"
|
||||
let g:loaded_netrw = "v173"
|
||||
if !exists("s:NOTE")
|
||||
let s:NOTE = 0
|
||||
let s:WARNING = 1
|
||||
@@ -208,7 +208,6 @@ let g:netrw_localcopycmdopt = ""
|
||||
let g:netrw_localcopydircmdopt = ""
|
||||
let g:netrw_localmkdiropt = ""
|
||||
let g:netrw_localmovecmdopt = ""
|
||||
let g:netrw_localrmdiropt = ""
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Default values for netrw's global protocol variables {{{2
|
||||
@@ -1186,6 +1185,11 @@ endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" netrw#Lexplore: toggle Explorer window, keeping it on the left of the current tab {{{2
|
||||
" Uses g:netrw_chgwin : specifies the window where Lexplore files are to be opened
|
||||
" t:netrw_lexposn : winsaveview() output (used on Lexplore window)
|
||||
" t:netrw_lexbufnr: the buffer number of the Lexplore buffer (internal to this function)
|
||||
" s:lexplore_win : window number of Lexplore window (serves to indicate which window is a Lexplore window)
|
||||
" w:lexplore_buf : buffer number of Lexplore window (serves to indicate which window is a Lexplore window)
|
||||
fun! netrw#Lexplore(count,rightside,...)
|
||||
" call Dfunc("netrw#Lexplore(count=".a:count." rightside=".a:rightside.",...) a:0=".a:0." ft=".&ft)
|
||||
let curwin= winnr()
|
||||
@@ -1202,6 +1206,8 @@ fun! netrw#Lexplore(count,rightside,...)
|
||||
" call Decho("exe Explore ".fnameescape(a:1),'~'.expand("<slnum>"))
|
||||
exe "Explore ".fnameescape(a1)
|
||||
exe curwin."wincmd w"
|
||||
let s:lexplore_win= curwin
|
||||
let w:lexplore_buf= bufnr("%")
|
||||
if exists("t:netrw_lexposn")
|
||||
" call Decho("forgetting t:netrw_lexposn",'~'.expand("<slnum>"))
|
||||
unlet t:netrw_lexposn
|
||||
@@ -1276,7 +1282,7 @@ fun! netrw#Lexplore(count,rightside,...)
|
||||
let t:netrw_lexbufnr = bufnr("%")
|
||||
" done to prevent build-up of hidden buffers due to quitting and re-invocation of :Lexplore.
|
||||
" Since the intended use of :Lexplore is to have an always-present explorer window, the extra
|
||||
" effort to mis-use :Lex is warranted.
|
||||
" effort to prevent mis-use of :Lex is warranted.
|
||||
set bh=wipe
|
||||
" call Decho("let t:netrw_lexbufnr=".t:netrw_lexbufnr)
|
||||
" call Decho("t:netrw_lexposn".(exists("t:netrw_lexposn")? string(t:netrw_lexposn) : " n/a"))
|
||||
@@ -1680,7 +1686,7 @@ fun! s:NetrwOptionsSave(vt)
|
||||
endif
|
||||
let {a:vt}netrw_fokeep = &l:fo " formatoptions
|
||||
let {a:vt}netrw_gdkeep = &l:gd " gdefault
|
||||
let {a:vt}netrw_gokeep = &l:go " guioptions
|
||||
let {a:vt}netrw_gokeep = &go " guioptions
|
||||
let {a:vt}netrw_hidkeep = &l:hidden
|
||||
let {a:vt}netrw_imkeep = &l:im
|
||||
let {a:vt}netrw_iskkeep = &l:isk
|
||||
@@ -1751,8 +1757,9 @@ fun! s:NetrwOptionsSafe(islocal)
|
||||
if &cpo =~ 'a' | call s:NetrwSetSafeSetting("&cpo",substitute(&cpo,'a','','g')) | endif
|
||||
if &cpo =~ 'A' | call s:NetrwSetSafeSetting("&cpo",substitute(&cpo,'A','','g')) | endif
|
||||
setl fo=nroql2
|
||||
" call s:NetrwSetSafeSetting("&go","begmr")
|
||||
if &go =~ '\ca' | call s:NetrwSetSafeSetting("&go",substitute(&go,'\ca','','g')) | endif
|
||||
if &go =~ 'a' | set go-=a | endif
|
||||
if &go =~ 'A' | set go-=A | endif
|
||||
if &go =~ 'P' | set go-=P | endif
|
||||
call s:NetrwSetSafeSetting("&l:hid",0)
|
||||
call s:NetrwSetSafeSetting("&l:im",0)
|
||||
setl isk+=@ isk+=* isk+=/
|
||||
@@ -1791,11 +1798,13 @@ fun! s:NetrwOptionsRestore(vt)
|
||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||
if !exists("{a:vt}netrw_optionsave")
|
||||
" call Decho("case ".a:vt."netrw_optionsave : doesn't exist",'~'.expand("<slnum>"))
|
||||
if !isdirectory(expand('%'))
|
||||
if filereadable(expand("%"))
|
||||
" call Decho("..doing filetype detect anyway")
|
||||
filetype detect
|
||||
filetype detect
|
||||
" call Decho("..settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||
else
|
||||
setl ft=netrw
|
||||
endif
|
||||
" call Decho("..settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||
" call Decho("..ro=".&l:ro." ma=".&l:ma." mod=".&l:mod." wrap=".&l:wrap." (filename<".expand("%")."> win#".winnr()." ft<".&ft.">)",'~'.expand("<slnum>"))
|
||||
" call Dret("s:NetrwOptionsRestore : ".a:vt."netrw_optionsave doesn't exist")
|
||||
return
|
||||
@@ -1835,7 +1844,7 @@ fun! s:NetrwOptionsRestore(vt)
|
||||
" call Decho("(s:NetrwOptionsRestore) #4 lines=".&lines)
|
||||
call s:NetrwRestoreSetting(a:vt."netrw_fokeep" ,"&l:fo")
|
||||
call s:NetrwRestoreSetting(a:vt."netrw_gdkeep" ,"&l:gd")
|
||||
call s:NetrwRestoreSetting(a:vt."netrw_gokeep" ,"&l:go")
|
||||
call s:NetrwRestoreSetting(a:vt."netrw_gokeep" ,"&go")
|
||||
call s:NetrwRestoreSetting(a:vt."netrw_hidkeep" ,"&l:hidden")
|
||||
" call Decho("(s:NetrwOptionsRestore) #5 lines=".&lines)
|
||||
call s:NetrwRestoreSetting(a:vt."netrw_imkeep" ,"&l:im")
|
||||
@@ -1906,11 +1915,9 @@ fun! s:NetrwOptionsRestore(vt)
|
||||
" were having their filetype detect-generated settings overwritten by
|
||||
" NetrwOptionRestore.
|
||||
if &ft != "netrw"
|
||||
if !isdirectory(expand('%'))
|
||||
" call Decho("before: filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
||||
filetype detect
|
||||
" call Decho("after : filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
||||
endif
|
||||
" call Decho("before: filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
||||
filetype detect
|
||||
" call Decho("after : filetype detect (ft=".&ft.")",'~'.expand("<slnum>"))
|
||||
endif
|
||||
" call Decho("(s:NetrwOptionsRestore) lines=".&lines)
|
||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>"))
|
||||
@@ -2985,13 +2992,19 @@ fun! s:NetrwGetFile(readcmd, tfile, method)
|
||||
" rename buffer back to remote filename
|
||||
call s:NetrwBufRename(rfile)
|
||||
|
||||
" Jan 19, 2022: COMBAK -- bram problem with https://github.com/vim/vim/pull/9554.diff filetype
|
||||
" Detect filetype of local version of remote file.
|
||||
" Note that isk must not include a "/" for scripts.vim
|
||||
" to process this detection correctly.
|
||||
" call Decho("detect filetype of local version of remote file",'~'.expand("<slnum>"))
|
||||
let iskkeep= &l:isk
|
||||
" call Decho("detect filetype of local version of remote file<".rfile.">",'~'.expand("<slnum>"))
|
||||
" call Decho("..did_filetype()=".did_filetype())
|
||||
" setl ft=
|
||||
" call Decho("..initial filetype<".&ft."> for buf#".bufnr()."<".bufname().">")
|
||||
let iskkeep= &isk
|
||||
setl isk-=/
|
||||
let &l:isk= iskkeep
|
||||
filetype detect
|
||||
" call Decho("..local filetype<".&ft."> for buf#".bufnr()."<".bufname().">")
|
||||
let &isk= iskkeep
|
||||
" call Dredir("ls!","NetrwGetFile (renamed buffer back to remote filename<".rfile."> : expand(%)<".expand("%").">)")
|
||||
let line1 = 1
|
||||
let line2 = line("$")
|
||||
@@ -3503,6 +3516,11 @@ fun! s:NetrwBookHistHandler(chg,curdir)
|
||||
echo "bookmarked the current directory"
|
||||
endif
|
||||
|
||||
try
|
||||
call s:NetrwBookHistSave()
|
||||
catch
|
||||
endtry
|
||||
|
||||
elseif a:chg == 1
|
||||
" change to the bookmarked directory
|
||||
" call Decho("(user: <".v:count."gb>) change to the bookmarked directory",'~'.expand("<slnum>"))
|
||||
@@ -3647,6 +3665,11 @@ fun! s:NetrwBookHistHandler(chg,curdir)
|
||||
" call Decho("g:netrw_bookmarklist=".string(g:netrw_bookmarklist),'~'.expand("<slnum>"))
|
||||
endif
|
||||
" call Decho("resulting g:netrw_bookmarklist=".string(g:netrw_bookmarklist),'~'.expand("<slnum>"))
|
||||
|
||||
try
|
||||
call s:NetrwBookHistSave()
|
||||
catch
|
||||
endtry
|
||||
endif
|
||||
call s:NetrwBookmarkMenu()
|
||||
call s:NetrwTgtMenu()
|
||||
@@ -4272,7 +4295,7 @@ fun! s:NetrwGetBuffer(islocal,dirname)
|
||||
endif
|
||||
" call Decho(" bufnum#".bufnum,'~'.expand("<slnum>"))
|
||||
|
||||
" hijack the current buffer
|
||||
" highjack the current buffer
|
||||
" IF the buffer already has the desired name
|
||||
" AND it is empty
|
||||
let curbuf = bufname("%")
|
||||
@@ -4280,7 +4303,7 @@ fun! s:NetrwGetBuffer(islocal,dirname)
|
||||
let curbuf = getcwd()
|
||||
endif
|
||||
" call Dredir("ls!","NetrwGetFile (renamed buffer back to remote filename<".rfile."> : expand(%)<".expand("%").">)")
|
||||
" call Decho("deciding if netrw may hijack the current buffer#".bufnr("%")."<".curbuf.">",'~'.expand("<slnum>"))
|
||||
" call Decho("deciding if netrw may highjack the current buffer#".bufnr("%")."<".curbuf.">",'~'.expand("<slnum>"))
|
||||
" call Decho("..dirname<".dirname."> IF dirname == bufname",'~'.expand("<slnum>"))
|
||||
" call Decho("..curbuf<".curbuf.">",'~'.expand("<slnum>"))
|
||||
" call Decho("..line($)=".line("$")." AND this is 1",'~'.expand("<slnum>"))
|
||||
@@ -4289,7 +4312,7 @@ fun! s:NetrwGetBuffer(islocal,dirname)
|
||||
" call Dret("s:NetrwGetBuffer 0<cleared buffer> : highjacking buffer#".bufnr("%"))
|
||||
return 0
|
||||
else " DEBUG
|
||||
" call Decho("..did NOT hijack buffer",'~'.expand("<slnum>"))
|
||||
" call Decho("..did NOT highjack buffer",'~'.expand("<slnum>"))
|
||||
endif
|
||||
" Aug 14, 2021: was thinking about looking for a [No Name] buffer here and using it, but that might cause problems
|
||||
|
||||
@@ -4325,19 +4348,25 @@ fun! s:NetrwGetBuffer(islocal,dirname)
|
||||
|
||||
else " Re-use the buffer
|
||||
" call Decho("--re-use buffer#".bufnum." (bufnum#".bufnum.">=0 AND bufexists(".bufnum.")=".bufexists(bufnum)."!=0)",'~'.expand("<slnum>"))
|
||||
" ignore all events
|
||||
let eikeep= &ei
|
||||
setl ei=all
|
||||
if getline(2) =~# '^" Netrw Directory Listing'
|
||||
" call Decho(" getline(2)<".getline(2).'> matches "Netrw Directory Listing" : using keepalt b '.bufnum,'~'.expand("<slnum>"))
|
||||
exe "sil! NetrwKeepj noswapfile keepalt b ".bufnum
|
||||
|
||||
if &ft == "netrw"
|
||||
" call Decho("buffer type is netrw; not using keepalt with b ".bufnum)
|
||||
exe "sil! NetrwKeepj noswapfile b ".bufnum
|
||||
" call Dredir("ls!","one")
|
||||
else
|
||||
" call Decho(" getline(2)<".getline(2).'> does not match "Netrw Directory Listing" : using b '.bufnum,'~'.expand("<slnum>"))
|
||||
exe "sil! NetrwKeepj noswapfile keepalt b ".bufnum
|
||||
" call Decho("buffer type is not netrw; using keepalt with b ".bufnum)
|
||||
call s:NetrwEditBuf(bufnum)
|
||||
" call Dredir("ls!","two")
|
||||
endif
|
||||
" call Decho(" line($)=".line("$"),'~'.expand("<slnum>"))
|
||||
if bufname("%") == '.'
|
||||
call s:NetrwBufRename(getcwd())
|
||||
endif
|
||||
|
||||
" restore ei
|
||||
let &ei= eikeep
|
||||
|
||||
if line("$") <= 1 && getline(1) == ""
|
||||
@@ -4988,7 +5017,7 @@ fun! s:NetrwBrowseChgDir(islocal,newdir,...)
|
||||
|
||||
" the point where netrw actually edits the (local) file
|
||||
" if its local only: LocalBrowseCheck() doesn't edit a file, but NetrwBrowse() will
|
||||
" no keepalt to support :e # to return to a directory listing
|
||||
" use keepalt to support :e # to return to a directory listing
|
||||
if !&mod
|
||||
" if e the new file would fail due to &mod, then don't change any of the flags
|
||||
let dolockout= 1
|
||||
@@ -4999,12 +5028,8 @@ fun! s:NetrwBrowseChgDir(islocal,newdir,...)
|
||||
" others like c-^ to return to the netrw buffer
|
||||
" Apr 30, 2020: used to have e! here. That can cause loss of a modified file,
|
||||
" so emit error E37 instead.
|
||||
if exists("g:netrw_altfile") && g:netrw_altfile
|
||||
exe "NetrwKeepj keepalt e ".fnameescape(dirname)
|
||||
else
|
||||
exe "NetrwKeepj e ".fnameescape(dirname)
|
||||
endif
|
||||
" call Decho("edit-a-file: after e! ".dirname.": hidden=".&hidden." bufhidden<".&bufhidden."> mod=".&mod,'~'.expand("<slnum>"))
|
||||
call s:NetrwEditFile("e","",dirname)
|
||||
" call Decho("edit-a-file: after e ".dirname.": hidden=".&hidden." bufhidden<".&bufhidden."> mod=".&mod,'~'.expand("<slnum>"))
|
||||
" COMBAK -- cuc cul related
|
||||
call s:NetrwCursor(1)
|
||||
if &hidden || &bufhidden == "hide"
|
||||
@@ -5345,8 +5370,8 @@ fun! netrw#BrowseX(fname,remote)
|
||||
" g:Netrw_corehandler is a List of function references (see :help Funcref)
|
||||
" call Decho("g:Netrw_corehandler is a List",'~'.expand("<slnum>"))
|
||||
for Fncref in g:Netrw_corehandler
|
||||
if type(FncRef) == 2
|
||||
call FncRef(a:fname)
|
||||
if type(Fncref) == 2
|
||||
call Fncref(a:fname)
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
@@ -5419,6 +5444,8 @@ fun! netrw#BrowseX(fname,remote)
|
||||
else
|
||||
let redir= &srr . "/dev/null"
|
||||
endif
|
||||
else
|
||||
let redir= ""
|
||||
endif
|
||||
" call Decho("set up redirection: redir{".redir."} srr{".&srr."}",'~'.expand("<slnum>"))
|
||||
|
||||
@@ -5708,6 +5735,35 @@ fun! s:NetrwClearExplore()
|
||||
" call Dret("s:NetrwClearExplore")
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NetrwEditBuf: decides whether or not to use keepalt to edit a buffer {{{2
|
||||
fun! s:NetrwEditBuf(bufnum)
|
||||
" call Dfunc("s:NetrwEditBuf(fname<".a:bufnum.">)")
|
||||
if exists("g:netrw_altfile") && g:netrw_altfile && &ft == "netrw"
|
||||
" call Decho("exe sil! NetrwKeepj keepalt noswapfile b ".fnameescape(a:bufnum))
|
||||
exe "sil! NetrwKeepj keepalt noswapfile b ".fnameescape(a:bufnum)
|
||||
else
|
||||
" call Decho("exe sil! NetrwKeepj noswapfile b ".fnameescape(a:bufnum))
|
||||
exe "sil! NetrwKeepj noswapfile b ".fnameescape(a:bufnum)
|
||||
endif
|
||||
" call Dret("s:NetrwEditBuf")
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NetrwEditFile: decides whether or not to use keepalt to edit a file {{{2
|
||||
" NetrwKeepj [keepalt] <OPT> <CMD> <FILENAME>
|
||||
fun! s:NetrwEditFile(cmd,opt,fname)
|
||||
" call Dfunc("s:NetrwEditFile(cmd<".a:cmd.">,opt<".a:opt.">,fname<".a:fname.">) ft<".&ft.">")
|
||||
if exists("g:netrw_altfile") && g:netrw_altfile && &ft == "netrw"
|
||||
" call Decho("exe NetrwKeepj keepalt ".a:opt." ".a:cmd." ".fnameescape(a:fname))
|
||||
exe "NetrwKeepj keepalt ".a:opt." ".a:cmd." ".fnameescape(a:fname)
|
||||
else
|
||||
" call Decho("exe NetrwKeepj ".a:opt." ".a:cmd." ".fnameescape(a:fname))
|
||||
exe "NetrwKeepj ".a:opt." ".a:cmd." ".fnameescape(a:fname)
|
||||
endif
|
||||
" call Dret("s:NetrwEditFile")
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NetrwExploreListUniq: {{{2
|
||||
fun! s:NetrwExploreListUniq(explist)
|
||||
@@ -7336,8 +7392,7 @@ fun! s:NetrwMarkFileDiff(islocal)
|
||||
exe "NetrwKeepj e ".fnameescape(fname)
|
||||
diffthis
|
||||
elseif cnt == 2 || cnt == 3
|
||||
vsplit
|
||||
wincmd l
|
||||
below vsplit
|
||||
" call Decho("diffthis: ".fname,'~'.expand("<slnum>"))
|
||||
exe "NetrwKeepj e ".fnameescape(fname)
|
||||
diffthis
|
||||
@@ -7814,8 +7869,16 @@ fun! s:NetrwMarkFileMove(islocal)
|
||||
" call Decho("movecmd<".movecmd."> (#3 linux or cygwin)",'~'.expand("<slnum>"))
|
||||
endif
|
||||
for fname in s:netrwmarkfilelist_{bufnr("%")}
|
||||
if g:netrw_keepdir
|
||||
" Jul 19, 2022: fixing file move when g:netrw_keepdir is 1
|
||||
let fname= b:netrw_curdir."/".fname
|
||||
endif
|
||||
if !g:netrw_cygwin && (has("win32") || has("win95") || has("win64") || has("win16"))
|
||||
let fname= substitute(fname,'/','\\','g')
|
||||
if g:netrw_keepdir
|
||||
" Jul 19, 2022: fixing file move when g:netrw_keepdir is 1
|
||||
let fname= b:netrw_curdir."\\".fname
|
||||
endif
|
||||
endif
|
||||
" call Decho("system(".movecmd." ".s:ShellEscape(fname)." ".tgt.")",'~'.expand("<slnum>"))
|
||||
let ret= system(movecmd.g:netrw_localmovecmdopt." ".s:ShellEscape(fname)." ".tgt)
|
||||
@@ -8573,21 +8636,28 @@ endfun
|
||||
" choice = 2 : didn't save modified file, opened window
|
||||
" choice = 3 : cancel open
|
||||
fun! s:NetrwPrevWinOpen(islocal)
|
||||
" call Dfunc("s:NetrwPrevWinOpen(islocal=".a:islocal.")")
|
||||
" call Dfunc("s:NetrwPrevWinOpen(islocal=".a:islocal.") win#".winnr())
|
||||
|
||||
let ykeep= @@
|
||||
" grab a copy of the b:netrw_curdir to pass it along to newly split windows
|
||||
let curdir = b:netrw_curdir
|
||||
" call Decho("COMBAK#1: mod=".&mod." win#".winnr())
|
||||
|
||||
" get last window number and the word currently under the cursor
|
||||
let origwin = winnr()
|
||||
let lastwinnr = winnr("$")
|
||||
let curword = s:NetrwGetWord()
|
||||
let choice = 0
|
||||
let s:prevwinopen= 1 " lets s:NetrwTreeDir() know that NetrwPrevWinOpen called it
|
||||
" call Decho("origwin#".origwin." lastwinnr#".lastwinnr)
|
||||
" call Decho("COMBAK#2: mod=".&mod." win#".winnr())
|
||||
let curword = s:NetrwGetWord()
|
||||
let choice = 0
|
||||
let s:prevwinopen= 1 " lets s:NetrwTreeDir() know that NetrwPrevWinOpen called it (s:NetrwTreeDir() will unlet s:prevwinopen)
|
||||
" call Decho("COMBAK#3: mod=".&mod." win#".winnr())
|
||||
let s:treedir = s:NetrwTreeDir(a:islocal)
|
||||
" call Decho("COMBAK#4: mod=".&mod." win#".winnr())
|
||||
let curdir = s:treedir
|
||||
" call Decho("COMBAK#5: mod=".&mod." win#".winnr())
|
||||
" call Decho("winnr($)#".lastwinnr." curword<".curword.">",'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#6: mod=".&mod." win#".winnr())
|
||||
|
||||
let didsplit = 0
|
||||
if lastwinnr == 1
|
||||
@@ -8610,11 +8680,26 @@ fun! s:NetrwPrevWinOpen(islocal)
|
||||
" call Decho("did split",'~'.expand("<slnum>"))
|
||||
|
||||
else
|
||||
" call Decho("COMBAK#7: mod=".&mod." win#".winnr())
|
||||
NetrwKeepj call s:SaveBufVars()
|
||||
" call Decho("COMBAK#8: mod=".&mod." win#".winnr())
|
||||
let eikeep= &ei
|
||||
" call Decho("COMBAK#9: mod=".&mod." win#".winnr())
|
||||
setl ei=all
|
||||
" call Decho("COMBAK#10: mod=".&mod." win#".winnr())
|
||||
wincmd p
|
||||
" call Decho("COMBAK#11: mod=".&mod)
|
||||
" call Decho("wincmd p (now in win#".winnr().") curdir<".curdir.">",'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#12: mod=".&mod)
|
||||
|
||||
if exists("s:lexplore_win") && s:lexplore_win == winnr()
|
||||
" whoops -- user trying to open file in the Lexplore window.
|
||||
" Use Lexplore's opening-file window instead.
|
||||
" call Decho("whoops -- user trying to open file in Lexplore Window. Use win#".g:netrw_chgwin." instead")
|
||||
" exe g:netrw_chgwin."wincmd w"
|
||||
wincmd p
|
||||
call s:NetrwBrowse(0,s:NetrwBrowseChgDir(0,s:NetrwGetWord()))
|
||||
endif
|
||||
|
||||
" prevwinnr: the window number of the "prev" window
|
||||
" prevbufnr: the buffer number of the buffer in the "prev" window
|
||||
@@ -8624,8 +8709,10 @@ fun! s:NetrwPrevWinOpen(islocal)
|
||||
let prevbufname = bufname("%")
|
||||
let prevmod = &mod
|
||||
let bnrcnt = 0
|
||||
" call Decho("COMBAK#13: mod=".&mod." win#".winnr())
|
||||
NetrwKeepj call s:RestoreBufVars()
|
||||
" call Decho("after wincmd p: win#".winnr()." win($)#".winnr("$")." origwin#".origwin." &mod=".&mod." bufname(%)<".bufname("%")."> prevbufnr=".prevbufnr,'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#14: mod=".&mod." win#".winnr())
|
||||
|
||||
" if the previous window's buffer has been changed (ie. its modified flag is set),
|
||||
" and it doesn't appear in any other extant window, then ask the
|
||||
@@ -8635,6 +8722,7 @@ fun! s:NetrwPrevWinOpen(islocal)
|
||||
windo if winbufnr(0) == prevbufnr | let bnrcnt=bnrcnt+1 | endif
|
||||
" call Decho("prevbufnr=".prevbufnr." bnrcnt=".bnrcnt." buftype=".&bt." winnr()=".winnr()." prevwinnr#".prevwinnr,'~'.expand("<slnum>"))
|
||||
exe prevwinnr."wincmd w"
|
||||
" call Decho("COMBAK#15: mod=".&mod." win#".winnr())
|
||||
|
||||
if bnrcnt == 1 && &hidden == 0
|
||||
" only one copy of the modified buffer in a window, and
|
||||
@@ -8642,6 +8730,7 @@ fun! s:NetrwPrevWinOpen(islocal)
|
||||
let choice = confirm("Save modified buffer<".prevbufname."> first?","&Yes\n&No\n&Cancel")
|
||||
" call Decho("prevbufname<".prevbufname."> choice=".choice." current-winnr#".winnr(),'~'.expand("<slnum>"))
|
||||
let &ei= eikeep
|
||||
" call Decho("COMBAK#16: mod=".&mod." win#".winnr())
|
||||
|
||||
if choice == 1
|
||||
" Yes -- write file & then browse
|
||||
@@ -8674,6 +8763,7 @@ fun! s:NetrwPrevWinOpen(islocal)
|
||||
endif
|
||||
let &ei= eikeep
|
||||
endif
|
||||
" call Decho("COMBAK#17: mod=".&mod." win#".winnr())
|
||||
|
||||
" restore b:netrw_curdir (window split/enew may have lost it)
|
||||
let b:netrw_curdir= curdir
|
||||
@@ -9361,19 +9451,23 @@ fun! s:NetrwTreeDir(islocal)
|
||||
if exists("s:prevwinopen")
|
||||
unlet s:prevwinopen
|
||||
endif
|
||||
" call Decho("COMBAK#18 : mod=".&mod." win#".winnr())
|
||||
|
||||
if !exists("b:netrw_curdir") || b:netrw_curdir == ""
|
||||
let b:netrw_curdir= getcwd()
|
||||
endif
|
||||
let treedir = b:netrw_curdir
|
||||
" call Decho("set initial treedir<".treedir.">",'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#19 : mod=".&mod." win#".winnr())
|
||||
|
||||
let s:treecurpos= winsaveview()
|
||||
" call Decho("saving posn to s:treecurpos<".string(s:treecurpos).">",'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#20 : mod=".&mod." win#".winnr())
|
||||
|
||||
if exists("w:netrw_liststyle") && w:netrw_liststyle == s:TREELIST
|
||||
" call Decho("w:netrw_liststyle is TREELIST:",'~'.expand("<slnum>"))
|
||||
" call Decho("line#".line(".")." getline(.)<".getline('.')."> treecurpos<".string(s:treecurpos).">",'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#21 : mod=".&mod." win#".winnr())
|
||||
|
||||
" extract tree directory if on a line specifying a subdirectory (ie. ends with "/")
|
||||
let curline= substitute(getline('.'),"\t -->.*$",'','')
|
||||
@@ -9389,6 +9483,7 @@ fun! s:NetrwTreeDir(islocal)
|
||||
" call Decho("do not extract tree subdirectory from current line and set treedir to empty",'~'.expand("<slnum>"))
|
||||
let treedir= ""
|
||||
endif
|
||||
" call Decho("COMBAK#22 : mod=".&mod." win#".winnr())
|
||||
|
||||
" detect user attempting to close treeroot
|
||||
" call Decho("check if user is attempting to close treeroot",'~'.expand("<slnum>"))
|
||||
@@ -9404,10 +9499,12 @@ fun! s:NetrwTreeDir(islocal)
|
||||
" else " Decho
|
||||
" call Decho(".user not attempting to close treeroot",'~'.expand("<slnum>"))
|
||||
endif
|
||||
" call Decho("COMBAK#23 : mod=".&mod." win#".winnr())
|
||||
|
||||
" call Decho("islocal=".a:islocal." curline<".curline.">",'~'.expand("<slnum>"))
|
||||
let potentialdir= s:NetrwFile(substitute(curline,'^'.s:treedepthstring.'\+ \(.*\)@$','\1',''))
|
||||
" call Decho("potentialdir<".potentialdir."> isdir=".isdirectory(potentialdir),'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#24 : mod=".&mod." win#".winnr())
|
||||
|
||||
" COMBAK: a symbolic link may point anywhere -- so it will be used to start a new treetop
|
||||
" if a:islocal && curline =~ '@$' && isdirectory(s:NetrwFile(potentialdir))
|
||||
@@ -9421,10 +9518,12 @@ fun! s:NetrwTreeDir(islocal)
|
||||
let treedir = s:NetrwTreePath(w:netrw_treetop)
|
||||
" endif
|
||||
endif
|
||||
" call Decho("COMBAK#25 : mod=".&mod." win#".winnr())
|
||||
|
||||
" sanity maintenance: keep those //s away...
|
||||
let treedir= substitute(treedir,'//$','/','')
|
||||
" call Decho("treedir<".treedir.">",'~'.expand("<slnum>"))
|
||||
" call Decho("COMBAK#26 : mod=".&mod." win#".winnr())
|
||||
|
||||
" call Dret("s:NetrwTreeDir <".treedir."> : (side effect) s:treecurpos<".(exists("s:treecurpos")? string(s:treecurpos) : 'n/a').">")
|
||||
return treedir
|
||||
@@ -10795,7 +10894,8 @@ fun! netrw#LocalBrowseCheck(dirname)
|
||||
" call Dfunc("netrw#LocalBrowseCheck(dirname<".a:dirname.">)")
|
||||
" call Decho("isdir<".a:dirname."> =".isdirectory(s:NetrwFile(a:dirname)).((exists("s:treeforceredraw")? " treeforceredraw" : "")).'~'.expand("<slnum>"))
|
||||
" call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo,'~'.expand("<slnum>"))
|
||||
" call Dredir("ls!","netrw#LocalBrowseCheck")
|
||||
" getting E930: Cannot use :redir inside execute
|
||||
"" call Dredir("ls!","netrw#LocalBrowseCheck")
|
||||
" call Decho("tab#".tabpagenr()." win#".winnr()." buf#".bufnr("%")."<".bufname("%")."> line#".line(".")." col#".col(".")." winline#".winline()." wincol#".wincol(),'~'.expand("<slnum>"))
|
||||
" call Decho("current buffer#".bufnr("%")."<".bufname("%")."> ft=".&ft,'~'.expand("<slnum>"))
|
||||
|
||||
@@ -11089,12 +11189,15 @@ fun! s:LocalListing()
|
||||
|
||||
if w:netrw_liststyle == s:LONGLIST
|
||||
let sz = getfsize(filename)
|
||||
let fsz = strpart(" ",1,15-strlen(sz)).sz
|
||||
let szlen = 15 - (strdisplaywidth(longfile) - g:netrw_maxfilenamelen)
|
||||
let szlen = (szlen > 0) ? szlen : 0
|
||||
let fsz = printf("%".szlen."S",sz)
|
||||
|
||||
if g:netrw_sizestyle =~# "[hH]"
|
||||
let sz= s:NetrwHumanReadable(sz)
|
||||
endif
|
||||
let longfile= printf("%-".(g:netrw_maxfilenamelen+1)."s",pfile)
|
||||
let pfile = longfile.sz." ".strftime(g:netrw_timefmt,getftime(filename))
|
||||
let longfile= printf("%-".g:netrw_maxfilenamelen."S",pfile)
|
||||
let pfile = longfile." ".sz." ".strftime(g:netrw_timefmt,getftime(filename))
|
||||
" call Decho("longlist support: sz=".sz." fsz=".fsz,'~'.expand("<slnum>"))
|
||||
endif
|
||||
|
||||
@@ -11393,34 +11496,8 @@ fun! s:NetrwLocalRmFile(path,fname,all)
|
||||
let rmfile= substitute(rmfile,'[\/]$','','e')
|
||||
|
||||
if all || ok =~# 'y\%[es]' || ok == ""
|
||||
if v:version < 704 || (v:version == 704 && !has("patch1107"))
|
||||
" " call Decho("1st attempt: system(netrw#WinPath(".g:netrw_localrmdir.') '.s:ShellEscape(rmfile).')','~'.expand("<slnum>"))
|
||||
call system(netrw#WinPath(g:netrw_localrmdir).' '.s:ShellEscape(rmfile))
|
||||
" " call Decho("v:shell_error=".v:shell_error,'~'.expand("<slnum>"))
|
||||
|
||||
if v:shell_error != 0
|
||||
" " call Decho("2nd attempt to remove directory<".rmfile.">",'~'.expand("<slnum>"))
|
||||
let errcode= s:NetrwDelete(rmfile)
|
||||
" " call Decho("errcode=".errcode,'~'.expand("<slnum>"))
|
||||
|
||||
if errcode != 0
|
||||
if has("unix")
|
||||
" " call Decho("3rd attempt to remove directory<".rmfile.">",'~'.expand("<slnum>"))
|
||||
call system("rm ".s:ShellEscape(rmfile))
|
||||
if v:shell_error != 0 && !exists("g:netrw_quiet")
|
||||
call netrw#ErrorMsg(s:ERROR,"unable to remove directory<".rmfile."> -- is it empty?",34)
|
||||
let ok="no"
|
||||
endif
|
||||
elseif !exists("g:netrw_quiet")
|
||||
call netrw#ErrorMsg(s:ERROR,"unable to remove directory<".rmfile."> -- is it empty?",35)
|
||||
let ok="no"
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
else
|
||||
if delete(rmfile,"d")
|
||||
call netrw#ErrorMsg(s:ERROR,"unable to delete directory <".rmfile.">!",103)
|
||||
endif
|
||||
if delete(rmfile,"d")
|
||||
call netrw#ErrorMsg(s:ERROR,"unable to delete directory <".rmfile.">!",103)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -11976,9 +12053,9 @@ fun! s:NetrwBufRemover(bufid)
|
||||
" call Decho("buf#".a:bufid." has name <".bufname(a:bufid).">","~".expand("<slnum>"))
|
||||
" call Decho("buf#".a:bufid." has winid#".bufwinid(a:bufid),"~".expand("<slnum>"))
|
||||
|
||||
if a:bufid > 1 && !buflisted(a:bufid) && bufname(a:bufid) == "" && bufwinid(a:bufid) == -1
|
||||
if a:bufid > 1 && !buflisted(a:bufid) && bufloaded(a:bufid) && bufname(a:bufid) == "" && bufwinid(a:bufid) == -1
|
||||
" call Decho("(s:NetrwBufRemover) removing buffer#".a:bufid,"~".expand("<slnum>"))
|
||||
exe "bd! ".a:bufid
|
||||
exe "sil! bd! ".a:bufid
|
||||
endif
|
||||
|
||||
" call Dret("s:NetrwBufRemover")
|
||||
@@ -12015,13 +12092,13 @@ fun! s:NetrwEnew(...)
|
||||
if exists("b:netrw_prvdir") |let netrw_prvdir = b:netrw_prvdir |endif
|
||||
|
||||
NetrwKeepj call s:NetrwOptionsRestore("w:")
|
||||
" call Decho("generate a buffer with NetrwKeepj keepalt enew!",'~'.expand("<slnum>"))
|
||||
" call Decho("generate a buffer with NetrwKeepj enew!",'~'.expand("<slnum>"))
|
||||
" when tree listing uses file TreeListing... a new buffer is made.
|
||||
" Want the old buffer to be unlisted.
|
||||
" COMBAK: this causes a problem, see P43
|
||||
" setl nobl
|
||||
let netrw_keepdiff= &l:diff
|
||||
noswapfile NetrwKeepj keepalt enew!
|
||||
call s:NetrwEditFile("enew!","","")
|
||||
let &l:diff= netrw_keepdiff
|
||||
" call Decho("bufnr($)=".bufnr("$")."<".bufname(bufnr("$"))."> winnr($)=".winnr("$"),'~'.expand("<slnum>"))
|
||||
NetrwKeepj call s:NetrwOptionsSave("w:")
|
||||
@@ -12070,7 +12147,7 @@ endfun
|
||||
" s:NetrwExe: executes a string using "!" {{{2
|
||||
fun! s:NetrwExe(cmd)
|
||||
" call Dfunc("s:NetrwExe(a:cmd<".a:cmd.">)")
|
||||
if has("win32") && &shell !~? 'cmd' && !g:netrw_cygwin
|
||||
if has("win32") && &shell !~? 'cmd\|pwsh\|powershell' && !g:netrw_cygwin
|
||||
" call Decho("using win32:",expand("<slnum>"))
|
||||
let savedShell=[&shell,&shellcmdflag,&shellxquote,&shellxescape,&shellquote,&shellpipe,&shellredir,&shellslash]
|
||||
set shell& shellcmdflag& shellxquote& shellxescape&
|
||||
@@ -12739,3 +12816,54 @@ unlet s:keepcpo
|
||||
" Modelines: {{{1
|
||||
" ===============
|
||||
" vim:ts=8 fdm=marker
|
||||
" doing autoload/netrw.vim version v172g ~57
|
||||
" varname<g:netrw_dirhistcnt> value=0 ~1
|
||||
" varname<s:THINLIST> value=0 ~1
|
||||
" varname<s:LONGLIST> value=1 ~1
|
||||
" varname<s:WIDELIST> value=2 ~1
|
||||
" varname<s:TREELIST> value=3 ~1
|
||||
" varname<s:MAXLIST> value=4 ~1
|
||||
" varname<g:netrw_use_errorwindow> value=2 ~1
|
||||
" varname<g:netrw_http_xcmd> value=-q -O ~1
|
||||
" varname<g:netrw_http_put_cmd> value=curl -T ~1
|
||||
" varname<g:netrw_keepj> value=keepj ~1
|
||||
" varname<g:netrw_rcp_cmd> value=rcp ~1
|
||||
" varname<g:netrw_rsync_cmd> value=rsync ~1
|
||||
" varname<g:netrw_rsync_sep> value=/ ~1
|
||||
" varname<g:netrw_scp_cmd> value=scp -q ~1
|
||||
" varname<g:netrw_sftp_cmd> value=sftp ~1
|
||||
" varname<g:netrw_ssh_cmd> value=ssh ~1
|
||||
" varname<g:netrw_alto> value=0 ~1
|
||||
" varname<g:netrw_altv> value=1 ~1
|
||||
" varname<g:netrw_banner> value=1 ~1
|
||||
" varname<g:netrw_browse_split> value=0 ~1
|
||||
" varname<g:netrw_bufsettings> value=noma nomod nonu nobl nowrap ro nornu ~1
|
||||
" varname<g:netrw_chgwin> value=-1 ~1
|
||||
" varname<g:netrw_clipboard> value=1 ~1
|
||||
" varname<g:netrw_compress> value=gzip ~1
|
||||
" varname<g:netrw_ctags> value=ctags ~1
|
||||
" varname<g:netrw_cursor> value=2 ~1
|
||||
" (netrw) COMBAK: cuc=0 cul=0 initialization of s:netrw_cu[cl]
|
||||
" varname<g:netrw_cygdrive> value=/cygdrive ~1
|
||||
" varname<s:didstarstar> value=0 ~1
|
||||
" varname<g:netrw_dirhistcnt> value=0 ~1
|
||||
" varname<g:netrw_decompress> value={ ".gz" : "gunzip", ".bz2" : "bunzip2", ".zip" : "unzip", ".tar" : "tar -xf", ".xz" : "unxz" } ~1
|
||||
" varname<g:netrw_dirhistmax> value=10 ~1
|
||||
" varname<g:netrw_errorlvl> value=0 ~1
|
||||
" varname<g:netrw_fastbrowse> value=1 ~1
|
||||
" varname<g:netrw_ftp_browse_reject> value=^total\s\+\d\+$\|^Trying\s\+\d\+.*$\|^KERBEROS_V\d rejected\|^Security extensions not\|No such file\|: connect to address [0-9a-fA-F:]*: No route to host$ ~1
|
||||
" varname<g:netrw_ftpmode> value=binary ~1
|
||||
" varname<g:netrw_hide> value=1 ~1
|
||||
" varname<g:netrw_keepdir> value=1 ~1
|
||||
" varname<g:netrw_list_hide> value= ~1
|
||||
" varname<g:netrw_localmkdir> value=mkdir ~1
|
||||
" varname<g:netrw_remote_mkdir> value=mkdir ~1
|
||||
" varname<g:netrw_liststyle> value=0 ~1
|
||||
" varname<g:netrw_markfileesc> value=*./[\~ ~1
|
||||
" varname<g:netrw_maxfilenamelen> value=32 ~1
|
||||
" varname<g:netrw_menu> value=1 ~1
|
||||
" varname<g:netrw_mkdir_cmd> value=ssh USEPORT HOSTNAME mkdir ~1
|
||||
" varname<g:netrw_mousemaps> value=1 ~1
|
||||
" varname<g:netrw_retmap> value=0 ~1
|
||||
" varname<g:netrw_chgperm> value=chmod PERM FILENAME ~1
|
||||
" varname<g:netrw_preview> value=0 ~1
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" netrwSettings.vim: makes netrw settings simpler
|
||||
" Date: Aug 12, 2021
|
||||
" Date: Nov 15, 2021
|
||||
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||
" Version: 17 ASTRO-ONLY
|
||||
" Version: 18
|
||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
@@ -19,7 +19,7 @@
|
||||
if exists("g:loaded_netrwSettings") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwSettings = "v17"
|
||||
let g:loaded_netrwSettings = "v18"
|
||||
if v:version < 700
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
||||
@@ -159,8 +159,6 @@ fun! netrwSettings#NetrwSettings()
|
||||
put = 'let g:netrw_localmkdiropt = '.g:netrw_localmkdiropt
|
||||
put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
|
||||
put = 'let g:netrw_localmovecmdopt = '.g:netrw_localmovecmdopt
|
||||
put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir
|
||||
put = 'let g:netrw_localrmdiropt = '.g:netrw_localrmdiropt
|
||||
put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
|
||||
put = 'let g:netrw_menu = '.g:netrw_menu
|
||||
put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim support file to help with paste mappings and menus
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 Jan 27
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Define the string to use for items that are present both in Edit, Popup and
|
||||
" Toolbar menu. Also used in mswin.vim and macmap.vim.
|
||||
|
||||
@@ -22,8 +22,7 @@ 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},
|
||||
\ ->indexof({_, id -> synIDattr(id, 'name') =~ '\%(Comment\|Todo\|String\)$'}) >= 0},
|
||||
\ [0, a:fromlnum - s:maxoff]->max(), g:python_indent.searchpair_timeout)
|
||||
endfunction
|
||||
|
||||
@@ -157,15 +156,13 @@ function python#GetIndent(lnum, ...)
|
||||
" 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
|
||||
\ ->indexof({_, id -> synIDattr(id, 'name') =~ '\%(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
|
||||
\ ->indexof({_, id -> synIDattr(id, 'name') =~ '\%(Comment\|Todo\)$'}) >= 0
|
||||
let max = col
|
||||
else
|
||||
let min = col + 1
|
||||
|
||||
@@ -1,207 +1,258 @@
|
||||
" Author: Kevin Ballard
|
||||
" Description: Helper functions for Rust commands/mappings
|
||||
" Last Modified: May 27, 2014
|
||||
" Last Modified: 2023-09-11
|
||||
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
|
||||
|
||||
function! rust#Load()
|
||||
" Utility call to get this script loaded, for debugging
|
||||
endfunction
|
||||
|
||||
function! rust#GetConfigVar(name, default)
|
||||
" Local buffer variable with same name takes predeence over global
|
||||
if has_key(b:, a:name)
|
||||
return get(b:, a:name)
|
||||
endif
|
||||
if has_key(g:, a:name)
|
||||
return get(g:, a:name)
|
||||
endif
|
||||
return a:default
|
||||
endfunction
|
||||
|
||||
" Include expression {{{1
|
||||
|
||||
function! rust#IncludeExpr(fname) abort
|
||||
" Remove leading 'crate::' to deal with 2018 edition style 'use'
|
||||
" statements
|
||||
let l:fname = substitute(a:fname, '^crate::', '', '')
|
||||
|
||||
" Remove trailing colons arising from lines like
|
||||
"
|
||||
" use foo::{Bar, Baz};
|
||||
let l:fname = substitute(l:fname, ':\+$', '', '')
|
||||
|
||||
" Replace '::' with '/'
|
||||
let l:fname = substitute(l:fname, '::', '/', 'g')
|
||||
|
||||
" When we have
|
||||
"
|
||||
" use foo::bar::baz;
|
||||
"
|
||||
" we can't tell whether baz is a module or a function; and we can't tell
|
||||
" which modules correspond to files.
|
||||
"
|
||||
" So we work our way up, trying
|
||||
"
|
||||
" foo/bar/baz.rs
|
||||
" foo/bar.rs
|
||||
" foo.rs
|
||||
while l:fname !=# '.'
|
||||
let l:path = findfile(l:fname)
|
||||
if !empty(l:path)
|
||||
return l:fname
|
||||
endif
|
||||
let l:fname = fnamemodify(l:fname, ':h')
|
||||
endwhile
|
||||
return l:fname
|
||||
endfunction
|
||||
|
||||
" Jump {{{1
|
||||
|
||||
function! rust#Jump(mode, function) range
|
||||
let cnt = v:count1
|
||||
normal! m'
|
||||
if a:mode ==# 'v'
|
||||
norm! gv
|
||||
endif
|
||||
let foldenable = &foldenable
|
||||
set nofoldenable
|
||||
while cnt > 0
|
||||
execute "call <SID>Jump_" . a:function . "()"
|
||||
let cnt = cnt - 1
|
||||
endwhile
|
||||
let &foldenable = foldenable
|
||||
let cnt = v:count1
|
||||
normal! m'
|
||||
if a:mode ==# 'v'
|
||||
norm! gv
|
||||
endif
|
||||
let foldenable = &foldenable
|
||||
set nofoldenable
|
||||
while cnt > 0
|
||||
execute "call <SID>Jump_" . a:function . "()"
|
||||
let cnt = cnt - 1
|
||||
endwhile
|
||||
let &foldenable = foldenable
|
||||
endfunction
|
||||
|
||||
function! s:Jump_Back()
|
||||
call search('{', 'b')
|
||||
keepjumps normal! w99[{
|
||||
call search('{', 'b')
|
||||
keepjumps normal! w99[{
|
||||
endfunction
|
||||
|
||||
function! s:Jump_Forward()
|
||||
normal! j0
|
||||
call search('{', 'b')
|
||||
keepjumps normal! w99[{%
|
||||
call search('{')
|
||||
normal! j0
|
||||
call search('{', 'b')
|
||||
keepjumps normal! w99[{%
|
||||
call search('{')
|
||||
endfunction
|
||||
|
||||
" Run {{{1
|
||||
|
||||
function! rust#Run(bang, args)
|
||||
let args = s:ShellTokenize(a:args)
|
||||
if a:bang
|
||||
let idx = index(l:args, '--')
|
||||
if idx != -1
|
||||
let rustc_args = idx == 0 ? [] : l:args[:idx-1]
|
||||
let args = l:args[idx+1:]
|
||||
else
|
||||
let rustc_args = l:args
|
||||
let args = []
|
||||
endif
|
||||
else
|
||||
let rustc_args = []
|
||||
endif
|
||||
let args = s:ShellTokenize(a:args)
|
||||
if a:bang
|
||||
let idx = index(l:args, '--')
|
||||
if idx != -1
|
||||
let rustc_args = idx == 0 ? [] : l:args[:idx-1]
|
||||
let args = l:args[idx+1:]
|
||||
else
|
||||
let rustc_args = l:args
|
||||
let args = []
|
||||
endif
|
||||
else
|
||||
let rustc_args = []
|
||||
endif
|
||||
|
||||
let b:rust_last_rustc_args = l:rustc_args
|
||||
let b:rust_last_args = l:args
|
||||
let b:rust_last_rustc_args = l:rustc_args
|
||||
let b:rust_last_args = l:args
|
||||
|
||||
call s:WithPath(function("s:Run"), rustc_args, args)
|
||||
call s:WithPath(function("s:Run"), rustc_args, args)
|
||||
endfunction
|
||||
|
||||
function! s:Run(dict, rustc_args, args)
|
||||
let exepath = a:dict.tmpdir.'/'.fnamemodify(a:dict.path, ':t:r')
|
||||
if has('win32')
|
||||
let exepath .= '.exe'
|
||||
endif
|
||||
let exepath = a:dict.tmpdir.'/'.fnamemodify(a:dict.path, ':t:r')
|
||||
if has('win32')
|
||||
let exepath .= '.exe'
|
||||
endif
|
||||
|
||||
let relpath = get(a:dict, 'tmpdir_relpath', a:dict.path)
|
||||
let rustc_args = [relpath, '-o', exepath] + a:rustc_args
|
||||
let relpath = get(a:dict, 'tmpdir_relpath', a:dict.path)
|
||||
let rustc_args = [relpath, '-o', exepath] + a:rustc_args
|
||||
|
||||
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
|
||||
let pwd = a:dict.istemp ? a:dict.tmpdir : ''
|
||||
let output = s:system(pwd, shellescape(rustc) . " " . join(map(rustc_args, 'shellescape(v:val)')))
|
||||
if output != ''
|
||||
echohl WarningMsg
|
||||
echo output
|
||||
echohl None
|
||||
endif
|
||||
if !v:shell_error
|
||||
exe '!' . shellescape(exepath) . " " . join(map(a:args, 'shellescape(v:val)'))
|
||||
endif
|
||||
let pwd = a:dict.istemp ? a:dict.tmpdir : ''
|
||||
let output = s:system(pwd, shellescape(rustc) . " " . join(map(rustc_args, 'shellescape(v:val)')))
|
||||
if output !=# ''
|
||||
echohl WarningMsg
|
||||
echo output
|
||||
echohl None
|
||||
endif
|
||||
if !v:shell_error
|
||||
exe '!' . shellescape(exepath) . " " . join(map(a:args, 'shellescape(v:val)'))
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Expand {{{1
|
||||
|
||||
function! rust#Expand(bang, args)
|
||||
let args = s:ShellTokenize(a:args)
|
||||
if a:bang && !empty(l:args)
|
||||
let pretty = remove(l:args, 0)
|
||||
else
|
||||
let pretty = "expanded"
|
||||
endif
|
||||
call s:WithPath(function("s:Expand"), pretty, args)
|
||||
let args = s:ShellTokenize(a:args)
|
||||
if a:bang && !empty(l:args)
|
||||
let pretty = remove(l:args, 0)
|
||||
else
|
||||
let pretty = "expanded"
|
||||
endif
|
||||
call s:WithPath(function("s:Expand"), pretty, args)
|
||||
endfunction
|
||||
|
||||
function! s:Expand(dict, pretty, args)
|
||||
try
|
||||
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
try
|
||||
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
|
||||
if a:pretty =~? '^\%(everybody_loops$\|flowgraph=\)'
|
||||
let flag = '--xpretty'
|
||||
else
|
||||
let flag = '--pretty'
|
||||
endif
|
||||
let relpath = get(a:dict, 'tmpdir_relpath', a:dict.path)
|
||||
let args = [relpath, '-Z', 'unstable-options', l:flag, a:pretty] + a:args
|
||||
let pwd = a:dict.istemp ? a:dict.tmpdir : ''
|
||||
let output = s:system(pwd, shellescape(rustc) . " " . join(map(args, 'shellescape(v:val)')))
|
||||
if v:shell_error
|
||||
echohl WarningMsg
|
||||
echo output
|
||||
echohl None
|
||||
else
|
||||
new
|
||||
silent put =output
|
||||
1
|
||||
d
|
||||
setl filetype=rust
|
||||
setl buftype=nofile
|
||||
setl bufhidden=hide
|
||||
setl noswapfile
|
||||
" give the buffer a nice name
|
||||
let suffix = 1
|
||||
let basename = fnamemodify(a:dict.path, ':t:r')
|
||||
while 1
|
||||
let bufname = basename
|
||||
if suffix > 1 | let bufname .= ' ('.suffix.')' | endif
|
||||
let bufname .= '.pretty.rs'
|
||||
if bufexists(bufname)
|
||||
let suffix += 1
|
||||
continue
|
||||
endif
|
||||
exe 'silent noautocmd keepalt file' fnameescape(bufname)
|
||||
break
|
||||
endwhile
|
||||
endif
|
||||
endtry
|
||||
if a:pretty =~? '^\%(everybody_loops$\|flowgraph=\)'
|
||||
let flag = '--xpretty'
|
||||
else
|
||||
let flag = '--pretty'
|
||||
endif
|
||||
let relpath = get(a:dict, 'tmpdir_relpath', a:dict.path)
|
||||
let args = [relpath, '-Z', 'unstable-options', l:flag, a:pretty] + a:args
|
||||
let pwd = a:dict.istemp ? a:dict.tmpdir : ''
|
||||
let output = s:system(pwd, shellescape(rustc) . " " . join(map(args, 'shellescape(v:val)')))
|
||||
if v:shell_error
|
||||
echohl WarningMsg
|
||||
echo output
|
||||
echohl None
|
||||
else
|
||||
new
|
||||
silent put =output
|
||||
1
|
||||
d
|
||||
setl filetype=rust
|
||||
setl buftype=nofile
|
||||
setl bufhidden=hide
|
||||
setl noswapfile
|
||||
" give the buffer a nice name
|
||||
let suffix = 1
|
||||
let basename = fnamemodify(a:dict.path, ':t:r')
|
||||
while 1
|
||||
let bufname = basename
|
||||
if suffix > 1 | let bufname .= ' ('.suffix.')' | endif
|
||||
let bufname .= '.pretty.rs'
|
||||
if bufexists(bufname)
|
||||
let suffix += 1
|
||||
continue
|
||||
endif
|
||||
exe 'silent noautocmd keepalt file' fnameescape(bufname)
|
||||
break
|
||||
endwhile
|
||||
endif
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
function! rust#CompleteExpand(lead, line, pos)
|
||||
if a:line[: a:pos-1] =~ '^RustExpand!\s*\S*$'
|
||||
" first argument and it has a !
|
||||
let list = ["normal", "expanded", "typed", "expanded,identified", "flowgraph=", "everybody_loops"]
|
||||
if !empty(a:lead)
|
||||
call filter(list, "v:val[:len(a:lead)-1] == a:lead")
|
||||
endif
|
||||
return list
|
||||
endif
|
||||
if a:line[: a:pos-1] =~# '^RustExpand!\s*\S*$'
|
||||
" first argument and it has a !
|
||||
let list = ["normal", "expanded", "typed", "expanded,identified", "flowgraph=", "everybody_loops"]
|
||||
if !empty(a:lead)
|
||||
call filter(list, "v:val[:len(a:lead)-1] == a:lead")
|
||||
endif
|
||||
return list
|
||||
endif
|
||||
|
||||
return glob(escape(a:lead, "*?[") . '*', 0, 1)
|
||||
return glob(escape(a:lead, "*?[") . '*', 0, 1)
|
||||
endfunction
|
||||
|
||||
" Emit {{{1
|
||||
|
||||
function! rust#Emit(type, args)
|
||||
let args = s:ShellTokenize(a:args)
|
||||
call s:WithPath(function("s:Emit"), a:type, args)
|
||||
let args = s:ShellTokenize(a:args)
|
||||
call s:WithPath(function("s:Emit"), a:type, args)
|
||||
endfunction
|
||||
|
||||
function! s:Emit(dict, type, args)
|
||||
try
|
||||
let output_path = a:dict.tmpdir.'/output'
|
||||
try
|
||||
let output_path = a:dict.tmpdir.'/output'
|
||||
|
||||
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
|
||||
let relpath = get(a:dict, 'tmpdir_relpath', a:dict.path)
|
||||
let args = [relpath, '--emit', a:type, '-o', output_path] + a:args
|
||||
let pwd = a:dict.istemp ? a:dict.tmpdir : ''
|
||||
let output = s:system(pwd, shellescape(rustc) . " " . join(map(args, 'shellescape(v:val)')))
|
||||
if output != ''
|
||||
echohl WarningMsg
|
||||
echo output
|
||||
echohl None
|
||||
endif
|
||||
if !v:shell_error
|
||||
new
|
||||
exe 'silent keepalt read' fnameescape(output_path)
|
||||
1
|
||||
d
|
||||
if a:type == "llvm-ir"
|
||||
setl filetype=llvm
|
||||
let extension = 'll'
|
||||
elseif a:type == "asm"
|
||||
setl filetype=asm
|
||||
let extension = 's'
|
||||
endif
|
||||
setl buftype=nofile
|
||||
setl bufhidden=hide
|
||||
setl noswapfile
|
||||
if exists('l:extension')
|
||||
" give the buffer a nice name
|
||||
let suffix = 1
|
||||
let basename = fnamemodify(a:dict.path, ':t:r')
|
||||
while 1
|
||||
let bufname = basename
|
||||
if suffix > 1 | let bufname .= ' ('.suffix.')' | endif
|
||||
let bufname .= '.'.extension
|
||||
if bufexists(bufname)
|
||||
let suffix += 1
|
||||
continue
|
||||
endif
|
||||
exe 'silent noautocmd keepalt file' fnameescape(bufname)
|
||||
break
|
||||
endwhile
|
||||
endif
|
||||
endif
|
||||
endtry
|
||||
let relpath = get(a:dict, 'tmpdir_relpath', a:dict.path)
|
||||
let args = [relpath, '--emit', a:type, '-o', output_path] + a:args
|
||||
let pwd = a:dict.istemp ? a:dict.tmpdir : ''
|
||||
let output = s:system(pwd, shellescape(rustc) . " " . join(map(args, 'shellescape(v:val)')))
|
||||
if output !=# ''
|
||||
echohl WarningMsg
|
||||
echo output
|
||||
echohl None
|
||||
endif
|
||||
if !v:shell_error
|
||||
new
|
||||
exe 'silent keepalt read' fnameescape(output_path)
|
||||
1
|
||||
d
|
||||
if a:type ==# "llvm-ir"
|
||||
setl filetype=llvm
|
||||
let extension = 'll'
|
||||
elseif a:type ==# "asm"
|
||||
setl filetype=asm
|
||||
let extension = 's'
|
||||
endif
|
||||
setl buftype=nofile
|
||||
setl bufhidden=hide
|
||||
setl noswapfile
|
||||
if exists('l:extension')
|
||||
" give the buffer a nice name
|
||||
let suffix = 1
|
||||
let basename = fnamemodify(a:dict.path, ':t:r')
|
||||
while 1
|
||||
let bufname = basename
|
||||
if suffix > 1 | let bufname .= ' ('.suffix.')' | endif
|
||||
let bufname .= '.'.extension
|
||||
if bufexists(bufname)
|
||||
let suffix += 1
|
||||
continue
|
||||
endif
|
||||
exe 'silent noautocmd keepalt file' fnameescape(bufname)
|
||||
break
|
||||
endwhile
|
||||
endif
|
||||
endif
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
" Utility functions {{{1
|
||||
@@ -219,145 +270,154 @@ endfunction
|
||||
" existing path of the current buffer. If the path is inside of {dict.tmpdir}
|
||||
" then it is guaranteed to have a '.rs' extension.
|
||||
function! s:WithPath(func, ...)
|
||||
let buf = bufnr('')
|
||||
let saved = {}
|
||||
let dict = {}
|
||||
try
|
||||
let saved.write = &write
|
||||
set write
|
||||
let dict.path = expand('%')
|
||||
let pathisempty = empty(dict.path)
|
||||
let buf = bufnr('')
|
||||
let saved = {}
|
||||
let dict = {}
|
||||
try
|
||||
let saved.write = &write
|
||||
set write
|
||||
let dict.path = expand('%')
|
||||
let pathisempty = empty(dict.path)
|
||||
|
||||
" Always create a tmpdir in case the wrapped command wants it
|
||||
let dict.tmpdir = tempname()
|
||||
call mkdir(dict.tmpdir)
|
||||
" Always create a tmpdir in case the wrapped command wants it
|
||||
let dict.tmpdir = tempname()
|
||||
call mkdir(dict.tmpdir)
|
||||
|
||||
if pathisempty || !saved.write
|
||||
let dict.istemp = 1
|
||||
" if we're doing this because of nowrite, preserve the filename
|
||||
if !pathisempty
|
||||
let filename = expand('%:t:r').".rs"
|
||||
else
|
||||
let filename = 'unnamed.rs'
|
||||
endif
|
||||
let dict.tmpdir_relpath = filename
|
||||
let dict.path = dict.tmpdir.'/'.filename
|
||||
if pathisempty || !saved.write
|
||||
let dict.istemp = 1
|
||||
" if we're doing this because of nowrite, preserve the filename
|
||||
if !pathisempty
|
||||
let filename = expand('%:t:r').".rs"
|
||||
else
|
||||
let filename = 'unnamed.rs'
|
||||
endif
|
||||
let dict.tmpdir_relpath = filename
|
||||
let dict.path = dict.tmpdir.'/'.filename
|
||||
|
||||
let saved.mod = &mod
|
||||
set nomod
|
||||
let saved.mod = &modified
|
||||
set nomodified
|
||||
|
||||
silent exe 'keepalt write! ' . fnameescape(dict.path)
|
||||
if pathisempty
|
||||
silent keepalt 0file
|
||||
endif
|
||||
else
|
||||
let dict.istemp = 0
|
||||
update
|
||||
endif
|
||||
silent exe 'keepalt write! ' . fnameescape(dict.path)
|
||||
if pathisempty
|
||||
silent keepalt 0file
|
||||
endif
|
||||
else
|
||||
let dict.istemp = 0
|
||||
update
|
||||
endif
|
||||
|
||||
call call(a:func, [dict] + a:000)
|
||||
finally
|
||||
if bufexists(buf)
|
||||
for [opt, value] in items(saved)
|
||||
silent call setbufvar(buf, '&'.opt, value)
|
||||
unlet value " avoid variable type mismatches
|
||||
endfor
|
||||
endif
|
||||
if has_key(dict, 'tmpdir') | silent call s:RmDir(dict.tmpdir) | endif
|
||||
endtry
|
||||
call call(a:func, [dict] + a:000)
|
||||
finally
|
||||
if bufexists(buf)
|
||||
for [opt, value] in items(saved)
|
||||
silent call setbufvar(buf, '&'.opt, value)
|
||||
unlet value " avoid variable type mismatches
|
||||
endfor
|
||||
endif
|
||||
if has_key(dict, 'tmpdir') | silent call s:RmDir(dict.tmpdir) | endif
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
function! rust#AppendCmdLine(text)
|
||||
call setcmdpos(getcmdpos())
|
||||
let cmd = getcmdline() . a:text
|
||||
return cmd
|
||||
call setcmdpos(getcmdpos())
|
||||
let cmd = getcmdline() . a:text
|
||||
return cmd
|
||||
endfunction
|
||||
|
||||
" Tokenize the string according to sh parsing rules
|
||||
function! s:ShellTokenize(text)
|
||||
" states:
|
||||
" 0: start of word
|
||||
" 1: unquoted
|
||||
" 2: unquoted backslash
|
||||
" 3: double-quote
|
||||
" 4: double-quoted backslash
|
||||
" 5: single-quote
|
||||
let l:state = 0
|
||||
let l:current = ''
|
||||
let l:args = []
|
||||
for c in split(a:text, '\zs')
|
||||
if l:state == 0 || l:state == 1 " unquoted
|
||||
if l:c ==# ' '
|
||||
if l:state == 0 | continue | endif
|
||||
call add(l:args, l:current)
|
||||
let l:current = ''
|
||||
let l:state = 0
|
||||
elseif l:c ==# '\'
|
||||
let l:state = 2
|
||||
elseif l:c ==# '"'
|
||||
let l:state = 3
|
||||
elseif l:c ==# "'"
|
||||
let l:state = 5
|
||||
else
|
||||
let l:current .= l:c
|
||||
let l:state = 1
|
||||
endif
|
||||
elseif l:state == 2 " unquoted backslash
|
||||
if l:c !=# "\n" " can it even be \n?
|
||||
let l:current .= l:c
|
||||
endif
|
||||
let l:state = 1
|
||||
elseif l:state == 3 " double-quote
|
||||
if l:c ==# '\'
|
||||
let l:state = 4
|
||||
elseif l:c ==# '"'
|
||||
let l:state = 1
|
||||
else
|
||||
let l:current .= l:c
|
||||
endif
|
||||
elseif l:state == 4 " double-quoted backslash
|
||||
if stridx('$`"\', l:c) >= 0
|
||||
let l:current .= l:c
|
||||
elseif l:c ==# "\n" " is this even possible?
|
||||
" skip it
|
||||
else
|
||||
let l:current .= '\'.l:c
|
||||
endif
|
||||
let l:state = 3
|
||||
elseif l:state == 5 " single-quoted
|
||||
if l:c == "'"
|
||||
let l:state = 1
|
||||
else
|
||||
let l:current .= l:c
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
if l:state != 0
|
||||
call add(l:args, l:current)
|
||||
endif
|
||||
return l:args
|
||||
" states:
|
||||
" 0: start of word
|
||||
" 1: unquoted
|
||||
" 2: unquoted backslash
|
||||
" 3: double-quote
|
||||
" 4: double-quoted backslash
|
||||
" 5: single-quote
|
||||
let l:state = 0
|
||||
let l:current = ''
|
||||
let l:args = []
|
||||
for c in split(a:text, '\zs')
|
||||
if l:state == 0 || l:state == 1 " unquoted
|
||||
if l:c ==# ' '
|
||||
if l:state == 0 | continue | endif
|
||||
call add(l:args, l:current)
|
||||
let l:current = ''
|
||||
let l:state = 0
|
||||
elseif l:c ==# '\'
|
||||
let l:state = 2
|
||||
elseif l:c ==# '"'
|
||||
let l:state = 3
|
||||
elseif l:c ==# "'"
|
||||
let l:state = 5
|
||||
else
|
||||
let l:current .= l:c
|
||||
let l:state = 1
|
||||
endif
|
||||
elseif l:state == 2 " unquoted backslash
|
||||
if l:c !=# "\n" " can it even be \n?
|
||||
let l:current .= l:c
|
||||
endif
|
||||
let l:state = 1
|
||||
elseif l:state == 3 " double-quote
|
||||
if l:c ==# '\'
|
||||
let l:state = 4
|
||||
elseif l:c ==# '"'
|
||||
let l:state = 1
|
||||
else
|
||||
let l:current .= l:c
|
||||
endif
|
||||
elseif l:state == 4 " double-quoted backslash
|
||||
if stridx('$`"\', l:c) >= 0
|
||||
let l:current .= l:c
|
||||
elseif l:c ==# "\n" " is this even possible?
|
||||
" skip it
|
||||
else
|
||||
let l:current .= '\'.l:c
|
||||
endif
|
||||
let l:state = 3
|
||||
elseif l:state == 5 " single-quoted
|
||||
if l:c ==# "'"
|
||||
let l:state = 1
|
||||
else
|
||||
let l:current .= l:c
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
if l:state != 0
|
||||
call add(l:args, l:current)
|
||||
endif
|
||||
return l:args
|
||||
endfunction
|
||||
|
||||
function! s:RmDir(path)
|
||||
" sanity check; make sure it's not empty, /, or $HOME
|
||||
if empty(a:path)
|
||||
echoerr 'Attempted to delete empty path'
|
||||
return 0
|
||||
elseif a:path == '/' || a:path == $HOME
|
||||
echoerr 'Attempted to delete protected path: ' . a:path
|
||||
return 0
|
||||
endif
|
||||
return system("rm -rf " . shellescape(a:path))
|
||||
" sanity check; make sure it's not empty, /, or $HOME
|
||||
if empty(a:path)
|
||||
echoerr 'Attempted to delete empty path'
|
||||
return 0
|
||||
elseif a:path ==# '/' || a:path ==# $HOME
|
||||
let l:path = expand(a:path)
|
||||
if l:path ==# '/' || l:path ==# $HOME
|
||||
echoerr 'Attempted to delete protected path: ' . a:path
|
||||
return 0
|
||||
endif
|
||||
endif
|
||||
|
||||
if !isdirectory(a:path)
|
||||
return 0
|
||||
endif
|
||||
|
||||
" delete() returns 0 when removing file successfully
|
||||
return delete(a:path, 'rf') == 0
|
||||
endfunction
|
||||
|
||||
" Executes {cmd} with the cwd set to {pwd}, without changing Vim's cwd.
|
||||
" If {pwd} is the empty string then it doesn't change the cwd.
|
||||
function! s:system(pwd, cmd)
|
||||
let cmd = a:cmd
|
||||
if !empty(a:pwd)
|
||||
let cmd = 'cd ' . shellescape(a:pwd) . ' && ' . cmd
|
||||
endif
|
||||
return system(cmd)
|
||||
let cmd = a:cmd
|
||||
if !empty(a:pwd)
|
||||
let cmd = 'cd ' . shellescape(a:pwd) . ' && ' . cmd
|
||||
endif
|
||||
return system(cmd)
|
||||
endfunction
|
||||
|
||||
" Playpen Support {{{1
|
||||
@@ -366,10 +426,10 @@ endfunction
|
||||
" http://github.com/mattn/gist-vim
|
||||
function! s:has_webapi()
|
||||
if !exists("*webapi#http#post")
|
||||
try
|
||||
call webapi#http#post()
|
||||
catch
|
||||
endtry
|
||||
try
|
||||
call webapi#http#post()
|
||||
catch
|
||||
endtry
|
||||
endif
|
||||
return exists("*webapi#http#post")
|
||||
endfunction
|
||||
@@ -381,35 +441,130 @@ function! rust#Play(count, line1, line2, ...) abort
|
||||
let l:rust_shortener_url = get(g:, 'rust_shortener_url', 'https://is.gd/')
|
||||
|
||||
if !s:has_webapi()
|
||||
echohl ErrorMsg | echomsg ':RustPlay depends on webapi.vim (https://github.com/mattn/webapi-vim)' | echohl None
|
||||
return
|
||||
echohl ErrorMsg | echomsg ':RustPlay depends on webapi.vim (https://github.com/mattn/webapi-vim)' | echohl None
|
||||
return
|
||||
endif
|
||||
|
||||
let bufname = bufname('%')
|
||||
if a:count < 1
|
||||
let content = join(getline(a:line1, a:line2), "\n")
|
||||
let content = join(getline(a:line1, a:line2), "\n")
|
||||
else
|
||||
let save_regcont = @"
|
||||
let save_regtype = getregtype('"')
|
||||
silent! normal! gvy
|
||||
let content = @"
|
||||
call setreg('"', save_regcont, save_regtype)
|
||||
let save_regcont = @"
|
||||
let save_regtype = getregtype('"')
|
||||
silent! normal! gvy
|
||||
let content = @"
|
||||
call setreg('"', save_regcont, save_regtype)
|
||||
endif
|
||||
|
||||
let body = l:rust_playpen_url."?code=".webapi#http#encodeURI(content)
|
||||
let url = l:rust_playpen_url."?code=".webapi#http#encodeURI(content)
|
||||
|
||||
if strlen(body) > 5000
|
||||
echohl ErrorMsg | echomsg 'Buffer too large, max 5000 encoded characters ('.strlen(body).')' | echohl None
|
||||
return
|
||||
if strlen(url) > 5000
|
||||
echohl ErrorMsg | echomsg 'Buffer too large, max 5000 encoded characters ('.strlen(url).')' | echohl None
|
||||
return
|
||||
endif
|
||||
|
||||
let payload = "format=simple&url=".webapi#http#encodeURI(body)
|
||||
let payload = "format=simple&url=".webapi#http#encodeURI(url)
|
||||
let res = webapi#http#post(l:rust_shortener_url.'create.php', payload, {})
|
||||
let url = res.content
|
||||
if res.status[0] ==# '2'
|
||||
let url = res.content
|
||||
endif
|
||||
|
||||
redraw | echomsg 'Done: '.url
|
||||
let footer = ''
|
||||
if exists('g:rust_clip_command')
|
||||
call system(g:rust_clip_command, url)
|
||||
if !v:shell_error
|
||||
let footer = ' (copied to clipboard)'
|
||||
endif
|
||||
endif
|
||||
redraw | echomsg 'Done: '.url.footer
|
||||
endfunction
|
||||
|
||||
" Run a test under the cursor or all tests {{{1
|
||||
|
||||
" Finds a test function name under the cursor. Returns empty string when a
|
||||
" test function is not found.
|
||||
function! s:SearchTestFunctionNameUnderCursor() abort
|
||||
let cursor_line = line('.')
|
||||
|
||||
" Find #[test] attribute
|
||||
if search('\m\C#\[test\]', 'bcW') is 0
|
||||
return ''
|
||||
endif
|
||||
|
||||
" Move to an opening brace of the test function
|
||||
let test_func_line = search('\m\C^\s*fn\s\+\h\w*\s*(.\+{$', 'eW')
|
||||
if test_func_line is 0
|
||||
return ''
|
||||
endif
|
||||
|
||||
" Search the end of test function (closing brace) to ensure that the
|
||||
" cursor position is within function definition
|
||||
if maparg('<Plug>(MatchitNormalForward)') ==# ''
|
||||
keepjumps normal! %
|
||||
else
|
||||
" Prefer matchit.vim official plugin to native % since the plugin
|
||||
" provides better behavior than original % (#391)
|
||||
" To load the plugin, run:
|
||||
" :packadd matchit
|
||||
execute 'keepjumps' 'normal' "\<Plug>(MatchitNormalForward)"
|
||||
endif
|
||||
if line('.') < cursor_line
|
||||
return ''
|
||||
endif
|
||||
|
||||
return matchstr(getline(test_func_line), '\m\C^\s*fn\s\+\zs\h\w*')
|
||||
endfunction
|
||||
|
||||
function! rust#Test(mods, winsize, all, options) abort
|
||||
let manifest = findfile('Cargo.toml', expand('%:p:h') . ';')
|
||||
if manifest ==# ''
|
||||
return rust#Run(1, '--test ' . a:options)
|
||||
endif
|
||||
|
||||
" <count> defaults to 0, but we prefer an empty string
|
||||
let winsize = a:winsize ? a:winsize : ''
|
||||
|
||||
if has('terminal')
|
||||
if has('patch-8.0.910')
|
||||
let cmd = printf('%s noautocmd %snew | terminal ++curwin ', a:mods, winsize)
|
||||
else
|
||||
let cmd = printf('%s terminal ', a:mods)
|
||||
endif
|
||||
elseif has('nvim')
|
||||
let cmd = printf('%s noautocmd %snew | terminal ', a:mods, winsize)
|
||||
else
|
||||
let cmd = '!'
|
||||
let manifest = shellescape(manifest)
|
||||
endif
|
||||
|
||||
if a:all
|
||||
if a:options ==# ''
|
||||
execute cmd . 'cargo test --manifest-path' manifest
|
||||
else
|
||||
execute cmd . 'cargo test --manifest-path' manifest a:options
|
||||
endif
|
||||
return
|
||||
endif
|
||||
|
||||
let saved = getpos('.')
|
||||
try
|
||||
let func_name = s:SearchTestFunctionNameUnderCursor()
|
||||
finally
|
||||
call setpos('.', saved)
|
||||
endtry
|
||||
if func_name ==# ''
|
||||
echohl ErrorMsg
|
||||
echomsg 'No test function was found under the cursor. Please add ! to command if you want to run all tests'
|
||||
echohl None
|
||||
return
|
||||
endif
|
||||
if a:options ==# ''
|
||||
execute cmd . 'cargo test --manifest-path' manifest func_name
|
||||
else
|
||||
execute cmd . 'cargo test --manifest-path' manifest func_name a:options
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" }}}1
|
||||
|
||||
" vim: set noet sw=8 ts=8:
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
|
||||
105
runtime/autoload/rust/debugging.vim
Normal file
105
runtime/autoload/rust/debugging.vim
Normal file
@@ -0,0 +1,105 @@
|
||||
" Last Modified: 2023-09-11
|
||||
|
||||
" For debugging, inspired by https://github.com/w0rp/rust/blob/master/autoload/rust/debugging.vim
|
||||
|
||||
let s:global_variable_list = [
|
||||
\ '_rustfmt_autosave_because_of_config',
|
||||
\ 'ftplugin_rust_source_path',
|
||||
\ 'loaded_syntastic_rust_cargo_checker',
|
||||
\ 'loaded_syntastic_rust_filetype',
|
||||
\ 'loaded_syntastic_rust_rustc_checker',
|
||||
\ 'rust_bang_comment_leader',
|
||||
\ 'rust_cargo_avoid_whole_workspace',
|
||||
\ 'rust_clip_command',
|
||||
\ 'rust_conceal',
|
||||
\ 'rust_conceal_mod_path',
|
||||
\ 'rust_conceal_pub',
|
||||
\ 'rust_fold',
|
||||
\ 'rust_last_args',
|
||||
\ 'rust_last_rustc_args',
|
||||
\ 'rust_original_delimitMate_excluded_regions',
|
||||
\ 'rust_playpen_url',
|
||||
\ 'rust_prev_delimitMate_quotes',
|
||||
\ 'rust_recent_nearest_cargo_tol',
|
||||
\ 'rust_recent_root_cargo_toml',
|
||||
\ 'rust_recommended_style',
|
||||
\ 'rust_set_conceallevel',
|
||||
\ 'rust_set_conceallevel=1',
|
||||
\ 'rust_set_foldmethod',
|
||||
\ 'rust_set_foldmethod=1',
|
||||
\ 'rust_shortener_url',
|
||||
\ 'rustc_makeprg_no_percent',
|
||||
\ 'rustc_path',
|
||||
\ 'rustfmt_autosave',
|
||||
\ 'rustfmt_autosave_if_config_present',
|
||||
\ 'rustfmt_command',
|
||||
\ 'rustfmt_emit_files',
|
||||
\ 'rustfmt_fail_silently',
|
||||
\ 'rustfmt_options',
|
||||
\ 'syntastic_extra_filetypes',
|
||||
\ 'syntastic_rust_cargo_fname',
|
||||
\]
|
||||
|
||||
function! s:Echo(message) abort
|
||||
execute 'echo a:message'
|
||||
endfunction
|
||||
|
||||
function! s:EchoGlobalVariables() abort
|
||||
for l:key in s:global_variable_list
|
||||
if l:key !~# '^_'
|
||||
call s:Echo('let g:' . l:key . ' = ' . string(get(g:, l:key, v:null)))
|
||||
endif
|
||||
|
||||
if has_key(b:, l:key)
|
||||
call s:Echo('let b:' . l:key . ' = ' . string(b:[l:key]))
|
||||
endif
|
||||
endfor
|
||||
endfunction
|
||||
|
||||
function! rust#debugging#Info() abort
|
||||
call cargo#Load()
|
||||
call rust#Load()
|
||||
call rustfmt#Load()
|
||||
call s:Echo('rust.vim Global Variables:')
|
||||
call s:Echo('')
|
||||
call s:EchoGlobalVariables()
|
||||
|
||||
silent let l:output = system(g:rustfmt_command . ' --version')
|
||||
echo l:output
|
||||
|
||||
let l:rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||
silent let l:output = system(l:rustc . ' --version')
|
||||
echo l:output
|
||||
|
||||
silent let l:output = system('cargo --version')
|
||||
echo l:output
|
||||
|
||||
version
|
||||
|
||||
if exists(":SyntasticInfo")
|
||||
echo "----"
|
||||
echo "Info from Syntastic:"
|
||||
execute "SyntasticInfo"
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! rust#debugging#InfoToClipboard() abort
|
||||
redir @"
|
||||
silent call rust#debugging#Info()
|
||||
redir END
|
||||
|
||||
call s:Echo('RustInfo copied to your clipboard')
|
||||
endfunction
|
||||
|
||||
function! rust#debugging#InfoToFile(filename) abort
|
||||
let l:expanded_filename = expand(a:filename)
|
||||
|
||||
redir => l:output
|
||||
silent call rust#debugging#Info()
|
||||
redir END
|
||||
|
||||
call writefile(split(l:output, "\n"), l:expanded_filename)
|
||||
call s:Echo('RustInfo written to ' . l:expanded_filename)
|
||||
endfunction
|
||||
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
@@ -1,107 +1,261 @@
|
||||
" Author: Stephen Sugden <stephen@stephensugden.com>
|
||||
" Last Modified: 2023-09-11
|
||||
"
|
||||
" Adapted from https://github.com/fatih/vim-go
|
||||
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
|
||||
|
||||
if !exists("g:rustfmt_autosave")
|
||||
let g:rustfmt_autosave = 0
|
||||
let g:rustfmt_autosave = 0
|
||||
endif
|
||||
|
||||
if !exists("g:rustfmt_command")
|
||||
let g:rustfmt_command = "rustfmt"
|
||||
let g:rustfmt_command = "rustfmt"
|
||||
endif
|
||||
|
||||
if !exists("g:rustfmt_options")
|
||||
let g:rustfmt_options = ""
|
||||
let g:rustfmt_options = ""
|
||||
endif
|
||||
|
||||
if !exists("g:rustfmt_fail_silently")
|
||||
let g:rustfmt_fail_silently = 0
|
||||
let g:rustfmt_fail_silently = 0
|
||||
endif
|
||||
|
||||
function! rustfmt#DetectVersion()
|
||||
" Save rustfmt '--help' for feature inspection
|
||||
silent let s:rustfmt_help = system(g:rustfmt_command . " --help")
|
||||
let s:rustfmt_unstable_features = s:rustfmt_help =~# "--unstable-features"
|
||||
|
||||
" Build a comparable rustfmt version varible out of its `--version` output:
|
||||
silent let l:rustfmt_version_full = system(g:rustfmt_command . " --version")
|
||||
let l:rustfmt_version_list = matchlist(l:rustfmt_version_full,
|
||||
\ '\vrustfmt ([0-9]+[.][0-9]+[.][0-9]+)')
|
||||
if len(l:rustfmt_version_list) < 3
|
||||
let s:rustfmt_version = "0"
|
||||
else
|
||||
let s:rustfmt_version = l:rustfmt_version_list[1]
|
||||
endif
|
||||
return s:rustfmt_version
|
||||
endfunction
|
||||
|
||||
call rustfmt#DetectVersion()
|
||||
|
||||
if !exists("g:rustfmt_emit_files")
|
||||
let g:rustfmt_emit_files = s:rustfmt_version >= "0.8.2"
|
||||
endif
|
||||
|
||||
if !exists("g:rustfmt_file_lines")
|
||||
let g:rustfmt_file_lines = s:rustfmt_help =~# "--file-lines JSON"
|
||||
endif
|
||||
|
||||
let s:got_fmt_error = 0
|
||||
|
||||
function! rustfmt#Load()
|
||||
" Utility call to get this script loaded, for debugging
|
||||
endfunction
|
||||
|
||||
function! s:RustfmtWriteMode()
|
||||
if g:rustfmt_emit_files
|
||||
return "--emit=files"
|
||||
else
|
||||
return "--write-mode=overwrite"
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:RustfmtConfigOptions()
|
||||
let l:rustfmt_toml = findfile('rustfmt.toml', expand('%:p:h') . ';')
|
||||
if l:rustfmt_toml !=# ''
|
||||
return '--config-path '.shellescape(fnamemodify(l:rustfmt_toml, ":p"))
|
||||
endif
|
||||
|
||||
let l:_rustfmt_toml = findfile('.rustfmt.toml', expand('%:p:h') . ';')
|
||||
if l:_rustfmt_toml !=# ''
|
||||
return '--config-path '.shellescape(fnamemodify(l:_rustfmt_toml, ":p"))
|
||||
endif
|
||||
|
||||
" Default to edition 2018 in case no rustfmt.toml was found.
|
||||
return '--edition 2018'
|
||||
endfunction
|
||||
|
||||
function! s:RustfmtCommandRange(filename, line1, line2)
|
||||
let l:arg = {"file": shellescape(a:filename), "range": [a:line1, a:line2]}
|
||||
return printf("%s %s --write-mode=overwrite --file-lines '[%s]'", g:rustfmt_command, g:rustfmt_options, json_encode(l:arg))
|
||||
if g:rustfmt_file_lines == 0
|
||||
echo "--file-lines is not supported in the installed `rustfmt` executable"
|
||||
return
|
||||
endif
|
||||
|
||||
let l:arg = {"file": shellescape(a:filename), "range": [a:line1, a:line2]}
|
||||
let l:write_mode = s:RustfmtWriteMode()
|
||||
let l:rustfmt_config = s:RustfmtConfigOptions()
|
||||
|
||||
" FIXME: When --file-lines gets to be stable, add version range checking
|
||||
" accordingly.
|
||||
let l:unstable_features = s:rustfmt_unstable_features ? '--unstable-features' : ''
|
||||
|
||||
let l:cmd = printf("%s %s %s %s %s --file-lines '[%s]' %s", g:rustfmt_command,
|
||||
\ l:write_mode, g:rustfmt_options,
|
||||
\ l:unstable_features, l:rustfmt_config,
|
||||
\ json_encode(l:arg), shellescape(a:filename))
|
||||
return l:cmd
|
||||
endfunction
|
||||
|
||||
function! s:RustfmtCommand(filename)
|
||||
return g:rustfmt_command . " --write-mode=overwrite " . g:rustfmt_options . " " . shellescape(a:filename)
|
||||
function! s:RustfmtCommand()
|
||||
let write_mode = g:rustfmt_emit_files ? '--emit=stdout' : '--write-mode=display'
|
||||
let config = s:RustfmtConfigOptions()
|
||||
return join([g:rustfmt_command, write_mode, config, g:rustfmt_options])
|
||||
endfunction
|
||||
|
||||
function! s:RunRustfmt(command, curw, tmpname)
|
||||
if exists("*systemlist")
|
||||
let out = systemlist(a:command)
|
||||
else
|
||||
let out = split(system(a:command), '\r\?\n')
|
||||
endif
|
||||
function! s:DeleteLines(start, end) abort
|
||||
silent! execute a:start . ',' . a:end . 'delete _'
|
||||
endfunction
|
||||
|
||||
if v:shell_error == 0 || v:shell_error == 3
|
||||
" remove undo point caused via BufWritePre
|
||||
try | silent undojoin | catch | endtry
|
||||
function! s:RunRustfmt(command, tmpname, from_writepre)
|
||||
let l:view = winsaveview()
|
||||
|
||||
" Replace current file with temp file, then reload buffer
|
||||
call rename(a:tmpname, expand('%'))
|
||||
silent edit!
|
||||
let &syntax = &syntax
|
||||
let l:stderr_tmpname = tempname()
|
||||
call writefile([], l:stderr_tmpname)
|
||||
|
||||
" only clear location list if it was previously filled to prevent
|
||||
" clobbering other additions
|
||||
if s:got_fmt_error
|
||||
let s:got_fmt_error = 0
|
||||
call setloclist(0, [])
|
||||
lwindow
|
||||
endif
|
||||
elseif g:rustfmt_fail_silently == 0
|
||||
" otherwise get the errors and put them in the location list
|
||||
let errors = []
|
||||
let l:command = a:command . ' 2> ' . l:stderr_tmpname
|
||||
|
||||
for line in out
|
||||
" src/lib.rs:13:5: 13:10 error: expected `,`, or `}`, found `value`
|
||||
let tokens = matchlist(line, '^\(.\{-}\):\(\d\+\):\(\d\+\):\s*\(\d\+:\d\+\s*\)\?\s*error: \(.*\)')
|
||||
if !empty(tokens)
|
||||
call add(errors, {"filename": @%,
|
||||
\"lnum": tokens[2],
|
||||
\"col": tokens[3],
|
||||
\"text": tokens[5]})
|
||||
endif
|
||||
endfor
|
||||
if a:tmpname ==# ''
|
||||
" Rustfmt in stdin/stdout mode
|
||||
|
||||
if empty(errors)
|
||||
% | " Couldn't detect rustfmt error format, output errors
|
||||
endif
|
||||
" chdir to the directory of the file
|
||||
let l:has_lcd = haslocaldir()
|
||||
let l:prev_cd = getcwd()
|
||||
execute 'lchdir! '.expand('%:h')
|
||||
|
||||
if !empty(errors)
|
||||
call setloclist(0, errors, 'r')
|
||||
echohl Error | echomsg "rustfmt returned error" | echohl None
|
||||
endif
|
||||
let l:buffer = getline(1, '$')
|
||||
if exists("*systemlist")
|
||||
silent let out = systemlist(l:command, l:buffer)
|
||||
else
|
||||
silent let out = split(system(l:command,
|
||||
\ join(l:buffer, "\n")), '\r\?\n')
|
||||
endif
|
||||
else
|
||||
if exists("*systemlist")
|
||||
silent let out = systemlist(l:command)
|
||||
else
|
||||
silent let out = split(system(l:command), '\r\?\n')
|
||||
endif
|
||||
endif
|
||||
|
||||
let s:got_fmt_error = 1
|
||||
lwindow
|
||||
" We didn't use the temp file, so clean up
|
||||
call delete(a:tmpname)
|
||||
endif
|
||||
let l:stderr = readfile(l:stderr_tmpname)
|
||||
|
||||
call winrestview(a:curw)
|
||||
call delete(l:stderr_tmpname)
|
||||
|
||||
let l:open_lwindow = 0
|
||||
if v:shell_error == 0
|
||||
if a:from_writepre
|
||||
" remove undo point caused via BufWritePre
|
||||
try | silent undojoin | catch | endtry
|
||||
endif
|
||||
|
||||
if a:tmpname ==# ''
|
||||
let l:content = l:out
|
||||
else
|
||||
" take the tmpfile's content, this is better than rename
|
||||
" because it preserves file modes.
|
||||
let l:content = readfile(a:tmpname)
|
||||
endif
|
||||
|
||||
call s:DeleteLines(len(l:content), line('$'))
|
||||
call setline(1, l:content)
|
||||
|
||||
" only clear location list if it was previously filled to prevent
|
||||
" clobbering other additions
|
||||
if s:got_fmt_error
|
||||
let s:got_fmt_error = 0
|
||||
call setloclist(0, [])
|
||||
let l:open_lwindow = 1
|
||||
endif
|
||||
elseif g:rustfmt_fail_silently == 0 && !a:from_writepre
|
||||
" otherwise get the errors and put them in the location list
|
||||
let l:errors = []
|
||||
|
||||
let l:prev_line = ""
|
||||
for l:line in l:stderr
|
||||
" error: expected one of `;` or `as`, found `extern`
|
||||
" --> src/main.rs:2:1
|
||||
let tokens = matchlist(l:line, '^\s\+-->\s\(.\{-}\):\(\d\+\):\(\d\+\)$')
|
||||
if !empty(tokens)
|
||||
call add(l:errors, {"filename": @%,
|
||||
\"lnum": tokens[2],
|
||||
\"col": tokens[3],
|
||||
\"text": l:prev_line})
|
||||
endif
|
||||
let l:prev_line = l:line
|
||||
endfor
|
||||
|
||||
if !empty(l:errors)
|
||||
call setloclist(0, l:errors, 'r')
|
||||
echohl Error | echomsg "rustfmt returned error" | echohl None
|
||||
else
|
||||
echo "rust.vim: was not able to parse rustfmt messages. Here is the raw output:"
|
||||
echo "\n"
|
||||
for l:line in l:stderr
|
||||
echo l:line
|
||||
endfor
|
||||
endif
|
||||
|
||||
let s:got_fmt_error = 1
|
||||
let l:open_lwindow = 1
|
||||
endif
|
||||
|
||||
" Restore the current directory if needed
|
||||
if a:tmpname ==# ''
|
||||
if l:has_lcd
|
||||
execute 'lchdir! '.l:prev_cd
|
||||
else
|
||||
execute 'chdir! '.l:prev_cd
|
||||
endif
|
||||
endif
|
||||
|
||||
" Open lwindow after we have changed back to the previous directory
|
||||
if l:open_lwindow == 1
|
||||
lwindow
|
||||
endif
|
||||
|
||||
call winrestview(l:view)
|
||||
endfunction
|
||||
|
||||
function! rustfmt#FormatRange(line1, line2)
|
||||
let l:curw = winsaveview()
|
||||
let l:tmpname = expand("%:p:h") . "/." . expand("%:p:t") . ".rustfmt"
|
||||
call writefile(getline(1, '$'), l:tmpname)
|
||||
|
||||
let command = s:RustfmtCommandRange(l:tmpname, a:line1, a:line2)
|
||||
|
||||
call s:RunRustfmt(command, l:curw, l:tmpname)
|
||||
let l:tmpname = tempname()
|
||||
call writefile(getline(1, '$'), l:tmpname)
|
||||
let command = s:RustfmtCommandRange(l:tmpname, a:line1, a:line2)
|
||||
call s:RunRustfmt(command, l:tmpname, v:false)
|
||||
call delete(l:tmpname)
|
||||
endfunction
|
||||
|
||||
function! rustfmt#Format()
|
||||
let l:curw = winsaveview()
|
||||
let l:tmpname = expand("%:p:h") . "/." . expand("%:p:t") . ".rustfmt"
|
||||
call writefile(getline(1, '$'), l:tmpname)
|
||||
|
||||
let command = s:RustfmtCommand(l:tmpname)
|
||||
|
||||
call s:RunRustfmt(command, l:curw, l:tmpname)
|
||||
call s:RunRustfmt(s:RustfmtCommand(), '', v:false)
|
||||
endfunction
|
||||
|
||||
function! rustfmt#Cmd()
|
||||
" Mainly for debugging
|
||||
return s:RustfmtCommand()
|
||||
endfunction
|
||||
|
||||
function! rustfmt#PreWrite()
|
||||
if !filereadable(expand("%@"))
|
||||
return
|
||||
endif
|
||||
if rust#GetConfigVar('rustfmt_autosave_if_config_present', 0)
|
||||
if findfile('rustfmt.toml', '.;') !=# '' || findfile('.rustfmt.toml', '.;') !=# ''
|
||||
let b:rustfmt_autosave = 1
|
||||
let b:_rustfmt_autosave_because_of_config = 1
|
||||
endif
|
||||
else
|
||||
if has_key(b:, '_rustfmt_autosave_because_of_config')
|
||||
unlet b:_rustfmt_autosave_because_of_config
|
||||
unlet b:rustfmt_autosave
|
||||
endif
|
||||
endif
|
||||
|
||||
if !rust#GetConfigVar("rustfmt_autosave", 0)
|
||||
return
|
||||
endif
|
||||
|
||||
call s:RunRustfmt(s:RustfmtCommand(), '', v:true)
|
||||
endfunction
|
||||
|
||||
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim script to download a missing spell file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Jul 10
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if !exists('g:spellfile_URL')
|
||||
" Always use https:// because it's secure. The certificate is for nluug.nl,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim autoload file for the tohtml plugin.
|
||||
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
|
||||
" Last Change: 2019 Aug 16
|
||||
" Last Change: 2023 Sep 03
|
||||
"
|
||||
" Additional contributors:
|
||||
"
|
||||
@@ -307,7 +307,7 @@ func! tohtml#Convert2HTML(line1, line2) "{{{
|
||||
let g:html_diff_win_num = 0
|
||||
for window in win_list
|
||||
" switch to the next buffer to convert
|
||||
exe ":" . bufwinnr(window) . "wincmd w"
|
||||
exe ":" .. bufwinnr(window) .. "wincmd w"
|
||||
|
||||
" figure out whether current charset and encoding will work, if not
|
||||
" default to UTF-8
|
||||
@@ -351,68 +351,70 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
let s:old_magic = &magic
|
||||
set magic
|
||||
|
||||
if s:settings.use_xhtml
|
||||
if s:settings.encoding != ""
|
||||
let xml_line = "<?xml version=\"1.0\" encoding=\"" . s:settings.encoding . "\"?>"
|
||||
else
|
||||
let xml_line = "<?xml version=\"1.0\"?>"
|
||||
endif
|
||||
let tag_close = ' />'
|
||||
endif
|
||||
|
||||
let style = [s:settings.use_xhtml ? "" : '-->']
|
||||
let body_line = ''
|
||||
|
||||
let html = []
|
||||
let s:html5 = 0
|
||||
if s:settings.use_xhtml
|
||||
call add(html, xml_line)
|
||||
endif
|
||||
if s:settings.use_xhtml
|
||||
call add(html, "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">")
|
||||
call add(html, '<html xmlns="http://www.w3.org/1999/xhtml">')
|
||||
elseif s:settings.use_css && !s:settings.no_pre
|
||||
call add(html, "<!DOCTYPE html>")
|
||||
call add(html, '<html>')
|
||||
let s:html5 = 1
|
||||
else
|
||||
call add(html, '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"')
|
||||
call add(html, ' "http://www.w3.org/TR/html4/loose.dtd">')
|
||||
call add(html, '<html>')
|
||||
endif
|
||||
call add(html, '<head>')
|
||||
|
||||
" include encoding as close to the top as possible, but only if not already
|
||||
" contained in XML information
|
||||
if s:settings.encoding != "" && !s:settings.use_xhtml
|
||||
if s:html5
|
||||
call add(html, '<meta charset="' . s:settings.encoding . '"' . tag_close)
|
||||
else
|
||||
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close)
|
||||
if !s:settings.no_doc
|
||||
if s:settings.use_xhtml
|
||||
if s:settings.encoding != ""
|
||||
let xml_line = "<?xml version=\"1.0\" encoding=\"" .. s:settings.encoding .. "\"?>"
|
||||
else
|
||||
let xml_line = "<?xml version=\"1.0\"?>"
|
||||
endif
|
||||
let tag_close = ' />'
|
||||
endif
|
||||
|
||||
let style = [s:settings.use_xhtml ? "" : '-->']
|
||||
let body_line = ''
|
||||
|
||||
let s:html5 = 0
|
||||
if s:settings.use_xhtml
|
||||
call add(html, xml_line)
|
||||
endif
|
||||
if s:settings.use_xhtml
|
||||
call add(html, "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">")
|
||||
call add(html, '<html xmlns="http://www.w3.org/1999/xhtml">')
|
||||
elseif s:settings.use_css && !s:settings.no_pre
|
||||
call add(html, "<!DOCTYPE html>")
|
||||
call add(html, '<html>')
|
||||
let s:html5 = 1
|
||||
else
|
||||
call add(html, '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"')
|
||||
call add(html, ' "http://www.w3.org/TR/html4/loose.dtd">')
|
||||
call add(html, '<html>')
|
||||
endif
|
||||
call add(html, '<head>')
|
||||
|
||||
" include encoding as close to the top as possible, but only if not already
|
||||
" contained in XML information
|
||||
if s:settings.encoding != "" && !s:settings.use_xhtml
|
||||
if s:html5
|
||||
call add(html, '<meta charset="' .. s:settings.encoding .. '"' .. tag_close)
|
||||
else
|
||||
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" .. s:settings.encoding .. '"' .. tag_close)
|
||||
endif
|
||||
endif
|
||||
|
||||
call add(html, '<title>diff</title>')
|
||||
call add(html, '<meta name="Generator" content="Vim/'..v:version/100..'.'..v:version%100..'"'..tag_close)
|
||||
call add(html, '<meta name="plugin-version" content="'..g:loaded_2html_plugin..'"'..tag_close)
|
||||
call add(html, '<meta name="settings" content="'.
|
||||
\ join(filter(keys(s:settings),'s:settings[v:val]'),',').
|
||||
\ ',prevent_copy='..s:settings.prevent_copy.
|
||||
\ ',use_input_for_pc='..s:settings.use_input_for_pc.
|
||||
\ '"'..tag_close)
|
||||
call add(html, '<meta name="colorscheme" content="'.
|
||||
\ (exists('g:colors_name')
|
||||
\ ? g:colors_name
|
||||
\ : 'none').. '"'..tag_close)
|
||||
|
||||
call add(html, '</head>')
|
||||
let body_line_num = len(html)
|
||||
call add(html, '<body'..(s:settings.line_ids ? ' onload="JumpToLine();"' : '')..'>')
|
||||
endif
|
||||
|
||||
call add(html, '<title>diff</title>')
|
||||
call add(html, '<meta name="Generator" content="Vim/'.v:version/100.'.'.v:version%100.'"'.tag_close)
|
||||
call add(html, '<meta name="plugin-version" content="'.g:loaded_2html_plugin.'"'.tag_close)
|
||||
call add(html, '<meta name="settings" content="'.
|
||||
\ join(filter(keys(s:settings),'s:settings[v:val]'),',').
|
||||
\ ',prevent_copy='.s:settings.prevent_copy.
|
||||
\ ',use_input_for_pc='.s:settings.use_input_for_pc.
|
||||
\ '"'.tag_close)
|
||||
call add(html, '<meta name="colorscheme" content="'.
|
||||
\ (exists('g:colors_name')
|
||||
\ ? g:colors_name
|
||||
\ : 'none'). '"'.tag_close)
|
||||
|
||||
call add(html, '</head>')
|
||||
let body_line_num = len(html)
|
||||
call add(html, '<body'.(s:settings.line_ids ? ' onload="JumpToLine();"' : '').'>')
|
||||
call add(html, "<table ".(s:settings.use_css? "" : "border='1' width='100%' ")."id='vimCodeElement".s:settings.id_suffix."'>")
|
||||
call add(html, "<table "..(s:settings.use_css? "" : "border='1' width='100%' ").."id='vimCodeElement"..s:settings.id_suffix.."'>")
|
||||
|
||||
call add(html, '<tr>')
|
||||
for buf in a:win_list
|
||||
call add(html, '<th>'.bufname(buf).'</th>')
|
||||
call add(html, '<th>'..bufname(buf)..'</th>')
|
||||
endfor
|
||||
call add(html, '</tr><tr>')
|
||||
|
||||
@@ -421,7 +423,7 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
|
||||
for buf in a:buf_list
|
||||
let temp = []
|
||||
exe bufwinnr(buf) . 'wincmd w'
|
||||
exe bufwinnr(buf) .. 'wincmd w'
|
||||
|
||||
" If text is folded because of user foldmethod settings, etc. we don't want
|
||||
" to act on everything in a fold by mistake.
|
||||
@@ -430,47 +432,53 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" When not using CSS or when using xhtml, the <body> line can be important.
|
||||
" Assume it will be the same for all buffers and grab it from the first
|
||||
" buffer. Similarly, need to grab the body end line as well.
|
||||
if body_line == ''
|
||||
if !s:settings.no_doc
|
||||
if body_line == ''
|
||||
1
|
||||
call search('<body')
|
||||
let body_line = getline('.')
|
||||
$
|
||||
call search('</body>', 'b')
|
||||
let s:body_end_line = getline('.')
|
||||
endif
|
||||
|
||||
" Grab the style information. Some of this will be duplicated so only insert
|
||||
" it if it's not already there. {{{
|
||||
1
|
||||
call search('<body')
|
||||
let body_line = getline('.')
|
||||
$
|
||||
call search('</body>', 'b')
|
||||
let s:body_end_line = getline('.')
|
||||
endif
|
||||
|
||||
" Grab the style information. Some of this will be duplicated so only insert
|
||||
" it if it's not already there. {{{
|
||||
1
|
||||
let style_start = search('^<style\( type="text/css"\)\?>')
|
||||
1
|
||||
let style_end = search('^</style>')
|
||||
if style_start > 0 && style_end > 0
|
||||
let buf_styles = getline(style_start + 1, style_end - 1)
|
||||
for a_style in buf_styles
|
||||
if index(style, a_style) == -1
|
||||
if diff_style_start == 0
|
||||
if a_style =~ '\<Diff\(Change\|Text\|Add\|Delete\)'
|
||||
let diff_style_start = len(style)-1
|
||||
let style_start = search('^<style\( type="text/css"\)\?>')
|
||||
1
|
||||
let style_end = search('^</style>')
|
||||
if style_start > 0 && style_end > 0
|
||||
let buf_styles = getline(style_start + 1, style_end - 1)
|
||||
for a_style in buf_styles
|
||||
if index(style, a_style) == -1
|
||||
if diff_style_start == 0
|
||||
if a_style =~ '\<Diff\(Change\|Text\|Add\|Delete\)'
|
||||
let diff_style_start = len(style)-1
|
||||
endif
|
||||
endif
|
||||
call insert(style, a_style, insert_index)
|
||||
let insert_index += 1
|
||||
endif
|
||||
call insert(style, a_style, insert_index)
|
||||
let insert_index += 1
|
||||
endif
|
||||
endfor
|
||||
endif " }}}
|
||||
endfor
|
||||
endif " }}}
|
||||
|
||||
" everything new will get added before the diff styles so diff highlight
|
||||
" properly overrides normal highlight
|
||||
if diff_style_start != 0
|
||||
let insert_index = diff_style_start
|
||||
" everything new will get added before the diff styles so diff highlight
|
||||
" properly overrides normal highlight
|
||||
if diff_style_start != 0
|
||||
let insert_index = diff_style_start
|
||||
endif
|
||||
|
||||
" Delete those parts that are not needed so we can include the rest into the
|
||||
" resulting table.
|
||||
1,/^<body.*\%(\n<!--.*-->\_s\+.*id='oneCharWidth'.*\_s\+.*id='oneInputWidth'.*\_s\+.*id='oneEmWidth'\)\?\zs/d_
|
||||
$
|
||||
?</body>?,$d_
|
||||
elseif !s:settings.no_modeline
|
||||
" remove modeline from source files if it is included and we haven't deleted
|
||||
" due to removing html footer already
|
||||
$d
|
||||
endif
|
||||
|
||||
" Delete those parts that are not needed so we can include the rest into the
|
||||
" resulting table.
|
||||
1,/^<body.*\%(\n<!--.*-->\_s\+.*id='oneCharWidth'.*\_s\+.*id='oneInputWidth'.*\_s\+.*id='oneEmWidth'\)\?\zs/d_
|
||||
$
|
||||
?</body>?,$d_
|
||||
let temp = getline(1,'$')
|
||||
" clean out id on the main content container because we already set it on
|
||||
" the table
|
||||
@@ -478,7 +486,11 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
" undo deletion of start and end part
|
||||
" so we can later save the file as valid html
|
||||
" TODO: restore using grabbed lines if undolevel is 1?
|
||||
normal! 2u
|
||||
if !s:settings.no_doc
|
||||
normal! 2u
|
||||
elseif !s:settings.no_modeline
|
||||
normal! u
|
||||
endif
|
||||
if s:settings.use_css
|
||||
call add(html, '<td><div>')
|
||||
elseif s:settings.use_xhtml
|
||||
@@ -495,29 +507,35 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
quit!
|
||||
endfor
|
||||
|
||||
let html[body_line_num] = body_line
|
||||
if !s:settings.no_doc
|
||||
let html[body_line_num] = body_line
|
||||
endif
|
||||
|
||||
call add(html, '</tr>')
|
||||
call add(html, '</table>')
|
||||
call add(html, s:body_end_line)
|
||||
call add(html, '</html>')
|
||||
if !s:settings.no_doc
|
||||
call add(html, s:body_end_line)
|
||||
call add(html, '</html>')
|
||||
endif
|
||||
|
||||
" The generated HTML is admittedly ugly and takes a LONG time to fold.
|
||||
" Make sure the user doesn't do syntax folding when loading a generated file,
|
||||
" using a modeline.
|
||||
call add(html, '<!-- vim: set foldmethod=manual : -->')
|
||||
if !s:settings.no_modeline
|
||||
call add(html, '<!-- vim: set foldmethod=manual : -->')
|
||||
endif
|
||||
|
||||
let i = 1
|
||||
let name = "Diff" . (s:settings.use_xhtml ? ".xhtml" : ".html")
|
||||
let name = "Diff" .. (s:settings.use_xhtml ? ".xhtml" : ".html")
|
||||
" Find an unused file name if current file name is already in use
|
||||
while filereadable(name)
|
||||
let name = substitute(name, '\d*\.x\?html$', '', '') . i . '.' . fnamemodify(copy(name), ":t:e")
|
||||
let name = substitute(name, '\d*\.x\?html$', '', '') .. i .. '.' .. fnamemodify(copy(name), ":t:e")
|
||||
let i += 1
|
||||
endwhile
|
||||
|
||||
let s:ei_sav = &eventignore
|
||||
set eventignore+=FileType
|
||||
exe "topleft new " . name
|
||||
exe "topleft new " .. name
|
||||
let &eventignore=s:ei_sav
|
||||
unlet s:ei_sav
|
||||
|
||||
@@ -542,129 +560,131 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
|
||||
call append(0, html)
|
||||
|
||||
if len(style) > 0
|
||||
1
|
||||
let style_start = search('^</head>')-1
|
||||
if !s:settings.no_doc
|
||||
if len(style) > 0
|
||||
1
|
||||
let style_start = search('^</head>')-1
|
||||
|
||||
" add required javascript in reverse order so we can just call append again
|
||||
" and again without adjusting {{{
|
||||
" add required javascript in reverse order so we can just call append again
|
||||
" and again without adjusting {{{
|
||||
|
||||
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids
|
||||
let s:uses_script = s:settings.dynamic_folds || s:settings.line_ids
|
||||
|
||||
" insert script closing tag if needed
|
||||
if s:uses_script
|
||||
call append(style_start, [
|
||||
\ '',
|
||||
\ s:settings.use_xhtml ? '//]]>' : '-->',
|
||||
\ "</script>"
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" insert javascript to get IDs from line numbers, and to open a fold before
|
||||
" jumping to any lines contained therein
|
||||
if s:settings.line_ids
|
||||
call append(style_start, [
|
||||
\ " /* Always jump to new location even if the line was hidden inside a fold, or",
|
||||
\ " * we corrected the raw number to a line ID.",
|
||||
\ " */",
|
||||
\ " if (lineElem) {",
|
||||
\ " lineElem.scrollIntoView(true);",
|
||||
\ " }",
|
||||
\ " return true;",
|
||||
\ "}",
|
||||
\ "if ('onhashchange' in window) {",
|
||||
\ " window.onhashchange = JumpToLine;",
|
||||
\ "}"
|
||||
\ ])
|
||||
|
||||
if s:settings.dynamic_folds
|
||||
" insert script closing tag if needed
|
||||
if s:uses_script
|
||||
call append(style_start, [
|
||||
\ "",
|
||||
\ " /* navigate upwards in the DOM tree to open all folds containing the line */",
|
||||
\ " var node = lineElem;",
|
||||
\ " while (node && node.id != 'vimCodeElement".s:settings.id_suffix."')",
|
||||
\ " {",
|
||||
\ " if (node.className == 'closed-fold')",
|
||||
\ " {",
|
||||
\ " /* toggle open the fold ID (remove window ID) */",
|
||||
\ " toggleFold(node.id.substr(4));",
|
||||
\ " }",
|
||||
\ " node = node.parentNode;",
|
||||
\ " }",
|
||||
\ '',
|
||||
\ s:settings.use_xhtml ? '//]]>' : '-->',
|
||||
\ "</script>"
|
||||
\ ])
|
||||
endif
|
||||
endif
|
||||
|
||||
if s:settings.line_ids
|
||||
call append(style_start, [
|
||||
\ "",
|
||||
\ "/* function to open any folds containing a jumped-to line before jumping to it */",
|
||||
\ "function JumpToLine()",
|
||||
\ "{",
|
||||
\ " var lineNum;",
|
||||
\ " lineNum = window.location.hash;",
|
||||
\ " lineNum = lineNum.substr(1); /* strip off '#' */",
|
||||
\ "",
|
||||
\ " if (lineNum.indexOf('L') == -1) {",
|
||||
\ " lineNum = 'L'+lineNum;",
|
||||
\ " }",
|
||||
\ " if (lineNum.indexOf('W') == -1) {",
|
||||
\ " lineNum = 'W1'+lineNum;",
|
||||
\ " }",
|
||||
\ " var lineElem = document.getElementById(lineNum);"
|
||||
\ ])
|
||||
endif
|
||||
" insert javascript to get IDs from line numbers, and to open a fold before
|
||||
" jumping to any lines contained therein
|
||||
if s:settings.line_ids
|
||||
call append(style_start, [
|
||||
\ " /* Always jump to new location even if the line was hidden inside a fold, or",
|
||||
\ " * we corrected the raw number to a line ID.",
|
||||
\ " */",
|
||||
\ " if (lineElem) {",
|
||||
\ " lineElem.scrollIntoView(true);",
|
||||
\ " }",
|
||||
\ " return true;",
|
||||
\ "}",
|
||||
\ "if ('onhashchange' in window) {",
|
||||
\ " window.onhashchange = JumpToLine;",
|
||||
\ "}"
|
||||
\ ])
|
||||
|
||||
" Insert javascript to toggle matching folds open and closed in all windows,
|
||||
" if dynamic folding is active.
|
||||
if s:settings.dynamic_folds
|
||||
call append(style_start, [
|
||||
\ " function toggleFold(objID)",
|
||||
\ " {",
|
||||
\ " for (win_num = 1; win_num <= ".len(a:buf_list)."; win_num++)",
|
||||
\ " {",
|
||||
\ " var fold;",
|
||||
\ ' fold = document.getElementById("win"+win_num+objID);',
|
||||
\ " if(fold.className == 'closed-fold')",
|
||||
\ " {",
|
||||
\ " fold.className = 'open-fold';",
|
||||
\ " }",
|
||||
\ " else if (fold.className == 'open-fold')",
|
||||
\ " {",
|
||||
\ " fold.className = 'closed-fold';",
|
||||
\ " }",
|
||||
\ " }",
|
||||
\ " }",
|
||||
\ ])
|
||||
endif
|
||||
if s:settings.dynamic_folds
|
||||
call append(style_start, [
|
||||
\ "",
|
||||
\ " /* navigate upwards in the DOM tree to open all folds containing the line */",
|
||||
\ " var node = lineElem;",
|
||||
\ " while (node && node.id != 'vimCodeElement"..s:settings.id_suffix.."')",
|
||||
\ " {",
|
||||
\ " if (node.className == 'closed-fold')",
|
||||
\ " {",
|
||||
\ " /* toggle open the fold ID (remove window ID) */",
|
||||
\ " toggleFold(node.id.substr(4));",
|
||||
\ " }",
|
||||
\ " node = node.parentNode;",
|
||||
\ " }",
|
||||
\ ])
|
||||
endif
|
||||
endif
|
||||
|
||||
if s:uses_script
|
||||
" insert script tag if needed
|
||||
call append(style_start, [
|
||||
\ "<script" . (s:html5 ? "" : " type='text/javascript'") . ">",
|
||||
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
|
||||
endif
|
||||
if s:settings.line_ids
|
||||
call append(style_start, [
|
||||
\ "",
|
||||
\ "/* function to open any folds containing a jumped-to line before jumping to it */",
|
||||
\ "function JumpToLine()",
|
||||
\ "{",
|
||||
\ " var lineNum;",
|
||||
\ " lineNum = window.location.hash;",
|
||||
\ " lineNum = lineNum.substr(1); /* strip off '#' */",
|
||||
\ "",
|
||||
\ " if (lineNum.indexOf('L') == -1) {",
|
||||
\ " lineNum = 'L'+lineNum;",
|
||||
\ " }",
|
||||
\ " if (lineNum.indexOf('W') == -1) {",
|
||||
\ " lineNum = 'W1'+lineNum;",
|
||||
\ " }",
|
||||
\ " var lineElem = document.getElementById(lineNum);"
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" Insert styles from all the generated html documents and additional styles
|
||||
" for the table-based layout of the side-by-side diff. The diff should take
|
||||
" up the full browser window (but not more), and be static in size,
|
||||
" horizontally scrollable when the lines are too long. Otherwise, the diff
|
||||
" is pretty useless for really long lines. {{{
|
||||
if s:settings.use_css
|
||||
call append(style_start,
|
||||
\ ['<style' . (s:html5 ? '' : 'type="text/css"') . '>']+
|
||||
\ style+
|
||||
\ [ s:settings.use_xhtml ? '' : '<!--',
|
||||
\ 'table { table-layout: fixed; }',
|
||||
\ 'html, body, table, tbody { width: 100%; margin: 0; padding: 0; }',
|
||||
\ 'table, td, th { border: 1px solid; }',
|
||||
\ 'td { vertical-align: top; }',
|
||||
\ 'th, td { width: '.printf("%.1f",100.0/len(a:win_list)).'%; }',
|
||||
\ 'td div { overflow: auto; }',
|
||||
\ s:settings.use_xhtml ? '' : '-->',
|
||||
\ '</style>'
|
||||
\])
|
||||
endif "}}}
|
||||
" Insert javascript to toggle matching folds open and closed in all windows,
|
||||
" if dynamic folding is active.
|
||||
if s:settings.dynamic_folds
|
||||
call append(style_start, [
|
||||
\ " function toggleFold(objID)",
|
||||
\ " {",
|
||||
\ " for (win_num = 1; win_num <= "..len(a:buf_list).."; win_num++)",
|
||||
\ " {",
|
||||
\ " var fold;",
|
||||
\ ' fold = document.getElementById("win"+win_num+objID);',
|
||||
\ " if(fold.className == 'closed-fold')",
|
||||
\ " {",
|
||||
\ " fold.className = 'open-fold';",
|
||||
\ " }",
|
||||
\ " else if (fold.className == 'open-fold')",
|
||||
\ " {",
|
||||
\ " fold.className = 'closed-fold';",
|
||||
\ " }",
|
||||
\ " }",
|
||||
\ " }",
|
||||
\ ])
|
||||
endif
|
||||
|
||||
if s:uses_script
|
||||
" insert script tag if needed
|
||||
call append(style_start, [
|
||||
\ "<script" .. (s:html5 ? "" : " type='text/javascript'") .. ">",
|
||||
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
|
||||
endif
|
||||
|
||||
" Insert styles from all the generated html documents and additional styles
|
||||
" for the table-based layout of the side-by-side diff. The diff should take
|
||||
" up the full browser window (but not more), and be static in size,
|
||||
" horizontally scrollable when the lines are too long. Otherwise, the diff
|
||||
" is pretty useless for really long lines. {{{
|
||||
if s:settings.use_css
|
||||
call append(style_start,
|
||||
\ ['<style' .. (s:html5 ? '' : 'type="text/css"') .. '>']+
|
||||
\ style+
|
||||
\ [ s:settings.use_xhtml ? '' : '<!--',
|
||||
\ 'table { table-layout: fixed; }',
|
||||
\ 'html, body, table, tbody { width: 100%; margin: 0; padding: 0; }',
|
||||
\ 'table, td, th { border: 1px solid; }',
|
||||
\ 'td { vertical-align: top; }',
|
||||
\ 'th, td { width: '..printf("%.1f",100.0/len(a:win_list))..'%; }',
|
||||
\ 'td div { overflow: auto; }',
|
||||
\ s:settings.use_xhtml ? '' : '-->',
|
||||
\ '</style>'
|
||||
\])
|
||||
endif "}}}
|
||||
endif
|
||||
endif
|
||||
|
||||
let &paste = s:old_paste
|
||||
@@ -674,7 +694,7 @@ endfunc "}}}
|
||||
" Gets a single user option and sets it in the passed-in Dict, or gives it the
|
||||
" default value if the option doesn't actually exist.
|
||||
func! tohtml#GetOption(settings, option, default) "{{{
|
||||
if exists('g:html_'.a:option)
|
||||
if exists('g:html_'..a:option)
|
||||
let a:settings[a:option] = g:html_{a:option}
|
||||
else
|
||||
let a:settings[a:option] = a:default
|
||||
@@ -693,10 +713,11 @@ func! tohtml#GetUserSettings() "{{{
|
||||
let user_settings = {}
|
||||
|
||||
" Define the correct option if the old option name exists and we haven't
|
||||
" already defined the correct one. Maybe I'll put out a warning message about
|
||||
" this sometime and remove the old option entirely at some even later time,
|
||||
" but for now just silently accept the old option.
|
||||
" already defined the correct one.
|
||||
if exists('g:use_xhtml') && !exists("g:html_use_xhtml")
|
||||
echohl WarningMsg
|
||||
echomsg "Warning: g:use_xhtml is deprecated, use g:html_use_xhtml"
|
||||
echohl None
|
||||
let g:html_use_xhtml = g:use_xhtml
|
||||
endif
|
||||
|
||||
@@ -719,7 +740,7 @@ func! tohtml#GetUserSettings() "{{{
|
||||
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
|
||||
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
|
||||
call tohtml#GetOption(user_settings, 'line_ids', user_settings.number_lines )
|
||||
call tohtml#GetOption(user_settings, 'use_input_for_pc', 'fallback')
|
||||
call tohtml#GetOption(user_settings, 'use_input_for_pc', 'none')
|
||||
" }}}
|
||||
|
||||
" override those settings that need it {{{
|
||||
@@ -834,16 +855,16 @@ func! tohtml#GetUserSettings() "{{{
|
||||
if user_settings.use_css
|
||||
if exists("g:html_prevent_copy")
|
||||
if user_settings.dynamic_folds && !user_settings.no_foldcolumn && g:html_prevent_copy =~# 'f'
|
||||
let user_settings.prevent_copy .= 'f'
|
||||
let user_settings.prevent_copy ..= 'f'
|
||||
endif
|
||||
if user_settings.number_lines && g:html_prevent_copy =~# 'n'
|
||||
let user_settings.prevent_copy .= 'n'
|
||||
let user_settings.prevent_copy ..= 'n'
|
||||
endif
|
||||
if &diff && g:html_prevent_copy =~# 'd'
|
||||
let user_settings.prevent_copy .= 'd'
|
||||
let user_settings.prevent_copy ..= 'd'
|
||||
endif
|
||||
if !user_settings.ignore_folding && g:html_prevent_copy =~# 't'
|
||||
let user_settings.prevent_copy .= 't'
|
||||
let user_settings.prevent_copy ..= 't'
|
||||
endif
|
||||
else
|
||||
let user_settings.prevent_copy = ""
|
||||
@@ -855,10 +876,10 @@ func! tohtml#GetUserSettings() "{{{
|
||||
|
||||
" enforce valid values for use_input_for_pc
|
||||
if user_settings.use_input_for_pc !~# 'fallback\|none\|all'
|
||||
let user_settings.use_input_for_pc = 'fallback'
|
||||
let user_settings.use_input_for_pc = 'none'
|
||||
echohl WarningMsg
|
||||
echomsg '2html: "' . g:html_use_input_for_pc . '" is not valid for g:html_use_input_for_pc'
|
||||
echomsg '2html: defaulting to "' . user_settings.use_input_for_pc . '"'
|
||||
echomsg '2html: "' .. g:html_use_input_for_pc .. '" is not valid for g:html_use_input_for_pc'
|
||||
echomsg '2html: defaulting to "' .. user_settings.use_input_for_pc .. '"'
|
||||
echohl None
|
||||
sleep 3
|
||||
endif
|
||||
|
||||
100
runtime/autoload/zig/fmt.vim
Normal file
100
runtime/autoload/zig/fmt.vim
Normal file
@@ -0,0 +1,100 @@
|
||||
" Adapted from fatih/vim-go: autoload/go/fmt.vim
|
||||
"
|
||||
" Copyright 2011 The Go Authors. All rights reserved.
|
||||
" Use of this source code is governed by a BSD-style
|
||||
" license that can be found in the LICENSE file.
|
||||
"
|
||||
" Upstream: https://github.com/ziglang/zig.vim
|
||||
|
||||
function! zig#fmt#Format() abort
|
||||
" Save cursor position and many other things.
|
||||
let view = winsaveview()
|
||||
|
||||
if !executable('zig')
|
||||
echohl Error | echomsg "no zig binary found in PATH" | echohl None
|
||||
return
|
||||
endif
|
||||
|
||||
let cmdline = 'zig fmt --stdin --ast-check'
|
||||
let current_buf = bufnr('')
|
||||
|
||||
" The formatted code is output on stdout, the errors go on stderr.
|
||||
if exists('*systemlist')
|
||||
silent let out = systemlist(cmdline, current_buf)
|
||||
else
|
||||
silent let out = split(system(cmdline, current_buf))
|
||||
endif
|
||||
if len(out) == 1
|
||||
if out[0] == "error: unrecognized parameter: '--ast-check'"
|
||||
let cmdline = 'zig fmt --stdin'
|
||||
if exists('*systemlist')
|
||||
silent let out = systemlist(cmdline, current_buf)
|
||||
else
|
||||
silent let out = split(system(cmdline, current_buf))
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
let err = v:shell_error
|
||||
|
||||
|
||||
if err == 0
|
||||
" remove undo point caused via BufWritePre.
|
||||
try | silent undojoin | catch | endtry
|
||||
|
||||
" Replace the file content with the formatted version.
|
||||
if exists('*deletebufline')
|
||||
call deletebufline(current_buf, len(out), line('$'))
|
||||
else
|
||||
silent execute ':' . len(out) . ',' . line('$') . ' delete _'
|
||||
endif
|
||||
call setline(1, out)
|
||||
|
||||
" No errors detected, close the loclist.
|
||||
call setloclist(0, [], 'r')
|
||||
lclose
|
||||
elseif get(g:, 'zig_fmt_parse_errors', 1)
|
||||
let errors = s:parse_errors(expand('%'), out)
|
||||
|
||||
call setloclist(0, [], 'r', {
|
||||
\ 'title': 'Errors',
|
||||
\ 'items': errors,
|
||||
\ })
|
||||
|
||||
let max_win_height = get(g:, 'zig_fmt_max_window_height', 5)
|
||||
" Prevent the loclist from becoming too long.
|
||||
let win_height = min([max_win_height, len(errors)])
|
||||
" Open the loclist, but only if there's at least one error to show.
|
||||
execute 'silent! lwindow ' . win_height
|
||||
endif
|
||||
|
||||
call winrestview(view)
|
||||
|
||||
if err != 0
|
||||
echohl Error | echomsg "zig fmt returned error" | echohl None
|
||||
return
|
||||
endif
|
||||
|
||||
" Run the syntax highlighter on the updated content and recompute the folds if
|
||||
" needed.
|
||||
syntax sync fromstart
|
||||
endfunction
|
||||
|
||||
" parse_errors parses the given errors and returns a list of parsed errors
|
||||
function! s:parse_errors(filename, lines) abort
|
||||
" list of errors to be put into location list
|
||||
let errors = []
|
||||
for line in a:lines
|
||||
let tokens = matchlist(line, '^\(.\{-}\):\(\d\+\):\(\d\+\)\s*\(.*\)')
|
||||
if !empty(tokens)
|
||||
call add(errors,{
|
||||
\"filename": a:filename,
|
||||
\"lnum": tokens[2],
|
||||
\"col": tokens[3],
|
||||
\"text": tokens[4],
|
||||
\ })
|
||||
endif
|
||||
endfor
|
||||
|
||||
return errors
|
||||
endfunction
|
||||
" vim: sw=2 ts=2 et
|
||||
@@ -1,7 +1,7 @@
|
||||
" zip.vim: Handles browsing zipfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Nov 08, 2021
|
||||
" Version: 32
|
||||
" Date: Mar 12, 2023
|
||||
" Version: 33
|
||||
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005-2019 Charles E. Campbell {{{1
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_zip")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zip= "v32"
|
||||
let g:loaded_zip= "v33"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of zip needs vim 7.2 or later"
|
||||
@@ -57,6 +57,15 @@ if !exists("g:zip_extractcmd")
|
||||
let g:zip_extractcmd= g:zip_unzipcmd
|
||||
endif
|
||||
|
||||
let s:tmp_cwd = getcwd()
|
||||
if (fnamemodify(exepath(g:zip_unzipcmd), ":p:h") ==# getcwd()
|
||||
\ && (index(split($PATH,has("win32")? ';' : ':'), s:tmp_cwd) == -1 || s:tmp_cwd == '.'))
|
||||
unlet s:tmp_cwd
|
||||
echoerr "Warning: NOT executing " .. g:zip_unzipcmd .. " from current directory!"
|
||||
finish
|
||||
endif
|
||||
unlet s:tmp_cwd
|
||||
|
||||
" ----------------
|
||||
" Functions: {{{1
|
||||
" ----------------
|
||||
@@ -160,10 +169,14 @@ endfun
|
||||
" ---------------------------------------------------------------------
|
||||
" ZipBrowseSelect: {{{2
|
||||
fun! s:ZipBrowseSelect()
|
||||
" call Dfunc("ZipBrowseSelect() zipfile<".b:zipfile."> curfile<".expand("%").">")
|
||||
" call Dfunc("ZipBrowseSelect() zipfile<".((exists("b:zipfile"))? b:zipfile : "n/a")."> curfile<".expand("%").">")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
let fname= getline(".")
|
||||
if !exists("b:zipfile")
|
||||
" call Dret("ZipBrowseSelect : b:zipfile doesn't exist!")
|
||||
return
|
||||
endif
|
||||
|
||||
" sanity check
|
||||
if fname =~ '^"'
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
:" Use this script to create the file "bugreport.txt", which contains
|
||||
:" information about the environment of a possible bug in Vim.
|
||||
:"
|
||||
:" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
:" Last change: 2019 Jan 27
|
||||
:" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
:" Last change: 2023 Aug 10
|
||||
:" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
:"
|
||||
:" To use inside Vim:
|
||||
:" :so $VIMRUNTIME/bugreport.vim
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim color file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2001 Jul 23
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" This is the default color scheme. It doesn't define the Normal
|
||||
" highlighting, it uses whatever the colors used to be.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" 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
|
||||
" Last Updated: Fri 24 Mar 2023 20:28:06 AEDT
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -36,38 +36,6 @@ 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
|
||||
@@ -88,10 +56,14 @@ 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 Pmenu guifg=NONE guibg=#3a3a3a 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 PmenuKind guifg=#d7875f guibg=#3a3a3a gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#d75f5f guibg=#afaf87 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#767676 guibg=#3a3a3a gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel 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
|
||||
@@ -100,7 +72,7 @@ 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 MatchParen guifg=#ff00af guibg=NONE gui=bold cterm=bold
|
||||
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
|
||||
@@ -112,7 +84,7 @@ 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 ColorColumn guifg=NONE guibg=#3a3a3a 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
|
||||
@@ -132,13 +104,13 @@ 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 DiffAdd guifg=#dadada guibg=#5f875f 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
|
||||
hi DiffText guifg=#dadada guibg=#878787 gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#bcbcbc guibg=#5f5f5f gui=NONE cterm=NONE
|
||||
|
||||
if s:t_Co >= 256
|
||||
hi! link Terminal Normal
|
||||
@@ -159,38 +131,6 @@ if s:t_Co >= 256
|
||||
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
|
||||
@@ -211,10 +151,14 @@ if s:t_Co >= 256
|
||||
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 Pmenu ctermfg=NONE ctermbg=237 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 PmenuKind ctermfg=173 ctermbg=237 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=167 ctermbg=144 cterm=NONE
|
||||
hi PmenuExtra ctermfg=243 ctermbg=237 cterm=NONE
|
||||
hi PmenuExtraSel 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
|
||||
@@ -223,7 +167,7 @@ if s:t_Co >= 256
|
||||
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 MatchParen ctermfg=199 ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=234 ctermbg=108 cterm=NONE
|
||||
hi IncSearch ctermfg=234 ctermbg=215 cterm=NONE
|
||||
hi CurSearch ctermfg=234 ctermbg=144 cterm=NONE
|
||||
@@ -233,7 +177,7 @@ if s:t_Co >= 256
|
||||
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 ColorColumn ctermfg=NONE ctermbg=237 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
|
||||
@@ -253,27 +197,18 @@ if s:t_Co >= 256
|
||||
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 DiffAdd ctermfg=253 ctermbg=65 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
|
||||
hi DiffText ctermfg=253 ctermbg=102 cterm=NONE
|
||||
hi DiffChange ctermfg=250 ctermbg=59 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
|
||||
@@ -294,10 +229,14 @@ if s:t_Co >= 16
|
||||
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 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 PmenuKind ctermfg=darkred ctermbg=gray cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuExtra ctermfg=darkgray ctermbg=gray cterm=NONE
|
||||
hi PmenuExtraSel 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
|
||||
@@ -306,7 +245,7 @@ if s:t_Co >= 16
|
||||
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 MatchParen ctermfg=magenta ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=red cterm=NONE
|
||||
hi CurSearch ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
@@ -336,13 +275,13 @@ if s:t_Co >= 16
|
||||
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 DiffAdd ctermfg=white 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
|
||||
hi DiffText ctermfg=white ctermbg=lightgrey cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=darkgray cterm=NONE
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
@@ -366,12 +305,16 @@ if s:t_Co >= 8
|
||||
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 Visual ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi VisualNOS ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
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 PmenuKind ctermfg=darkred ctermbg=gray cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuExtra ctermfg=black ctermbg=gray cterm=NONE
|
||||
hi PmenuExtraSel 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
|
||||
@@ -380,7 +323,7 @@ if s:t_Co >= 8
|
||||
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 MatchParen ctermfg=magenta ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=black ctermbg=darkgreen cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi CurSearch ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
@@ -410,7 +353,7 @@ if s:t_Co >= 8
|
||||
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 DiffAdd ctermfg=white 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
|
||||
@@ -507,17 +450,19 @@ endif
|
||||
" Color: color07 #9E9E9E 247 gray
|
||||
" Color: color15 #BCBCBC 250 white
|
||||
" Color: colorLine #303030 236 darkgrey
|
||||
" Color: colorB #262626 235 darkgrey
|
||||
" Color: colorB #3a3a3a 237 darkgrey
|
||||
" Color: colorF #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: colorMP #ff00af 199 magenta
|
||||
" Color: diffAdd #5f875f 65 darkgreen
|
||||
" Color: diffDelete #af875f 137 darkyellow
|
||||
" Color: diffChange #AFAFAF 145 darkgray
|
||||
" Color: diffText #D7D7D7 188 lightgrey
|
||||
" Color: diffChange #5f5f5f 59 darkgray
|
||||
" Color: diffText #878787 102 lightgrey
|
||||
" Color: black #000000 16 black
|
||||
" Color: white #FFFFFF 231 white
|
||||
" Color: white #dadada 253 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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
" Maintainer: Drew Vogel <dvogel@sidejump.org>
|
||||
" Last Change: 2022 Mar 20
|
||||
" Last Change: 2023 Apr 19
|
||||
"
|
||||
" Replaced rgb.txt as the source of de facto standard color names. This is
|
||||
" sourced each time the colorscheme command is run. It is also sourced each
|
||||
@@ -7,7 +7,8 @@
|
||||
" these colors by introducing a new colors/lists/default.vim file earlier in
|
||||
" the runtimepath.
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
" make sure line continuation works
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
call extend(v:colornames, {
|
||||
@@ -801,7 +802,7 @@ call extend(v:colornames, {
|
||||
\ 'teal': '#008080'
|
||||
\ }, 'keep')
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
"vim: sw=4
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
" Maintainer: Maxim Kim <habamax@gmail.com>
|
||||
" Website: https://www.github.com/vim/colorschemes
|
||||
" License: Vim License (see `:help license`)
|
||||
" Last Updated: Fri 16 Sep 2022 13:15:33 MSK
|
||||
" Last Updated: Sun 26 Mar 2023 23:04:18 AEDT
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -16,24 +16,8 @@ let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
hi! link helpVim Title
|
||||
hi! link helpHeader Title
|
||||
hi! link helpHyperTextJump Underlined
|
||||
hi! link fugitiveSymbolicRef PreProc
|
||||
hi! link fugitiveHeading Statement
|
||||
hi! link fugitiveStagedHeading Statement
|
||||
hi! link fugitiveUnstagedHeading Statement
|
||||
hi! link fugitiveUntrackedHeading Statement
|
||||
hi! link fugitiveStagedModifier PreProc
|
||||
hi! link fugitiveUnstagedModifier PreProc
|
||||
hi! link fugitiveHash Constant
|
||||
hi! link diffFile PreProc
|
||||
hi! link markdownHeadingDelimiter Special
|
||||
hi! link rstSectionDelimiter Statement
|
||||
hi! link rstDirective PreProc
|
||||
hi! link rstHyperlinkReference Special
|
||||
hi! link rstFieldName Constant
|
||||
hi! link rstDelimiter Special
|
||||
hi! link rstInterpretedText Special
|
||||
hi! link rstCodeBlock Normal
|
||||
hi! link rstLiteralBlock rstCodeBlock
|
||||
hi! link markdownUrl String
|
||||
hi! link colortemplateKey Statement
|
||||
hi! link xmlTagName Statement
|
||||
@@ -51,30 +35,6 @@ hi! link vimParenSep Normal
|
||||
hi! link vimOption Normal
|
||||
hi! link vimCommentString Comment
|
||||
hi! link pythonInclude Statement
|
||||
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 elixirVariable Special
|
||||
hi! link elixirAtom Constant
|
||||
hi! link elixirDocTest String
|
||||
hi! link shQuote Constant
|
||||
hi! link shNoQuote Normal
|
||||
hi! link shTestOpr Normal
|
||||
@@ -134,12 +94,16 @@ if &background ==# 'dark'
|
||||
hi LineNr guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi FoldColumn 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 Pmenu guifg=NONE guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=NONE guibg=#444444 gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=NONE guibg=#4e4e4e gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=NONE guibg=#c6c6c6 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#ff5f5f guibg=#303030 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#ff5f5f guibg=#4e4e4e gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#767676 guibg=#303030 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#767676 guibg=#4e4e4e gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error guifg=#ffffff guibg=#ff5f5f gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#ffffff guibg=#ff5f5f gui=NONE cterm=NONE
|
||||
@@ -161,8 +125,8 @@ if &background ==# 'dark'
|
||||
hi VisualNOS guifg=#000000 guibg=#5fafaf gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi Folded guifg=#767676 guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi Folded guifg=#767676 guibg=#303030 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=NONE guibg=NONE guisp=#ff5f5f gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellCap guifg=NONE guibg=NONE guisp=#5fafaf gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellLocal guifg=NONE guibg=NONE guisp=#5faf5f gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -180,9 +144,9 @@ if &background ==# 'dark'
|
||||
hi Directory guifg=#5fafff guibg=NONE gui=bold cterm=bold
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#000000 guibg=#af87af gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#000000 guibg=#d0d0d0 gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#000000 guibg=#5fd7d7 gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#c6c6c6 guibg=#875f87 gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#c6c6c6 guibg=#5f5f5f gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#afffff guibg=#5f8787 gui=NONE cterm=NONE
|
||||
hi DiffDelete guifg=#d78787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffAdded guifg=#5fd75f guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffRemoved guifg=#d78787 guibg=NONE gui=NONE cterm=NONE
|
||||
@@ -222,10 +186,14 @@ else
|
||||
hi FoldColumn guifg=#9e9e9e guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#9e9e9e guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#9e9e9e guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=NONE guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=NONE guibg=#c6c6c6 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 PmenuKind guifg=#af0000 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#af0000 guibg=#c6c6c6 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#767676 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#767676 guibg=#c6c6c6 gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error guifg=#ffffff guibg=#d70000 gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#ffffff guibg=#d70000 gui=NONE cterm=NONE
|
||||
@@ -245,10 +213,10 @@ else
|
||||
hi Visual guifg=#ffffff guibg=#5f87af gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=NONE guibg=#c5e7c5 gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#ffffff guibg=#008787 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi Folded guifg=#767676 guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi Folded guifg=#767676 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=NONE guibg=NONE guisp=#af0000 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellCap guifg=NONE guibg=NONE guisp=#005f5f gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellLocal guifg=NONE guibg=NONE guisp=#008700 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -294,24 +262,8 @@ if s:t_Co >= 256
|
||||
hi! link helpVim Title
|
||||
hi! link helpHeader Title
|
||||
hi! link helpHyperTextJump Underlined
|
||||
hi! link fugitiveSymbolicRef PreProc
|
||||
hi! link fugitiveHeading Statement
|
||||
hi! link fugitiveStagedHeading Statement
|
||||
hi! link fugitiveUnstagedHeading Statement
|
||||
hi! link fugitiveUntrackedHeading Statement
|
||||
hi! link fugitiveStagedModifier PreProc
|
||||
hi! link fugitiveUnstagedModifier PreProc
|
||||
hi! link fugitiveHash Constant
|
||||
hi! link diffFile PreProc
|
||||
hi! link markdownHeadingDelimiter Special
|
||||
hi! link rstSectionDelimiter Statement
|
||||
hi! link rstDirective PreProc
|
||||
hi! link rstHyperlinkReference Special
|
||||
hi! link rstFieldName Constant
|
||||
hi! link rstDelimiter Special
|
||||
hi! link rstInterpretedText Special
|
||||
hi! link rstCodeBlock Normal
|
||||
hi! link rstLiteralBlock rstCodeBlock
|
||||
hi! link markdownUrl String
|
||||
hi! link colortemplateKey Statement
|
||||
hi! link xmlTagName Statement
|
||||
@@ -329,30 +281,6 @@ if s:t_Co >= 256
|
||||
hi! link vimOption Normal
|
||||
hi! link vimCommentString Comment
|
||||
hi! link pythonInclude Statement
|
||||
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 elixirVariable Special
|
||||
hi! link elixirAtom Constant
|
||||
hi! link elixirDocTest String
|
||||
hi! link shQuote Constant
|
||||
hi! link shNoQuote Normal
|
||||
hi! link shTestOpr Normal
|
||||
@@ -409,12 +337,16 @@ if s:t_Co >= 256
|
||||
hi LineNr ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=234 cterm=NONE
|
||||
hi PmenuSel ctermfg=NONE ctermbg=238 cterm=NONE
|
||||
hi EndOfBuffer ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi PmenuSel ctermfg=NONE ctermbg=239 cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=251 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind ctermfg=203 ctermbg=236 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=203 ctermbg=239 cterm=NONE
|
||||
hi PmenuExtra ctermfg=243 ctermbg=236 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=243 ctermbg=239 cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=231 ctermbg=203 cterm=NONE
|
||||
hi ErrorMsg ctermfg=231 ctermbg=203 cterm=NONE
|
||||
@@ -434,8 +366,8 @@ if s:t_Co >= 256
|
||||
hi VisualNOS ctermfg=16 ctermbg=73 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi Folded ctermfg=243 ctermbg=234 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=234 cterm=NONE
|
||||
hi Folded ctermfg=243 ctermbg=236 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi SpellBad ctermfg=203 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=73 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=77 ctermbg=NONE cterm=underline
|
||||
@@ -453,9 +385,9 @@ if s:t_Co >= 256
|
||||
hi Directory ctermfg=75 ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=16 ctermbg=139 cterm=NONE
|
||||
hi DiffChange ctermfg=16 ctermbg=252 cterm=NONE
|
||||
hi DiffText ctermfg=16 ctermbg=80 cterm=NONE
|
||||
hi DiffAdd ctermfg=251 ctermbg=96 cterm=NONE
|
||||
hi DiffChange ctermfg=251 ctermbg=59 cterm=NONE
|
||||
hi DiffText ctermfg=159 ctermbg=66 cterm=NONE
|
||||
hi DiffDelete ctermfg=174 ctermbg=NONE cterm=NONE
|
||||
hi diffAdded ctermfg=77 ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=174 ctermbg=NONE cterm=NONE
|
||||
@@ -492,10 +424,14 @@ if s:t_Co >= 256
|
||||
hi FoldColumn ctermfg=247 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=247 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=247 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi PmenuSel ctermfg=NONE ctermbg=251 cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=243 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind ctermfg=124 ctermbg=254 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=124 ctermbg=251 cterm=NONE
|
||||
hi PmenuExtra ctermfg=243 ctermbg=254 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=243 ctermbg=251 cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=231 ctermbg=160 cterm=NONE
|
||||
hi ErrorMsg ctermfg=231 ctermbg=160 cterm=NONE
|
||||
@@ -513,10 +449,10 @@ if s:t_Co >= 256
|
||||
hi Visual ctermfg=231 ctermbg=67 cterm=NONE
|
||||
hi MatchParen ctermfg=30 ctermbg=231 cterm=reverse
|
||||
hi VisualNOS ctermfg=231 ctermbg=30 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi Folded ctermfg=243 ctermbg=255 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi Folded ctermfg=243 ctermbg=254 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi SpellBad ctermfg=124 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=23 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=28 ctermbg=NONE cterm=underline
|
||||
@@ -577,12 +513,16 @@ if s:t_Co >= 16
|
||||
hi LineNr ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=darkgrey cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=grey cterm=NONE
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuExtra ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=white ctermbg=red cterm=NONE
|
||||
hi ErrorMsg ctermfg=white ctermbg=red cterm=NONE
|
||||
@@ -621,8 +561,8 @@ if s:t_Co >= 16
|
||||
hi Directory ctermfg=blue ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=lightgray cterm=NONE
|
||||
hi DiffAdd ctermfg=white ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=cyan cterm=NONE
|
||||
hi DiffDelete ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi diffAdded ctermfg=green ctermbg=NONE cterm=NONE
|
||||
@@ -661,9 +601,13 @@ if s:t_Co >= 16
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgrey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuExtra ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=white ctermbg=red cterm=NONE
|
||||
hi ErrorMsg ctermfg=white ctermbg=red cterm=NONE
|
||||
@@ -743,14 +687,18 @@ if s:t_Co >= 8
|
||||
hi QuickFixLine ctermfg=grey ctermbg=darkblue cterm=bold
|
||||
hi CursorLineNr ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=grey cterm=NONE
|
||||
hi NonText ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuExtra ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=grey ctermbg=darkred cterm=NONE
|
||||
hi ErrorMsg ctermfg=grey ctermbg=darkred cterm=NONE
|
||||
@@ -788,8 +736,8 @@ if s:t_Co >= 8
|
||||
hi Directory ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi DiffAdd ctermfg=white ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi DiffDelete ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
else
|
||||
@@ -810,10 +758,14 @@ if s:t_Co >= 8
|
||||
hi FoldColumn ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=black cterm=NONE
|
||||
hi Pmenu ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=NONE ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=black cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkcyan cterm=NONE
|
||||
hi PmenuExtra ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=grey ctermbg=darkred cterm=NONE
|
||||
hi ErrorMsg ctermfg=grey ctermbg=darkred cterm=NONE
|
||||
@@ -948,20 +900,21 @@ endif
|
||||
" Color: color15 #FFFFFF 231 white
|
||||
" Color: colorDimWhite #E4E4E4 254 grey
|
||||
" Color: colorLine #262626 235 darkgrey
|
||||
" Color: colorB #1C1C1C 234 darkgrey
|
||||
" Color: colorB #303030 236 darkgrey
|
||||
" Color: colorNonT #585858 240 grey
|
||||
" Color: colorTab #585858 240 grey
|
||||
" Color: colorC #FFFFFF 231 white
|
||||
" Color: colorlC #FF5FFF 207 magenta
|
||||
" Color: colorV #005F87 24 darkblue
|
||||
" Color: colorMP #C5E7C5 30 darkcyan
|
||||
" Color: colorPMenuSel #444444 238 darkcyan
|
||||
" Color: colorPMenuSel #4e4e4e 239 darkcyan
|
||||
" Color: colorDim #878787 102 grey
|
||||
" Color: diffAdd #AF87AF 139 darkmagenta
|
||||
" Color: diffAdd #875f87 96 darkmagenta
|
||||
" Color: diffDelete #D78787 174 darkred
|
||||
" Color: diffChange #D0D0D0 252 lightgray
|
||||
" Color: diffText #5FD7D7 80 cyan
|
||||
" Color: fgDiff #000000 16 black
|
||||
" Color: diffChange #5f5f5f 59 darkgreen
|
||||
" Color: diffText #5f8787 66 cyan
|
||||
" Color: fgDiffText #afffff 159 black
|
||||
" Color: fgDiff #C6C6C6 251 white
|
||||
" Term colors: color00 color01 color02 color03 color04 color05 color06 color07
|
||||
" Term colors: color08 color09 color10 color11 color12 color13 color14 color15
|
||||
" Background: light
|
||||
@@ -981,8 +934,8 @@ endif
|
||||
" Color: color14 #008787 30 cyan
|
||||
" Color: color07 #808080 244 grey
|
||||
" Color: color15 #FFFFFF 231 white
|
||||
" Color: colorLine #E4E4E4 254 grey
|
||||
" Color: colorB #EEEEEE 255 grey
|
||||
" Color: colorLine #EEEEEE 255 grey
|
||||
" Color: colorB #E4E4E4 254 grey
|
||||
" Color: colorNonT #9E9E9E 247 darkgrey
|
||||
" Color: colorTab #BCBCBC 250 lightgrey
|
||||
" Color: colorC #000000 16 black
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" 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>
|
||||
" Description: A mostly monochrome colorscheme, with a few niceties.
|
||||
" Author: Maxence Weynans <neutaaaaan@gmail.com>
|
||||
" Maintainer: Maxence Weynans <neutaaaaan@gmail.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Vim License (see `:help license`)`
|
||||
" Last Updated: Fri 16 Sep 2022 09:52:50 MSK
|
||||
" Last Updated: Wed 15 Mar 2023 06:45:06 PM CET
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
@@ -48,57 +48,62 @@ 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']
|
||||
let g:terminal_ansi_colors = ['#000000', '#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 Normal guifg=#dadada guibg=#000000 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 CurSearch guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
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 DiffAdd guifg=#00af00 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#87afd7 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#d75f5f guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#d787d7 guibg=#000000 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 EndOfBuffer guifg=#707070 guibg=NONE gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#dadada guibg=#000000 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 Folded guifg=#707070 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#ffaf00 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi LineNr guifg=#585858 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 Pmenu guifg=#000000 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#000000 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#000000 guibg=#a8a8a8 gui=bold cterm=bold
|
||||
hi PmenuSbar guifg=#707070 guibg=#585858 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#000000 guibg=#dadada gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#000000 guibg=#dadada gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#000000 guibg=#dadada gui=bold cterm=bold
|
||||
hi PmenuThumb guifg=#dadada guibg=#dadada 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 QuickFixLine guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Search guifg=#00afff guibg=#000000 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 SpecialKey guifg=#707070 guibg=NONE gui=bold cterm=bold
|
||||
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 StatusLine guifg=#000000 guibg=#dadada gui=bold cterm=bold
|
||||
hi StatusLineNC guifg=#707070 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi TabLine guifg=#707070 guibg=#000000 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 TabLineSel guifg=#000000 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 VertSplit guifg=#707070 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi Visual guifg=#ffaf00 guibg=#000000 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 WildMenu guifg=#00afff guibg=#000000 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 Error guifg=#ff005f guibg=#000000 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
|
||||
@@ -107,127 +112,137 @@ if &background ==# 'dark'
|
||||
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
|
||||
hi CursorIM guifg=#000000 guibg=#afff00 gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=#000000 gui=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#dadada guibg=#000000 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']
|
||||
let g:terminal_ansi_colors = ['#000000', '#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 Normal guifg=#000000 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 CurSearch guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
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 CursorLineNr guifg=#000000 guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#87d787 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#afafd7 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#d78787 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#d787d7 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#626262 guibg=NONE gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#000000 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 IncSearch guifg=#ffaf00 guibg=#000000 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 ModeMsg guifg=#000000 guibg=NONE gui=bold cterm=bold
|
||||
hi MoreMsg guifg=#000000 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 Pmenu guifg=#000000 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#000000 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#000000 guibg=#a8a8a8 gui=bold cterm=bold
|
||||
hi PmenuSbar guifg=#000000 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#d7d7d7 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#d7d7d7 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#d7d7d7 guibg=#000000 gui=bold cterm=bold
|
||||
hi PmenuThumb guifg=#000000 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi Question guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Search guifg=#00afff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi SignColumn guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#626262 guibg=NONE gui=bold cterm=bold
|
||||
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 StatusLine guifg=#eeeeee guibg=#000000 gui=bold cterm=bold
|
||||
hi StatusLineNC guifg=#000000 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi TabLine guifg=#000000 guibg=#a8a8a8 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=#000000 guibg=#d7d7d7 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#eeeeee guibg=#000000 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 Visual guifg=#ffaf00 guibg=#000000 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 WarningMsg guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#000000 guibg=#eeeeee gui=bold cterm=bold
|
||||
hi Comment guifg=#000000 guibg=NONE gui=bold cterm=bold
|
||||
hi Constant guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#ff005f guibg=#000000 gui=bold,reverse cterm=bold,reverse
|
||||
hi Identifier guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#00ffaf guibg=#000000 gui=bold,reverse cterm=bold,reverse
|
||||
hi Type guifg=#000000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#000000 guibg=NONE gui=underline cterm=underline
|
||||
hi CursorIM guifg=#000000 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
|
||||
hi ToolbarButton guifg=#000000 guibg=#d7d7d7 gui=bold cterm=bold
|
||||
endif
|
||||
|
||||
if s:t_Co >= 256
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=253 ctermbg=232 cterm=NONE
|
||||
hi Normal ctermfg=253 ctermbg=16 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=234 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CurSearch ctermfg=207 ctermbg=16 cterm=reverse
|
||||
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 DiffAdd ctermfg=34 ctermbg=16 cterm=reverse
|
||||
hi DiffChange ctermfg=110 ctermbg=16 cterm=reverse
|
||||
hi DiffDelete ctermfg=167 ctermbg=16 cterm=reverse
|
||||
hi DiffText ctermfg=176 ctermbg=16 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 EndOfBuffer ctermfg=242 ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=253 ctermbg=16 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 Folded ctermfg=242 ctermbg=16 cterm=NONE
|
||||
hi IncSearch ctermfg=214 ctermbg=16 cterm=reverse
|
||||
hi LineNr ctermfg=240 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 Pmenu ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi PmenuExtra ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi PmenuKind ctermfg=16 ctermbg=248 cterm=bold
|
||||
hi PmenuSbar ctermfg=242 ctermbg=240 cterm=NONE
|
||||
hi PmenuSel ctermfg=16 ctermbg=253 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=16 ctermbg=253 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=16 ctermbg=253 cterm=bold
|
||||
hi PmenuThumb ctermfg=253 ctermbg=253 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 QuickFixLine ctermfg=207 ctermbg=16 cterm=reverse
|
||||
hi Search ctermfg=39 ctermbg=16 cterm=reverse
|
||||
hi SignColumn ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=242 ctermbg=NONE cterm=bold
|
||||
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 StatusLine ctermfg=16 ctermbg=253 cterm=bold
|
||||
hi StatusLineNC ctermfg=242 ctermbg=16 cterm=reverse
|
||||
hi TabLine ctermfg=242 ctermbg=16 cterm=reverse
|
||||
hi TabLineFill ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=232 ctermbg=253 cterm=bold
|
||||
hi TabLineSel ctermfg=16 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 VertSplit ctermfg=242 ctermbg=16 cterm=NONE
|
||||
hi Visual ctermfg=214 ctermbg=16 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 WildMenu ctermfg=39 ctermbg=16 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 Error ctermfg=197 ctermbg=16 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
|
||||
@@ -236,71 +251,76 @@ if s:t_Co >= 256
|
||||
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
|
||||
hi CursorIM ctermfg=16 ctermbg=154 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=16 cterm=NONE
|
||||
hi ToolbarButton ctermfg=253 ctermbg=16 cterm=bold
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=232 ctermbg=188 cterm=NONE
|
||||
hi Normal ctermfg=16 ctermbg=188 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CurSearch ctermfg=207 ctermbg=16 cterm=reverse
|
||||
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 CursorLineNr ctermfg=16 ctermbg=255 cterm=NONE
|
||||
hi DiffAdd ctermfg=114 ctermbg=16 cterm=reverse
|
||||
hi DiffChange ctermfg=146 ctermbg=16 cterm=reverse
|
||||
hi DiffDelete ctermfg=174 ctermbg=16 cterm=reverse
|
||||
hi DiffText ctermfg=176 ctermbg=16 cterm=reverse
|
||||
hi Directory ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=241 ctermbg=NONE cterm=NONE
|
||||
hi ErrorMsg ctermfg=16 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 IncSearch ctermfg=214 ctermbg=16 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 ModeMsg ctermfg=16 ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=16 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 Pmenu ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi PmenuExtra ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi PmenuKind ctermfg=16 ctermbg=248 cterm=bold
|
||||
hi PmenuSbar ctermfg=16 ctermbg=254 cterm=NONE
|
||||
hi PmenuSel ctermfg=188 ctermbg=16 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=188 ctermbg=16 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=188 ctermbg=16 cterm=bold
|
||||
hi PmenuThumb ctermfg=16 ctermbg=16 cterm=NONE
|
||||
hi Question ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=207 ctermbg=16 cterm=reverse
|
||||
hi Search ctermfg=39 ctermbg=16 cterm=reverse
|
||||
hi SignColumn ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=241 ctermbg=NONE cterm=bold
|
||||
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 StatusLine ctermfg=255 ctermbg=16 cterm=bold
|
||||
hi StatusLineNC ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi TabLine ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi TabLineFill ctermfg=16 ctermbg=188 cterm=NONE
|
||||
hi TabLineSel ctermfg=255 ctermbg=16 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 Visual ctermfg=214 ctermbg=16 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 WarningMsg ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=16 ctermbg=255 cterm=bold
|
||||
hi Comment ctermfg=16 ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=197 ctermbg=16 cterm=bold,reverse
|
||||
hi Identifier ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=49 ctermbg=16 cterm=bold,reverse
|
||||
hi Type ctermfg=16 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=16 ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=16 ctermbg=154 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=188 cterm=NONE
|
||||
hi ToolbarButton ctermfg=232 ctermbg=188 cterm=bold
|
||||
hi ToolbarButton ctermfg=16 ctermbg=188 cterm=bold
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
@@ -308,6 +328,19 @@ endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
if &background ==# 'dark'
|
||||
hi Comment ctermfg=darkgrey ctermbg=NONE cterm=bold
|
||||
hi CurSearch ctermfg=magenta ctermbg=black cterm=reverse
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=yellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi PmenuSbar ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi Search ctermfg=cyan ctermbg=black cterm=reverse
|
||||
hi SpecialKey ctermfg=darkgrey ctermbg=NONE cterm=bold
|
||||
hi StatusLineNC ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi TabLine ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi VertSplit ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -320,43 +353,35 @@ if s:t_Co >= 16
|
||||
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 PmenuExtra ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuKind ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuExtraSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuKindSel 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 Error ctermfg=darkred ctermbg=black 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
|
||||
@@ -370,6 +395,18 @@ if s:t_Co >= 16
|
||||
hi ToolbarButton ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
else
|
||||
" Light background
|
||||
hi CurSearch ctermfg=magenta ctermbg=black cterm=reverse
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=yellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi PmenuSbar ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi Search ctermfg=cyan ctermbg=black cterm=reverse
|
||||
hi SpecialKey ctermfg=darkgrey ctermbg=NONE cterm=bold
|
||||
hi StatusLineNC ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi TabLine ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi VertSplit ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -382,43 +419,36 @@ if s:t_Co >= 16
|
||||
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 PmenuExtra ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuKind ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuExtraSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuKindSel 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 Error ctermfg=darkred ctermbg=black 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
|
||||
@@ -437,6 +467,19 @@ endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
if &background ==# 'dark'
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi CurSearch ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -449,43 +492,35 @@ if s:t_Co >= 8
|
||||
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 PmenuExtra ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuKind ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuExtraSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuKindSel 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 Error ctermfg=darkred ctermbg=black 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
|
||||
@@ -499,6 +534,18 @@ if s:t_Co >= 8
|
||||
hi ToolbarButton ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
else
|
||||
" Light background
|
||||
hi CurSearch ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Normal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
@@ -511,43 +558,36 @@ if s:t_Co >= 8
|
||||
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 PmenuExtra ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuKind ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuExtraSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuKindSel 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 Error ctermfg=darkred ctermbg=black 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
|
||||
@@ -633,7 +673,7 @@ if s:t_Co >= 0
|
||||
endif
|
||||
|
||||
" Background: dark
|
||||
" Color: dark0 #080808 232 black
|
||||
" Color: dark0 #000000 16 black
|
||||
" Color: dark1 #d7005f 161 darkred
|
||||
" Color: dark2 #00af5f 35 darkgreen
|
||||
" Color: dark3 #d78700 172 darkyellow
|
||||
@@ -661,13 +701,15 @@ endif
|
||||
" Color: uiamber #ffaf00 214 darkyellow
|
||||
" Color: uiblack #303030 236 darkgrey
|
||||
" Color: yasogrey #1c1c1c 234 black
|
||||
" Color: linenrblack #444444 238 darkgrey
|
||||
" Color: linenrblack #585858 240 darkgrey
|
||||
" Color: uicursearch #ff5fff 207 magenta
|
||||
" Color: invisigrey #a8a8a8 248 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: light0 #000000 16 black
|
||||
" Color: light1 #af0000 124 darkred
|
||||
" Color: light2 #005f00 22 darkgreen
|
||||
" Color: light3 #af5f00 130 darkyellow
|
||||
@@ -695,6 +737,7 @@ endif
|
||||
" Color: uiamber #ffaf00 214 yellow
|
||||
" Color: invisigrey #a8a8a8 248 darkgrey
|
||||
" Color: yasogrey #e4e4e4 254 grey
|
||||
" Color: uicursearch #ff5fff 207 magenta
|
||||
" 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
|
||||
|
||||
874
runtime/colors/retrobox.vim
Normal file
874
runtime/colors/retrobox.vim
Normal file
@@ -0,0 +1,874 @@
|
||||
" Name: Retro Box
|
||||
" Description: Retro groove color scheme similar to gruvbox originally designed by morhetz <morhetz@gmail.com>
|
||||
" Author: Maxim Kim <habamax@gmail.com>, ported from gruvbox8 of Lifepillar <lifepillar@lifepillar.me>
|
||||
" Maintainer: Maxim Kim <habamax@gmail.com>, ported from gruvbox8 of Lifepillar <lifepillar@lifepillar.me>
|
||||
" Website: https://www.github.com/vim/colorschemes
|
||||
" License: Vim License (see `:help license`)
|
||||
" Last Updated: Sun 12 Mar 2023 15:14:04 AEDT
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
hi clear
|
||||
let g:colors_name = 'retrobox'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !has('gui_running') ? (&t_Co ?? 0) : -1
|
||||
|
||||
hi! link CursorColumn CursorLine
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link VisualNOS Visual
|
||||
hi! link Tag Special
|
||||
hi! link lCursor Cursor
|
||||
hi! link MessageWindow PMenu
|
||||
hi! link PopupNotification Todo
|
||||
hi! link CurSearch Search
|
||||
|
||||
if &background ==# 'dark'
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#1c1c1c', '#cc241d', '#98971a', '#d79921', '#458588', '#b16286', '#689d6a', '#a89984', '#928374', '#fb4934', '#b8bb26', '#fabd2f', '#83a598', '#d3869b', '#8ec07c', '#ebdbb2']
|
||||
endif
|
||||
hi Normal guifg=#ebdbb2 guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#fabd2f guibg=#303030 gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#928374 guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=#928374 guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi VertSplit guifg=#303030 guibg=#1c1c1c gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#000000 gui=NONE cterm=NONE
|
||||
hi Comment guifg=#928374 guibg=NONE gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi Error guifg=#fb4934 guibg=#1c1c1c gui=bold,reverse cterm=bold,reverse
|
||||
hi ErrorMsg guifg=#1c1c1c guibg=#fb4934 gui=bold cterm=bold
|
||||
hi Folded guifg=#928374 guibg=#121212 gui=NONE cterm=NONE
|
||||
hi LineNr guifg=#7c6f64 guibg=NONE gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=NONE guibg=#504945 gui=bold,underline cterm=bold,underline
|
||||
hi NonText guifg=#504945 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#ebdbb2 guibg=#3c3836 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=#3c3836 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#3c3836 guibg=#83a598 gui=bold cterm=bold
|
||||
hi PmenuThumb guifg=NONE guibg=#7c6f64 gui=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#fb4934 guibg=#3c3836 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#fb4934 guibg=#83a598 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#a89984 guibg=#3c3836 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#303030 guibg=#83a598 gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#928374 guibg=NONE gui=NONE cterm=NONE
|
||||
hi StatusLine guifg=#504945 guibg=#ebdbb2 gui=bold,reverse cterm=bold,reverse
|
||||
hi StatusLineNC guifg=#3c3836 guibg=#a89984 gui=reverse cterm=reverse
|
||||
hi TabLine guifg=#a89984 guibg=#3c3836 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=#ebdbb2 guibg=#3c3836 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#fbf1c7 guibg=#1c1c1c gui=bold cterm=bold
|
||||
hi ToolbarButton guifg=#fbf1c7 guibg=#303030 gui=bold cterm=bold
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual guifg=#1c1c1c guibg=#83a598 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#83a598 guibg=#504945 gui=bold cterm=bold
|
||||
hi EndOfBuffer guifg=#504945 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Conceal guifg=#83a598 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Cursor guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd guifg=#b8bb26 guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#8ec07c guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#fb4934 guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#fabd2f guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi Directory guifg=#b8bb26 guibg=NONE gui=bold cterm=bold
|
||||
hi IncSearch guifg=#fe8019 guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi ModeMsg guifg=#fabd2f guibg=NONE gui=bold cterm=bold
|
||||
hi MoreMsg guifg=#fabd2f guibg=NONE gui=bold cterm=bold
|
||||
hi Question guifg=#fe8019 guibg=NONE gui=bold cterm=bold
|
||||
hi Search guifg=#98971a guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi QuickFixLine guifg=#8ec07c guibg=#1c1c1c gui=reverse cterm=reverse
|
||||
hi SpellBad guifg=#fb4934 guibg=NONE guisp=#fb4934 gui=undercurl cterm=underline
|
||||
hi SpellCap guifg=#83a598 guibg=NONE guisp=#83a598 gui=undercurl cterm=underline
|
||||
hi SpellLocal guifg=#8ec07c guibg=NONE guisp=#8ec07c gui=undercurl cterm=underline
|
||||
hi SpellRare guifg=#d3869b guibg=NONE guisp=#d3869b gui=undercurl cterm=underline
|
||||
hi Title guifg=#b8bb26 guibg=NONE gui=bold cterm=bold
|
||||
hi WarningMsg guifg=#fb4934 guibg=NONE gui=bold cterm=bold
|
||||
hi Boolean guifg=#d3869b guibg=NONE gui=NONE cterm=NONE
|
||||
hi Character guifg=#d3869b guibg=NONE gui=NONE cterm=NONE
|
||||
hi Conditional guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#d3869b guibg=NONE gui=NONE cterm=NONE
|
||||
hi Define guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi Debug guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Delimiter guifg=#fe8019 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#fb4934 guibg=#1c1c1c gui=bold,reverse cterm=bold,reverse
|
||||
hi Exception guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Float guifg=#d3869b guibg=NONE gui=NONE cterm=NONE
|
||||
hi Function guifg=#b8bb26 guibg=NONE gui=bold cterm=bold
|
||||
hi Identifier guifg=#83a598 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=fg guibg=NONE gui=NONE cterm=NONE
|
||||
hi Include guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi Keyword guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Label guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Macro guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi Number guifg=#d3869b guibg=NONE gui=NONE cterm=NONE
|
||||
hi Operator guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreCondit guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi Repeat guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialChar guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialComment guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#fb4934 guibg=NONE gui=NONE cterm=NONE
|
||||
hi StorageClass guifg=#fe8019 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#fe8019 guibg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#b8bb26 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Structure guifg=#8ec07c guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=fg guibg=#1c1c1c gui=bold cterm=bold
|
||||
hi Type guifg=#fabd2f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Typedef guifg=#fabd2f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#83a598 guibg=NONE gui=underline cterm=underline
|
||||
hi CursorIM guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
else
|
||||
" Light background
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#3c3836', '#cc241d', '#98971a', '#d79921', '#458588', '#b16286', '#689d6a', '#7c6f64', '#928374', '#9d0006', '#79740e', '#b57614', '#076678', '#8f3f71', '#427b58', '#fbf1c7']
|
||||
endif
|
||||
hi Normal guifg=#3c3836 guibg=#fbf1c7 gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#b57614 guibg=#e5d4b1 gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#928374 guibg=#fbf1c7 gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=#3c3836 guibg=#fbf1c7 gui=NONE cterm=NONE
|
||||
hi VertSplit guifg=#bdae93 guibg=#fbf1c7 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#ebe1b7 gui=NONE cterm=NONE
|
||||
hi Comment guifg=#928374 guibg=NONE gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#e5d4b1 gui=NONE cterm=NONE
|
||||
hi Error guifg=#9d0006 guibg=#fbf1c7 gui=bold,reverse cterm=bold,reverse
|
||||
hi ErrorMsg guifg=#fbf1c7 guibg=#9d0006 gui=bold cterm=bold
|
||||
hi Folded guifg=#928374 guibg=#ffffd7 gui=NONE cterm=NONE
|
||||
hi LineNr guifg=#a89984 guibg=NONE gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=NONE guibg=#e5d4b1 gui=bold,underline cterm=bold,underline
|
||||
hi NonText guifg=#e5d4b1 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#3c3836 guibg=#e5d4b1 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=#e5d4b1 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#e5d4b1 guibg=#076678 gui=bold cterm=bold
|
||||
hi PmenuThumb guifg=NONE guibg=#a89984 gui=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#9d0006 guibg=#e5d4b1 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#9d0006 guibg=#076678 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#7c6f64 guibg=#e5d4b1 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#bdae93 guibg=#076678 gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#928374 guibg=NONE gui=NONE cterm=NONE
|
||||
hi StatusLine guifg=#bdae93 guibg=#3c3836 gui=bold,reverse cterm=bold,reverse
|
||||
hi StatusLineNC guifg=#ebdbb2 guibg=#3c3836 gui=reverse cterm=reverse
|
||||
hi TabLine guifg=#665c54 guibg=#ebdbb2 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=#ebdbb2 guibg=#ebdbb2 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#282828 guibg=#fbf1c7 gui=bold cterm=bold
|
||||
hi ToolbarButton guifg=#282828 guibg=#bdae93 gui=bold cterm=bold
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual guifg=#fbf1c7 guibg=#076678 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#076678 guibg=#e5d4b1 gui=bold cterm=bold
|
||||
hi EndOfBuffer guifg=#e5d4b1 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Conceal guifg=#076678 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Cursor guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd guifg=#79740e guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#427b58 guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#9d0006 guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#b57614 guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#79740e guibg=NONE gui=bold cterm=bold
|
||||
hi IncSearch guifg=#ff5f00 guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi ModeMsg guifg=#3c3836 guibg=NONE gui=bold cterm=bold
|
||||
hi MoreMsg guifg=#3c3836 guibg=NONE gui=bold cterm=bold
|
||||
hi Question guifg=#ff5f00 guibg=NONE gui=bold cterm=bold
|
||||
hi Search guifg=#98971a guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi QuickFixLine guifg=#427b58 guibg=#fbf1c7 gui=reverse cterm=reverse
|
||||
hi SpellBad guifg=#9d0006 guibg=NONE guisp=#9d0006 gui=undercurl cterm=underline
|
||||
hi SpellCap guifg=#076678 guibg=NONE guisp=#076678 gui=undercurl cterm=underline
|
||||
hi SpellLocal guifg=#427b58 guibg=NONE guisp=#427b58 gui=undercurl cterm=underline
|
||||
hi SpellRare guifg=#8f3f71 guibg=NONE guisp=#8f3f71 gui=undercurl cterm=underline
|
||||
hi Title guifg=#79740e guibg=NONE gui=bold cterm=bold
|
||||
hi WarningMsg guifg=#9d0006 guibg=NONE gui=bold cterm=bold
|
||||
hi Boolean guifg=#8f3f71 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Character guifg=#8f3f71 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Conditional guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#8f3f71 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Define guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Debug guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Delimiter guifg=#ff5f00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#9d0006 guibg=#fbf1c7 gui=bold,reverse cterm=bold,reverse
|
||||
hi Exception guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Float guifg=#8f3f71 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Function guifg=#79740e guibg=NONE gui=bold cterm=bold
|
||||
hi Identifier guifg=#076678 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=fg guibg=NONE gui=NONE cterm=NONE
|
||||
hi Include guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Keyword guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Label guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Macro guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Number guifg=#8f3f71 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Operator guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreCondit guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Repeat guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialChar guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialComment guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#9d0006 guibg=NONE gui=NONE cterm=NONE
|
||||
hi StorageClass guifg=#ff5f00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#ff5f00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#79740e guibg=NONE gui=NONE cterm=NONE
|
||||
hi Structure guifg=#427b58 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=fg guibg=#fbf1c7 gui=bold cterm=bold
|
||||
hi Type guifg=#b57614 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Typedef guifg=#b57614 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#076678 guibg=NONE gui=underline cterm=underline
|
||||
hi CursorIM guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
endif
|
||||
|
||||
if s:t_Co >= 256
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=187 ctermbg=234 cterm=NONE
|
||||
hi CursorLineNr ctermfg=214 ctermbg=236 cterm=NONE
|
||||
hi FoldColumn ctermfg=102 ctermbg=234 cterm=NONE
|
||||
hi SignColumn ctermfg=102 ctermbg=234 cterm=NONE
|
||||
hi VertSplit ctermfg=236 ctermbg=234 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=16 cterm=NONE
|
||||
hi Comment ctermfg=102 ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi Error ctermfg=203 ctermbg=234 cterm=bold,reverse
|
||||
hi ErrorMsg ctermfg=234 ctermbg=203 cterm=bold
|
||||
hi Folded ctermfg=102 ctermbg=233 cterm=NONE
|
||||
hi LineNr ctermfg=243 ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=239 cterm=bold,underline
|
||||
hi NonText ctermfg=239 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=187 ctermbg=237 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=237 cterm=NONE
|
||||
hi PmenuSel ctermfg=237 ctermbg=109 cterm=bold
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=243 cterm=NONE
|
||||
hi PmenuKind ctermfg=203 ctermbg=237 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=203 ctermbg=109 cterm=NONE
|
||||
hi PmenuExtra ctermfg=102 ctermbg=237 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=236 ctermbg=109 cterm=NONE
|
||||
hi SpecialKey ctermfg=102 ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=239 ctermbg=187 cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=237 ctermbg=102 cterm=reverse
|
||||
hi TabLine ctermfg=102 ctermbg=237 cterm=NONE
|
||||
hi TabLineFill ctermfg=187 ctermbg=237 cterm=NONE
|
||||
hi TabLineSel ctermfg=230 ctermbg=234 cterm=bold
|
||||
hi ToolbarButton ctermfg=230 ctermbg=236 cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=234 ctermbg=109 cterm=NONE
|
||||
hi WildMenu ctermfg=109 ctermbg=239 cterm=bold
|
||||
hi EndOfBuffer ctermfg=239 ctermbg=NONE cterm=NONE
|
||||
hi Conceal ctermfg=109 ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd ctermfg=142 ctermbg=234 cterm=reverse
|
||||
hi DiffChange ctermfg=107 ctermbg=234 cterm=reverse
|
||||
hi DiffDelete ctermfg=203 ctermbg=234 cterm=reverse
|
||||
hi DiffText ctermfg=214 ctermbg=234 cterm=reverse
|
||||
hi Directory ctermfg=142 ctermbg=NONE cterm=bold
|
||||
hi IncSearch ctermfg=208 ctermbg=234 cterm=reverse
|
||||
hi ModeMsg ctermfg=214 ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=214 ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=208 ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=100 ctermbg=234 cterm=reverse
|
||||
hi QuickFixLine ctermfg=107 ctermbg=234 cterm=reverse
|
||||
hi SpellBad ctermfg=203 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=109 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=107 ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=175 ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=142 ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=203 ctermbg=NONE cterm=bold
|
||||
hi Boolean ctermfg=175 ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=175 ctermbg=NONE cterm=NONE
|
||||
hi Conditional ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=175 ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi Delimiter ctermfg=208 ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=203 ctermbg=234 cterm=bold,reverse
|
||||
hi Exception ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi Float ctermfg=175 ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=142 ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=109 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
|
||||
hi Include ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi Keyword ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi Label ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi Macro ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi Number ctermfg=175 ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi PreCondit ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi Repeat ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi SpecialChar ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi SpecialComment ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=203 ctermbg=NONE cterm=NONE
|
||||
hi StorageClass ctermfg=208 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=208 ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=142 ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=107 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=fg ctermbg=234 cterm=bold
|
||||
hi Type ctermfg=214 ctermbg=NONE cterm=NONE
|
||||
hi Typedef ctermfg=214 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=109 ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=237 ctermbg=230 cterm=NONE
|
||||
hi CursorLineNr ctermfg=172 ctermbg=188 cterm=NONE
|
||||
hi FoldColumn ctermfg=102 ctermbg=230 cterm=NONE
|
||||
hi SignColumn ctermfg=237 ctermbg=230 cterm=NONE
|
||||
hi VertSplit ctermfg=144 ctermbg=230 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=229 cterm=NONE
|
||||
hi Comment ctermfg=102 ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=188 cterm=NONE
|
||||
hi Error ctermfg=124 ctermbg=230 cterm=bold,reverse
|
||||
hi ErrorMsg ctermfg=230 ctermbg=124 cterm=bold
|
||||
hi Folded ctermfg=102 ctermbg=231 cterm=NONE
|
||||
hi LineNr ctermfg=137 ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=188 cterm=bold,underline
|
||||
hi NonText ctermfg=188 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=237 ctermbg=188 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=188 cterm=NONE
|
||||
hi PmenuSel ctermfg=188 ctermbg=23 cterm=bold
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=137 cterm=NONE
|
||||
hi PmenuKind ctermfg=124 ctermbg=188 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=124 ctermbg=23 cterm=NONE
|
||||
hi PmenuExtra ctermfg=243 ctermbg=188 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=144 ctermbg=23 cterm=NONE
|
||||
hi SpecialKey ctermfg=102 ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=144 ctermbg=237 cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=187 ctermbg=237 cterm=reverse
|
||||
hi TabLine ctermfg=59 ctermbg=187 cterm=NONE
|
||||
hi TabLineFill ctermfg=187 ctermbg=187 cterm=NONE
|
||||
hi TabLineSel ctermfg=235 ctermbg=230 cterm=bold
|
||||
hi ToolbarButton ctermfg=235 ctermbg=144 cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=230 ctermbg=23 cterm=NONE
|
||||
hi WildMenu ctermfg=23 ctermbg=188 cterm=bold
|
||||
hi EndOfBuffer ctermfg=188 ctermbg=NONE cterm=NONE
|
||||
hi Conceal ctermfg=23 ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd ctermfg=64 ctermbg=230 cterm=reverse
|
||||
hi DiffChange ctermfg=29 ctermbg=230 cterm=reverse
|
||||
hi DiffDelete ctermfg=124 ctermbg=230 cterm=reverse
|
||||
hi DiffText ctermfg=172 ctermbg=230 cterm=reverse
|
||||
hi Directory ctermfg=64 ctermbg=NONE cterm=bold
|
||||
hi IncSearch ctermfg=202 ctermbg=230 cterm=reverse
|
||||
hi ModeMsg ctermfg=237 ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=237 ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=202 ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=100 ctermbg=230 cterm=reverse
|
||||
hi QuickFixLine ctermfg=29 ctermbg=230 cterm=reverse
|
||||
hi SpellBad ctermfg=124 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=23 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=29 ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=126 ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=64 ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=124 ctermbg=NONE cterm=bold
|
||||
hi Boolean ctermfg=126 ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=126 ctermbg=NONE cterm=NONE
|
||||
hi Conditional ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=126 ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi Delimiter ctermfg=202 ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=124 ctermbg=230 cterm=bold,reverse
|
||||
hi Exception ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi Float ctermfg=126 ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=64 ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=23 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
|
||||
hi Include ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi Keyword ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi Label ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi Macro ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi Number ctermfg=126 ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi PreCondit ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi Repeat ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi SpecialChar ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi SpecialComment ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi StorageClass ctermfg=202 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=202 ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=64 ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=29 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=fg ctermbg=230 cterm=bold
|
||||
hi Type ctermfg=172 ctermbg=NONE cterm=NONE
|
||||
hi Typedef ctermfg=172 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=23 ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=White ctermbg=Black cterm=NONE
|
||||
hi ColorColumn ctermfg=Black ctermbg=DarkYellow cterm=NONE
|
||||
hi Comment ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorLineNr ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=Black cterm=reverse
|
||||
hi ErrorMsg ctermfg=Black ctermbg=Red cterm=NONE
|
||||
hi FoldColumn ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi LineNr ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=Black cterm=bold,underline
|
||||
hi NonText ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=White ctermbg=DarkGray cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=DarkGray cterm=NONE
|
||||
hi PmenuSel ctermfg=Black ctermbg=Blue cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=Blue cterm=NONE
|
||||
hi PmenuKind ctermfg=DarkRed ctermbg=DarkGray cterm=NONE
|
||||
hi PmenuKindSel ctermfg=DarkRed ctermbg=Blue cterm=NONE
|
||||
hi PmenuExtra ctermfg=gray ctermbg=DarkGray cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=Black ctermbg=Blue cterm=NONE
|
||||
hi SignColumn ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=gray ctermbg=Black cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=gray ctermbg=Black cterm=reverse
|
||||
hi TabLine ctermfg=Black ctermbg=DarkGray cterm=NONE
|
||||
hi TabLineFill ctermfg=Black ctermbg=DarkGray cterm=NONE
|
||||
hi TabLineSel ctermfg=White ctermbg=Black cterm=bold
|
||||
hi ToolbarButton ctermfg=White ctermbg=DarkGray cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=Black ctermbg=gray cterm=NONE
|
||||
hi Visual ctermfg=Black ctermbg=Blue cterm=NONE
|
||||
hi WildMenu ctermfg=White ctermbg=Black cterm=bold
|
||||
hi EndOfBuffer ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi Conceal ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd ctermfg=Green ctermbg=Black cterm=reverse
|
||||
hi DiffChange ctermfg=Cyan ctermbg=Black cterm=reverse
|
||||
hi DiffDelete ctermfg=Red ctermbg=Black cterm=reverse
|
||||
hi DiffText ctermfg=Yellow ctermbg=Black cterm=reverse
|
||||
hi Directory ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi IncSearch ctermfg=Magenta ctermbg=Black cterm=reverse
|
||||
hi ModeMsg ctermfg=Yellow ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=Yellow ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=Magenta ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=DarkGreen ctermbg=Black cterm=reverse
|
||||
hi QuickFixLine ctermfg=Cyan ctermbg=Black cterm=reverse
|
||||
hi SpellBad ctermfg=Red ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=Cyan ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=Magenta ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=Red ctermbg=NONE cterm=bold
|
||||
hi Boolean ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Conditional ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Delimiter ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=Black cterm=bold,reverse
|
||||
hi Exception ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Float ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
|
||||
hi Include ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Keyword ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Label ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Macro ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Number ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreCondit ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Repeat ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialChar ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialComment ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi StorageClass ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=Green ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=fg ctermbg=Black cterm=bold
|
||||
hi Type ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Typedef ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=Black ctermbg=White cterm=NONE
|
||||
hi ColorColumn ctermfg=White ctermbg=Grey cterm=NONE
|
||||
hi Comment ctermfg=DarkGray ctermbg=NONE cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorLineNr ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=White cterm=reverse
|
||||
hi ErrorMsg ctermfg=White ctermbg=Red cterm=NONE
|
||||
hi FoldColumn ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi LineNr ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=White cterm=bold,underline
|
||||
hi NonText ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=Black ctermbg=Grey cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=Grey cterm=NONE
|
||||
hi PmenuSel ctermfg=White ctermbg=Blue cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=Blue cterm=NONE
|
||||
hi PmenuKind ctermfg=DarkRed ctermbg=Grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=DarkRed ctermbg=Blue cterm=NONE
|
||||
hi PmenuExtra ctermfg=DarkGray ctermbg=Grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=White ctermbg=Blue cterm=NONE
|
||||
hi SignColumn ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=DarkGray ctermbg=White cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=Grey ctermbg=DarkGray cterm=reverse
|
||||
hi TabLine ctermfg=DarkGray ctermbg=Grey cterm=NONE
|
||||
hi TabLineFill ctermfg=White ctermbg=Grey cterm=NONE
|
||||
hi TabLineSel ctermfg=DarkGray ctermbg=White cterm=bold
|
||||
hi ToolbarButton ctermfg=Black ctermbg=Grey cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=DarkGray ctermbg=Grey cterm=NONE
|
||||
hi Visual ctermfg=White ctermbg=Blue cterm=NONE
|
||||
hi WildMenu ctermfg=Black ctermbg=White cterm=bold
|
||||
hi EndOfBuffer ctermfg=Grey ctermbg=NONE cterm=NONE
|
||||
hi Conceal ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd ctermfg=Green ctermbg=White cterm=reverse
|
||||
hi DiffChange ctermfg=Cyan ctermbg=White cterm=reverse
|
||||
hi DiffDelete ctermfg=Red ctermbg=White cterm=reverse
|
||||
hi DiffText ctermfg=Yellow ctermbg=White cterm=reverse
|
||||
hi Directory ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi IncSearch ctermfg=Magenta ctermbg=White cterm=reverse
|
||||
hi ModeMsg ctermfg=Black ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=Black ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=Magenta ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=DarkGreen ctermbg=White cterm=reverse
|
||||
hi QuickFixLine ctermfg=Cyan ctermbg=White cterm=reverse
|
||||
hi SpellBad ctermfg=Red ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=Cyan ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=Magenta ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=Red ctermbg=NONE cterm=bold
|
||||
hi Boolean ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Conditional ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Delimiter ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=White cterm=bold,reverse
|
||||
hi Exception ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Float ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
|
||||
hi Include ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Keyword ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Label ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Macro ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Number ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreCondit ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Repeat ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialChar ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialComment ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi StorageClass ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=Green ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=fg ctermbg=White cterm=bold
|
||||
hi Type ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Typedef ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=gray ctermbg=Black cterm=NONE
|
||||
hi ColorColumn ctermfg=Black ctermbg=gray cterm=NONE
|
||||
hi Comment ctermfg=gray ctermbg=NONE cterm=bold
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorLineNr ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=Black cterm=reverse
|
||||
hi ErrorMsg ctermfg=Black ctermbg=Red cterm=NONE
|
||||
hi FoldColumn ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi LineNr ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=gray ctermbg=NONE cterm=bold,underline
|
||||
hi NonText ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=DarkGray ctermbg=White cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=DarkGray cterm=NONE
|
||||
hi PmenuSel ctermfg=Black ctermbg=Blue cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=Blue cterm=NONE
|
||||
hi PmenuKind ctermfg=Red ctermbg=White cterm=NONE
|
||||
hi PmenuKindSel ctermfg=Red ctermbg=Blue cterm=NONE
|
||||
hi PmenuExtra ctermfg=DarkGray ctermbg=White cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=DarkGray ctermbg=Blue cterm=NONE
|
||||
hi SignColumn ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=gray ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=gray ctermbg=Black cterm=bold,reverse
|
||||
hi StatusLineNC 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=gray ctermbg=Black cterm=NONE
|
||||
hi ToolbarButton ctermfg=Black ctermbg=gray cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=Black ctermbg=gray cterm=NONE
|
||||
hi Visual ctermfg=Black ctermbg=Blue cterm=NONE
|
||||
hi WildMenu ctermfg=Blue ctermbg=DarkGray cterm=bold
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Conceal ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd ctermfg=Green ctermbg=Black cterm=reverse
|
||||
hi DiffChange ctermfg=Cyan ctermbg=Black cterm=reverse
|
||||
hi DiffDelete ctermfg=Red ctermbg=Black cterm=reverse
|
||||
hi DiffText ctermfg=Yellow ctermbg=Black cterm=reverse
|
||||
hi Directory ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi IncSearch ctermfg=Magenta ctermbg=Black cterm=reverse
|
||||
hi ModeMsg ctermfg=Yellow ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=Yellow ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=Magenta ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=DarkGreen ctermbg=Black cterm=reverse
|
||||
hi QuickFixLine ctermfg=Cyan ctermbg=Black cterm=reverse
|
||||
hi SpellBad ctermfg=Red ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=Cyan ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=Magenta ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=Red ctermbg=NONE cterm=bold
|
||||
hi Boolean ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Conditional ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Delimiter ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=Black cterm=bold,reverse
|
||||
hi Exception ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Float ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
|
||||
hi Include ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Keyword ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Label ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Macro ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Number ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreCondit ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Repeat ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialChar ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialComment ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi StorageClass ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=Green ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=fg ctermbg=Black cterm=bold
|
||||
hi Type ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Typedef ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=Black ctermbg=Grey cterm=NONE
|
||||
hi ColorColumn ctermfg=White ctermbg=Black cterm=NONE
|
||||
hi Comment ctermfg=Black ctermbg=NONE cterm=bold
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorLineNr ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=White cterm=reverse
|
||||
hi ErrorMsg ctermfg=White ctermbg=Red cterm=NONE
|
||||
hi FoldColumn ctermfg=Black ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=Black ctermbg=NONE cterm=NONE
|
||||
hi LineNr ctermfg=Black ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=Black ctermbg=NONE cterm=bold,underline
|
||||
hi NonText ctermfg=Black ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=Grey ctermbg=Black cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=Grey cterm=NONE
|
||||
hi PmenuSel ctermfg=White ctermbg=Blue cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=Blue cterm=NONE
|
||||
hi PmenuKind ctermfg=Red ctermbg=Black cterm=NONE
|
||||
hi PmenuKindSel ctermfg=Red ctermbg=Blue cterm=NONE
|
||||
hi PmenuExtra ctermfg=Grey ctermbg=Black cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=Grey ctermbg=Blue cterm=NONE
|
||||
hi SignColumn ctermfg=Black ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=Black ctermbg=NONE cterm=NONE
|
||||
hi StatusLine ctermfg=Black ctermbg=White cterm=bold,reverse
|
||||
hi StatusLineNC ctermfg=Black ctermbg=White cterm=reverse
|
||||
hi TabLine ctermfg=White ctermbg=Black cterm=NONE
|
||||
hi TabLineFill ctermfg=White ctermbg=Black cterm=NONE
|
||||
hi TabLineSel ctermfg=Black ctermbg=White cterm=NONE
|
||||
hi ToolbarButton ctermfg=White ctermbg=Black cterm=bold
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=White ctermbg=Black cterm=NONE
|
||||
hi Visual ctermfg=White ctermbg=Blue cterm=NONE
|
||||
hi WildMenu ctermfg=Blue ctermbg=Grey cterm=bold
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Conceal ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi DiffAdd ctermfg=Green ctermbg=White cterm=reverse
|
||||
hi DiffChange ctermfg=Cyan ctermbg=White cterm=reverse
|
||||
hi DiffDelete ctermfg=Red ctermbg=White cterm=reverse
|
||||
hi DiffText ctermfg=Yellow ctermbg=White cterm=reverse
|
||||
hi Directory ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi IncSearch ctermfg=Magenta ctermbg=White cterm=reverse
|
||||
hi ModeMsg ctermfg=Black ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=Black ctermbg=NONE cterm=bold
|
||||
hi Question ctermfg=Magenta ctermbg=NONE cterm=bold
|
||||
hi Search ctermfg=DarkGreen ctermbg=White cterm=reverse
|
||||
hi QuickFixLine ctermfg=Cyan ctermbg=White cterm=reverse
|
||||
hi SpellBad ctermfg=Red ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=Cyan ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=Magenta ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi WarningMsg ctermfg=Red ctermbg=NONE cterm=bold
|
||||
hi Boolean ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Character ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Conditional ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Define ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Debug ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Delimiter ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=Red ctermbg=White cterm=bold,reverse
|
||||
hi Exception ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Float ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Function ctermfg=Green ctermbg=NONE cterm=bold
|
||||
hi Identifier ctermfg=Blue ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
|
||||
hi Include ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Keyword ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Label ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Macro ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Number ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Operator ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreCondit ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Repeat ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialChar ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi SpecialComment ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=Red ctermbg=NONE cterm=NONE
|
||||
hi StorageClass ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=Magenta ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=Green ctermbg=NONE cterm=NONE
|
||||
hi Structure ctermfg=Cyan ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=fg ctermbg=White cterm=bold
|
||||
hi Type ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Typedef ctermfg=Yellow ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=Blue ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=NONE ctermbg=NONE cterm=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
|
||||
|
||||
" Color: neutralred #cc241d 160 DarkRed
|
||||
" Color: neutralgreen #98971a 100 DarkGreen
|
||||
" Color: neutralyellow #d79921 172 DarkYellow
|
||||
" Color: neutralblue #458588 66 DarkBlue
|
||||
" Color: neutralpurple #b16286 132 DarkMagenta
|
||||
" Color: neutralaqua #689d6a 71 DarkCyan
|
||||
" Color: neutralorange #d65d0e 166 LightRed
|
||||
" Background: dark
|
||||
" Color: bg0 #1c1c1c 234 Black
|
||||
" Color: bg1 #3c3836 237 DarkGray
|
||||
" Color: bg2 #504945 239 DarkGray
|
||||
" Color: bg3 #303030 236
|
||||
" Color: bg4 #7c6f64 243
|
||||
" Color: bg5 #000000 16 DarkGray
|
||||
" Color: bg6 #121212 233 DarkGray
|
||||
" Color: fg0 #fbf1c7 230 White
|
||||
" Color: fg1 #ebdbb2 187 White
|
||||
" Color: fg2 #d5c4a1 187
|
||||
" Color: fg3 #bdae93 144
|
||||
" Color: fg4 #a89984 102 gray
|
||||
" Color: grey #928374 102 DarkGray
|
||||
" Color: red #fb4934 203 Red
|
||||
" Color: green #b8bb26 142 Green
|
||||
" Color: yellow #fabd2f 214 Yellow
|
||||
" Color: blue #83a598 109 Blue
|
||||
" Color: purple #d3869b 175 Magenta
|
||||
" Color: aqua #8ec07c 107 Cyan
|
||||
" Color: orange #fe8019 208 Magenta
|
||||
" Term colors: bg0 neutralred neutralgreen neutralyellow neutralblue neutralpurple neutralaqua fg4
|
||||
" Term colors: grey red green yellow blue purple aqua fg1
|
||||
" Background: light
|
||||
" Color: bg0 #fbf1c7 230 White
|
||||
" Color: bg1 #ebdbb2 187 Grey
|
||||
" Color: bg2 #e5d4b1 188 Grey
|
||||
" Color: bg3 #bdae93 144
|
||||
" Color: bg4 #a89984 137
|
||||
" Color: bg5 #ebe1b7 229 Grey
|
||||
" Color: bg6 #ffffd7 231 Grey
|
||||
" Color: fg0 #282828 235 DarkGray
|
||||
" Color: fg1 #3c3836 237 Black
|
||||
" Color: fg2 #503836 237
|
||||
" Color: fg3 #665c54 59
|
||||
" Color: fg4 #7c6f64 243 Black
|
||||
" Color: grey #928374 102 DarkGray
|
||||
" Color: red #9d0006 124 Red
|
||||
" Color: green #79740e 64 Green
|
||||
" Color: yellow #b57614 172 Yellow
|
||||
" Color: blue #076678 23 Blue
|
||||
" Color: purple #8f3f71 126 Magenta
|
||||
" Color: aqua #427b58 29 Cyan
|
||||
" Color: orange #ff5f00 202 Magenta
|
||||
" Term colors: fg1 neutralred neutralgreen neutralyellow neutralblue neutralpurple neutralaqua fg4
|
||||
" Term colors: grey red green yellow blue purple aqua bg0
|
||||
" Background: any
|
||||
" vim: et ts=2 sw=2
|
||||
444
runtime/colors/sorbet.vim
Normal file
444
runtime/colors/sorbet.vim
Normal file
@@ -0,0 +1,444 @@
|
||||
" Name: sorbet
|
||||
" Description: A shallow grave, a monument to the ruined age.
|
||||
" Author: Maxence Weynans <neutaaaaan@gmail.com>
|
||||
" Maintainer: Maxence Weynans <neutaaaaan@gmail.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Vim License (see `:help license`)`
|
||||
" Last Updated: Wed 15 Mar 2023 05:40:19 PM CET
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
set background=dark
|
||||
|
||||
hi clear
|
||||
let g:colors_name = 'sorbet'
|
||||
|
||||
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 ErrorMsg Error
|
||||
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 Structure Type
|
||||
hi! link Tag Special
|
||||
hi! link Typedef Type
|
||||
hi! link lCursor Cursor
|
||||
hi! link debugPC CursorLine
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#d75f5f', '#87d75f', '#d7af5f', '#87afd7', '#af87d7', '#5fafaf', '#dadada', '#707070', '#ff5f5f', '#87ff5f', '#ffd75f', '#87d7ff', '#d787ff', '#5fd7d7', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#dadada guibg=#161821 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#262831 gui=NONE cterm=NONE
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CurSearch guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Cursor guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn guifg=NONE guibg=#363841 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#363841 gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#d7d7ff guibg=#363841 gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#00af5f guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#87afff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#d7005f guibg=#000000 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#ff87ff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#5f5f87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#8787af guibg=NONE gui=NONE cterm=NONE
|
||||
hi Folded guifg=#5f5f87 guibg=#161821 gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#ffaf00 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi LineNr guifg=#5f5f87 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=#000000 guibg=#a6a8b1 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#000000 guibg=#a6a8b1 gui=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#000000 guibg=#a6a8b1 gui=bold cterm=bold
|
||||
hi PmenuSbar guifg=#707070 guibg=#5f5f87 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#000000 guibg=#d7d7ff gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#000000 guibg=#d7d7ff gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#000000 guibg=#d7d7ff gui=bold cterm=bold
|
||||
hi PmenuThumb guifg=#dadada guibg=#d7d7ff gui=NONE cterm=NONE
|
||||
hi Question guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Search guifg=#00afff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi SignColumn guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#5f5f87 guibg=NONE gui=bold cterm=bold
|
||||
hi SpellBad guifg=#d75f5f guibg=NONE guisp=#d75f5f gui=undercurl cterm=underline
|
||||
hi SpellCap guifg=#87afd7 guibg=NONE guisp=#87afd7 gui=undercurl cterm=underline
|
||||
hi SpellLocal guifg=#af87d7 guibg=NONE guisp=#af87d7 gui=undercurl cterm=underline
|
||||
hi SpellRare guifg=#5fafaf guibg=NONE guisp=#5fafaf gui=undercurl cterm=underline
|
||||
hi StatusLine guifg=#000000 guibg=#d7d7ff gui=bold cterm=bold
|
||||
hi StatusLineNC guifg=#8787af guibg=#000000 gui=reverse cterm=reverse
|
||||
hi TabLine guifg=#8787af guibg=#000000 gui=reverse cterm=reverse
|
||||
hi TabLineFill guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#000000 guibg=#d7d7ff gui=bold cterm=bold
|
||||
hi Title guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit guifg=#5f5f87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Visual guifg=#ffaf00 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi VisualNOS guifg=NONE guibg=#363841 gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#d7d7ff guibg=#161821 gui=bold cterm=bold
|
||||
hi Comment guifg=#af87d7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#d75f5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#ff5f5f guibg=#000000 gui=bold,reverse cterm=bold,reverse
|
||||
hi Identifier guifg=#87d75f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=#dadada guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#87afd7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#5fafaf guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#87afd7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#d7af5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#5fd7af guibg=NONE gui=bold,reverse cterm=bold,reverse
|
||||
hi Type guifg=#87afd7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=#dadada guibg=NONE gui=underline cterm=underline
|
||||
hi CursorIM guifg=#000000 guibg=#afff00 gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=#000000 gui=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#dadada guibg=#000000 gui=bold cterm=bold
|
||||
hi DiffRemoved guifg=#d75f5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi debugBreakpoint guifg=#8787af guibg=#000000 gui=bold,reverse cterm=bold,reverse
|
||||
|
||||
if s:t_Co >= 256
|
||||
hi Normal ctermfg=253 ctermbg=233 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi CurSearch ctermfg=207 ctermbg=16 cterm=reverse
|
||||
hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi CursorColumn ctermfg=NONE ctermbg=237 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=237 cterm=NONE
|
||||
hi CursorLineNr ctermfg=189 ctermbg=237 cterm=NONE
|
||||
hi DiffAdd ctermfg=35 ctermbg=16 cterm=reverse
|
||||
hi DiffChange ctermfg=111 ctermbg=16 cterm=reverse
|
||||
hi DiffDelete ctermfg=161 ctermbg=16 cterm=reverse
|
||||
hi DiffText ctermfg=213 ctermbg=16 cterm=reverse
|
||||
hi Directory ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=60 ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=103 ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=60 ctermbg=233 cterm=NONE
|
||||
hi IncSearch ctermfg=214 ctermbg=16 cterm=reverse
|
||||
hi LineNr ctermfg=60 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=16 ctermbg=248 cterm=NONE
|
||||
hi PmenuExtra ctermfg=16 ctermbg=248 cterm=NONE
|
||||
hi PmenuKind ctermfg=16 ctermbg=248 cterm=bold
|
||||
hi PmenuSbar ctermfg=242 ctermbg=60 cterm=NONE
|
||||
hi PmenuSel ctermfg=16 ctermbg=189 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=16 ctermbg=189 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=16 ctermbg=189 cterm=bold
|
||||
hi PmenuThumb ctermfg=253 ctermbg=189 cterm=NONE
|
||||
hi Question ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=207 ctermbg=16 cterm=reverse
|
||||
hi Search ctermfg=39 ctermbg=16 cterm=reverse
|
||||
hi SignColumn ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=60 ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=167 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=110 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=140 ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=73 ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=16 ctermbg=189 cterm=bold
|
||||
hi StatusLineNC ctermfg=103 ctermbg=16 cterm=reverse
|
||||
hi TabLine ctermfg=103 ctermbg=16 cterm=reverse
|
||||
hi TabLineFill ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi TabLineSel ctermfg=16 ctermbg=189 cterm=bold
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=60 ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=214 ctermbg=16 cterm=reverse
|
||||
hi VisualNOS ctermfg=NONE ctermbg=237 cterm=NONE
|
||||
hi WarningMsg ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi WildMenu ctermfg=189 ctermbg=233 cterm=bold
|
||||
hi Comment ctermfg=140 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=167 ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=203 ctermbg=16 cterm=bold,reverse
|
||||
hi Identifier ctermfg=113 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=253 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=110 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=73 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=110 ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=179 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=79 ctermbg=NONE cterm=bold,reverse
|
||||
hi Type ctermfg=110 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=253 ctermbg=NONE cterm=underline
|
||||
hi CursorIM ctermfg=16 ctermbg=154 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=16 cterm=NONE
|
||||
hi ToolbarButton ctermfg=253 ctermbg=16 cterm=bold
|
||||
hi DiffRemoved ctermfg=167 ctermbg=NONE cterm=NONE
|
||||
hi debugBreakpoint ctermfg=103 ctermbg=16 cterm=bold,reverse
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
hi CurSearch ctermfg=magenta ctermbg=black cterm=reverse
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=yellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi PmenuSbar ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi Search ctermfg=cyan ctermbg=black cterm=reverse
|
||||
hi SpecialKey ctermfg=darkgrey ctermbg=NONE cterm=bold
|
||||
hi StatusLineNC ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi TabLine ctermfg=darkgrey ctermbg=NONE cterm=reverse
|
||||
hi VertSplit ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
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 FoldColumn 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 Pmenu ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuExtra ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuKind ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuExtraSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuKindSel 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 SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
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 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 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=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=darkred ctermbg=black cterm=bold,reverse
|
||||
hi Identifier ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkblue ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkblue ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkgreen ctermbg=black cterm=bold,reverse
|
||||
hi Type ctermfg=darkblue 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
|
||||
hi DiffRemoved ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi debugBreakpoint ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
hi CurSearch ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi EndOfBuffer ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Search ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SpecialKey ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi StatusLineNC ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi TabLine ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi VertSplit ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
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 FoldColumn 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 Pmenu ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuExtra ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi PmenuKind ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
hi PmenuSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuExtraSel ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi PmenuKindSel 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 SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
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 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 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=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=darkred ctermbg=black cterm=bold,reverse
|
||||
hi Identifier ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkblue ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkblue ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkgreen ctermbg=black cterm=bold,reverse
|
||||
hi Type ctermfg=darkblue 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
|
||||
hi DiffRemoved ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi debugBreakpoint ctermfg=NONE ctermbg=NONE cterm=bold,reverse
|
||||
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: guibg #161821 233 black
|
||||
" Color: statusline #d7d7ff 189 white
|
||||
" Color: statuslineNC #8787af 103 grey
|
||||
" Color: darkuipurple #5f5f87 60 grey
|
||||
" Color: dark0 #000000 16 black
|
||||
" Color: dark1 #d75f5f 167 darkred
|
||||
" Color: dark2 #87d75f 113 darkgreen
|
||||
" Color: dark3 #d7af5f 179 darkyellow
|
||||
" Color: dark4 #87afd7 110 darkblue
|
||||
" Color: dark5 #af87d7 140 darkmagenta
|
||||
" Color: dark6 #5fafaf 73 darkcyan
|
||||
" Color: dark7 #dadada 253 grey
|
||||
" Color: dark8 #707070 242 darkgrey
|
||||
" Color: dark9 #ff5f5f 203 red
|
||||
" Color: dark10 #87ff5f 119 green
|
||||
" Color: dark11 #ffd75f 221 yellow
|
||||
" Color: dark12 #87d7ff 117 blue
|
||||
" Color: dark13 #d787ff 177 magenta
|
||||
" Color: dark14 #5fd7d7 80 cyan
|
||||
" Color: dark15 #ffffff 231 white
|
||||
" Color: diffred #d7005f 161 darkred
|
||||
" Color: diffgreen #00af5f 35 darkgreen
|
||||
" Color: diffblue #87afff 111 darkblue
|
||||
" Color: diffpink #ff87ff 213 darkmagenta
|
||||
" Color: uipink #ff00af 199 magenta
|
||||
" Color: uilime #afff00 154 green
|
||||
" Color: uiteal #5fd7af 79 green
|
||||
" Color: uiblue #00afff 39 blue
|
||||
" Color: uipurple #af00ff 129 darkmagenta
|
||||
" Color: uiamber #ffaf00 214 darkyellow
|
||||
" Color: uiblack #363841 237 darkgrey
|
||||
" Color: yasogrey #262831 235 black
|
||||
" Color: linenrblack #585858 240 darkgrey
|
||||
" Color: uicursearch #ff5fff 207 magenta
|
||||
" Color: invisigrey #a6a8b1 248 darkgrey
|
||||
" Color: errorred #ff5f5f 203 red
|
||||
" Term colors: dark0 dark1 dark2 dark3 dark4 dark5 dark6 dark7
|
||||
" Term colors: dark8 dark9 dark10 dark11 dark12 dark13 dark14 dark15
|
||||
" vim: et ts=2 sw=2
|
||||
753
runtime/colors/wildcharm.vim
Normal file
753
runtime/colors/wildcharm.vim
Normal file
@@ -0,0 +1,753 @@
|
||||
" Name: Wild Charm
|
||||
" Description: Vibrant and playful, at least one popular AI thinks it is.
|
||||
" Author: Maxim Kim <habamax@gmail.com>
|
||||
" Maintainer: Maxim Kim <habamax@gmail.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun 12 Mar 2023 18:46:06 AEDT
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
hi clear
|
||||
let g:colors_name = 'wildcharm'
|
||||
|
||||
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 LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link MessageWindow PMenu
|
||||
hi! link PopupNotification Todo
|
||||
hi! link CurSearch IncSearch
|
||||
if &background ==# 'dark'
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#d7005f', '#00af5f', '#d78700', '#0087d7', '#d787d7', '#00afaf', '#d0d0d0', '#767676', '#ff5f87', '#00d75f', '#ffaf00', '#00afff', '#ff87ff', '#00d7d7', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#d0d0d0 guibg=#000000 gui=NONE cterm=NONE
|
||||
hi Statusline guifg=#d0d0d0 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi StatuslineNC guifg=#767676 guibg=#000000 gui=reverse cterm=reverse
|
||||
hi VertSplit guifg=#767676 guibg=#767676 gui=NONE cterm=NONE
|
||||
hi TabLine guifg=#000000 guibg=#d0d0d0 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=NONE guibg=#767676 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#ffffff guibg=#000000 gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#000000 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#000000 guibg=#ff87ff gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#ffffff guibg=NONE gui=bold cterm=bold
|
||||
hi LineNr guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#585858 guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#767676 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#d0d0d0 guibg=#303030 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#000000 guibg=#ffaf00 gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=NONE guibg=#d0d0d0 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#ff5f87 guibg=#303030 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#d7005f guibg=#ffaf00 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#767676 guibg=#303030 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#000000 guibg=#ffaf00 gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error guifg=#ffffff guibg=#d7005f gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#ffffff guibg=#d7005f gui=NONE cterm=NONE
|
||||
hi ModeMsg guifg=NONE guibg=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg guifg=#00d75f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Question guifg=#ff87ff guibg=NONE gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#ffaf00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#875fff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Search guifg=#000000 guibg=#00d75f gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#000000 guibg=#ffaf00 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#000000 guibg=#ffaf00 gui=NONE cterm=NONE
|
||||
hi debugPC guifg=#0087d7 guibg=NONE gui=reverse cterm=reverse
|
||||
hi debugBreakpoint guifg=#00afaf guibg=NONE gui=reverse cterm=reverse
|
||||
hi Cursor guifg=#ffffff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi lCursor guifg=#ff5fff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Visual guifg=#000000 guibg=#0087d7 gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#000000 guibg=#00afff gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#262626 gui=NONE cterm=NONE
|
||||
hi Folded guifg=#767676 guibg=#303030 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#303030 gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=#ff00af guibg=NONE gui=bold cterm=bold
|
||||
hi SpellBad guifg=NONE guibg=NONE guisp=#ff5f87 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellCap guifg=NONE guibg=NONE guisp=#00afaf gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellLocal guifg=NONE guibg=NONE guisp=#00af5f gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellRare guifg=NONE guibg=NONE guisp=#ff87ff gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Comment guifg=#767676 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#ff5f87 guibg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#00d75f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Identifier guifg=#ff87ff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#00afff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Type guifg=#ffaf00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#00d7d7 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#875fff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=NONE guibg=NONE gui=underline ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title guifg=NONE guibg=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory guifg=#00afff guibg=NONE gui=bold cterm=bold
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#afffaf guibg=#5f875f gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#d0d0d0 guibg=#5f5f5f gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#afffff guibg=#5f8787 gui=NONE cterm=NONE
|
||||
hi DiffDelete guifg=#ffafaf guibg=#875f5f gui=NONE cterm=NONE
|
||||
hi diffAdded guifg=#00af5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffRemoved guifg=#d7005f guibg=NONE gui=NONE cterm=NONE
|
||||
else
|
||||
" Light background
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#000000', '#af0000', '#008700', '#af5f00', '#005faf', '#870087', '#008787', '#8a8a8a', '#808080', '#d70000', '#5faf5f', '#d78700', '#0087d7', '#af00af', '#00afaf', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#000000 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi Statusline guifg=#ffffff guibg=#5f5f5f gui=NONE cterm=NONE
|
||||
hi StatuslineNC guifg=#000000 guibg=#d0d0d0 gui=NONE cterm=NONE
|
||||
hi VertSplit guifg=#d0d0d0 guibg=#d0d0d0 gui=NONE cterm=NONE
|
||||
hi TabLine guifg=#000000 guibg=#d0d0d0 gui=NONE cterm=NONE
|
||||
hi TabLineFill guifg=NONE guibg=#808080 gui=NONE cterm=NONE
|
||||
hi TabLineSel guifg=#ffffff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#ffffff guibg=#000000 gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#ffffff guibg=#870087 gui=NONE cterm=NONE
|
||||
hi CursorLineNr guifg=#000000 guibg=NONE gui=bold cterm=bold
|
||||
hi LineNr guifg=#b2b2b2 guibg=NONE gui=NONE cterm=NONE
|
||||
hi NonText guifg=#b2b2b2 guibg=NONE gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#b2b2b2 guibg=NONE gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#b2b2b2 guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#b2b2b2 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#000000 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#ffffff guibg=#d78700 gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=NONE guibg=#808080 gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind guifg=#d70000 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuKindSel guifg=#af0000 guibg=#d78700 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#808080 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi PmenuExtraSel guifg=#ffffff guibg=#d78700 gui=NONE cterm=NONE
|
||||
hi SignColumn guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error guifg=#ffffff guibg=#d70000 gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#ffffff guibg=#d70000 gui=NONE cterm=NONE
|
||||
hi ModeMsg guifg=NONE guibg=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg guifg=#008700 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Question guifg=#870087 guibg=NONE gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#af5f00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#8700ff guibg=#ffffff gui=reverse cterm=reverse
|
||||
hi Search guifg=#ffffff guibg=#008700 gui=NONE cterm=NONE
|
||||
hi IncSearch guifg=#ffffff guibg=#d78700 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#ffffff guibg=#d78700 gui=NONE cterm=NONE
|
||||
hi debugPC guifg=#005faf guibg=NONE gui=reverse cterm=reverse
|
||||
hi debugBreakpoint guifg=#008787 guibg=NONE gui=reverse cterm=reverse
|
||||
hi Cursor guifg=#000000 guibg=#ffffff gui=reverse cterm=reverse
|
||||
hi lCursor guifg=#ff00ff guibg=#000000 gui=reverse cterm=reverse
|
||||
hi Visual guifg=#ffffff guibg=#0087d7 gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#ffffff guibg=#005faf gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#eeeeee gui=NONE cterm=NONE
|
||||
hi Folded guifg=#808080 guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#e4e4e4 gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=#ff00af guibg=NONE gui=bold cterm=bold
|
||||
hi SpellBad guifg=NONE guibg=NONE guisp=#af0000 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellCap guifg=NONE guibg=NONE guisp=#008787 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellLocal guifg=NONE guibg=NONE guisp=#008700 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi SpellRare guifg=NONE guibg=NONE guisp=#af00af gui=undercurl ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Comment guifg=#8a8a8a guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#af0000 guibg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#008700 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Identifier guifg=#870087 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#005faf guibg=NONE gui=NONE cterm=NONE
|
||||
hi Type guifg=#af5f00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#008787 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#8700ff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=NONE guibg=NONE gui=underline ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title guifg=NONE guibg=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory guifg=#005faf guibg=NONE gui=bold cterm=bold
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#005f00 guibg=#afd7af gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#262626 guibg=#dadada gui=NONE cterm=NONE
|
||||
hi DiffText guifg=#005f5f guibg=#afd7d7 gui=NONE cterm=NONE
|
||||
hi DiffDelete guifg=#875f5f guibg=#ffd7d7 gui=NONE cterm=NONE
|
||||
hi diffAdded guifg=#008700 guibg=NONE gui=NONE cterm=NONE
|
||||
hi diffRemoved guifg=#d70000 guibg=NONE gui=NONE cterm=NONE
|
||||
endif
|
||||
|
||||
if s:t_Co >= 256
|
||||
hi! link Terminal Normal
|
||||
hi! link StatuslineTerm Statusline
|
||||
hi! link StatuslineTermNC StatuslineNC
|
||||
hi! link LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link MessageWindow PMenu
|
||||
hi! link PopupNotification Todo
|
||||
hi! link CurSearch IncSearch
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=252 ctermbg=16 cterm=NONE
|
||||
hi Statusline ctermfg=252 ctermbg=16 cterm=reverse
|
||||
hi StatuslineNC ctermfg=243 ctermbg=16 cterm=reverse
|
||||
hi VertSplit ctermfg=243 ctermbg=243 cterm=NONE
|
||||
hi TabLine ctermfg=16 ctermbg=252 cterm=NONE
|
||||
hi TabLineFill ctermfg=NONE ctermbg=243 cterm=NONE
|
||||
hi TabLineSel ctermfg=231 ctermbg=16 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi QuickFixLine ctermfg=16 ctermbg=213 cterm=NONE
|
||||
hi CursorLineNr ctermfg=231 ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=240 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=243 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=252 ctermbg=236 cterm=NONE
|
||||
hi PmenuSel ctermfg=16 ctermbg=214 cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=252 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind ctermfg=204 ctermbg=236 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=161 ctermbg=214 cterm=NONE
|
||||
hi PmenuExtra ctermfg=243 ctermbg=236 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=16 ctermbg=214 cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=231 ctermbg=161 cterm=NONE
|
||||
hi ErrorMsg ctermfg=231 ctermbg=161 cterm=NONE
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=41 ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=213 ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=214 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=99 ctermbg=16 cterm=reverse
|
||||
hi Search ctermfg=16 ctermbg=41 cterm=NONE
|
||||
hi IncSearch ctermfg=16 ctermbg=214 cterm=NONE
|
||||
hi WildMenu ctermfg=16 ctermbg=214 cterm=NONE
|
||||
hi debugPC ctermfg=32 ctermbg=NONE cterm=reverse
|
||||
hi debugBreakpoint ctermfg=37 ctermbg=NONE cterm=reverse
|
||||
hi Visual ctermfg=16 ctermbg=32 cterm=NONE
|
||||
hi VisualNOS ctermfg=16 ctermbg=39 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=235 cterm=NONE
|
||||
hi Folded ctermfg=243 ctermbg=236 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=236 cterm=NONE
|
||||
hi MatchParen ctermfg=199 ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=161 ctermbg=231 cterm=reverse
|
||||
hi SpellCap ctermfg=37 ctermbg=16 cterm=reverse
|
||||
hi SpellLocal ctermfg=41 ctermbg=16 cterm=reverse
|
||||
hi SpellRare ctermfg=213 ctermbg=16 cterm=reverse
|
||||
hi Comment ctermfg=243 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=204 ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=41 ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=213 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=39 ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=214 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=44 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=99 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=39 ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=157 ctermbg=65 cterm=NONE
|
||||
hi DiffChange ctermfg=252 ctermbg=59 cterm=NONE
|
||||
hi DiffText ctermfg=159 ctermbg=66 cterm=NONE
|
||||
hi DiffDelete ctermfg=217 ctermbg=95 cterm=NONE
|
||||
hi diffAdded ctermfg=35 ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=161 ctermbg=NONE cterm=NONE
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi Statusline ctermfg=231 ctermbg=59 cterm=NONE
|
||||
hi StatuslineNC ctermfg=16 ctermbg=252 cterm=NONE
|
||||
hi VertSplit ctermfg=252 ctermbg=252 cterm=NONE
|
||||
hi TabLine ctermfg=16 ctermbg=252 cterm=NONE
|
||||
hi TabLineFill ctermfg=NONE ctermbg=240 cterm=NONE
|
||||
hi TabLineSel ctermfg=231 ctermbg=16 cterm=reverse
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=231 ctermbg=16 cterm=NONE
|
||||
hi QuickFixLine ctermfg=231 ctermbg=90 cterm=NONE
|
||||
hi CursorLineNr ctermfg=16 ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=249 ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=249 ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=249 ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=249 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=249 ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=16 ctermbg=254 cterm=NONE
|
||||
hi PmenuSel ctermfg=231 ctermbg=172 cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=240 cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuKind ctermfg=160 ctermbg=254 cterm=NONE
|
||||
hi PmenuKindSel ctermfg=124 ctermbg=172 cterm=NONE
|
||||
hi PmenuExtra ctermfg=240 ctermbg=254 cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=231 ctermbg=172 cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=231 ctermbg=160 cterm=NONE
|
||||
hi ErrorMsg ctermfg=231 ctermbg=160 cterm=NONE
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=28 ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=90 ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=130 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=93 ctermbg=231 cterm=reverse
|
||||
hi Search ctermfg=231 ctermbg=28 cterm=NONE
|
||||
hi IncSearch ctermfg=231 ctermbg=172 cterm=NONE
|
||||
hi WildMenu ctermfg=231 ctermbg=172 cterm=NONE
|
||||
hi debugPC ctermfg=25 ctermbg=NONE cterm=reverse
|
||||
hi debugBreakpoint ctermfg=30 ctermbg=NONE cterm=reverse
|
||||
hi Visual ctermfg=231 ctermbg=32 cterm=NONE
|
||||
hi VisualNOS ctermfg=231 ctermbg=25 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=255 cterm=NONE
|
||||
hi Folded ctermfg=240 ctermbg=254 cterm=NONE
|
||||
hi ColorColumn ctermfg=NONE ctermbg=254 cterm=NONE
|
||||
hi MatchParen ctermfg=199 ctermbg=NONE cterm=bold
|
||||
hi SpellBad ctermfg=160 ctermbg=231 cterm=reverse
|
||||
hi SpellCap ctermfg=30 ctermbg=231 cterm=reverse
|
||||
hi SpellLocal ctermfg=28 ctermbg=231 cterm=reverse
|
||||
hi SpellRare ctermfg=127 ctermbg=231 cterm=reverse
|
||||
hi Comment ctermfg=245 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=124 ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=28 ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=90 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=25 ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=130 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=30 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=93 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=25 ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=22 ctermbg=151 cterm=NONE
|
||||
hi DiffChange ctermfg=235 ctermbg=253 cterm=NONE
|
||||
hi DiffText ctermfg=23 ctermbg=152 cterm=NONE
|
||||
hi DiffDelete ctermfg=95 ctermbg=224 cterm=NONE
|
||||
hi diffAdded ctermfg=28 ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=160 ctermbg=NONE cterm=NONE
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi Statusline ctermfg=grey ctermbg=black cterm=reverse
|
||||
hi StatuslineNC ctermfg=darkgrey ctermbg=black cterm=reverse
|
||||
hi VertSplit ctermfg=darkgrey ctermbg=darkgrey cterm=NONE
|
||||
hi TabLine ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi TabLineFill ctermfg=NONE ctermbg=darkgrey cterm=NONE
|
||||
hi TabLineSel ctermfg=white ctermbg=black cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=black ctermbg=white cterm=NONE
|
||||
hi QuickFixLine ctermfg=black ctermbg=magenta cterm=NONE
|
||||
hi CursorLineNr ctermfg=white ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuExtra ctermfg=darkgrey ctermbg=grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi ErrorMsg ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=black ctermbg=green cterm=NONE
|
||||
hi IncSearch ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi WildMenu ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi debugPC ctermfg=darkblue ctermbg=NONE cterm=reverse
|
||||
hi debugBreakpoint ctermfg=darkcyan ctermbg=NONE cterm=reverse
|
||||
hi Visual ctermfg=black ctermbg=darkblue cterm=NONE
|
||||
hi VisualNOS ctermfg=black ctermbg=blue cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi Folded ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi ColorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi SpellBad ctermfg=darkred ctermbg=white cterm=reverse
|
||||
hi SpellCap ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SpellLocal ctermfg=green ctermbg=black cterm=reverse
|
||||
hi SpellRare ctermfg=magenta ctermbg=black cterm=reverse
|
||||
hi Comment ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=blue ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=lightgray cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=cyan cterm=NONE
|
||||
hi DiffDelete ctermfg=black ctermbg=darkred cterm=NONE
|
||||
hi diffAdded ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=black ctermbg=white cterm=NONE
|
||||
hi Statusline ctermfg=white ctermbg=darkgrey cterm=NONE
|
||||
hi StatuslineNC ctermfg=black ctermbg=lightgrey cterm=NONE
|
||||
hi VertSplit ctermfg=lightgrey ctermbg=lightgrey cterm=NONE
|
||||
hi TabLine ctermfg=black ctermbg=lightgrey cterm=NONE
|
||||
hi TabLineFill ctermfg=NONE ctermbg=darkgrey cterm=NONE
|
||||
hi TabLineSel ctermfg=white ctermbg=black cterm=reverse
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=white ctermbg=black cterm=NONE
|
||||
hi QuickFixLine ctermfg=white ctermbg=darkmagenta cterm=NONE
|
||||
hi CursorLineNr ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuExtra ctermfg=darkgrey ctermbg=grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=white ctermbg=red cterm=NONE
|
||||
hi ErrorMsg ctermfg=white ctermbg=red cterm=NONE
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkred ctermbg=white cterm=reverse
|
||||
hi Search ctermfg=white ctermbg=darkgreen cterm=NONE
|
||||
hi IncSearch ctermfg=white ctermbg=yellow cterm=NONE
|
||||
hi WildMenu ctermfg=white ctermbg=yellow cterm=NONE
|
||||
hi debugPC ctermfg=darkblue ctermbg=NONE cterm=reverse
|
||||
hi debugBreakpoint ctermfg=darkcyan ctermbg=NONE cterm=reverse
|
||||
hi Visual ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi VisualNOS ctermfg=white ctermbg=darkblue cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi Folded ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi ColorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi SpellBad ctermfg=red ctermbg=white cterm=reverse
|
||||
hi SpellCap ctermfg=darkcyan ctermbg=white cterm=reverse
|
||||
hi SpellLocal ctermfg=darkgreen ctermbg=white cterm=reverse
|
||||
hi SpellRare ctermfg=magenta ctermbg=white cterm=reverse
|
||||
hi Comment ctermfg=darkgrey ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkblue ctermbg=NONE cterm=NONE
|
||||
hi Type ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=lightgray cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=cyan cterm=NONE
|
||||
hi DiffDelete ctermfg=black ctermbg=darkred cterm=NONE
|
||||
hi diffAdded ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi diffRemoved ctermfg=red ctermbg=NONE cterm=NONE
|
||||
endif
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
if &background ==# 'dark'
|
||||
hi Normal ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi Statusline ctermfg=grey ctermbg=black cterm=bold,reverse
|
||||
hi StatuslineNC ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi VertSplit ctermfg=grey ctermbg=grey cterm=NONE
|
||||
hi TabLine ctermfg=grey ctermbg=black cterm=reverse
|
||||
hi TabLineFill ctermfg=NONE ctermbg=grey cterm=NONE
|
||||
hi TabLineSel ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=grey ctermbg=black cterm=bold,reverse
|
||||
hi QuickFixLine ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi CursorLineNr ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=grey ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=grey cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuExtra ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=grey ctermbg=darkred cterm=NONE
|
||||
hi ErrorMsg ctermfg=grey ctermbg=darkred cterm=NONE
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi WildMenu ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi debugPC ctermfg=darkblue ctermbg=NONE cterm=reverse
|
||||
hi debugBreakpoint ctermfg=darkcyan ctermbg=NONE cterm=reverse
|
||||
hi Visual ctermfg=black ctermbg=darkblue cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi VisualNOS ctermfg=black ctermbg=darkblue cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Folded ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi ColorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SpellBad ctermfg=darkred ctermbg=NONE cterm=reverse
|
||||
hi SpellCap ctermfg=darkcyan ctermbg=NONE cterm=reverse
|
||||
hi SpellLocal ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi SpellRare ctermfg=darkmagenta ctermbg=NONE cterm=reverse
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Type ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi DiffText ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi DiffDelete ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
else
|
||||
" Light background
|
||||
hi Normal ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi Statusline ctermfg=grey ctermbg=black cterm=bold
|
||||
hi StatuslineNC ctermfg=grey ctermbg=darkgrey cterm=NONE
|
||||
hi VertSplit ctermfg=black ctermbg=black cterm=NONE
|
||||
hi TabLine ctermfg=black ctermbg=grey cterm=reverse
|
||||
hi TabLineFill ctermfg=NONE ctermbg=darkgrey cterm=NONE
|
||||
hi TabLineSel ctermfg=black ctermbg=grey cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=grey ctermbg=black cterm=bold
|
||||
hi QuickFixLine ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi CursorLineNr ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi LineNr ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi NonText ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi FoldColumn ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi EndOfBuffer ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=black ctermbg=NONE cterm=NONE
|
||||
hi Pmenu ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi PmenuThumb ctermfg=NONE ctermbg=darkgreen cterm=NONE
|
||||
hi PmenuSbar ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi PmenuSel ctermfg=NONE ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuKind ctermfg=darkred ctermbg=black cterm=NONE
|
||||
hi PmenuKindSel ctermfg=darkred ctermbg=darkyellow cterm=NONE
|
||||
hi PmenuExtra ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi PmenuExtraSel ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SignColumn ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Error ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi ErrorMsg ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi ModeMsg ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi MoreMsg ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=darkmagenta ctermbg=NONE cterm=NONE
|
||||
hi WarningMsg ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi WildMenu ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi debugPC ctermfg=darkblue ctermbg=NONE cterm=reverse
|
||||
hi debugBreakpoint ctermfg=darkcyan ctermbg=NONE cterm=reverse
|
||||
hi Visual ctermfg=grey ctermbg=darkblue cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=bold,underline
|
||||
hi VisualNOS ctermfg=black ctermbg=darkblue cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi Folded ctermfg=black ctermbg=NONE cterm=bold
|
||||
hi ColorColumn ctermfg=black ctermbg=darkyellow cterm=NONE
|
||||
hi SpellBad ctermfg=darkred ctermbg=black cterm=reverse
|
||||
hi SpellCap ctermfg=darkcyan ctermbg=black cterm=reverse
|
||||
hi SpellLocal ctermfg=darkgreen ctermbg=black cterm=reverse
|
||||
hi SpellRare ctermfg=darkmagenta ctermbg=black cterm=reverse
|
||||
hi Comment ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Constant ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
hi String ctermfg=darkgreen ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Type ctermfg=darkyellow ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=bold
|
||||
hi Directory ctermfg=darkblue ctermbg=NONE cterm=bold
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi DiffAdd ctermfg=black ctermbg=darkmagenta cterm=NONE
|
||||
hi DiffChange ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi DiffText ctermfg=grey ctermbg=black cterm=NONE
|
||||
hi DiffDelete ctermfg=darkred ctermbg=NONE cterm=NONE
|
||||
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: any
|
||||
" Background: dark
|
||||
" Color: color00 #000000 16 black
|
||||
" Color: color08 #767676 243 darkgrey
|
||||
" Color: color01 #d7005f 161 darkred
|
||||
" Color: color09 #ff5f87 204 red
|
||||
" Color: color02 #00af5f 35 darkgreen
|
||||
" Color: color10 #00d75f 41 green
|
||||
" Color: color03 #d78700 172 darkyellow
|
||||
" Color: color11 #ffaf00 214 yellow
|
||||
" Color: color04 #0087d7 32 darkblue
|
||||
" Color: color12 #00afff 39 blue
|
||||
" Color: color05 #d787d7 176 darkmagenta
|
||||
" Color: color13 #ff87ff 213 magenta
|
||||
" Color: color06 #00afaf 37 darkcyan
|
||||
" Color: color14 #00d7d7 44 cyan
|
||||
" Color: color07 #d0d0d0 252 grey
|
||||
" Color: color15 #ffffff 231 white
|
||||
" Color: color16 #875fff 99 darkred
|
||||
" Color: colorLine #262626 235 darkgrey
|
||||
" Color: colorB #303030 236 darkgrey
|
||||
" Color: colorNonT #585858 240 grey
|
||||
" Color: colorTab #585858 240 grey
|
||||
" Color: colorC #ffffff 231 white
|
||||
" Color: colorlC #ff5fff 207 magenta
|
||||
" Color: colorDim #878787 102 grey
|
||||
" Color: colorMP #ff00af 199 magenta
|
||||
" Color: diffAdd #5f875f 65 darkmagenta
|
||||
" Color: diffAddFg #afffaf 157 black
|
||||
" Color: diffDelete #875f5f 95 darkred
|
||||
" Color: diffDeleteFg #ffafaf 217 black
|
||||
" Color: diffChange #5f5f5f 59 lightgray
|
||||
" Color: diffChangeFg #d0d0d0 252 black
|
||||
" Color: diffText #5f8787 66 cyan
|
||||
" Color: diffTextFg #afffff 159 black
|
||||
" Term colors: color00 color01 color02 color03 color04 color05 color06 color07
|
||||
" Term colors: color08 color09 color10 color11 color12 color13 color14 color15
|
||||
" Background: light
|
||||
" Color: color00 #000000 16 black
|
||||
" Color: color08 #808080 240 darkgrey
|
||||
" Color: color01 #af0000 124 darkred
|
||||
" Color: color09 #d70000 160 red
|
||||
" Color: color02 #008700 28 darkgreen
|
||||
" Color: color10 #5faf5f 71 green
|
||||
" Color: color03 #af5f00 130 darkyellow
|
||||
" Color: color11 #d78700 172 yellow
|
||||
" Color: color04 #005faf 25 darkblue
|
||||
" Color: color12 #0087d7 32 blue
|
||||
" Color: color05 #870087 90 darkmagenta
|
||||
" Color: color13 #af00af 127 magenta
|
||||
" Color: color06 #008787 30 darkcyan
|
||||
" Color: color14 #00afaf 37 cyan
|
||||
" Color: color07 #8a8a8a 245 grey
|
||||
" Color: color15 #ffffff 231 white
|
||||
" Color: color16 #8700ff 93 darkred
|
||||
" Color: colorCm #8a8a8a 245 darkgrey
|
||||
" Color: colorLine #EEEEEE 255 grey
|
||||
" Color: colorB #E4E4E4 254 grey
|
||||
" Color: colorNonT #b2b2b2 249 darkgrey
|
||||
" Color: colorTab #d0d0d0 252 lightgrey
|
||||
" Color: colorC #000000 16 black
|
||||
" Color: colorlC #FF00FF 201 magenta
|
||||
" Color: colorV #5F87AF 67 darkblue
|
||||
" Color: colorDim #626262 241 darkgrey
|
||||
" Color: colorSt #5f5f5f 59 darkgrey
|
||||
" Color: colorMP #ff00af 199 magenta
|
||||
" Color: diffAdd #afd7af 151 darkmagenta
|
||||
" Color: diffAddFg #005f00 22 black
|
||||
" Color: diffDelete #ffd7d7 224 darkred
|
||||
" Color: diffDeleteFg #875f5f 95 black
|
||||
" Color: diffChange #dadada 253 lightgray
|
||||
" Color: diffChangeFg #262626 235 black
|
||||
" Color: diffText #afd7d7 152 cyan
|
||||
" Color: diffTextFg #005f5f 23 black
|
||||
" Term colors: color00 color01 color02 color03 color04 color05 color06 color07
|
||||
" Term colors: color08 color09 color10 color11 color12 color13 color14 color15
|
||||
" Background: any
|
||||
" vim: et ts=2 sw=2
|
||||
563
runtime/colors/zaibatsu.vim
Normal file
563
runtime/colors/zaibatsu.vim
Normal file
@@ -0,0 +1,563 @@
|
||||
" Name: zaibatsu
|
||||
" Description: "If you believe the journalists, he's the single wealthiest individual, period. As rich as some zaibatsu. But there's the catch, really: is he an individual? In the sense that you are, or I am? No." -- William Gibson, Count Zero
|
||||
" Author: Romain Lafourcade <romainlafourcade@gmail.com>
|
||||
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
|
||||
" Website: https://github.com/vim/colorschemes
|
||||
" License: Same as Vim
|
||||
" Last Updated: Sun Mar 12 17:21:15 2023
|
||||
|
||||
" Generated by Colortemplate v2.2.0
|
||||
|
||||
set background=dark
|
||||
|
||||
hi clear
|
||||
let g:colors_name = 'zaibatsu'
|
||||
|
||||
let s:t_Co = exists('&t_Co') && !empty(&t_Co) && &t_Co > 1 ? &t_Co : 1
|
||||
|
||||
if (has('termguicolors') && &termguicolors) || has('gui_running')
|
||||
let g:terminal_ansi_colors = ['#0e0024', '#d7005f', '#00af5f', '#ffaf00', '#5f5fff', '#d700ff', '#00afff', '#d7d5db', '#878092', '#ff5faf', '#00d700', '#ffd700', '#8787ff', '#ff87ff', '#00ffff', '#ffffff']
|
||||
endif
|
||||
hi Normal guifg=#ffffff guibg=#0e0024 gui=NONE cterm=NONE
|
||||
hi EndOfBuffer guifg=#afafff guibg=#0e0024 gui=NONE cterm=NONE
|
||||
hi NonText guifg=#878092 guibg=#0e0024 gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=NONE guibg=NONE guisp=#ff5faf gui=undercurl ctermfg=NONE ctermbg=NONE cterm=undercurl
|
||||
hi SpellCap guifg=NONE guibg=NONE guisp=#87ff00 gui=undercurl ctermfg=NONE ctermbg=NONE cterm=undercurl
|
||||
hi SpellLocal guifg=NONE guibg=NONE guisp=#ffffff gui=undercurl ctermfg=NONE ctermbg=NONE cterm=undercurl
|
||||
hi SpellRare guifg=NONE guibg=NONE guisp=#ffafff gui=undercurl ctermfg=NONE ctermbg=NONE cterm=undercurl
|
||||
hi StatusLine guifg=#0e0024 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi StatusLineNC guifg=#0e0024 guibg=#afaab6 gui=NONE cterm=NONE
|
||||
hi Pmenu guifg=#0e0024 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi PmenuSbar guifg=#d7d5db guibg=#d7d5db gui=NONE cterm=NONE
|
||||
hi PmenuSel guifg=#0e0024 guibg=#afafff gui=NONE cterm=NONE
|
||||
hi PmenuThumb guifg=#878092 guibg=#878092 gui=NONE cterm=NONE
|
||||
hi PmenuExtra guifg=#878092 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi! link PmenuExtraSel PmenuSel
|
||||
hi PmenuKind guifg=#878092 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi! link PmenuKindSel PmenuSel
|
||||
hi ColorColumn guifg=NONE guibg=#510039 gui=NONE cterm=NONE
|
||||
hi CursorLine guifg=NONE guibg=#362b49 gui=NONE cterm=NONE
|
||||
hi CursorColumn guifg=NONE guibg=#362b49 gui=NONE cterm=NONE
|
||||
hi WildMenu guifg=#0e0024 guibg=#afafff gui=NONE cterm=NONE
|
||||
hi Conceal guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor guifg=#0e0024 guibg=#ffff5f gui=NONE cterm=NONE
|
||||
hi CursorIM guifg=#0e0024 guibg=#ffff5f gui=NONE cterm=NONE
|
||||
hi Error guifg=#d70000 guibg=#ffffff gui=reverse cterm=reverse
|
||||
hi ErrorMsg guifg=#ffffff guibg=#d70000 gui=NONE cterm=NONE
|
||||
hi FoldColumn guifg=#00afff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Folded guifg=#ffaf00 guibg=#0e0024 gui=reverse cterm=reverse
|
||||
hi IncSearch guifg=#ffaf00 guibg=#0e0024 gui=reverse cterm=reverse
|
||||
hi LineNr guifg=#afafff guibg=NONE gui=NONE cterm=NONE
|
||||
hi MatchParen guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ModeMsg guifg=#0e0024 guibg=#87ff00 gui=NONE cterm=NONE
|
||||
hi MoreMsg guifg=#87ffff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Question guifg=#87ff00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi QuickFixLine guifg=#ffafff guibg=#0e0024 gui=reverse cterm=reverse
|
||||
hi Search guifg=#87ffff guibg=#0e0024 gui=reverse cterm=reverse
|
||||
hi SignColumn guifg=#00afff guibg=NONE gui=NONE cterm=NONE
|
||||
hi SpecialKey guifg=#878092 guibg=NONE gui=NONE cterm=NONE
|
||||
hi ToolbarButton guifg=#ffffff guibg=#5e556d gui=NONE cterm=NONE
|
||||
hi ToolbarLine guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit guifg=#afafff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Visual guifg=#0e0024 guibg=#5fd7ff gui=NONE cterm=NONE
|
||||
hi VisualNOS guifg=#0e0024 guibg=#ffffff gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#ffafff guibg=NONE gui=NONE cterm=NONE
|
||||
hi debugBreakpoint guifg=#87ff00 guibg=#5f00d7 gui=reverse cterm=reverse
|
||||
hi debugPC guifg=#87ffff guibg=#5f00d7 gui=reverse cterm=reverse
|
||||
hi Directory guifg=#87ffff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Title guifg=NONE guibg=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Comment guifg=#afafff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#ffff5f guibg=NONE gui=NONE cterm=NONE
|
||||
hi Identifier guifg=#87ffff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=#878092 guibg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#00afff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#87ff00 guibg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#ffafff guibg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=NONE guibg=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Type guifg=#ff5faf guibg=NONE gui=NONE cterm=NONE
|
||||
hi Underlined guifg=NONE guibg=NONE gui=underline ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi! link CurSearch IncSearch
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineNr CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link TabLine StatusLineNC
|
||||
hi! link TabLineFill StatusLineNC
|
||||
hi! link TabLineSel StatusLine
|
||||
hi! link Terminal Normal
|
||||
hi! link lCursor Cursor
|
||||
hi! link Boolean Constant
|
||||
hi! link Character Constant
|
||||
hi! link Conditional Statement
|
||||
hi! link Define PreProc
|
||||
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 Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd guifg=#87ff00 guibg=#362b49 gui=reverse cterm=reverse
|
||||
hi DiffChange guifg=#afafff guibg=#362b49 gui=reverse cterm=reverse
|
||||
hi DiffText guifg=#d7d5db guibg=#362b49 gui=reverse cterm=reverse
|
||||
hi DiffDelete guifg=#ff5faf guibg=#362b49 gui=reverse cterm=reverse
|
||||
|
||||
if s:t_Co >= 256
|
||||
hi Normal ctermfg=231 ctermbg=16 cterm=NONE
|
||||
hi EndOfBuffer ctermfg=147 ctermbg=16 cterm=NONE
|
||||
hi NonText ctermfg=103 ctermbg=16 cterm=NONE
|
||||
hi SpellBad ctermfg=205 ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=118 ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=231 ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=219 ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi StatusLineNC ctermfg=16 ctermbg=146 cterm=NONE
|
||||
hi Pmenu ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi PmenuSbar ctermfg=189 ctermbg=189 cterm=NONE
|
||||
hi PmenuSel ctermfg=16 ctermbg=147 cterm=NONE
|
||||
hi PmenuThumb ctermfg=103 ctermbg=103 cterm=NONE
|
||||
hi PmenuExtra ctermfg=103 ctermbg=231 cterm=NONE
|
||||
hi! link PmenuExtraSel PmenuSel
|
||||
hi PmenuKind ctermfg=103 ctermbg=231 cterm=NONE
|
||||
hi! link PmenuKindSel PmenuSel
|
||||
hi ColorColumn ctermfg=NONE ctermbg=52 cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=237 cterm=NONE
|
||||
hi CursorColumn ctermfg=NONE ctermbg=237 cterm=NONE
|
||||
hi WildMenu ctermfg=16 ctermbg=147 cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=16 ctermbg=227 cterm=NONE
|
||||
hi CursorIM ctermfg=16 ctermbg=227 cterm=NONE
|
||||
hi Error ctermfg=160 ctermbg=231 cterm=reverse
|
||||
hi ErrorMsg ctermfg=231 ctermbg=160 cterm=NONE
|
||||
hi FoldColumn ctermfg=39 ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=214 ctermbg=16 cterm=reverse
|
||||
hi IncSearch ctermfg=214 ctermbg=16 cterm=reverse
|
||||
hi LineNr ctermfg=147 ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ModeMsg ctermfg=16 ctermbg=118 cterm=NONE
|
||||
hi MoreMsg ctermfg=123 ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=118 ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=219 ctermbg=16 cterm=reverse
|
||||
hi Search ctermfg=123 ctermbg=16 cterm=reverse
|
||||
hi SignColumn ctermfg=39 ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=103 ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=231 ctermbg=60 cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=147 ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=16 ctermbg=81 cterm=NONE
|
||||
hi VisualNOS ctermfg=16 ctermbg=231 cterm=NONE
|
||||
hi WarningMsg ctermfg=219 ctermbg=NONE cterm=NONE
|
||||
hi debugBreakpoint ctermfg=118 ctermbg=56 cterm=reverse
|
||||
hi debugPC ctermfg=123 ctermbg=56 cterm=reverse
|
||||
hi Directory ctermfg=123 ctermbg=NONE cterm=NONE
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Comment ctermfg=147 ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=227 ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=123 ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=103 ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=39 ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=118 ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=219 ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Type ctermfg=205 ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi! link CurSearch IncSearch
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineNr CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link TabLine StatusLineNC
|
||||
hi! link TabLineFill StatusLineNC
|
||||
hi! link TabLineSel StatusLine
|
||||
hi! link Terminal Normal
|
||||
hi! link lCursor Cursor
|
||||
hi! link Boolean Constant
|
||||
hi! link Character Constant
|
||||
hi! link Conditional Statement
|
||||
hi! link Define PreProc
|
||||
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 Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=118 ctermbg=237 cterm=reverse
|
||||
hi DiffChange ctermfg=147 ctermbg=237 cterm=reverse
|
||||
hi DiffText ctermfg=189 ctermbg=237 cterm=reverse
|
||||
hi DiffDelete ctermfg=205 ctermbg=237 cterm=reverse
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 16
|
||||
hi Normal ctermfg=white ctermbg=black cterm=NONE
|
||||
hi EndOfBuffer ctermfg=blue ctermbg=black cterm=NONE
|
||||
hi NonText ctermfg=darkgray ctermbg=black cterm=NONE
|
||||
hi SpellBad ctermfg=red ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=green ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=white ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=magenta ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=white ctermbg=black cterm=reverse
|
||||
hi StatusLineNC ctermfg=darkgray ctermbg=gray cterm=reverse
|
||||
hi Pmenu ctermfg=black ctermbg=white cterm=NONE
|
||||
hi PmenuSbar ctermfg=gray ctermbg=gray cterm=NONE
|
||||
hi PmenuSel ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi PmenuThumb ctermfg=darkgray ctermbg=darkgray cterm=NONE
|
||||
hi PmenuExtra ctermfg=darkgray ctermbg=white cterm=NONE
|
||||
hi! link PmenuExtraSel PmenuSel
|
||||
hi PmenuKind ctermfg=darkgray ctermbg=white cterm=NONE
|
||||
hi! link PmenuKindSel PmenuSel
|
||||
hi ColorColumn ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=NONE ctermbg=blue cterm=NONE
|
||||
hi WildMenu ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi CursorIM ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi Error ctermfg=red ctermbg=white cterm=reverse
|
||||
hi ErrorMsg ctermfg=white ctermbg=red cterm=NONE
|
||||
hi FoldColumn ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ModeMsg ctermfg=black ctermbg=green cterm=NONE
|
||||
hi MoreMsg ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=magenta ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=cyan ctermbg=black cterm=reverse
|
||||
hi SignColumn ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=white ctermbg=darkgray cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi VisualNOS ctermfg=black ctermbg=white cterm=NONE
|
||||
hi WarningMsg ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi debugBreakpoint ctermfg=green ctermbg=darkblue cterm=reverse
|
||||
hi debugPC ctermfg=cyan ctermbg=darkblue cterm=reverse
|
||||
hi Directory ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Comment ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Type ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi! link CurSearch IncSearch
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineNr CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link TabLine StatusLineNC
|
||||
hi! link TabLineFill StatusLineNC
|
||||
hi! link TabLineSel StatusLine
|
||||
hi! link Terminal Normal
|
||||
hi! link lCursor Cursor
|
||||
hi! link Boolean Constant
|
||||
hi! link Character Constant
|
||||
hi! link Conditional Statement
|
||||
hi! link Define PreProc
|
||||
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 Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=darkgreen ctermbg=white cterm=reverse
|
||||
hi DiffChange ctermfg=darkblue ctermbg=white cterm=reverse
|
||||
hi DiffText ctermfg=grey ctermbg=black cterm=reverse
|
||||
hi DiffDelete ctermfg=darkmagenta ctermbg=white cterm=reverse
|
||||
unlet s:t_Co
|
||||
finish
|
||||
endif
|
||||
|
||||
if s:t_Co >= 8
|
||||
hi Normal ctermfg=gray ctermbg=black cterm=NONE
|
||||
hi EndOfBuffer ctermfg=blue ctermbg=black cterm=NONE
|
||||
hi NonText ctermfg=darkgray ctermbg=black cterm=NONE
|
||||
hi SpellBad ctermfg=red ctermbg=NONE cterm=underline
|
||||
hi SpellCap ctermfg=green ctermbg=NONE cterm=underline
|
||||
hi SpellLocal ctermfg=white ctermbg=NONE cterm=underline
|
||||
hi SpellRare ctermfg=magenta ctermbg=NONE cterm=underline
|
||||
hi StatusLine ctermfg=white ctermbg=black cterm=reverse
|
||||
hi StatusLineNC ctermfg=darkgray ctermbg=gray cterm=bold,reverse
|
||||
hi Pmenu ctermfg=black ctermbg=white cterm=NONE
|
||||
hi PmenuSbar ctermfg=white ctermbg=white cterm=NONE
|
||||
hi PmenuSel ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi PmenuThumb ctermfg=blue ctermbg=blue cterm=NONE
|
||||
hi! link PmenuExtra Pmenu
|
||||
hi! link PmenuExtraSel PmenuSel
|
||||
hi! link PmenuKind Pmenu
|
||||
hi! link PmenuKindSel PmenuSel
|
||||
hi ColorColumn ctermfg=white ctermbg=darkred cterm=NONE
|
||||
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi CursorColumn ctermfg=NONE ctermbg=blue cterm=NONE
|
||||
hi WildMenu ctermfg=white ctermbg=blue cterm=NONE
|
||||
hi Conceal ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Cursor ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi CursorIM ctermfg=black ctermbg=yellow cterm=NONE
|
||||
hi Error ctermfg=red ctermbg=white cterm=reverse
|
||||
hi ErrorMsg ctermfg=white ctermbg=red cterm=NONE
|
||||
hi FoldColumn ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Folded ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi IncSearch ctermfg=darkyellow ctermbg=black cterm=reverse
|
||||
hi LineNr ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi MatchParen ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi ModeMsg ctermfg=black ctermbg=green cterm=NONE
|
||||
hi MoreMsg ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Question ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi QuickFixLine ctermfg=magenta ctermbg=black cterm=reverse
|
||||
hi Search ctermfg=cyan ctermbg=black cterm=reverse
|
||||
hi SignColumn ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi SpecialKey ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi ToolbarButton ctermfg=white ctermbg=darkgray cterm=NONE
|
||||
hi ToolbarLine ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi VertSplit ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Visual ctermfg=black ctermbg=darkcyan cterm=NONE
|
||||
hi VisualNOS ctermfg=black ctermbg=white cterm=NONE
|
||||
hi WarningMsg ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi debugBreakpoint ctermfg=green ctermbg=darkblue cterm=reverse
|
||||
hi debugPC ctermfg=cyan ctermbg=darkblue cterm=reverse
|
||||
hi Directory ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Title ctermfg=NONE ctermbg=NONE cterm=NONE
|
||||
hi Comment ctermfg=blue ctermbg=NONE cterm=NONE
|
||||
hi Constant ctermfg=yellow ctermbg=NONE cterm=NONE
|
||||
hi Identifier ctermfg=cyan ctermbg=NONE cterm=NONE
|
||||
hi Ignore ctermfg=darkgray ctermbg=NONE cterm=NONE
|
||||
hi PreProc ctermfg=darkcyan ctermbg=NONE cterm=NONE
|
||||
hi Special ctermfg=green ctermbg=NONE cterm=NONE
|
||||
hi Statement ctermfg=magenta ctermbg=NONE cterm=NONE
|
||||
hi Todo ctermfg=NONE ctermbg=NONE cterm=reverse
|
||||
hi Type ctermfg=red ctermbg=NONE cterm=NONE
|
||||
hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
|
||||
hi! link CurSearch IncSearch
|
||||
hi! link CursorLineFold CursorLine
|
||||
hi! link CursorLineNr CursorLine
|
||||
hi! link CursorLineSign CursorLine
|
||||
hi! link LineNrAbove LineNr
|
||||
hi! link LineNrBelow LineNr
|
||||
hi! link StatusLineTerm StatusLine
|
||||
hi! link StatusLineTermNC StatusLineNC
|
||||
hi! link TabLine StatusLineNC
|
||||
hi! link TabLineFill StatusLineNC
|
||||
hi! link TabLineSel StatusLine
|
||||
hi! link Terminal Normal
|
||||
hi! link lCursor Cursor
|
||||
hi! link Boolean Constant
|
||||
hi! link Character Constant
|
||||
hi! link Conditional Statement
|
||||
hi! link Define PreProc
|
||||
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 Terminal Normal
|
||||
hi! link MessageWindow Pmenu
|
||||
hi! link PopupNotification Todo
|
||||
hi DiffAdd ctermfg=darkgreen ctermbg=white cterm=reverse
|
||||
hi DiffChange ctermfg=darkblue ctermbg=white cterm=reverse
|
||||
hi DiffText ctermfg=grey ctermbg=black cterm=reverse
|
||||
hi DiffDelete ctermfg=darkmagenta ctermbg=white cterm=reverse
|
||||
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: background #0e0024 16 black
|
||||
" Color: darkred #510039 52 darkred
|
||||
" Color: darkgreen #5faf00 70 darkgreen
|
||||
" Color: darkyellow #ffaf00 214 darkyellow
|
||||
" Color: darkblue #5f00d7 56 darkblue
|
||||
" Color: darkmagenta #d700ff 165 darkmagenta
|
||||
" Color: darkcyan #00afff 39 darkcyan
|
||||
" Color: red #ff5faf 205 red
|
||||
" Color: green #87ff00 118 green
|
||||
" Color: yellow #ffff5f 227 yellow
|
||||
" Color: blue #afafff 147 blue
|
||||
" Color: magenta #ffafff 219 magenta
|
||||
" Color: cyan #87ffff 123 cyan
|
||||
" Color: white #ffffff 231 white
|
||||
" Color: neutral1 #D7D5DB 189 gray
|
||||
" Color: neutral2 #AFAAB6 146 gray
|
||||
" Color: neutral3 #878092 103 darkgray
|
||||
" Color: neutral4 #5E556D 60 darkgray
|
||||
" Color: neutral5 #362B49 237 darkgray
|
||||
" Color: error #d70000 160 red
|
||||
" Color: visual #5FD7FF 81 darkcyan
|
||||
" Color: Xdarkred #d7005f ~
|
||||
" Color: Xdarkgreen #00af5f ~
|
||||
" Color: Xdarkblue #5f5fff ~
|
||||
" Color: Xdarkwhite #d7d7d7 ~
|
||||
" Color: Xgrey #878787 ~
|
||||
" Color: Xbrightgreen #00d700 ~
|
||||
" Color: Xbrightyellow #ffd700 ~
|
||||
" Color: Xbrightblue #8787ff ~
|
||||
" Color: Xbrightmagenta #ff87ff ~
|
||||
" Color: Xbrightcyan #00ffff ~
|
||||
" Term colors: background
|
||||
" Term colors: Xdarkred
|
||||
" Term colors: Xdarkgreen
|
||||
" Term colors: darkyellow
|
||||
" Term colors: Xdarkblue
|
||||
" Term colors: darkmagenta
|
||||
" Term colors: darkcyan
|
||||
" Term colors: neutral1
|
||||
" Term colors: neutral3
|
||||
" Term colors: red
|
||||
" Term colors: Xbrightgreen
|
||||
" Term colors: Xbrightyellow
|
||||
" Term colors: Xbrightblue
|
||||
" Term colors: Xbrightmagenta
|
||||
" Term colors: Xbrightcyan
|
||||
" Term colors: white
|
||||
" Color: bgDiffA #5F875F 65 darkgreen
|
||||
" Color: bgDiffT #C6C6C6 251 grey
|
||||
" Color: fgDiffW #FFFFFF 231 white
|
||||
" Color: fgDiffB #000000 16 black
|
||||
" Color: bgDiffC8 #5F87AF 67 darkblue
|
||||
" Color: bgDiffD8 #AF5FAF 133 darkmagenta
|
||||
" vim: et ts=2 sw=2
|
||||
@@ -8,4 +8,4 @@ If you want to write your own compiler plugin, have a look at the other files
|
||||
for how to do it, the format is simple.
|
||||
|
||||
If you think a compiler plugin you have written is useful for others, please
|
||||
send it to Bram@vim.org.
|
||||
send it to the vim-dev mailing list: <vim-dev@vim.org>
|
||||
|
||||
@@ -1,35 +1,51 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Cargo Compiler
|
||||
" Maintainer: Damien Radtke <damienradtke@gmail.com>
|
||||
" Latest Revision: 2014 Sep 24
|
||||
" Latest Revision: 2023-09-11
|
||||
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
|
||||
|
||||
if exists('current_compiler')
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
runtime compiler/rustc.vim
|
||||
let current_compiler = "cargo"
|
||||
|
||||
" vint: -ProhibitAbbreviationOption
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
" vint: +ProhibitAbbreviationOption
|
||||
|
||||
if exists(':CompilerSet') != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
if exists('g:cargo_makeprg_params')
|
||||
execute 'CompilerSet makeprg=cargo\ '.escape(g:cargo_makeprg_params, ' \|"').'\ $*'
|
||||
execute 'CompilerSet makeprg=cargo\ '.escape(g:cargo_makeprg_params, ' \|"').'\ $*'
|
||||
else
|
||||
CompilerSet makeprg=cargo\ $*
|
||||
CompilerSet makeprg=cargo\ $*
|
||||
endif
|
||||
|
||||
augroup RustCargoQuickFixHooks
|
||||
autocmd!
|
||||
autocmd QuickFixCmdPre make call cargo#quickfix#CmdPre()
|
||||
autocmd QuickFixCmdPost make call cargo#quickfix#CmdPost()
|
||||
augroup END
|
||||
|
||||
" Ignore general cargo progress messages
|
||||
CompilerSet errorformat+=
|
||||
\%-G%\\s%#Downloading%.%#,
|
||||
\%-G%\\s%#Compiling%.%#,
|
||||
\%-G%\\s%#Finished%.%#,
|
||||
\%-G%\\s%#error:\ Could\ not\ compile\ %.%#,
|
||||
\%-G%\\s%#To\ learn\ more\\,%.%#
|
||||
\%-G%\\s%#Downloading%.%#,
|
||||
\%-G%\\s%#Checking%.%#,
|
||||
\%-G%\\s%#Compiling%.%#,
|
||||
\%-G%\\s%#Finished%.%#,
|
||||
\%-G%\\s%#error:\ Could\ not\ compile\ %.%#,
|
||||
\%-G%\\s%#To\ learn\ more\\,%.%#,
|
||||
\%-G%\\s%#For\ more\ information\ about\ this\ error\\,%.%#,
|
||||
\%-Gnote:\ Run\ with\ \`RUST_BACKTRACE=%.%#,
|
||||
\%.%#panicked\ at\ \\'%m\\'\\,\ %f:%l:%c
|
||||
|
||||
" vint: -ProhibitAbbreviationOption
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
" vint: +ProhibitAbbreviationOption
|
||||
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Microsoft Visual C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 Sep 20
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
|
||||
@@ -1,46 +1,57 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Rust Compiler
|
||||
" Maintainer: Chris Morgan <me@chrismorgan.info>
|
||||
" Latest Revision: 2013 Jul 12
|
||||
" Latest Revision: 2023-09-11
|
||||
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "rustc"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
" vint: -ProhibitAbbreviationOption
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
" vint: +ProhibitAbbreviationOption
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
if exists("g:rustc_makeprg_no_percent") && g:rustc_makeprg_no_percent != 0
|
||||
CompilerSet makeprg=rustc
|
||||
if get(g:, 'rustc_makeprg_no_percent', 0)
|
||||
CompilerSet makeprg=rustc
|
||||
else
|
||||
CompilerSet makeprg=rustc\ \%:S
|
||||
if has('patch-7.4.191')
|
||||
CompilerSet makeprg=rustc\ \%:S
|
||||
else
|
||||
CompilerSet makeprg=rustc\ \"%\"
|
||||
endif
|
||||
endif
|
||||
|
||||
" Old errorformat (before nightly 2016/08/10)
|
||||
CompilerSet errorformat=
|
||||
\%f:%l:%c:\ %t%*[^:]:\ %m,
|
||||
\%f:%l:%c:\ %*\\d:%*\\d\ %t%*[^:]:\ %m,
|
||||
\%-G%f:%l\ %s,
|
||||
\%-G%*[\ ]^,
|
||||
\%-G%*[\ ]^%*[~],
|
||||
\%-G%*[\ ]...
|
||||
|
||||
" New errorformat (after nightly 2016/08/10)
|
||||
CompilerSet errorformat+=
|
||||
\%-G,
|
||||
\%-Gerror:\ aborting\ %.%#,
|
||||
\%-Gerror:\ Could\ not\ compile\ %.%#,
|
||||
\%Eerror:\ %m,
|
||||
\%Eerror[E%n]:\ %m,
|
||||
\%Wwarning:\ %m,
|
||||
\%Inote:\ %m,
|
||||
\%C\ %#-->\ %f:%l:%c
|
||||
CompilerSet errorformat=
|
||||
\%-G,
|
||||
\%-Gerror:\ aborting\ %.%#,
|
||||
\%-Gerror:\ Could\ not\ compile\ %.%#,
|
||||
\%Eerror:\ %m,
|
||||
\%Eerror[E%n]:\ %m,
|
||||
\%Wwarning:\ %m,
|
||||
\%Inote:\ %m,
|
||||
\%C\ %#-->\ %f:%l:%c,
|
||||
\%E\ \ left:%m,%C\ right:%m\ %f:%l:%c,%Z
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" Old errorformat (before nightly 2016/08/10)
|
||||
CompilerSet errorformat+=
|
||||
\%f:%l:%c:\ %t%*[^:]:\ %m,
|
||||
\%f:%l:%c:\ %*\\d:%*\\d\ %t%*[^:]:\ %m,
|
||||
\%-G%f:%l\ %s,
|
||||
\%-G%*[\ ]^,
|
||||
\%-G%*[\ ]^%*[~],
|
||||
\%-G%*[\ ]...
|
||||
|
||||
" vint: -ProhibitAbbreviationOption
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
" vint: +ProhibitAbbreviationOption
|
||||
|
||||
" vim: set et sw=4 sts=4 ts=8:
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" The default vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2022 Mar 03
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
"
|
||||
" This is loaded if no vimrc file was found.
|
||||
" Except when Vim is run with "-u NONE" or "-C".
|
||||
@@ -97,17 +98,21 @@ if 1
|
||||
filetype plugin indent on
|
||||
|
||||
" Put these in an autocmd group, so that you can revert them with:
|
||||
" ":augroup vimStartup | exe 'au!' | augroup END"
|
||||
" ":autocmd! vimStartup"
|
||||
augroup vimStartup
|
||||
au!
|
||||
autocmd!
|
||||
|
||||
" When editing a file, always jump to the last known cursor position.
|
||||
" Don't do it when the position is invalid, when inside an event handler
|
||||
" (happens when dropping a file on gvim) and for a commit message (it's
|
||||
" likely a different one than last time).
|
||||
" (happens when dropping a file on gvim), for a commit or rebase message
|
||||
" (likely a different one than last time), and when using xxd(1) to filter
|
||||
" and edit binary files (it transforms input files back and forth, causing
|
||||
" them to have dual nature, so to speak)
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
|
||||
\ | exe "normal! g`\""
|
||||
\ let line = line("'\"")
|
||||
\ | if line >= 1 && line <= line("$") && &filetype !~# 'commit'
|
||||
\ && index(['xxd', 'gitrebase'], &filetype) == -1
|
||||
\ | execute "normal! g`\""
|
||||
\ | endif
|
||||
|
||||
augroup END
|
||||
@@ -115,12 +120,12 @@ if 1
|
||||
" Quite a few people accidentally type "q:" instead of ":q" and get confused
|
||||
" by the command line window. Give a hint about how to get out.
|
||||
" If you don't like this you can put this in your vimrc:
|
||||
" ":augroup vimHints | exe 'au!' | augroup END"
|
||||
" ":autocmd! vimHints"
|
||||
augroup vimHints
|
||||
au!
|
||||
autocmd CmdwinEnter *
|
||||
\ echohl Todo |
|
||||
\ echo 'You discovered the command-line window! You can close it with ":q".' |
|
||||
\ echohl Todo |
|
||||
\ echo gettext('You discovered the command-line window! You can close it with ":q".') |
|
||||
\ echohl None
|
||||
augroup END
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
" This Vim script deletes all the menus, so that they can be redefined.
|
||||
" Warning: This also deletes all menus defined by the user!
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 Dec 10
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
aunmenu *
|
||||
tlunmenu *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 9.0. Last change: 2022 Nov 22
|
||||
*autocmd.txt* For Vim version 9.0. Last change: 2023 May 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -64,7 +64,7 @@ Example in Vim9 script: >
|
||||
In legacy script: >
|
||||
call autocmd_add(#{replace: v:true,
|
||||
\ group: 'DemoGroup',
|
||||
\ event: 'BufEnter',
|
||||
\ event: 'BufEnter',
|
||||
\ pattern: '*.txt',
|
||||
\ cmd: 'call DemoBufEnter()'
|
||||
\ })
|
||||
@@ -97,7 +97,7 @@ If the `:autocmd` is in Vim9 script (a script that starts with `:vim9script`
|
||||
and in a `:def` function) then {cmd} will be executed as in Vim9
|
||||
script. Thus this depends on where the autocmd is defined, not where it is
|
||||
triggered.
|
||||
|
||||
*:autocmd-block*
|
||||
{cmd} can be a block, like with `:command`, see |:command-repl|. Example: >
|
||||
au BufReadPost *.xml {
|
||||
setlocal matchpairs+=<:>
|
||||
@@ -398,7 +398,7 @@ Name triggered by ~
|
||||
|InsertEnter| starting Insert mode
|
||||
|InsertChange| when typing <Insert> while in Insert or Replace mode
|
||||
|InsertLeave| when leaving Insert mode
|
||||
|InsertLeavePre| just before leaving Insert mode
|
||||
|InsertLeavePre| just before leaving Insert mode
|
||||
|InsertCharPre| when a character was typed in Insert mode, before
|
||||
inserting it
|
||||
|
||||
@@ -611,9 +611,11 @@ CmdlineEnter After moving the cursor to the command line,
|
||||
where the user can type a command or search
|
||||
string; including non-interactive use of ":"
|
||||
in a mapping, but not when using |<Cmd>|.
|
||||
The pattern is matched against the character
|
||||
representing the type of command-line.
|
||||
|cmdwin-char|
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
*CmdlineLeave*
|
||||
CmdlineLeave Before leaving the command line; including
|
||||
non-interactive use of ":" in a mapping, but
|
||||
@@ -1015,6 +1017,9 @@ OptionSet After setting an option. The pattern is
|
||||
the option. Similarly |v:option_oldglobal| is
|
||||
only set when |:set| or |:setglobal| was used.
|
||||
|
||||
This does not set |<abuf>|, you could use
|
||||
|bufnr()|.
|
||||
|
||||
Note that when setting a |global-local| string
|
||||
option with |:set|, then |v:option_old| is the
|
||||
old global value. However, for all other kinds
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*builtin.txt* For Vim version 9.0. Last change: 2022 Dec 05
|
||||
*builtin.txt* For Vim version 9.0. Last change: 2023 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -81,8 +81,10 @@ bufnr([{buf} [, {create}]]) Number Number of the buffer {buf}
|
||||
bufwinid({buf}) Number window ID of buffer {buf}
|
||||
bufwinnr({buf}) Number window number of buffer {buf}
|
||||
byte2line({byte}) Number line number at byte count {byte}
|
||||
byteidx({expr}, {nr}) Number byte index of {nr}'th char in {expr}
|
||||
byteidxcomp({expr}, {nr}) Number byte index of {nr}'th char in {expr}
|
||||
byteidx({expr}, {nr} [, {utf16}])
|
||||
Number byte index of {nr}'th char in {expr}
|
||||
byteidxcomp({expr}, {nr} [, {utf16}])
|
||||
Number byte index of {nr}'th char in {expr}
|
||||
call({func}, {arglist} [, {dict}])
|
||||
any call {func} with arguments {arglist}
|
||||
ceil({expr}) Float round {expr} up
|
||||
@@ -117,7 +119,7 @@ changenr() Number current change number
|
||||
char2nr({expr} [, {utf8}]) Number ASCII/UTF-8 value of first char in {expr}
|
||||
charclass({string}) Number character class of {string}
|
||||
charcol({expr} [, {winid}]) Number column number of cursor or mark
|
||||
charidx({string}, {idx} [, {countcc}])
|
||||
charidx({string}, {idx} [, {countcc} [, {utf16}]])
|
||||
Number char index of byte {idx} in {string}
|
||||
chdir({dir}) String change current working directory
|
||||
cindent({lnum}) Number C indent for line {lnum}
|
||||
@@ -154,6 +156,7 @@ digraph_setlist({digraphlist}) Boolean register multiple |digraph|s
|
||||
echoraw({expr}) none output {expr} as-is
|
||||
empty({expr}) Number |TRUE| if {expr} is empty
|
||||
environ() Dict return environment variables
|
||||
err_teapot([{expr}]) none give E418, or E503 if {expr} is |TRUE|
|
||||
escape({string}, {chars}) String escape {chars} in {string} with '\'
|
||||
eval({string}) any evaluate {string} into its value
|
||||
eventhandler() Number |TRUE| if inside an event handler
|
||||
@@ -211,6 +214,7 @@ getbufline({buf}, {lnum} [, {end}])
|
||||
getbufoneline({buf}, {lnum}) String line {lnum} of buffer {buf}
|
||||
getbufvar({buf}, {varname} [, {def}])
|
||||
any variable {varname} in buffer {buf}
|
||||
getcellwidths() List get character cell width overrides
|
||||
getchangelist([{buf}]) List list of change list items
|
||||
getchar([expr]) Number or String
|
||||
get one character from the user
|
||||
@@ -265,7 +269,7 @@ gettabwinvar({tabnr}, {winnr}, {name} [, {def}])
|
||||
gettagstack([{nr}]) Dict get the tag stack of window {nr}
|
||||
gettext({text}) String lookup translation of {text}
|
||||
getwininfo([{winid}]) List list of info about each window
|
||||
getwinpos([{timeout}]) List X and Y coord in pixels of the Vim window
|
||||
getwinpos([{timeout}]) List X and Y coord in pixels of Vim window
|
||||
getwinposx() Number X coord in pixels of the Vim window
|
||||
getwinposy() Number Y coord in pixels of the Vim window
|
||||
getwinvar({nr}, {varname} [, {def}])
|
||||
@@ -306,6 +310,7 @@ inputrestore() Number restore typeahead
|
||||
inputsave() Number save and clear typeahead
|
||||
inputsecret({prompt} [, {text}]) String like input() but hiding the text
|
||||
insert({object}, {item} [, {idx}]) List insert {item} in {object} [before {idx}]
|
||||
instanceof({object}, {class}) Number |TRUE| if {object} is an instance of {class}
|
||||
interrupt() none interrupt script execution
|
||||
invert({expr}) Number bitwise invert
|
||||
isabsolutepath({path}) Number |TRUE| if {path} is an absolute path
|
||||
@@ -381,7 +386,7 @@ matchstrpos({expr}, {pat} [, {start} [, {count}]])
|
||||
max({expr}) Number maximum value of items in {expr}
|
||||
menu_info({name} [, {mode}]) Dict get menu item information
|
||||
min({expr}) Number minimum value of items in {expr}
|
||||
mkdir({name} [, {path} [, {prot}]])
|
||||
mkdir({name} [, {flags} [, {prot}]])
|
||||
Number create directory {name}
|
||||
mode([expr]) String current editing mode
|
||||
mzeval({expr}) any evaluate |MzScheme| expression
|
||||
@@ -481,7 +486,8 @@ rename({from}, {to}) Number rename (move) file from {from} to {to}
|
||||
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
|
||||
reverse({obj}) List/Blob/String
|
||||
reverse {obj}
|
||||
round({expr}) Float round off {expr}
|
||||
rubyeval({expr}) any evaluate |Ruby| expression
|
||||
screenattr({row}, {col}) Number attribute at screen position
|
||||
@@ -603,6 +609,8 @@ strptime({format}, {timestring})
|
||||
strridx({haystack}, {needle} [, {start}])
|
||||
Number last index of {needle} in {haystack}
|
||||
strtrans({expr}) String translate string to make it printable
|
||||
strutf16len({string} [, {countcc}])
|
||||
Number number of UTF-16 code units in {string}
|
||||
strwidth({expr}) Number display cell length of the String {expr}
|
||||
submatch({nr} [, {list}]) String or List
|
||||
specific match in ":s" or substitute()
|
||||
@@ -666,6 +674,8 @@ test_garbagecollect_soon() none free memory soon for testing
|
||||
test_getvalue({string}) any get value of an internal variable
|
||||
test_gui_event({event}, {args}) bool generate a GUI event for testing
|
||||
test_ignore_error({expr}) none ignore a specific error
|
||||
test_mswin_event({event}, {args})
|
||||
bool generate MS-Windows event for testing
|
||||
test_null_blob() Blob null value for testing
|
||||
test_null_channel() Channel null value for testing
|
||||
test_null_dict() Dict null value for testing
|
||||
@@ -698,11 +708,14 @@ trunc({expr}) Float truncate Float {expr}
|
||||
type({expr}) Number type of value {expr}
|
||||
typename({expr}) String representation of the type of {expr}
|
||||
undofile({name}) String undo file name for {name}
|
||||
undotree() List undo file tree
|
||||
undotree([{buf}]) List undo file tree for buffer {buf}
|
||||
uniq({list} [, {func} [, {dict}]])
|
||||
List remove adjacent duplicates from a list
|
||||
utf16idx({string}, {idx} [, {countcc} [, {charidx}]])
|
||||
Number UTF-16 index of byte {idx} in {string}
|
||||
values({dict}) List values in {dict}
|
||||
virtcol({expr} [, {list}]) Number or List
|
||||
virtcol({expr} [, {list} [, {winid}])
|
||||
Number or List
|
||||
screen column of cursor or mark
|
||||
virtcol2col({winid}, {lnum}, {col})
|
||||
Number byte index of a character on screen
|
||||
@@ -1238,7 +1251,7 @@ bufload({buf}) *bufload()*
|
||||
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. If the buffer is not related to a
|
||||
file the no file is read (e.g., when 'buftype' is "nofile").
|
||||
file then 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()|.
|
||||
@@ -1360,7 +1373,7 @@ byte2line({byte}) *byte2line()*
|
||||
< {not available when compiled without the |+byte_offset|
|
||||
feature}
|
||||
|
||||
byteidx({expr}, {nr}) *byteidx()*
|
||||
byteidx({expr}, {nr} [, {utf16}]) *byteidx()*
|
||||
Return byte index of the {nr}'th character in the String
|
||||
{expr}. Use zero for the first character, it then returns
|
||||
zero.
|
||||
@@ -1370,6 +1383,13 @@ byteidx({expr}, {nr}) *byteidx()*
|
||||
length is added to the preceding base character. See
|
||||
|byteidxcomp()| below for counting composing characters
|
||||
separately.
|
||||
When {utf16} is present and TRUE, {nr} is used as the UTF-16
|
||||
index in the String {expr} instead of as the character index.
|
||||
The UTF-16 index is the index in the string when it is encoded
|
||||
with 16-bit words. If the specified UTF-16 index is in the
|
||||
middle of a character (e.g. in a 4-byte character), then the
|
||||
byte index of the first byte in the character is returned.
|
||||
Refer to |string-offset-encoding| for more information.
|
||||
Example : >
|
||||
echo matchstr(str, ".", byteidx(str, 3))
|
||||
< will display the fourth character. Another way to do the
|
||||
@@ -1381,11 +1401,17 @@ byteidx({expr}, {nr}) *byteidx()*
|
||||
If there are less than {nr} characters -1 is returned.
|
||||
If there are exactly {nr} characters the length of the string
|
||||
in bytes is returned.
|
||||
|
||||
See |charidx()| and |utf16idx()| for getting the character and
|
||||
UTF-16 index respectively from the byte index.
|
||||
Examples: >
|
||||
echo byteidx('a😊😊', 2) returns 5
|
||||
echo byteidx('a😊😊', 2, 1) returns 1
|
||||
echo byteidx('a😊😊', 3, 1) returns 5
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetName()->byteidx(idx)
|
||||
|
||||
byteidxcomp({expr}, {nr}) *byteidxcomp()*
|
||||
byteidxcomp({expr}, {nr} [, {utf16}]) *byteidxcomp()*
|
||||
Like byteidx(), except that a composing character is counted
|
||||
as a separate character. Example: >
|
||||
let s = 'e' .. nr2char(0x301)
|
||||
@@ -1490,27 +1516,38 @@ charcol({expr} [, {winid}]) *charcol()*
|
||||
GetPos()->col()
|
||||
<
|
||||
*charidx()*
|
||||
charidx({string}, {idx} [, {countcc}])
|
||||
charidx({string}, {idx} [, {countcc} [, {utf16}]])
|
||||
Return the character index of the byte at {idx} in {string}.
|
||||
The index of the first character is zero.
|
||||
If there are no multibyte characters the returned value is
|
||||
equal to {idx}.
|
||||
|
||||
When {countcc} is omitted or |FALSE|, then composing characters
|
||||
are not counted separately, their byte length is
|
||||
added to the preceding base character.
|
||||
are not counted separately, their byte length is added to the
|
||||
preceding base character.
|
||||
When {countcc} is |TRUE|, then composing characters are
|
||||
counted as separate characters.
|
||||
Returns -1 if the arguments are invalid or if {idx} is greater
|
||||
than the index of the last byte in {string}. An error is
|
||||
given if the first argument is not a string, the second
|
||||
argument is not a number or when the third argument is present
|
||||
and is not zero or one.
|
||||
|
||||
When {utf16} is present and TRUE, {idx} is used as the UTF-16
|
||||
index in the String {expr} instead of as the byte index.
|
||||
|
||||
Returns -1 if the arguments are invalid or if there are less
|
||||
than {idx} bytes. If there are exactly {idx} bytes the length
|
||||
of the string in characters is returned.
|
||||
|
||||
An error is given and -1 is returned if the first argument is
|
||||
not a string, the second argument is not a number or when the
|
||||
third argument is present and is not zero or one.
|
||||
|
||||
See |byteidx()| and |byteidxcomp()| for getting the byte index
|
||||
from the character index.
|
||||
from the character index and |utf16idx()| for getting the
|
||||
UTF-16 index from the character index.
|
||||
Refer to |string-offset-encoding| for more information.
|
||||
Examples: >
|
||||
echo charidx('áb́ć', 3) returns 1
|
||||
echo charidx('áb́ć', 6, 1) returns 4
|
||||
echo charidx('áb́ć', 16) returns -1
|
||||
echo charidx('a😊😊', 4, 0, 1) returns 2
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetName()->charidx(idx)
|
||||
@@ -1560,7 +1597,7 @@ clearmatches([{win}]) *clearmatches()*
|
||||
Can also be used as a |method|: >
|
||||
GetWin()->clearmatches()
|
||||
<
|
||||
col({expr} [, {winid}) *col()*
|
||||
col({expr} [, {winid}]) *col()*
|
||||
The result is a Number, which is the byte index of the column
|
||||
position given with {expr}. The accepted positions are:
|
||||
. the cursor position
|
||||
@@ -1623,7 +1660,7 @@ complete({startcol}, {matches}) *complete()* *E785*
|
||||
Example: >
|
||||
inoremap <F5> <C-R>=ListMonths()<CR>
|
||||
|
||||
func! ListMonths()
|
||||
func ListMonths()
|
||||
call complete(col('.'), ['January', 'February', 'March',
|
||||
\ 'April', 'May', 'June', 'July', 'August', 'September',
|
||||
\ 'October', 'November', 'December'])
|
||||
@@ -1818,7 +1855,7 @@ cosh({expr}) *cosh()*
|
||||
Compute()->cosh()
|
||||
|
||||
|
||||
count({comp}, {expr} [, {ic} [, {start}]]) *count()*
|
||||
count({comp}, {expr} [, {ic} [, {start}]]) *count()* *E706*
|
||||
Return the number of times an item with value {expr} appears
|
||||
in |String|, |List| or |Dictionary| {comp}.
|
||||
|
||||
@@ -1888,7 +1925,7 @@ cursor({list})
|
||||
This is like the return value of |getpos()| or |getcurpos()|,
|
||||
but without the first item.
|
||||
|
||||
To position the cursor using the character count, use
|
||||
To position the cursor using {col} as the character count, use
|
||||
|setcursorcharpos()|.
|
||||
|
||||
Does not change the jumplist.
|
||||
@@ -2167,6 +2204,15 @@ environ() *environ()*
|
||||
use this: >
|
||||
:echo index(keys(environ()), 'HOME', 0, 1) != -1
|
||||
|
||||
|
||||
err_teapot([{expr}]) *err_teapot()*
|
||||
Produce an error with number 418, needed for implementation of
|
||||
RFC 2324.
|
||||
If {expr} is present and it is TRUE error 503 is given,
|
||||
indicating that coffee is temporarily not available.
|
||||
If {expr} is present it must be a String.
|
||||
|
||||
|
||||
escape({string}, {chars}) *escape()*
|
||||
Escape the characters in {chars} that occur in {string} with a
|
||||
backslash. Example: >
|
||||
@@ -2228,11 +2274,12 @@ execute({command} [, {silent}]) *execute()*
|
||||
string.
|
||||
{command} can be a string or a List. In case of a List the
|
||||
lines are executed one by one.
|
||||
This is equivalent to: >
|
||||
This is more or less equivalent to: >
|
||||
redir => var
|
||||
{command}
|
||||
redir END
|
||||
<
|
||||
< Except that line continuation in {command} is not recognized.
|
||||
|
||||
The optional {silent} argument can have these values:
|
||||
"" no `:silent` used
|
||||
"silent" `:silent` used
|
||||
@@ -2243,7 +2290,7 @@ execute({command} [, {silent}]) *execute()*
|
||||
*E930*
|
||||
It is not possible to use `:redir` anywhere in {command}.
|
||||
|
||||
To get a list of lines use |split()| on the result: >
|
||||
To get a list of lines use `split()` on the result: >
|
||||
execute('args')->split("\n")
|
||||
|
||||
< To execute a command in another window than the current one
|
||||
@@ -2566,8 +2613,7 @@ extend({expr1}, {expr2} [, {expr3}]) *extend()*
|
||||
extendnew({expr1}, {expr2} [, {expr3}]) *extendnew()*
|
||||
Like |extend()| but instead of adding items to {expr1} a new
|
||||
List or Dictionary is created and returned. {expr1} remains
|
||||
unchanged. Items can still be changed by {expr2}, if you
|
||||
don't want that use |deepcopy()| first.
|
||||
unchanged.
|
||||
|
||||
|
||||
feedkeys({string} [, {mode}]) *feedkeys()*
|
||||
@@ -2992,7 +3038,7 @@ funcref({name} [, {arglist}] [, {dict}])
|
||||
Can also be used as a |method|: >
|
||||
GetFuncname()->funcref([arg])
|
||||
<
|
||||
*function()* *partial* *E700* *E922* *E923*
|
||||
*function()* *partial* *E700* *E923*
|
||||
function({name} [, {arglist}] [, {dict}])
|
||||
Return a |Funcref| variable that refers to function {name}.
|
||||
{name} can be the name of a user defined function or an
|
||||
@@ -3260,6 +3306,13 @@ getbufvar({buf}, {varname} [, {def}]) *getbufvar()*
|
||||
< Can also be used as a |method|: >
|
||||
GetBufnr()->getbufvar(varname)
|
||||
<
|
||||
getcellwidths() *getcellwidths()*
|
||||
Returns a |List| of cell widths of character ranges overridden
|
||||
by |setcellwidths()|. The format is equal to the argument of
|
||||
|setcellwidths()|. If no character ranges have their cell
|
||||
widths overridden, an empty List is returned.
|
||||
|
||||
|
||||
getchangelist([{buf}]) *getchangelist()*
|
||||
Returns the |changelist| for the buffer {buf}. For the use
|
||||
of {buf}, see |bufname()| above. If buffer {buf} doesn't
|
||||
@@ -3499,6 +3552,8 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
|
||||
cmdline |cmdline-completion| result
|
||||
compiler compilers
|
||||
cscope |:cscope| suboptions
|
||||
custom,{func} custom completion, defined via {func}
|
||||
customlist,{func} custom completion, defined via {func}
|
||||
diff_buffer |:diffget| and |:diffput| completion
|
||||
dir directory names
|
||||
environment environment variable names
|
||||
@@ -3518,6 +3573,7 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
|
||||
messages |:messages| suboptions
|
||||
option options
|
||||
packadd optional package |pack-add| names
|
||||
runtime |:runtime| completion
|
||||
scriptnames sourced script names |:scriptnames|
|
||||
shellcmd Shell command
|
||||
sign |:sign| suboptions
|
||||
@@ -3950,6 +4006,9 @@ getqflist([{what}]) *getqflist()*
|
||||
text description of the error
|
||||
type type of the error, 'E', '1', etc.
|
||||
valid |TRUE|: recognized error message
|
||||
user_data
|
||||
custom data associated with the item, can be
|
||||
any type.
|
||||
|
||||
When there is no error list or it's empty, an empty list is
|
||||
returned. Quickfix list entries with a non-existing buffer
|
||||
@@ -4105,7 +4164,7 @@ getregtype([{regname}]) *getregtype()*
|
||||
Can also be used as a |method|: >
|
||||
GetRegname()->getregtype()
|
||||
|
||||
getscriptinfo([{opts}) *getscriptinfo()*
|
||||
getscriptinfo([{opts}]) *getscriptinfo()*
|
||||
Returns a |List| with information about all the sourced Vim
|
||||
scripts in the order they were sourced, like what
|
||||
`:scriptnames` shows.
|
||||
@@ -4114,7 +4173,7 @@ getscriptinfo([{opts}) *getscriptinfo()*
|
||||
optional items:
|
||||
name Script name match pattern. If specified,
|
||||
and "sid" is not specified, information about
|
||||
scripts with name that match the pattern
|
||||
scripts with a name that match the pattern
|
||||
"name" are returned.
|
||||
sid Script ID |<SID>|. If specified, only
|
||||
information about the script with ID "sid" is
|
||||
@@ -4135,7 +4194,7 @@ getscriptinfo([{opts}) *getscriptinfo()*
|
||||
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
|
||||
Present only when 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
|
||||
@@ -4993,6 +5052,19 @@ insert({object}, {item} [, {idx}]) *insert()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
mylist->insert(item)
|
||||
<
|
||||
*instanceof()* *E614* *E616* *E693*
|
||||
instanceof({object}, {class})
|
||||
The result is a Number, which is |TRUE| when the {object}
|
||||
argument is a direct or indirect instance of a |Class|
|
||||
specified by {class}.
|
||||
When {class} is a |List| the function returns |TRUE| when
|
||||
{object} is an instance of any of the specified classes.
|
||||
Example: >
|
||||
instanceof(animal, [Dog, Cat])
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
myobj->instanceof(mytype)
|
||||
|
||||
interrupt() *interrupt()*
|
||||
Interrupt script execution. It works more or less like the
|
||||
@@ -5656,7 +5728,7 @@ maparg({name} [, {mode} [, {abbr} [, {dict}]]]) *maparg()*
|
||||
"!" Insert and Commandline mode
|
||||
(|mapmode-ic|)
|
||||
"sid" The script local ID, used for <sid> mappings
|
||||
(|<SID>|).
|
||||
(|<SID>|). Negative for special contexts.
|
||||
"scriptversion" The version of the script. 999999 for
|
||||
|Vim9| script.
|
||||
"lnum" The line number in "sid", zero if unknown.
|
||||
@@ -6250,17 +6322,20 @@ min({expr}) Return the minimum value of all items in {expr}. Example: >
|
||||
mylist->min()
|
||||
|
||||
< *mkdir()* *E739*
|
||||
mkdir({name} [, {path} [, {prot}]])
|
||||
mkdir({name} [, {flags} [, {prot}]])
|
||||
Create directory {name}.
|
||||
|
||||
If {path} contains "p" then intermediate directories are
|
||||
created as necessary. Otherwise it must be "".
|
||||
When {flags} is present it must be a string. An empty string
|
||||
has no effect.
|
||||
|
||||
If {path} contains "D" then {name} is deleted at the end of
|
||||
If {flags} contains "p" then intermediate directories are
|
||||
created as necessary.
|
||||
|
||||
If {flags} 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
|
||||
If {flags} 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
|
||||
@@ -6335,6 +6410,7 @@ mode([expr]) Return a string that indicates the current mode.
|
||||
Rvc Virtual Replace mode completion |compl-generic|
|
||||
Rvx Virtual Replace mode |i_CTRL-X| completion
|
||||
c Command-line editing
|
||||
ct Command-line editing via Terminal-Job mode
|
||||
cv Vim Ex mode |gQ|
|
||||
ce Normal Ex mode |Q|
|
||||
r Hit-enter prompt
|
||||
@@ -6532,7 +6608,11 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
The "%" starts a conversion specification. The following
|
||||
arguments appear in sequence:
|
||||
|
||||
% [flags] [field-width] [.precision] type
|
||||
% [pos-argument] [flags] [field-width] [.precision] type
|
||||
|
||||
pos-argument
|
||||
At most one positional argument specifier. These
|
||||
take the form {n$}, where n is >= 1.
|
||||
|
||||
flags
|
||||
Zero or more of the following flags:
|
||||
@@ -6604,6 +6684,12 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
< This limits the length of the text used from "line" to
|
||||
"width" bytes.
|
||||
|
||||
If the argument to be formatted is specified using a posional
|
||||
argument specifier, and a '*' is used to indicate that a
|
||||
number argument is to be used to specify the width or
|
||||
precision, the argument(s) to be used must also be specified
|
||||
using a {n$} positional argument specifier. See |printf-$|.
|
||||
|
||||
The conversion specifiers and their meanings are:
|
||||
|
||||
*printf-d* *printf-b* *printf-B* *printf-o*
|
||||
@@ -6622,8 +6708,13 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
a conversion is wider than the field width, the field
|
||||
is expanded to contain the conversion result.
|
||||
The 'h' modifier indicates the argument is 16 bits.
|
||||
The 'l' modifier indicates the argument is 32 bits.
|
||||
The 'L' modifier indicates the argument is 64 bits.
|
||||
The 'l' modifier indicates the argument is a long
|
||||
integer. The size will be 32 bits or 64 bits
|
||||
depending on your platform.
|
||||
The "ll" modifier indicates the argument is 64 bits.
|
||||
The b and B conversion specifiers never take a width
|
||||
modifier and always assume their argument is a 64 bit
|
||||
integer.
|
||||
Generally, these modifiers are not useful. They are
|
||||
ignored when type is known from the argument.
|
||||
|
||||
@@ -6693,6 +6784,111 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
of "%" items. If there are not sufficient or too many
|
||||
arguments an error is given. Up to 18 arguments can be used.
|
||||
|
||||
*printf-$*
|
||||
In certain languages, error and informative messages are
|
||||
more readable when the order of words is different from the
|
||||
corresponding message in English. To accommodate translations
|
||||
having a different word order, positional arguments may be
|
||||
used to indicate this. For instance: >
|
||||
|
||||
#, c-format
|
||||
msgid "%s returning %s"
|
||||
msgstr "waarde %2$s komt terug van %1$s"
|
||||
<
|
||||
In this example, the sentence has its 2 string arguments reversed
|
||||
in the output. >
|
||||
|
||||
echo printf(
|
||||
"In The Netherlands, vim's creator's name is: %1$s %2$s",
|
||||
"Bram", "Moolenaar")
|
||||
< In The Netherlands, vim's creator's name is: Bram Moolenaar >
|
||||
|
||||
echo printf(
|
||||
"In Belgium, vim's creator's name is: %2$s %1$s",
|
||||
"Bram", "Moolenaar")
|
||||
< In Belgium, vim's creator's name is: Moolenaar Bram
|
||||
|
||||
Width (and precision) can be specified using the '*' specifier.
|
||||
In this case, you must specify the field width position in the
|
||||
argument list. >
|
||||
|
||||
echo printf("%1$*2$.*3$d", 1, 2, 3)
|
||||
< 001 >
|
||||
echo printf("%2$*3$.*1$d", 1, 2, 3)
|
||||
< 2 >
|
||||
echo printf("%3$*1$.*2$d", 1, 2, 3)
|
||||
< 03 >
|
||||
echo printf("%1$*2$.*3$g", 1.4142, 2, 3)
|
||||
< 1.414
|
||||
|
||||
You can mix specifying the width and/or precision directly
|
||||
and via positional arguments: >
|
||||
|
||||
echo printf("%1$4.*2$f", 1.4142135, 6)
|
||||
< 1.414214 >
|
||||
echo printf("%1$*2$.4f", 1.4142135, 6)
|
||||
< 1.4142 >
|
||||
echo printf("%1$*2$.*3$f", 1.4142135, 6, 2)
|
||||
< 1.41
|
||||
|
||||
*E1500*
|
||||
You cannot mix positional and non-positional arguments: >
|
||||
echo printf("%s%1$s", "One", "Two")
|
||||
< E1500: Cannot mix positional and non-positional
|
||||
arguments: %s%1$s
|
||||
|
||||
*E1501*
|
||||
You cannot skip a positional argument in a format string: >
|
||||
echo printf("%3$s%1$s", "One", "Two", "Three")
|
||||
< E1501: format argument 2 unused in $-style
|
||||
format: %3$s%1$s
|
||||
|
||||
*E1502*
|
||||
You can re-use a [field-width] (or [precision]) argument: >
|
||||
echo printf("%1$d at width %2$d is: %01$*2$d", 1, 2)
|
||||
< 1 at width 2 is: 01
|
||||
|
||||
However, you can't use it as a different type: >
|
||||
echo printf("%1$d at width %2$ld is: %01$*2$d", 1, 2)
|
||||
< E1502: Positional argument 2 used as field
|
||||
width reused as different type: long int/int
|
||||
|
||||
*E1503*
|
||||
When a positional argument is used, but not the correct number
|
||||
or arguments is given, an error is raised: >
|
||||
echo printf("%1$d at width %2$d is: %01$*2$.*3$d", 1, 2)
|
||||
< E1503: Positional argument 3 out of bounds:
|
||||
%1$d at width %2$d is: %01$*2$.*3$d
|
||||
|
||||
Only the first error is reported: >
|
||||
echo printf("%01$*2$.*3$d %4$d", 1, 2)
|
||||
< E1503: Positional argument 3 out of bounds:
|
||||
%01$*2$.*3$d %4$d
|
||||
|
||||
*E1504*
|
||||
A positional argument can be used more than once: >
|
||||
echo printf("%1$s %2$s %1$s", "One", "Two")
|
||||
< One Two One
|
||||
|
||||
However, you can't use a different type the second time: >
|
||||
echo printf("%1$s %2$s %1$d", "One", "Two")
|
||||
< E1504: Positional argument 1 type used
|
||||
inconsistently: int/string
|
||||
|
||||
*E1505*
|
||||
Various other errors that lead to a format string being
|
||||
wrongly formatted lead to: >
|
||||
echo printf("%1$d at width %2$d is: %01$*2$.3$d", 1, 2)
|
||||
< E1505: Invalid format specifier:
|
||||
%1$d at width %2$d is: %01$*2$.3$d
|
||||
|
||||
*E1507*
|
||||
This internal error indicates that the logic to parse a
|
||||
positional format argument ran into a problem that couldn't be
|
||||
otherwise reported. Please file a bug against Vim if you run
|
||||
into this, copying the exact format string and parameters that
|
||||
were used.
|
||||
|
||||
|
||||
prompt_getprompt({buf}) *prompt_getprompt()*
|
||||
Returns the effective prompt text for buffer {buf}. {buf} can
|
||||
@@ -6724,17 +6920,20 @@ prompt_setcallback({buf}, {expr}) *prompt_setcallback()*
|
||||
that was entered at the prompt. This can be an empty string
|
||||
if the user only typed Enter.
|
||||
Example: >
|
||||
call prompt_setcallback(bufnr(), function('s:TextEntered'))
|
||||
func s:TextEntered(text)
|
||||
if a:text == 'exit' || a:text == 'quit'
|
||||
stopinsert
|
||||
" Reset 'modified' to allow the buffer to be closed.
|
||||
" We assume there is nothing useful to be saved.
|
||||
set nomodified
|
||||
close
|
||||
else
|
||||
" Do something useful with "a:text". In this example
|
||||
" we just repeat it.
|
||||
call append(line('$') - 1, 'Entered: "' .. a:text .. '"')
|
||||
" Reset 'modified' to allow the buffer to be closed.
|
||||
set nomodified
|
||||
endif
|
||||
endfunc
|
||||
call prompt_setcallback(bufnr(), function('s:TextEntered'))
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetBuffer()->prompt_setcallback(callback)
|
||||
@@ -7088,7 +7287,7 @@ reltime({start})
|
||||
reltime({start}, {end}) *reltime()*
|
||||
Return an item that represents a time value. The item is a
|
||||
list with items that depend on the system. In Vim 9 script
|
||||
list<any> can be used.
|
||||
the type list<any> can be used.
|
||||
The item can be passed to |reltimestr()| to convert it to a
|
||||
string or |reltimefloat()| to convert to a Float. For
|
||||
example, to see the time spent in function Work(): >
|
||||
@@ -7137,7 +7336,8 @@ reltimestr({time}) *reltimestr()*
|
||||
call MyFunction()
|
||||
echo reltimestr(reltime(start))
|
||||
< Note that overhead for the commands will be added to the time.
|
||||
The accuracy depends on the system.
|
||||
The accuracy depends on the system. Use reltimefloat() for the
|
||||
greatest accuracy which is nanoseconds on some systems.
|
||||
Leading spaces are used to make the string align nicely. You
|
||||
can use split() to remove it. >
|
||||
echo split(reltimestr(reltime(start)))[0]
|
||||
@@ -7269,8 +7469,9 @@ remote_send({server}, {string} [, {idvar}])
|
||||
<
|
||||
*remote_startserver()* *E941* *E942*
|
||||
remote_startserver({name})
|
||||
Become the server {name}. This fails if already running as a
|
||||
server, when |v:servername| is not empty.
|
||||
Become the server {name}. {name} must be a non-empty string.
|
||||
This fails if already running as a server, when |v:servername|
|
||||
is not empty.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
ServerName()->remote_startserver()
|
||||
@@ -7360,11 +7561,13 @@ resolve({filename}) *resolve()* *E655*
|
||||
GetName()->resolve()
|
||||
|
||||
reverse({object}) *reverse()*
|
||||
Reverse the order of items in {object} in-place.
|
||||
{object} can be a |List| or a |Blob|.
|
||||
Returns {object}.
|
||||
Returns zero if {object} is not a List or a Blob.
|
||||
If you want an object to remain unmodified make a copy first: >
|
||||
Reverse the order of items in {object}. {object} can be a
|
||||
|List|, a |Blob| or a |String|. For a List and a Blob the
|
||||
items are reversed in-place and {object} is returned.
|
||||
For a String a new String is returned.
|
||||
Returns zero if {object} is not a List, Blob or a String.
|
||||
If you want a List or Blob to remain unmodified make a copy
|
||||
first: >
|
||||
:let revlist = reverse(copy(mylist))
|
||||
< Can also be used as a |method|: >
|
||||
mylist->reverse()
|
||||
@@ -7947,7 +8150,7 @@ setcellwidths({list}) *setcellwidths()*
|
||||
terminal, counted in screen cells. The values override
|
||||
'ambiwidth'. Example: >
|
||||
call setcellwidths([
|
||||
\ [0x111, 0x111, 1],
|
||||
\ [0x111, 0x111, 1],
|
||||
\ [0x2194, 0x2199, 2],
|
||||
\ ])
|
||||
|
||||
@@ -7956,12 +8159,12 @@ setcellwidths({list}) *setcellwidths()*
|
||||
{low} and {high} can be the same, in which case this refers to
|
||||
one character. Otherwise it is the range of characters from
|
||||
{low} to {high} (inclusive). *E1111* *E1114*
|
||||
Only characters with value 0x100 and higher can be used.
|
||||
Only characters with value 0x80 and higher can be used.
|
||||
|
||||
{width} must be either 1 or 2, indicating the character width
|
||||
in screen cells. *E1112*
|
||||
An error is given if the argument is invalid, also when a
|
||||
range overlaps with another. *E1113*
|
||||
range overlaps with another. *E1113*
|
||||
|
||||
If the new value causes 'fillchars' or 'listchars' to become
|
||||
invalid it is rejected and an error is given.
|
||||
@@ -8236,6 +8439,8 @@ setqflist({list} [, {action} [, {what}]]) *setqflist()*
|
||||
text description of the error
|
||||
type single-character error type, 'E', 'W', etc.
|
||||
valid recognized error message
|
||||
user_data custom data associated with the item, can be
|
||||
any type.
|
||||
|
||||
The "col", "vcol", "nr", "type" and "text" entries are
|
||||
optional. Either "lnum" or "pattern" entry can be used to
|
||||
@@ -8628,8 +8833,9 @@ sort({list} [, {how} [, {dict}]]) *sort()* *E702*
|
||||
|
||||
When {how} is given and it is 'n' then all items will be
|
||||
sorted numerical (Implementation detail: this uses the
|
||||
strtod() function to parse numbers, Strings, Lists, Dicts and
|
||||
Funcrefs will be considered as being 0).
|
||||
strtod() function to parse numbers. Strings, Lists, Dicts and
|
||||
Funcrefs will be considered as being 0). Note that this won't
|
||||
sort a list of strings with numbers!
|
||||
|
||||
When {how} is given and it is 'N' then all items will be
|
||||
sorted numerical. This is like 'n' but a string containing
|
||||
@@ -9111,6 +9317,8 @@ string({expr}) Return {expr} converted to a String. If {expr} is a Number,
|
||||
Blob 0z00112233.44556677.8899
|
||||
List [item, item]
|
||||
Dictionary {key: value, key: value}
|
||||
Class class SomeName
|
||||
Object object of SomeName {lnum: 1, col: 3}
|
||||
|
||||
When a |List| or |Dictionary| has a recursive reference it is
|
||||
replaced by "[...]" or "{...}". Using eval() on the result
|
||||
@@ -9226,6 +9434,28 @@ strtrans({string}) *strtrans()*
|
||||
Can also be used as a |method|: >
|
||||
GetString()->strtrans()
|
||||
|
||||
strutf16len({string} [, {countcc}]) *strutf16len()*
|
||||
The result is a Number, which is the number of UTF-16 code
|
||||
units in String {string} (after converting it to UTF-16).
|
||||
|
||||
When {countcc} is TRUE, composing characters are counted
|
||||
separately.
|
||||
When {countcc} is omitted or FALSE, composing characters are
|
||||
ignored.
|
||||
|
||||
Returns zero on error.
|
||||
|
||||
Also see |strlen()| and |strcharlen()|.
|
||||
Examples: >
|
||||
echo strutf16len('a') returns 1
|
||||
echo strutf16len('©') returns 1
|
||||
echo strutf16len('😊') returns 2
|
||||
echo strutf16len('ą́') returns 1
|
||||
echo strutf16len('ą́', v:true) returns 3
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetText()->strutf16len()
|
||||
<
|
||||
strwidth({string}) *strwidth()*
|
||||
The result is a Number, which is the number of display cells
|
||||
String {string} occupies. A Tab character is counted as one
|
||||
@@ -9795,6 +10025,8 @@ timer_start({time}, {callback} [, {options}])
|
||||
{time} is the waiting time in milliseconds. This is the
|
||||
minimum time before invoking the callback. When the system is
|
||||
busy or Vim is not waiting for input the time will be longer.
|
||||
Zero can be used to execute the callback when Vim is back in
|
||||
the main loop.
|
||||
|
||||
{callback} is the function to call. It can be the name of a
|
||||
function or a |Funcref|. It is called with one argument, which
|
||||
@@ -9943,6 +10175,8 @@ type({expr}) The result is a Number representing the type of {expr}.
|
||||
Job: 8 |v:t_job|
|
||||
Channel: 9 |v:t_channel|
|
||||
Blob: 10 |v:t_blob|
|
||||
Class 12 |v:t_class|
|
||||
Object 13 |v:t_object|
|
||||
For backward compatibility, this method can be used: >
|
||||
:if type(myvar) == type(0)
|
||||
:if type(myvar) == type("")
|
||||
@@ -9963,7 +10197,7 @@ typename({expr}) *typename()*
|
||||
Return a string representation of the type of {expr}.
|
||||
Example: >
|
||||
echo typename([1, 2, 3])
|
||||
list<number>
|
||||
< list<number> ~
|
||||
|
||||
|
||||
undofile({name}) *undofile()*
|
||||
@@ -9982,9 +10216,10 @@ undofile({name}) *undofile()*
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->undofile()
|
||||
|
||||
undotree() *undotree()*
|
||||
Return the current state of the undo tree in a dictionary with
|
||||
the following items:
|
||||
undotree([{buf}]) *undotree()*
|
||||
Return the current state of the undo tree for the current
|
||||
buffer, or for a specific buffer if {buf} is given. The
|
||||
result is a dictionary with the following items:
|
||||
"seq_last" The highest undo sequence number used.
|
||||
"seq_cur" The sequence number of the current position in
|
||||
the undo tree. This differs from "seq_last"
|
||||
@@ -10037,6 +10272,38 @@ uniq({list} [, {func} [, {dict}]]) *uniq()* *E882*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
mylist->uniq()
|
||||
<
|
||||
*utf16idx()*
|
||||
utf16idx({string}, {idx} [, {countcc} [, {charidx}]])
|
||||
Same as |charidx()| but returns the UTF-16 code unit index of
|
||||
the byte at {idx} in {string} (after converting it to UTF-16).
|
||||
|
||||
When {charidx} is present and TRUE, {idx} is used as the
|
||||
character index in the String {string} instead of as the byte
|
||||
index.
|
||||
An {idx} in the middle of a UTF-8 sequence is rounded
|
||||
downwards to the beginning of that sequence.
|
||||
|
||||
Returns -1 if the arguments are invalid or if there are less
|
||||
than {idx} bytes in {string}. If there are exactly {idx} bytes
|
||||
the length of the string in UTF-16 code units is returned.
|
||||
|
||||
See |byteidx()| and |byteidxcomp()| for getting the byte index
|
||||
from the UTF-16 index and |charidx()| for getting the
|
||||
character index from the UTF-16 index.
|
||||
Refer to |string-offset-encoding| for more information.
|
||||
Examples: >
|
||||
echo utf16idx('a😊😊', 3) returns 2
|
||||
echo utf16idx('a😊😊', 7) returns 4
|
||||
echo utf16idx('a😊😊', 1, 0, 1) returns 2
|
||||
echo utf16idx('a😊😊', 2, 0, 1) returns 4
|
||||
echo utf16idx('aą́c', 6) returns 2
|
||||
echo utf16idx('aą́c', 6, 1) returns 4
|
||||
echo utf16idx('a😊😊', 9) returns -1
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetName()->utf16idx(idx)
|
||||
|
||||
|
||||
values({dict}) *values()*
|
||||
Return a |List| with all the values of {dict}. The |List| is
|
||||
@@ -10046,7 +10313,7 @@ values({dict}) *values()*
|
||||
Can also be used as a |method|: >
|
||||
mydict->values()
|
||||
|
||||
virtcol({expr} [, {list}]) *virtcol()*
|
||||
virtcol({expr} [, {list} [, {winid}]]) *virtcol()*
|
||||
The result is a Number, which is the screen column of the file
|
||||
position given with {expr}. That is, the last screen position
|
||||
occupied by the character at that position, when the screen
|
||||
@@ -10078,10 +10345,13 @@ virtcol({expr} [, {list}]) *virtcol()*
|
||||
returns the cursor position. Differs from |'<| in
|
||||
that it's updated right away.
|
||||
|
||||
If {list} is present and non-zero then virtcol() returns a List
|
||||
with the first and last screen position occupied by the
|
||||
If {list} is present and non-zero then virtcol() returns a
|
||||
List with the first and last screen position occupied by the
|
||||
character.
|
||||
|
||||
With the optional {winid} argument the values are obtained for
|
||||
that window instead of the current window.
|
||||
|
||||
Note that only marks in the current file can be used.
|
||||
Examples: >
|
||||
" With text "foo^Lbar" and cursor on the "^L":
|
||||
@@ -10093,7 +10363,7 @@ virtcol({expr} [, {list}]) *virtcol()*
|
||||
" With text " there", with 't at 'h':
|
||||
|
||||
virtcol("'t") " returns 6
|
||||
< The first column is 1. 0 is returned for an error.
|
||||
< The first column is 1. 0 or [0, 0] is returned for an error.
|
||||
A more advanced example that echoes the maximum length of
|
||||
all lines: >
|
||||
echo max(map(range(1, line('$')), "virtcol([v:val, '$'])"))
|
||||
@@ -10110,6 +10380,9 @@ virtcol2col({winid}, {lnum}, {col}) *virtcol2col()*
|
||||
{lnum}, then the byte index of the character at the last
|
||||
virtual column is returned.
|
||||
|
||||
For a multi-byte character, the column number of the first
|
||||
byte in the character is returned.
|
||||
|
||||
The {winid} argument can be the window number or the
|
||||
|window-ID|. If this is zero, then the current window is used.
|
||||
|
||||
@@ -10155,7 +10428,7 @@ win_execute({id}, {command} [, {silent}]) *win_execute()*
|
||||
The window will temporarily be made the current window,
|
||||
without triggering autocommands or changing directory. When
|
||||
executing {command} autocommands will be triggered, this may
|
||||
have unexpected side effects. Use |:noautocmd| if needed.
|
||||
have unexpected side effects. Use `:noautocmd` if needed.
|
||||
Example: >
|
||||
call win_execute(winid, 'set syntax=python')
|
||||
< Doing the same with `setwinvar()` would not trigger
|
||||
@@ -10536,7 +10809,7 @@ writefile({object}, {fname} [, {flags}])
|
||||
<
|
||||
'D' Delete the file when the current function ends. This
|
||||
works like: >
|
||||
:defer delete({fname})
|
||||
:defer delete({fname})
|
||||
< Fails when not in a function. Also see |:defer|.
|
||||
|
||||
's' fsync() is called after writing the file. This flushes
|
||||
@@ -10733,12 +11006,14 @@ persistent_undo Compiled with support for persistent undo history.
|
||||
postscript Compiled with PostScript file printing.
|
||||
printer Compiled with |:hardcopy| support.
|
||||
profile Compiled with |:profile| support.
|
||||
prof_nsec Profile results are in nanoseconds.
|
||||
python Python 2.x interface available. |has-python|
|
||||
python_compiled Compiled with Python 2.x interface. |has-python|
|
||||
python_dynamic Python 2.x interface is dynamically loaded. |has-python|
|
||||
python3 Python 3.x interface available. |has-python|
|
||||
python3_compiled Compiled with Python 3.x interface. |has-python|
|
||||
python3_dynamic Python 3.x interface is dynamically loaded. |has-python|
|
||||
python3_stable Python 3.x interface is using Python Stable ABI. |has-python|
|
||||
pythonx Python 2.x and/or 3.x interface available. |python_x|
|
||||
qnx QNX version of Vim.
|
||||
quickfix Compiled with |quickfix| support.
|
||||
@@ -10816,6 +11091,8 @@ winaltkeys Compiled with 'winaltkeys' option.
|
||||
windows Compiled with support for more than one window.
|
||||
(always true)
|
||||
writebackup Compiled with 'writebackup' default on.
|
||||
xattr Compiled with extended attributes support |xattr|
|
||||
(currently only supported on Linux).
|
||||
xfontset Compiled with X fontset support |xfontset|.
|
||||
xim Compiled with X input method support |xim|.
|
||||
xpm Compiled with pixmap support.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 9.0. Last change: 2022 Nov 20
|
||||
*change.txt* For Vim version 9.0. Last change: 2023 Sep 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -210,6 +210,7 @@ gR Enter Virtual Replace mode: Each character you type
|
||||
|
||||
*v_r*
|
||||
{Visual}r{char} Replace all selected characters by {char}.
|
||||
CTRL-C will be inserted literally.
|
||||
|
||||
*v_C*
|
||||
{Visual}["x]C Delete the highlighted lines [into register x] and
|
||||
@@ -296,7 +297,9 @@ gr{char} Replace the virtual characters under the cursor with
|
||||
{char}. This replaces in screen space, not file
|
||||
space. See |gR| and |Virtual-Replace-mode| for more
|
||||
details. As with |r| a count may be given.
|
||||
{char} can be entered like with |r|.
|
||||
{char} can be entered like with |r|, but characters
|
||||
that have a special meaning in Insert mode, such as
|
||||
most CTRL-keys, cannot be used.
|
||||
|
||||
*digraph-arg*
|
||||
The argument for Normal mode commands like |r| and |t| is a single character.
|
||||
@@ -453,6 +456,12 @@ Note similarly, when 'nrformats' includes "bin", binary numbers with a leading
|
||||
'0x' or '0X' can be interpreted as hexadecimal rather than binary since '0b'
|
||||
are valid hexadecimal digits.
|
||||
|
||||
When the number under the cursor is too big to fit into 32 or 64 bit
|
||||
(depending on how Vim was build), it will be rounded off to the nearest number
|
||||
that can be represented, and the addition/subtraction is skipped. E.g. with
|
||||
64 bit support using CTRL-X on 18446744073709551616 results in
|
||||
18446744073709551615. Same for larger numbers, such as 18446744073709551618.
|
||||
|
||||
The CTRL-A command is very useful in a macro. Example: Use the following
|
||||
steps to make a numbered list.
|
||||
|
||||
@@ -1033,7 +1042,7 @@ inside of strings can change! Also see 'softtabstop' option. >
|
||||
< to display registers '1' and 'a'. Spaces are allowed
|
||||
in {arg}.
|
||||
|
||||
*:di* *:display*
|
||||
*:di* *:dis* *:display*
|
||||
:di[splay] [arg] Same as :registers.
|
||||
|
||||
*y* *yank*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*channel.txt* For Vim version 9.0. Last change: 2022 Dec 01
|
||||
*channel.txt* For Vim version 9.0. Last change: 2023 Aug 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -956,7 +956,7 @@ job_start({command} [, {options}]) *job_start()*
|
||||
to String. This works best on Unix.
|
||||
|
||||
On MS-Windows, job_start() makes a GUI application hidden. If
|
||||
want to show it, Use |:!start| instead.
|
||||
you want to show it, use |:!start| instead.
|
||||
|
||||
The command is executed directly, not through a shell, the
|
||||
'shell' option is not used. To use the shell: >
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 9.0. Last change: 2022 Nov 11
|
||||
*cmdline.txt* For Vim version 9.0. Last change: 2023 May 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -517,16 +517,26 @@ example, to match only files that end in ".c": >
|
||||
:e *.c$
|
||||
This will not match a file ending in ".cpp". Without the "$" it does match.
|
||||
|
||||
The old value of an option can be obtained by hitting 'wildchar' just after
|
||||
the '='. For example, typing 'wildchar' after ":set dir=" will insert the
|
||||
current value of 'dir'. This overrules file name completion for the options
|
||||
that take a file name.
|
||||
|
||||
If you would like using <S-Tab> for CTRL-P in an xterm, put this command in
|
||||
your .cshrc: >
|
||||
xmodmap -e "keysym Tab = Tab Find"
|
||||
And this in your .vimrc: >
|
||||
:cmap <Esc>[1~ <C-P>
|
||||
< *complete-set-option*
|
||||
When setting an option using |:set=|, the old value of an option can be
|
||||
obtained by hitting 'wildchar' just after the '='. For example, typing
|
||||
'wildchar' after ":set dir=" will insert the current value of 'dir'. This
|
||||
overrules file name completion for the options that take a file name.
|
||||
|
||||
When using |:set=|, |:set+=|, or |:set^=|, string options that have
|
||||
pre-defined names or syntax (e.g. 'diffopt', 'listchars') or are a list of
|
||||
single-character flags (e.g. 'shortmess') will also present a list of possible
|
||||
values for completion when using 'wildchar'.
|
||||
|
||||
When using |:set-=|, comma-separated options like 'diffopt' or 'backupdir'
|
||||
will show each item separately. Flag list options like 'shortmess' will show
|
||||
both the entire old value and the individual flags. Otherwise completion will
|
||||
just fill in with the entire old value.
|
||||
|
||||
==============================================================================
|
||||
3. Ex command-lines *cmdline-lines*
|
||||
@@ -617,6 +627,7 @@ followed by another Vim command:
|
||||
:read !
|
||||
:scscope
|
||||
:sign
|
||||
:tabdo
|
||||
:tcl
|
||||
:tcldo
|
||||
:tclfile
|
||||
@@ -777,7 +788,7 @@ An example for subtracting (which isn't very useful): >
|
||||
On this text:
|
||||
1 one ~
|
||||
2 two ~
|
||||
3 three FOLDED~
|
||||
3 three FOLDED ~
|
||||
4 four FOLDED ~
|
||||
5 five FOLDED ~
|
||||
6 six FOLDED ~
|
||||
@@ -961,9 +972,10 @@ Note: these are typed literally, they are not special keys!
|
||||
write. *E495*
|
||||
*:<abuf>* *<abuf>*
|
||||
<abuf> When executing autocommands, is replaced with the currently
|
||||
effective buffer number (for ":r file" and ":so file" it is
|
||||
the current buffer, the file being read/sourced is not in a
|
||||
buffer). *E496*
|
||||
effective buffer number. It is not set for all events,
|
||||
also see |bufnr()|. For ":r file" and ":so file" it is the
|
||||
current buffer, the file being read/sourced is not in a
|
||||
buffer. *E496*
|
||||
*:<amatch>* *<amatch>*
|
||||
<amatch> When executing autocommands, is replaced with the match for
|
||||
which this autocommand was executed. *E497*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*diff.txt* For Vim version 9.0. Last change: 2022 Oct 01
|
||||
*diff.txt* For Vim version 9.0. Last change: 2023 Apr 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -109,6 +109,7 @@ While already in Vim you can start diff mode in three ways.
|
||||
accidentally being patched. But it may still result in
|
||||
various ".rej" files to be created. And when absolute path
|
||||
names are present these files may get patched anyway.
|
||||
Using the "patch" command is not allowed in |restricted-mode|.
|
||||
|
||||
To make these commands use a vertical split, prepend |:vertical|. Examples: >
|
||||
|
||||
@@ -136,7 +137,7 @@ file for a moment and come back to the same file and be in diff mode again.
|
||||
buffers.
|
||||
|
||||
The `:diffoff` command resets the relevant options to the values they had when
|
||||
using `:diffsplit`, `:diffpatch` , `:diffthis`. or starting Vim in diff mode.
|
||||
using `:diffsplit`, `:diffpatch`, `:diffthis`. or starting Vim in diff mode.
|
||||
When using `:diffoff` twice the last saved values are restored.
|
||||
Otherwise they are set to their default value:
|
||||
|
||||
@@ -148,6 +149,10 @@ Otherwise they are set to their default value:
|
||||
'foldmethod' "manual"
|
||||
'foldcolumn' 0
|
||||
|
||||
'foldenable' will most-likely be reset to off. That is when 'foldmethod' is
|
||||
is restored to "manual". The folds themselves are not cleared but they should
|
||||
not show up, resetting 'foldenable' is the best way to do that.
|
||||
|
||||
==============================================================================
|
||||
2. Viewing diffs *view-diffs*
|
||||
|
||||
@@ -177,7 +182,7 @@ possible to view the changes you have made to a buffer since the file was
|
||||
loaded. Since Vim doesn't allow having two buffers for the same file, you
|
||||
need another buffer. This command is useful: >
|
||||
command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_
|
||||
\ | diffthis | wincmd p | diffthis
|
||||
\ | diffthis | wincmd p | diffthis
|
||||
(this is in |defaults.vim|). Use ":DiffOrig" to see the differences between
|
||||
the current buffer and the file it was loaded from.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*digraph.txt* For Vim version 9.0. Last change: 2022 Nov 22
|
||||
*digraph.txt* For Vim version 9.0. Last change: 2023 Mar 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -547,7 +547,7 @@ char digraph hex dec official name ~
|
||||
Θ H* 0398 0920 GREEK CAPITAL LETTER THETA
|
||||
Ι I* 0399 0921 GREEK CAPITAL LETTER IOTA
|
||||
Κ K* 039A 0922 GREEK CAPITAL LETTER KAPPA
|
||||
Λ L* 039B 0923 GREEK CAPITAL LETTER LAMDA
|
||||
Λ L* 039B 0923 GREEK CAPITAL LETTER LAMDA (aka LAMBDA)
|
||||
Μ M* 039C 0924 GREEK CAPITAL LETTER MU
|
||||
Ν N* 039D 0925 GREEK CAPITAL LETTER NU
|
||||
Ξ C* 039E 0926 GREEK CAPITAL LETTER XI
|
||||
@@ -578,7 +578,7 @@ char digraph hex dec official name ~
|
||||
θ h* 03B8 0952 GREEK SMALL LETTER THETA
|
||||
ι i* 03B9 0953 GREEK SMALL LETTER IOTA
|
||||
κ k* 03BA 0954 GREEK SMALL LETTER KAPPA
|
||||
λ l* 03BB 0955 GREEK SMALL LETTER LAMDA
|
||||
λ l* 03BB 0955 GREEK SMALL LETTER LAMDA (aka LAMBDA)
|
||||
μ m* 03BC 0956 GREEK SMALL LETTER MU
|
||||
ν n* 03BD 0957 GREEK SMALL LETTER NU
|
||||
ξ c* 03BE 0958 GREEK SMALL LETTER XI
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 9.0. Last change: 2022 Nov 02
|
||||
*editing.txt* For Vim version 9.0. Last change: 2023 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -385,7 +385,9 @@ as a wildcard when "[" is in the 'isfname' option. A simple way to avoid this
|
||||
is to use "path\[[]abc]", this matches the file "path\[abc]".
|
||||
|
||||
*starstar-wildcard*
|
||||
Expanding "**" is possible on Unix, Win32, macOS and a few other systems.
|
||||
Expanding "**" is possible on Unix, Win32, macOS and a few other systems (but
|
||||
it may depend on your 'shell' setting on Unix and macOS. It's known to work
|
||||
correctly for zsh; for bash this requires at least bash version >= 4.X).
|
||||
This allows searching a directory tree. This goes up to 100 directories deep.
|
||||
Note there are some commands where this works slightly differently, see
|
||||
|file-searching|.
|
||||
@@ -1095,6 +1097,13 @@ will get the ACL info of the original file.
|
||||
The ACL info is also used to check if a file is read-only (when opening the
|
||||
file).
|
||||
|
||||
*xattr* *E1506* *E1508* *E1509*
|
||||
xattr stands for Extended Attributes. It is an advanced way to save metadata
|
||||
alongside the file in the filesystem. It depends on the actual filesystem
|
||||
being used and Vim supports it only on a Linux system.
|
||||
Vim attempts to preserve the extended attribute info when writing a file.
|
||||
The backup file will get the extended attribute of the original file.
|
||||
|
||||
*read-only-share*
|
||||
When MS-Windows shares a drive on the network it can be marked as read-only.
|
||||
This means that even if the file read-only attribute is absent, and the ACL
|
||||
@@ -1533,9 +1542,10 @@ To disable the encryption, reset the 'key' option to an empty value: >
|
||||
|
||||
You can use the 'cryptmethod' option to select the type of encryption, use one
|
||||
of these: >
|
||||
:setlocal cm=zip " weak method, backwards compatible
|
||||
:setlocal cm=blowfish " method with flaws
|
||||
:setlocal cm=blowfish2 " medium strong method
|
||||
:setlocal cm=zip " weak method, backwards compatible
|
||||
:setlocal cm=blowfish " method with flaws, do not use
|
||||
:setlocal cm=blowfish2 " medium strong method
|
||||
:setlocal cm=xchacha20v2 " medium strong method using libsodium
|
||||
|
||||
Do this before writing the file. When reading an encrypted file it will be
|
||||
set automatically to the method used when that file was written. You can
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 9.0. Last change: 2022 Dec 03
|
||||
*eval.txt* For Vim version 9.0. Last change: 2023 Jun 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -163,9 +163,10 @@ Note that " " and "0" are also non-empty strings, thus considered to be TRUE.
|
||||
A List, Dictionary or Float is not a Number or String, thus evaluate to FALSE.
|
||||
|
||||
*E611* *E745* *E728* *E703* *E729* *E730* *E731* *E908* *E910*
|
||||
*E913* *E974* *E975* *E976*
|
||||
|List|, |Dictionary|, |Funcref|, |Job|, |Channel| and |Blob| types are not
|
||||
automatically converted.
|
||||
*E913* *E974* *E975* *E976* *E1319* *E1320* *E1321* *E1322*
|
||||
*E1323* *E1324*
|
||||
|List|, |Dictionary|, |Funcref|, |Job|, |Channel|, |Blob|, |Class| and
|
||||
|object| types are not automatically converted.
|
||||
|
||||
*E805* *E806* *E808*
|
||||
When mixing Number and Float the Number is converted to Float. Otherwise
|
||||
@@ -1371,7 +1372,7 @@ Note that the dot is also used for String concatenation. To avoid confusion
|
||||
always put spaces around the dot for String concatenation.
|
||||
|
||||
|
||||
expr10(expr1, ...) |Funcref| function call *E1085*
|
||||
expr10(expr1, ...) |Funcref| function call *E1085*
|
||||
|
||||
When expr10 is a |Funcref| type variable, invoke the function it refers to.
|
||||
|
||||
@@ -1579,6 +1580,33 @@ Examples: >
|
||||
echo $"The square root of {{9}} is {sqrt(9)}"
|
||||
< The square root of {9} is 3.0 ~
|
||||
|
||||
*string-offset-encoding*
|
||||
A string consists of multiple characters. How the characters are stored
|
||||
depends on 'encoding'. Most common is UTF-8, which uses one byte for ASCII
|
||||
characters, two bytes for other latin characters and more bytes for other
|
||||
characters.
|
||||
|
||||
A string offset can count characters or bytes. Other programs may use
|
||||
UTF-16 encoding (16-bit words) and an offset of UTF-16 words. Some functions
|
||||
use byte offsets, usually for UTF-8 encoding. Other functions use character
|
||||
offsets, in which case the encoding doesn't matter.
|
||||
|
||||
The different offsets for the string "a©😊" are below:
|
||||
|
||||
UTF-8 offsets:
|
||||
[0]: 61, [1]: C2, [2]: A9, [3]: F0, [4]: 9F, [5]: 98, [6]: 8A
|
||||
UTF-16 offsets:
|
||||
[0]: 0061, [1]: 00A9, [2]: D83D, [3]: DE0A
|
||||
UTF-32 (character) offsets:
|
||||
[0]: 00000061, [1]: 000000A9, [2]: 0001F60A
|
||||
|
||||
You can use the "g8" and "ga" commands on a character to see the
|
||||
decimal/hex/octal values.
|
||||
|
||||
The functions |byteidx()|, |utf16idx()| and |charidx()| can be used to convert
|
||||
between these indices. The functions |strlen()|, |strutf16len()| and
|
||||
|strcharlen()| return the number of bytes, UTF-16 code units and characters in
|
||||
a string respectively.
|
||||
|
||||
option *expr-option* *E112* *E113*
|
||||
------
|
||||
@@ -1653,7 +1681,7 @@ See below |functions|.
|
||||
|
||||
lambda expression *expr-lambda* *lambda*
|
||||
-----------------
|
||||
{args -> expr1} legacy lambda expression *E451*
|
||||
{args -> expr1} legacy lambda expression *E451*
|
||||
(args) => expr1 |Vim9| lambda expression
|
||||
|
||||
A lambda expression creates a new unnamed function which returns the result of
|
||||
@@ -1787,6 +1815,8 @@ b:changedtick The total number of changes to the current buffer. It is
|
||||
: call My_Update()
|
||||
:endif
|
||||
< You cannot change or delete the b:changedtick variable.
|
||||
If you need more information about the change see
|
||||
|listener_add()|.
|
||||
|
||||
*window-variable* *w:var* *w:*
|
||||
A variable name that is preceded with "w:" is local to the current window. It
|
||||
@@ -2394,6 +2424,25 @@ v:progpath Contains the command with which Vim was invoked, in a form
|
||||
".exe" is not added to v:progpath.
|
||||
Read-only.
|
||||
|
||||
*v:python3_version* *python3-version-variable*
|
||||
v:python3_version
|
||||
Version of Python 3 that Vim was built against. When
|
||||
Python is loaded dynamically (|python-dynamic|), this version
|
||||
should exactly match the Python library up to the minor
|
||||
version (e.g. 3.10.2 and 3.10.3 are compatible as the minor
|
||||
version is "10", whereas 3.9.4 and 3.10.3 are not compatible).
|
||||
When |python-stable-abi| is used, this will be the minimum Python
|
||||
version that you can use instead. (e.g. if v:python3_version
|
||||
indicates 3.9, you can use 3.9, 3.10, or anything above).
|
||||
|
||||
This number is encoded as a hex number following Python ABI
|
||||
versioning conventions. Do the following to have a
|
||||
human-readable full version in hex: >
|
||||
echo printf("%08X", v:python3_version)
|
||||
< You can obtain only the minor version by doing: >
|
||||
echo and(v:python3_version>>16,0xff)
|
||||
< Read-only.
|
||||
|
||||
*v:register* *register-variable*
|
||||
v:register The name of the register in effect for the current normal mode
|
||||
command (regardless of whether that command actually used a
|
||||
@@ -2503,6 +2552,10 @@ v:t_number Value of |Number| type. Read-only. See: |type()|
|
||||
v:t_string Value of |String| type. Read-only. See: |type()|
|
||||
*v:t_blob* *t_blob-variable*
|
||||
v:t_blob Value of |Blob| type. Read-only. See: |type()|
|
||||
*v:t_class* *t_class-variable*
|
||||
v:t_class Value of |class| type. Read-only. See: |type()|
|
||||
*v:t_object* *t_object-variable*
|
||||
v:t_object Value of |object| type. Read-only. See: |type()|
|
||||
|
||||
*v:termresponse* *termresponse-variable*
|
||||
v:termresponse The escape sequence returned by the terminal for the |t_RV|
|
||||
@@ -2969,6 +3022,8 @@ text...
|
||||
deleted when the script ends). Function-local
|
||||
variables are automatically deleted when the function
|
||||
ends.
|
||||
In |Vim9| script variables declared in a function or
|
||||
script cannot be removed.
|
||||
|
||||
:unl[et] ${env-name} ... *:unlet-environment* *:unlet-$*
|
||||
Remove environment variable {env-name}.
|
||||
@@ -3055,7 +3110,7 @@ text...
|
||||
let mylist = [1, 2, 3]
|
||||
lockvar 0 mylist
|
||||
let mylist[0] = 77 " OK
|
||||
call add(mylist, 4] " OK
|
||||
call add(mylist, 4) " OK
|
||||
let mylist = [7, 8, 9] " Error!
|
||||
< *E743*
|
||||
For unlimited depth use [!] and omit [depth].
|
||||
@@ -3073,6 +3128,10 @@ text...
|
||||
< You may want to make a copy of a list to avoid this.
|
||||
See |deepcopy()|.
|
||||
|
||||
*E1391* *E1392*
|
||||
Locking and unlocking object and class variables is
|
||||
currently NOT supported.
|
||||
|
||||
|
||||
:unlo[ckvar][!] [depth] {name} ... *:unlockvar* *:unlo* *E1246*
|
||||
Unlock the internal variable {name}. Does the
|
||||
@@ -4574,31 +4633,21 @@ The input is in the variable "line", the results in the variables "file",
|
||||
|
||||
getting the scriptnames in a Dictionary ~
|
||||
*scriptnames-dictionary*
|
||||
The |:scriptnames| command can be used to get a list of all script files that
|
||||
have been sourced. There is no equivalent function or variable for this
|
||||
(because it's rarely needed). In case you need to manipulate the list this
|
||||
code can be used: >
|
||||
" Get the output of ":scriptnames" in the scriptnames_output variable.
|
||||
let scriptnames_output = ''
|
||||
redir => scriptnames_output
|
||||
silent scriptnames
|
||||
redir END
|
||||
The `:scriptnames` command can be used to get a list of all script files that
|
||||
have been sourced. There is also the `getscriptinfo()` function, but the
|
||||
information returned is not exactly the same. In case you need to manipulate
|
||||
the list, this code can be used as a base: >
|
||||
|
||||
" Split the output into lines and parse each line. Add an entry to the
|
||||
" "scripts" dictionary.
|
||||
let scripts = {}
|
||||
for line in split(scriptnames_output, "\n")
|
||||
" Only do non-blank lines.
|
||||
if line =~ '\S'
|
||||
" Get the first number in the line.
|
||||
let nr = matchstr(line, '\d\+')
|
||||
" Get the file name, remove the script number " 123: ".
|
||||
let name = substitute(line, '.\+:\s*', '', '')
|
||||
" Add an item to the Dictionary
|
||||
let scripts[nr] = name
|
||||
endif
|
||||
endfor
|
||||
unlet scriptnames_output
|
||||
# Create or update scripts dictionary, indexed by SNR, and return it.
|
||||
def Scripts(scripts: dict<string> = {}): dict<string>
|
||||
for info in getscriptinfo()
|
||||
if scripts->has_key(info.sid)
|
||||
continue
|
||||
endif
|
||||
scripts[info.sid] = info.name
|
||||
endfor
|
||||
return scripts
|
||||
enddef
|
||||
|
||||
==============================================================================
|
||||
10. Vim script versions *vimscript-version* *vimscript-versions*
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
.TH EVIM 1 "16 febbraio 2002 "
|
||||
.SH NOME
|
||||
evim \- Vim "facile", Vim impostato in modo da poter essere usato
|
||||
facilmente per modificare file, anche da chi non abbia familiarit<69>
|
||||
con i comandi.
|
||||
evim \- Vim "facile", impostato in modo da poter essere usato come editore non-modale
|
||||
.SH SINTASSI
|
||||
.br
|
||||
.B evim
|
||||
@@ -13,42 +11,39 @@ con i comandi.
|
||||
.B evim
|
||||
Inizia
|
||||
.B Vim
|
||||
e imposta le opzioni per farlo comportare come un editore "modeless".
|
||||
State sempre usando Vim, ma come un editore "posizionati-e-clicca".
|
||||
Simile all'uso di Notepad in MS-Windows.
|
||||
.B evim
|
||||
richiede la presenza della GUI, per avere a disposizione men<65> e barra
|
||||
strumenti.
|
||||
e imposta le opzioni per farlo comportare come un editore non-modale.
|
||||
Si tratta sempre di Vim, ma usato nello stile "posizionati-e-clicca".
|
||||
Rammenta molto l'utilizzo di Notepad in MS-Windows.
|
||||
.B eVim
|
||||
necessita della disponibilit<EFBFBD> della GUI, per utilizzare men<65> e barra strumenti.
|
||||
.PP
|
||||
Da usarsi soltanto se non si <20> in grado di lavorare con Vim nella
|
||||
maniera usuale.
|
||||
La modifica file sar<61> molto meno efficiente.
|
||||
Va a usato soltanto se non si <20> in grado di lavorare con Vim nella maniera usuale.
|
||||
L'edit dei file sar<61> molto meno efficiente.
|
||||
.PP
|
||||
.B eview
|
||||
come sopra, ma parte in modalit<69> "Sola Lettura". Funziona come evim \-R.
|
||||
come sopra, ma si parte in modalit<69> "Sola Lettura". Funziona come evim \-R.
|
||||
.PP
|
||||
Vedere vim(1) per dettagli riguardo a Vim, opzioni, etc.
|
||||
.PP
|
||||
L'opzione 'insertmode' <20> impostata per poter immettere del testo direttamente.
|
||||
L'opzione 'insertmode' <20> impostata in modo da consentire l'immissione diretta di testo fin dall'inizio.
|
||||
.br
|
||||
Sono definite delle mappature che consentono di usare COPIA e INCOLLA con i
|
||||
familiari tasti usati sotto MS-Windows.
|
||||
Sono definite delle mappature che consentono di usare COPIA e INCOLLA con i familiari tasti usati sotto MS-Windows.
|
||||
CTRL-X taglia testo, CTRL-C copia testo e CTRL-V incolla testo.
|
||||
Usate CTRL-Q per ottenere quello che si otterrebbe con CTRL-V in Vim nativo.
|
||||
Occorre usare CTRL-Q per ottenere il comportamenti di CTRL-V in Vim nativo.
|
||||
.SH OPZIONI
|
||||
Vedere vim(1).
|
||||
.SH FILE
|
||||
.TP 15
|
||||
/usr/local/lib/vim/evim.vim
|
||||
Lo script caricato per inizializzare eVim.
|
||||
.SH NAC [NOTO ANCHE COME]
|
||||
Noto Anche Come "Vim per semplici".
|
||||
Quando usate evim si suppone che prendiate un fazzoletto,
|
||||
facciate un nodo ad ogni angolo e ve lo mettiate in testa.
|
||||
.SH AKA
|
||||
[Also Known As] noto anche come "Vim per semplici".
|
||||
Quando is usa evim si suppone che si prenda un fazzoletto,
|
||||
si faccia un nodo ad ogni angolo e lo si metta in testa.
|
||||
.SH VEDERE ANCHE
|
||||
vim(1)
|
||||
.SH AUTORE
|
||||
Buona parte di
|
||||
.B Vim
|
||||
<EFBFBD> stato scritto da Bram Moolenaar, con molto aiuto da altri.
|
||||
<EFBFBD> stato scritto da Bram Moolenaar, con molto aiuto da parte di altri.
|
||||
Vedere il men<65> "Aiuto/Crediti".
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
.TH EVIM 1 "16 febbraio 2002 "
|
||||
.SH NOME
|
||||
evim \- Vim "facile", Vim impostato in modo da poter essere usato
|
||||
facilmente per modificare file, anche da chi non abbia familiarità
|
||||
con i comandi.
|
||||
evim \- Vim "facile", impostato in modo da poter essere usato come editore non-modale
|
||||
.SH SINTASSI
|
||||
.br
|
||||
.B evim
|
||||
@@ -13,42 +11,39 @@ con i comandi.
|
||||
.B evim
|
||||
Inizia
|
||||
.B Vim
|
||||
e imposta le opzioni per farlo comportare come un editore "modeless".
|
||||
State sempre usando Vim, ma come un editore "posizionati-e-clicca".
|
||||
Simile all'uso di Notepad in MS-Windows.
|
||||
.B evim
|
||||
richiede la presenza della GUI, per avere a disposizione menù e barra
|
||||
strumenti.
|
||||
e imposta le opzioni per farlo comportare come un editore non-modale.
|
||||
Si tratta sempre di Vim, ma usato nello stile "posizionati-e-clicca".
|
||||
Rammenta molto l'utilizzo di Notepad in MS-Windows.
|
||||
.B eVim
|
||||
necessita della disponibilità della GUI, per utilizzare menù e barra strumenti.
|
||||
.PP
|
||||
Da usarsi soltanto se non si è in grado di lavorare con Vim nella
|
||||
maniera usuale.
|
||||
La modifica file sarà molto meno efficiente.
|
||||
Va a usato soltanto se non si è in grado di lavorare con Vim nella maniera usuale.
|
||||
L'edit dei file sarà molto meno efficiente.
|
||||
.PP
|
||||
.B eview
|
||||
come sopra, ma parte in modalità "Sola Lettura". Funziona come evim \-R.
|
||||
come sopra, ma si parte in modalità "Sola Lettura". Funziona come evim \-R.
|
||||
.PP
|
||||
Vedere vim(1) per dettagli riguardo a Vim, opzioni, etc.
|
||||
.PP
|
||||
L'opzione 'insertmode' è impostata per poter immettere del testo direttamente.
|
||||
L'opzione 'insertmode' è impostata in modo da consentire l'immissione diretta di testo fin dall'inizio.
|
||||
.br
|
||||
Sono definite delle mappature che consentono di usare COPIA e INCOLLA con i
|
||||
familiari tasti usati sotto MS-Windows.
|
||||
Sono definite delle mappature che consentono di usare COPIA e INCOLLA con i familiari tasti usati sotto MS-Windows.
|
||||
CTRL-X taglia testo, CTRL-C copia testo e CTRL-V incolla testo.
|
||||
Usate CTRL-Q per ottenere quello che si otterrebbe con CTRL-V in Vim nativo.
|
||||
Occorre usare CTRL-Q per ottenere il comportamenti di CTRL-V in Vim nativo.
|
||||
.SH OPZIONI
|
||||
Vedere vim(1).
|
||||
.SH FILE
|
||||
.TP 15
|
||||
/usr/local/lib/vim/evim.vim
|
||||
Lo script caricato per inizializzare eVim.
|
||||
.SH NAC [NOTO ANCHE COME]
|
||||
Noto Anche Come "Vim per semplici".
|
||||
Quando usate evim si suppone che prendiate un fazzoletto,
|
||||
facciate un nodo ad ogni angolo e ve lo mettiate in testa.
|
||||
.SH AKA
|
||||
[Also Known As] noto anche come "Vim per semplici".
|
||||
Quando is usa evim si suppone che si prenda un fazzoletto,
|
||||
si faccia un nodo ad ogni angolo e lo si metta in testa.
|
||||
.SH VEDERE ANCHE
|
||||
vim(1)
|
||||
.SH AUTORE
|
||||
Buona parte di
|
||||
.B Vim
|
||||
è stato scritto da Bram Moolenaar, con molto aiuto da altri.
|
||||
è stato scritto da Bram Moolenaar, con molto aiuto da parte di altri.
|
||||
Vedere il menù "Aiuto/Crediti".
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 9.0. Last change: 2022 Apr 09
|
||||
*filetype.txt* For Vim version 9.0. Last change: 2023 Sep 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -138,33 +138,38 @@ what kind of file it is. This doesn't always work. A number of global
|
||||
variables can be used to overrule the filetype used for certain extensions:
|
||||
|
||||
file name variable ~
|
||||
*.asa g:filetype_asa |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||
*.asm g:asmsyntax |ft-asm-syntax|
|
||||
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
|
||||
*.bas g:filetype_bas |ft-basic-syntax|
|
||||
*.asa g:filetype_asa |ft-aspperl-syntax|
|
||||
|ft-aspvbs-syntax|
|
||||
*.asm g:asmsyntax |ft-asm-syntax|
|
||||
*.asp g:filetype_asp |ft-aspperl-syntax|
|
||||
|ft-aspvbs-syntax|
|
||||
*.bas g:filetype_bas |ft-basic-syntax|
|
||||
*.cfg g:filetype_cfg
|
||||
*.cls g:filetype_cls
|
||||
*.csh g:filetype_csh |ft-csh-syntax|
|
||||
*.csh g:filetype_csh |ft-csh-syntax|
|
||||
*.dat g:filetype_dat
|
||||
*.frm g:filetype_frm |ft-form-syntax|
|
||||
*.fs g:filetype_fs |ft-forth-syntax|
|
||||
*.i g:filetype_i |ft-progress-syntax|
|
||||
*.f g:filetype_f |ft-forth-syntax|
|
||||
*.frm g:filetype_frm |ft-form-syntax|
|
||||
*.fs g:filetype_fs |ft-forth-syntax|
|
||||
*.h g:c_syntax_for_h |ft-c-syntax|
|
||||
*.i g:filetype_i |ft-progress-syntax|
|
||||
*.inc g:filetype_inc
|
||||
*.lsl g:filetype_lsl
|
||||
*.m g:filetype_m |ft-mathematica-syntax|
|
||||
*.m g:filetype_m |ft-mathematica-syntax|
|
||||
*.mod g:filetype_mod
|
||||
*.p g:filetype_p |ft-pascal-syntax|
|
||||
*.p g:filetype_p |ft-pascal-syntax|
|
||||
*.pl g:filetype_pl
|
||||
*.pp g:filetype_pp |ft-pascal-syntax|
|
||||
*.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|
|
||||
*.sql g:filetype_sql |ft-sql-syntax|
|
||||
*.src g:filetype_src
|
||||
*.sys g:filetype_sys
|
||||
*.sh g:bash_is_sh |ft-sh-syntax|
|
||||
*.tex g:tex_flavor |ft-tex-plugin|
|
||||
*.w g:filetype_w |ft-cweb-syntax|
|
||||
*.sh g:bash_is_sh |ft-sh-syntax|
|
||||
*.tex g:tex_flavor |ft-tex-plugin|
|
||||
*.typ g:filetype_typ
|
||||
*.w g:filetype_w |ft-cweb-syntax|
|
||||
|
||||
For a few filetypes the global variable is used only when the filetype could
|
||||
not be detected:
|
||||
@@ -393,7 +398,7 @@ ways to change this:
|
||||
You must create a new filetype plugin in a directory early in
|
||||
'runtimepath'. For Unix, for example you could use this file: >
|
||||
vim ~/.vim/ftplugin/fortran.vim
|
||||
< You can set those settings and mappings that you would like to add. Note
|
||||
< You can set those settings and mappings that you would like to add. Note
|
||||
that the global plugin will be loaded after this, it may overrule the
|
||||
settings that you do here. If this is the case, you need to use one of the
|
||||
following two methods.
|
||||
@@ -402,7 +407,7 @@ ways to change this:
|
||||
You must put the copy in a directory early in 'runtimepath'. For Unix, for
|
||||
example, you could do this: >
|
||||
cp $VIMRUNTIME/ftplugin/fortran.vim ~/.vim/ftplugin/fortran.vim
|
||||
< Then you can edit the copied file to your liking. Since the b:did_ftplugin
|
||||
< Then you can edit the copied file to your liking. Since the b:did_ftplugin
|
||||
variable will be set, the global plugin will not be loaded.
|
||||
A disadvantage of this method is that when the distributed plugin gets
|
||||
improved, you will have to copy and modify it again.
|
||||
@@ -411,17 +416,30 @@ ways to change this:
|
||||
You must create a new filetype plugin in a directory from the end of
|
||||
'runtimepath'. For Unix, for example, you could use this file: >
|
||||
vim ~/.vim/after/ftplugin/fortran.vim
|
||||
< In this file you can change just those settings that you want to change.
|
||||
< In this file you can change just those settings that you want to change.
|
||||
|
||||
==============================================================================
|
||||
3. Docs for the default filetype plugins. *ftplugin-docs*
|
||||
|
||||
|
||||
*plugin_exec* *g:plugin_exec*
|
||||
Enable executing of external commands. This was done historically for e.g.
|
||||
the perl filetype plugin (and a few others) to set the search path.
|
||||
Disabled by default for security reasons: >
|
||||
:let g:plugin_exec = 1
|
||||
It is also possible to enable this only for certain filetypes: >
|
||||
:let g:<filetype>_exec = 1
|
||||
So to enable this only for ruby, set the following variable: >
|
||||
:let g:ruby_exec = 1
|
||||
|
||||
If both, the global `plugin_exec` and the `<filetype>_exec` specific variable
|
||||
are set, the filetype specific variable should have precedent.
|
||||
|
||||
AWK *ft-awk-plugin*
|
||||
|
||||
Support for features specific to GNU Awk, like @include, can be enabled by
|
||||
setting: >
|
||||
let g:awk_is_gawk = 1
|
||||
:let g:awk_is_gawk = 1
|
||||
|
||||
|
||||
CHANGELOG *ft-changelog-plugin*
|
||||
@@ -659,8 +677,8 @@ page in a Vim window: >
|
||||
|
||||
MANPAGER *manpager.vim*
|
||||
|
||||
The |:Man| command allows you to turn Vim into a manpager (that syntax highlights
|
||||
manpages and follows linked manpages on hitting CTRL-]).
|
||||
The |:Man| command allows you to turn Vim into a manpager (that syntax
|
||||
highlights manpages and follows linked manpages on hitting CTRL-]).
|
||||
|
||||
For bash,zsh,ksh or dash, add to the config file (.bashrc,.zshrc, ...)
|
||||
|
||||
@@ -679,7 +697,10 @@ MARKDOWN *ft-markdown-plugin*
|
||||
|
||||
To enable folding use this: >
|
||||
let g:markdown_folding = 1
|
||||
<
|
||||
|
||||
'expandtab' will be set by default. If you do not want that use this: >
|
||||
let g:markdown_recommended_style = 0
|
||||
|
||||
|
||||
PDF *ft-pdf-plugin*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*fold.txt* For Vim version 9.0. Last change: 2022 Nov 26
|
||||
*fold.txt* For Vim version 9.0. Last change: 2023 Mar 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -202,7 +202,7 @@ non-matching marker pairs. Example: >
|
||||
|
||||
/* funcB() {{{2 */
|
||||
void funcB() {}
|
||||
|
||||
< *{{{* *}}}*
|
||||
A fold starts at a "{{{" marker. The following number specifies the fold
|
||||
level. What happens depends on the difference between the current fold level
|
||||
and the level given by the marker:
|
||||
@@ -353,7 +353,8 @@ zC Close all folds under the cursor recursively. Folds that
|
||||
'foldenable' will be set.
|
||||
|
||||
*za*
|
||||
za When on a closed fold: open it. When folds are nested, you
|
||||
za Summary: Toggle the fold under the cursor.
|
||||
When on a closed fold: open it. When folds are nested, you
|
||||
may have to use "za" several times. When a count is given,
|
||||
that many closed folds are opened.
|
||||
When on an open fold: close it and set 'foldenable'. This
|
||||
|
||||
@@ -48,7 +48,7 @@ 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]
|
||||
return ['mtxrun', '--script', 'context', '--nonstopmode', path]
|
||||
enddef
|
||||
|
||||
context.ConTeXtTypeset("%", v:none, ConTeXtCustomCommand)
|
||||
|
||||
@@ -84,7 +84,7 @@ METAFONT buffers, and it is set to 0 by default in MetaPost buffers.
|
||||
Define additional keywords that end indented blocks. For instance, if you
|
||||
define:
|
||||
>
|
||||
g:mp_end_tag = ['\<endfoo\>']
|
||||
g:mp_close_tag = ['\<endfoo\>']
|
||||
<
|
||||
any line starting with `endfoo` will be de-indented compared to its previous
|
||||
line.
|
||||
|
||||
@@ -1,70 +1,72 @@
|
||||
*ft_rust.txt* For Vim version 9.0. Last change: 2022 Oct 17
|
||||
|
||||
This is documentation for the Rust filetype plugin.
|
||||
*ft_rust.txt* Filetype plugin for Rust
|
||||
|
||||
==============================================================================
|
||||
CONTENTS *rust*
|
||||
CONTENTS *rust*
|
||||
|
||||
1. Introduction |rust-intro|
|
||||
2. Settings |rust-settings|
|
||||
3. Commands |rust-commands|
|
||||
4. Mappings |rust-mappings|
|
||||
1. Introduction |rust-intro|
|
||||
2. Settings |rust-settings|
|
||||
3. Commands |rust-commands|
|
||||
4. Mappings |rust-mappings|
|
||||
|
||||
==============================================================================
|
||||
INTRODUCTION *rust-intro*
|
||||
INTRODUCTION *rust-intro*
|
||||
|
||||
This plugin provides syntax and supporting functionality for the Rust
|
||||
filetype.
|
||||
filetype. It requires Vim 8 or higher for full functionality. Some commands
|
||||
will not work on earlier versions.
|
||||
|
||||
==============================================================================
|
||||
SETTINGS *rust-settings*
|
||||
SETTINGS *rust-settings*
|
||||
|
||||
This plugin has a few variables you can define in your vimrc that change the
|
||||
behavior of the plugin.
|
||||
|
||||
*g:rustc_path*
|
||||
Some variables can be set buffer local (`:b` prefix), and the buffer local
|
||||
will take precedence over the global `g:` counterpart.
|
||||
|
||||
*g:rustc_path*
|
||||
g:rustc_path~
|
||||
Set this option to the path to rustc for use in the |:RustRun| and
|
||||
|:RustExpand| commands. If unset, "rustc" will be located in $PATH: >
|
||||
let g:rustc_path = $HOME .. "/bin/rustc"
|
||||
let g:rustc_path = $HOME."/bin/rustc"
|
||||
<
|
||||
|
||||
*g:rustc_makeprg_no_percent*
|
||||
*g:rustc_makeprg_no_percent*
|
||||
g:rustc_makeprg_no_percent~
|
||||
Set this option to 1 to have 'makeprg' default to "rustc" instead of
|
||||
"rustc %": >
|
||||
let g:rustc_makeprg_no_percent = 1
|
||||
<
|
||||
|
||||
*g:rust_conceal*
|
||||
*g:rust_conceal*
|
||||
g:rust_conceal~
|
||||
Set this option to turn on the basic |conceal| support: >
|
||||
let g:rust_conceal = 1
|
||||
<
|
||||
|
||||
*g:rust_conceal_mod_path*
|
||||
*g:rust_conceal_mod_path*
|
||||
g:rust_conceal_mod_path~
|
||||
Set this option to turn on |conceal| for the path connecting token
|
||||
"::": >
|
||||
let g:rust_conceal_mod_path = 1
|
||||
<
|
||||
|
||||
*g:rust_conceal_pub*
|
||||
*g:rust_conceal_pub*
|
||||
g:rust_conceal_pub~
|
||||
Set this option to turn on |conceal| for the "pub" token: >
|
||||
let g:rust_conceal_pub = 1
|
||||
<
|
||||
|
||||
*g:rust_recommended_style*
|
||||
*g:rust_recommended_style*
|
||||
g:rust_recommended_style~
|
||||
Set this option to enable vim indentation and textwidth settings to
|
||||
conform to style conventions of the rust standard library (i.e. use 4
|
||||
spaces for indents and sets 'textwidth' to 99). This option is enabled
|
||||
Set this option to enable vim indentation and textwidth settings to
|
||||
conform to style conventions of the rust standard library (i.e. use 4
|
||||
spaces for indents and sets 'textwidth' to 99). This option is enabled
|
||||
by default. To disable it: >
|
||||
let g:rust_recommended_style = 0
|
||||
<
|
||||
|
||||
*g:rust_fold*
|
||||
*g:rust_fold*
|
||||
g:rust_fold~
|
||||
Set this option to turn on |folding|: >
|
||||
let g:rust_fold = 1
|
||||
@@ -76,63 +78,303 @@ g:rust_fold~
|
||||
2 Braced blocks are folded. 'foldlevel' is left at the
|
||||
global value (all folds are closed by default).
|
||||
|
||||
*g:rust_bang_comment_leader*
|
||||
*g:rust_bang_comment_leader*
|
||||
g:rust_bang_comment_leader~
|
||||
Set this option to 1 to preserve the leader on multi-line doc comments
|
||||
using the /*! syntax: >
|
||||
let g:rust_bang_comment_leader = 1
|
||||
<
|
||||
|
||||
*g:ftplugin_rust_source_path*
|
||||
*g:rust_use_custom_ctags_defs*
|
||||
g:rust_use_custom_ctags_defs~
|
||||
Set this option to 1 if you have customized ctags definitions for Rust
|
||||
and do not wish for those included with rust.vim to be used: >
|
||||
let g:rust_use_custom_ctags_defs = 1
|
||||
<
|
||||
|
||||
NOTE: rust.vim's built-in definitions are only used for the Tagbar Vim
|
||||
plugin, if you have it installed, AND if Universal Ctags is not
|
||||
detected. This is because Universal Ctags already has built-in
|
||||
support for Rust when used with Tagbar.
|
||||
|
||||
Also, note that when using ctags other than Universal Ctags, it is not
|
||||
automatically used when generating |tags| files that Vim can use to
|
||||
navigate to definitions across different source files. Feel free to
|
||||
copy `rust.vim/ctags/rust.ctags` into your own `~/.ctags` if you wish
|
||||
to generate |tags| files.
|
||||
|
||||
|
||||
*g:ftplugin_rust_source_path*
|
||||
g:ftplugin_rust_source_path~
|
||||
Set this option to a path that should be prepended to 'path' for Rust
|
||||
source files: >
|
||||
let g:ftplugin_rust_source_path = $HOME .. '/dev/rust'
|
||||
let g:ftplugin_rust_source_path = $HOME.'/dev/rust'
|
||||
<
|
||||
|
||||
*g:rustfmt_command*
|
||||
*g:rustfmt_command*
|
||||
g:rustfmt_command~
|
||||
Set this option to the name of the 'rustfmt' executable in your $PATH. If
|
||||
not specified it defaults to 'rustfmt' : >
|
||||
let g:rustfmt_command = 'rustfmt'
|
||||
<
|
||||
*g:rustfmt_autosave*
|
||||
*g:rustfmt_autosave*
|
||||
g:rustfmt_autosave~
|
||||
Set this option to 1 to run |:RustFmt| automatically when saving a
|
||||
buffer. If not specified it defaults to 0 : >
|
||||
let g:rustfmt_autosave = 0
|
||||
<
|
||||
*g:rustfmt_fail_silently*
|
||||
There is also a buffer-local b:rustfmt_autosave that can be set for
|
||||
the same purpose, and can override the global setting.
|
||||
|
||||
*g:rustfmt_autosave_if_config_present*
|
||||
g:rustfmt_autosave_if_config_present~
|
||||
Set this option to 1 to have *b:rustfmt_autosave* be set automatically
|
||||
if a `rustfmt.toml` file is present in any parent directly leading to
|
||||
the file being edited. If not set, default to 0: >
|
||||
let g:rustfmt_autosave_if_config_present = 0
|
||||
<
|
||||
This is useful to have `rustfmt` only execute on save, on projects
|
||||
that have `rustfmt.toml` configuration.
|
||||
|
||||
There is also a buffer-local b:rustfmt_autosave_if_config_present
|
||||
that can be set for the same purpose, which can overrides the global
|
||||
setting.
|
||||
*g:rustfmt_fail_silently*
|
||||
g:rustfmt_fail_silently~
|
||||
Set this option to 1 to prevent 'rustfmt' from populating the
|
||||
|location-list| with errors. If not specified it defaults to 0: >
|
||||
let g:rustfmt_fail_silently = 0
|
||||
<
|
||||
*g:rustfmt_options*
|
||||
*g:rustfmt_options*
|
||||
g:rustfmt_options~
|
||||
Set this option to a string of options to pass to 'rustfmt'. The
|
||||
write-mode is already set to 'overwrite'. If not specified it
|
||||
defaults to '' : >
|
||||
let g:rustfmt_options = ''
|
||||
<
|
||||
*g:rustfmt_emit_files*
|
||||
g:rustfmt_emit_files~
|
||||
If not specified rust.vim tries to detect the right parameter to
|
||||
pass to rustfmt based on its reported version. Otherwise, it
|
||||
determines whether to run rustfmt with '--emit=files' (when 1 is
|
||||
provided) instead of '--write-mode=overwrite'. >
|
||||
let g:rustfmt_emit_files = 0
|
||||
|
||||
*g:rust_playpen_url*
|
||||
|
||||
*g:rust_playpen_url*
|
||||
g:rust_playpen_url~
|
||||
Set this option to override the URL for the playpen to use: >
|
||||
Set this option to override the url for the playpen to use: >
|
||||
let g:rust_playpen_url = 'https://play.rust-lang.org/'
|
||||
<
|
||||
|
||||
*g:rust_shortener_url*
|
||||
*g:rust_shortener_url*
|
||||
g:rust_shortener_url~
|
||||
Set this option to override the URL for the URL shortener: >
|
||||
Set this option to override the url for the url shortener: >
|
||||
let g:rust_shortener_url = 'https://is.gd/'
|
||||
<
|
||||
|
||||
*g:rust_clip_command*
|
||||
g:rust_clip_command~
|
||||
Set this option to the command used in your OS to copy the Rust Play
|
||||
url to the clipboard: >
|
||||
let g:rust_clip_command = 'xclip -selection clipboard'
|
||||
<
|
||||
|
||||
*g:cargo_makeprg_params*
|
||||
g:cargo_makeprg_params~
|
||||
Set this option to the string of parameters to pass to cargo. If not
|
||||
specified it defaults to '$*' : >
|
||||
let g:cargo_makeprg_params = 'build'
|
||||
<
|
||||
|
||||
*g:cargo_shell_command_runner*
|
||||
g:cargo_shell_command_runner~
|
||||
Set this option to change how to run shell commands for cargo commands
|
||||
|:Cargo|, |:Cbuild|, |:Crun|, ...
|
||||
By default, |:terminal| is used to run shell command in terminal window
|
||||
asynchronously. But if you prefer |:!| for running the commands, it can
|
||||
be specified: >
|
||||
let g:cargo_shell_command_runner = '!'
|
||||
<
|
||||
|
||||
|
||||
Integration with Syntastic *rust-syntastic*
|
||||
--------------------------
|
||||
|
||||
This plugin automatically integrates with the Syntastic checker. There are two
|
||||
checkers provided: 'rustc', and 'cargo'. The latter invokes 'Cargo' in order to
|
||||
build code, and the former delivers a single edited '.rs' file as a compilation
|
||||
target directly to the Rust compiler, `rustc`.
|
||||
|
||||
Because Cargo is almost exclusively being used for building Rust code these
|
||||
days, 'cargo' is the default checker. >
|
||||
|
||||
let g:syntastic_rust_checkers = ['cargo']
|
||||
<
|
||||
If you would like to change it, you can set `g:syntastic_rust_checkers` to a
|
||||
different value.
|
||||
*g:rust_cargo_avoid_whole_workspace*
|
||||
*b:rust_cargo_avoid_whole_workspace*
|
||||
g:rust_cargo_avoid_whole_workspace~
|
||||
When editing a crate that is part of a Cargo workspace, and this
|
||||
option is set to 1 (the default), then 'cargo' will be executed
|
||||
directly in that crate directory instead of in the workspace
|
||||
directory. Setting 0 prevents this behavior - however be aware that if
|
||||
you are working in large workspace, Cargo commands may take more time,
|
||||
plus the Syntastic error list may include all the crates in the
|
||||
workspace. >
|
||||
let g:rust_cargo_avoid_whole_workspace = 0
|
||||
<
|
||||
*g:rust_cargo_check_all_targets*
|
||||
*b:rust_cargo_check_all_targets*
|
||||
g:rust_cargo_check_all_targets~
|
||||
When set to 1, the `--all-targets` option will be passed to cargo when
|
||||
Syntastic executes it, allowing the linting of all targets under the
|
||||
package.
|
||||
The default is 0.
|
||||
|
||||
*g:rust_cargo_check_all_features*
|
||||
*b:rust_cargo_check_all_features*
|
||||
g:rust_cargo_check_all_features~
|
||||
When set to 1, the `--all-features` option will be passed to cargo when
|
||||
Syntastic executes it, allowing the linting of all features of the
|
||||
package.
|
||||
The default is 0.
|
||||
|
||||
*g:rust_cargo_check_examples*
|
||||
*b:rust_cargo_check_examples*
|
||||
g:rust_cargo_check_examples~
|
||||
When set to 1, the `--examples` option will be passed to cargo when
|
||||
Syntastic executes it, to prevent the exclusion of examples from
|
||||
linting. The examples are normally under the `examples/` directory of
|
||||
the crate.
|
||||
The default is 0.
|
||||
|
||||
*g:rust_cargo_check_tests*
|
||||
*b:rust_cargo_check_tests*
|
||||
g:rust_cargo_check_tests~
|
||||
When set to 1, the `--tests` option will be passed to cargo when
|
||||
Syntastic executes it, to prevent the exclusion of tests from linting.
|
||||
The tests are normally under the `tests/` directory of the crate.
|
||||
The default is 0.
|
||||
|
||||
*g:rust_cargo_check_benches*
|
||||
*b:rust_cargo_check_benches*
|
||||
g:rust_cargo_check_benches~
|
||||
When set to 1, the `--benches` option will be passed to cargo when
|
||||
Syntastic executes it. The benches are normally under the `benches/`
|
||||
directory of the crate.
|
||||
The default is 0.
|
||||
|
||||
Integration with auto-pairs *rust-auto-pairs*
|
||||
---------------------------
|
||||
|
||||
This plugin automatically configures the auto-pairs plugin not to duplicate
|
||||
single quotes, which are used more often for lifetime annotations than for
|
||||
single character literals.
|
||||
|
||||
*g:rust_keep_autopairs_default*
|
||||
g:rust_keep_autopairs_default~
|
||||
|
||||
Don't override auto-pairs default for the Rust filetype. The default
|
||||
is 0.
|
||||
|
||||
==============================================================================
|
||||
COMMANDS *rust-commands*
|
||||
COMMANDS *rust-commands*
|
||||
|
||||
:RustRun [args] *:RustRun*
|
||||
Invoking Cargo
|
||||
--------------
|
||||
|
||||
This plug defines very simple shortcuts for invoking Cargo from with Vim.
|
||||
|
||||
:Cargo <args> *:Cargo*
|
||||
Runs 'cargo' with the provided arguments.
|
||||
|
||||
:Cbuild <args> *:Cbuild*
|
||||
Shortcut for 'cargo build`.
|
||||
|
||||
:Cclean <args> *:Cclean*
|
||||
Shortcut for 'cargo clean`.
|
||||
|
||||
:Cdoc <args> *:Cdoc*
|
||||
Shortcut for 'cargo doc`.
|
||||
|
||||
:Cinit <args> *:Cinit*
|
||||
Shortcut for 'cargo init`.
|
||||
|
||||
:Crun <args> *:Crun*
|
||||
Shortcut for 'cargo run`.
|
||||
|
||||
:Ctest <args> *:Ctest*
|
||||
Shortcut for 'cargo test`.
|
||||
|
||||
:Cupdate <args> *:Cupdate*
|
||||
Shortcut for 'cargo update`.
|
||||
|
||||
:Cbench <args> *:Cbench*
|
||||
Shortcut for 'cargo bench`.
|
||||
|
||||
:Csearch <args> *:Csearch*
|
||||
Shortcut for 'cargo search`.
|
||||
|
||||
:Cpublish <args> *:Cpublish*
|
||||
Shortcut for 'cargo publish`.
|
||||
|
||||
:Cinstall <args> *:Cinstall*
|
||||
Shortcut for 'cargo install`.
|
||||
|
||||
:Cruntarget <args> *:Cruntarget*
|
||||
Shortcut for 'cargo run --bin' or 'cargo run --example',
|
||||
depending on the currently open buffer.
|
||||
|
||||
Formatting
|
||||
----------
|
||||
|
||||
:RustFmt *:RustFmt*
|
||||
Runs |g:rustfmt_command| on the current buffer. If
|
||||
|g:rustfmt_options| is set then those will be passed to the
|
||||
executable.
|
||||
|
||||
If |g:rustfmt_fail_silently| is 0 (the default) then it
|
||||
will populate the |location-list| with the errors from
|
||||
|g:rustfmt_command|. If |g:rustfmt_fail_silently| is set to 1
|
||||
then it will not populate the |location-list|.
|
||||
|
||||
:RustFmtRange *:RustFmtRange*
|
||||
Runs |g:rustfmt_command| with selected range. See
|
||||
|:RustFmt| for any other information.
|
||||
|
||||
|
||||
Playpen integration
|
||||
-------------------
|
||||
|
||||
:RustPlay *:RustPlay*
|
||||
This command will only work if you have web-api.vim installed
|
||||
(available at https://github.com/mattn/webapi-vim). It sends the
|
||||
current selection, or if nothing is selected, the entirety of the
|
||||
current buffer to the Rust playpen, and emits a message with the
|
||||
shortened URL to the playpen.
|
||||
|
||||
|g:rust_playpen_url| is the base URL to the playpen, by default
|
||||
"https://play.rust-lang.org/".
|
||||
|
||||
|g:rust_shortener_url| is the base url for the shorterner, by
|
||||
default "https://is.gd/"
|
||||
|
||||
|g:rust_clip_command| is the command to run to copy the
|
||||
playpen url to the clipboard of your system.
|
||||
|
||||
|
||||
Evaluation of a single Rust file
|
||||
--------------------------------
|
||||
|
||||
NOTE: These commands are useful only when working with standalone Rust files,
|
||||
which is usually not the case for common Rust development. If you wish to
|
||||
building Rust crates from with Vim can should use Vim's make, Syntastic, or
|
||||
functionality from other plugins.
|
||||
|
||||
|
||||
:RustRun [args] *:RustRun*
|
||||
:RustRun! [rustc-args] [--] [args]
|
||||
Compiles and runs the current file. If it has unsaved changes,
|
||||
it will be saved first using |:update|. If the current file is
|
||||
@@ -150,7 +392,7 @@ COMMANDS *rust-commands*
|
||||
If |g:rustc_path| is defined, it is used as the path to rustc.
|
||||
Otherwise it is assumed rustc can be found in $PATH.
|
||||
|
||||
:RustExpand [args] *:RustExpand*
|
||||
:RustExpand [args] *:RustExpand*
|
||||
:RustExpand! [TYPE] [args]
|
||||
Expands the current file using --pretty and displays the
|
||||
results in a new split. If the current file has unsaved
|
||||
@@ -169,7 +411,7 @@ COMMANDS *rust-commands*
|
||||
If |g:rustc_path| is defined, it is used as the path to rustc.
|
||||
Otherwise it is assumed rustc can be found in $PATH.
|
||||
|
||||
:RustEmitIr [args] *:RustEmitIr*
|
||||
:RustEmitIr [args] *:RustEmitIr*
|
||||
Compiles the current file to LLVM IR and displays the results
|
||||
in a new split. If the current file has unsaved changes, it
|
||||
will be saved first using |:update|. If the current file is an
|
||||
@@ -180,7 +422,7 @@ COMMANDS *rust-commands*
|
||||
If |g:rustc_path| is defined, it is used as the path to rustc.
|
||||
Otherwise it is assumed rustc can be found in $PATH.
|
||||
|
||||
:RustEmitAsm [args] *:RustEmitAsm*
|
||||
:RustEmitAsm [args] *:RustEmitAsm*
|
||||
Compiles the current file to assembly and displays the results
|
||||
in a new split. If the current file has unsaved changes, it
|
||||
will be saved first using |:update|. If the current file is an
|
||||
@@ -191,49 +433,54 @@ COMMANDS *rust-commands*
|
||||
If |g:rustc_path| is defined, it is used as the path to rustc.
|
||||
Otherwise it is assumed rustc can be found in $PATH.
|
||||
|
||||
:RustPlay *:RustPlay*
|
||||
This command will only work if you have web-api.vim installed
|
||||
(available at https://github.com/mattn/webapi-vim). It sends the
|
||||
current selection, or if nothing is selected, the entirety of the
|
||||
current buffer to the Rust playpen, and emits a message with the
|
||||
shortened URL to the playpen.
|
||||
|
||||
|g:rust_playpen_url| is the base URL to the playpen, by default
|
||||
"https://play.rust-lang.org/".
|
||||
Running test(s)
|
||||
---------------
|
||||
|
||||
|g:rust_shortener_url| is the base URL for the shortener, by
|
||||
default "https://is.gd/"
|
||||
:[N]RustTest[!] [options] *:RustTest*
|
||||
Runs a test under the cursor when the current buffer is in a
|
||||
cargo project with "cargo test" command. If the command did
|
||||
not find any test function under the cursor, it stops with an
|
||||
error message.
|
||||
|
||||
:RustFmt *:RustFmt*
|
||||
Runs |g:rustfmt_command| on the current buffer. If
|
||||
|g:rustfmt_options| is set then those will be passed to the
|
||||
executable.
|
||||
When N is given, adjust the size of the new window to N lines
|
||||
or columns.
|
||||
|
||||
If |g:rustfmt_fail_silently| is 0 (the default) then it
|
||||
will populate the |location-list| with the errors from
|
||||
|g:rustfmt_command|. If |g:rustfmt_fail_silently| is set to 1
|
||||
then it will not populate the |location-list|.
|
||||
When ! is given, runs all tests regardless of current cursor
|
||||
position.
|
||||
|
||||
:RustFmtRange *:RustFmtRange*
|
||||
Runs |g:rustfmt_command| with selected range. See
|
||||
|:RustFmt| for any other information.
|
||||
When [options] is given, it is passed to "cargo" command
|
||||
arguments.
|
||||
|
||||
When the current buffer is outside cargo project, the command
|
||||
runs "rustc --test" command instead of "cargo test" as
|
||||
fallback. All tests are run regardless of adding ! since there
|
||||
is no way to run specific test function with rustc. [options]
|
||||
is passed to "rustc" command arguments in the case.
|
||||
|
||||
Takes optional modifiers (see |<mods>|): >
|
||||
:tab RustTest
|
||||
:belowright 16RustTest
|
||||
:leftabove vert 80RustTest
|
||||
<
|
||||
rust.vim Debugging
|
||||
------------------
|
||||
|
||||
:RustInfo *:RustInfo*
|
||||
Emits debugging info of the Vim Rust plugin.
|
||||
|
||||
:RustInfoToClipboard *:RustInfoClipboard*
|
||||
Saves debugging info of the Vim Rust plugin to the default
|
||||
register.
|
||||
|
||||
:RustInfoToFile [filename] *:RustInfoToFile*
|
||||
Saves debugging info of the Vim Rust plugin to the given file,
|
||||
overwriting it.
|
||||
|
||||
==============================================================================
|
||||
MAPPINGS *rust-mappings*
|
||||
MAPPINGS *rust-mappings*
|
||||
|
||||
This plugin defines mappings for |[[| and |]]| to support hanging indents.
|
||||
|
||||
It also has a few other mappings:
|
||||
|
||||
*rust_<D-r>*
|
||||
<D-r> Executes |:RustRun| with no arguments.
|
||||
Note: This binding is only available in MacVim.
|
||||
|
||||
*rust_<D-R>*
|
||||
<D-R> Populates the command line with |:RustRun|! using the
|
||||
arguments given to the last invocation, but does not
|
||||
execute it.
|
||||
Note: This binding is only available in MacVim.
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
|
||||
vim:tw=78:sw=4:noet:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui.txt* For Vim version 9.0. Last change: 2022 Nov 17
|
||||
*gui.txt* For Vim version 9.0. Last change: 2023 Apr 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -95,11 +95,11 @@ terminal version.
|
||||
|
||||
Recommended place for your personal GUI initializations:
|
||||
Unix $HOME/.gvimrc or $HOME/.vim/gvimrc
|
||||
Win32 $HOME/_gvimrc, $HOME/vimfiles/gvimrc
|
||||
Win32 $HOME/_gvimrc, $HOME/vimfiles/gvimrc
|
||||
or $VIM/_gvimrc
|
||||
Amiga s:.gvimrc, home:.gvimrc, home:vimfiles:gvimrc
|
||||
or $VIM/.gvimrc
|
||||
Haiku $HOME/config/settings/vim/gvimrc
|
||||
Haiku $HOME/config/settings/vim/gvimrc
|
||||
|
||||
The personal initialization files are searched in the order specified above
|
||||
and only the first one that is found is read.
|
||||
@@ -144,7 +144,7 @@ task bar with the 'guiheadroom' option.
|
||||
remembered until the window is opened. The position is
|
||||
adjusted to make the window fit on the screen (if possible).
|
||||
|
||||
*:win* *:winsize* *E465*
|
||||
*:wi* *:win* *:winsize* *E465*
|
||||
:win[size] {width} {height}
|
||||
Set the window height to {width} by {height} characters.
|
||||
It is recommended to use `:set lines=11 columns=22` instead,
|
||||
@@ -856,7 +856,7 @@ Example for debugger tools: >
|
||||
nnoremenu 1.20 WinBar.Next :Next<CR>
|
||||
nnoremenu 1.30 WinBar.Finish :Finish<CR>
|
||||
nnoremenu 1.40 WinBar.Cont :Continue<CR>
|
||||
<
|
||||
< *hl-ToolbarLine* *hl-ToolbarButton*
|
||||
The window toolbar uses the ToolbarLine and ToolbarButton highlight groups.
|
||||
|
||||
When splitting the window the window toolbar is not copied to the new window.
|
||||
@@ -1181,7 +1181,7 @@ When 'guifont' is set and a valid font is found in it and 'guifontwide' is
|
||||
empty Vim will attempt to find a matching double-width font and set
|
||||
'guifontwide' to it.
|
||||
|
||||
GTK+ GUI only: *guifontwide_gtk*
|
||||
GTK+ GUI only: *guifontwide_gtk*
|
||||
|
||||
If set and valid, 'guifontwide' is always used for double width characters,
|
||||
even if 'encoding' is not set to "utf-8".
|
||||
@@ -1226,10 +1226,9 @@ This section describes other features which are related to the GUI.
|
||||
like this to set options specifically for each type of GUI: >
|
||||
|
||||
if has("gui_running")
|
||||
if has("gui_gtk2")
|
||||
if has("gui_gtk")
|
||||
:set guifont=Luxi\ Mono\ 12
|
||||
elseif has("x11")
|
||||
" Also for GTK 1
|
||||
:set guifont=*-lucidatypewriter-medium-r-normal-*-*-180-*-*-m-*-*
|
||||
elseif has("gui_win32")
|
||||
:set guifont=Luxi_Mono:h12:cANSI
|
||||
|
||||
@@ -17,7 +17,7 @@ Vim's Win32 Graphical User Interface *gui-w32* *win32-gui*
|
||||
|
||||
Other relevant documentation:
|
||||
|gui.txt| For generic items of the GUI.
|
||||
|os_win32.txt| For Win32 specific items.
|
||||
|os_win32.txt| For Win32 specific items.
|
||||
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -101,7 +101,7 @@ Help on help files *helphelp*
|
||||
find a tag in a file with the same language as the
|
||||
current file. See |help-translated|.
|
||||
|
||||
*:helpc* *:helpclose*
|
||||
*:helpc* *:helpclose*
|
||||
:helpc[lose] Close one help window, if there is one.
|
||||
Vim will try to restore the window layout (including
|
||||
cursor position) to the same layout it was before
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_perl.txt* For Vim version 9.0. Last change: 2022 Mar 13
|
||||
*if_perl.txt* For Vim version 9.0. Last change: 2023 May 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sven Verdoolaege
|
||||
@@ -254,23 +254,14 @@ $main::curbuf
|
||||
|
||||
*script-here*
|
||||
When using a script language in-line, you might want to skip this when the
|
||||
language isn't supported. But this mechanism doesn't work: >
|
||||
language isn't supported. >
|
||||
if has('perl')
|
||||
perl << EOF
|
||||
this will NOT work!
|
||||
print 'perl works'
|
||||
EOF
|
||||
endif
|
||||
Instead, put the Perl/Python/Ruby/etc. command in a function and call that
|
||||
function: >
|
||||
if has('perl')
|
||||
function DefPerl()
|
||||
perl << EOF
|
||||
this works
|
||||
EOF
|
||||
endfunction
|
||||
call DefPerl()
|
||||
endif
|
||||
Note that "EOF" must be at the start of the line.
|
||||
Note that "EOF" must be at the start of the line without preceding white
|
||||
space.
|
||||
|
||||
==============================================================================
|
||||
4. Dynamic loading *perl-dynamic*
|
||||
@@ -306,5 +297,11 @@ instead of DYNAMIC_PERL_DLL file what was specified at compile time. The
|
||||
version of the shared library must match the Perl version Vim was compiled
|
||||
with.
|
||||
|
||||
Note: If you are building Perl locally, you have to use a version compiled
|
||||
with threading support for it for Vim to successfully link against it. You can
|
||||
use the `-Dusethreads` flags when configuring Perl, and check that a Perl
|
||||
binary has it enabled by running `perl -V` and verify that `USE_ITHREADS` is
|
||||
under "Compile-time options".
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -769,7 +769,19 @@ Unix ~
|
||||
The 'pythondll' or 'pythonthreedll' option can be used to specify the Python
|
||||
shared library file instead of DYNAMIC_PYTHON_DLL or DYNAMIC_PYTHON3_DLL file
|
||||
what were specified at compile time. The version of the shared library must
|
||||
match the Python 2.x or Python 3 version Vim was compiled with.
|
||||
match the Python 2.x or Python 3 version (|v:python3_version|) Vim was
|
||||
compiled with unless using |python3-stable-abi|.
|
||||
|
||||
|
||||
Stable ABI and mixing Python versions ~
|
||||
*python-stable* *python-stable-abi* *python3-stable-abi*
|
||||
If Vim was not compiled with Stable ABI (only available for Python 3), the
|
||||
version of the Python shared library must match the version that Vim was
|
||||
compiled with. Otherwise, mixing versions could result in unexpected crashes
|
||||
and failures. With Stable ABI, this restriction is relaxed, and any Python 3
|
||||
library with version of at least |v:python3_version| will work. See
|
||||
|has-python| for how to check if Stable ABI is supported, or see if version
|
||||
output includes |+python3/dyn-stable|.
|
||||
|
||||
==============================================================================
|
||||
10. Python 3 *python3*
|
||||
@@ -857,7 +869,7 @@ You can test what Python version is available with: >
|
||||
if has('python')
|
||||
echo 'there is Python 2.x'
|
||||
endif
|
||||
if has('python3')
|
||||
if has('python3')
|
||||
echo 'there is Python 3.x'
|
||||
endif
|
||||
|
||||
@@ -874,13 +886,25 @@ python support: >
|
||||
echo 'Python 2.x dynamically loaded'
|
||||
endif
|
||||
endif
|
||||
if has('python3_compiled')
|
||||
if has('python3_compiled')
|
||||
echo 'compiled with Python 3.x support'
|
||||
if has('python3_dynamic')
|
||||
echo 'Python 3.x dynamically loaded'
|
||||
endif
|
||||
endif
|
||||
|
||||
When loading the library dynamically, Vim can be compiled to support Python 3
|
||||
Stable ABI (|python3-stable-abi|) which allows you to load a different version
|
||||
of Python 3 library than the one Vim was compiled with. To check it: >
|
||||
if has('python3_dynamic')
|
||||
if has('python3_stable')
|
||||
echo 'support Python 3 Stable ABI.'
|
||||
else
|
||||
echo 'does not support Python 3 Stable ABI.'
|
||||
echo 'only use Python 3 version ' .. v:python3_version
|
||||
endif
|
||||
endif
|
||||
|
||||
This also tells you whether Python is dynamically loaded, which will fail if
|
||||
the runtime library cannot be found.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 9.0. Last change: 2022 Oct 15
|
||||
*index.txt* For Vim version 9.0. Last change: 2023 Jan 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -236,7 +236,7 @@ tag char note action in Normal mode ~
|
||||
|CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode (no-op)
|
||||
|CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
|
||||
CTRL-\ a - z reserved for extensions
|
||||
CTRL-\ others not used
|
||||
CTRL-\ others not used
|
||||
|CTRL-]| CTRL-] :ta to ident under cursor
|
||||
|CTRL-^| CTRL-^ edit Nth alternate file (equivalent to
|
||||
":e #N")
|
||||
@@ -247,7 +247,7 @@ tag char note action in Normal mode ~
|
||||
2 filter Nmove text through the {filter}
|
||||
command
|
||||
|!!| !!{filter} 2 filter N lines through the {filter} command
|
||||
|quote| "{register} use {register} for next delete, yank or put
|
||||
|quote| "{register} use {register} for next delete, yank or put
|
||||
({.%#:} only work with put)
|
||||
|#| # 1 search backward for the Nth occurrence of
|
||||
the ident under the cursor
|
||||
@@ -1239,6 +1239,7 @@ tag command action ~
|
||||
|:checkpath| :che[ckpath] list included files
|
||||
|:checktime| :checkt[ime] check timestamp of loaded buffers
|
||||
|:chistory| :chi[story] list the error lists
|
||||
|:class| :class start of a class specification
|
||||
|:clast| :cla[st] go to the specified error, default last one
|
||||
|:clearjumps| :cle[arjumps] clear the jump list
|
||||
|:clist| :cl[ist] list all errors
|
||||
@@ -1313,6 +1314,7 @@ tag command action ~
|
||||
|:else| :el[se] part of an :if command
|
||||
|:elseif| :elsei[f] part of an :if command
|
||||
|:emenu| :em[enu] execute a menu by name
|
||||
|:endclass| :endclass end of a class specification
|
||||
|:enddef| :enddef end of a user function started with :def
|
||||
|:endif| :en[dif] end previous :if
|
||||
|:endfor| :endfo[r] end previous :for
|
||||
@@ -1529,6 +1531,7 @@ tag command action ~
|
||||
|:ptprevious| :ptp[revious] |:tprevious| in preview window
|
||||
|:ptrewind| :ptr[ewind] |:trewind| in preview window
|
||||
|:ptselect| :pts[elect] |:tselect| and show tag in preview window
|
||||
|:public| :public prefix for a class or object member
|
||||
|:put| :pu[t] insert contents of register in the text
|
||||
|:pwd| :pw[d] print current directory
|
||||
|:py3| :py3 execute Python 3 command
|
||||
@@ -1639,6 +1642,7 @@ tag command action ~
|
||||
|:startinsert| :star[tinsert] start Insert mode
|
||||
|:startgreplace| :startg[replace] start Virtual Replace mode
|
||||
|:startreplace| :startr[eplace] start Replace mode
|
||||
|:static| :static prefix for a class member or function
|
||||
|:stopinsert| :stopi[nsert] stop Insert mode
|
||||
|:stjump| :stj[ump] do ":tjump" and split window
|
||||
|:stselect| :sts[elect] do ":tselect" and split window
|
||||
|
||||
@@ -127,7 +127,11 @@ CTRL-R {register} *i_CTRL-R*
|
||||
'/' the last search pattern
|
||||
':' the last command-line
|
||||
'.' the last inserted text
|
||||
*i_CTRL-R_-*
|
||||
'-' the last small (less than a line) delete
|
||||
register. This is repeatable using |.| since
|
||||
it remembers the register to put instead of
|
||||
the literal text to insert.
|
||||
*i_CTRL-R_=*
|
||||
'=' the expression register: you are prompted to
|
||||
enter an expression (see |expression|)
|
||||
@@ -877,7 +881,7 @@ Groß): >
|
||||
|
||||
func Thesaur(findstart, base)
|
||||
if a:findstart
|
||||
return searchpos('\<', 'bnW', line('.'))[1] - 1
|
||||
return searchpos('\<', 'bnW', line('.'))[1] - 1
|
||||
endif
|
||||
let res = []
|
||||
let h = ''
|
||||
@@ -1118,8 +1122,8 @@ cursor column will be replaced with the matches. If the returned value is
|
||||
larger than the cursor column, the cursor column is used.
|
||||
|
||||
Negative return values:
|
||||
-2 To cancel silently and stay in completion mode.
|
||||
-3 To cancel silently and leave completion mode.
|
||||
-2 To cancel silently and stay in completion mode.
|
||||
-3 To cancel silently and leave completion mode.
|
||||
Another negative value: completion starts at the cursor column
|
||||
|
||||
On the second invocation the arguments are:
|
||||
@@ -1176,7 +1180,7 @@ items:
|
||||
item with the same word is already present.
|
||||
empty when non-zero this match will be added even when it is
|
||||
an empty string
|
||||
user_data custom data which is associated with the item and
|
||||
user_data custom data which is associated with the item and
|
||||
available in |v:completed_item|; it can be any type;
|
||||
defaults to an empty string
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 9.0. Last change: 2022 Nov 20
|
||||
*intro.txt* For Vim version 9.0. Last change: 2023 Aug 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -129,8 +129,9 @@ There are three ways to report bugs:
|
||||
3. Send bug reports to: Vim Developers <vim-dev@vim.org>
|
||||
This is a maillist, you need to become a member first and many people will
|
||||
see the message. If you don't want that, e.g. because it is a security
|
||||
issue, send it to <bugs@vim.org>, this only goes to the Vim maintainer
|
||||
(that's Bram).
|
||||
issue, please contact any of the current Vim maintainers
|
||||
https://github.com/orgs/vim/people (but not Bram or the vim-dev ML).
|
||||
In the future, a proper process for handling security issues will be setup.
|
||||
|
||||
Please be brief; all the time that is spent on answering mail is subtracted
|
||||
from the time that is spent on improving Vim! Always give a reproducible
|
||||
@@ -181,9 +182,9 @@ The user may create scripts for Vim that use external commands. These might
|
||||
introduce Y2K problems, but those are not really part of Vim itself.
|
||||
|
||||
==============================================================================
|
||||
3. Credits *credits* *author* *Bram* *Moolenaar*
|
||||
3. Credits *credits* *author*
|
||||
|
||||
Most of Vim was created by Bram Moolenaar <Bram@vim.org>.
|
||||
Most of Vim was created by Bram Moolenaar <Bram@vim.org> |Bram-Moolenaar|
|
||||
|
||||
Parts of the documentation come from several Vi manuals, written by:
|
||||
W.N. Joy
|
||||
@@ -214,9 +215,9 @@ Vim would never have become what it is now, without the help of these people!
|
||||
Eric Fischer Mac port, 'cindent', and other improvements
|
||||
Benji Fisher Answering lots of user questions
|
||||
Bill Foster Athena GUI port (later removed)
|
||||
Google Lets me work on Vim one day a week
|
||||
Google Let Bram work on Vim one day a week
|
||||
Loic Grenie xvim (ideas for multi windows version)
|
||||
Sven Guckes Vim promoter and previous WWW page maintainer
|
||||
Sven Guckes Vim promoter and previous WWW page maintainer |Sven-Guckes|
|
||||
Darren Hiebert Exuberant ctags
|
||||
Jason Hildebrand GTK+ 2 port
|
||||
Bruce Hunsaker improvements for VMS port
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 9.0. Last change: 2022 Dec 01
|
||||
*map.txt* For Vim version 9.0. Last change: 2023 May 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -20,9 +20,10 @@ manual.
|
||||
1.8 Examples |map-examples|
|
||||
1.9 Using mappings |map-typing|
|
||||
1.10 Mapping alt-keys |:map-alt-keys|
|
||||
1.11 Mapping in modifyOtherKeys mode |modifyOtherKeys|
|
||||
1.12 Mapping with Kitty keyboard protocol |kitty-keyboard-protocol|
|
||||
1.13 Mapping an operator |:map-operator|
|
||||
1.11 Mapping meta-keys |:map-meta-keys|
|
||||
1.12 Mapping in modifyOtherKeys mode |modifyOtherKeys|
|
||||
1.13 Mapping with Kitty keyboard protocol |kitty-keyboard-protocol|
|
||||
1.14 Mapping an operator |:map-operator|
|
||||
2. Abbreviations |abbreviations|
|
||||
3. Local mappings and functions |script-local|
|
||||
4. User-defined commands |user-commands|
|
||||
@@ -399,7 +400,7 @@ Note:
|
||||
- The command is not echo'ed, no need for <silent>.
|
||||
- The {rhs} is not subject to abbreviations nor to other mappings, even if the
|
||||
mapping is recursive.
|
||||
- In Visual mode you can use `line('v')` and `col('v')` to get one end of the
|
||||
- In Visual mode you can use `line('v')` and `col('v')` to get one end of the
|
||||
Visual area, the cursor is at the other end.
|
||||
|
||||
*E1255* *E1136*
|
||||
@@ -407,10 +408,6 @@ Note:
|
||||
by <CR> in the {rhs} of the mapping definition. |Command-line| mode is never
|
||||
entered.
|
||||
|
||||
*E1137*
|
||||
<Cmd> and <ScriptCmd> commands can have only normal characters and cannot
|
||||
contain special characters like function keys.
|
||||
|
||||
|
||||
1.3 MAPPING AND MODES *:map-modes*
|
||||
*mapmode-nvo* *mapmode-n* *mapmode-v* *mapmode-o*
|
||||
@@ -777,8 +774,8 @@ To avoid mapping of the characters you type in insert or Command-line mode,
|
||||
type a CTRL-V first. The mapping in Insert mode is disabled if the 'paste'
|
||||
option is on.
|
||||
*map-error*
|
||||
Note that when an error is encountered (that causes an error message or beep)
|
||||
the rest of the mapping is not executed. This is Vi-compatible.
|
||||
Note that when an error is encountered (that causes an error message or might
|
||||
cause a beep) the rest of the mapping is not executed. This is Vi-compatible.
|
||||
|
||||
Note that the second character (argument) of the commands @zZtTfF[]rm'`"v
|
||||
and CTRL-X is not mapped. This was done to be able to use all the named
|
||||
@@ -794,8 +791,8 @@ otherwise you would not be able to use those commands anymore. Here are a few
|
||||
suggestions:
|
||||
- Function keys <F2>, <F3>, etc.. Also the shifted function keys <S-F1>,
|
||||
<S-F2>, etc. Note that <F1> is already used for the help command.
|
||||
- Meta-keys (with the ALT key pressed). Depending on your keyboard accented
|
||||
characters may be used as well. |:map-alt-keys|
|
||||
- Any key with the Alt or Meta key pressed. Depending on your keyboard
|
||||
accented characters may be used as well. |:map-alt-keys|
|
||||
- Use the '_' or ',' character and then any other character. The "_" and ","
|
||||
commands do exist in Vim (see |_| and |,|), but you probably never use them.
|
||||
- Use a key that is a synonym for another command. For example: CTRL-P and
|
||||
@@ -844,7 +841,7 @@ option). After that it assumes that the 'q' is to be interpreted as such. If
|
||||
you type slowly, or your system is slow, reset the 'timeout' option. Then you
|
||||
might want to set the 'ttimeout' option.
|
||||
|
||||
*map-precedence*
|
||||
*map-precedence*
|
||||
Buffer-local mappings (defined using |:map-<buffer>|) take precedence over
|
||||
global mappings. When a buffer-local mapping is the same as a global mapping,
|
||||
Vim will use the buffer-local mapping. In addition, Vim will use a complete
|
||||
@@ -922,12 +919,19 @@ in the original Vi, you would get back the text before the first undo).
|
||||
|
||||
1.10 MAPPING ALT-KEYS *:map-alt-keys*
|
||||
|
||||
For a readable mapping command the <A-k> form can be used. Note that <A-k>
|
||||
and <A-K> are different, the latter will use an upper case letter. Actually,
|
||||
<A-K> and <A-S-K> are the same. Instead of "A" you can use "M". If you have
|
||||
an actual Meta modifier key, please see |:map-meta-keys|.
|
||||
|
||||
In the GUI Vim handles the Alt key itself, thus mapping keys with ALT should
|
||||
always work. But in a terminal Vim gets a sequence of bytes and has to figure
|
||||
out whether ALT was pressed or not.
|
||||
|
||||
If the terminal supports the modifyOtherKeys mode and it has been enabled,
|
||||
then Vim can recognize more key combinations, see |modifyOtherKeys| below.
|
||||
The Kitty keyboard protocol works in a similar way, see
|
||||
|kitty-keyboard-protocol|.
|
||||
|
||||
By default Vim assumes that pressing the ALT key sets the 8th bit of a typed
|
||||
character. Most decent terminals can work that way, such as xterm, aterm and
|
||||
@@ -966,7 +970,21 @@ on the terminal; that's a good last resource in case you want to send ESC when
|
||||
using other applications but not when inside Vim.
|
||||
|
||||
|
||||
1.11 MAPPING IN modifyOtherKeys mode *modifyOtherKeys*
|
||||
1.11 MAPPING META-KEYS *:map-meta-keys*
|
||||
|
||||
Mapping keys with the Meta modifier works very similar to using the Alt key.
|
||||
What key on your keyboard produces the Meta modifier depends on your keyboard
|
||||
and configuration.
|
||||
|
||||
Note that mapping <M-a> actually is for using the Alt key. That can be
|
||||
confusing! It cannot be changed, it would not be backwards compatible.
|
||||
|
||||
For the Meta modifier the "T" character is used. For example, to map Meta-b
|
||||
in Insert mode: >
|
||||
:imap <T-b> terrible
|
||||
|
||||
|
||||
1.12 MAPPING IN modifyOtherKeys mode *modifyOtherKeys*
|
||||
|
||||
Xterm and a few other terminals can be put in a mode where keys with modifiers
|
||||
are sent with a special escape code. Vim recognizes these codes and can then
|
||||
@@ -1011,7 +1029,7 @@ enabled when it spots an escape sequence that must have been created by it.
|
||||
To see if Vim detected such an escape sequence use `:verbose map`, the first
|
||||
line will then show "Seen modifyOtherKeys: true" (possibly translated).
|
||||
|
||||
This automatic detection depends on receiving an escape code starting with
|
||||
This automatic detection depends on receiving an escape code starting with
|
||||
"<1b>[27;". This is the normal way xterm sends these key codes. However, if
|
||||
the *formatOtherKeys* resource is set another form is used that is not
|
||||
recognized, therefore you must not set formatOtherKeys.
|
||||
@@ -1028,7 +1046,7 @@ When the 'esckeys' option is off, then modifyOtherKeys will be disabled in
|
||||
Insert mode to avoid every key with a modifier causing Insert mode to end.
|
||||
|
||||
|
||||
1.12 MAPPING WITH KITTY KEYBOARD PROTOCOL *kitty-keyboard-protocol*
|
||||
1.13 MAPPING WITH KITTY KEYBOARD PROTOCOL *kitty-keyboard-protocol*
|
||||
|
||||
If the value of 'term' contains "kitty" then Vim will send out an escape
|
||||
sequence to enable the Kitty keyboard protocol. This can be changed with the
|
||||
@@ -1051,11 +1069,11 @@ translated). The meaning of {value}:
|
||||
On protocol is used
|
||||
Disabled protocol was used but expected to have been disabled
|
||||
by 't_TE'
|
||||
Cleared protocol expected to have beeen disabled by 't_TE',
|
||||
previous state is unknown
|
||||
Cleared protocol expected to have been disabled by 't_TE',
|
||||
previous state is unknown
|
||||
|
||||
|
||||
1.13 MAPPING AN OPERATOR *:map-operator*
|
||||
1.14 MAPPING AN OPERATOR *:map-operator*
|
||||
|
||||
An operator is used before a {motion} command. To define your own operator
|
||||
you must create a mapping that first sets the 'operatorfunc' option and then
|
||||
@@ -1195,7 +1213,7 @@ non-id The "non-id" type ends in a non-keyword character, the other
|
||||
Examples of strings that cannot be abbreviations: "a.b", "#def", "a b", "_$r"
|
||||
|
||||
An abbreviation is only recognized when you type a non-keyword character.
|
||||
This can also be the <Esc> that ends insert mode or the <CR> that ends a
|
||||
This can also be the <Esc> that ends Insert mode or the <CR> that ends a
|
||||
command. The non-keyword character which ends the abbreviation is inserted
|
||||
after the expanded abbreviation. An exception to this is the character <C-]>,
|
||||
which is used to expand an abbreviation without inserting any extra
|
||||
@@ -1399,12 +1417,13 @@ this, they can be made local to the script.
|
||||
|
||||
*<SID>* *<SNR>* *E81*
|
||||
The string "<SID>" can be used in a mapping or menu. This requires that the
|
||||
'<' flag is not present in 'cpoptions'.
|
||||
'<' flag is not present in 'cpoptions'. This is useful if you have a
|
||||
script-local function that you want to call from a mapping in the same script.
|
||||
When executing the map command, Vim will replace "<SID>" with the special
|
||||
key code <SNR>, followed by a number that's unique for the script, and an
|
||||
underscore. Example: >
|
||||
:map <SID>Add
|
||||
could define a mapping "<SNR>23_Add".
|
||||
would define a mapping "<SNR>23_Add".
|
||||
|
||||
When defining a function in a script, "s:" can be prepended to the name to
|
||||
make it local to the script (in |Vim9| script functions without a prefix are
|
||||
@@ -1543,6 +1562,11 @@ can have arguments, or have a range specified. Arguments are subject to
|
||||
completion as filenames, buffers, etc. Exactly how this works depends upon the
|
||||
command's attributes, which are specified when the command is defined.
|
||||
|
||||
When defining a user command in a script, it will be able to call functions
|
||||
local to the script and use mappings local to the script. When the user
|
||||
invokes the user command, it will run in the context of the script it was
|
||||
defined in. This matters if |<SID>| is used in a command.
|
||||
|
||||
There are a number of attributes, split into four categories: argument
|
||||
handling, completion behavior, range handling, and special cases. The
|
||||
attributes are described below, by category.
|
||||
@@ -1706,7 +1730,7 @@ by default correspond to the current line, last line and the whole buffer,
|
||||
relate to arguments, (loaded) buffers, windows or tab pages.
|
||||
|
||||
Possible values are (second column is the short name used in listing):
|
||||
-addr=lines Range of lines (this is the default for -range)
|
||||
-addr=lines Range of lines (this is the default for -range)
|
||||
-addr=arguments arg Range for arguments
|
||||
-addr=buffers buf Range for buffers (also not loaded buffers)
|
||||
-addr=loaded_buffers load Range for loaded buffers
|
||||
@@ -1758,6 +1782,11 @@ functions cannot be used. Commands where a "|" may appear in the argument,
|
||||
such as commands with an expression argument, cannot be followed by a "|" and
|
||||
another command.
|
||||
|
||||
If the command is defined in Vim9 script (a script that starts with
|
||||
`:vim9script` and in a `:def` function) then {repl} will be executed as in Vim9
|
||||
script. Thus this depends on where the command is defined, not where it is
|
||||
used.
|
||||
|
||||
The replacement text {repl} for a user defined command is scanned for special
|
||||
escape sequences, using <...> notation. Escape sequences are replaced with
|
||||
values from the entered command line, and all other text is copied unchanged.
|
||||
@@ -1844,8 +1873,14 @@ remains unmodified. Also see |f-args-example| below. Overview:
|
||||
XX a\\\ b 'a\ b'
|
||||
XX a\\\\b 'a\\b'
|
||||
XX a\\\\ b 'a\\', 'b'
|
||||
XX [nothing]
|
||||
|
||||
|
||||
Note that if the "no arguments" situation is to be handled, you have to make
|
||||
sure that the function can be called without arguments. For a compiled
|
||||
function you might want to use variable arguments, see
|
||||
|vim9-variable-arguments|.
|
||||
|
||||
Examples for user commands: >
|
||||
|
||||
" Delete everything after here to the end
|
||||
@@ -1892,14 +1927,5 @@ errors and the "update" command to write modified buffers): >
|
||||
This will invoke: >
|
||||
:call Allargs("%s/foo/bar/ge|update")
|
||||
<
|
||||
If the command is defined in Vim9 script (a script that starts with
|
||||
`:vim9script` and in a `:def` function) then {repl} will be executed as in Vim9
|
||||
script. Thus this depends on where the command is defined, not where it is
|
||||
used.
|
||||
|
||||
When defining a user command in a script, it will be able to call functions
|
||||
local to the script and use mappings local to the script. When the user
|
||||
invokes the user command, it will run in the context of the script it was
|
||||
defined in. This matters if |<SID>| is used in a command.
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 9.0. Last change: 2022 Oct 18
|
||||
*message.txt* For Vim version 9.0. Last change: 2023 May 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -76,9 +76,9 @@ See `:messages` above.
|
||||
|
||||
|
||||
LIST OF MESSAGES
|
||||
*E222* *E228* *E232* *E293* *E298* *E304* *E317*
|
||||
*E318* *E356* *E438* *E439* *E440* *E316* *E320* *E322*
|
||||
*E323* *E341* *E473* *E570* *E685* *E292*
|
||||
*E222* *E228* *E232* *E292* *E293* *E298* *E304* *E316*
|
||||
*E317* *E318* *E320* *E322* *E323* *E341* *E356* *E438*
|
||||
*E439* *E440* *E473* *E570*
|
||||
Add to read buffer ~
|
||||
makemap: Illegal mode ~
|
||||
Cannot create BalloonEval with both message and callback ~
|
||||
@@ -99,9 +99,9 @@ LIST OF MESSAGES
|
||||
Internal error in regexp ~
|
||||
fatal error in cs_manage_matches ~
|
||||
Invalid count for del_bytes(): {N} ~
|
||||
|
||||
*E340* *E685* *internal-error*
|
||||
This is an internal error. If you can reproduce it, please send in a bug
|
||||
report. |bugs|
|
||||
report, see |bugs|.
|
||||
|
||||
|
||||
ATTENTION ~
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
*motion.txt* For Vim version 9.0. Last change: 2023 Sep 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -242,8 +242,8 @@ gM Like "g0", but to halfway the text of the line.
|
||||
Thus "10gM" is near the start of the text and "90gM"
|
||||
is near the end of the text.
|
||||
|
||||
*g$* *g<End>*
|
||||
g$ or g<End> When lines wrap ('wrap' on): To the last character of
|
||||
*g$*
|
||||
g$ When lines wrap ('wrap' on): To the last character of
|
||||
the screen line and [count - 1] screen lines downward
|
||||
|inclusive|. Differs from "$" when a line is wider
|
||||
than the screen.
|
||||
@@ -256,6 +256,10 @@ g$ or g<End> When lines wrap ('wrap' on): To the last character of
|
||||
When 'virtualedit' is enabled moves to the end of the
|
||||
screen line.
|
||||
|
||||
*g<End>* *g<kEnd>*
|
||||
g<End> Like |g$| but to the last non-blank character
|
||||
instead of the last character.
|
||||
|
||||
*bar*
|
||||
| To screen column [count] in the current line.
|
||||
|exclusive| motion. Ceci n'est pas une pipe.
|
||||
@@ -588,14 +592,16 @@ a] *v_a]* *v_a[* *a]* *a[*
|
||||
a[ "a [] block", select [count] '[' ']' blocks. This
|
||||
goes backwards to the [count] unclosed '[', and finds
|
||||
the matching ']'. The enclosed text is selected,
|
||||
including the '[' and ']'.
|
||||
including the '[' and ']'. The |cpo-M| option flag
|
||||
is used to handle escaped brackets.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
i] *v_i]* *v_i[* *i]* *i[*
|
||||
i[ "inner [] block", select [count] '[' ']' blocks. This
|
||||
goes backwards to the [count] unclosed '[', and finds
|
||||
the matching ']'. The enclosed text is selected,
|
||||
excluding the '[' and ']'.
|
||||
excluding the '[' and ']'. The |cpo-M| option flag
|
||||
is used to handle escaped brackets.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
a) *v_a)* *a)* *a(*
|
||||
@@ -603,7 +609,8 @@ a( *vab* *v_ab* *v_a(* *ab*
|
||||
ab "a block", select [count] blocks, from "[count] [(" to
|
||||
the matching ')', including the '(' and ')' (see
|
||||
|[(|). Does not include white space outside of the
|
||||
parenthesis.
|
||||
parenthesis. The |cpo-M| option flag is used to
|
||||
handle escaped parenthesis.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
i) *v_i)* *i)* *i(*
|
||||
@@ -611,19 +618,22 @@ 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 "(".
|
||||
find the next "(". The |cpo-M| option flag
|
||||
is used to handle escaped parenthesis.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
a> *v_a>* *v_a<* *a>* *a<*
|
||||
a< "a <> block", select [count] <> blocks, from the
|
||||
[count]'th unmatched '<' backwards to the matching
|
||||
'>', including the '<' and '>'.
|
||||
'>', including the '<' and '>'. The |cpo-M| option flag
|
||||
is used to handle escaped '<' and '>'.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
i> *v_i>* *v_i<* *i>* *i<*
|
||||
i< "inner <> block", select [count] <> blocks, from
|
||||
the [count]'th unmatched '<' backwards to the matching
|
||||
'>', excluding the '<' and '>'.
|
||||
'>', excluding the '<' and '>'. The |cpo-M| option flag
|
||||
is used to handle escaped '<' and '>'.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
*v_at* *at*
|
||||
@@ -645,14 +655,16 @@ a} *v_a}* *a}* *a{*
|
||||
a{ *v_aB* *v_a{* *aB*
|
||||
aB "a Block", select [count] Blocks, from "[count] [{" to
|
||||
the matching '}', including the '{' and '}' (see
|
||||
|[{|).
|
||||
|[{|). The |cpo-M| option flag is used to handle
|
||||
escaped braces.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
i} *v_i}* *i}* *i{*
|
||||
i{ *v_iB* *v_i{* *iB*
|
||||
iB "inner Block", select [count] Blocks, from "[count] [{"
|
||||
to the matching '}', excluding the '{' and '}' (see
|
||||
|[{|).
|
||||
|[{|). The |cpo-M| option flag is used to handle
|
||||
escaped braces.
|
||||
When used in Visual mode it is made characterwise.
|
||||
|
||||
a" *v_aquote* *aquote*
|
||||
@@ -679,6 +691,7 @@ i` *v_i`* *i`*
|
||||
Special case: With a count of 2 the quotes are
|
||||
included, but no extra white space as with a"/a'/a`.
|
||||
|
||||
*o_object-select*
|
||||
When used after an operator:
|
||||
For non-block objects:
|
||||
For the "a" commands: The operator applies to the object and the white
|
||||
@@ -694,6 +707,7 @@ For a block object:
|
||||
the surrounding braces are excluded. For the "a" commands, the braces
|
||||
are included.
|
||||
|
||||
*v_object-select*
|
||||
When used in Visual mode:
|
||||
When start and end of the Visual area are the same (just after typing "v"):
|
||||
One object is selected, the same as for using an operator.
|
||||
@@ -1065,14 +1079,14 @@ can go to cursor positions before older jumps, and back again. Thus you can
|
||||
move up and down the list. There is a separate jump list for each window.
|
||||
The maximum number of entries is fixed at 100.
|
||||
|
||||
For example, after three jump commands you have this jump list:
|
||||
|
||||
jump line col file/text ~
|
||||
3 1 0 some text ~
|
||||
2 70 0 another line ~
|
||||
1 1154 23 end. ~
|
||||
> ~
|
||||
For example, after three jump commands you have this jump list: >
|
||||
|
||||
jump line col file/text
|
||||
3 1 0 some text
|
||||
2 70 0 another line
|
||||
1 1154 23 end.
|
||||
>
|
||||
<
|
||||
The "file/text" column shows the file name, or the text at the jump if it is
|
||||
in the current file (an indent is removed and a long line is truncated to fit
|
||||
in the window).
|
||||
@@ -1081,14 +1095,14 @@ The marker ">" indicates the current position in the jumplist. It may not be
|
||||
shown when filtering the |:jumps| command using |:filter|
|
||||
|
||||
You are currently in line 1167. If you then use the CTRL-O command, the
|
||||
cursor is put in line 1154. This results in:
|
||||
|
||||
jump line col file/text ~
|
||||
2 1 0 some text ~
|
||||
1 70 0 another line ~
|
||||
> 0 1154 23 end. ~
|
||||
1 1167 0 foo bar ~
|
||||
cursor is put in line 1154. This results in: >
|
||||
|
||||
jump line col file/text
|
||||
2 1 0 some text
|
||||
1 70 0 another line
|
||||
> 0 1154 23 end.
|
||||
1 1167 0 foo bar
|
||||
<
|
||||
The pointer will be set at the last used jump position. The next CTRL-O
|
||||
command will use the entry above it, the next CTRL-I command will use the
|
||||
entry below it. If the pointer is below the last entry, this indicates that
|
||||
@@ -1112,15 +1126,15 @@ command. You can explicitly add a jump by setting the ' mark with "m'". Note
|
||||
that calling setpos() does not do this.
|
||||
|
||||
After the CTRL-O command that got you into line 1154 you could give another
|
||||
jump command (e.g., "G"). The jump list would then become:
|
||||
|
||||
jump line col file/text ~
|
||||
4 1 0 some text ~
|
||||
3 70 0 another line ~
|
||||
2 1167 0 foo bar ~
|
||||
1 1154 23 end. ~
|
||||
> ~
|
||||
jump command (e.g., "G"). The jump list would then become: >
|
||||
|
||||
jump line col file/text
|
||||
4 1 0 some text
|
||||
3 70 0 another line
|
||||
2 1167 0 foo bar
|
||||
1 1154 23 end.
|
||||
>
|
||||
<
|
||||
The line numbers will be adjusted for deleted and inserted lines. This fails
|
||||
if you stop editing a file without writing, like with ":n!".
|
||||
|
||||
@@ -1129,7 +1143,45 @@ When you split a window, the jumplist will be copied to the new window.
|
||||
If you have included the ' item in the 'viminfo' option the jumplist will be
|
||||
stored in the viminfo file and restored when starting Vim.
|
||||
|
||||
*jumplist-stack*
|
||||
When 'jumpoptions' option includes "stack", the jumplist behaves like the tag
|
||||
stack. When jumping to a new location from the middle of the jumplist, the
|
||||
locations after the current position will be discarded. With this option set
|
||||
you can move through a tree of jump locations. When going back up a branch and
|
||||
then down another branch, CTRL-O still takes you further up the tree.
|
||||
|
||||
Given a jumplist like the following in which CTRL-O has been used to move back
|
||||
three times to location X: >
|
||||
|
||||
jump line col file/text
|
||||
2 1260 8 mark.c <-- location X-2
|
||||
1 685 0 eval.c <-- location X-1
|
||||
> 0 462 36 eval.c <-- location X
|
||||
1 479 39 eval.c
|
||||
2 213 2 mark.c
|
||||
3 181 0 mark.c
|
||||
<
|
||||
jumping to (new) location Y results in the locations after the current
|
||||
locations being removed: >
|
||||
|
||||
jump line col file/text
|
||||
3 1260 8 mark.c <-- location X-2
|
||||
2 685 0 eval.c <-- location X-1
|
||||
1 462 36 eval.c <-- location X
|
||||
>
|
||||
<
|
||||
Then, when yet another location Z is jumped to, the new location Y appears
|
||||
directly after location X in the jumplist and location X remains in the same
|
||||
position relative to the locations (X-1, X-2, etc., ...) that had been before
|
||||
it prior to the original jump from X to Y: >
|
||||
|
||||
jump line col file/text
|
||||
4 1260 8 mark.c <-- location X-2
|
||||
3 685 0 eval.c <-- location X-1
|
||||
2 462 36 eval.c <-- location X
|
||||
1 100 0 buffer.c <-- location Y
|
||||
>
|
||||
<
|
||||
CHANGE LIST JUMPS *changelist* *change-list-jumps* *E664*
|
||||
|
||||
When making a change the cursor position is remembered. One position is
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 9.0. Last change: 2022 Nov 30
|
||||
*options.txt* For Vim version 9.0. Last change: 2023 Aug 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -34,6 +34,8 @@ achieve special effects. These options come in three forms:
|
||||
key codes are not shown, because they are generated
|
||||
internally and can't be changed. Changing the terminal
|
||||
codes in the GUI is not useful either...
|
||||
The options have the form t_AB, see
|
||||
|terminal-options|.
|
||||
|
||||
:se[t]! termcap Idem, but don't use multiple columns.
|
||||
|
||||
@@ -69,7 +71,7 @@ achieve special effects. These options come in three forms:
|
||||
'ttytype'
|
||||
Warning: This may have a lot of side effects.
|
||||
|
||||
*:set-args* *E487* *E521*
|
||||
*:set-args* *:set=* *E487* *E521*
|
||||
:se[t] {option}={value} or
|
||||
:se[t] {option}:{value}
|
||||
Set string or number option to {value}.
|
||||
@@ -77,7 +79,9 @@ achieve special effects. These options come in three forms:
|
||||
hex (preceded with 0x) or octal (preceded with '0').
|
||||
The old value can be inserted by typing 'wildchar' (by
|
||||
default this is a <Tab> or CTRL-E if 'compatible' is
|
||||
set). See |cmdline-completion|.
|
||||
set). Many string options with fixed syntax and names
|
||||
also support completing known values. See
|
||||
|cmdline-completion| and |complete-set-option|.
|
||||
White space between {option} and '=' is allowed and
|
||||
will be ignored. White space between '=' and {value}
|
||||
is not allowed.
|
||||
@@ -111,6 +115,9 @@ achieve special effects. These options come in three forms:
|
||||
When the option is a list of flags, {value} must be
|
||||
exactly as they appear in the option. Remove flags
|
||||
one by one to avoid problems.
|
||||
The individual values from a comma separated list or
|
||||
list of flags can be inserted by typing 'wildchar'.
|
||||
See |complete-set-option|.
|
||||
Also see |:set-args| above.
|
||||
|
||||
The {option} arguments to ":set" may be repeated. For example: >
|
||||
@@ -185,10 +192,27 @@ To include white space in a string option value it has to be preceded with a
|
||||
backslash. To include a backslash you have to use two. Effectively this
|
||||
means that the number of backslashes in an option value is halved (rounded
|
||||
down).
|
||||
In options 'path', 'cdpath', and 'tags', spaces have to be preceded with three
|
||||
backslashes instead for compatibility with version 3.0 where the options can
|
||||
be separated by either commas or spaces.
|
||||
Comma-separated options like 'backupdir' and 'tags' will also require commas
|
||||
to be escaped with two backslashes, whereas this is not needed for
|
||||
non-comma-separated ones like 'makeprg'.
|
||||
When setting options using |:let| and |literal-string|, you need to use one
|
||||
fewer layer of backslash.
|
||||
A few examples: >
|
||||
:set tags=tags\ /usr/tags results in "tags /usr/tags"
|
||||
:set tags=tags\\,file results in "tags\,file"
|
||||
:set tags=tags\\\ file results in "tags\ file"
|
||||
:set makeprg=make\ file results in "make file"
|
||||
:let &makeprg='make file' (same as above)
|
||||
:set makeprg=make\\\ file results in "make\ file"
|
||||
:set tags=tags\ /usr/tags results in "tags" and "/usr/tags"
|
||||
:set tags=tags\\\ file results in "tags file"
|
||||
:let &tags='tags\ file' (same as above)
|
||||
|
||||
:set makeprg=make,file results in "make,file"
|
||||
:set makeprg=make\\,file results in "make\,file"
|
||||
:set tags=tags,file results in "tags" and "file"
|
||||
:set tags=tags\\,file results in "tags,file"
|
||||
:let &tags='tags\,file' (same as above)
|
||||
|
||||
The "|" character separates a ":set" command from a following command. To
|
||||
include the "|" in the option value, use "\|" instead. This example sets the
|
||||
@@ -250,6 +274,8 @@ opt+=val" the expansion is done before the adding or removing.
|
||||
|
||||
Handling of local options *local-options*
|
||||
|
||||
Note: The following also applies to |global-local| options.
|
||||
|
||||
Some of the options only apply to a window or buffer. Each window or buffer
|
||||
has its own copy of this option, thus each can have its own value. This
|
||||
allows you to set 'list' in one window but not in another. And set
|
||||
@@ -299,6 +325,30 @@ The options local to a window are remembered for each buffer. This also
|
||||
happens when the buffer is not loaded, but they are lost when the buffer is
|
||||
wiped out |:bwipe|.
|
||||
|
||||
Special local window options *local-noglobal*
|
||||
|
||||
The following local window options won't be copied over when new windows are
|
||||
created, thus they behave slightly differently:
|
||||
|
||||
Option Reason ~
|
||||
'previewwindow' there can only be a single one
|
||||
'scroll' specific to existing window
|
||||
'winfixheight' specific to existing window
|
||||
'winfixwidth' specific to existing window
|
||||
|
||||
Special local buffer options
|
||||
|
||||
The following local buffer options won't be copied over when new buffers are
|
||||
created, thus they behave slightly differently:
|
||||
|
||||
Option Reason ~
|
||||
'filetype' explicitly set by autocommands
|
||||
'syntax' explicitly set by autocommands
|
||||
'bufhidden' denote |special-buffers|
|
||||
'buftype' denote |special-buffers|
|
||||
'readonly' will be detected automatically
|
||||
'modified' will be detected automatically
|
||||
|
||||
*:setl* *:setlocal*
|
||||
:setl[ocal][!] ... Like ":set" but set only the value local to the
|
||||
current buffer or window. Not all options have a
|
||||
@@ -372,7 +422,6 @@ used. Thus it does the same as: >
|
||||
Note: In the future more global options can be made |global-local|. Using
|
||||
":setlocal" on a global option might work differently then.
|
||||
|
||||
|
||||
*option-value-function*
|
||||
Some options ('completefunc', 'imactivatefunc', 'imstatusfunc', 'omnifunc',
|
||||
'operatorfunc', 'quickfixtextfunc', 'tagfunc' and 'thesaurusfunc') are set to
|
||||
@@ -403,7 +452,7 @@ Set using a variable with lambda expression: >
|
||||
let &tagfunc = L
|
||||
|
||||
In Vim9 script, in a compiled function, you can use a lambda, but a
|
||||
closured does not work, because the function will be called without the
|
||||
closure does not work, because the function will be called without the
|
||||
context of where it was defined.
|
||||
|
||||
|
||||
@@ -923,6 +972,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'autowriteall' for that.
|
||||
Some buffers will not be written, specifically when 'buftype' is
|
||||
"nowrite", "nofile", "terminal" or "prompt".
|
||||
USE WITH CARE: If you make temporary changes to a buffer that you
|
||||
don't want to be saved this option may cause it to be saved anyway.
|
||||
Renaming the buffer with ":file {name}" may help avoid this.
|
||||
|
||||
*'autowriteall'* *'awa'* *'noautowriteall'* *'noawa'*
|
||||
'autowriteall' 'awa' boolean (default off)
|
||||
@@ -1249,7 +1301,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
\ ' on word "' .. v:beval_text .. '"'
|
||||
endfunction
|
||||
set bexpr=MyBalloonExpr()
|
||||
set ballooneval
|
||||
set ballooneval balloonevalterm
|
||||
<
|
||||
Also see |balloon_show()|, it can be used if the content of the balloon
|
||||
is to be fetched asynchronously. In that case evaluating
|
||||
@@ -1444,7 +1496,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'bufhidden'* *'bh'*
|
||||
'bufhidden' 'bh' string (default: "")
|
||||
local to buffer
|
||||
local to buffer |local-noglobal|
|
||||
This option specifies what happens when a buffer is no longer
|
||||
displayed in a window:
|
||||
<empty> follow the global 'hidden' option
|
||||
@@ -1476,7 +1528,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'buftype'* *'bt'* *E382*
|
||||
'buftype' 'bt' string (default: "")
|
||||
local to buffer
|
||||
local to buffer |local-noglobal|
|
||||
The value of this option specifies the type of a buffer:
|
||||
<empty> normal buffer
|
||||
nofile buffer which is not related to a file and will not be
|
||||
@@ -1545,7 +1597,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
case mapping, the current locale is not effective.
|
||||
This probably only matters for Turkish.
|
||||
|
||||
*'cdhome'* *'cdh'*
|
||||
*'cdhome'* *'cdh'* *'nocdhome'* *'nocdh'*
|
||||
'cdhome' 'cdh' boolean (default: off)
|
||||
global
|
||||
When on, |:cd|, |:tcd| and |:lcd| without an argument changes the
|
||||
@@ -1808,7 +1860,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The screen column can be an absolute number, or a number preceded with
|
||||
'+' or '-', which is added to or subtracted from 'textwidth'. >
|
||||
|
||||
:set cc=+1 " highlight column after 'textwidth'
|
||||
:set cc=+1 " highlight column after 'textwidth'
|
||||
:set cc=+1,+2,+3 " highlight three columns after 'textwidth'
|
||||
:hi ColorColumn ctermbg=lightgrey guibg=lightgrey
|
||||
<
|
||||
@@ -1897,7 +1949,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
'allowrevins' + off no CTRL-_ command
|
||||
'antialias' + off don't use antialiased fonts
|
||||
'arabic' + off reset arabic-related options
|
||||
'arabic' + off reset arabic-related options
|
||||
'arabicshape' + on correct character shapes
|
||||
'backspace' + "" normal backspace
|
||||
'backup' + off no backup file
|
||||
@@ -2509,12 +2561,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*pkzip*
|
||||
zip PkZip compatible method. A weak kind of encryption.
|
||||
Backwards compatible with Vim 7.2 and older.
|
||||
Only use if you need to be backwards compatible.
|
||||
*blowfish*
|
||||
blowfish Blowfish method. Medium strong encryption but it has
|
||||
an implementation flaw. Requires Vim 7.3 or later,
|
||||
files can NOT be read by Vim 7.2 and older. This adds
|
||||
a "seed" to the file, every time you write the file
|
||||
the encrypted bytes will be different.
|
||||
Obsolete, please do no longer use.
|
||||
*blowfish2*
|
||||
blowfish2 Blowfish method. Medium strong encryption. Requires
|
||||
Vim 7.4.401 or later, files can NOT be read by Vim 7.3
|
||||
@@ -2536,11 +2590,21 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
enabled.
|
||||
Encryption of undo files is not yet supported,
|
||||
therefore no undo file will currently be written.
|
||||
CURRENTLY EXPERIMENTAL: Files written with this method
|
||||
CAREFUL: Files written with this method might have to
|
||||
be read back with the same version of Vim if the
|
||||
binary format changes later.
|
||||
Obsolete, please do no longer use.
|
||||
xchacha20v2 Same algorithm as with "xchacha20" that correctly
|
||||
stores the key derivation parameters together with the
|
||||
encrypted file. Should work better in case the
|
||||
parameters in the libsodium library ever change.
|
||||
STILL EXPERIMENTAL: Files written with this method
|
||||
might have to be read back with the same version of
|
||||
Vim if the binary format changes later.
|
||||
|
||||
You should use "blowfish2", also to re-encrypt older files.
|
||||
You should use "blowfish2", also to re-encrypt older files. The
|
||||
"xchacha20" method provides better encryption, but it does not work
|
||||
with all versions of Vim.
|
||||
|
||||
When reading an encrypted file 'cryptmethod' will be set automatically
|
||||
to the detected method of the file being read. Thus if you write it
|
||||
@@ -2792,7 +2856,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When omitted a context of six lines is used.
|
||||
When using zero the context is actually one,
|
||||
since folds require a line in between, also
|
||||
for a deleted line.
|
||||
for a deleted line. Set it to a very large
|
||||
value (999999) to disable folding completely.
|
||||
See |fold-diff|.
|
||||
|
||||
iblank Ignore changes where lines are all blank. Adds
|
||||
@@ -3391,7 +3456,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'filetype'* *'ft'*
|
||||
'filetype' 'ft' string (default: "")
|
||||
local to buffer
|
||||
local to buffer |local-noglobal|
|
||||
When this option is set, the FileType autocommand event is triggered.
|
||||
All autocommands that match with the value of this option will be
|
||||
executed. Thus the value of 'filetype' is used in place of the file
|
||||
@@ -4196,6 +4261,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
T:DiffText,>:SignColumn,-:Conceal,
|
||||
B:SpellBad,P:SpellCap,R:SpellRare,
|
||||
L:SpellLocal,+:Pmenu,=:PmenuSel,
|
||||
[:PmenuKind,]:PmenuKindSel,
|
||||
{:PmenuExtra,}:PmenuExtraSel,
|
||||
x:PmenuSbar,X:PmenuThumb,*:TabLine,
|
||||
#:TabLineSel,_:TabLineFill,!:CursorColumn,
|
||||
.:CursorLine,o:ColorColumn,q:QuickFixLine,
|
||||
@@ -4252,6 +4319,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|hl-SpellLocal| L word from other region |spell|
|
||||
|hl-Pmenu| + popup menu normal line
|
||||
|hl-PmenuSel| = popup menu selected line
|
||||
|hl-PmenuKind| [ popup menu "kind" normal line
|
||||
|hl-PmenuKindSel| ] popup menu "kind" selected line
|
||||
|hl-PmenuExtra| { popup menu "kind" normal line
|
||||
|hl-PmenuExtraSel| } popup menu "kind" selected line
|
||||
|hl-PmenuSbar| x popup menu scrollbar
|
||||
|hl-PmenuThumb| X popup menu scrollbar thumb
|
||||
|
||||
@@ -4851,6 +4922,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Otherwise only one space is inserted.
|
||||
NOTE: This option is set when 'compatible' is set.
|
||||
|
||||
*'jumpoptions'* *'jop'*
|
||||
'jumpoptions' 'jop' string (default "")
|
||||
global
|
||||
List of words that change the behavior of the |jumplist|.
|
||||
stack Make the jumplist behave like the tagstack.
|
||||
Relative location of entries in the jumplist is
|
||||
preserved at the cost of discarding subsequent entries
|
||||
when navigating backwards in the jumplist and then
|
||||
jumping to a location. |jumplist-stack|
|
||||
|
||||
*'key'*
|
||||
'key' string (default "")
|
||||
local to buffer
|
||||
@@ -4865,6 +4946,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"echo &key". This is to avoid showing it to someone who shouldn't
|
||||
know. It also means you cannot see it yourself once you have set it,
|
||||
be careful not to make a typing error!
|
||||
You also cannot use |:set-=|, |:set+=|, |:set^=| on this option to
|
||||
prevent an attacker from guessing substrings in your key.
|
||||
You can use "&key" in an expression to detect whether encryption is
|
||||
enabled. When 'key' is set it returns "*****" (five stars).
|
||||
|
||||
@@ -4909,7 +4992,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
< This means that when 'term' contains "kitty, "foot" or "wezterm"
|
||||
somewhere then the "kitty" protocol is used. When 'term' contains
|
||||
"xterm" somewhere, then the "mok2" protocol is used.
|
||||
"xterm" somewhere, then the "mok2" protocol is used.
|
||||
|
||||
The first match is used, thus if you want to have "kitty" use the
|
||||
kitty protocol, but "badkitty" not, then you should match "badkitty"
|
||||
@@ -4936,6 +5019,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
CSI ?u request kitty keyboard protocol state
|
||||
CSI >c request the termresponse
|
||||
|
||||
If you notice problems, such as characters being displayed that
|
||||
disappear after `CTRL-L`, you might want to try making this option
|
||||
empty. Then set the 'term' option to have it take effect: >
|
||||
set keyprotocol=
|
||||
let &term = &term
|
||||
<
|
||||
|
||||
*'keywordprg'* *'kp'*
|
||||
'keywordprg' 'kp' string (default "man" or "man -s", DOS: ":help",
|
||||
@@ -5193,8 +5282,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
are left blank.
|
||||
*lcs-multispace*
|
||||
multispace:c...
|
||||
One or more characters to use cyclically to show for
|
||||
multiple consecutive spaces. Overrides the "space"
|
||||
One or more characters to use cyclically to show for
|
||||
multiple consecutive spaces. Overrides the "space"
|
||||
setting, except for single spaces. When omitted, the
|
||||
"space" setting is used. For example,
|
||||
`:set listchars=multispace:---+` shows ten consecutive
|
||||
@@ -5536,7 +5625,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'modified'* *'mod'* *'nomodified'* *'nomod'*
|
||||
'modified' 'mod' boolean (default off)
|
||||
local to buffer
|
||||
local to buffer |local-noglobal|
|
||||
When on, the buffer is considered to be modified. This option is set
|
||||
when:
|
||||
1. A change was made to the text since it was last written. Using the
|
||||
@@ -5657,7 +5746,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
The 'mousemodel' option is set by the |:behave| command.
|
||||
|
||||
*'mousemoveevent'* *'mousemev'*
|
||||
*'mousemoveevent'* *'mousemev'* *'nomousemoveevent'* *'nomousemev'*
|
||||
'mousemoveevent' 'mousemev' boolean (default off)
|
||||
global
|
||||
{only works in the GUI}
|
||||
@@ -6107,7 +6196,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'previewwindow'* *'nopreviewwindow'*
|
||||
*'pvw'* *'nopvw'* *E590*
|
||||
'previewwindow' 'pvw' boolean (default off)
|
||||
local to window
|
||||
local to window |local-noglobal|
|
||||
{not available when compiled without the |+quickfix|
|
||||
feature}
|
||||
Identifies the preview window. Only one window can have this option
|
||||
@@ -6302,7 +6391,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'readonly'* *'ro'* *'noreadonly'* *'noro'*
|
||||
'readonly' 'ro' boolean (default off)
|
||||
local to buffer
|
||||
local to buffer |local-noglobal|
|
||||
If on, writes fail unless you use a '!'. Protects you from
|
||||
accidentally overwriting a file. Default on when Vim is started
|
||||
in read-only mode ("vim -R") or when the executable is called "view".
|
||||
@@ -6681,7 +6770,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'scroll'* *'scr'*
|
||||
'scroll' 'scr' number (default: half the window height)
|
||||
local to window
|
||||
local to window |local-noglobal|
|
||||
Number of lines to scroll with CTRL-U and CTRL-D commands. Will be
|
||||
set to half the number of lines in the window when the window size
|
||||
changes. This may happen when enabling the |status-line| or
|
||||
@@ -6693,9 +6782,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'scrollbind'* *'scb'* *'noscrollbind'* *'noscb'*
|
||||
'scrollbind' 'scb' boolean (default off)
|
||||
local to window
|
||||
See also |scroll-binding|. When this option is set, the current
|
||||
window scrolls as other scrollbind windows (windows that also have
|
||||
this option set) scroll. This option is useful for viewing the
|
||||
See also |scroll-binding|. When this option is set, scrolling the
|
||||
current window also scrolls other scrollbind windows (windows that
|
||||
also have this option set). This option is useful for viewing the
|
||||
differences between two versions of a file, see 'diff'.
|
||||
See |'scrollopt'| for options that determine how this option should be
|
||||
interpreted.
|
||||
@@ -7106,57 +7195,61 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
local to buffer
|
||||
Number of spaces to use for each step of (auto)indent. Used for
|
||||
|'cindent'|, |>>|, |<<|, etc.
|
||||
When zero the 'ts' value will be used. Use the |shiftwidth()|
|
||||
When zero the 'tabstop' value will be used. Use the |shiftwidth()|
|
||||
function to get the effective shiftwidth value.
|
||||
|
||||
*'shortmess'* *'shm'*
|
||||
'shortmess' 'shm' string (Vim default "filnxtToOS", Vi default: "S",
|
||||
POSIX default: "AS")
|
||||
global
|
||||
global *E1336*
|
||||
This option helps to avoid all the |hit-enter| prompts caused by file
|
||||
messages, for example with CTRL-G, and to avoid some other messages.
|
||||
It is a list of flags:
|
||||
flag meaning when present ~
|
||||
f use "(3 of 5)" instead of "(file 3 of 5)"
|
||||
i use "[noeol]" instead of "[Incomplete last line]"
|
||||
l use "999L, 888B" instead of "999 lines, 888 bytes"
|
||||
m use "[+]" instead of "[Modified]"
|
||||
n use "[New]" instead of "[New File]"
|
||||
r use "[RO]" instead of "[readonly]"
|
||||
w use "[w]" instead of "written" for file write message
|
||||
f use "(3 of 5)" instead of "(file 3 of 5)" *shm-f*
|
||||
i use "[noeol]" instead of "[Incomplete last line]" *shm-i*
|
||||
l use "999L, 888B" instead of "999 lines, 888 bytes" *shm-l*
|
||||
m use "[+]" instead of "[Modified]" *shm-m*
|
||||
n use "[New]" instead of "[New File]" *shm-n*
|
||||
r use "[RO]" instead of "[readonly]" *shm-r*
|
||||
w use "[w]" instead of "written" for file write message *shm-w*
|
||||
and "[a]" instead of "appended" for ':w >> file' command
|
||||
x use "[dos]" instead of "[dos format]", "[unix]" instead of
|
||||
"[unix format]" and "[mac]" instead of "[mac format]".
|
||||
a all of the above abbreviations
|
||||
x use "[dos]" instead of "[dos format]", "[unix]" *shm-x*
|
||||
instead of "[unix format]" and "[mac]" instead of "[mac
|
||||
format]"
|
||||
a all of the above abbreviations *shm-a*
|
||||
|
||||
o overwrite message for writing a file with subsequent message
|
||||
for reading a file (useful for ":wn" or when 'autowrite' on)
|
||||
O message for reading a file overwrites any previous message.
|
||||
Also for quickfix message (e.g., ":cn").
|
||||
s don't give "search hit BOTTOM, continuing at TOP" or "search
|
||||
hit TOP, continuing at BOTTOM" messages; when using the search
|
||||
count do not show "W" after the count message (see S below)
|
||||
t truncate file message at the start if it is too long to fit
|
||||
on the command-line, "<" will appear in the left most column.
|
||||
Ignored in Ex mode.
|
||||
T truncate other messages in the middle if they are too long to
|
||||
fit on the command line. "..." will appear in the middle.
|
||||
Ignored in Ex mode.
|
||||
W don't give "written" or "[w]" when writing a file
|
||||
A don't give the "ATTENTION" message when an existing swap file
|
||||
is found.
|
||||
I don't give the intro message when starting Vim |:intro|.
|
||||
c don't give |ins-completion-menu| messages. For example,
|
||||
"-- XXX completion (YYY)", "match 1 of 2", "The only match",
|
||||
"Pattern not found", "Back at original", etc.
|
||||
C don't give messages while scanning for ins-completion items,
|
||||
for instance "scanning tags"
|
||||
q use "recording" instead of "recording @a"
|
||||
F don't give the file info when editing a file, like `:silent`
|
||||
was used for the command; note that this also affects messages
|
||||
from autocommands
|
||||
S do not show search count message when searching, e.g.
|
||||
"[1/5]"
|
||||
o overwrite message for writing a file with subsequent *shm-o*
|
||||
message for reading a file (useful for ":wn" or when
|
||||
'autowrite' on)
|
||||
O message for reading a file overwrites any previous *shm-O*
|
||||
message; also for quickfix message (e.g., ":cn")
|
||||
s don't give "search hit BOTTOM, continuing at TOP" or *shm-s*
|
||||
"search hit TOP, continuing at BOTTOM" messages; when using
|
||||
the search count do not show "W" after the count message (see
|
||||
S below)
|
||||
t truncate file message at the start if it is too long *shm-t*
|
||||
to fit on the command-line, "<" will appear in the left most
|
||||
column; ignored in Ex mode
|
||||
T truncate other messages in the middle if they are too *shm-T*
|
||||
long to fit on the command line; "..." will appear in the
|
||||
middle; ignored in Ex mode
|
||||
W don't give "written" or "[w]" when writing a file *shm-W*
|
||||
A don't give the "ATTENTION" message when an existing *shm-A*
|
||||
swap file is found
|
||||
I don't give the intro message when starting Vim, *shm-I*
|
||||
see |:intro|
|
||||
c don't give |ins-completion-menu| messages; for *shm-c*
|
||||
example, "-- XXX completion (YYY)", "match 1 of 2", "The only
|
||||
match", "Pattern not found", "Back at original", etc.
|
||||
C don't give messages while scanning for ins-completion *shm-C*
|
||||
items, for instance "scanning tags"
|
||||
q use "recording" instead of "recording @a" *shm-q*
|
||||
F don't give the file info when editing a file, like *shm-F*
|
||||
`:silent` was used for the command; note that this also
|
||||
affects messages from autocommands
|
||||
S do not show search count message when searching, e.g. *shm-S*
|
||||
"[1/5]"
|
||||
|
||||
This gives you the opportunity to avoid that a change between buffers
|
||||
requires you to hit <Enter>, but still gives as useful a message as
|
||||
@@ -7216,9 +7309,26 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
- When selecting more than one line, the number of lines.
|
||||
- When selecting a block, the size in screen characters:
|
||||
{lines}x{columns}.
|
||||
This information can be displayed in an alternative location using the
|
||||
'showcmdloc' option.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
*'showcmdloc'* *'sloc'*
|
||||
'showcmdloc' 'sloc' string (default "last")
|
||||
global
|
||||
This option can be used to display the (partially) entered command in
|
||||
another location. Possible values are:
|
||||
last Last line of the screen (default).
|
||||
statusline Status line of the current window.
|
||||
tabline First line of the screen if 'showtabline' is enabled.
|
||||
Setting this option to "statusline" or "tabline" means that these will
|
||||
be redrawn whenever the command changes, which can be on every key
|
||||
pressed.
|
||||
The %S 'statusline' item can be used in 'statusline' or 'tabline' to
|
||||
place the text. Without a custom 'statusline' or 'tabline' it will be
|
||||
displayed in a convenient location.
|
||||
|
||||
*'showfulltag'* *'sft'* *'noshowfulltag'* *'nosft'*
|
||||
'showfulltag' 'sft' boolean (default off)
|
||||
global
|
||||
@@ -7316,9 +7426,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not available when compiled without the |+signs|
|
||||
feature}
|
||||
Whether or not to draw the signcolumn. Valid values are:
|
||||
"auto" only when there is a sign to display
|
||||
"no" never
|
||||
"yes" always
|
||||
"auto" only when there is a sign to display
|
||||
"no" never
|
||||
"yes" always
|
||||
"number" display signs in the 'number' column. If the number
|
||||
column is not present, then behaves like "auto".
|
||||
|
||||
@@ -7384,6 +7494,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
line in the window wraps part of it may not be visible, as if it is
|
||||
above the window. "<<<" is displayed at the start of the first line,
|
||||
highlighted with |hl-NonText|.
|
||||
You may also want to add "lastline" to the 'display' option to show as
|
||||
much of the last line as possible.
|
||||
NOTE: only partly implemented, currently works with CTRL-E, CTRL-Y
|
||||
and scrolling with the mouse.
|
||||
|
||||
@@ -7622,11 +7734,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global
|
||||
When "on" the commands listed below move the cursor to the first
|
||||
non-blank of the line. When off the cursor is kept in the same column
|
||||
(if possible). This applies to the commands: CTRL-D, CTRL-U, CTRL-B,
|
||||
CTRL-F, "G", "H", "M", "L", gg, and to the commands "d", "<<" and ">>"
|
||||
with a linewise operator, with "%" with a count and to buffer changing
|
||||
commands (CTRL-^, :bnext, :bNext, etc.). Also for an Ex command that
|
||||
only has a line number, e.g., ":25" or ":+".
|
||||
(if possible). This applies to the commands:
|
||||
- CTRL-D, CTRL-U, CTRL-B, CTRL-F, "G", "H", "M", "L", "gg"
|
||||
- "d", "<<" and ">>" with a linewise operator
|
||||
- "%" with a count
|
||||
- buffer changing commands (CTRL-^, :bnext, :bNext, etc.)
|
||||
- Ex commands that only has a line number, e.g., ":25" or ":+".
|
||||
In case of buffer changing commands the cursor is placed at the column
|
||||
where it was the last time the buffer was edited.
|
||||
NOTE: This option is set when 'compatible' is set.
|
||||
@@ -7657,6 +7770,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
When there is error while evaluating the option then it will be made
|
||||
empty to avoid further errors. Otherwise screen updating would loop.
|
||||
When the result contains unprintable characters the result is
|
||||
unpredictable.
|
||||
|
||||
Note that the only effect of 'ruler' when this option is set (and
|
||||
'laststatus' is 2) is controlling the output of |CTRL-G|.
|
||||
@@ -7716,6 +7831,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
P S Percentage through file of displayed window. This is like the
|
||||
percentage described for 'ruler'. Always 3 in length, unless
|
||||
translated.
|
||||
S S 'showcmd' content, see 'showcmdloc'.
|
||||
a S Argument list status as in default title. ({current} of {max})
|
||||
Empty if the argument file count is zero or one.
|
||||
{ NF Evaluate expression between '%{' and '}' and substitute result.
|
||||
@@ -7744,7 +7860,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
mark. This information is used for mouse clicks.
|
||||
< - Where to truncate line if too long. Default is at the start.
|
||||
No width fields allowed.
|
||||
= - Separation point between left and right aligned items.
|
||||
= - Separation point between alignment sections. Each section will
|
||||
be separated by an equal number of spaces. With one %= what
|
||||
comes after it will be right-aligned. With two %= there is a
|
||||
middle part, with white space left and right of it.
|
||||
No width fields allowed.
|
||||
# - Set highlight group. The name must follow and then a # again.
|
||||
Thus use %#HLname# for highlight group HLname. The same
|
||||
@@ -7752,8 +7871,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
windows.
|
||||
* - Set highlight group to User{N}, where {N} is taken from the
|
||||
minwid field, e.g. %1*. Restore normal highlight with %* or %0*.
|
||||
The difference between User{N} and StatusLine will be applied
|
||||
to StatusLineNC for the statusline of non-current windows.
|
||||
The difference between User{N} and StatusLine will be applied to
|
||||
StatusLineNC for the statusline of non-current windows.
|
||||
The number N must be between 1 and 9. See |hl-User1..9|
|
||||
|
||||
When displaying a flag, Vim removes the leading comma, if any, when
|
||||
@@ -7874,16 +7993,18 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'switchbuf' 'swb' string (default "")
|
||||
global
|
||||
This option controls the behavior when switching between buffers.
|
||||
Mostly for |quickfix| commands some values are also used for other
|
||||
commands, as mentioned below.
|
||||
This option is checked, when
|
||||
- jumping to errors with the |quickfix| commands (|:cc|, |:cn|, |:cp|,
|
||||
etc.)
|
||||
- jumping to a tag using the |:stag| command.
|
||||
- opening a file using the |CTRL-W_f| or |CTRL-W_F| command.
|
||||
- jumping to a buffer using a buffer split command (e.g. |:sbuffer|,
|
||||
|:sbnext|, or |:sbrewind|).
|
||||
Possible values (comma-separated list):
|
||||
useopen If included, jump to the first open window that
|
||||
contains the specified buffer (if there is one).
|
||||
Otherwise: Do not examine other windows.
|
||||
This setting is checked with |quickfix| commands, when
|
||||
jumping to errors (":cc", ":cn", "cp", etc.). It is
|
||||
also used in all buffer related split commands, for
|
||||
example ":sbuffer", ":sbnext", or ":sbrewind".
|
||||
useopen If included, jump to the first open window in the
|
||||
current tab page that contains the specified buffer
|
||||
(if there is one). Otherwise: Do not examine other
|
||||
windows.
|
||||
usetab Like "useopen", but also consider windows in other tab
|
||||
pages.
|
||||
split If included, split the current window before loading
|
||||
@@ -7911,7 +8032,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'syntax'* *'syn'*
|
||||
'syntax' 'syn' string (default empty)
|
||||
local to buffer
|
||||
local to buffer |local-noglobal|
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
When this option is set, the syntax with this name is loaded, unless
|
||||
@@ -7985,13 +8106,25 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
(or 3 or whatever you prefer) and use 'noexpandtab'. Then Vim
|
||||
will use a mix of tabs and spaces, but typing <Tab> and <BS> will
|
||||
behave like a tab appears every 4 (or 3) characters.
|
||||
2. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use
|
||||
This is the recommended way, the file will look the same with other
|
||||
tools and when listing it in a terminal.
|
||||
2. Set 'softtabstop' and 'shiftwidth' to whatever you prefer and use
|
||||
'expandtab'. This way you will always insert spaces. The
|
||||
formatting will never be messed up when 'tabstop' is changed (leave
|
||||
it at 8 just in case). The file will be a bit larger.
|
||||
You do need to check if no Tabs exist in the file. You can get rid
|
||||
of them by first setting 'expandtab' and using `%retab!`, making
|
||||
sure the value of 'tabstop' is set correctly.
|
||||
3. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use
|
||||
'expandtab'. This way you will always insert spaces. The
|
||||
formatting will never be messed up when 'tabstop' is changed.
|
||||
3. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use a
|
||||
You do need to check if no Tabs exist in the file, just like in the
|
||||
item just above.
|
||||
4. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use a
|
||||
|modeline| to set these values when editing the file again. Only
|
||||
works when using Vim to edit the file.
|
||||
4. Always set 'tabstop' and 'shiftwidth' to the same value, and
|
||||
works when using Vim to edit the file, other tools assume a tabstop
|
||||
is worth 8 spaces.
|
||||
5. Always set 'tabstop' and 'shiftwidth' to the same value, and
|
||||
'noexpandtab'. This should then work (for initial indents only)
|
||||
for any tabstop setting that people use. It might be nice to have
|
||||
tabs after the first non-blank inserted as spaces if you do this
|
||||
@@ -8097,8 +8230,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|+emacs_tags|: "./tags,./TAGS,tags,TAGS")
|
||||
global or local to buffer |global-local|
|
||||
Filenames for the tag command, separated by spaces or commas. To
|
||||
include a space or comma in a file name, precede it with a backslash
|
||||
(see |option-backslash| about including spaces and backslashes).
|
||||
include a space or comma in a file name, precede it with backslashes
|
||||
(see |option-backslash| about including spaces/commas and backslashes).
|
||||
When a file name starts with "./", the '.' is replaced with the path
|
||||
of the current file. But only when the 'd' flag is not included in
|
||||
'cpoptions'. Environment variables are expanded |:set_env|. Also see
|
||||
@@ -8199,7 +8332,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
:set encoding=utf-8
|
||||
< You need to do this when your system has no locale support for UTF-8.
|
||||
|
||||
*'termguicolors'* *'tgc'* *E954*
|
||||
*'termguicolors'* *'tgc'* *'notermguicolors'* *'notgc'* *E954*
|
||||
'termguicolors' 'tgc' boolean (default off)
|
||||
global
|
||||
{not available when compiled without the
|
||||
@@ -8647,6 +8780,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
set to a name that starts with "xterm", "mlterm", "screen", "tmux",
|
||||
"st" (full match only), "st-" or "stterm", and 'ttymouse' is not set
|
||||
already.
|
||||
If the terminfo/termcap entry "XM" exists and the first number is
|
||||
"1006" then 'ttymouse' will be set to "sgr". This works for many
|
||||
modern terminals.
|
||||
Additionally, if vim is compiled with the |+termresponse| feature and
|
||||
|t_RV| is set to the escape sequence to request the xterm version
|
||||
number, more intelligent detection is done.
|
||||
@@ -8836,11 +8972,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
displayed when 'verbosefile' is set.
|
||||
|
||||
*'viewdir'* *'vdir'*
|
||||
'viewdir' 'vdir' string (default for Amiga and Win32:
|
||||
"$VIM/vimfiles/view",
|
||||
for Unix: "~/.vim/view",
|
||||
for macOS: "$VIM:vimfiles:view"
|
||||
for VMS: "sys$login:vimfiles/view")
|
||||
'viewdir' 'vdir' string (default for Amiga "home:vimfiles/view",
|
||||
for Win32: "$HOME/vimfiles/view",
|
||||
for Unix: "$HOME/.vim/view",
|
||||
for macOS: "$VIM/vimfiles/view"
|
||||
for VMS: "sys$login:vimfiles/view")
|
||||
global
|
||||
{not available when compiled without the |+mksession|
|
||||
feature}
|
||||
@@ -9344,7 +9480,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'winfixheight'* *'wfh'* *'nowinfixheight'* *'nowfh'*
|
||||
'winfixheight' 'wfh' boolean (default off)
|
||||
local to window
|
||||
local to window |local-noglobal|
|
||||
Keep the window height when windows are opened or closed and
|
||||
'equalalways' is set. Also for |CTRL-W_=|. Set by default for the
|
||||
|preview-window| and |quickfix-window|.
|
||||
@@ -9352,7 +9488,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'winfixwidth'* *'wfw'* *'nowinfixwidth'* *'nowfw'*
|
||||
'winfixwidth' 'wfw' boolean (default off)
|
||||
local to window
|
||||
local to window |local-noglobal|
|
||||
Keep the window width when windows are opened or closed and
|
||||
'equalalways' is set. Also for |CTRL-W_=|.
|
||||
The width may be changed anyway when running out of room.
|
||||
|
||||
@@ -10,7 +10,7 @@ This file contains the particulars for the z/OS UNIX version of Vim.
|
||||
2. Putty and Colors |zOS-PuTTY|
|
||||
3. Motif Problems |zOS-Motif|
|
||||
4. Bugs |zOS-Bugs|
|
||||
5. Limitations |zOS-limitations|
|
||||
5. Limitations |zOS-limitations|
|
||||
6. Open source on z/OS UNIX |zOS-open-source|
|
||||
|
||||
Contributors: ~
|
||||
@@ -75,7 +75,7 @@ There is no solution for this yet.
|
||||
this occurs in both the terminal and gui versions.
|
||||
|
||||
==============================================================================
|
||||
5. Limitations *OS390-limitations* *zOS-limitations*
|
||||
5. Limitations *OS390-limitations* *zOS-limitations*
|
||||
|
||||
- No binary search in tag files.
|
||||
The program /bin/sort sorts by ASCII value by default. This program is
|
||||
|
||||
@@ -203,7 +203,7 @@ You can check that everything is at the right place with the :version command.
|
||||
|
||||
Example LOGIN.COM: >
|
||||
|
||||
$ define/nolog VIM DKA0:[UTIL.VIM81]
|
||||
$ define/nolog VIM DKA0:[UTIL.VIM81]
|
||||
$ vi*m :== mcr VIM:VIM.EXE
|
||||
$ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40
|
||||
$ set disp/create/node=192.168.10.202/trans=tcpip
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 9.0. Last change: 2022 Sep 24
|
||||
*pattern.txt* For Vim version 9.0. Last change: 2023 Feb 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -101,6 +101,8 @@ g# Like "#", but don't put "\<" and "\>" around the word.
|
||||
*gd*
|
||||
gd Goto local Declaration. When the cursor is on a local
|
||||
variable, this command will jump to its declaration.
|
||||
This was made to work for C code, in other languages
|
||||
it may not work well.
|
||||
First Vim searches for the start of the current
|
||||
function, just like "[[". If it is not found the
|
||||
search stops in line 1. If it is found, Vim goes back
|
||||
@@ -1078,7 +1080,7 @@ match ASCII characters, as indicated by the range.
|
||||
|
||||
\(\) A pattern enclosed by escaped parentheses. */\(* */\(\)* */\)*
|
||||
E.g., "\(^a\)" matches 'a' at the start of a line.
|
||||
There can only be ten of these. You can use "\%(" to add more, but
|
||||
There can only be nine of these. You can use "\%(" to add more, but
|
||||
not counting it as a sub-expression.
|
||||
*E51* *E54* *E55* *E872* *E873*
|
||||
|
||||
@@ -1142,21 +1144,21 @@ x A single character, with no special meaning, matches itself
|
||||
are supported:
|
||||
Name Func Contents ~
|
||||
*[:alnum:]* [:alnum:] isalnum ASCII letters and digits
|
||||
*[:alpha:]* [:alpha:] isalpha ASCII letters
|
||||
*[:blank:]* [:blank:] space and tab
|
||||
*[:cntrl:]* [:cntrl:] iscntrl ASCII control characters
|
||||
*[:digit:]* [:digit:] decimal digits '0' to '9'
|
||||
*[:alpha:]* [:alpha:] isalpha ASCII letters
|
||||
*[:blank:]* [:blank:] space and tab
|
||||
*[:cntrl:]* [:cntrl:] iscntrl ASCII control characters
|
||||
*[:digit:]* [:digit:] decimal digits '0' to '9'
|
||||
*[:graph:]* [:graph:] isgraph ASCII printable characters excluding
|
||||
space
|
||||
*[:lower:]* [:lower:] (1) lowercase letters (all letters when
|
||||
'ignorecase' is used)
|
||||
*[:print:]* [:print:] (2) printable characters including space
|
||||
*[:print:]* [:print:] (2) printable characters including space
|
||||
*[:punct:]* [:punct:] ispunct ASCII punctuation characters
|
||||
*[:space:]* [:space:] whitespace characters: space, tab, CR,
|
||||
*[:space:]* [:space:] whitespace characters: space, tab, CR,
|
||||
NL, vertical tab, form feed
|
||||
*[:upper:]* [:upper:] (3) uppercase letters (all letters when
|
||||
'ignorecase' is used)
|
||||
*[:xdigit:]* [:xdigit:] hexadecimal digits: 0-9, a-f, A-F
|
||||
*[:xdigit:]* [:xdigit:] hexadecimal digits: 0-9, a-f, A-F
|
||||
*[:return:]* [:return:] the <CR> character
|
||||
*[:tab:]* [:tab:] the <Tab> character
|
||||
*[:escape:]* [:escape:] the <Esc> character
|
||||
|
||||
@@ -24,7 +24,7 @@ get the latest versions of scripts listed therein from http://vim.sf.net/.
|
||||
|
||||
==============================================================================
|
||||
1. Contents *glvs-contents* *glvs* *getscript*
|
||||
*GetLatestVimScripts*
|
||||
*GetLatestVimScripts*
|
||||
|
||||
1. Contents........................................: |glvs-contents|
|
||||
2. GetLatestVimScripts -- Getting Started..........: |glvs-install|
|
||||
@@ -116,7 +116,7 @@ reflect the latest version of script(s) so downloaded.
|
||||
|
||||
==============================================================================
|
||||
4. GetLatestVimScripts Data File *getscript-data* *glvs-data*
|
||||
*:GetLatestVimScripts_dat*
|
||||
*:GetLatestVimScripts_dat*
|
||||
The data file <GetLatestVimScripts.dat> must have for its first two lines
|
||||
the following text:
|
||||
>
|
||||
@@ -330,7 +330,7 @@ after/syntax/c.vim contained in it to overwrite a user's c.vim.
|
||||
This variable holds the options to be used with the
|
||||
g:GetLatestVimScripts_wget command.
|
||||
>
|
||||
g:GetLatestVimScripts_allowautoinstall
|
||||
g:GetLatestVimScripts_allowautoinstall
|
||||
< default= 1
|
||||
This variable indicates whether GetLatestVimScripts is allowed
|
||||
to attempt to automatically install scripts. Furthermore, the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 9.0. Last change: 2022 Apr 06
|
||||
*pi_netrw.txt* For Vim version 9.0. Last change: 2023 May 14
|
||||
|
||||
------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||
@@ -208,7 +208,7 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2
|
||||
http: g:netrw_http_cmd = "links" elseif links is available
|
||||
http: g:netrw_http_cmd = "curl" elseif curl is available
|
||||
http: g:netrw_http_cmd = "wget" elseif wget is available
|
||||
http: g:netrw_http_cmd = "fetch" elseif fetch is available
|
||||
http: g:netrw_http_cmd = "fetch" elseif fetch is available
|
||||
http: *g:netrw_http_put_cmd* = "curl -T"
|
||||
rcp: *g:netrw_rcp_cmd* = "rcp"
|
||||
rsync: *g:netrw_rsync_cmd* = "rsync" (see |g:netrw_rsync_sep|)
|
||||
@@ -1085,8 +1085,8 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
<c-tab> Shrink/expand a netrw/explore window |netrw-c-tab|
|
||||
- Makes Netrw go up one directory |netrw--|
|
||||
a Cycles between normal display, |netrw-a|
|
||||
hiding (suppress display of files matching g:netrw_list_hide)
|
||||
and showing (display only files which match g:netrw_list_hide)
|
||||
hiding (suppress display of files matching g:netrw_list_hide)
|
||||
and showing (display only files which match g:netrw_list_hide)
|
||||
cd Make browsing directory the current directory |netrw-cd|
|
||||
C Setting the editing window |netrw-C|
|
||||
d Make a directory |netrw-d|
|
||||
@@ -1118,7 +1118,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
mX Apply arbitrary shell command to marked files en bloc|netrw-mX|
|
||||
mz Compress/decompress marked files |netrw-mz|
|
||||
o Enter the file/directory under the cursor in a new |netrw-o|
|
||||
browser window. A horizontal split is used.
|
||||
browser window. A horizontal split is used.
|
||||
O Obtain a file specified by cursor |netrw-O|
|
||||
p Preview the file |netrw-p|
|
||||
P Browse in the previously used window |netrw-P|
|
||||
@@ -1134,7 +1134,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
||||
u Change to recently-visited directory |netrw-u|
|
||||
U Change to subsequently-visited directory |netrw-U|
|
||||
v Enter the file/directory under the cursor in a new |netrw-v|
|
||||
browser window. A vertical split is used.
|
||||
browser window. A vertical split is used.
|
||||
x View file with an associated program |netrw-x|
|
||||
X Execute filename under cursor via |system()| |netrw-X|
|
||||
|
||||
@@ -2271,7 +2271,7 @@ Example:
|
||||
...
|
||||
|
||||
|
||||
MARKED FILES, ARBITRARY SHELL COMMAND, EN BLOC *netrw-mX* {{{2
|
||||
MARKED FILES, ARBITRARY SHELL COMMAND, EN BLOC *netrw-mX* {{{2
|
||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||
(uses the global marked-file list)
|
||||
|
||||
@@ -2620,7 +2620,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
Used to change access permission for a file.
|
||||
|
||||
*g:netrw_clipboard* =1
|
||||
By default, netrw will attempt to insure that
|
||||
By default, netrw will attempt to insure that
|
||||
the clipboard's values will remain unchanged.
|
||||
However, some users report that they have
|
||||
speed problems with this; consequently, this
|
||||
@@ -2768,7 +2768,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
escaped before applying glob()
|
||||
|
||||
*g:netrw_gx* ="<cfile>"
|
||||
This option controls how gx (|netrw-gx|) picks
|
||||
This option controls how gx (|netrw-gx|) picks
|
||||
up the text under the cursor. See |expand()|
|
||||
for possibilities.
|
||||
|
||||
@@ -2834,11 +2834,11 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
directory (|netrw-mt|, |netrw-mc|)
|
||||
|
||||
*g:netrw_localcopycmdopt* ='' Linux/Unix/MacOS/Cygwin
|
||||
=' \c copy' Windows
|
||||
=' \c copy' Windows
|
||||
Options for the |g:netrw_localcopycmd|
|
||||
|
||||
*g:netrw_localcopydircmd* ="cp" Linux/Unix/MacOS/Cygwin
|
||||
=expand("$COMSPEC") Windows
|
||||
=expand("$COMSPEC") Windows
|
||||
Copies directories to target directory.
|
||||
(|netrw-mc|, |netrw-mt|)
|
||||
|
||||
@@ -2864,17 +2864,13 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
Options for |g:netrw_localmovecmd|
|
||||
|
||||
*g:netrw_localrmdir* ="rmdir" Linux/Unix/MacOS/Cygwin
|
||||
=expand("$COMSPEC") Windows
|
||||
=expand("$COMSPEC") Windows
|
||||
Remove directory command (rmdir)
|
||||
This variable is only used if your vim is
|
||||
earlier than 7.4 or if your vim doesn't
|
||||
have patch#1107. Otherwise, |delete()|
|
||||
is used with the "d" option.
|
||||
|
||||
*g:netrw_localrmdiropt* ="" Linux/Unix/MacOS/Cygwin
|
||||
=" /c rmdir" Windows
|
||||
Options for |g:netrw_localrmdir|
|
||||
|
||||
*g:netrw_maxfilenamelen* =32 by default, selected so as to make long
|
||||
listings fit on 80 column displays.
|
||||
If your screen is wider, and you have file
|
||||
@@ -2900,10 +2896,10 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
(see |'ballooneval'|)
|
||||
|
||||
*g:netrw_sizestyle* not defined: actual bytes (default)
|
||||
="b" : actual bytes (default)
|
||||
="h" : human-readable (ex. 5k, 4m, 3g)
|
||||
="b" : actual bytes (default)
|
||||
="h" : human-readable (ex. 5k, 4m, 3g)
|
||||
uses 1000 base
|
||||
="H" : human-readable (ex. 5K, 4M, 3G)
|
||||
="H" : human-readable (ex. 5K, 4M, 3G)
|
||||
uses 1024 base
|
||||
The long listing (|netrw-i|) and query-file
|
||||
maps (|netrw-qf|) will display file size
|
||||
@@ -2951,7 +2947,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
default: "NETRWSERVER"
|
||||
|
||||
*g:netrw_sort_by* sort by "name", "time", "size", or
|
||||
"exten".
|
||||
"exten".
|
||||
default: "name"
|
||||
|
||||
*g:netrw_sort_direction* sorting direction: "normal" or "reverse"
|
||||
@@ -3008,7 +3004,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
.vim/after/syntax/netrw.vim.
|
||||
< The netrwGray highlighting is set up by
|
||||
netrw when >
|
||||
* netrwGray has not been previously
|
||||
* netrwGray has not been previously
|
||||
defined
|
||||
* the gui is running
|
||||
< As an example, I myself use a dark-background
|
||||
@@ -3266,7 +3262,7 @@ If there are marked files: (see |netrw-mf|)
|
||||
name, applying that substitute, and renaming each file to the result.
|
||||
As an example : >
|
||||
|
||||
mr [query: reply with *.c]
|
||||
mr [query: reply with *.c]
|
||||
R [query: reply with s/^\(.*\)\.c$/\1.cpp/]
|
||||
<
|
||||
This example will mark all *.c files and then rename them to *.cpp
|
||||
@@ -3275,7 +3271,7 @@ If there are marked files: (see |netrw-mf|)
|
||||
|
||||
The ctrl-X character has special meaning for renaming files: >
|
||||
|
||||
<c-x> : a single ctrl-x tells netrw to ignore the portion of the response
|
||||
<c-x> : a single ctrl-x tells netrw to ignore the portion of the response
|
||||
lying between the last '/' and the ctrl-x.
|
||||
|
||||
<c-x><c-x> : a pair of contiguous ctrl-x's tells netrw to ignore any
|
||||
@@ -3843,7 +3839,7 @@ netrw:
|
||||
Decho.vim is provided as a "vimball"; see |vimball-intro|. You
|
||||
should edit the Decho.vba.gz file and source it in: >
|
||||
|
||||
vim Decho.vba.gz
|
||||
vim Decho.vba.gz
|
||||
:so %
|
||||
:q
|
||||
<
|
||||
@@ -3885,7 +3881,7 @@ netrw:
|
||||
To save the file: under linux, the output will be in a separate
|
||||
remote server window; in it, just save the file with >
|
||||
|
||||
:w! DBG
|
||||
:w! DBG
|
||||
|
||||
< Under a vim that doesn't support clientserver, your debugging
|
||||
output will appear in another tab: >
|
||||
@@ -3911,6 +3907,8 @@ netrw:
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
v172: Apr 22, 2023 * removed g:netrw_localrmdiropt
|
||||
removed g:netrw_localrmdir
|
||||
v171: Oct 09, 2020 * included code in s:NetrwOptionsSafe()
|
||||
to allow |'bh'| to be set to delete when
|
||||
rather than hide when g:netrw_fastbrowse
|
||||
@@ -3995,8 +3993,10 @@ netrw:
|
||||
Nov 09, 2016 * Broke apart the command from the options,
|
||||
mostly for Windows. Introduced new netrw
|
||||
settings: |g:netrw_localcopycmdopt|
|
||||
|g:netrw_localcopydircmdopt| |g:netrw_localmkdiropt|
|
||||
|g:netrw_localmovecmdopt| |g:netrw_localrmdiropt|
|
||||
|g:netrw_localcopydircmdopt|
|
||||
|g:netrw_localmkdiropt|
|
||||
|g:netrw_localmovecmdopt|
|
||||
g:netrw_localrmdiropt
|
||||
Nov 21, 2016 * (mattn) provided a patch for preview; swapped
|
||||
winwidth() with winheight()
|
||||
Nov 22, 2016 * (glacambre) reported that files containing
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_zip.txt* For Vim version 9.0. Last change: 2022 Oct 17
|
||||
*pi_zip.txt* For Vim version 9.0. Last change: 2023 Mar 12
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
@@ -102,6 +102,7 @@ Copyright: Copyright (C) 2005-2015 Charles E Campbell *zip-copyright*
|
||||
|
||||
==============================================================================
|
||||
4. History *zip-history* {{{1
|
||||
v33 Dec 07, 2021 * *.xlam mentioned twice in zipPlugin
|
||||
v32 Oct 22, 2021 * to avoid an issue with a vim 8.2 patch, zipfile: has
|
||||
been changed to zipfile:// . This often shows up
|
||||
as zipfile:/// with zipped files that are root-based.
|
||||
|
||||
@@ -770,7 +770,7 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
cursorline TRUE: Highlight the cursor line. Also scrolls the
|
||||
text to show this line (only works properly
|
||||
when 'wrap' is off).
|
||||
zero: Do not highlight the cursor line.
|
||||
zero: Do not highlight the cursor line.
|
||||
Default is zero, except for |popup_menu()|.
|
||||
filter A callback that can filter typed characters, see
|
||||
|popup-filter|.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 9.0. Last change: 2022 Sep 26
|
||||
*quickfix.txt* For Vim version 9.0. Last change: 2023 Jan 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -365,8 +365,6 @@ processing a quickfix or location list command, it will be aborted.
|
||||
If numbers [from] and/or [to] are given, the respective
|
||||
range of errors is listed. A negative number counts
|
||||
from the last error backwards, -1 being the last error.
|
||||
The 'switchbuf' settings are respected when jumping
|
||||
to a buffer.
|
||||
The |:filter| command can be used to display only the
|
||||
quickfix entries matching a supplied pattern. The
|
||||
pattern is matched against the filename, module name,
|
||||
@@ -1273,6 +1271,21 @@ not "b:current_compiler". What the command actually does is the following:
|
||||
For writing a compiler plugin, see |write-compiler-plugin|.
|
||||
|
||||
|
||||
DOTNET *compiler-dotnet*
|
||||
|
||||
The .NET CLI compiler outputs both errors and warnings by default. The output
|
||||
may be limited to include only errors, by setting the g:dotnet_errors_only
|
||||
variable to |v:true|.
|
||||
|
||||
The associated project name is included in each error and warning. To suppress
|
||||
the project name, set the g:dotnet_show_project_file variable to |v:false|.
|
||||
|
||||
Example: limit output to only display errors, and suppress the project name: >
|
||||
let dotnet_errors_only = v:true
|
||||
let dotnet_show_project_file = v:false
|
||||
compiler dotnet
|
||||
<
|
||||
|
||||
GCC *quickfix-gcc* *compiler-gcc*
|
||||
|
||||
There's one variable you can set for the GCC compiler:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user