mirror of
https://github.com/macvim-dev/macvim.git
synced 2026-05-28 00:21:57 +02:00
Compare commits
302 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a914f7d905 | |||
| a2efcc4e0e | |||
| acbc24e693 | |||
| 23bfbcb797 | |||
| e32a8f0ace | |||
| a9a480862c | |||
| 2c85ee38a5 | |||
| c66e217f33 | |||
| 78997dd9ef | |||
| 7f936da91c | |||
| 5fe4915e30 | |||
| 9e50ec2e90 | |||
| 69f47b4a0c | |||
| 26a7f66364 | |||
| a1024b19ea | |||
| cf6ae55400 | |||
| b2ebf7c277 | |||
| c72a3758a9 | |||
| 960c755f2f | |||
| de489086dd | |||
| c901b52c08 | |||
| f1be92c811 | |||
| 6eb9338757 | |||
| 13510d9153 | |||
| d77012934a | |||
| 2d7f1279c8 | |||
| dca6f03f01 | |||
| 53ec8158c3 | |||
| 065efdcb23 | |||
| 672ee036f6 | |||
| 89b6b3bf5f | |||
| e6df0dd645 | |||
| a88e58f6e2 | |||
| 9bce6ce276 | |||
| 64bbf477d0 | |||
| 84cf08594c | |||
| 40546c34f4 | |||
| fdbce8b6e7 | |||
| a162ddc680 | |||
| cebc2eb063 | |||
| 3a032a4b39 | |||
| 8ce9a8785f | |||
| 8fa56bd765 | |||
| 54b2b3cf5e | |||
| 2e43d084ee | |||
| 7d66bb5e2a | |||
| 05c65fc201 | |||
| 9784a17de9 | |||
| b491089907 | |||
| e9dd1852ea | |||
| 6e71ef1f6d | |||
| b802b6e322 | |||
| d10420e2db | |||
| 8312d799a4 | |||
| c388368a14 | |||
| 5f19dd4ae5 | |||
| c19bca2199 | |||
| 31c1fcc6b2 | |||
| de67d3e257 | |||
| 3d4ff9d210 | |||
| 075318e8e0 | |||
| 014cde7bfa | |||
| c140e21beb | |||
| dc75ffcab3 | |||
| f8a94ed692 | |||
| ac88a5268a | |||
| 176870f93a | |||
| 9d405f05b6 | |||
| 4fe710d0f9 | |||
| 05413de810 | |||
| 019001d897 | |||
| 10384920c9 | |||
| a4ef2c0ee1 | |||
| 456ae485bf | |||
| 922ae9bb15 | |||
| ce41316357 | |||
| 7b66728522 | |||
| 9484026b5f | |||
| 43dc546e05 | |||
| 811ca11441 | |||
| ff682f8240 | |||
| 21743328d5 | |||
| c972a5f2f6 | |||
| c9cd0464d2 | |||
| 095821635f | |||
| bea5e3c0d8 | |||
| 907403411b | |||
| b959dabf31 | |||
| fb682aa63b | |||
| 0df4812a34 | |||
| 33238357a4 | |||
| a7433858d2 | |||
| feab21d38e | |||
| 38f22f9c19 | |||
| 49ee1c0362 | |||
| becaaaead9 | |||
| f7a78fd1d6 | |||
| 13cb4e6055 | |||
| 406ac0a6d3 | |||
| e7c4730ea7 | |||
| d07211ba92 | |||
| 2c634a61c1 | |||
| ce2d6ca8a0 | |||
| 0949e7f3cb | |||
| 020e3b0da8 | |||
| 9a0bd38bac | |||
| b7bb0bdc20 | |||
| 3011c698b3 | |||
| a1213ba4c8 | |||
| 324460bd91 | |||
| 69f06a5f47 | |||
| a21d5cd3fb | |||
| 349aba9d06 | |||
| 0390598346 | |||
| 393701519f | |||
| 439e2de8e4 | |||
| d080627083 | |||
| 16fa70308c | |||
| 770d08e1d9 | |||
| 6aae53fbbc | |||
| 79f63a43c8 | |||
| 81a7633180 | |||
| 4df94e4d83 | |||
| 8645ea43d0 | |||
| ca1a04794c | |||
| 51e31e9713 | |||
| 994b93a73d | |||
| dc6e5f1009 | |||
| 9d6da2621a | |||
| 65c62e1036 | |||
| 92011ac52a | |||
| 9d2bfce7a5 | |||
| 2e1ef7f670 | |||
| 5507ad9c4e | |||
| 5b43e33aa6 | |||
| b5711505da | |||
| 54eddb6057 | |||
| f17a7b3224 | |||
| a26ab7715d | |||
| 71f29fbc2d | |||
| 8b7e080a84 | |||
| 90af7efedf | |||
| f959b996e8 | |||
| e48974af8c | |||
| 2de2bfa2d0 | |||
| 5cfb54ead4 | |||
| b7571e20e7 | |||
| 27933401af | |||
| afc4e4ce4a | |||
| 6a9a8f9b19 | |||
| e5c652eca9 | |||
| 3ab9c1384f | |||
| 054b67b2b8 | |||
| bf9c575456 | |||
| a4f92ceca3 | |||
| 970f752598 | |||
| 08147f3210 | |||
| 63eb54becf | |||
| 716195299b | |||
| eadead4e05 | |||
| dae8dd82a1 | |||
| 36083d9981 | |||
| 24c79f8574 | |||
| a73d723be8 | |||
| bc4b1d2485 | |||
| 9404aab7e5 | |||
| f226625aef | |||
| f55f73cb30 | |||
| f4bbe1b24d | |||
| 252510d3df | |||
| 50a0c80dd7 | |||
| 9f368a11b2 | |||
| a4fc0ce9eb | |||
| ee5543b7de | |||
| aa016a5bfe | |||
| 4cc118bb3d | |||
| b26f0fb957 | |||
| 4f487cb1a0 | |||
| 9b6d1038ba | |||
| a44e66647e | |||
| 2fc242e6cc | |||
| af81f033f9 | |||
| e1cd0dfcd0 | |||
| 5ebe10cd56 | |||
| eae54ba84f | |||
| 025402ead3 | |||
| 69761f00d2 | |||
| b6f9d20ef4 | |||
| 994b223919 | |||
| 6fb1ea8d7f | |||
| c58a35b454 | |||
| 8b4e70c31d | |||
| 674896651e | |||
| 57747fd2bf | |||
| 1e1f876bc1 | |||
| e1fae7284e | |||
| b35ffe84c6 | |||
| c2d6883594 | |||
| a810a2915f | |||
| 490a242c79 | |||
| 88fc234df7 | |||
| 95b3957d73 | |||
| 31d7d95535 | |||
| b68b47e81f | |||
| af13572c16 | |||
| 62511ccb37 | |||
| 9007fe7ea4 | |||
| 1435c84507 | |||
| 8d255ed95a | |||
| ff09e61694 | |||
| f33d8610ca | |||
| 84bd7acdcb | |||
| d7868fe396 | |||
| 4fbfd3b72d | |||
| e3c8fb2cc5 | |||
| 67755f963f | |||
| 871d6fb68d | |||
| 2dcdd2a153 | |||
| 2999bcc962 | |||
| bb18281bd3 | |||
| a0aba21f7a | |||
| 8b7a78a4ca | |||
| ef6d40a9c4 | |||
| dc9a599bb4 | |||
| 98346d00d1 | |||
| 7f8ed177e5 | |||
| d01ee9a02b | |||
| 4fbdea5683 | |||
| bcfd3686d3 | |||
| 705cce16cb | |||
| ec80934916 | |||
| 9dabefa342 | |||
| 19d9e88653 | |||
| f295c0db32 | |||
| b8e2540fef | |||
| 6f05829f7e | |||
| 9e6a7b76b5 | |||
| aa86531f82 | |||
| e0f133cb14 | |||
| 56390fac62 | |||
| c35d6d1d3c | |||
| 27086e3b64 | |||
| df741b5f4e | |||
| 79ba4bcdc0 | |||
| 6bd19ecf62 | |||
| df0c4d770c | |||
| 672bf1f0fc | |||
| 1c1b721b93 | |||
| 37741a0cb5 | |||
| e967a23863 | |||
| 851cd145ab | |||
| 12011cfc3e | |||
| 073aa81247 | |||
| 3f7b3209d8 | |||
| d293bc15ca | |||
| 136af5316e | |||
| e01174b1f3 | |||
| 103ac57ae2 | |||
| ac79fd3bee | |||
| fc6320cf98 | |||
| 31ed9f1341 | |||
| 88b7b921be | |||
| 35c355a085 | |||
| 47e83bcd2e | |||
| 1e4ca096eb | |||
| 301fd4c3ac | |||
| b5fae0ff3f | |||
| d99c9c1101 | |||
| 155ee7b0ca | |||
| c3d99f427d | |||
| cee4357a5b | |||
| fa6185ce52 | |||
| c9cf2496c7 | |||
| 803d8bdfb4 | |||
| 4616dfcd3a | |||
| 37573a22d4 | |||
| 44d2f391c9 | |||
| 187319ac73 | |||
| bea434d7ad | |||
| ddc01469a8 | |||
| 1f1e41911e | |||
| 7c4547bf99 | |||
| 7322c3ba4b | |||
| 9d86f0c543 | |||
| be9bf38b00 | |||
| 78f1705c39 | |||
| f752a1288f | |||
| 5aa313472e | |||
| ff3e697c62 | |||
| 9c42afa550 | |||
| cf1628689a | |||
| b70aad41ed | |||
| 8dd190f611 | |||
| b20d2575d0 | |||
| 195add0620 | |||
| fd92d3e268 | |||
| a9c96dd4b4 | |||
| 09fcb03138 | |||
| dab1828e3d | |||
| a732285db7 | |||
| f562b94b3f | |||
| 64379f252a |
@@ -3,6 +3,8 @@
|
||||
src/MacVim/MacVim.xcodeproj/*.mode1
|
||||
src/MacVim/MacVim.xcodeproj/*.mode1v3
|
||||
src/MacVim/MacVim.xcodeproj/*.pbxuser
|
||||
src/MacVim/MacVim.xcodeproj/project.xcworkspace
|
||||
src/MacVim/MacVim.xcodeproj/xcuserdata
|
||||
src/MacVim/icons/*.pyc
|
||||
src/MacVim/icons/*.ttf
|
||||
src/MacVim/icons/*.reg
|
||||
@@ -16,6 +18,7 @@ src/MacVim/icons/makeicns/makeicns
|
||||
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.mode1
|
||||
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.mode1v3
|
||||
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.pbxuser
|
||||
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/xcuserdata
|
||||
src/MacVim/PSMTabBarControl/build
|
||||
src/MacVim/PSMTabBarControl/build
|
||||
src/MacVim/build
|
||||
@@ -35,3 +38,4 @@ src/po/*.mo
|
||||
src/tags
|
||||
src/xxd/xxd
|
||||
src/xxd/xxd.dSYM
|
||||
src/a.out.dSYM
|
||||
|
||||
@@ -1572,3 +1572,119 @@ b67d3a44262a97e7b3ae212fcffb36926b5f53f4 v7-3-232
|
||||
441d364773dc53264b5f26042f8fc6f8b77c8044 v7-3-235
|
||||
c1733ef5b6e87dde521d0d85a1e5e62259854ac1 v7-3-236
|
||||
e3bb93df6c34da672244bce5695c1426da139614 v7-3-237
|
||||
f2c108f44f415c7cfe92862e791a01cc542ac378 v7-3-238
|
||||
0bef86c5c985218a9448fa16d935b913e67af8d5 v7-3-239
|
||||
bf283e37792b4b557a2b9081e4fdb0e10acb9655 v7-3-240
|
||||
0a650db0265381b540df8ca6bd716c4b2d47dfc9 v7-3-241
|
||||
3d96ddbeb3b0003de29b736f63b76675909f133c v7-3-242
|
||||
512ddd87f1a817749c8362bd043682a7bbd87014 v7-3-243
|
||||
be6b6509636242cd7e6fab9a4b8772e97fc9a0db v7-3-244
|
||||
52512eddb876f64399e98d12643233a87c9f2823 v7-3-245
|
||||
3f1a4ed36d1b520a1ad5aa6cbf50d68bc8b9c7a5 v7-3-246
|
||||
7fe2c092913e84e6717782da1f1a220069eebbe7 v7-3-247
|
||||
57a7998e0fa8854a7a8c3946df1d4c9b1ee220e5 v7-3-248
|
||||
9f71f5a526aff4f1e0eefe1068d9534aee427afa v7-3-249
|
||||
f909f4f0f38c71594266b3595d31ce04d4ebe3ec v7-3-250
|
||||
fe6ad3fd85322b394824a5c495a78061a747b074 v7-3-251
|
||||
0b4289bcf8364854dd5f94c42d0252504103e5b9 v7-3-252
|
||||
c21429d7768cd4b834a086dd47881d01bca74e8c v7-3-253
|
||||
1eb805225de7750c03af7b0f7ac2f5dd18d032be v7-3-254
|
||||
aa998de9f9592426c17396b60c5db9170a234024 v7-3-255
|
||||
c296c225736e4489706c62c95752a0c4788be1d3 v7-3-256
|
||||
1fad9c73d77a0030586704cccab1b1a7aba8b58b v7-3-257
|
||||
bdc3335bd72eea207b28fcf8af90a73c855c8847 v7-3-258
|
||||
59130cd78dfc73bd04f22d201b8f7c0772d98e79 v7-3-259
|
||||
cb4682b959098e486977eb4b5969c9eb07d2798e v7-3-260
|
||||
410d42e3d4da09284394456186143d595e9b2efc v7-3-261
|
||||
847733973bfdd716bfafc364a4102e76f88e7fe8 v7-3-262
|
||||
a56259157c935b4e78e9f5f4dfb1436e3461eefb v7-3-263
|
||||
aa40bddeea9a44c6c6b4ffa32c1ef373df437a16 v7-3-264
|
||||
eff686fb8de66a26367f5e6430d34729f1a0e336 v7-3-265
|
||||
25be7c9dda549e4cfa1eb57937dc2b38b3d1e997 v7-3-266
|
||||
ad404f2a4bfa5374e97f29335f41b7ef34cd6bfa v7-3-267
|
||||
ee17ee712512451a54046d6bcd3ddb9f70cb5cdf v7-3-268
|
||||
7f4f5ca70dbde4e31c2de494b982bfb9bd71ed75 v7-3-269
|
||||
b9182da84c7eeda221e5219ef4361cca201b3b41 v7-3-270
|
||||
32a52f06f33b9e2d4817330099b410c1fcf64db2 v7-3-271
|
||||
02f5abca10aee570d5a9cf00928ffaa663daba66 v7-3-272
|
||||
7d4e5e31d8c10c767cdf774a2b13aedd2f95f096 v7-3-273
|
||||
1bb6776fa8c445e0b3f9dd2ed14fdf2a56f5873e v7-3-274
|
||||
125c7bf52271461dfbf46cc33317eadc67aaf742 v7-3-275
|
||||
37a54a85413eae68932233e64a0ab88c99c9d811 v7-3-276
|
||||
e5b17a5f651696ad4c523a21822692115d371250 v7-3-277
|
||||
6622f28b7e87a93de6f1520945d1c5d2a1fc0dab v7-3-278
|
||||
342b176089678e86cde3e1afac4aaaa1e5153f99 v7-3-279
|
||||
58bba69b3371d9ff02b27fe24f044e229c8aa99a v7-3-280
|
||||
45ead8a0bedeade57c320d72e9f710a703e61cf0 v7-3-281
|
||||
92167bb91c95410a0550ff8c94370307bb7d9d80 v7-3-282
|
||||
47b6d37b60122f45eb147106b8da1322c1cdbc60 v7-3-283
|
||||
27d43855b72312500e6fc2122e167a579a1f35f2 v7-3-284
|
||||
6018c815e1205e7db9328fe6ed91b26b514465f3 v7-3-285
|
||||
3f822e54765c54a1112a953e3c37bb60185fd51c v7-3-286
|
||||
07bc2ccfe5559035e785f22851365b3a31dec67e v7-3-287
|
||||
e4f3fa1a474e677dce486ea07ee31270f92b2b4a v7-3-288
|
||||
44ffd0a8abcdba441216514cb711649eb1169876 v7-3-289
|
||||
df33dba4e553f8fa27ba467042f16315c613a00d v7-3-290
|
||||
e8ee4b4ebf41abb199ea9a9e9cc38f9b0c2f7192 v7-3-291
|
||||
b6af1c5dd22f08db2b9e52ae763f193ba82965ad v7-3-292
|
||||
6cd0d6413a2e03687aca8138b2843f1f2aac5b84 v7-3-293
|
||||
dbd73fe939cf772a8b07c19230e5ee60aa0cfcc7 v7-3-294
|
||||
0d8494c051131b6470fe8af67646e235bc63fcf7 v7-3-295
|
||||
c19c15a9e9bf2914b25748c0544936e84a5c77c0 v7-3-296
|
||||
22550986c713ce5f37f069f0c8f99a54dc4a421b v7-3-297
|
||||
43b1d031e3028248abcbd5099841d3aafda7f68d v7-3-298
|
||||
eb4972982bfea006ead5b461f319744d5ecd58f5 v7-3-299
|
||||
2665b456ee59652c7b590dff0fa522ce337e0f16 v7-3-300
|
||||
4a70971530899e32058207cae683a69e7b8f85dc v7-3-301
|
||||
61b2f26623104f75850b1568bf61663597fe7fb0 v7-3-302
|
||||
d832d642f520d426f111b35102450617922547d3 v7-3-303
|
||||
b3a523ced6bd1173e4c17611559c173094830d43 v7-3-304
|
||||
0e06c025f66ffdfea20c8b73a995d23448b8dbfb v7-3-305
|
||||
0787bb5f387b79842d5c9353ae3541a992d1b9f1 v7-3-306
|
||||
880b7dd69331d1fefaf2d8735b118b39d546280c v7-3-307
|
||||
61c5e1527bd857e724f8396c89d0687126390675 v7-3-308
|
||||
6eae1b42c6684f3fcdb4d6cdbfb7dc1942d9b364 v7-3-309
|
||||
51ce22ba89d11505e18aa585fbd7dcbb22097f9a v7-3-310
|
||||
2cbde6bcc6238f41506f87bf31ff7d90f632345a v7-3-311
|
||||
0ed06069aaf32dbb2aa3827b23280b0028954ce7 v7-3-312
|
||||
dc60200a16b21c3e4157708bb825ea61b9e5bdc1 v7-3-313
|
||||
6ab1b45cc95ed56105b2130dc9938bb8344ff903 v7-3-314
|
||||
3ecf9e91d88acdb5eaaf93cc15a18914b60e0eb3 v7-3-315
|
||||
33c140e4664d102c34ec3ec5a17318f75cf475d7 v7-3-316
|
||||
92a181a1cec3fec52cde1b3d71f628a3a2dc53c6 v7-3-317
|
||||
d68f20a86a3ec75d927955be5d31983b6c37eb1d v7-3-318
|
||||
dc7f2f9759208aa07bf136deca661fd080a1ee68 v7-3-319
|
||||
738ea87c196431c452bd499c5a9849597ac938de v7-3-320
|
||||
fc0804089b2945bfe683f9bc9ee0238b8c64a46e v7-3-321
|
||||
38a7fd9043474dfb464c338ffd7f393361f5a6c1 v7-3-322
|
||||
3bdb646fc8a46ee5a5fe474dccdce098680d24d6 v7-3-323
|
||||
f04619f1fc1663f4ab05798c410e4fa35a9dd863 v7-3-324
|
||||
8aca621c00910556d4f52bd650d6841d6059d6ec v7-3-325
|
||||
d3758064ff9946d23aeccc9d2340686766647b84 v7-3-326
|
||||
9028c70adafd109ab294102f74dfb5005a20bbfb v7-3-327
|
||||
5b53cea62e5d1be2a1a36ce685c15f99bb8a41ba v7-3-328
|
||||
ec901ddc84d5c66c5d0c1dcca093584598487f9f v7-3-329
|
||||
abb03be99d661455fd3790cd25355459448fa432 v7-3-330
|
||||
4b8c614c1c914ce5d712368a75dbfea9b7e44e17 v7-3-331
|
||||
0ecfe54a273f6bc440684aca4ebe5926a2dfc6e2 v7-3-332
|
||||
992b24149a9ee0d6f417e40a7462891a9f62ec6a v7-3-333
|
||||
fdc72363229865cc6fd2da9db66f1d6e683b87c0 v7-3-334
|
||||
dc3f90a73fb375092ea9d870ae48ff31b31a56ab v7-3-335
|
||||
52526aec4afb220a1271e9a645194c42d3b2a538 v7-3-336
|
||||
176bfa951339a0a36366cbc8def41ae75f5034e0 v7-3-337
|
||||
7919a3d7333b99cece7d1a2657c89c18de78bf82 v7-3-338
|
||||
b5a2b4c0c1cac1758990ea449bc1c552522f39a9 v7-3-339
|
||||
49b08c9b9f5b72d930a1c02f00aa4128dc58532d v7-3-340
|
||||
6963603ec6dc2b47da9a7e951b2d0b3e024535eb v7-3-341
|
||||
314d9368069ec0458631ca150c202e7f724ad6d3 v7-3-342
|
||||
98a05814f1b466c87611b810eeafe8e7d9c581b6 v7-3-343
|
||||
7ba2f171cdaca18571b5e73dece426411c4f124a v7-3-344
|
||||
35f098371af699aa7e614a6397a068119b54cabf v7-3-345
|
||||
af76a61a7f79ccd3bcf64e15c73f2a3ea0eb77da v7-3-346
|
||||
72528c5eb87ea315a7c1a48f7734d1717c28820f v7-3-347
|
||||
4d4a328f199e4020457b4bf8f077622966bb3563 v7-3-348
|
||||
075acc2dccaa621998ccb1d671a987090367d485 v7-3-349
|
||||
07956eab189c0c776b79bc42235833d234480559 v7-3-350
|
||||
ff69efc4bc55d83b5f2bb68aeede1d921e8f1036 v7-3-351
|
||||
ca65249eb34bc62e82d54f74e14271be7f7f8a44 v7-3-352
|
||||
12bb368fef2c8c5478f0f8905aac381a56a75fe0 v7-3-353
|
||||
|
||||
@@ -81,6 +81,7 @@ SRC_ALL = \
|
||||
src/testdir/test[0-9]*.ok \
|
||||
src/testdir/test49.vim \
|
||||
src/testdir/test60.vim \
|
||||
src/testdir/test83-tags? \
|
||||
src/proto.h \
|
||||
src/proto/blowfish.pro \
|
||||
src/proto/buffer.pro \
|
||||
@@ -313,6 +314,7 @@ SRC_DOS = \
|
||||
src/xxd/Make_bc5.mak \
|
||||
src/xxd/Make_cyg.mak \
|
||||
src/xxd/Make_djg.mak \
|
||||
src/xxd/Make_ming.mak \
|
||||
src/xxd/Make_mvc.mak \
|
||||
nsis/gvim.nsi \
|
||||
nsis/README.txt \
|
||||
|
||||
+2
-1
@@ -12,7 +12,8 @@ install in (usually `/Applications').
|
||||
How to build and install
|
||||
========================
|
||||
|
||||
Run `./configure` in the `src/` directory with the flags you want, e.g.:
|
||||
Run `./configure` in the `src/` directory with the flags you want (call
|
||||
`./configure --help` to see a list of flags) e.g.:
|
||||
|
||||
$ cd src
|
||||
$ ./configure --with-features=huge \
|
||||
|
||||
+457
-223
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
" vimball.vim : construct a file containing both paths and files
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Apr 02, 2011
|
||||
" Version: 33
|
||||
" Date: Sep 26, 2011
|
||||
" Version: 34
|
||||
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
|
||||
" Copyright: (c) 2004-2011 by Charles E. Campbell, Jr.
|
||||
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||
@@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_vimball")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_vimball = "v33"
|
||||
let g:loaded_vimball = "v34"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of vimball needs vim 7.2"
|
||||
@@ -220,7 +220,16 @@ fun! vimball#Vimball(really,...)
|
||||
|
||||
" go to vim plugin home
|
||||
if a:0 > 0
|
||||
" let user specify the directory where the vimball is to be unpacked.
|
||||
" If, however, the user did not specify a full path, set the home to be below the current directory
|
||||
let home= expand(a:1)
|
||||
if has("win32") || has("win95") || has("win64") || has("win16")
|
||||
if home !~ '^\a:[/\\]'
|
||||
let home= getcwd().'/'.a:1
|
||||
endif
|
||||
elseif home !~ '^/'
|
||||
let home= getcwd().'/'.a:1
|
||||
endif
|
||||
else
|
||||
let home= vimball#VimballHome()
|
||||
endif
|
||||
@@ -282,11 +291,14 @@ fun! vimball#Vimball(really,...)
|
||||
" call Decho("making directories if they don't exist yet (fname<".fname.">)")
|
||||
let fnamebuf= substitute(fname,'\\','/','g')
|
||||
let dirpath = substitute(home,'\\','/','g')
|
||||
" call Decho("init: fnamebuf<".fnamebuf.">")
|
||||
" call Decho("init: dirpath <".dirpath.">")
|
||||
while fnamebuf =~ '/'
|
||||
let dirname = dirpath."/".substitute(fnamebuf,'/.*$','','')
|
||||
let dirpath = dirname
|
||||
let fnamebuf = substitute(fnamebuf,'^.\{-}/\(.*\)$','\1','')
|
||||
" call Decho("dirname<".dirname.">")
|
||||
" call Decho("dirpath<".dirpath.">")
|
||||
if !isdirectory(dirname)
|
||||
" call Decho("making <".dirname.">")
|
||||
if exists("g:vimball_mkdir")
|
||||
@@ -569,9 +581,19 @@ endfun
|
||||
fun! s:ChgDir(newdir)
|
||||
" call Dfunc("ChgDir(newdir<".a:newdir.">)")
|
||||
if (has("win32") || has("win95") || has("win64") || has("win16"))
|
||||
exe 'silent cd '.fnameescape(substitute(a:newdir,'/','\\','g'))
|
||||
try
|
||||
exe 'silent cd '.fnameescape(substitute(a:newdir,'/','\\','g'))
|
||||
catch /^Vim\%((\a\+)\)\=:E/
|
||||
call mkdir(fnameescape(substitute(a:newdir,'/','\\','g')))
|
||||
exe 'silent cd '.fnameescape(substitute(a:newdir,'/','\\','g'))
|
||||
endtry
|
||||
else
|
||||
exe 'silent cd '.fnameescape(a:newdir)
|
||||
try
|
||||
exe 'silent cd '.fnameescape(a:newdir)
|
||||
catch /^Vim\%((\a\+)\)\=:E/
|
||||
call mkdir(fnameescape(a:newdir))
|
||||
exe 'silent cd '.fnameescape(a:newdir)
|
||||
endtry
|
||||
endif
|
||||
" call Dret("ChgDir : curdir<".getcwd().">")
|
||||
endfun
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2011 May 19
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2011 Aug 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -448,6 +448,9 @@ BufWriteCmd Before writing the whole buffer to a file.
|
||||
'modified' if successful, unless '+' is in
|
||||
'cpo' and writing to another file |cpo-+|.
|
||||
The buffer contents should not be changed.
|
||||
When the command resets 'modified' the undo
|
||||
information is adjusted to mark older undo
|
||||
states as 'modified', like |:write| does.
|
||||
|Cmd-event|
|
||||
*BufWritePost*
|
||||
BufWritePost After writing the whole buffer to a file
|
||||
@@ -508,6 +511,7 @@ CursorMoved After the cursor was moved in Normal mode.
|
||||
not expect or that is slow.
|
||||
*CursorMovedI*
|
||||
CursorMovedI After the cursor was moved in Insert mode.
|
||||
Not triggered when the popup menu is visible.
|
||||
Otherwise the same as CursorMoved.
|
||||
*EncodingChanged*
|
||||
EncodingChanged Fires off after the 'encoding' option has been
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.3. Last change: 2011 Jun 19
|
||||
*eval.txt* For Vim version 7.3. Last change: 2011 Sep 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -39,7 +39,7 @@ done, the features in this document are not available. See |+eval| and
|
||||
*E712*
|
||||
There are six types of variables:
|
||||
|
||||
Number A 32 bit signed number. |expr-number| *Number*
|
||||
Number A 32 or 64 bit signed number. |expr-number| *Number*
|
||||
Examples: -123 0x10 0177
|
||||
|
||||
Float A floating point number. |floating-point-format| *Float*
|
||||
@@ -2277,7 +2277,8 @@ char2nr({expr}) *char2nr()*
|
||||
< The current 'encoding' is used. Example for "utf-8": >
|
||||
char2nr("á") returns 225
|
||||
char2nr("á"[0]) returns 195
|
||||
< |nr2char()| does the opposite.
|
||||
< A combining character is a separate character.
|
||||
|nr2char()| does the opposite.
|
||||
|
||||
cindent({lnum}) *cindent()*
|
||||
Get the amount of indent for line {lnum} according the C
|
||||
@@ -5968,7 +5969,7 @@ virtcol({expr}) *virtcol()*
|
||||
When 'virtualedit' is used {expr} can be [lnum, col, off], where
|
||||
"off" is the offset in screen columns from the start of the
|
||||
character. E.g., a position within a <Tab> or after the last
|
||||
character.
|
||||
character. When "off" is omitted zero is used.
|
||||
When Virtual editing is active in the current mode, a position
|
||||
beyond the end of the line can be returned. |'virtualedit'|
|
||||
The accepted positions are:
|
||||
@@ -6377,7 +6378,7 @@ last defined. Example: >
|
||||
<
|
||||
See |:verbose-cmd| for more information.
|
||||
|
||||
*E124* *E125*
|
||||
*E124* *E125* *E853*
|
||||
:fu[nction][!] {name}([arguments]) [range] [abort] [dict]
|
||||
Define a new function by the name {name}. The name
|
||||
must be made of alphanumeric characters and '_', and
|
||||
|
||||
+10
-1
@@ -1,4 +1,4 @@
|
||||
*gui.txt* For Vim version 7.3. Last change: 2010 Nov 03
|
||||
*gui.txt* For Vim version 7.3. Last change: 2011 Jul 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -147,6 +147,15 @@ task bar with the 'guiheadroom' option.
|
||||
If you are running the X Window System, you can get information about the
|
||||
window Vim is running in with this command: >
|
||||
:!xwininfo -id $WINDOWID
|
||||
<
|
||||
*gui-IME* *iBus*
|
||||
Input methods for international characters in X that rely on the XIM
|
||||
framework, most notably iBus, have been known to produce undesirable results
|
||||
in gVim. These may include an inability to enter spaces, or long delays
|
||||
between typing a character and it being recognized by the application.
|
||||
|
||||
One workaround that has been successful, for unknown reasons, is to prevent
|
||||
gvim from forking into the background by starting it with the |-f| argument.
|
||||
|
||||
==============================================================================
|
||||
2. Scrollbars *gui-scrollbars*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui_w32.txt* For Vim version 7.3. Last change: 2010 Dec 19
|
||||
*gui_w32.txt* For Vim version 7.3. Last change: 2011 Jul 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -137,6 +137,9 @@ options:
|
||||
And if there already is a gvim running:
|
||||
"Edit with existing gvim" -- edit the file with the running gvim
|
||||
|
||||
The "edit with existing Vim" entries can be disabled by adding an entry in the
|
||||
registry under HKLM\Software\Vim\Gvim, named DisableEditWithExisting, and with
|
||||
any value.
|
||||
*install-registry*
|
||||
You can add the "Edit with Vim" menu entry in an easy way by using the
|
||||
"install.exe" program. It will add several registry entries for you.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui_x11.txt* For Vim version 7.3. Last change: 2010 Jul 20
|
||||
*gui_x11.txt* For Vim version 7.3. Last change: 2011 Sep 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -61,6 +61,8 @@ launches the gui but doesn't fork (see |mvim|). However, doing |:gui| in an
|
||||
already running vim will never fork in MacVim.
|
||||
|
||||
"gvim --nofork" does the same as "gvim -f".
|
||||
*E851* *E852*
|
||||
When starting the GUI fails Vim will try to continue running in the terminal.
|
||||
|
||||
If you want the GUI to run in the foreground always, include the 'f'
|
||||
flag in 'guioptions'. |-f|. MacVim does not support this flag in
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2011 May 07
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2011 Aug 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -380,7 +380,7 @@ To work around such problems there are these options:
|
||||
*has-python*
|
||||
You can test what Python version is available with: >
|
||||
if has('python')
|
||||
echo 'there is Pyton 2.x'
|
||||
echo 'there is Python 2.x'
|
||||
elseif has('python3')
|
||||
echo 'there is Python 3.x'
|
||||
endif
|
||||
|
||||
+47
-8
@@ -1,4 +1,4 @@
|
||||
*indent.txt* For Vim version 7.3. Last change: 2011 May 31
|
||||
*indent.txt* For Vim version 7.3. Last change: 2011 Sep 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -132,8 +132,8 @@ The 'cinoptions' option sets how Vim performs indentation. The value after
|
||||
the option character can be one of these (N is any number):
|
||||
N indent N spaces
|
||||
-N indent N spaces to the left
|
||||
Ns N times 'shiftwidth spaces
|
||||
-Ns N times 'shiftwidth spaces to the left
|
||||
Ns N times 'shiftwidth' spaces
|
||||
-Ns N times 'shiftwidth' spaces to the left
|
||||
|
||||
In the list below,
|
||||
"N" represents a number of your choice (the number can be negative). When
|
||||
@@ -432,7 +432,7 @@ The examples below assume a 'shiftwidth' of 4.
|
||||
c3 c3
|
||||
) && c4; ) && c4;
|
||||
<
|
||||
*cino-2*
|
||||
*cino-w*
|
||||
wN When in unclosed parentheses and N is non-zero and either
|
||||
using "(0" or "u0", respectively, or using "U0" and the unclosed
|
||||
parentheses is the first non-white character in its line, line
|
||||
@@ -486,9 +486,10 @@ The examples below assume a 'shiftwidth' of 4.
|
||||
) )
|
||||
<
|
||||
*java-cinoptions* *java-indenting* *cino-j*
|
||||
jN Indent java anonymous classes correctly. The value 'N' is
|
||||
currently unused but must be non-zero (e.g. 'j1'). 'j1' will
|
||||
indent for example the following code snippet correctly: >
|
||||
jN Indent Java anonymous classes correctly. Also works well for
|
||||
Javascript. The value 'N' is currently unused but must be
|
||||
non-zero (e.g. 'j1'). 'j1' will indent for example the
|
||||
following code snippet correctly: >
|
||||
|
||||
object.add(new ChangeListener() {
|
||||
public void stateChanged(ChangeEvent e) {
|
||||
@@ -499,7 +500,8 @@ The examples below assume a 'shiftwidth' of 4.
|
||||
*javascript-cinoptions* *javascript-indenting* *cino-J*
|
||||
JN Indent JavaScript object declarations correctly by not confusing
|
||||
them with labels. The value 'N' is currently unused but must be
|
||||
non-zero (e.g. 'J1'). >
|
||||
non-zero (e.g. 'J1'). If you enable this you probably also want
|
||||
to set |cino-j|. >
|
||||
|
||||
var bar = {
|
||||
foo: {
|
||||
@@ -704,6 +706,43 @@ Indent for a continuation line: >
|
||||
let g:pyindent_continue = '&sw * 2'
|
||||
|
||||
|
||||
R *ft-r-indent*
|
||||
|
||||
Function arguments are aligned if they span for multiple lines. If you prefer
|
||||
do not have the arguments of functions aligned, put in your |vimrc|:
|
||||
>
|
||||
let r_indent_align_args = 0
|
||||
<
|
||||
All lines beginning with a comment character, #, get the same indentation
|
||||
level of the normal R code. Users of Emacs/ESS may be used to have lines
|
||||
beginning with a single # indented in the 40th column, ## indented as R code,
|
||||
and ### not indented. If you prefer that lines beginning with comment
|
||||
characters are aligned as they are by Emacs/ESS, put in your |vimrc|:
|
||||
>
|
||||
let r_indent_ess_comments = 1
|
||||
<
|
||||
If you prefer that lines beginning with a single # are aligned at a column
|
||||
different from the 40th one, you should set a new value to the variable
|
||||
r_indent_comment_column, as in the example below:
|
||||
>
|
||||
let r_indent_comment_column = 30
|
||||
<
|
||||
Any code after a line that ends with "<-" is indented. Emacs/ESS does not
|
||||
indent the code if it is a top level function. If you prefer that the
|
||||
Vim-R-plugin behaves like Emacs/ESS in this regard, put in your |vimrc|:
|
||||
>
|
||||
let r_indent_ess_compatible = 1
|
||||
<
|
||||
Below is an example of indentation with and without this option enabled:
|
||||
>
|
||||
### r_indent_ess_compatible = 1 ### r_indent_ess_compatible = 0
|
||||
foo <- foo <-
|
||||
function(x) function(x)
|
||||
{ {
|
||||
paste(x) paste(x)
|
||||
} }
|
||||
<
|
||||
|
||||
SHELL *ft-sh-indent*
|
||||
|
||||
The amount of indent applied under various circumstances in a shell file can
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.3. Last change: 2011 Jan 04
|
||||
*index.txt* For Vim version 7.3. Last change: 2011 Aug 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1261,7 +1261,7 @@ tag command action ~
|
||||
|:k| :k set a mark
|
||||
|:keepalt| :keepa[lt] following command keeps the alternate file
|
||||
|:keepmarks| :kee[pmarks] following command keeps marks where they are
|
||||
|:keepjumps| :keepj[jumps] following command keeps jumplist and marks
|
||||
|:keepjumps| :keepj[umps] following command keeps jumplist and marks
|
||||
|:lNext| :lN[ext] go to previous entry in location list
|
||||
|:lNfile| :lNf[ile] go to last entry in previous file
|
||||
|:list| :l[ist] print lines
|
||||
|
||||
+20
-4
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.3. Last change: 2010 Nov 10
|
||||
*insert.txt* For Vim version 7.3. Last change: 2011 Sep 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1020,6 +1020,21 @@ On the second invocation the arguments are:
|
||||
The function must return a List with the matching words. These matches
|
||||
usually include the "a:base" text. When there are no matches return an empty
|
||||
List.
|
||||
|
||||
In order to return more information than the matching words, return a Dict
|
||||
that contains the List. The Dict can have these items:
|
||||
words The List of matching words (mandatory).
|
||||
refresh A string to control re-invocation of the function
|
||||
(optional).
|
||||
The only value currently recognized is "always", the
|
||||
effect is that the function is called whenever the
|
||||
leading text is changed.
|
||||
Other items are ignored.
|
||||
|
||||
For example, the function can contain this: >
|
||||
let matches = ... list of words ...
|
||||
return {'words': matches, 'refresh': 'always'}
|
||||
<
|
||||
*complete-items*
|
||||
Each list item can either be a string or a Dictionary. When it is a string it
|
||||
is used as the completion. When it is a Dictionary it can contain these
|
||||
@@ -1040,9 +1055,10 @@ items:
|
||||
empty when non-zero this match will be added even when it is
|
||||
an empty string
|
||||
|
||||
All of these except 'icase' must be a string. If an item does not meet these
|
||||
requirements then an error message is given and further items in the list are
|
||||
not used. You can mix string and Dictionary items in the returned list.
|
||||
All of these except 'icase', 'dup' and 'empty' must be a string. If an item
|
||||
does not meet these requirements then an error message is given and further
|
||||
items in the list are not used. You can mix string and Dictionary items in
|
||||
the returned list.
|
||||
|
||||
The "menu" item is used in the popup menu and may be truncated, thus it should
|
||||
be relatively short. The "info" item can be longer, it will be displayed in
|
||||
|
||||
+16
-4
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.3. Last change: 2011 Jun 13
|
||||
*map.txt* For Vim version 7.3. Last change: 2011 Oct 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -228,7 +228,7 @@ text before the cursor and start omni completion when some condition is met.
|
||||
|
||||
For abbreviations |v:char| is set to the character that was typed to trigger
|
||||
the abbreviation. You can use this to decide how to expand the {lhs}. You
|
||||
you should not either insert or change the v:char.
|
||||
should not either insert or change the v:char.
|
||||
|
||||
Be very careful about side effects! The expression is evaluated while
|
||||
obtaining characters, you may very well make the command dysfunctional.
|
||||
@@ -237,11 +237,18 @@ For this reason the following is blocked:
|
||||
- Editing another buffer.
|
||||
- The |:normal| command.
|
||||
- Moving the cursor is allowed, but it is restored afterwards.
|
||||
- You can use getchar(), but the existing typeahead isn't seen and new
|
||||
typeahead is discarded.
|
||||
If you want the mapping to do any of these let the returned characters do
|
||||
that.
|
||||
|
||||
You can use getchar(), it consumes typeahead if there is any. E.g., if you
|
||||
have these mappings: >
|
||||
inoremap <expr> <C-L> nr2char(getchar())
|
||||
inoremap <expr> <C-L>x "foo"
|
||||
If you now type CTRL-L nothing happens yet, Vim needs the next character to
|
||||
decide what mapping to use. If you type 'x' the second mapping is used and
|
||||
"foo" is inserted. If you type 'a' the first mapping is used, getchar() gets
|
||||
the 'a' and returns it.
|
||||
|
||||
Here is an example that inserts a list number that increases: >
|
||||
let counter = 0
|
||||
inoremap <expr> <C-L> ListItem()
|
||||
@@ -544,6 +551,7 @@ construct can be used:
|
||||
<Char-123> character 123
|
||||
<Char-033> character 27
|
||||
<Char-0x7f> character 127
|
||||
<S-Char-114> character 114 ('r') shifted ('R')
|
||||
This is useful to specify a (multi-byte) character in a 'keymap' file.
|
||||
Upper and lowercase differences are ignored.
|
||||
|
||||
@@ -1211,17 +1219,21 @@ completion can be enabled:
|
||||
|
||||
-complete=augroup autocmd groups
|
||||
-complete=buffer buffer names
|
||||
-complete=color color schemes
|
||||
-complete=command Ex command (and arguments)
|
||||
-complete=compiler compilers
|
||||
-complete=cscope |:cscope| suboptions
|
||||
-complete=dir directory names
|
||||
-complete=environment environment variable names
|
||||
-complete=event autocommand events
|
||||
-complete=expression Vim expression
|
||||
-complete=file file and directory names
|
||||
-complete=file_in_path file and directory names in |'path'|
|
||||
-complete=filetype filetype names |'filetype'|
|
||||
-complete=function function name
|
||||
-complete=help help subjects
|
||||
-complete=highlight highlight groups
|
||||
-complete=locale locale names (as output of locale -a)
|
||||
-complete=mapping mapping name
|
||||
-complete=menu menus
|
||||
-complete=option options
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mbyte.txt* For Vim version 7.3. Last change: 2011 Feb 01
|
||||
*mbyte.txt* For Vim version 7.3. Last change: 2011 Oct 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||
@@ -797,8 +797,8 @@ is suitable for complex input, such as CJK.
|
||||
number of Hira-gana characters are 76. So, first, we pre-input text as
|
||||
pronounced in Hira-gana, second, we convert Hira-gana to Kanji or Kata-Kana,
|
||||
if needed. There are some Kana-Kanji conversion server: jserver
|
||||
(distributed with Wnn, see below) and canna. Canna could be found at:
|
||||
ftp://ftp.nec.co.jp/pub/Canna/ (no longer works).
|
||||
(distributed with Wnn, see below) and canna. Canna can be found at:
|
||||
http://canna.sourceforge.jp/
|
||||
|
||||
There is a good input system: Wnn4.2. Wnn 4.2 contains,
|
||||
xwnmo (|IM-server|)
|
||||
@@ -1306,8 +1306,8 @@ character. However, search patterns may not match on an overlong sequence.
|
||||
character.) An exception is NUL (zero) which is displayed as "<00>".
|
||||
|
||||
In the file and buffer the full range of Unicode characters can be used (31
|
||||
bits). However, displaying only works for 16 bit characters, and only for the
|
||||
characters present in the selected font.
|
||||
bits). However, displaying only works for the characters present in the
|
||||
selected font.
|
||||
|
||||
Useful commands:
|
||||
- "ga" shows the decimal, hexadecimal and octal value of the character under
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 7.3. Last change: 2011 Jun 02
|
||||
*motion.txt* For Vim version 7.3. Last change: 2011 Jul 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1017,8 +1017,6 @@ CTRL-O Go to [count] Older cursor position in jump list
|
||||
<Tab> or *CTRL-I* *<Tab>*
|
||||
CTRL-I Go to [count] newer cursor position in jump list
|
||||
(not a motion command).
|
||||
In a |quickfix-window| it takes you to the position of
|
||||
the error under the cursor.
|
||||
{not in Vi}
|
||||
{not available without the |+jumplist| feature}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*netbeans.txt* For Vim version 7.3. Last change: 2010 Sep 29
|
||||
*netbeans.txt* For Vim version 7.3. Last change: 2011 Oct 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur et al.
|
||||
@@ -263,6 +263,12 @@ The messages are currently sent over a socket. Since the messages are in
|
||||
plain UTF-8 text this protocol could also be used with any other communication
|
||||
mechanism.
|
||||
|
||||
Netbeans messages are processed when Vim is idle, waiting for user input.
|
||||
When Vim is run in non-interactive mode, for example when running an automated
|
||||
test case that sources a Vim script, the idle loop may not be called often
|
||||
enough. In that case, insert |sleep| commands in the Vim script. The |sleep|
|
||||
command does invoke Netbeans messages processing.
|
||||
|
||||
6.1 Kinds of messages |nb-messages|
|
||||
6.2 Terms |nb-terms|
|
||||
6.3 Commands |nb-commands|
|
||||
@@ -833,11 +839,16 @@ These errors occur when a message violates the protocol:
|
||||
signs.
|
||||
|
||||
*:nbkey*
|
||||
:nb[key] {key} Pass the {key} to the Vim Controller for processing
|
||||
|
||||
When a hot-key has been installed with the specialKeys command, this command
|
||||
can be used to generate a hotkey messages to the Vim Controller. The events
|
||||
newDotAndMark, keyCommand and keyAtPos are generated (in this order).
|
||||
:nb[key] {key} Pass the {key} to the Vim Controller for processing.
|
||||
When a hot-key has been installed with the specialKeys
|
||||
command, this command can be used to generate a hotkey
|
||||
message to the Vim Controller.
|
||||
This command can also be used to pass any text to the
|
||||
Vim Controller. It is used by Pyclewn, for example,
|
||||
to build the complete set of gdb commands as Vim user
|
||||
commands.
|
||||
The events newDotAndMark, keyCommand and keyAtPos are
|
||||
generated (in this order).
|
||||
|
||||
|
||||
==============================================================================
|
||||
|
||||
+22
-13
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.3. Last change: 2011 Jun 12
|
||||
*options.txt* For Vim version 7.3. Last change: 2011 Sep 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -3308,7 +3308,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
XXX: Think about how 'fullscreen' and 'transparency' should interact.
|
||||
|
||||
*'fuoptions'* *'fuopt'*
|
||||
'fuoptions' 'fuopt' string (default "maxvert")
|
||||
'fuoptions' 'fuopt' string (default "maxvert,maxhorz")
|
||||
global
|
||||
{not in Vi}
|
||||
{only in MacVim GUI}
|
||||
@@ -3328,6 +3328,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
number of columns, it is restored to the value it had before
|
||||
entering fullscreen.
|
||||
background:color
|
||||
{not supported in Mac OS X native full screen}
|
||||
When entering fullscreen, 'color' defines the color of the part
|
||||
of the screen that is not occupied by the Vim control. If
|
||||
'color' is an 8-digit hexadecimal number preceded by '#',
|
||||
@@ -3339,15 +3340,15 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
scheme.
|
||||
|
||||
Examples:
|
||||
Don't change size of Vim when entering fullscreen: >
|
||||
Don't change size when entering fullscreen: >
|
||||
:set fuoptions=
|
||||
< Maximize Vim when entering fullscreen: >
|
||||
:set fuoptions=maxvert,maxhorz
|
||||
< Maximize Vim only vertically when entering fullscreen, and color the
|
||||
< Only maximize vertically when entering fullscreen: >
|
||||
:set fuoptions=maxvert
|
||||
< Maximize only vertically when entering fullscreen, and color the
|
||||
background dark blue: >
|
||||
:set fuoptions=maxvert,background:#FF003042
|
||||
< Don't change the size of Vim when entering fullscreen, and color the
|
||||
background like the current text background: >
|
||||
< Don't change size when entering fullscreen, and color the background
|
||||
like the current text background: >
|
||||
:set fuoptions=background:Normal
|
||||
<
|
||||
XXX: what if the font size is changed? you probably never want to
|
||||
@@ -4975,6 +4976,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
written. A ":set nomodified" command also resets the original
|
||||
values to the current values and the 'modified' option will be
|
||||
reset.
|
||||
This option is not set when a change is made to the buffer as the
|
||||
result of a BufNewFile, BufRead/BufReadPost, BufWritePost,
|
||||
FileAppendPost or VimLeave autocommand event. See |gzip-example| for
|
||||
an explanation.
|
||||
When 'buftype' is "nowrite" or "nofile" this option may be set, but
|
||||
will be ignored.
|
||||
|
||||
@@ -6012,8 +6017,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"bash.exe -c ls" or "command.com /c dir". For the MS-DOS-like
|
||||
systems, the default is set according to the value of 'shell', to
|
||||
reduce the need to set this option by the user. It's not used for
|
||||
OS/2 (EMX figures this out itself). See |option-backslash| about
|
||||
including spaces and backslashes. See |dos-shell|.
|
||||
OS/2 (EMX figures this out itself).
|
||||
On Unix it can have more than one flag. Each white space separated
|
||||
part is passed as an argument to the shell command.
|
||||
See |option-backslash| about including spaces and backslashes.
|
||||
Also see |dos-shell| for MS-DOS and MS-Windows.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
@@ -6116,7 +6124,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
When on, use temp files for shell commands. When off use a pipe.
|
||||
When using a pipe is not possible temp files are used anyway.
|
||||
Currently a pipe is only supported on Unix. You can check it with: >
|
||||
Currently a pipe is only supported on Unix and MS-Windows 2K and
|
||||
later. You can check it with: >
|
||||
:if has("filterpipe")
|
||||
< The advantage of using a pipe is that nobody can read the temp file
|
||||
and the 'shell' command does not need to support redirection.
|
||||
@@ -6868,8 +6877,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
usetab Like "useopen", but also consider windows in other tab
|
||||
pages.
|
||||
split If included, split the current window before loading
|
||||
a buffer. Otherwise: do not split, use current window.
|
||||
Supported in |quickfix| commands that display errors.
|
||||
a buffer for a |quickfix| command that display errors.
|
||||
Otherwise: do not split, use current window.
|
||||
newtab Like "split", but open a new tab page. Overrules
|
||||
"split" when both are present.
|
||||
|
||||
|
||||
+48
-50
@@ -1,4 +1,4 @@
|
||||
*os_vms.txt* For Vim version 7.3. Last change: 2010 Aug 16
|
||||
*os_vms.txt* For Vim version 7.3. Last change: 2011 Aug 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL
|
||||
@@ -38,9 +38,6 @@ You can download the Vim source code by ftp from the official Vim site:
|
||||
Or use one of the mirrors:
|
||||
ftp://ftp.vim.org/pub/vim/MIRRORS
|
||||
|
||||
You will need both the Unix and Extra archives to build vim.exe for VMS.
|
||||
For using Vim's full power you will need the runtime files as well.
|
||||
|
||||
You can download precompiled executables from:
|
||||
http://www.polarhome.com/vim/
|
||||
ftp://ftp.polarhome.com/pub/vim/
|
||||
@@ -75,7 +72,7 @@ See the file [.SRC]INSTALLVMS.TXT.
|
||||
4. Problems *vms-problems*
|
||||
|
||||
The code has been tested under Open VMS 6.2 - 8.2 on Alpha, VAX and IA64
|
||||
platforms with the DEC C compiler. It should work without bigger problems.
|
||||
platforms with the DEC C compiler. It should work without big problems.
|
||||
If your system does not have some include libraries you can tune up in
|
||||
OS_VMS_CONF.H file.
|
||||
|
||||
@@ -88,11 +85,11 @@ Also GTK, XPM library paths should be configured in MAKE_VMS.MMS
|
||||
|
||||
Note: Under VAX it should work with the DEC C compiler without problems. The
|
||||
VAX C compiler is not fully ANSI C compatible in pre-processor directives
|
||||
semantics, therefore you have to use a converter program what will do the lion
|
||||
semantics, therefore you have to use a converter program that will do the lion
|
||||
part of the job. For detailed instructions read file INSTALLvms.txt
|
||||
|
||||
MMS_VIM.EXE is build together with VIM.EXE, but for XD.EXE you should
|
||||
change to subdirectory and build it separately.
|
||||
MMS_VIM.EXE is build together with VIM.EXE, but for XXD.EXE you should
|
||||
change to a subdirectory and build it separately.
|
||||
|
||||
CTAGS is not part of the Vim source distribution anymore, however the OpenVMS
|
||||
specific source might contain CTAGS source files as described above.
|
||||
@@ -184,9 +181,9 @@ You may want to create .vimrc and .gvimrc files in your home directory
|
||||
|
||||
The easiest way is just rename example files. You may leave the menu file
|
||||
(MENU.VIM) and files vimrc and gvimrc in the original $VIM directory. It will
|
||||
be default setup for all users, and for users it is enough just to have their
|
||||
own additions or resetting in their home directory in files .vimrc and .gvimrc.
|
||||
It should work without problems.
|
||||
be the default setup for all users, and for users it is enough to just have
|
||||
their own additions or resetting in their home directory in files .vimrc and
|
||||
.gvimrc. It should work without problems.
|
||||
|
||||
Note: Remember, system rc files (default for all users) don't have a leading
|
||||
".". So, system rc files are: >
|
||||
@@ -200,7 +197,7 @@ and user customized rc files are: >
|
||||
sys$login:.vimrc
|
||||
sys$login:.gvimrc
|
||||
|
||||
You can check that everything is on the right place with the :version command.
|
||||
You can check that everything is at the right place with the :version command.
|
||||
|
||||
Example LOGIN.COM: >
|
||||
|
||||
@@ -209,15 +206,15 @@ Example LOGIN.COM: >
|
||||
$ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40
|
||||
$ set disp/create/node=192.168.5.223/trans=tcpip
|
||||
|
||||
Note: This set-up should be enough, if you are working on standalone server or
|
||||
clustered environment, but if you want to use Vim as internode editor in
|
||||
Note: This set-up should be enough, if you are working on a standalone server or
|
||||
clustered environment, but if you want to use Vim as an internode editor in
|
||||
DECNET environment, it will satisfy as well.
|
||||
You just have to define the "whole" path: >
|
||||
|
||||
$ define VIM "<server_name>[""user password""]::device:<path>"
|
||||
$ vi*m :== "mcr VIM:VIM.EXE"
|
||||
|
||||
As for example: >
|
||||
For example: >
|
||||
|
||||
$ define VIM "PLUTO::RF10:[UTIL.VIM]"
|
||||
$ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required
|
||||
@@ -300,12 +297,12 @@ For more information type $help set disp in VMS prompt.
|
||||
|
||||
4) If you are working on MS-Windows or some other non X/Window environment
|
||||
you need to set up one X server and run Vim as in point 2.
|
||||
For MS-Windows there are available free X servers as MIX , Omni X etc.,
|
||||
For MS-Windows there are available free X servers as MIX, Omni X etc.,
|
||||
as well as excellent commercial products as eXcursion or ReflectionX with
|
||||
built-in DEC support.
|
||||
|
||||
Please note, that executables without GUI are slightly faster during startup
|
||||
then with enabled GUI in character mode. Therefore, if you do not use GUI
|
||||
than with enabled GUI in character mode. Therefore, if you do not use GUI
|
||||
features, it is worth to choose non GUI executables.
|
||||
|
||||
==============================================================================
|
||||
@@ -326,8 +323,8 @@ features, it is worth to choose non GUI executables.
|
||||
8.12 diff-mode
|
||||
8.13 Allow '$' in C keywords
|
||||
8.14 VIMTUTOR for beginners
|
||||
8.15 Slow start in console mode issue
|
||||
8.16 Common VIM directory - different architectures
|
||||
8.15 Slow start in console mode issue
|
||||
8.16 Common VIM directory - different architectures
|
||||
|
||||
8.1 Backspace/delete
|
||||
|
||||
@@ -360,7 +357,7 @@ number, try these settings. >
|
||||
:set nowritebackup " does not have any purpose on VMS. It's the
|
||||
" default.
|
||||
|
||||
Recovery is working perfect as well from the default swap file.
|
||||
Recovery is working perfectly as well from the default swap file.
|
||||
Read more with :help swapfile
|
||||
|
||||
(Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy
|
||||
@@ -386,7 +383,7 @@ Note: You may use <,> brackets as well (device:<path>file.ext;version) as
|
||||
rf10:<user.zay.work>test.c;1
|
||||
|
||||
(David Elins <delins@foliage.com>, Jerome Lauret
|
||||
<JLAURET@mail.chem.sunysb.edu> Vim 5.6 )
|
||||
<JLAURET@mail.chem.sunysb.edu> Vim 5.6)
|
||||
|
||||
|
||||
8.5 Remote host invocation
|
||||
@@ -445,14 +442,14 @@ Terminal entry not found in termcap
|
||||
builtin_dumb
|
||||
defaulting to 'vt320'
|
||||
---
|
||||
The solution is to define default terminal name: >
|
||||
The solution is to define the default terminal name: >
|
||||
|
||||
$ ! unknown terminal name. Let us use vt320 or ansi instead.
|
||||
$ ! Note: it's case sensitive
|
||||
$ define term "vt320"
|
||||
|
||||
Terminals from VT100 to VT320 (as V300, VT220, VT200 ) do not need any extra
|
||||
keyboard mappings. They should work perfect as they are, including arrows,
|
||||
Terminals from VT100 to VT320 (as V300, VT220, VT200) do not need any extra
|
||||
keyboard mappings. They should work perfectly as they are, including arrows,
|
||||
Ins, Del buttons etc., except Backspace in GUI mode. To solve it, add to
|
||||
.gvimrc: >
|
||||
|
||||
@@ -465,8 +462,8 @@ your .vimrc file: >
|
||||
|
||||
set ttyfast " set fast terminal
|
||||
|
||||
Note: if you're using Vim on remote host or through very slow connection, it's
|
||||
recommended to avoid fast terminal option with: >
|
||||
Note: if you're using Vim on remote host or through a very slow connection, it's
|
||||
recommended to avoid the fast terminal option with: >
|
||||
|
||||
set nottyfast " set terminal to slow mode
|
||||
|
||||
@@ -483,8 +480,8 @@ special commands to execute executables: >
|
||||
|
||||
OpenVMS users always have to be aware that the Vim command :! "just" drop them
|
||||
to DCL prompt. This feature is possible to use without any problem with all
|
||||
DCL commands, but if we want to execute some program as XXD, CTAGS, JTAGS etc.
|
||||
we're running into trouble if we follow the Vim documentation (see: help
|
||||
DCL commands, but if we want to execute some programs such as XXD, CTAGS, JTAGS,
|
||||
etc. we're running into trouble if we follow the Vim documentation (see: help
|
||||
xxd).
|
||||
|
||||
Solution: Execute with the MC command and add the full path to the executable.
|
||||
@@ -534,7 +531,7 @@ Example: >
|
||||
|
||||
$define SYS$PRINT HP5ANSI
|
||||
|
||||
You can print out whole buffer or just the marked area.
|
||||
You can print out the whole buffer or just the marked area.
|
||||
More info under :help hardcopy
|
||||
|
||||
(Zoltan Arpadffy, Vim 6.0c)
|
||||
@@ -561,16 +558,16 @@ will be confused after a window-resize.
|
||||
From 6.0 diff functionality has been implemented, but OpenVMS does not use
|
||||
GNU/Unix like diff therefore built in diff does not work.
|
||||
There is a simple solution to solve this anomaly. Install a Unix like diff
|
||||
and Vim will work perfect in diff mode too. You just have to redefine your
|
||||
and Vim will work perfectly in diff mode too. You just have to redefine your
|
||||
diff program as: >
|
||||
|
||||
define /nolog diff <GNU_PATH>diff.exe
|
||||
|
||||
Another, more sophisticated solution is described below (8.12 diff-mode)
|
||||
There are some other programs as patch, make etc that may cause same problems.
|
||||
At www.polarhome.com is possible to download an GNU package for Alpha and VAX
|
||||
boxes that is meant to solve GNU problems on OpenVMS.
|
||||
( Zoltan Arpadffy, Vim 6.1)
|
||||
There are other programs such as patch, make etc that may cause the same
|
||||
problems. At www.polarhome.com is possible to download an GNU package for
|
||||
Alpha and VAX boxes that is meant to solve GNU problems on OpenVMS.
|
||||
(Zoltan Arpadffy, Vim 6.1)
|
||||
|
||||
|
||||
8.12 diff-mode
|
||||
@@ -632,7 +629,7 @@ You can now compare files in 4 ways: >
|
||||
3. VIM diff: $ VIMDIFF <FILE1> <FILE2>
|
||||
4. GVIM diff: $ GVIMDIFF <FILE1> <FILE2>
|
||||
|
||||
( Coen Engelbarts, Vim 6.1)
|
||||
(Coen Engelbarts, Vim 6.1)
|
||||
|
||||
|
||||
8.13 Allow '$' in C keywords
|
||||
@@ -653,35 +650,36 @@ Now word-based commands, e.g. the '*'-search-command and the CTRL-]
|
||||
tag-lookup, work on the whole identifier. (Ctags on VMS also supports '$' in
|
||||
C keywords since ctags version 5.1.)
|
||||
|
||||
( Coen Engelbarts, Vim 6.1)
|
||||
(Coen Engelbarts, Vim 6.1)
|
||||
|
||||
8.14 VIMTUTOR for beginners
|
||||
|
||||
It exits VIMTUTOR.COM DCL script that can help Vim beginners to learn/make
|
||||
first steps with Vim on OpenVMS. Depending of binary distribution you may
|
||||
start it with: >
|
||||
The VIMTUTOR.COM DCL script can help Vim beginners to learn/make their first
|
||||
steps with Vim on OpenVMS. Depending of binary distribution you may start it
|
||||
with: >
|
||||
|
||||
@vim:vimtutor
|
||||
|
||||
(Thomas.R.Wyant III, Vim 6.1)
|
||||
|
||||
8.14 Slow start in console mode issue
|
||||
8.16 Slow start in console mode issue
|
||||
|
||||
As GUI/GTK Vim works equally well in console mode, many administrators
|
||||
deploy those executables system wide.
|
||||
Unfortunately, on a remote slow connections GUI/GTK executables behave rather
|
||||
slow when user wants to run Vim just in the console mode - because of X environment detection timeout.
|
||||
slow when user wants to run Vim just in the console mode - because of X
|
||||
environment detection timeout.
|
||||
|
||||
Luckily, there is a simple solution for that. Administrators need to deploy
|
||||
both GUI/GTK build and just console build executables, like below: >
|
||||
|
||||
|- vim73
|
||||
|----- doc
|
||||
|----- syntax
|
||||
|----- syntax
|
||||
vimrc (system rc files)
|
||||
gvimrc
|
||||
gvim.exe (the renamed GUI or GTK built vim.exe)
|
||||
vim.exe (the console only executable)
|
||||
gvim.exe (the renamed GUI or GTK built vim.exe)
|
||||
vim.exe (the console only executable)
|
||||
|
||||
Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: >
|
||||
|
||||
@@ -692,7 +690,7 @@ Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: >
|
||||
$ gv*im :== spawn/nowait/input=NLA0 mcr VIM:GVIM.EXE -g -GEOMETRY 80x40
|
||||
|
||||
|
||||
Like this, users that do not have X environment and want to use Vim just in
|
||||
Like this, users that do not have X environment and want to use Vim just in
|
||||
console mode can avoid performance problems.
|
||||
|
||||
(Zoltan Arpadffy, Vim 7.2)
|
||||
@@ -714,8 +712,8 @@ View of Cluster from system ID 11655 node: TOR
|
||||
+---------------------------------+
|
||||
|
||||
It is convenient to have a common VIM directory but execute different
|
||||
executables.
|
||||
There are more solutions for this problem:
|
||||
executables.
|
||||
There are several solutions for this problem:
|
||||
|
||||
Solution 1. All executables in the same directory with different names
|
||||
This is easily done with the following script that can be added
|
||||
@@ -769,7 +767,7 @@ GNU_TOOLS.ZIP package downloadable from http://www.polarhome.com/vim/
|
||||
Version 7.3
|
||||
- CTAGS 5.8 included
|
||||
- VMS compile warnings fixed - floating-point overflow warning corrected on VAX
|
||||
- filepath completition corrected - too many chars were escaped in filename
|
||||
- filepath completion corrected - too many chars were escaped in filename
|
||||
and shell commands
|
||||
- the following plugins are included into VMS runtime:
|
||||
genutils 2.4, multiselect 2.2, multvals 3.1, selectbuf 4.3,
|
||||
@@ -784,10 +782,10 @@ Version 7.3
|
||||
Version 7.2 (2008 Aug 9)
|
||||
- VCF files write corrected
|
||||
- CTAGS 5.7 included
|
||||
- corrected make_vms.mms (on VAX gave syntax error)
|
||||
- corrected make_vms.mms (on VAX gave syntax error)
|
||||
|
||||
Version 7.1 (2007 Jun 15)
|
||||
- create TAGS file from menu
|
||||
- create TAGS file from menu
|
||||
|
||||
Version 7 (2006 May 8)
|
||||
- Improved low level char input (affects just console mode)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 7.3. Last change: 2011 May 28
|
||||
*os_win32.txt* For Vim version 7.3. Last change: 2011 Aug 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@@ -316,11 +316,11 @@ A. When using :! to run an external command, you can run it with "start": >
|
||||
There are two optional arguments (see the next Q):
|
||||
/min the window will be minimized.
|
||||
/b" no console window will be opened
|
||||
You can only one of these flags at a time. A second second one will be
|
||||
You can use only one of these flags at a time. A second one will be
|
||||
treated as the start of the command.
|
||||
|
||||
Q. How do I avoid getting a window for programs that I run asynchronously?
|
||||
A. You have two possible solutions depending on what exactly do you want:
|
||||
A. You have two possible solutions depending on what you want:
|
||||
1) You may use the /min flag in order to run program in a minimized state
|
||||
with no other changes. It will work equally for console and GUI
|
||||
applications.
|
||||
@@ -328,7 +328,7 @@ A. You have two possible solutions depending on what exactly do you want:
|
||||
console window for them (GUI applications are not affected). But you
|
||||
should use this flag only if the application you run doesn't require any
|
||||
input. Otherwise it will get an EOF error because its input stream
|
||||
(stdin) would be redirected to \\.\NUL (stdoud and stderr too).
|
||||
(stdin) would be redirected to \\.\NUL (stdout and stderr too).
|
||||
|
||||
Example for a console application, run Exuberant ctags: >
|
||||
:!start /min ctags -R .
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 7.3. Last change: 2011 May 25
|
||||
*pattern.txt* For Vim version 7.3. Last change: 2011 Sep 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -21,7 +21,7 @@ explanations are in chapter 27 |usr_27.txt|.
|
||||
10. Highlighting matches |match-highlight|
|
||||
|
||||
==============================================================================
|
||||
1. Search commands *search-commands* *E486*
|
||||
1. Search commands *search-commands*
|
||||
|
||||
*/*
|
||||
/{pattern}[/]<CR> Search forward for the [count]'th occurrence of
|
||||
@@ -150,6 +150,11 @@ use <Esc> to abandon the search.
|
||||
All matches for the last used search pattern will be highlighted if you set
|
||||
the 'hlsearch' option. This can be suspended with the |:nohlsearch| command.
|
||||
|
||||
When no match is found you get the error: *E486* Pattern not found
|
||||
Note that for the |:global| command this behaves like a normal message, for Vi
|
||||
compatibility. For the |:s| command the "e" flag can be used to avoid the
|
||||
error message |:s_flags|.
|
||||
|
||||
*search-offset* *{offset}*
|
||||
These commands search for the specified pattern. With "/" and "?" an
|
||||
additional offset may be given. There are two types of offsets: line offsets
|
||||
@@ -1036,11 +1041,9 @@ x A single character, with no special meaning, matches itself
|
||||
These items only work for 8-bit characters.
|
||||
*/[[=* *[==]*
|
||||
- An equivalence class. This means that characters are matched that
|
||||
have almost the same meaning, e.g., when ignoring accents. The form
|
||||
is:
|
||||
have almost the same meaning, e.g., when ignoring accents. This
|
||||
only works for Unicode, latin1 and latin9. The form is:
|
||||
[=a=]
|
||||
Currently this is only implemented for latin1. Also works for the
|
||||
latin1 characters in utf-8 and latin9.
|
||||
*/[[.* *[..]*
|
||||
- A collation element. This currently simply accepts a single
|
||||
character in the form:
|
||||
|
||||
+95
-34
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2011 May 31
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2011 Sep 26
|
||||
|
||||
-----------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
@@ -89,7 +89,7 @@ Copyright: Copyright (C) 1999-2011 Charles E Campbell, Jr *netrw-copyright*
|
||||
Marked Files: Unmarking............................|netrw-mu|
|
||||
Netrw Browser Variables............................|netrw-browser-var|
|
||||
Netrw Browsing And Option Incompatibilities........|netrw-incompatible|
|
||||
Netrw Settings.....................................|netrw-settings|
|
||||
Netrw Settings Window..............................|netrw-settings-window|
|
||||
Obtaining A File...................................|netrw-O|
|
||||
Preview Window.....................................|netrw-p|
|
||||
Previous Window....................................|netrw-P|
|
||||
@@ -294,14 +294,14 @@ DIRECTORY LISTING *netrw-trailingslash* *netrw-dirlist* {{{2
|
||||
CHANGING USERID AND PASSWORD *netrw-chgup* *netrw-userpass* {{{2
|
||||
|
||||
Attempts to use ftp will prompt you for a user-id and a password.
|
||||
These will be saved in global variables g:netrw_uid and
|
||||
s:netrw_passwd; subsequent uses of ftp will re-use those two items to
|
||||
simplify the further use of ftp. However, if you need to use a
|
||||
different user id and/or password, you'll want to call NetUserPass()
|
||||
These will be saved in global variables |g:netrw_uid| and
|
||||
|s:netrw_passwd|; subsequent use of ftp will re-use those two strings,
|
||||
thereby simplifying use of ftp. However, if you need to use a
|
||||
different user id and/or password, you'll want to call |NetUserPass()|
|
||||
first. To work around the need to enter passwords, check if your ftp
|
||||
supports a <.netrc> file in your home directory. Also see
|
||||
|netrw-passwd| (and if you're using ssh/scp hoping to figure out how
|
||||
to not need to use passwords, look at |netrw-ssh-hack|).
|
||||
to not need to use passwords for scp, look at |netrw-ssh-hack|).
|
||||
|
||||
:NetUserPass [uid [password]] -- prompts as needed
|
||||
:call NetUserPass() -- prompts for uid and password
|
||||
@@ -331,7 +331,8 @@ settings are described below, in |netrw-browser-options|, and in
|
||||
netrw edits a file. The file is first edited, and
|
||||
then the function reference (|Funcref|) is called.
|
||||
This variable may also hold a |List| of Funcrefs.
|
||||
(default) not defined
|
||||
(default) not defined. (the capital in g:Netrw...
|
||||
is required by its holding a function reference)
|
||||
>
|
||||
Example: place in .vimrc; affects all file opening
|
||||
fun! MyFuncRef()
|
||||
@@ -479,6 +480,9 @@ variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to
|
||||
let g:netrw_scp_cmd = '"c:\Program Files\PuTTY\pscp.exe" -q -batch'
|
||||
let g:netrw_sftp_cmd= '"c:\Program Files\PuTTY\psftp.exe"'
|
||||
<
|
||||
(note: it has been reported that windows 7 with putty v0.6's "-batch" option
|
||||
doesn't work, so its best to leave it off for that system)
|
||||
|
||||
See |netrw-p8| for more about putty, pscp, psftp, etc.
|
||||
|
||||
Ftp, an old protocol, seems to be blessed by numerous implementations.
|
||||
@@ -716,13 +720,16 @@ below, a {netfile} is an url to a remote file.
|
||||
|
||||
|
||||
==============================================================================
|
||||
8. Variables and Options *netrw-options* *netrw-var* {{{1
|
||||
8. Variables and Options *netrw-settings* {{{1
|
||||
|
||||
(if you're interested in the netrw browser settings, see: |netrw-browser-var|)
|
||||
(also see: |netrw-options| |netrw-variables| |netrw-protocol|
|
||||
|netrw-browser-settings| |netrw-browser-options|
|
||||
|netrw-browser-var| )
|
||||
|
||||
The <netrw.vim> script provides several variables which act as options to
|
||||
affect <netrw.vim>'s file transfer behavior. These variables typically may be
|
||||
set in the user's <.vimrc> file: (see also |netrw-settings| |netrw-protocol|)
|
||||
*netrw-options*
|
||||
>
|
||||
-------------
|
||||
Netrw Options
|
||||
@@ -754,6 +761,7 @@ set in the user's <.vimrc> file: (see also |netrw-settings| |netrw-protocol|)
|
||||
=1 use default method to do ftp >
|
||||
-----------------------------------------------------------------------
|
||||
<
|
||||
*netrw-internal-variables*
|
||||
The script will also make use of the following variables internally, albeit
|
||||
temporarily.
|
||||
>
|
||||
@@ -1147,15 +1155,14 @@ allows one to open a new window to hold the new directory listing or file. A
|
||||
horizontal split is used. (for vertical splitting, see |netrw-v|)
|
||||
|
||||
Normally, the o key splits the window horizontally with the new window and
|
||||
cursor at the top. To change to splitting the window horizontally with the
|
||||
new window and cursor at the bottom, have
|
||||
|
||||
let g:netrw_alto = 1
|
||||
|
||||
in your <.vimrc>. (also see |netrw-t| |netrw-T| |netrw-v|)
|
||||
cursor at the top.
|
||||
|
||||
Associated setting variables: |g:netrw_alto| |g:netrw_winsize|
|
||||
|
||||
Related Actions |netrw-cr| |netrw-p| |netrw-t| |netrw-T| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_alto| control above/below splitting
|
||||
|g:netrw_winsize| control initial sizing
|
||||
|
||||
BROWSING WITH A NEW TAB *netrw-t* *netrw-T* {{{2
|
||||
|
||||
@@ -1164,8 +1171,9 @@ allows one to open a new window holding the new directory listing or file in
|
||||
a new tab. The "T" version puts the file or directory into a background tab
|
||||
(see |gT|)
|
||||
|
||||
Related actions: |netrw-o| |netrw-v|
|
||||
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-p| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_winsize| control initial sizing
|
||||
|
||||
BROWSING WITH A VERTICALLY SPLIT WINDOW *netrw-v* {{{2
|
||||
|
||||
@@ -1174,18 +1182,18 @@ allows one to open a new window to hold the new directory listing or file. A
|
||||
vertical split is used. (for horizontal splitting, see |netrw-o|)
|
||||
|
||||
Normally, the v key splits the window vertically with the new window and
|
||||
cursor at the left. To change to splitting the window vertically with the new
|
||||
window and cursor at the right, have
|
||||
|
||||
let g:netrw_altv = 1
|
||||
|
||||
in your <.vimrc>. (also see: |netrw-o| |netrw-t| |netrw-T|)
|
||||
cursor at the left.
|
||||
|
||||
There is only one tree listing buffer; using "v" on a displayed subdirectory
|
||||
will split the screen, but the same buffer will be shown twice.
|
||||
|
||||
Associated setting variable: |g:netrw_altv| |g:netrw_winsize|
|
||||
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-T| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_altv| control right/left splitting
|
||||
|g:netrw_winsize| control initial sizing
|
||||
|
||||
|
||||
CHANGE LISTING STYLE (THIN LONG WIDE TREE) *netrw-i* {{{2
|
||||
|
||||
@@ -1386,6 +1394,7 @@ to remove it again using the g:netrw_rmf_cmd variable. Its default value is:
|
||||
|
||||
g:netrw_rmf_cmd: ssh HOSTNAME rm -f
|
||||
|
||||
Related topics: |netrw-d|
|
||||
Associated setting variable: |g:netrw_local_rmdir| |g:netrw_rm_cmd|
|
||||
|g:netrw_rmdir_cmd| |g:netrw_ssh_cmd|
|
||||
|
||||
@@ -1520,7 +1529,7 @@ What it means:
|
||||
Associated setting variables: |g:netrw_hide| |g:netrw_list_hide|
|
||||
Associated topics: |netrw-a| |netrw-gh| |netrw-mh|
|
||||
|
||||
|
||||
*netrw-sort-sequence*
|
||||
EDITING THE SORTING SEQUENCE *netrw-S* *netrw-sortsequence* {{{2
|
||||
|
||||
When "Sorted by" is name, one may specify priority via the sorting sequence
|
||||
@@ -1723,9 +1732,9 @@ directory's name. A bare <CR> at that point will abort the making of the
|
||||
directory. Attempts to make a local directory that already exists (as either
|
||||
a file or a directory) will be detected, reported on, and ignored.
|
||||
|
||||
Currently, making a directory via ftp is not supported.
|
||||
|
||||
Associated setting variable: |g:netrw_local_mkdir| |g:netrw_mkdir_cmd|
|
||||
Related topics: |netrw-D|
|
||||
Associated setting variables: |g:netrw_local_mkdir| |g:netrw_mkdir_cmd|
|
||||
|g:netrw_remote_mkdir|
|
||||
|
||||
|
||||
MAKING THE BROWSING DIRECTORY THE CURRENT DIRECTORY *netrw-c* {{{2
|
||||
@@ -1953,10 +1962,11 @@ MARKED FILES: UNMARKING *netrw-mu* {{{2
|
||||
|
||||
The "mu" mapping will unmark all currently marked files.
|
||||
|
||||
|
||||
*netrw-browser-settings*
|
||||
NETRW BROWSER VARIABLES *netrw-browser-options* *netrw-browser-var* {{{2
|
||||
|
||||
(if you're interested in the netrw file transfer settings, see |netrw-options|)
|
||||
(if you're interested in the netrw file transfer settings, see |netrw-options|
|
||||
and |netrw-protocol|)
|
||||
|
||||
The <netrw.vim> browser provides settings in the form of variables which
|
||||
you may modify; by placing these settings in your <.vimrc>, you may customize
|
||||
@@ -2006,6 +2016,15 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
Will compress marked files with this
|
||||
command
|
||||
|
||||
*g:Netrw_corehandler* Allows one to specify something additional
|
||||
to do when handling <core> files via netrw's
|
||||
browser's "x" command (see |netrw-x|). If
|
||||
present, g:Netrw_corehandler specifies
|
||||
either one or more function references
|
||||
(see |Funcref|). (the capital g:Netrw...
|
||||
is required its holding a function reference)
|
||||
|
||||
|
||||
*g:netrw_ctags* ="ctags"
|
||||
The default external program used to create tags
|
||||
|
||||
@@ -2157,6 +2176,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
columnar.
|
||||
|
||||
*g:netrw_mkdir_cmd* command for making a remote directory
|
||||
via ssh (also see |g:netrw_remote_mkdir|)
|
||||
default: "ssh USEPORT HOSTNAME mkdir"
|
||||
|
||||
*g:netrw_mousemaps* =1 (default) enables mouse buttons while
|
||||
@@ -2167,6 +2187,15 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
rightmouse : remove file/directory
|
||||
=0: disables mouse maps
|
||||
|
||||
*g:netrw_nobeval* doesn't exist (default)
|
||||
If this variable exists, then balloon
|
||||
evaluation will be suppressed
|
||||
(see |'ballooneval'|)
|
||||
|
||||
*g:netrw_remote_mkdir* command for making a local directory
|
||||
via ftp (also see |g:netrw_mkdir_cmd|)
|
||||
default: "mkdir"
|
||||
|
||||
*g:netrw_retmap* if it exists and is set to one, then:
|
||||
* if in a netrw-selected file, AND
|
||||
* no normal-mode <2-leftmouse> mapping exists,
|
||||
@@ -2279,6 +2308,9 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
is an integer describing the percentage of the
|
||||
current netrw buffer's window to be used for
|
||||
the new window.
|
||||
If g:netrw_winsize is less than zero, then
|
||||
the absolute value of g:netrw_winsize lines
|
||||
or columns will be used for the new window.
|
||||
default: 50 (for 50%)
|
||||
|
||||
*g:netrw_xstrlen* Controls how netrw computes string lengths,
|
||||
@@ -2313,7 +2345,7 @@ file you edit; this apparently also applies to directories. In other words,
|
||||
autochdir sets the current directory to that containing the "file" (even if
|
||||
that "file" is itself a directory).
|
||||
|
||||
NETRW BROWSER SETTINGS *netrw-settings* {{{2
|
||||
NETRW SETTINGS WINDOW *netrw-settings-window* {{{2
|
||||
|
||||
With the NetrwSettings.vim plugin, >
|
||||
:NetrwSettings
|
||||
@@ -2356,7 +2388,6 @@ Related topics:
|
||||
* To automatically make the currently browsed directory the current
|
||||
directory, see |g:netrw_keepdir|.
|
||||
|
||||
|
||||
*netrw-createfile*
|
||||
OPEN A NEW FILE IN NETRW'S CURRENT DIRECTORY *netrw-%*
|
||||
|
||||
@@ -2390,8 +2421,7 @@ PREVIOUS WINDOW *netrw-P* *netrw-prvwin* {{{2
|
||||
|
||||
To edit a file or directory in the previously used (last accessed) window (see
|
||||
:he |CTRL-W_p|), press a "P". If there's only one window, then the one window
|
||||
will be horizontally split (above/below splitting is controlled by
|
||||
|g:netrw_alto|, and its initial size is controlled by |g:netrw_winsize|).
|
||||
will be horizontally split (by default).
|
||||
|
||||
If there's more than one window, the previous window will be re-used on
|
||||
the selected file/directory. If the previous window's associated buffer
|
||||
@@ -2399,6 +2429,13 @@ has been modified, and there's only one window with that buffer, then
|
||||
the user will be asked if s/he wishes to save the buffer first (yes,
|
||||
no, or cancel).
|
||||
|
||||
Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-T| |netrw-v|
|
||||
Associated setting variables:
|
||||
|g:netrw_alto| control above/below splitting
|
||||
|g:netrw_altv| control right/left splitting
|
||||
|g:netrw_preview| control horizontal vs vertical splitting
|
||||
|g:netrw_winsize| control initial sizing
|
||||
|
||||
|
||||
REFRESHING THE LISTING *netrw-ctrl-l* *netrw-ctrl_l* {{{2
|
||||
|
||||
@@ -2804,6 +2841,30 @@ which is loaded automatically at startup (assuming :set nocp).
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
v143: Jun 01, 2011 * |g:netrw_winsize| will accept a negative
|
||||
number; the absolute value of it will then
|
||||
be used to specify lines/columns instead of
|
||||
a percentage.
|
||||
Jul 05, 2011 * the "d" map now supports mkdir via ftp
|
||||
See |netrw-d| and |g:netrw_remote_mkdir|
|
||||
Jul 11, 2011 * Changed Explore!, Sexplore!, and Vexplore
|
||||
to use a percentage of |winwidth()| instead
|
||||
of a percentage of |winheight()|.
|
||||
Jul 11, 2011 * included support for https://... I'm just
|
||||
beginning to test this, however.
|
||||
Aug 01, 2011 * changed RestoreOptions to also restore
|
||||
cursor position in netrw buffers.
|
||||
Aug 12, 2011 * added a note about "%" to the balloon
|
||||
Aug 30, 2011 * if |g:netrw_nobeval| exists, then balloon
|
||||
evaluation is suppressed.
|
||||
Aug 31, 2011 * (Benjamin R Haskell) provided a patch that
|
||||
implements non-standard port handling for
|
||||
files opened via the remote browser.
|
||||
Aug 31, 2011 * Fixed a **//pattern Explorer bug
|
||||
Sep 15, 2011 * (reported by Francesco Campana) netrw
|
||||
now permits the "@" to be part of the
|
||||
user id (if there's an @ that appears
|
||||
to the right).
|
||||
v142: Apr 06, 2011 * I modified NetrwRemoteListing() to use
|
||||
shellescape(fnameescape(s:path),1) for
|
||||
the benefit of those using scp://.../
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_vimball.txt* For Vim version 7.3. Last change: 2011 Apr 02
|
||||
*pi_vimball.txt* For Vim version 7.3. Last change: 2011 Sep 26
|
||||
|
||||
----------------
|
||||
Vimball Archiver
|
||||
@@ -16,6 +16,7 @@ Copyright: (c) 2004-2011 by Charles E. Campbell, Jr. *Vimball-copyright*
|
||||
1. Contents *vba* *vimball* *vimball-contents*
|
||||
|
||||
1. Contents......................................: |vimball-contents|
|
||||
2. Vimball Introduction..........................: |vimball-intro|
|
||||
3. Vimball Manual................................: |vimball-manual|
|
||||
MkVimball.....................................: |:MkVimball|
|
||||
UseVimball....................................: |:UseVimball|
|
||||
@@ -176,6 +177,8 @@ WINDOWS *vimball-windows*
|
||||
==============================================================================
|
||||
4. Vimball History *vimball-history* {{{1
|
||||
|
||||
34 : Sep 22, 2011 * "UseVimball path" now supports a non-full path by
|
||||
prepending the current directory to it.
|
||||
33 : Apr 02, 2011 * Gave priority to *.vmb over *.vba
|
||||
* Changed silent! to sil! (shorter)
|
||||
* Safed |'swf'| setting (during vimball extraction,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2011 May 24
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2011 Aug 14
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
@@ -69,7 +69,6 @@ Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
let g:loaded_zipPlugin= 1
|
||||
let g:loaded_zip = 1
|
||||
<
|
||||
<
|
||||
|
||||
==============================================================================
|
||||
3. Additional Extensions *zip-extension*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 7.3. Last change: 2010 Sep 18
|
||||
*starting.txt* For Vim version 7.3. Last change: 2011 Jul 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -424,12 +424,7 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
"-d con:30/10/600/150". But you can also use it to start
|
||||
editing on another device, e.g., AUX:. {not in Vi}
|
||||
*-f*
|
||||
-f Amiga: Do not restart Vim to open a new window. This
|
||||
option should be used when Vim is started by a program that
|
||||
will wait for the edit session to finish (e.g., mail or
|
||||
readnews). See |amiga-window|.
|
||||
|
||||
GUI: Do not disconnect from the program that started Vim.
|
||||
-f GUI: Do not disconnect from the program that started Vim.
|
||||
'f' stands for "foreground". If omitted, the GUI forks a new
|
||||
process and exits the current one. "-f" should be used when
|
||||
gvim is started by a program that will wait for the edit
|
||||
@@ -437,8 +432,14 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
never to fork, include 'f' in 'guioptions' in your |gvimrc|.
|
||||
Careful: You can use "-gf" to start the GUI in the foreground,
|
||||
but "-fg" is used to specify the foreground color. |gui-fork|
|
||||
|
||||
Amiga: Do not restart Vim to open a new window. This
|
||||
option should be used when Vim is started by a program that
|
||||
will wait for the edit session to finish (e.g., mail or
|
||||
readnews). See |amiga-window|.
|
||||
{not in Vi}
|
||||
|
||||
|
||||
*--nofork*
|
||||
--nofork GUI: Do not fork. Same as |-f|.
|
||||
*-u* *E282*
|
||||
|
||||
+50
-6
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2011 May 06
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2011 Sep 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -866,13 +866,13 @@ used.
|
||||
Detecting whether a file is csh or tcsh is notoriously hard. Some systems
|
||||
symlink /bin/csh to /bin/tcsh, making it almost impossible to distinguish
|
||||
between csh and tcsh. In case VIM guesses wrong you can set the
|
||||
"filetype_csh" variable. For using csh: >
|
||||
|
||||
:let filetype_csh = "csh"
|
||||
"filetype_csh" variable. For using csh: *g:filetype_csh*
|
||||
>
|
||||
:let g:filetype_csh = "csh"
|
||||
|
||||
For using tcsh: >
|
||||
|
||||
:let filetype_csh = "tcsh"
|
||||
:let g:filetype_csh = "tcsh"
|
||||
|
||||
Any script with a tcsh extension or a standard tcsh filename (.tcshrc,
|
||||
tcsh.tcshrc, tcsh.login) will have filetype tcsh. All other tcsh/csh scripts
|
||||
@@ -2372,6 +2372,12 @@ This will make the syntax synchronization start 50 lines before the first
|
||||
displayed line. The default value is 10. The disadvantage of using a larger
|
||||
number is that redrawing can become slow.
|
||||
|
||||
Vim tries to guess what type a ".r" file is. If it can't be detected (from
|
||||
comment lines), the default is "r". To make the default rexx add this line to
|
||||
your .vimrc: *g:filetype_r*
|
||||
>
|
||||
:let g:filetype_r = "r"
|
||||
|
||||
|
||||
RUBY *ruby.vim* *ft-ruby-syntax*
|
||||
|
||||
@@ -2599,8 +2605,41 @@ reduce this, the "sh_maxlines" internal variable can be set. Example: >
|
||||
The default is to use the twice sh_minlines. Set it to a smaller number to
|
||||
speed up displaying. The disadvantage is that highlight errors may appear.
|
||||
|
||||
*g:sh_isk* *g:sh_noisk*
|
||||
The shell languages appear to let "." be part of words, commands, etc;
|
||||
consequently it should be in the isk for sh.vim. As of v116 of syntax/sh.vim,
|
||||
syntax/sh.vim will append the "." to |'iskeyword'| by default; you may control
|
||||
this behavior with: >
|
||||
let g:sh_isk = '..whatever characters you want as part of iskeyword'
|
||||
let g:sh_noisk= 1 " otherwise, if this exists, the isk will NOT chg
|
||||
<
|
||||
*sh-embed* *sh-awk*
|
||||
Sh: EMBEDDING LANGUAGES~
|
||||
|
||||
SPEEDUP (AspenTech plant simulator) *spup.vim* *ft-spup-syntax*
|
||||
You may wish to embed languages into sh. I'll give an example courtesy of
|
||||
Lorance Stinson on how to do this with awk as an example. Put the following
|
||||
file into $HOME/.vim/after/syntax/sh/awkembed.vim: >
|
||||
|
||||
" AWK Embedding: {{{1
|
||||
" ==============
|
||||
" Shamelessly ripped from aspperl.vim by Aaron Hope.
|
||||
if exists("b:current_syntax")
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
syn include @AWKScript syntax/awk.vim
|
||||
syn region AWKScriptCode matchgroup=AWKCommand start=+[=\\]\@<!'+ skip=+\\'+ end=+'+ contains=@AWKScript contained
|
||||
syn region AWKScriptEmbedded matchgroup=AWKCommand start=+\<awk\>+ skip=+\\$+ end=+[=\\]\@<!'+me=e-1 contains=@shIdList,@shExprList2 nextgroup=AWKScriptCode
|
||||
syn cluster shCommandSubList add=AWKScriptEmbedded
|
||||
hi def link AWKCommand Type
|
||||
<
|
||||
This code will then let the awk code in the single quotes: >
|
||||
awk '...awk code here...'
|
||||
be highlighted using the awk highlighting syntax. Clearly this may be
|
||||
extended to other languages.
|
||||
|
||||
|
||||
SPEEDUP *spup.vim* *ft-spup-syntax*
|
||||
(AspenTech plant simulator)
|
||||
|
||||
The Speedup syntax file has some options:
|
||||
|
||||
@@ -2683,6 +2722,8 @@ sections, subsections, etc are supported. Put >
|
||||
in your <.vimrc>, and :set fdm=syntax. I suggest doing the latter via a
|
||||
modeline at the end of your LaTeX file: >
|
||||
% vim: fdm=syntax
|
||||
If your system becomes too slow, then you might wish to look into >
|
||||
http://vim.wikia.com/wiki/Keep_folds_closed_while_inserting_text
|
||||
<
|
||||
*tex-nospell*
|
||||
Tex: Don't Want Spell Checking In Comments? ~
|
||||
@@ -2723,6 +2764,9 @@ If you have a slow computer, you may wish to reduce the values for >
|
||||
increase them. This primarily affects synchronizing (i.e. just what group,
|
||||
if any, is the text at the top of the screen supposed to be in?).
|
||||
|
||||
Another cause of slow highlighting is due to syntax-driven folding; see
|
||||
|tex-folding| for a way around this.
|
||||
|
||||
*tex-morecommands* *tex-package*
|
||||
Tex: Want To Highlight More Commands? ~
|
||||
|
||||
|
||||
+21
-2
@@ -4280,6 +4280,9 @@ E848 syntax.txt /*E848*
|
||||
E849 syntax.txt /*E849*
|
||||
E85 options.txt /*E85*
|
||||
E850 change.txt /*E850*
|
||||
E851 gui_x11.txt /*E851*
|
||||
E852 gui_x11.txt /*E852*
|
||||
E853 eval.txt /*E853*
|
||||
E86 windows.txt /*E86*
|
||||
E87 windows.txt /*E87*
|
||||
E88 windows.txt /*E88*
|
||||
@@ -5013,7 +5016,6 @@ cino-( indent.txt /*cino-(*
|
||||
cino-) indent.txt /*cino-)*
|
||||
cino-+ indent.txt /*cino-+*
|
||||
cino-/ indent.txt /*cino-\/*
|
||||
cino-2 indent.txt /*cino-2*
|
||||
cino-: indent.txt /*cino-:*
|
||||
cino-= indent.txt /*cino-=*
|
||||
cino-> indent.txt /*cino->*
|
||||
@@ -5040,6 +5042,7 @@ cino-p indent.txt /*cino-p*
|
||||
cino-star indent.txt /*cino-star*
|
||||
cino-t indent.txt /*cino-t*
|
||||
cino-u indent.txt /*cino-u*
|
||||
cino-w indent.txt /*cino-w*
|
||||
cino-{ indent.txt /*cino-{*
|
||||
cino-} indent.txt /*cino-}*
|
||||
cinoptions-values indent.txt /*cinoptions-values*
|
||||
@@ -5149,6 +5152,7 @@ cpo-+ options.txt /*cpo-+*
|
||||
cpo-- options.txt /*cpo--*
|
||||
cpo-. options.txt /*cpo-.*
|
||||
cpo-/ options.txt /*cpo-\/*
|
||||
cpo-; options.txt /*cpo-;*
|
||||
cpo-< options.txt /*cpo-<*
|
||||
cpo-> options.txt /*cpo->*
|
||||
cpo-A options.txt /*cpo-A*
|
||||
@@ -5743,6 +5747,7 @@ ft-ptcap-syntax syntax.txt /*ft-ptcap-syntax*
|
||||
ft-python-indent indent.txt /*ft-python-indent*
|
||||
ft-python-syntax syntax.txt /*ft-python-syntax*
|
||||
ft-quake-syntax syntax.txt /*ft-quake-syntax*
|
||||
ft-r-indent indent.txt /*ft-r-indent*
|
||||
ft-readline-syntax syntax.txt /*ft-readline-syntax*
|
||||
ft-rexx-syntax syntax.txt /*ft-rexx-syntax*
|
||||
ft-ruby-omni insert.txt /*ft-ruby-omni*
|
||||
@@ -5809,6 +5814,7 @@ g- undo.txt /*g-*
|
||||
g0 motion.txt /*g0*
|
||||
g8 various.txt /*g8*
|
||||
g:NetrwTopLvlMenu pi_netrw.txt /*g:NetrwTopLvlMenu*
|
||||
g:Netrw_corehandler pi_netrw.txt /*g:Netrw_corehandler*
|
||||
g:Netrw_funcref pi_netrw.txt /*g:Netrw_funcref*
|
||||
g:ada#Comment ft_ada.txt /*g:ada#Comment*
|
||||
g:ada#Ctags_Kinds ft_ada.txt /*g:ada#Ctags_Kinds*
|
||||
@@ -5838,6 +5844,8 @@ g:decada.Error_Format ft_ada.txt /*g:decada.Error_Format*
|
||||
g:decada.Make() ft_ada.txt /*g:decada.Make()*
|
||||
g:decada.Make_Command ft_ada.txt /*g:decada.Make_Command*
|
||||
g:decada.Unit_Name() ft_ada.txt /*g:decada.Unit_Name()*
|
||||
g:filetype_csh syntax.txt /*g:filetype_csh*
|
||||
g:filetype_r syntax.txt /*g:filetype_r*
|
||||
g:gnat ft_ada.txt /*g:gnat*
|
||||
g:gnat.Error_Format ft_ada.txt /*g:gnat.Error_Format*
|
||||
g:gnat.Find() ft_ada.txt /*g:gnat.Find()*
|
||||
@@ -5894,9 +5902,11 @@ g:netrw_maxfilenamelen pi_netrw.txt /*g:netrw_maxfilenamelen*
|
||||
g:netrw_menu pi_netrw.txt /*g:netrw_menu*
|
||||
g:netrw_mkdir_cmd pi_netrw.txt /*g:netrw_mkdir_cmd*
|
||||
g:netrw_mousemaps pi_netrw.txt /*g:netrw_mousemaps*
|
||||
g:netrw_nobeval pi_netrw.txt /*g:netrw_nobeval*
|
||||
g:netrw_nogx pi_netrw.txt /*g:netrw_nogx*
|
||||
g:netrw_preview pi_netrw.txt /*g:netrw_preview*
|
||||
g:netrw_rcp_cmd pi_netrw.txt /*g:netrw_rcp_cmd*
|
||||
g:netrw_remote_mkdir pi_netrw.txt /*g:netrw_remote_mkdir*
|
||||
g:netrw_retmap pi_netrw.txt /*g:netrw_retmap*
|
||||
g:netrw_rm_cmd pi_netrw.txt /*g:netrw_rm_cmd*
|
||||
g:netrw_rmdir_cmd pi_netrw.txt /*g:netrw_rmdir_cmd*
|
||||
@@ -5924,6 +5934,8 @@ g:netrw_use_nt_rcp pi_netrw.txt /*g:netrw_use_nt_rcp*
|
||||
g:netrw_win95ftp pi_netrw.txt /*g:netrw_win95ftp*
|
||||
g:netrw_winsize pi_netrw.txt /*g:netrw_winsize*
|
||||
g:netrw_xstrlen pi_netrw.txt /*g:netrw_xstrlen*
|
||||
g:sh_isk syntax.txt /*g:sh_isk*
|
||||
g:sh_noisk syntax.txt /*g:sh_noisk*
|
||||
g:syntax_on syntax.txt /*g:syntax_on*
|
||||
g:tar_browseoptions pi_tar.txt /*g:tar_browseoptions*
|
||||
g:tar_cmd pi_tar.txt /*g:tar_cmd*
|
||||
@@ -6073,6 +6085,7 @@ gtk-tooltip-colors gui_x11.txt /*gtk-tooltip-colors*
|
||||
gu change.txt /*gu*
|
||||
gugu change.txt /*gugu*
|
||||
gui gui.txt /*gui*
|
||||
gui-IME gui.txt /*gui-IME*
|
||||
gui-clipboard gui_w32.txt /*gui-clipboard*
|
||||
gui-colors syntax.txt /*gui-colors*
|
||||
gui-extras gui.txt /*gui-extras*
|
||||
@@ -6283,6 +6296,7 @@ i) motion.txt /*i)*
|
||||
i< motion.txt /*i<*
|
||||
i> motion.txt /*i>*
|
||||
iB motion.txt /*iB*
|
||||
iBus gui.txt /*iBus*
|
||||
iW motion.txt /*iW*
|
||||
i[ motion.txt /*i[*
|
||||
i] motion.txt /*i]*
|
||||
@@ -6849,6 +6863,7 @@ netrw-browse-cmds pi_netrw.txt /*netrw-browse-cmds*
|
||||
netrw-browse-maps pi_netrw.txt /*netrw-browse-maps*
|
||||
netrw-browser pi_netrw.txt /*netrw-browser*
|
||||
netrw-browser-options pi_netrw.txt /*netrw-browser-options*
|
||||
netrw-browser-settings pi_netrw.txt /*netrw-browser-settings*
|
||||
netrw-browser-var pi_netrw.txt /*netrw-browser-var*
|
||||
netrw-browsing pi_netrw.txt /*netrw-browsing*
|
||||
netrw-c pi_netrw.txt /*netrw-c*
|
||||
@@ -6897,6 +6912,7 @@ netrw-history pi_netrw.txt /*netrw-history*
|
||||
netrw-horiz pi_netrw.txt /*netrw-horiz*
|
||||
netrw-i pi_netrw.txt /*netrw-i*
|
||||
netrw-incompatible pi_netrw.txt /*netrw-incompatible*
|
||||
netrw-internal-variables pi_netrw.txt /*netrw-internal-variables*
|
||||
netrw-intro-browse pi_netrw.txt /*netrw-intro-browse*
|
||||
netrw-leftmouse pi_netrw.txt /*netrw-leftmouse*
|
||||
netrw-list pi_netrw.txt /*netrw-list*
|
||||
@@ -6974,8 +6990,10 @@ netrw-rexplore pi_netrw.txt /*netrw-rexplore*
|
||||
netrw-rightmouse pi_netrw.txt /*netrw-rightmouse*
|
||||
netrw-s pi_netrw.txt /*netrw-s*
|
||||
netrw-settings pi_netrw.txt /*netrw-settings*
|
||||
netrw-settings-window pi_netrw.txt /*netrw-settings-window*
|
||||
netrw-sexplore pi_netrw.txt /*netrw-sexplore*
|
||||
netrw-sort pi_netrw.txt /*netrw-sort*
|
||||
netrw-sort-sequence pi_netrw.txt /*netrw-sort-sequence*
|
||||
netrw-sortsequence pi_netrw.txt /*netrw-sortsequence*
|
||||
netrw-source pi_netrw.txt /*netrw-source*
|
||||
netrw-ssh-hack pi_netrw.txt /*netrw-ssh-hack*
|
||||
@@ -6994,7 +7012,6 @@ netrw-updir pi_netrw.txt /*netrw-updir*
|
||||
netrw-urls pi_netrw.txt /*netrw-urls*
|
||||
netrw-userpass pi_netrw.txt /*netrw-userpass*
|
||||
netrw-v pi_netrw.txt /*netrw-v*
|
||||
netrw-var pi_netrw.txt /*netrw-var*
|
||||
netrw-variables pi_netrw.txt /*netrw-variables*
|
||||
netrw-vexplore pi_netrw.txt /*netrw-vexplore*
|
||||
netrw-write pi_netrw.txt /*netrw-write*
|
||||
@@ -7530,6 +7547,8 @@ setuid change.txt /*setuid*
|
||||
setwinvar() eval.txt /*setwinvar()*
|
||||
sftp pi_netrw.txt /*sftp*
|
||||
sgml.vim syntax.txt /*sgml.vim*
|
||||
sh-awk syntax.txt /*sh-awk*
|
||||
sh-embed syntax.txt /*sh-embed*
|
||||
sh.vim syntax.txt /*sh.vim*
|
||||
shell-window tips.txt /*shell-window*
|
||||
shell_error-variable eval.txt /*shell_error-variable*
|
||||
|
||||
+132
-122
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.3. Last change: 2011 Jun 19
|
||||
*todo.txt* For Vim version 7.3. Last change: 2011 Oct 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -34,66 +34,100 @@ not be repeated below, unless there is extra information.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Patch for 'transparency' option. (Ben Boeckel, 2011 Sep 14)
|
||||
Do we want this? Also Sergiu Dotenco, 2011 Sep 17.
|
||||
|
||||
Once syntax and other runtime files have been fixed: add "set cp" to
|
||||
check.vim. Use a function to run both with 'cp' and 'nocp'.
|
||||
|
||||
Windows stuff:
|
||||
- Patch for gui_w32.c: call DefWindowProc(). (Sergiu Dotenco, 2011 Sep 15, 17)
|
||||
- Patch to use task dialogs when available. (Sergiu Dotenco, 2011 Sep 15, 17)
|
||||
Addition Sep 16.
|
||||
- Patch for alpha-blended icons and toolbar height. (Sergiu Dotenco, 2011 Sep
|
||||
15, 17)
|
||||
- Patch for redirection. (Yasuhiro Matsumoto, 2011 Sep 15) 2nd patch. Another
|
||||
on Sep 15? Can't reproduce it. Only with vim.exe, compiled with Mingw?
|
||||
|
||||
Patch for phpcomplete.vim (Benjamin Haskell) picked up by maintainer?
|
||||
|
||||
Something weird with text formatting when 'compatible' is set.
|
||||
Only formats from Insert starting point, even when using "gqj"?
|
||||
(Peter Wagenaar, 2011 Oct 20)
|
||||
|
||||
FocusGained event received event though it's in 'eventignore'?
|
||||
(Ben Fritz, 2011 Sep 25)
|
||||
|
||||
Add voting item: modern plugin management (automatic updates, handle
|
||||
dependencies).
|
||||
Add links to http://vimcasts.org/ and http://vimgolf.com/
|
||||
Read http://www.charlietanksley.net/philtex/sane-vim-plugin-management/
|
||||
|
||||
Go through more coverity reports.
|
||||
|
||||
Better D/Dtrace detection. (Jesse Phillips, 2011 Oct 18)
|
||||
|
||||
Patch for not showing dict methods in completion. (Yasuhiro Matsumoto, 2011
|
||||
Oct 7) Move "<" methods to the end. Fix for compiler warnings, Oct 13.
|
||||
|
||||
FPE exception in mbyte.c. Stack trace: (Lomy, 2011 Sep 26)
|
||||
Can't reproduce it.
|
||||
|
||||
Crash in autocomplete, valgrind log. (Greg Weber, 2011 Apr 22)
|
||||
|
||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||
|
||||
Patch to fix gj with count. (James Vega, 2011 Jun 13)
|
||||
|
||||
Patch to disallow fork() when __APPLE__ is defined. (Hisashi T Fujinaka, 2010
|
||||
Nov 25)
|
||||
|
||||
7 Output for ":scriptnames" and ":breaklist" should shorten the file names:
|
||||
use "~/" when possible.
|
||||
Patch by Jean-Rene David, 2011 May 1.
|
||||
|
||||
Cindent wrong after patch 7.3.202. (Lech Lorens, issue 9)
|
||||
|
||||
Patch for cindent fix with closing brace placement, including tests.
|
||||
(Lech Lorens, issue 10, 2011 Jun 12)
|
||||
|
||||
Patch for better #if 0 syntax highlighting for C code. (Ben Schmidt, 2011 Jan
|
||||
20)
|
||||
Change to C syntax folding to make it work much faster, but a bit less
|
||||
reliable. (Lech Lorens, 2009 Nov 9) Enable with an option?
|
||||
Most time is spent in in_id_list().
|
||||
Updated to merge both patches. (Ben Schmidt, 2011 May 2)
|
||||
|
||||
GTK: Patch to fix menu popping down. (Hong Xu, 2010 Dec 4, Dec 5)
|
||||
Update 2011 Feb 3.
|
||||
|
||||
Patch to use pipes on Win32. (Vincent Berthoux, 2011 Feb 28)
|
||||
Update Mar 1 using 'shelltemp'.
|
||||
|
||||
Patch to fix CTRL-R CTRL-W in the command line when the cursor is not at the
|
||||
end. (Tyru, 2011 Jun 6)
|
||||
Patch to fail if configure can't find an interface, such as Python.
|
||||
(Shlomi Fish, 2011 Jul 11)
|
||||
|
||||
Patch to support UTF-8 for Hangul. (Shawn Y.H. Kim, 2011 May 1)
|
||||
Needs more work.
|
||||
|
||||
Patch to make ";" not get stuck on "t" command. (Christian Brabandt, 2011 May
|
||||
23)
|
||||
Other way to start Mzscheme. Tim Brown, 2011 Oct 5: change main call.
|
||||
Later patch by Sergey Khorev, 2011 Oct 9.
|
||||
|
||||
Patch to do more testing of Javascript indenting. Some items are srong.
|
||||
(Luc Deschenaux, 2011 Jun 14)
|
||||
Patch to add getsid(). (Tyru, 2011 Oct 2) Do we want this? Update Oct 4.
|
||||
Or use expand('<sid>')?
|
||||
|
||||
"gh<Del>" deletes the current line, except when it's the last line.
|
||||
Hint by Christian Brabandt, 2011 Mar 22
|
||||
Patch for glob() returning a list. (Christian Brabandt, 2011 Aug 24, second
|
||||
one)
|
||||
|
||||
"echo 'abc' > ''" returns 0 or 1, depending on 'ignorecase'.
|
||||
mb_strnicmp() checks for illegal and truncated bytes are wrong.
|
||||
Should also not assume that byte length is equal before case folding.
|
||||
Patch by Ivan Krasilnikov, 2011 May 27.
|
||||
Patch to highlight cursor line number. (Howard Buchholz (lhb), 2011 Oct 18)
|
||||
|
||||
The :z command doesn't work exactly as it should. (ChangZhuo Chen, 2011 Mar 2)
|
||||
Compare with how old Vi works and with posix spec. terminal is 80 x 24,
|
||||
'scroll' option set to 11.
|
||||
Docs fix for v:register. (Ingo Karkat, 2011 Sep 26, 27)
|
||||
v:register doesn't work exactly as expected. (David Fishburn, 2011 Sep 20)
|
||||
|
||||
Patch for: (Christian Brabandt, 2011 Aug 22)
|
||||
- Make it possible to enter "r<C-E>" and "r<C-Y>" (get character from line
|
||||
below/above).
|
||||
|
||||
Patch for: (Christian Brabandt, 2011 Aug 24, updated patch)
|
||||
8 ":sign unplace * file={filename}" should work. Also: ":sign unplace *
|
||||
buffer={bufnr}". So one can remove all signs for one file/buffer.
|
||||
|
||||
Patch to add "onselected" callback for completion. (Taro Muraoka, 2011 Sep 24)
|
||||
|
||||
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
|
||||
Patch Sep 18.
|
||||
|
||||
Patch for has('unnamedplus') docs. (Tony Mechelynck, 2011 Sep 27)
|
||||
And one for gui_x11.txt.
|
||||
|
||||
Problem with l: dictionary being locked in a function. (ZyX, 2011 Jul 21)
|
||||
|
||||
Patch to sort functions starting with '<' after others. Omit dict functions,
|
||||
they can't be called. (Yasuhiro Matsumoto, 2011 Oct 11)
|
||||
|
||||
Updated syntax file for ssh_config, maintainer doesn't respond.
|
||||
(Leonard Ehrenfried, 2011 Sep 26)
|
||||
|
||||
"fC" doesn't position the cursor correctly when there are concealed
|
||||
characters. Patch by Christian Brabandt, 2011 Oct 11)
|
||||
|
||||
'cursorline' is displayed too short when there are concealed characters and
|
||||
'list' is set. (Dennis Preiser)
|
||||
Patch 7.3.116 was the wrong solution.
|
||||
Christian Brabandt has another incomplete patch. (2011 Jul 13)
|
||||
|
||||
With concealed text mouse click doesn't put the cursor in the right position.
|
||||
(Herb Sitz) Fix by Christian Brabandt, 2011 Jun 16. Doesn't work properly,
|
||||
@@ -103,24 +137,12 @@ Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
|
||||
only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
|
||||
21, Ben Fritz, 2010 Sep 14)
|
||||
|
||||
When opening file from windows explorer, characters inside [] cause
|
||||
problems, even though double quotes are used. (Manuel Stol, 2011 Mar 9)
|
||||
|
||||
Patch to change the meaning of \n in substitute(). (motoya kurotsu, 2011 Mar 8)
|
||||
|
||||
Gui menu edit/paste in block mode insert only inserts in one line (Bjorn
|
||||
Winckler, 2011 May 11)
|
||||
Use function to set paste option and restore it, use CTRL-R+ to paste.
|
||||
|
||||
Help file foldexpr (ZyX)
|
||||
Need to escape $HOME on Windows? (ZyX, 2011 Jul 21)
|
||||
|
||||
Bug in repeating Visual "u". (Lawrence Kesteloot, 2010 Dec 20)
|
||||
|
||||
Patch to automatically get version number into NSIS. (Guopeng Wen, 2011 May
|
||||
27)
|
||||
|
||||
Patch to make character classes work with multi-byte characters.
|
||||
(Dominique Pelle, 2011 May 31)
|
||||
With "unamedplus" in 'clipboard' pasting in Visual mode causes error for empty
|
||||
register. (Michael Seiwald, 2011 Jun 28) I can't reproduce it.
|
||||
|
||||
In GTK Gvim, setting 'lines' and 'columns' to 99999 causes a crash (Tony
|
||||
Mechelynck, 2011 Apr 25). Can reproduce the crash sometimes:
|
||||
@@ -137,15 +159,8 @@ The error was 'RenderBadPicture (invalid Picture parameter)'.
|
||||
backtrace from your debugger if you break on the gdk_x_error() function.)
|
||||
Check that number of pixels doesn't go above 65535?
|
||||
|
||||
8 Add an event like CursorHold that is triggered repeatedly, not just once
|
||||
after typing something.
|
||||
Need for CursorHold that retriggers. Use a key that doesn't do anything, or a
|
||||
function that resets did_cursorhold.
|
||||
Patch by Christian Brabandt, 2011 May 6.
|
||||
|
||||
CursorHold repeats typed key when it's the start of a mapping.
|
||||
(Will Gray, 2011 Mar 23)
|
||||
Christian Brabandt: problem is that OP_PENDING isn't set.
|
||||
popup completion menu closes quickly when there is a fold in the buffer. (Jan
|
||||
Christoph Ebersbach, 2011 Jul 3)
|
||||
|
||||
Windows keys not set properly on Windows 7? (cncyber, 2010 Aug 26)
|
||||
|
||||
@@ -167,6 +182,8 @@ Using ":break" or something else that stops executing commands inside a
|
||||
|
||||
Vim using lots of memory when joining lines. (John Little, 2010 Dec 3)
|
||||
|
||||
Changes to manpage plugin. (Elias Toivanen, 2011 Jul 25)
|
||||
|
||||
On 64 bit MS-Windows "long" is only 32 bits, but we sometimes need to store a
|
||||
64 bits value. Change all number options to use nropt_T and define it to the
|
||||
right type.
|
||||
@@ -174,24 +191,30 @@ right type.
|
||||
string() can't parse back "inf" and "nan". Fix documentation or fix code?
|
||||
(ZyX, 2010 Aug 23)
|
||||
|
||||
Make 'formatprg' global-local. (Sung Pae)
|
||||
|
||||
When doing "redir => s:foo" in a script and then "redir END" somewhere else
|
||||
(e.g. in a function) it can't find s:foo.
|
||||
|
||||
When setqflist() uses a filename that triggers a BufReadCmd autocommand Vim
|
||||
doesn't jump to the correct line with :cfirst. (ZyX, 2011 Sep 18)
|
||||
|
||||
7 Make "ga" show the digraph for a character, if it exists.
|
||||
Patch from Christian Brabandt, 2011 Aug 19.
|
||||
|
||||
maparg() does not show the <script> flag. When temporarily changing a
|
||||
mapping, how to restore the script ID?
|
||||
|
||||
Patch to fix \%V item in regexp. (Christian Brabandt, 2010 Nov 8)
|
||||
Update Nov 19. James Vega: still not right. Christian: it's difficult.
|
||||
|
||||
Patch to add up to 99 match groups. (Christian Brabandt, 2010 Dec 22)
|
||||
Also add named groups: \%{name}(re) and \%{name}g
|
||||
|
||||
Bug in try/catch: return with invalid compare throws error that isn't caught.
|
||||
(ZyX, 2011 Jan 26)
|
||||
|
||||
Highlighting stops working after changing it many times. Script to reproduce
|
||||
it: Pablo Contreras, 2010 Oct 12 Windows XP and 7. Font is never freed?
|
||||
|
||||
When setting a local option value from the global value, add a script ID that
|
||||
indicates this, so that ":verbose set" can give a hint. Check with options in
|
||||
the help file.
|
||||
|
||||
After patch 7.3.097 still get E15. (Yukihiro Nakadaira, 2011 Jan 18)
|
||||
Also for another example (ZyX, 2011 Jan 24)
|
||||
|
||||
@@ -199,10 +222,6 @@ Build problem with small features on Mac OS X 10.6. (Rainer, 2011 Jan 24)
|
||||
|
||||
"0g@$" puts '] on last byte of multi-byte. (ZyX, 2011 Jan 22)
|
||||
|
||||
Deleting a linewise selection that includes the last line of the file leaves
|
||||
an empty line. (Ben Schmidt, 2011 Mar 17)
|
||||
Patch by Christian Brabandt, 2011 Mar 19.
|
||||
|
||||
Patch to support sorting on floating point number. (Alex Jakushev, 2010 Oct
|
||||
30)
|
||||
|
||||
@@ -222,6 +241,29 @@ With a filler line in diff mode, it isn't displayed in the column with line
|
||||
number, but it is in the sign column. Doesn't look right. (ZyX 2011 Jun 5)
|
||||
Patch by Christian Brabandt, 2011 Jun 5. Introduces new problems.
|
||||
|
||||
8 Add a command to jump to the next character highlighted with "Error".
|
||||
Patch by Christian Brabandt, uses ]e [e ]t and [t. 2011 Aug 9.
|
||||
|
||||
8 Add an event like CursorHold that is triggered repeatedly, not just once
|
||||
after typing something.
|
||||
Need for CursorHold that retriggers. Use a key that doesn't do anything, or a
|
||||
function that resets did_cursorhold.
|
||||
Patch by Christian Brabandt, 2011 May 6.
|
||||
|
||||
7 Use "++--", "+++--" for different levels instead of "+---" "+----".
|
||||
Patch by Christian Brabandt, 2011 Jul 27.
|
||||
Update by Ben Fritz, with fix for TOhtml. (2011 Jul 30)
|
||||
|
||||
9 Add %F to 'errorformat': file name without spaces. Useful on Unix to
|
||||
avoid matching something up to a time 11:22:33.
|
||||
Patch by Christian Brabandt, 2011 Jul 27.
|
||||
|
||||
Patch to fix \%V item in regexp. (Christian Brabandt, 2010 Nov 8)
|
||||
Update Nov 19. James Vega: still not right. Christian: it's difficult.
|
||||
|
||||
Patch to add up to 99 match groups. (Christian Brabandt, 2010 Dec 22)
|
||||
Also add named groups: \%{name}(re) and \%{name}g
|
||||
|
||||
In the sandbox it's not allowed to do many things, but it's possible to change
|
||||
or set variables. Add a way to prevent variables from being changed in the
|
||||
sandbox? E.g.: ":protect g:restore_settings".
|
||||
@@ -282,6 +324,8 @@ the system encoding (usually utf-8).
|
||||
Problem producing tags file when hebrew.frx is present. It has a BOM.
|
||||
Results in E670. (Tony Mechelynck, 2010 May 2)
|
||||
|
||||
'beval' option should be global-local.
|
||||
|
||||
Ruby: ":ruby print $buffer.number" returns zero.
|
||||
|
||||
setpos() does not restore cursor position after :normal. (Tyru, 2010 Aug 11)
|
||||
@@ -334,26 +378,20 @@ Echo starts in the wrong column:
|
||||
|
||||
Patch for GVimExt to show an icon. (Dominik Riebeling, 2010 Nov 7)
|
||||
|
||||
GvimExt sets $LANG in the wrong way. Patch by Yasuhiro Matsumoto, 2011 Jun
|
||||
15. This will fix issue no 11.
|
||||
|
||||
When writing a file > 2Gbyte, the reported number of bytes is negative.
|
||||
(Antonio Colombo, 2010 Dec 18)
|
||||
|
||||
Patch: Let rare word highlighting overrule good word highlighting.
|
||||
(Jakson A. Aquino, 2010 Jul 30)
|
||||
|
||||
Patch to make more characters work in dialogs. (Yankwei Jia, 2010 Aug 4)
|
||||
|
||||
Patch for VisVim, pass file name to VimOpenFile. (Jiri Sedlak, 2010 Nov 12)
|
||||
(Jakson A. Aquino, 2010 Jul 30, again 2011 Jul 2)
|
||||
|
||||
When 'lines' is 25 and 'scrolloff' is 12, "j" scrolls zero or two lines
|
||||
instead of one. (Constantin Pan, 2010 Sep 10)
|
||||
|
||||
Crash in setqflist(). (Benoit Mortgat, 2010 Nov 18)
|
||||
|
||||
Patch to handle resizing when tab is opened, when at full size. (Yukihiro
|
||||
Nakadaira, 2010 Jan 6)
|
||||
Gui menu edit/paste in block mode insert only inserts in one line (Bjorn
|
||||
Winckler, 2011 May 11)
|
||||
Requires a map mode for Insert mode started from blockwise Visual mode.
|
||||
|
||||
Writing nested List and Dict in viminfo gives error message and can't be read
|
||||
back. (Yukihiro Nakadaira, 2010 Nov 13)
|
||||
@@ -429,6 +467,9 @@ characters. (2010 Aug 14, bootleq)
|
||||
|
||||
Problem with stop directory in findfile(). (Adam Simpkins, 2009 Aug 26)
|
||||
|
||||
Using ']' as the end of a range in a pattern requires double escaping:
|
||||
/[@-\\]] (Andy Wokula, 2011 Jun 28)
|
||||
|
||||
Undo problem: line not removed as expected when using setline() from Insert
|
||||
mode. (Israel Chauca, 2010 May 13, more in second msg)
|
||||
Break undo when CTRL-R = changes the text? Or save more lines?
|
||||
@@ -439,25 +480,18 @@ it. Caused by "syntax sync fromstart" in combination with patch 7.2.274.
|
||||
Generally, folding with 'foldmethod' set to "syntax" is slow. Do profiling to
|
||||
find out why.
|
||||
|
||||
Syntax priority problem. (Charles Campbell, 2011 Sep 15)
|
||||
|
||||
When completion inserts the first match, it may trigger the line to be folded.
|
||||
Disable updating folds while completion is active? (Peter Odding, 2010 Jun 9)
|
||||
|
||||
Using ":call foo#d.f()" doesn't autoload the "foo.vim" file. Works OK for
|
||||
echo, just not for ":call" and ":call call()". (Ted, 2011 Mar 17)
|
||||
|
||||
Cannot use getchar() inside :normal and using an expression mapping. Is this
|
||||
supposed to work? (XyX, 2010 Sep 22)
|
||||
|
||||
When using an expression mapping with a multi-byte character each byte is
|
||||
converted to a utf-8 character. (ZyX, 2011 Jan 4)
|
||||
Patch for possible solution. (Yukihiro Nakadaira, 2011 Jan 5)
|
||||
|
||||
When a:base in 'completefunc' starts with a number it's passed as a number,
|
||||
not a string. (Sean Ma) Need to add flag to call_func_retlist() to force a
|
||||
string value.
|
||||
|
||||
There is no command line completion for ":lmap".
|
||||
|
||||
":e ~br<Tab>" does not complete to ":e /home/bram/". Would need to use
|
||||
getpwent() to find all the matches.
|
||||
|
||||
@@ -778,11 +812,6 @@ an alternate solution, also for src/ex_getln.c.
|
||||
This also fails when the file or directory name contains "%". (Thoml, 2008
|
||||
July 7)
|
||||
|
||||
The str2special() function doesn't handle multi-byte characters properly.
|
||||
Patch from Vladimir Vichniakov, 2007 Apr 24.
|
||||
Should clean up the whole function. Also allow modifiers like <S-Char-32>?
|
||||
find_special_key() also has this problem.
|
||||
|
||||
Problem with 'langmap' being used on the rhs of a mapping. (Nikolai Weibull,
|
||||
2008 May 14)
|
||||
|
||||
@@ -858,8 +887,6 @@ try/catch not working for argument of return. (Matt Wozniski, 2008 Sep 15)
|
||||
|
||||
try/catch not working when inside a for loop. (ZyX, 2011 Jan 25)
|
||||
|
||||
Recognize and ignore BOM in error file. (Aleksey Baibarin)
|
||||
|
||||
":tab help" always opens a new tab, while ":help" re-uses an existing window.
|
||||
Would be more consistent when an existing tab is re-used. (Tony Mechelynck)
|
||||
|
||||
@@ -893,9 +920,6 @@ Can't easily close the help window, like ":pc" closes the preview window and
|
||||
":ccl" closes the quickfix window. Add ":hclose". (Chris Gaal)
|
||||
Patch for :helpclose, Christian Brabandt, 2010 Sep 6.
|
||||
|
||||
Patch for :lmake not updating the quickfix window title. (Lech Lorens, 2011
|
||||
Mar 26)
|
||||
|
||||
When 'diffopt' has "context:0" a single deleted line causes two folds to merge
|
||||
and mess up syncing. (Austin Jennings, 2008 Jan 31)
|
||||
|
||||
@@ -956,9 +980,6 @@ popup menu over it, first draw the new popup menu, remember its position and
|
||||
size and then redraw the text, skipping the characters under the popup menu.
|
||||
This should avoid flicker. Other solution by A.Politz, 2007 Aug 22.
|
||||
|
||||
When the popup menu is close to the edge of the window it is truncated. Patch
|
||||
to anchor the popup menu in a different way. (James Vega, 2008 Jul 30)
|
||||
|
||||
Windows 98: pasting from the clipboard with text from another application has
|
||||
a trailing NUL. (Joachim Hofmann) Perhaps the length specified for CF_TEXT
|
||||
isn't right?
|
||||
@@ -1097,9 +1118,6 @@ If the variable "g:x#y#z" exists completion after ":echo g:x#" doesn't work.
|
||||
Feature request: Command to go to previous tab, like what CTRL-W p does for
|
||||
windows. (Adam George)
|
||||
|
||||
When using input() in a loop and then ":echo" the display column isn't right.
|
||||
(Benjamin Fritz, 2008 Aug 28) Patch by Ben Schmidt, 2008 Sep 2.
|
||||
|
||||
F1 - F4 in an xterm produce a different escape sequence when used with a
|
||||
modifier key. Need to catch three different sequences. Use K_ZF1, like
|
||||
K_ZHOME? (Dickey, 2007 Dec 2)
|
||||
@@ -1525,6 +1543,7 @@ Awaiting updated patches:
|
||||
- Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav
|
||||
Smilauer, 2004 Sep 13, fix Oct 31, update 2007 May 30)
|
||||
Version for latest MacVim: Tobia Conforto, 2009 Nov 23
|
||||
More recent version: https://retracile.net/wiki/VimBreakIndent
|
||||
8 Add a few more command names to the menus. Patch from Jiri Brezina
|
||||
(28 feb 2002). Will mess the translations...
|
||||
7 ATTENTION dialog choices are more logical when "Delete it' appears
|
||||
@@ -2683,7 +2702,6 @@ Folding:
|
||||
8 Add "z/" and "z?" for searching in not folded text only.
|
||||
9 Add search pattern item to only match in closed or open fold and/or fold
|
||||
with certain level. Allows doing ":g/pat/cmd" to work on closed folds.
|
||||
7 Use "++--", "+++--" for different levels instead of "+---" "+----".
|
||||
8 When a closed fold is displayed open because of 'foldminlines', the
|
||||
behavior of commands is still like the fold is closed. How to make the
|
||||
user aware of this?
|
||||
@@ -2863,7 +2881,6 @@ Syntax highlighting:
|
||||
8 Highlight the text between two matching parens (e.g., with a grey
|
||||
background) when on one of the parens or in between them.
|
||||
Option for the matchparen plugin?
|
||||
8 Add a command to jump to the next character highlighted with "Error".
|
||||
8 When using a cterm, and no ctermfg or ctermbg are defined, use start/stop
|
||||
sequences. Add remark in docs that :if 'term' == "term-name" should be
|
||||
used.
|
||||
@@ -4500,11 +4517,8 @@ Marks:
|
||||
|
||||
|
||||
Digraphs:
|
||||
7 Make "ga" show the digraph for a character, if it exists.
|
||||
Also the keymap?
|
||||
7 Make "ga" show the keymap for a character, if it exists.
|
||||
Also show the code of the character after conversion to 'filenecoding'.
|
||||
- Make it possible to enter "r<C-E>" and "r<C-Y>" (get character from line
|
||||
below/above).
|
||||
- Use digraph table to tell Vim about the collating sequence of special
|
||||
characters?
|
||||
8 Add command to remove one or more (all) digraphs. (Brown)
|
||||
@@ -4622,8 +4636,6 @@ Debug mode:
|
||||
Various improvements:
|
||||
9 Python: be able to define a Python function that can be called directly
|
||||
from Vim script. Requires converting the arguments and return value.
|
||||
8 ":sign unplace * file={filename}" should work. Also: ":sign unplace *
|
||||
buffer={bufnr}". So one can remove all signs for one file/buffer.
|
||||
7 Add plugins for formatting? Should be able to make a choice depending on
|
||||
the language of a file (English/Korean/Japanese/etc.).
|
||||
Setting the 'langformat' option to "chinese" would load the
|
||||
@@ -4641,8 +4653,6 @@ Various improvements:
|
||||
7 Instead of filtering errors with a shell script it should be possible to
|
||||
do this with Vim script. A function that filters the raw text that comes
|
||||
from the 'makeprg'?
|
||||
9 Add %F to 'errorformat': file name without spaces. Useful on Unix to
|
||||
avoid matching something up to a time 11:22:33.
|
||||
- Add %b to 'errorformat': buffer number. (Yegappan Lakshmanan / Suresh
|
||||
Govindachar)
|
||||
7 Add a command that goes back to the position from before jumping to the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*undo.txt* For Vim version 7.3. Last change: 2010 Dec 19
|
||||
*undo.txt* For Vim version 7.3. Last change: 2011 Aug 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -35,8 +35,10 @@ CTRL-R Redo [count] changes which were undone. {Vi: redraw
|
||||
:red[o] Redo one change which was undone. {Vi: no redo}
|
||||
|
||||
*U*
|
||||
U Undo all latest changes on one line. {Vi: while not
|
||||
moved off of it}
|
||||
U Undo all latest changes on one line, the line where
|
||||
the latest change was made. |U| itself also counts as
|
||||
a change, and thus |U| undoes a previous |U|.
|
||||
{Vi: while not moved off of the last modified line}
|
||||
|
||||
The last changes are remembered. You can use the undo and redo commands above
|
||||
to revert the text to how it was before each change. You can also apply the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.3. Last change: 2011 May 19
|
||||
*various.txt* For Vim version 7.3. Last change: 2011 Oct 1st
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -605,6 +605,10 @@ K Run a program to lookup the keyword under the
|
||||
"gs" stands for "goto sleep".
|
||||
While sleeping the cursor is positioned in the text,
|
||||
if at a visible position. {not in Vi}
|
||||
Also process the received netbeans messages. {only
|
||||
available when compiled with the |+netbeans_intg|
|
||||
feature}
|
||||
|
||||
|
||||
*g_CTRL-A*
|
||||
g CTRL-A Only when Vim was compiled with MEM_PROFILING defined
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 7.3. Last change: 2010 Oct 11
|
||||
*vi_diff.txt* For Vim version 7.3. Last change: 2011 Aug 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -88,8 +88,8 @@ Maximum display width Unix and Win32: 1024 characters, otherwise 255
|
||||
characters
|
||||
Maximum lhs of a mapping 50 characters.
|
||||
Number of different highlighting types: over 30000
|
||||
Range of a Number variable: -2147483648 to 2147483647 (more on 64 bit
|
||||
systems)
|
||||
Range of a Number variable: -2147483648 to 2147483647 (might be more on 64
|
||||
bit systems)
|
||||
Maximum length of a line in a tags file: 512 bytes.
|
||||
|
||||
Information for undo and text in registers is kept in memory, thus when making
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*windows.txt* For Vim version 7.3. Last change: 2010 Aug 15
|
||||
*windows.txt* For Vim version 7.3. Last change: 2011 Aug 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -246,7 +246,7 @@ window will appear.
|
||||
|
||||
These command modifiers can be combined to make a vertically split window
|
||||
occupy the full height. Example: >
|
||||
:vertical topleft edit tags
|
||||
:vertical topleft split tags
|
||||
Opens a vertically split, full-height window on the "tags" file at the far
|
||||
left of the Vim window.
|
||||
|
||||
|
||||
+20
-4
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Jun 13
|
||||
" Last Change: 2011 Oct 08
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -754,6 +754,11 @@ au BufNewFile,BufRead */usr/**/gnupg/options.skel setf gpg
|
||||
" gnash(1) configuration files
|
||||
au BufNewFile,BufRead gnashrc,.gnashrc,gnashpluginrc,.gnashpluginrc setf gnash
|
||||
|
||||
" Gitolite
|
||||
au BufNewFile,BufRead gitolite.conf setf gitolite
|
||||
au BufNewFile,BufRead */gitolite-admin/conf/* call s:StarSetf('gitolite')
|
||||
au BufNewFile,BufRead {,.}gitolite.rc,example.gitolite.rc setf perl
|
||||
|
||||
" Gnuplot scripts
|
||||
au BufNewFile,BufRead *.gpi setf gnuplot
|
||||
|
||||
@@ -922,7 +927,7 @@ au BufNewFile,BufRead *.java,*.jav setf java
|
||||
au BufNewFile,BufRead *.jj,*.jjt setf javacc
|
||||
|
||||
" JavaScript, ECMAScript
|
||||
au BufNewFile,BufRead *.js,*.javascript,*.es,*.jsx setf javascript
|
||||
au BufNewFile,BufRead *.js,*.javascript,*.es,*.jsx,*.json setf javascript
|
||||
|
||||
" Java Server Pages
|
||||
au BufNewFile,BufRead *.jsp setf jsp
|
||||
@@ -1588,8 +1593,13 @@ func! s:FTr()
|
||||
endif
|
||||
endfor
|
||||
|
||||
" Nothing recognized, assume Rexx
|
||||
setf rexx
|
||||
" Nothing recognized, use user default or assume Rexx
|
||||
if exists("g:filetype_r")
|
||||
exe "setf " . g:filetype_r
|
||||
else
|
||||
" Rexx used to be the default, but R appears to be much more popular.
|
||||
setf r
|
||||
endif
|
||||
endfunc
|
||||
|
||||
" Remind
|
||||
@@ -2340,6 +2350,9 @@ endfunc
|
||||
" Yaml
|
||||
au BufNewFile,BufRead *.yaml,*.yml setf yaml
|
||||
|
||||
" yum conf (close enough to dosini)
|
||||
au BufNewFile,BufRead */etc/yum.conf setf dosini
|
||||
|
||||
" Zope
|
||||
" dtml (zope dynamic template markup language), pt (zope page template),
|
||||
" cpt (zope form controller page template)
|
||||
@@ -2510,6 +2523,9 @@ au BufNewFile,BufRead *xmodmap* call s:StarSetf('xmodmap')
|
||||
" Xinetd conf
|
||||
au BufNewFile,BufRead */etc/xinetd.d/* call s:StarSetf('xinetd')
|
||||
|
||||
" yum conf (close enough to dosini)
|
||||
au BufNewFile,BufRead */etc/yum.repos.d/* call s:StarSetf('dosini')
|
||||
|
||||
" Z-Shell script
|
||||
au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh')
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2007 Sep 25
|
||||
" Last Change: 2011 Aug 04
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -36,7 +36,7 @@ endif
|
||||
|
||||
" When the matchit plugin is loaded, this makes the % command skip parens and
|
||||
" braces in comments.
|
||||
let b:match_words = &matchpairs
|
||||
let b:match_words = &matchpairs . ',^\s*#\s*if\(\|def\|ndef\)\>:^\s*#\s*elif\>:^\s*#\s*else\>:^\s*#\s*endif\>'
|
||||
let b:match_skip = 's:comment\|string\|character'
|
||||
|
||||
" Win32 can filter files in the browse dialog
|
||||
|
||||
@@ -13,7 +13,10 @@ set cpo&vim
|
||||
|
||||
let b:undo_ftplugin = "setl fo< tw< cole< cocu<"
|
||||
|
||||
setlocal formatoptions+=tcroql textwidth=78 cole=2 cocu=nc
|
||||
setlocal formatoptions+=tcroql textwidth=78
|
||||
if has("conceal")
|
||||
setlocal cole=2 cocu=nc
|
||||
endif
|
||||
|
||||
if has("gui_macvim")
|
||||
" Use swipe gesture to navigate back/forward
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2010 Nov 29
|
||||
" Last Change: 2011 Jul 25
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
" this script from your startup vimrc file.
|
||||
@@ -17,7 +17,9 @@ if &filetype == "man"
|
||||
|
||||
" Ensure Vim is not recursively invoked (man-db does this)
|
||||
" when doing ctrl-[ on a man page reference.
|
||||
let $MANPAGER = ""
|
||||
if exists("$MANPAGER")
|
||||
let $MANPAGER = ""
|
||||
endif
|
||||
|
||||
" allow dot and dash in manual page name.
|
||||
setlocal iskeyword+=\.,-
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
" Vim support file to switch off loading plugins for file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2002 Apr 04
|
||||
" Last Change: 2011 Oct 20
|
||||
|
||||
if exists("did_load_ftplugin")
|
||||
unlet did_load_ftplugin
|
||||
endif
|
||||
|
||||
" Remove all autocommands in the filetypeplugin group
|
||||
silent! au! filetypeplugin *
|
||||
" Remove all autocommands in the filetypeplugin group, if any exist.
|
||||
if exists("#filetypeplugin")
|
||||
silent! au! filetypeplugin *
|
||||
endif
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
" 26-04-2002 Got initial version working reasonably well
|
||||
" 29-04-2002 Fixed problems in function headers and max line width
|
||||
" Added support for two-line if's without curly braces
|
||||
" Fixed hang: 2011 Aug 31
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -118,7 +119,7 @@ function! GetAwkIndent()
|
||||
|
||||
" Case 1
|
||||
if prev_data =~ ')' && brace_balance < 0
|
||||
while brace_balance != 0
|
||||
while brace_balance != 0 && prev_lineno > 0
|
||||
let prev_lineno = s:Get_prev_line( prev_lineno )
|
||||
let prev_data = getline( prev_lineno )
|
||||
let brace_balance=brace_balance+s:Get_brace_balance(prev_data,'(',')' )
|
||||
@@ -188,6 +189,9 @@ endfunction
|
||||
|
||||
function! s:Seems_continuing( line )
|
||||
" Unfinished lines
|
||||
if a:line =~ '\(--\|++\)\s*$'
|
||||
return 0
|
||||
endif
|
||||
if a:line =~ '[\\,\|\&\+\-\*\%\^]\s*$'
|
||||
return 1
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: DTD (Document Type Definition for XML)
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2010-09-21
|
||||
" Latest Revision: 2011-07-08
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
@@ -52,7 +52,7 @@ function s:indent_to_innermost_parentheses(line, end)
|
||||
let end = a:end
|
||||
let parentheses = [end - 1]
|
||||
while token != ""
|
||||
let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\|#PCDATA\|%[A-Za-z0-9_-]\+;\)[?*+]\=')
|
||||
let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\|#P\=CDATA\|%[A-Za-z0-9_-]\+;\)[?*+]\=')
|
||||
if token[0] == '('
|
||||
call add(parentheses, end - 1)
|
||||
elseif token[0] == ')'
|
||||
|
||||
@@ -0,0 +1,492 @@
|
||||
" Vim indent file
|
||||
" Language: R
|
||||
" Author: Jakson Alves de Aquino <jalvesaq@gmail.com>
|
||||
" Last Change: Fri Oct 14, 2011 09:50PM
|
||||
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_r_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_r_indent = 1
|
||||
|
||||
setlocal indentkeys=0{,0},:,!^F,o,O,e
|
||||
setlocal indentexpr=GetRIndent()
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*GetRIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Options to make the indentation more similar to Emacs/ESS:
|
||||
if !exists("g:r_indent_align_args")
|
||||
let g:r_indent_align_args = 1
|
||||
endif
|
||||
if !exists("g:r_indent_ess_comments")
|
||||
let g:r_indent_ess_comments = 0
|
||||
endif
|
||||
if !exists("g:r_indent_comment_column")
|
||||
let g:r_indent_comment_column = 40
|
||||
endif
|
||||
if ! exists("g:r_indent_ess_compatible")
|
||||
let g:r_indent_ess_compatible = 0
|
||||
endif
|
||||
|
||||
function s:RDelete_quotes(line)
|
||||
let i = 0
|
||||
let j = 0
|
||||
let line1 = ""
|
||||
let llen = strlen(a:line)
|
||||
while i < llen
|
||||
if a:line[i] == '"'
|
||||
let i += 1
|
||||
let line1 = line1 . 's'
|
||||
while !(a:line[i] == '"' && ((i > 1 && a:line[i-1] == '\' && a:line[i-2] == '\') || a:line[i-1] != '\')) && i < llen
|
||||
let i += 1
|
||||
endwhile
|
||||
if a:line[i] == '"'
|
||||
let i += 1
|
||||
endif
|
||||
else
|
||||
if a:line[i] == "'"
|
||||
let i += 1
|
||||
let line1 = line1 . 's'
|
||||
while !(a:line[i] == "'" && ((i > 1 && a:line[i-1] == '\' && a:line[i-2] == '\') || a:line[i-1] != '\')) && i < llen
|
||||
let i += 1
|
||||
endwhile
|
||||
if a:line[i] == "'"
|
||||
let i += 1
|
||||
endif
|
||||
else
|
||||
if a:line[i] == "`"
|
||||
let i += 1
|
||||
let line1 = line1 . 's'
|
||||
while a:line[i] != "`" && i < llen
|
||||
let i += 1
|
||||
endwhile
|
||||
if a:line[i] == "`"
|
||||
let i += 1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
if i == llen
|
||||
break
|
||||
endif
|
||||
let line1 = line1 . a:line[i]
|
||||
let j += 1
|
||||
let i += 1
|
||||
endwhile
|
||||
return line1
|
||||
endfunction
|
||||
|
||||
" Convert foo(bar()) int foo()
|
||||
function s:RDelete_parens(line)
|
||||
if s:Get_paren_balance(a:line, "(", ")") != 0
|
||||
return a:line
|
||||
endif
|
||||
let i = 0
|
||||
let j = 0
|
||||
let line1 = ""
|
||||
let llen = strlen(a:line)
|
||||
while i < llen
|
||||
let line1 = line1 . a:line[i]
|
||||
if a:line[i] == '('
|
||||
let nop = 1
|
||||
while nop > 0 && i < llen
|
||||
let i += 1
|
||||
if a:line[i] == ')'
|
||||
let nop -= 1
|
||||
else
|
||||
if a:line[i] == '('
|
||||
let nop += 1
|
||||
endif
|
||||
endif
|
||||
endwhile
|
||||
let line1 = line1 . a:line[i]
|
||||
endif
|
||||
let i += 1
|
||||
endwhile
|
||||
return line1
|
||||
endfunction
|
||||
|
||||
function! s:Get_paren_balance(line, o, c)
|
||||
let line2 = substitute(a:line, a:o, "", "g")
|
||||
let openp = strlen(a:line) - strlen(line2)
|
||||
let line3 = substitute(line2, a:c, "", "g")
|
||||
let closep = strlen(line2) - strlen(line3)
|
||||
return openp - closep
|
||||
endfunction
|
||||
|
||||
function! s:Get_matching_brace(linenr, o, c, delbrace)
|
||||
let line = SanitizeRLine(getline(a:linenr))
|
||||
if a:delbrace == 1
|
||||
let line = substitute(line, '{$', "", "")
|
||||
endif
|
||||
let pb = s:Get_paren_balance(line, a:o, a:c)
|
||||
let i = a:linenr
|
||||
while pb != 0 && i > 1
|
||||
let i -= 1
|
||||
let pb += s:Get_paren_balance(SanitizeRLine(getline(i)), a:o, a:c)
|
||||
endwhile
|
||||
return i
|
||||
endfunction
|
||||
|
||||
" This function is buggy because there 'if's without 'else'
|
||||
" It must be rewritten relying more on indentation
|
||||
function! s:Get_matching_if(linenr, delif)
|
||||
" let filenm = expand("%")
|
||||
" call writefile([filenm], "/tmp/matching_if_" . a:linenr)
|
||||
let line = SanitizeRLine(getline(a:linenr))
|
||||
if a:delif
|
||||
let line = substitute(line, "if", "", "g")
|
||||
endif
|
||||
let elsenr = 0
|
||||
let i = a:linenr
|
||||
let ifhere = 0
|
||||
while i > 0
|
||||
let line2 = substitute(line, '\<else\>', "xxx", "g")
|
||||
let elsenr += strlen(line) - strlen(line2)
|
||||
if line =~ '.*\s*if\s*()' || line =~ '.*\s*if\s*()'
|
||||
let elsenr -= 1
|
||||
if elsenr == 0
|
||||
let ifhere = i
|
||||
break
|
||||
endif
|
||||
endif
|
||||
let i -= 1
|
||||
let line = SanitizeRLine(getline(i))
|
||||
endwhile
|
||||
if ifhere
|
||||
return ifhere
|
||||
else
|
||||
return a:linenr
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:Get_last_paren_idx(line, o, c, pb)
|
||||
let blc = a:pb
|
||||
let line = substitute(a:line, '\t', s:curtabstop, "g")
|
||||
let theidx = -1
|
||||
let llen = strlen(line)
|
||||
let idx = 0
|
||||
while idx < llen
|
||||
if line[idx] == a:o
|
||||
let blc -= 1
|
||||
if blc == 0
|
||||
let theidx = idx
|
||||
endif
|
||||
else
|
||||
if line[idx] == a:c
|
||||
let blc += 1
|
||||
endif
|
||||
endif
|
||||
let idx += 1
|
||||
endwhile
|
||||
return theidx + 1
|
||||
endfunction
|
||||
|
||||
" Get previous relevant line. Search back until getting a line that isn't
|
||||
" comment or blank
|
||||
function s:Get_prev_line(lineno)
|
||||
let lnum = a:lineno - 1
|
||||
let data = getline( lnum )
|
||||
while lnum > 0 && (data =~ '^\s*#' || data =~ '^\s*$')
|
||||
let lnum = lnum - 1
|
||||
let data = getline( lnum )
|
||||
endwhile
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
" This function is also used by r-plugin/common_global.vim
|
||||
" Delete from '#' to the end of the line, unless the '#' is inside a string.
|
||||
function SanitizeRLine(line)
|
||||
let newline = s:RDelete_quotes(a:line)
|
||||
let newline = s:RDelete_parens(newline)
|
||||
let newline = substitute(newline, '#.*', "", "")
|
||||
let newline = substitute(newline, '\s*$', "", "")
|
||||
return newline
|
||||
endfunction
|
||||
|
||||
function GetRIndent()
|
||||
|
||||
let clnum = line(".") " current line
|
||||
|
||||
let cline = getline(clnum)
|
||||
if cline =~ '^\s*#'
|
||||
if g:r_indent_ess_comments == 1
|
||||
if cline =~ '^\s*###'
|
||||
return 0
|
||||
endif
|
||||
if cline !~ '^\s*##'
|
||||
return g:r_indent_comment_column
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
let cline = SanitizeRLine(cline)
|
||||
|
||||
if cline =~ '^\s*}' || cline =~ '^\s*}\s*)$'
|
||||
let indline = s:Get_matching_brace(clnum, '{', '}', 1)
|
||||
if indline > 0 && indline != clnum
|
||||
let iline = SanitizeRLine(getline(indline))
|
||||
if s:Get_paren_balance(iline, "(", ")") == 0 || iline =~ '(\s*{$'
|
||||
return indent(indline)
|
||||
else
|
||||
let indline = s:Get_matching_brace(indline, '(', ')', 1)
|
||||
return indent(indline)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" Find the first non blank line above the current line
|
||||
let lnum = s:Get_prev_line(clnum)
|
||||
" Hit the start of the file, use zero indent.
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let line = SanitizeRLine(getline(lnum))
|
||||
|
||||
if &filetype == "rhelp"
|
||||
if cline =~ '^\\dontshow{' || cline =~ '^\\dontrun{' || cline =~ '^\\donttest{' || cline =~ '^\\testonly{'
|
||||
return 0
|
||||
endif
|
||||
if line =~ '^\\examples{' || line =~ '^\\usage{' || line =~ '^\\dontshow{' || line =~ '^\\dontrun{' || line =~ '^\\donttest{' || line =~ '^\\testonly{'
|
||||
return 0
|
||||
endif
|
||||
if line =~ '^\\method{.*}{.*}(.*'
|
||||
let line = substitute(line, '^\\method{\(.*\)}{.*}', '\1', "")
|
||||
endif
|
||||
endif
|
||||
|
||||
if cline =~ '^\s*{'
|
||||
if g:r_indent_ess_compatible && line =~ ')$'
|
||||
let nlnum = lnum
|
||||
let nline = line
|
||||
while s:Get_paren_balance(nline, '(', ')') < 0
|
||||
let nlnum = s:Get_prev_line(nlnum)
|
||||
let nline = SanitizeRLine(getline(nlnum)) . nline
|
||||
endwhile
|
||||
if nline =~ '^\s*function\s*(' && indent(nlnum) == &sw
|
||||
return 0
|
||||
endif
|
||||
endif
|
||||
if s:Get_paren_balance(line, "(", ")") == 0
|
||||
return indent(lnum)
|
||||
endif
|
||||
endif
|
||||
|
||||
" line is an incomplete command:
|
||||
if line =~ '\<\(if\|while\|for\|function\)\s*()$' || line =~ '\<else$' || line =~ '<-$'
|
||||
return indent(lnum) + &sw
|
||||
endif
|
||||
|
||||
" Deal with () and []
|
||||
|
||||
let pb = s:Get_paren_balance(line, '(', ')')
|
||||
|
||||
if line =~ '^\s*{$' || line =~ '(\s*{' || (pb == 0 && (line =~ '{$' || line =~ '(\s*{$'))
|
||||
return indent(lnum) + &sw
|
||||
endif
|
||||
|
||||
let bb = s:Get_paren_balance(line, '[', ']')
|
||||
|
||||
let s:curtabstop = repeat(' ', &tabstop)
|
||||
if g:r_indent_align_args == 1
|
||||
|
||||
if pb == 0 && bb == 0 && (line =~ '.*[,&|\-\*+<>]$' || cline =~ '^\s*[,&|\-\*+<>]')
|
||||
return indent(lnum)
|
||||
endif
|
||||
|
||||
if pb > 0
|
||||
if &filetype == "rhelp"
|
||||
let ind = s:Get_last_paren_idx(line, '(', ')', pb)
|
||||
else
|
||||
let ind = s:Get_last_paren_idx(getline(lnum), '(', ')', pb)
|
||||
endif
|
||||
return ind
|
||||
endif
|
||||
|
||||
if pb < 0 && line =~ '.*[,&|\-\*+<>]$'
|
||||
let lnum = s:Get_prev_line(lnum)
|
||||
while pb < 1 && lnum > 0
|
||||
let line = SanitizeRLine(getline(lnum))
|
||||
let line = substitute(line, '\t', s:curtabstop, "g")
|
||||
let ind = strlen(line)
|
||||
while ind > 0
|
||||
if line[ind] == ')'
|
||||
let pb -= 1
|
||||
else
|
||||
if line[ind] == '('
|
||||
let pb += 1
|
||||
endif
|
||||
endif
|
||||
if pb == 1
|
||||
return ind + 1
|
||||
endif
|
||||
let ind -= 1
|
||||
endwhile
|
||||
let lnum -= 1
|
||||
endwhile
|
||||
return 0
|
||||
endif
|
||||
|
||||
if bb > 0
|
||||
let ind = s:Get_last_paren_idx(getline(lnum), '[', ']', bb)
|
||||
return ind
|
||||
endif
|
||||
endif
|
||||
|
||||
let post_block = 0
|
||||
if line =~ '}$'
|
||||
let lnum = s:Get_matching_brace(lnum, '{', '}', 0)
|
||||
let line = SanitizeRLine(getline(lnum))
|
||||
if lnum > 0 && line =~ '^\s*{'
|
||||
let lnum = s:Get_prev_line(lnum)
|
||||
let line = SanitizeRLine(getline(lnum))
|
||||
endif
|
||||
let pb = s:Get_paren_balance(line, '(', ')')
|
||||
let post_block = 1
|
||||
endif
|
||||
|
||||
let post_fun = 0
|
||||
if pb < 0 && line !~ ')\s*[,&|\-\*+<>]$'
|
||||
let post_fun = 1
|
||||
while pb < 0 && lnum > 0
|
||||
let lnum -= 1
|
||||
let linepiece = SanitizeRLine(getline(lnum))
|
||||
let pb += s:Get_paren_balance(linepiece, "(", ")")
|
||||
let line = linepiece . line
|
||||
endwhile
|
||||
if line =~ '{$' && post_block == 0
|
||||
return indent(lnum) + &sw
|
||||
endif
|
||||
|
||||
" Now we can do some tests again
|
||||
if cline =~ '^\s*{'
|
||||
return indent(lnum)
|
||||
endif
|
||||
if post_block == 0
|
||||
let newl = SanitizeRLine(line)
|
||||
if newl =~ '\<\(if\|while\|for\|function\)\s*()$' || newl =~ '\<else$' || newl =~ '<-$'
|
||||
return indent(lnum) + &sw
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if cline =~ '^\s*else'
|
||||
if line =~ '<-\s*if\s*()'
|
||||
return indent(lnum) + &sw
|
||||
else
|
||||
if line =~ '\<if\s*()'
|
||||
return indent(lnum)
|
||||
else
|
||||
return indent(lnum) - &sw
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if bb < 0 && line =~ '.*]'
|
||||
while bb < 0 && lnum > 0
|
||||
let lnum -= 1
|
||||
let linepiece = SanitizeRLine(getline(lnum))
|
||||
let bb += s:Get_paren_balance(linepiece, "[", "]")
|
||||
let line = linepiece . line
|
||||
endwhile
|
||||
let line = s:RDelete_parens(line)
|
||||
endif
|
||||
|
||||
let plnum = s:Get_prev_line(lnum)
|
||||
let ppost_else = 0
|
||||
if plnum > 0
|
||||
let pline = SanitizeRLine(getline(plnum))
|
||||
let ppost_block = 0
|
||||
if pline =~ '}$'
|
||||
let ppost_block = 1
|
||||
let plnum = s:Get_matching_brace(plnum, '{', '}', 0)
|
||||
let pline = SanitizeRLine(getline(plnum))
|
||||
if pline =~ '^\s*{$' && plnum > 0
|
||||
let plnum = s:Get_prev_line(plnum)
|
||||
let pline = SanitizeRLine(getline(plnum))
|
||||
endif
|
||||
endif
|
||||
|
||||
if pline =~ 'else$'
|
||||
let ppost_else = 1
|
||||
let plnum = s:Get_matching_if(plnum, 0)
|
||||
let pline = SanitizeRLine(getline(plnum))
|
||||
endif
|
||||
|
||||
if pline =~ '^\s*else\s*if\s*('
|
||||
let pplnum = s:Get_prev_line(plnum)
|
||||
let ppline = SanitizeRLine(getline(pplnum))
|
||||
while ppline =~ '^\s*else\s*if\s*(' || ppline =~ '^\s*if\s*()\s*\S$'
|
||||
let plnum = pplnum
|
||||
let pline = ppline
|
||||
let pplnum = s:Get_prev_line(plnum)
|
||||
let ppline = SanitizeRLine(getline(pplnum))
|
||||
endwhile
|
||||
while ppline =~ '\<\(if\|while\|for\|function\)\s*()$' || ppline =~ '\<else$' || ppline =~ '<-$'
|
||||
let plnum = pplnum
|
||||
let pline = ppline
|
||||
let pplnum = s:Get_prev_line(plnum)
|
||||
let ppline = SanitizeRLine(getline(pplnum))
|
||||
endwhile
|
||||
endif
|
||||
|
||||
let ppb = s:Get_paren_balance(pline, '(', ')')
|
||||
if ppb < 0 && (pline =~ ')\s*{$' || pline =~ ')$')
|
||||
while ppb < 0 && plnum > 0
|
||||
let plnum -= 1
|
||||
let linepiece = SanitizeRLine(getline(plnum))
|
||||
let ppb += s:Get_paren_balance(linepiece, "(", ")")
|
||||
let pline = linepiece . pline
|
||||
endwhile
|
||||
let pline = s:RDelete_parens(pline)
|
||||
endif
|
||||
endif
|
||||
|
||||
let ind = indent(lnum)
|
||||
let pind = indent(plnum)
|
||||
|
||||
if g:r_indent_align_args == 0 && pb != 0
|
||||
let ind += pb * &sw
|
||||
return ind
|
||||
endif
|
||||
|
||||
if g:r_indent_align_args == 0 && bb != 0
|
||||
let ind += bb * &sw
|
||||
return ind
|
||||
endif
|
||||
|
||||
if ind == pind || (ind == (pind + &sw) && pline =~ '{$' && ppost_else == 0)
|
||||
return ind
|
||||
endif
|
||||
|
||||
let pline = getline(plnum)
|
||||
let pbb = s:Get_paren_balance(pline, '[', ']')
|
||||
|
||||
while pind < ind && plnum > 0 && ppb == 0 && pbb == 0
|
||||
let ind = pind
|
||||
let plnum = s:Get_prev_line(plnum)
|
||||
let pline = getline(plnum)
|
||||
let ppb = s:Get_paren_balance(pline, '(', ')')
|
||||
let pbb = s:Get_paren_balance(pline, '[', ']')
|
||||
while pline =~ '^\s*else'
|
||||
let plnum = s:Get_matching_if(plnum, 1)
|
||||
let pline = getline(plnum)
|
||||
let ppb = s:Get_paren_balance(pline, '(', ')')
|
||||
let pbb = s:Get_paren_balance(pline, '[', ']')
|
||||
endwhile
|
||||
let pind = indent(plnum)
|
||||
if ind == (pind + &sw) && pline =~ '{$'
|
||||
return ind
|
||||
endif
|
||||
endwhile
|
||||
|
||||
return ind
|
||||
|
||||
endfunction
|
||||
|
||||
" vim: sw=4
|
||||
+20
-14
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: reStructuredText Documentation Format
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-12-20
|
||||
" Latest Revision: 2011-08-03
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -16,6 +16,9 @@ if exists("*GetRSTIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:itemization_pattern = '^\s*[-*+]\s'
|
||||
let s:enumeration_pattern = '^\s*\%(\d\+\|#\)\.\s\+'
|
||||
|
||||
function GetRSTIndent()
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
if lnum == 0
|
||||
@@ -25,27 +28,30 @@ function GetRSTIndent()
|
||||
let ind = indent(lnum)
|
||||
let line = getline(lnum)
|
||||
|
||||
if line =~ '^\s*[-*+]\s'
|
||||
let ind = ind + 2
|
||||
elseif line =~ '^\s*\d\+.\s'
|
||||
let ind = ind + matchend(substitute(line, '^\s*', '', ''), '\d\+.\s\+')
|
||||
if line =~ s:itemization_pattern
|
||||
let ind += 2
|
||||
elseif line =~ s:enumeration_pattern
|
||||
let ind += matchend(line, s:enumeration_pattern)
|
||||
endif
|
||||
|
||||
let line = getline(v:lnum - 1)
|
||||
|
||||
" Indent :FIELD: lines. Don’t match if there is no text after the field or
|
||||
" if the text ends with a sent-ender.
|
||||
if line =~ '^:.\+:\s\{-1,\}\S.\+[^.!?:]$'
|
||||
return matchend(line, '^:.\{-1,}:\s\+')
|
||||
endif
|
||||
|
||||
if line =~ '^\s*$'
|
||||
execute lnum
|
||||
call search('^\s*\%([-*+]\s\|\d\+.\s\|\.\.\|$\)', 'bW')
|
||||
call search('^\s*\%([-*+]\s\|\%(\d\+\|#\)\.\s\|\.\.\|$\)', 'bW')
|
||||
let line = getline('.')
|
||||
if line =~ '^\s*[-*+]'
|
||||
let ind = ind - 2
|
||||
elseif line =~ '^\s*\d\+\.\s'
|
||||
let ind = ind - matchend(substitute(line, '^\s*', '', ''),
|
||||
\ '\d\+\.\s\+')
|
||||
if line =~ s:itemization_pattern
|
||||
let ind -= 2
|
||||
elseif line =~ s:enumeration_pattern
|
||||
let ind -= matchend(line, s:enumeration_pattern)
|
||||
elseif line =~ '^\s*\.\.'
|
||||
let ind = ind - 3
|
||||
else
|
||||
let ind = ind
|
||||
let ind -= 3
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
+31
-14
@@ -1,8 +1,8 @@
|
||||
" VHDL indent ('93 syntax)
|
||||
" Language: VHDL
|
||||
" Maintainer: Gerald Lai <laigera+vim?gmail.com>
|
||||
" Version: 1.56
|
||||
" Last Change: 2010 Jun 29
|
||||
" Version: 1.58
|
||||
" Last Change: 2011 Sep 27
|
||||
" URL: http://www.vim.org/scripts/script.php?script_id=1450
|
||||
|
||||
" only load this indent file when no other was loaded
|
||||
@@ -95,7 +95,7 @@ function GetVHDLindent()
|
||||
|
||||
" ****************************************************************************************
|
||||
" indent: align generic variables & port names
|
||||
" keywords: "generic", "map", "port" + "(", provided current line is part of mapping
|
||||
" keywords: "procedure" + name, "generic", "map", "port" + "(", provided current line is part of mapping
|
||||
" where: anywhere in previous 2 lines
|
||||
" find following previous non-comment line
|
||||
let pn = prevnonblank(prevn - 1)
|
||||
@@ -104,7 +104,7 @@ function GetVHDLindent()
|
||||
let pn = prevnonblank(pn - 1)
|
||||
let ps = getline(pn)
|
||||
endwhile
|
||||
if (curs =~ '^\s*)' || curs =~? '^\s*\%(\<\%(generic\|map\|port\)\>.*\)\@<!\S\+\s*\%(=>\s*\S\+\|:[^=]\@=\s*\%(\%(in\|out\|inout\|buffer\|linkage\)\>\|\w\+\s\+:=\)\)') && (prevs =~? s:NC.'\<\%(generic\|map\|port\)\s*(\%(\s*\w\)\=' || (ps =~? s:NC.'\<\%(generic\|map\|port\)'.s:ES && prevs =~ '^\s*('))
|
||||
if (curs =~ '^\s*)' || curs =~? '^\s*\%(\<\%(procedure\|generic\|map\|port\)\>.*\)\@<!\w\+\s*\w*\s*\%(=>\s*\S\+\|:[^=]\@=\s*\%(\%(in\|out\|inout\|buffer\|linkage\)\>\|\w\+\s\+:=\)\)') && (prevs =~? s:NC.'\<\%(procedure\s\+\S\+\|generic\|map\|port\)\s*(\%(\s*\w\)\=' || (ps =~? s:NC.'\<\%(procedure\|generic\|map\|port\)'.s:ES && prevs =~ '^\s*('))
|
||||
" align closing ")" with opening "("
|
||||
if curs =~ '^\s*)'
|
||||
return ind2 + stridx(prevs_noi, '(')
|
||||
@@ -160,12 +160,12 @@ function GetVHDLindent()
|
||||
" make sure one of these is true
|
||||
" keywords: variable + "<=" without ";" ending
|
||||
" where: start of previous non-comment line
|
||||
" keywords: "generic", "map", "port"
|
||||
" keywords: "procedure", "generic", "map", "port"
|
||||
" where: anywhere in previous non-comment line
|
||||
" keyword: "("
|
||||
" where: start of previous non-comment line
|
||||
if m < 3 && ps !~? '^\s*\S\+\s*<=[^;]*'.s:ES
|
||||
if ps =~? s:NC.'\<\%(generic\|map\|port\)\>' || ps =~ '^\s*('
|
||||
if ps =~? s:NC.'\<\%(procedure\|generic\|map\|port\)\>' || ps =~ '^\s*('
|
||||
let ind = t
|
||||
endif
|
||||
break
|
||||
@@ -207,14 +207,26 @@ function GetVHDLindent()
|
||||
" keyword: "begin"
|
||||
" where: anywhere in current line
|
||||
if curs =~? s:NC.'\<begin\>'
|
||||
let ind = ind - &sw
|
||||
" find previous opening statement of
|
||||
" keywords: "architecture", "block", "entity", "function", "generate", "procedure", "process"
|
||||
let s2 = s:NC.s:NE.'\<\%(architecture\|block\|entity\|function\|generate\|procedure\|process\)\>'
|
||||
if (curs !~? s2.'.*'.s:NC.'\<begin\>.*'.s:ES && prevs =~? s2) || m == 1
|
||||
let ind = ind + &sw
|
||||
|
||||
let pn = prevnonblank(curn - 1)
|
||||
let ps = getline(pn)
|
||||
while pn > 0 && (ps =~ '^\s*--' || ps !~? s2)
|
||||
let pn = prevnonblank(pn - 1)
|
||||
let ps = getline(pn)
|
||||
|
||||
if (ps =~? s:NC.'\<begin\>')
|
||||
return indent(pn) - &sw
|
||||
endif
|
||||
endwhile
|
||||
|
||||
if (pn == 0)
|
||||
return ind - &sw
|
||||
else
|
||||
return indent(pn)
|
||||
endif
|
||||
return ind
|
||||
endif
|
||||
|
||||
" indent: +sw if previous line is previous opening statement
|
||||
@@ -319,8 +331,13 @@ function GetVHDLindent()
|
||||
" indent: -sw
|
||||
" keywords: "else", "elsif", "end" + "block", "for", "function", "generate", "if", "loop", "procedure", "process", "record", "units"
|
||||
" where: start of current line
|
||||
if curs =~? '^\s*\%(else\|elsif\|end\s\+\%(block\|for\|function\|generate\|if\|loop\|procedure\|process\|record\|units\)\)\>'
|
||||
return ind - &sw
|
||||
let s5 = 'block\|for\|function\|generate\|if\|loop\|procedure\|process\|record\|units'
|
||||
if curs =~? '^\s*\%(else\|elsif\|end\s\+\%('.s5.'\)\)\>'
|
||||
if prevs =~? '^\s*\%(elsif\|'.s5.'\)'
|
||||
return ind
|
||||
else
|
||||
return ind - &sw
|
||||
endif
|
||||
endif
|
||||
|
||||
" indent: backtrace previous non-comment lines
|
||||
@@ -395,9 +412,9 @@ function GetVHDLindent()
|
||||
|
||||
" ****************************************************************************************
|
||||
" indent: maintain indent of previous opening statement
|
||||
" keywords: without "generic", "map", "port" + ":" but not ":=" + "in", "out", "inout", "buffer", "linkage", variable & ":="
|
||||
" keywords: without "procedure", "generic", "map", "port" + ":" but not ":=" + "in", "out", "inout", "buffer", "linkage", variable & ":="
|
||||
" where: start of current line
|
||||
if curs =~? '^\s*\%(\<\%(generic\|map\|port\)\>.*\)\@<!\S\+\s*:[^=]\@=\s*\%(\%(in\|out\|inout\|buffer\|linkage\)\>\|\w\+\s\+:=\)'
|
||||
if curs =~? '^\s*\%(\<\%(procedure\|generic\|map\|port\)\>.*\)\@<!\w\+\s*\w*\s*:[^=]\@=\s*\%(\%(in\|out\|inout\|buffer\|linkage\)\>\|\w\+\s\+:=\)'
|
||||
return ind2
|
||||
endif
|
||||
|
||||
|
||||
+1
-1
@@ -1215,7 +1215,7 @@ if has("gui_macvim")
|
||||
macm Window.Minimize\ All key=<D-M-m> action=miniaturizeAll: alt=YES
|
||||
macm Window.Zoom key=<D-C-z> action=performZoom:
|
||||
macm Window.Zoom\ All key=<D-M-C-z> action=zoomAll: alt=YES
|
||||
macm Window.Toggle\ Full\ Screen\ Mode key=<D-F>
|
||||
macm Window.Toggle\ Full\ Screen\ Mode key=<D-C-f>
|
||||
macm Window.Select\ Next\ Tab key=<D-}>
|
||||
macm Window.Select\ Previous\ Tab key=<D-{>
|
||||
macm Window.Bring\ All\ To\ Front action=arrangeInFront:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim plugin for showing matching parens
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2010 Nov 16
|
||||
" Last Change: 2011 Aug 27
|
||||
|
||||
" Exit quickly when:
|
||||
" - this plugin was already loaded (or disabled)
|
||||
@@ -82,7 +82,7 @@ function! s:Highlight_Matching_Pair()
|
||||
endif
|
||||
|
||||
" When not in a string or comment ignore matches inside them.
|
||||
" We match "escape" for special items, such as listpEscapeSpecial.
|
||||
" We match "escape" for special items, such as lispEscapeSpecial.
|
||||
let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' .
|
||||
\ '=~? "string\\|character\\|singlequote\\|escape\\|comment"'
|
||||
execute 'if' s_skip '| let s_skip = 0 | endif'
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" netrwPlugin.vim: Handles file transfer and remote directory listing across a network
|
||||
" PLUGIN SECTION
|
||||
" Date: Feb 10, 2011
|
||||
" Date: Aug 24, 2011
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||
" Copyright: Copyright (C) 1999-2008 Charles E. Campbell, Jr. {{{1
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_netrwPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwPlugin = "v142"
|
||||
let g:loaded_netrwPlugin = "v143"
|
||||
if v:version < 702
|
||||
echohl WarningMsg | echo "***netrw*** you need vim version 7.2 for this version of netrw" | echohl None
|
||||
finish
|
||||
@@ -47,20 +47,15 @@ augroup END
|
||||
" Network Browsing Reading Writing: {{{2
|
||||
augroup Network
|
||||
au!
|
||||
if has("win32") || has("win95") || has("win64") || has("win16")
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
else
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
au BufReadCmd file://localhost/* call netrw#FileUrlRead(substitute(expand("<amatch>")),'file://localhost/','file:///','')
|
||||
endif
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "silent doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "silent doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
try
|
||||
au SourceCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
au SourceCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
catch /^Vim\%((\a\+)\)\=:E216/
|
||||
au SourcePre ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
au SourcePre ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
endtry
|
||||
augroup END
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
if &cp || exists("g:loaded_vimballPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_vimballPlugin = "v33"
|
||||
let g:loaded_vimballPlugin = "v34"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
" Vim syntax file
|
||||
" Language: BIND zone files (RFC1035)
|
||||
" Language: BIND zone files (RFC 1035)
|
||||
" Maintainer: Julian Mehnle <julian@mehnle.net>
|
||||
" URL: http://www.mehnle.net/source/odds+ends/vim/syntax/
|
||||
" Last Change: Thu 2006-04-20 12:30:45 UTC
|
||||
" Last Change: Thu 2011-07-16 20:42:00 UTC
|
||||
"
|
||||
" Based on an earlier version by Вячеслав Горбанев (Slava Gorbanev), with
|
||||
" heavy modifications.
|
||||
"
|
||||
" $Id: bindzone.vim,v 1.2 2006/04/20 22:06:21 vimboss Exp $
|
||||
" $Id: bindzone.vim 12 2011-07-16 21:09:57Z julian $
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -23,7 +23,7 @@ syn case match
|
||||
syn region zoneRRecord start=/^/ end=/$/ contains=zoneOwnerName,zoneSpecial,zoneTTL,zoneClass,zoneRRType,zoneComment,zoneUnknown
|
||||
|
||||
syn match zoneDirective /^\$ORIGIN\s\+/ nextgroup=zoneOrigin,zoneUnknown
|
||||
syn match zoneDirective /^\$TTL\s\+/ nextgroup=zoneNumber,zoneUnknown
|
||||
syn match zoneDirective /^\$TTL\s\+/ nextgroup=zoneTTL,zoneUnknown
|
||||
syn match zoneDirective /^\$INCLUDE\s\+/ nextgroup=zoneText,zoneUnknown
|
||||
syn match zoneDirective /^\$GENERATE\s/
|
||||
|
||||
@@ -34,9 +34,9 @@ syn match zoneOrigin contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\
|
||||
syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/
|
||||
|
||||
syn match zoneSpecial contained /^[@*.]\s/
|
||||
syn match zoneTTL contained /\<\d[0-9HhWwDd]*\>/ nextgroup=zoneClass,zoneRRType skipwhite
|
||||
syn keyword zoneClass contained IN CHAOS nextgroup=zoneRRType,zoneTTL skipwhite
|
||||
syn keyword zoneRRType contained A AAAA CNAME HINFO MX NS PTR SOA SRV TXT nextgroup=zoneRData skipwhite
|
||||
syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite
|
||||
syn keyword zoneClass contained IN CHAOS nextgroup=zoneRRType,zoneTTL skipwhite
|
||||
syn keyword zoneRRType contained A AAAA CNAME DNAME HINFO MX NS PTR SOA SRV TXT SPF nextgroup=zoneRData skipwhite
|
||||
syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown
|
||||
|
||||
syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/
|
||||
@@ -66,7 +66,7 @@ syn match zoneNumber contained /\<[0-9]\+\(\s\|;\|$\)\@=/
|
||||
syn match zoneSerial contained /\<[0-9]\{9,10}\(\s\|;\|$\)\@=/
|
||||
|
||||
syn match zoneErrParen /)/
|
||||
syn region zoneParen contained start="(" end=")" contains=zoneSerial,zoneNumber,zoneComment
|
||||
syn region zoneParen contained start="(" end=")" contains=zoneSerial,zoneTTL,zoneNumber,zoneComment
|
||||
syn match zoneComment /;.*/
|
||||
|
||||
" Define the default highlighting.
|
||||
|
||||
+36
-17
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2009 Nov 17
|
||||
" Last Change: 2011 Sep 07
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -72,7 +72,7 @@ endif
|
||||
" This should be before cErrInParen to avoid problems with #define ({ xxx })
|
||||
if exists("c_curly_error")
|
||||
syntax match cCurlyError "}"
|
||||
syntax region cBlock start="{" end="}" contains=ALLBUT,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
|
||||
syntax region cBlock start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
|
||||
else
|
||||
syntax region cBlock start="{" end="}" transparent fold
|
||||
endif
|
||||
@@ -80,31 +80,33 @@ endif
|
||||
"catch errors caused by wrong parenthesis and brackets
|
||||
" also accept <% for {, %> for }, <: for [ and :> for ] (C99)
|
||||
" But avoid matching <::.
|
||||
syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOut,cCppOut2,cCppSkip,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
|
||||
syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
|
||||
if exists("c_no_curly_error")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||
syn match cParenError display ")"
|
||||
syn match cErrInParen display contained "^[{}]\|^<%\|^%>"
|
||||
elseif exists("c_no_bracket_error")
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||
syn match cParenError display ")"
|
||||
syn match cErrInParen display contained "[{}]\|<%\|%>"
|
||||
else
|
||||
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell
|
||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell
|
||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cErrInBracket,cParen,cBracket,cString,@Spell
|
||||
syn match cParenError display "[\])]"
|
||||
syn match cErrInParen display contained "[\]{}]\|<%\|%>"
|
||||
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' contains=ALLBUT,@cParenGroup,cErrInParen,cCppParen,cCppBracket,cCppString,@Spell
|
||||
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cErrInParen,cCppParen,cCppBracket,cCppString,@Spell
|
||||
" cCppBracket: same as cParen but ends at end-of-line; used in cDefine
|
||||
syn region cCppBracket transparent start='\[\|<::\@!' skip='\\$' excludenl end=']\|:>' end='$' contained contains=ALLBUT,@cParenGroup,cErrInParen,cParen,cBracket,cString,@Spell
|
||||
syn match cErrInBracket display contained "[);{}]\|<%\|%>"
|
||||
endif
|
||||
|
||||
syntax region cBadBlock keepend extend start="{" end="}" contained containedin=cParen,cBracket,cBadBlock transparent fold
|
||||
|
||||
"integer number, or floating point number without a dot and with "f".
|
||||
syn case ignore
|
||||
syn match cNumbers display transparent "\<\d\|\.\d" contains=cNumber,cFloat,cOctalError,cOctal
|
||||
@@ -270,27 +272,39 @@ if !exists("c_no_c99") " ISO C99
|
||||
endif
|
||||
|
||||
" Accept %: for # (C99)
|
||||
syn region cPreCondit start="^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" keepend contains=cComment,cCommentL,cCppString,cCharacter,cCppParen,cParenError,cNumbers,cCommentError,cSpaceError
|
||||
syn match cPreCondit display "^\s*\(%:\|#\)\s*\(else\|endif\)\>"
|
||||
syn region cPreCondit start="^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" keepend contains=cComment,cCommentL,cCppString,cCharacter,cCppParen,cParenError,cNumbers,cCommentError,cSpaceError
|
||||
syn match cPreConditMatch display "^\s*\(%:\|#\)\s*\(else\|endif\)\>"
|
||||
if !exists("c_no_if0")
|
||||
syn cluster cCppOutInGroup contains=cCppInIf,cCppInElse,cCppInElse2,cCppOutIf,cCppOutIf2,cCppOutElse,cCppInSkip,cCppOutSkip
|
||||
syn region cCppOutWrapper start="^\s*\(%:\|#\)\s*if\s\+0\+\s*\($\|//\|/\*\|&\)" end=".\@=\|$" contains=cCppOutIf,cCppOutElse fold
|
||||
syn region cCppOutIf contained start="0\+" matchgroup=cCppOutWrapper end="^\s*\(%:\|#\)\s*endif\>" contains=cCppOutIf2,cCppOutElse
|
||||
if !exists("c_no_if0_fold")
|
||||
syn region cCppOut start="^\s*\(%:\|#\)\s*if\s\+0\+\>" end=".\@=\|$" contains=cCppOut2 fold
|
||||
syn region cCppOutIf2 contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip fold
|
||||
else
|
||||
syn region cCppOut start="^\s*\(%:\|#\)\s*if\s\+0\+\>" end=".\@=\|$" contains=cCppOut2
|
||||
syn region cCppOutIf2 contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip
|
||||
endif
|
||||
syn region cCppOut2 contained start="0" end="^\s*\(%:\|#\)\s*\(endif\>\|else\>\|elif\>\)" contains=cSpaceError,cCppSkip
|
||||
syn region cCppSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppSkip
|
||||
syn region cCppOutElse contained matchgroup=cCppOutWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=TOP,cPreCondit
|
||||
syn region cCppInWrapper start="^\s*\(%:\|#\)\s*if\s\+0*[1-9]\d*\s*\($\|//\|/\*\||\)" end=".\@=\|$" contains=cCppInIf,cCppInElse fold
|
||||
syn region cCppInIf contained matchgroup=cCppInWrapper start="\d\+" end="^\s*\(%:\|#\)\s*endif\>" contains=TOP,cPreCondit
|
||||
if !exists("c_no_if0_fold")
|
||||
syn region cCppInElse contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2 fold
|
||||
else
|
||||
syn region cCppInElse contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2
|
||||
endif
|
||||
syn region cCppInElse2 contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)\([^/]\|/[^/*]\)*" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=cSpaceError,cCppOutSkip
|
||||
syn region cCppOutSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppOutSkip
|
||||
syn region cCppInSkip contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(if\s\+\(\d\+\s*\($\|//\|/\*\||\|&\)\)\@!\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" containedin=cCppOutElse,cCppInIf,cCppInSkip contains=TOP,cPreProc
|
||||
endif
|
||||
syn region cIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+
|
||||
syn match cIncluded display contained "<[^>]*>"
|
||||
syn match cInclude display "^\s*\(%:\|#\)\s*include\>\s*["<]" contains=cIncluded
|
||||
"syn match cLineSkip "\\$"
|
||||
syn cluster cPreProcGroup contains=cPreCondit,cIncluded,cInclude,cDefine,cErrInParen,cErrInBracket,cUserLabel,cSpecial,cOctalZero,cCppOut,cCppOut2,cCppSkip,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cString,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cParen,cBracket,cMulti
|
||||
syn cluster cPreProcGroup contains=cPreCondit,cIncluded,cInclude,cDefine,cErrInParen,cErrInBracket,cUserLabel,cSpecial,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cString,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cParen,cBracket,cMulti
|
||||
syn region cDefine start="^\s*\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
|
||||
syn region cPreProc start="^\s*\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
|
||||
|
||||
" Highlight User Labels
|
||||
syn cluster cMultiGroup contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOut,cCppOut2,cCppSkip,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
|
||||
syn cluster cMultiGroup contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
|
||||
syn region cMulti transparent start='?' skip='::' end=':' contains=ALLBUT,@cMultiGroup,@Spell
|
||||
" Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
|
||||
syn cluster cLabelGroup contains=cUserLabel
|
||||
@@ -354,6 +368,9 @@ hi def link cDefine Macro
|
||||
hi def link cIncluded cString
|
||||
hi def link cError Error
|
||||
hi def link cStatement Statement
|
||||
hi def link cCppInWrapper cCppOutWrapper
|
||||
hi def link cCppOutWrapper cPreCondit
|
||||
hi def link cPreConditMatch cPreCondit
|
||||
hi def link cPreCondit PreCondit
|
||||
hi def link cType Type
|
||||
hi def link cConstant Constant
|
||||
@@ -365,8 +382,10 @@ hi def link cComment Comment
|
||||
hi def link cSpecial SpecialChar
|
||||
hi def link cTodo Todo
|
||||
hi def link cBadContinuation Error
|
||||
hi def link cCppSkip cCppOut
|
||||
hi def link cCppOut2 cCppOut
|
||||
hi def link cCppOutSkip cCppOutIf2
|
||||
hi def link cCppInElse2 cCppOutIf2
|
||||
hi def link cCppOutIf2 cCppOut2 " Old syntax group for #if 0 body
|
||||
hi def link cCppOut2 cCppOut " Old syntax group for #if of #if 0
|
||||
hi def link cCppOut Comment
|
||||
|
||||
let b:current_syntax = "c"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
|
||||
" Wichert Akkerman <wakkerma@debian.org>
|
||||
" Last Change: 2011 June 01
|
||||
" Last Change: 2011 Sep 17
|
||||
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debcontrol.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@@ -24,7 +24,7 @@ syn match debControlComma ", *"
|
||||
syn match debControlSpace " "
|
||||
|
||||
" Define some common expressions we can use later on
|
||||
syn match debcontrolArchitecture contained "\%(all\|any\|linux-any\|\%(any-\)\=\%(alpha\|amd64\|arm\%(e[bl]\)\=\|avr32\|hppa\|i386\|ia64\|lpia\|m32r\|m68k\|mips\%(el\)\=\|powerpc\|ppc64\|s390x\=\|sh[34]\(eb\)\=\|sh\|sparc\%(64\)\=\)\|hurd-\%(i386\|any\)\|kfreebsd-\%(i386\|amd64\|any\)\|knetbsd-\%(i386\|any\)\|kopensolaris-\%(i386\|any\)\|netbsd-\%(alpha\|i386\|any\)\)"
|
||||
syn match debcontrolArchitecture contained "\%(all\|linux-any\|\%(any-\)\=\%(alpha\|amd64\|arm\%(e[bl]\|hf\)\=\|avr32\|hppa\|i386\|ia64\|lpia\|m32r\|m68k\|mips\%(el\)\=\|powerpc\|ppc64\|s390x\=\|sh[34]\(eb\)\=\|sh\|sparc\%(64\)\=\)\|hurd-\%(i386\|any\)\|kfreebsd-\%(i386\|amd64\|any\)\|knetbsd-\%(i386\|any\)\|kopensolaris-\%(i386\|any\)\|netbsd-\%(alpha\|i386\|any\)\|any\)"
|
||||
syn match debcontrolMultiArch contained "\%(no\|foreign\|allowed\|same\)"
|
||||
syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+"
|
||||
syn match debcontrolPriority contained "\(extra\|important\|optional\|required\|standard\)"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: dnsmasq(8) configuration file
|
||||
" Maintainer: Thilo Six <T.Six@gmx.de>
|
||||
" Last Change: 17 May 2011
|
||||
" Last Change: 2011 Jul 14
|
||||
" Credits: This file is a mix of cfg.vim, wget.vim and xf86conf.vim, credits go to:
|
||||
" Igor N. Prischepoff
|
||||
" Doug Kearns
|
||||
@@ -58,7 +58,7 @@ syn match DnsmasqString "'.*'"
|
||||
syn match DnsmasqComment "^#.*$" contains=DnsmasqTodo
|
||||
syn match DnsmasqComment "\s#.*$" contains=DnsmasqTodo
|
||||
|
||||
syn keyword DnsmasqTodo FIXME TODO XXX NOT contained
|
||||
syn keyword DnsmasqTodo FIXME TODO XXX NOTE contained
|
||||
|
||||
syn match DnsmasqKeywordSpecial "\<set\>:"me=e-1
|
||||
syn match DnsmasqKeywordSpecial "\<tag\>:"me=e-1
|
||||
|
||||
+19
-12
@@ -1,9 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: Configuration File (ini file) for MSDOS/MS Windows
|
||||
" Version Info: @(#)dosini.vim 1.6 97/12/15 08:54:12
|
||||
" Author: Sean M. McKee <mckee@misslink.net>
|
||||
" Maintainer: Nima Talebi <nima@it.net.au>
|
||||
" Last Change: Mon, 26 Jun 2006 22:07:28 +1000
|
||||
" Language: Configuration File (ini file) for MSDOS/MS Windows
|
||||
" Version: 2.0
|
||||
" Original Author: Sean M. McKee <mckee@misslink.net>
|
||||
" Previous Maintainer: Nima Talebi <nima@it.net.au>
|
||||
" Current Maintainer: Hong Xu <xuhdev@gmail.com>
|
||||
" Last Change: 2011 Jul 21
|
||||
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
@@ -17,9 +18,13 @@ endif
|
||||
" shut case off
|
||||
syn case ignore
|
||||
|
||||
syn match dosiniLabel "^.\{-}="
|
||||
syn region dosiniHeader start="^\[" end="\]"
|
||||
syn match dosiniComment "^;.*$"
|
||||
syn match dosiniBool "\<\(yes\|no\|y\|n\|true\|false\)\>"
|
||||
syn match dosiniNumber "\<\d\+\>"
|
||||
syn match dosiniNumber "\<\d*\.\d\+\>"
|
||||
syn match dosiniNumber "\<\d\+e[+-]\=\d\+\>"
|
||||
syn match dosiniLabel "^.\{-}="
|
||||
syn region dosiniHeader start="^\s*\[" end="\]"
|
||||
syn match dosiniComment "^[#;].*$"
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
@@ -32,13 +37,15 @@ if version >= 508 || !exists("did_dosini_syntax_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink dosiniHeader Special
|
||||
HiLink dosiniComment Comment
|
||||
HiLink dosiniLabel Type
|
||||
HiLink dosiniBool Boolean
|
||||
HiLink dosiniNumber Number
|
||||
HiLink dosiniHeader Special
|
||||
HiLink dosiniComment Comment
|
||||
HiLink dosiniLabel Type
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "dosini"
|
||||
|
||||
" vim:ts=8
|
||||
" vim: sts=2 sw=2 et
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
" Vim syntax file
|
||||
" Language: gitolite configuration
|
||||
" URL: https://github.com/tmatilai/gitolite.vim
|
||||
" Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>
|
||||
" Last Change: 2011-10-05
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Comment
|
||||
syn match gitoliteComment "\(^\|\s\)#.*" contains=gitoliteTodo
|
||||
syn keyword gitoliteTodo TODO FIXME XXX NOT contained
|
||||
|
||||
" Groups, users and repos
|
||||
syn match gitoliteGroupDef "\(^\s*\)\@<=@[^=]\{-1,}\(\s*=\)\@=" contains=gitoliteSpaceError,gitoliteUserError nextgroup=gitoliteGroupDefSep
|
||||
syn match gitoliteGroupDefSep "\s*=" contained nextgroup=gitoliteRepoLine
|
||||
syn match gitoliteRepoDef "^\s*repo\s" nextgroup=gitoliteRepoLine
|
||||
|
||||
syn match gitoliteRepoLine ".*" contained transparent contains=gitoliteGroup,gitoliteWildRepo,gitoliteCreator,gitoliteExtCmdHelper,gitoliteRepoError,gitoliteComment
|
||||
syn match gitoliteUserLine ".*" contained transparent contains=gitoliteGroup,gitolitePreProc,gitoliteUserError,gitoliteComment
|
||||
|
||||
syn match gitoliteWildRepo "[ \t=]\@<=[^ \t]*[\\^$|()[\]*?{}][^ \t]*" contained contains=gitoliteCreator,gitoliteRepoError
|
||||
syn match gitoliteGroup "[ \t=]\@<=@[^ \t]\+" contained contains=gitoliteUserError
|
||||
|
||||
syn keyword gitoliteCreator CREATER CREATOR contained
|
||||
syn keyword gitolitePreProc CREATER CREATOR READERS WRITERS contained
|
||||
|
||||
syn match gitoliteExtCmdHelper "[ \t=]\@<=EXTCMD/" contained nextgroup=gitoliteExtCmd
|
||||
syn match gitoliteExtCmd "rsync\(\s\|$\)" contained
|
||||
|
||||
" Illegal characters
|
||||
syn match gitoliteRepoError "[^ \t0-9a-zA-Z._@+/\\^$|()[\]*?{}-]\+" contained
|
||||
syn match gitoliteUserError "[^ \t0-9a-zA-Z._@+-]\+" contained
|
||||
syn match gitoliteSpaceError "\s\+" contained
|
||||
|
||||
" Permission
|
||||
syn match gitoliteKeyword "^\s*\(C\|R\|RW\|RW+\|RWC\|RW+C\|RWD\|RW+D\|RWCD\|RW+CD\)[ \t=]\@=" nextgroup=gitoliteRefex
|
||||
syn match gitoliteKeyword "^\s*-[ \t=]\@=" nextgroup=gitoliteDenyRefex
|
||||
syn match gitoliteRefex "[^=]*="he=e-1 contained contains=gitoliteSpecialRefex,gitoliteGroup nextgroup=gitoliteUserLine
|
||||
syn match gitoliteDenyRefex "[^=]*="he=e-1 contained contains=gitoliteSpecialRefex,gitoliteGroup nextgroup=gitoliteDenyUsers
|
||||
syn match gitoliteSpecialRefex "\sNAME/"he=e-1 contained
|
||||
syn match gitoliteSpecialRefex "/USER/"hs=s+1,he=e-1 contained
|
||||
syn match gitoliteDenyUsers ".*" contained contains=gitoliteUserError,gitoliteComment
|
||||
|
||||
" Configuration
|
||||
syn match gitoliteKeyword "^\s*config\s\+" nextgroup=gitoliteConfVariable
|
||||
syn match gitoliteConfVariable "[^=]*" contained
|
||||
|
||||
" Include
|
||||
syn match gitoliteInclude "^\s*\(include\|subconf\)\s"
|
||||
|
||||
" String
|
||||
syn region gitoliteString start=+"+ end=+"+ oneline
|
||||
|
||||
" Define the default highlighting
|
||||
hi def link gitoliteComment Comment
|
||||
hi def link gitoliteTodo Todo
|
||||
hi def link gitoliteGroupDef gitoliteGroup
|
||||
hi def link gitoliteGroup Identifier
|
||||
hi def link gitoliteWildRepo Special
|
||||
hi def link gitoliteRepoError gitoliteError
|
||||
hi def link gitoliteUserError gitoliteError
|
||||
hi def link gitoliteSpaceError gitoliteError
|
||||
hi def link gitoliteError Error
|
||||
hi def link gitoliteCreator gitolitePreProc
|
||||
hi def link gitolitePreProc PreProc
|
||||
hi def link gitoliteExtCmdHelper PreProc
|
||||
hi def link gitoliteExtCmd Special
|
||||
hi def link gitoliteRepoDef Type
|
||||
hi def link gitoliteKeyword Keyword
|
||||
hi def link gitoliteRefex String
|
||||
hi def link gitoliteDenyRefex gitoliteRefex
|
||||
hi def link gitoliteSpecialRefex PreProc
|
||||
hi def link gitoliteDenyUsers WarningMsg
|
||||
hi def link gitoliteConfVariable Identifier
|
||||
hi def link gitoliteInclude Include
|
||||
hi def link gitoliteString String
|
||||
|
||||
let b:current_syntax = "gitolite"
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: gnash(1) configuration files
|
||||
" http://www.gnu.org/software/gnash/manual/gnashuser.html#gnashrc
|
||||
" Maintainer: Thilo Six <T.Six@gmx.de>
|
||||
" Last Change: 17 May 2011
|
||||
" Last Change: 2011 Jul 02
|
||||
" Credidts: derived from readline.vim
|
||||
" Nikolai Weibull
|
||||
"
|
||||
@@ -32,6 +32,7 @@ syn case match
|
||||
syn match GnashSet '^\s*set\>'
|
||||
syn match GnashSet '^\s*append\>'
|
||||
|
||||
syn case ignore
|
||||
syn match GnashKeyword '\<CertDir\>'
|
||||
syn match GnashKeyword '\<ASCodingErrorsVerbosity\>'
|
||||
syn match GnashKeyword '\<CertFile\>'
|
||||
|
||||
+13
-4
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim help file
|
||||
" Maintainer: Bram Moolenaar (Bram@vim.org)
|
||||
" Last Change: 2010 Nov 03
|
||||
" Last Change: 2011 Jul 11
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -21,8 +21,13 @@ else
|
||||
syn match helpHyperTextEntry "\*[#-)!+-~]\+\*\s"he=e-1 contains=helpStar
|
||||
syn match helpHyperTextEntry "\*[#-)!+-~]\+\*$" contains=helpStar
|
||||
endif
|
||||
syn match helpBar contained "|" conceal
|
||||
syn match helpStar contained "\*" conceal
|
||||
if has("conceal")
|
||||
syn match helpBar contained "|" conceal
|
||||
syn match helpStar contained "\*" conceal
|
||||
else
|
||||
syn match helpBar contained "|"
|
||||
syn match helpStar contained "\*"
|
||||
endif
|
||||
syn match helpNormal "|.*====*|"
|
||||
syn match helpNormal ":|vim:|" " for :help modeline
|
||||
syn match helpVim "Vim version [0-9.a-z]\+"
|
||||
@@ -31,7 +36,11 @@ syn match helpOption "'[a-z]\{2,\}'"
|
||||
syn match helpOption "'t_..'"
|
||||
syn match helpHeader "\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore
|
||||
syn match helpGraphic ".* \ze`$" nextgroup=helpIgnore
|
||||
syn match helpIgnore "." contained conceal
|
||||
if has("conceal")
|
||||
syn match helpIgnore "." contained conceal
|
||||
else
|
||||
syn match helpIgnore "." contained
|
||||
endif
|
||||
syn keyword helpNote note Note NOTE note: Note: NOTE: Notes Notes:
|
||||
syn match helpSpecial "\<N\>"
|
||||
syn match helpSpecial "\<N\.$"me=e-1
|
||||
|
||||
@@ -22,7 +22,7 @@ syn match netrwDir "\.\{1,2}/" contains=netrwClassify,@NoSpell
|
||||
syn match netrwDir "\%(\S\+ \)*\S\+/" contains=netrwClassify,@NoSpell
|
||||
syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" skipwhite contains=netrwDateSep,@NoSpell nextgroup=netrwTime
|
||||
syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||
syn match netrwExe "\%(\S\+ \)*\S\+\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||
syn match netrwExe "\%(\S\+ \)*\S*[^~]\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||
syn match netrwTreeBar "^\%([-+|] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
|
||||
syn match netrwTreeBarSpace " " contained
|
||||
|
||||
@@ -63,7 +63,7 @@ if exists("g:netrw_special_syntax") && netrw_special_syntax
|
||||
syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTilde "\(\S\+ \)*\S\+\~\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTilde "\(\S\+ \)*\S\+\~\*\=\>" contains=netrwTreeBar,@NoSpell
|
||||
syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar,@NoSpell
|
||||
endif
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: pam(8) configuration file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-04-19
|
||||
" Latest Revision: 2011-08-03
|
||||
|
||||
|
||||
if exists("b:current_syntax")
|
||||
@@ -33,7 +33,7 @@ syn match pamconfTypeLineCont contained '\\$'
|
||||
\ pamconfTypeLineCont skipwhite skipnl
|
||||
|
||||
syn keyword pamconfControl contained requisite required sufficient
|
||||
\ optional
|
||||
\ optional include substack
|
||||
\ nextgroup=pamconfMPath,
|
||||
\ pamconfControlLineContH skipwhite
|
||||
|
||||
@@ -57,7 +57,9 @@ syn keyword pamconfControlValues contained success open_err symbol_err
|
||||
\ bad_item and default
|
||||
\ nextgroup=pamconfControlValueEq
|
||||
|
||||
syn match pamconfControlValueEq contained '=' nextgroup=pamconfControlAction
|
||||
syn match pamconfControlValueEq contained '='
|
||||
\ nextgroup=pamconfControlActionN,
|
||||
\ pamconfControlAction
|
||||
|
||||
syn match pamconfControlActionN contained '\d\+\>'
|
||||
\ nextgroup=pamconfControlValues,
|
||||
|
||||
+97
-47
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: php PHP 3/4/5
|
||||
" Maintainer: Jason Woofenden <jason@jasonwoof.com>
|
||||
" Last Change: April 28, 2011
|
||||
" Last Change: Oct 20, 2011
|
||||
" URL: https://gitorious.org/jasonwoof/vim-syntax/blobs/master/php.vim
|
||||
" Former Maintainers: Peter Hodge <toomuchphp-vim@yahoo.com>
|
||||
" Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
@@ -54,14 +54,6 @@
|
||||
" the string would be highlighted as an error, what is incorrect.
|
||||
" ii) Same problem if you are setting php_folding = 2 with a closing
|
||||
" } inside an string on the first line of this string.
|
||||
"
|
||||
" - A double-quoted string like this:
|
||||
" "$foo->someVar->someOtherVar->bar"
|
||||
" will highight '->someOtherVar->bar' as though they will be parsed
|
||||
" as object member variables, but PHP only recognizes the first
|
||||
" object member variable ($foo->someVar).
|
||||
"
|
||||
"
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -118,6 +110,10 @@ if exists( "php_htmlInStrings")
|
||||
syn cluster phpAddStrings add=@htmlTop
|
||||
endif
|
||||
|
||||
" make sure we can use \ at the begining of the line to do a continuation
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case match
|
||||
|
||||
" Env Variables
|
||||
@@ -131,7 +127,7 @@ syn keyword phpCoreConstant PHP_VERSION PHP_OS DEFAULT_INCLUDE_PATH PEAR_INSTALL
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn keyword phpConstant __LINE__ __FILE__ __FUNCTION__ __METHOD__ __CLASS__ contained
|
||||
syn keyword phpConstant __LINE__ __FILE__ __FUNCTION__ __METHOD__ __CLASS__ __DIR__ __NAMESPACE__ contained
|
||||
|
||||
|
||||
" Function and Methods ripped from php_manual_de.tar.gz Jan 2003
|
||||
@@ -273,7 +269,7 @@ syn keyword phpRepeat as do endfor endforeach endwhile for foreach while contai
|
||||
syn keyword phpLabel case default switch contained
|
||||
|
||||
" Statement
|
||||
syn keyword phpStatement return break continue exit contained
|
||||
syn keyword phpStatement return break continue exit goto contained
|
||||
|
||||
" Keyword
|
||||
syn keyword phpKeyword var const contained
|
||||
@@ -282,7 +278,7 @@ syn keyword phpKeyword var const contained
|
||||
syn keyword phpType bool[ean] int[eger] real double float string array object NULL contained
|
||||
|
||||
" Structure
|
||||
syn keyword phpStructure extends implements instanceof parent self contained
|
||||
syn keyword phpStructure namespace extends implements instanceof parent self contained
|
||||
|
||||
" Operator
|
||||
syn match phpOperator "[-=+%^&|*!.~?:]" contained display
|
||||
@@ -302,11 +298,41 @@ syn match phpIdentifierSimply "${\h\w*}" contains=phpOperator,phpParent contai
|
||||
syn region phpIdentifierComplex matchgroup=phpParent start="{\$"rs=e-1 end="}" contains=phpIdentifier,phpMemberSelector,phpVarSelector,phpIdentifierComplexP contained extend
|
||||
syn region phpIdentifierComplexP matchgroup=phpParent start="\[" end="]" contains=@phpClInside contained
|
||||
|
||||
" Interpolated indentifiers (inside strings)
|
||||
syn match phpBrackets "[][}{]" contained display
|
||||
" errors
|
||||
syn match phpInterpSimpleError "\[[^]]*\]" contained display " fallback (if nothing else matches)
|
||||
syn match phpInterpSimpleError "->[^a-zA-Z_]" contained display
|
||||
" make sure these stay above the correct DollarCurlies so they don't take priority
|
||||
syn match phpInterpBogusDollarCurley "${[^}]*}" contained display " fallback (if nothing else matches)
|
||||
syn match phpinterpSimpleBracketsInner "\w\+" contained
|
||||
syn match phpInterpSimpleBrackets "\[\h\w*]" contained contains=phpBrackets,phpInterpSimpleBracketsInner
|
||||
syn match phpInterpSimpleBrackets "\[\d\+]" contained contains=phpBrackets,phpInterpSimpleBracketsInner
|
||||
syn match phpInterpSimpleBrackets "\[0[xX]\x\+]" contained contains=phpBrackets,phpInterpSimpleBracketsInner
|
||||
syn match phpInterpSimple "\$\h\w*\(\[[^]]*\]\|->\h\w*\)\?" contained contains=phpInterpSimpleBrackets,phpIdentifier,phpInterpSimpleError,phpMethods,phpMemberSelector display
|
||||
syn match phpInterpVarname "\h\w*" contained
|
||||
syn match phpInterpMethodName "\h\w*" contained " default color
|
||||
syn match phpInterpSimpleCurly "\${\h\w*}" contains=phpInterpVarname contained extend
|
||||
syn region phpInterpDollarCurley1Helper matchgroup=phpParent start="{" end="\[" contains=phpInterpVarname contained
|
||||
syn region phpInterpDollarCurly1 matchgroup=phpParent start="\${\h\w*\["rs=s+1 end="]}" contains=phpInterpDollarCurley1Helper,@phpClConst contained extend
|
||||
|
||||
syn match phpInterpDollarCurley2Helper "{\h\w*->" contains=phpBrackets,phpInterpVarname,phpMemberSelector contained
|
||||
|
||||
syn region phpInterpDollarCurly2 matchgroup=phpParent start="\${\h\w*->"rs=s+1 end="}" contains=phpInterpDollarCurley2Helper,phpInterpMethodName contained
|
||||
|
||||
syn match phpInterpBogusDollarCurley "${\h\w*->}" contained display
|
||||
syn match phpInterpBogusDollarCurley "${\h\w*\[]}" contained display
|
||||
|
||||
syn region phpInterpComplex matchgroup=phpParent start="{\$"rs=e-1 end="}" contains=phpIdentifier,phpMemberSelector,phpVarSelector,phpIdentifierComplexP contained extend
|
||||
syn region phpIdentifierComplexP matchgroup=phpParent start="\[" end="]" contains=@phpClInside contained
|
||||
" define a cluster to get all interpolation syntaxes for double-quoted strings
|
||||
syn cluster phpInterpDouble contains=phpInterpSimple,phpInterpSimpleCurly,phpInterpDollarCurly1,phpInterpDollarCurly2,phpInterpBogusDollarCurley,phpInterpComplex
|
||||
|
||||
" Methoden
|
||||
syn match phpMethodsVar "->\h\w*" contained contains=phpMethods,phpMemberSelector display
|
||||
|
||||
" Include
|
||||
syn keyword phpInclude include require include_once require_once contained
|
||||
syn keyword phpInclude include require include_once require_once use contained
|
||||
|
||||
" Peter Hodge - added 'clone' keyword
|
||||
" Define
|
||||
@@ -322,12 +348,18 @@ syn match phpNumber "\<0x\x\{1,8}\>" contained display
|
||||
" Float
|
||||
syn match phpFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" contained display
|
||||
|
||||
" SpecialChar
|
||||
syn match phpSpecialChar "\\[abcfnrtyv\\]" contained display
|
||||
syn match phpSpecialChar "\\\d\{3}" contained contains=phpOctalError display
|
||||
syn match phpSpecialChar "\\x\x\{2}" contained display
|
||||
syn match phpDoubleSpecialChar "\\\"" contained display
|
||||
syn match phpSingleSpecialChar "\\[\\']" contained display
|
||||
" Backslash escapes
|
||||
syn case match
|
||||
" for double quotes and heredoc
|
||||
syn match phpBackslashSequences "\\[fnrtv\\\"$]" contained display
|
||||
syn match phpBackslashSequences "\\\d\{1,3}" contained contains=phpOctalError display
|
||||
syn match phpBackslashSequences "\\x\x\{1,2}" contained display
|
||||
" additional sequence for double quotes only
|
||||
syn match phpBackslashDoubleQuote "\\[\"]" contained display
|
||||
" for single quotes only
|
||||
syn match phpBackslashSingleQuote "\\[\\']" contained display
|
||||
syn case ignore
|
||||
|
||||
|
||||
" Error
|
||||
syn match phpOctalError "[89]" contained display
|
||||
@@ -356,23 +388,32 @@ endif
|
||||
|
||||
" String
|
||||
if exists("php_parent_error_open")
|
||||
syn region phpStringDouble matchgroup=None start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpIdentifier,phpSpecialChar,phpIdentifierSimply,phpIdentifierComplex,phpDoubleSpecialChar contained keepend
|
||||
syn region phpBacktick matchgroup=None start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpSpecialChar,phpIdentifierSimply,phpIdentifierComplex contained keepend
|
||||
syn region phpStringSingle matchgroup=None start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpSingleSpecialChar contained keepend
|
||||
syn region phpStringDouble matchgroup=None start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble contained keepend
|
||||
syn region phpBacktick matchgroup=None start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained keepend
|
||||
syn region phpStringSingle matchgroup=None start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpBackslashSingleQuote contained keepend
|
||||
else
|
||||
syn region phpStringDouble matchgroup=None start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpIdentifier,phpSpecialChar,phpIdentifierSimply,phpIdentifierComplex,phpDoubleSpecialChar contained extend keepend
|
||||
syn region phpBacktick matchgroup=None start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpSpecialChar,phpIdentifierSimply,phpIdentifierComplex contained extend keepend
|
||||
syn region phpStringSingle matchgroup=None start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpSingleSpecialChar contained keepend extend
|
||||
syn region phpStringDouble matchgroup=None start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble contained extend keepend
|
||||
syn region phpBacktick matchgroup=None start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained extend keepend
|
||||
syn region phpStringSingle matchgroup=None start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpBackslashSingleQuote contained keepend extend
|
||||
endif
|
||||
|
||||
" HereDoc
|
||||
" HereDoc and NowDoc
|
||||
if version >= 600
|
||||
syn case match
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\z(\I\i*\)$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpSpecialChar,phpMethodsVar keepend extend
|
||||
|
||||
" HereDoc
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\I\i*\)\2$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar keepend extend
|
||||
" including HTML,JavaScript,SQL even if not enabled via options
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpSpecialChar,phpMethodsVar keepend extend
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpSpecialChar,phpMethodsVar keepend extend
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpSpecialChar,phpMethodsVar keepend extend
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar keepend extend
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar keepend extend
|
||||
syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar keepend extend
|
||||
|
||||
" NowDoc
|
||||
syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\I\i*\)'$" end="^\z1\(;\=$\)\@=" contained keepend extend
|
||||
" including HTML,JavaScript,SQL even if not enabled via options
|
||||
syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop keepend extend
|
||||
syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop keepend extend
|
||||
syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript keepend extend
|
||||
syn case ignore
|
||||
endif
|
||||
|
||||
@@ -389,7 +430,7 @@ else
|
||||
endif
|
||||
|
||||
syn cluster phpClConst contains=phpFunctions,phpIdentifier,phpConditional,phpRepeat,phpStatement,phpOperator,phpRelation,phpStringSingle,phpStringDouble,phpBacktick,phpNumber,phpFloat,phpKeyword,phpType,phpBoolean,phpStructure,phpMethodsVar,phpConstant,phpCoreConstant,phpException
|
||||
syn cluster phpClInside contains=@phpClConst,phpComment,phpLabel,phpParent,phpParentError,phpInclude,phpHereDoc
|
||||
syn cluster phpClInside contains=@phpClConst,phpComment,phpLabel,phpParent,phpParentError,phpInclude,phpHereDoc,phpNowDoc
|
||||
syn cluster phpClFunction contains=@phpClInside,phpDefine,phpParentError,phpStorageClass
|
||||
syn cluster phpClTop contains=@phpClFunction,phpFoldFunction,phpFoldClass,phpFoldInterface,phpFoldTry,phpFoldCatch
|
||||
|
||||
@@ -452,17 +493,14 @@ else
|
||||
syn keyword phpStorageClass final global private protected public static contained
|
||||
endif
|
||||
|
||||
" TODO: fold on "trait". For now just make sure it gets colored:
|
||||
syn keyword phpStructure trait
|
||||
|
||||
" ================================================================
|
||||
" Peter Hodge - June 9, 2006
|
||||
" Some of these changes (highlighting isset/unset/echo etc) are not so
|
||||
" critical, but they make things more colourful. :-)
|
||||
|
||||
" corrected highlighting for an escaped '\$' inside a double-quoted string
|
||||
syn match phpSpecialChar "\\\$" contained display
|
||||
|
||||
" highlight object variables inside strings
|
||||
syn match phpMethodsVar "->\h\w*" contained contains=phpMethods,phpMemberSelector display containedin=phpStringDouble
|
||||
|
||||
" highlight constant E_STRICT
|
||||
syntax case match
|
||||
syntax keyword phpCoreConstant E_STRICT contained
|
||||
@@ -613,13 +651,21 @@ if version >= 508 || !exists("did_php_syn_inits")
|
||||
HiLink phpType Type
|
||||
HiLink phpInclude Include
|
||||
HiLink phpDefine Define
|
||||
HiLink phpSpecialChar SpecialChar
|
||||
HiLink phpDoubleSpecialChar SpecialChar
|
||||
HiLink phpSingleSpecialChar SpecialChar
|
||||
HiLink phpBackslashSequences SpecialChar
|
||||
HiLink phpBackslashDoubleQuote SpecialChar
|
||||
HiLink phpBackslashSingleQuote SpecialChar
|
||||
HiLink phpParent Delimiter
|
||||
HiLink phpBrackets Delimiter
|
||||
HiLink phpIdentifierConst Delimiter
|
||||
HiLink phpParentError Error
|
||||
HiLink phpOctalError Error
|
||||
HiLink phpInterpSimpleError Error
|
||||
HiLink phpInterpBogusDollarCurley Error
|
||||
HiLink phpInterpDollarCurly1 Error
|
||||
HiLink phpInterpDollarCurly2 Error
|
||||
HiLink phpInterpSimpleBracketsInner String
|
||||
HiLink phpInterpSimpleCurly Delimiter
|
||||
HiLink phpInterpVarname Identifier
|
||||
HiLink phpTodo Todo
|
||||
HiLink phpMemberSelector Structure
|
||||
if exists("php_oldStyle")
|
||||
@@ -631,13 +677,13 @@ if version >= 508 || !exists("did_php_syn_inits")
|
||||
hi phpIdentifier guifg=DarkGray ctermfg=Brown
|
||||
hi phpIdentifierSimply guifg=DarkGray ctermfg=Brown
|
||||
else
|
||||
HiLink phpIntVar Identifier
|
||||
HiLink phpEnvVar Identifier
|
||||
HiLink phpOperator Operator
|
||||
HiLink phpVarSelector Operator
|
||||
HiLink phpRelation Operator
|
||||
HiLink phpIdentifier Identifier
|
||||
HiLink phpIdentifierSimply Identifier
|
||||
HiLink phpIntVar Identifier
|
||||
HiLink phpEnvVar Identifier
|
||||
HiLink phpOperator Operator
|
||||
HiLink phpVarSelector Operator
|
||||
HiLink phpRelation Operator
|
||||
HiLink phpIdentifier Identifier
|
||||
HiLink phpIdentifierSimply Identifier
|
||||
endif
|
||||
|
||||
delcommand HiLink
|
||||
@@ -649,4 +695,8 @@ if main_syntax == 'php'
|
||||
unlet main_syntax
|
||||
endif
|
||||
|
||||
" put cpoptions back the way we found it
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8 sts=2 sw=2 expandtab
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: R Help File
|
||||
" Maintainer: Jakson Aquino <jalvesaq@gmail.com>
|
||||
" Former Maintainer: Johannes Ranke <jranke@uni-bremen.de>
|
||||
" Last Change: Sat Feb 19, 2011 02:13PM
|
||||
" Last Change: Fri Oct 14, 2011 09:54PM
|
||||
" Version: 0.7.4
|
||||
" SVN: $Id: rhelp.vim 90 2010-11-22 10:58:11Z ranke $
|
||||
" Remarks: - Includes R syntax highlighting in the appropriate
|
||||
@@ -192,9 +192,9 @@ syn match rhelpDelimiter "{\|\[\|(\|)\|\]\|}"
|
||||
syn match rhelpComment /%.*$/
|
||||
|
||||
" Error {{{1
|
||||
syn region rhelpRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rhelpError,rhelpBraceError,rhelpCurlyError
|
||||
syn region rhelpRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rhelpError,rhelpBraceError,rhelpParenError
|
||||
syn region rhelpRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rhelpError,rhelpCurlyError,rhelpParenError
|
||||
syn region rhelpRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ contains=@Spell,rhelpCodeSpecial,rhelpComment,rhelpDelimiter,rhelpDots,rhelpFreesec,rhelpFreesubsec,rhelpIdentifier,rhelpKeyword,rhelpLink,rhelpPreProc,rhelpRComment,rhelpRcode,rhelpRegion,rhelpS4method,rhelpSection,rhelpSexpr,rhelpSpecialChar,rhelpString,rhelpType,rhelpVerbatim
|
||||
syn region rhelpRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ contains=@Spell,rhelpCodeSpecial,rhelpComment,rhelpDelimiter,rhelpDots,rhelpFreesec,rhelpFreesubsec,rhelpIdentifier,rhelpKeyword,rhelpLink,rhelpPreProc,rhelpRComment,rhelpRcode,rhelpRegion,rhelpS4method,rhelpSection,rhelpSexpr,rhelpSpecialChar,rhelpString,rhelpType,rhelpVerbatim
|
||||
syn region rhelpRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ contains=@Spell,rhelpCodeSpecial,rhelpComment,rhelpDelimiter,rhelpDots,rhelpFreesec,rhelpFreesubsec,rhelpIdentifier,rhelpKeyword,rhelpLink,rhelpPreProc,rhelpRComment,rhelpRcode,rhelpRegion,rhelpS4method,rhelpSection,rhelpSexpr,rhelpSpecialChar,rhelpString,rhelpType,rhelpVerbatim
|
||||
syn match rhelpError /[)\]}]/
|
||||
syn match rhelpBraceError /[)}]/ contained
|
||||
syn match rhelpCurlyError /[)\]]/ contained
|
||||
|
||||
+55
-26
@@ -2,8 +2,8 @@
|
||||
" Language: shell (sh) Korn shell (ksh) bash (sh)
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
|
||||
" Last Change: Feb 11, 2011
|
||||
" Version: 115
|
||||
" Last Change: Aug 16, 2011
|
||||
" Version: 118
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
" For options and settings, please use: :help ft-sh-syntax
|
||||
" This file includes many ideas from ?ric Brunet (eric.brunet@ens.fr)
|
||||
@@ -16,12 +16,38 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" AFAICT "." should be considered part of the iskeyword. Using iskeywords in
|
||||
" syntax is dicey, so the following code permits the user to prevent/override
|
||||
" its setting.
|
||||
if exists("g:sh_isk") " override support
|
||||
exe "setlocal isk=".g:sh_isk
|
||||
elseif !exists("g:sh_noisk") " prevent modification support
|
||||
setlocal isk+=.
|
||||
endif
|
||||
|
||||
" trying to answer the question: which shell is /bin/sh, really?
|
||||
if !exists("g:is_kornshell") && !exists("g:is_bash") && !exists("g:is_posix") && !exists("g:is_sh")
|
||||
if executable("/bin/sh")
|
||||
if resolve("/bin/sh") =~ 'bash$'
|
||||
let g:is_bash= 1
|
||||
elseif resolve("/bin/sh") =~ 'ksh$'
|
||||
let g:is_ksh = 1
|
||||
endif
|
||||
elseif executable("/usr/bin/sh")
|
||||
if resolve("/usr/bin//sh") =~ 'bash$'
|
||||
let g:is_bash= 1
|
||||
elseif resolve("/usr/bin//sh") =~ 'ksh$'
|
||||
let g:is_ksh = 1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" handling /bin/sh with is_kornshell/is_sh {{{1
|
||||
" b:is_sh is set when "#! /bin/sh" is found;
|
||||
" However, it often is just a masquerade by bash (typically Linux)
|
||||
" or kornshell (typically workstations with Posix "sh").
|
||||
" So, when the user sets "is_bash" or "is_kornshell",
|
||||
" a b:is_sh is converted into b:is_bash/b:is_kornshell,
|
||||
" So, when the user sets "g:is_bash", "g:is_kornshell",
|
||||
" or "g:is_posix", a b:is_sh is converted into b:is_bash/b:is_kornshell,
|
||||
" respectively.
|
||||
if !exists("b:is_kornshell") && !exists("b:is_bash")
|
||||
if exists("g:is_posix") && !exists("g:is_kornshell")
|
||||
@@ -74,7 +100,7 @@ endif
|
||||
syn cluster shArithParenList contains=shArithmetic,shCaseEsac,shDeref,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement
|
||||
syn cluster shArithList contains=@shArithParenList,shParenError
|
||||
syn cluster shCaseEsacList contains=shCaseStart,shCase,shCaseBar,shCaseIn,shComment,shDeref,shDerefSimple,shCaseCommandSub,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote,shCtrlSeq,@shErrorList,shStringSpecial,shCaseRange
|
||||
syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq
|
||||
syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq
|
||||
syn cluster shColonList contains=@shCaseList
|
||||
syn cluster shCommandSubList contains=shArithmetic,shDeref,shDerefSimple,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shSingleQuote,shExDoubleQuote,shDoubleQuote,shStatement,shVariable,shSubSh,shAlias,shTest,shCtrlSeq,shSpecial
|
||||
syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial
|
||||
@@ -84,7 +110,7 @@ syn cluster shDerefVarList contains=shDerefOp,shDerefVarArray,shDerefOpError
|
||||
syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote
|
||||
syn cluster shExprList1 contains=shCharClass,shNumber,shOperator,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shDblBrace,shDeref,shDerefSimple,shCtrlSeq
|
||||
syn cluster shExprList2 contains=@shExprList1,@shCaseList,shTest
|
||||
syn cluster shFunctionList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shOption,shRedir,shSetList,shSource,shStatement,shVariable,shOperator,shCtrlSeq
|
||||
syn cluster shFunctionList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shOption,shRedir,shSetList,shSource,shStatement,shVariable,shOperator,shCtrlSeq
|
||||
if exists("b:is_kornshell") || exists("b:is_bash")
|
||||
syn cluster shFunctionList add=shRepeat
|
||||
syn cluster shFunctionList add=shDblBrace,shDblParen
|
||||
@@ -94,8 +120,8 @@ syn cluster shHereList contains=shBeginHere,shHerePayload
|
||||
syn cluster shHereListDQ contains=shBeginHere,@shDblQuoteList,shHerePayload
|
||||
syn cluster shIdList contains=shCommandSub,shWrapLineOperator,shSetOption,shDeref,shDerefSimple,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial
|
||||
syn cluster shLoopList contains=@shCaseList,shTestOpr,shExpr,shDblBrace,shConditional,shCaseEsac,shTest,@shErrorList,shSet
|
||||
syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator
|
||||
syn cluster shTestList contains=shCharClass,shComment,shCommandSub,shDeref,shDerefSimple,shExDoubleQuote,shDoubleQuote,shExpr,shExpr,shNumber,shOperator,shExSingleQuote,shSingleQuote,shTestOpr,shTest,shCtrlSeq
|
||||
syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator
|
||||
syn cluster shTestList contains=shCharClass,shComment,shCommandSub,shDeref,shDerefSimple,shExDoubleQuote,shDoubleQuote,shExpr,shNumber,shOperator,shExSingleQuote,shSingleQuote,shTestOpr,shTest,shCtrlSeq
|
||||
|
||||
" Echo: {{{1
|
||||
" ====
|
||||
@@ -111,8 +137,8 @@ syn region shEmbeddedEcho contained matchgroup=shStatement start="\<print\>" ski
|
||||
" =====
|
||||
if exists("b:is_kornshell") || exists("b:is_bash")
|
||||
syn match shStatement "\<alias\>"
|
||||
syn region shAlias matchgroup=shStatement start="\<alias\>\s\+\(\w\+\)\@=" skip="\\$" end="\>\|`"
|
||||
syn region shAlias matchgroup=shStatement start="\<alias\>\s\+\(\w\+=\)\@=" skip="\\$" end="="
|
||||
syn region shAlias matchgroup=shStatement start="\<alias\>\s\+\(\h[-._[:alnum:]]\+\)\@=" skip="\\$" end="\>\|`"
|
||||
syn region shAlias matchgroup=shStatement start="\<alias\>\s\+\(\h[-._[:alnum:]]\+=\)\@=" skip="\\$" end="="
|
||||
endif
|
||||
|
||||
" Error Codes: {{{1
|
||||
@@ -152,8 +178,8 @@ syn match shPattern "\<\S\+\())\)\@=" contained contains=shExSingleQuote,shSin
|
||||
|
||||
" Subshells: {{{1
|
||||
" ==========
|
||||
syn region shExpr transparent matchgroup=shExprRegion start="{" end="}" contains=@shExprList2 nextgroup=shMoreSpecial
|
||||
syn region shSubSh transparent matchgroup=shSubShRegion start="(" end=")" contains=@shSubShList nextgroup=shMoreSpecial
|
||||
syn region shExpr transparent matchgroup=shExprRegion start="{" end="}" contains=@shExprList2 nextgroup=shMoreSpecial
|
||||
syn region shSubSh transparent matchgroup=shSubShRegion start="[^(]\zs(" end=")" contains=@shSubShList nextgroup=shMoreSpecial
|
||||
|
||||
" Tests: {{{1
|
||||
"=======
|
||||
@@ -162,7 +188,7 @@ syn region shTest transparent matchgroup=shStatement start="\<test\s" skip=+\\\\
|
||||
syn match shTestOpr contained "<=\|>=\|!=\|==\|-.\>\|-\(nt\|ot\|ef\|eq\|ne\|lt\|le\|gt\|ge\)\>\|[!<>]"
|
||||
syn match shTestOpr contained '=' skipwhite nextgroup=shTestDoubleQuote,shTestSingleQuote,shTestPattern
|
||||
syn match shTestPattern contained '\w\+'
|
||||
syn match shTestDoubleQuote contained '"[^"]*"'
|
||||
syn match shTestDoubleQuote contained '\%(\%(\\\\\)*\\\)\@<!"[^"]*"'
|
||||
syn match shTestSingleQuote contained '\\.'
|
||||
syn match shTestSingleQuote contained "'[^']*'"
|
||||
if exists("b:is_kornshell") || exists("b:is_bash")
|
||||
@@ -178,11 +204,11 @@ syn match shCharClass contained "\[:\(backspace\|escape\|return\|xdigit\|alnum
|
||||
" ======
|
||||
if (g:sh_fold_enabled % (s:sh_fold_ifdofor * 2))/s:sh_fold_ifdofor
|
||||
syn region shDo fold transparent matchgroup=shConditional start="\<do\>" matchgroup=shConditional end="\<done\>" contains=@shLoopList
|
||||
syn region shIf fold transparent matchgroup=shConditional start="\<if\_s" matchgroup=shConditional end="\<;\_s*then\>" end="\<fi\>" contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey
|
||||
syn region shIf fold transparent matchgroup=shConditional start="\<if\_s" matchgroup=shConditional end="\<;\_s*then\>" end="\<fi\>" contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo
|
||||
syn region shFor fold matchgroup=shLoop start="\<for\_s" end="\<in\_s" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
|
||||
else
|
||||
syn region shDo transparent matchgroup=shConditional start="\<do\>" matchgroup=shConditional end="\<done\>" contains=@shLoopList
|
||||
syn region shIf transparent matchgroup=shConditional start="\<if\_s" matchgroup=shConditional end="\<;\_s*then\>" end="\<fi\>" contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey
|
||||
syn region shIf transparent matchgroup=shConditional start="\<if\_s" matchgroup=shConditional end="\<;\_s*then\>" end="\<fi\>" contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo
|
||||
syn region shFor matchgroup=shLoop start="\<for\_s" end="\<in\>" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
|
||||
endif
|
||||
if exists("b:is_kornshell") || exists("b:is_bash")
|
||||
@@ -224,7 +250,7 @@ syn region shCaseRange matchgroup=Delimiter start=+\[+ skip=+\\\\+ end=+]+ cont
|
||||
"======
|
||||
syn match shWrapLineOperator "\\$"
|
||||
syn region shCommandSub start="`" skip="\\\\\|\\." end="`" contains=@shCommandSubList
|
||||
syn match shEscape contained '\\.'
|
||||
syn match shEscape contained '\\.' contains=@shCommandSubList
|
||||
|
||||
" $() and $(()): {{{1
|
||||
" $(..) is not supported by sh (Bourne shell). However, apparently
|
||||
@@ -243,7 +269,7 @@ endif
|
||||
if exists("b:is_bash")
|
||||
syn cluster shCommandSubList add=bashSpecialVariables,bashStatement
|
||||
syn cluster shCaseList add=bashAdminStatement,bashStatement
|
||||
syn keyword bashSpecialVariables contained BASH BASH_ENV BASH_VERSINFO BASH_VERSION CDPATH DIRSTACK EUID FCEDIT FIGNORE GLOBIGNORE GROUPS HISTCMD HISTCONTROL HISTFILE HISTFILESIZE HISTIGNORE HISTSIZE HOME HOSTFILE HOSTNAME HOSTTYPE IFS IGNOREEOF INPUTRC LANG LC_ALL LC_COLLATE LC_MESSAGES LINENO MACHTYPE MAIL MAILCHECK MAILPATH OLDPWD OPTARG OPTERR OPTIND OSTYPE PATH PIPESTATUS PPID PROMPT_COMMAND PS1 PS2 PS3 PS4 PWD RANDOM REPLY SECONDS SHELLOPTS SHLVL TIMEFORMAT TIMEOUT UID auto_resume histchars
|
||||
syn keyword bashSpecialVariables contained auto_resume BASH BASH_ALIASES BASH_ALIASES BASH_ARGC BASH_ARGC BASH_ARGV BASH_ARGV BASH_CMDS BASH_CMDS BASH_COMMAND BASH_COMMAND BASH_ENV BASH_EXECUTION_STRING BASH_EXECUTION_STRING BASH_LINENO BASH_LINENO BASHOPTS BASHOPTS BASHPID BASHPID BASH_REMATCH BASH_REMATCH BASH_SOURCE BASH_SOURCE BASH_SUBSHELL BASH_SUBSHELL BASH_VERSINFO BASH_VERSION BASH_XTRACEFD BASH_XTRACEFD CDPATH COLUMNS COLUMNS COMP_CWORD COMP_CWORD COMP_KEY COMP_KEY COMP_LINE COMP_LINE COMP_POINT COMP_POINT COMPREPLY COMPREPLY COMP_TYPE COMP_TYPE COMP_WORDBREAKS COMP_WORDBREAKS COMP_WORDS COMP_WORDS COPROC COPROC DIRSTACK EMACS EMACS ENV ENV EUID FCEDIT FIGNORE FUNCNAME FUNCNAME FUNCNEST FUNCNEST GLOBIGNORE GROUPS histchars HISTCMD HISTCONTROL HISTFILE HISTFILESIZE HISTIGNORE HISTSIZE HISTTIMEFORMAT HISTTIMEFORMAT HOME HOSTFILE HOSTNAME HOSTTYPE IFS IGNOREEOF INPUTRC LANG LC_ALL LC_COLLATE LC_CTYPE LC_CTYPE LC_MESSAGES LC_NUMERIC LC_NUMERIC LINENO LINES LINES MACHTYPE MAIL MAILCHECK MAILPATH MAPFILE MAPFILE OLDPWD OPTARG OPTERR OPTIND OSTYPE PATH PIPESTATUS POSIXLY_CORRECT POSIXLY_CORRECT PPID PROMPT_COMMAND PS1 PS2 PS3 PS4 PWD RANDOM READLINE_LINE READLINE_LINE READLINE_POINT READLINE_POINT REPLY SECONDS SHELL SHELL SHELLOPTS SHLVL TIMEFORMAT TIMEOUT TMPDIR TMPDIR UID
|
||||
syn keyword bashStatement chmod clear complete du egrep expr fgrep find gnufind gnugrep grep install less ls mkdir mv rm rmdir rpm sed sleep sort strip tail touch
|
||||
syn keyword bashAdminStatement daemon killall killproc nice reload restart start status stop
|
||||
endif
|
||||
@@ -275,7 +301,8 @@ else
|
||||
syn region shExDoubleQuote matchGroup=Error start=+\$"+ skip=+\\\\\|\\.+ end=+"+ contains=shStringSpecial
|
||||
endif
|
||||
syn region shSingleQuote matchgroup=shQuote start=+'+ end=+'+ contains=@Spell
|
||||
syn region shDoubleQuote matchgroup=shQuote start=+"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,@Spell
|
||||
syn region shDoubleQuote matchgroup=shQuote start=+\%(\%(\\\\\)*\\\)\@<!"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,@Spell
|
||||
"syn region shDoubleQuote matchgroup=shQuote start=+"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,@Spell
|
||||
syn match shStringSpecial "[^[:print:] \t]" contained
|
||||
syn match shStringSpecial "\%(\\\\\)*\\[\\"'`$()#]"
|
||||
syn match shSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shMoreSpecial
|
||||
@@ -333,7 +360,8 @@ endif
|
||||
|
||||
" Here Strings: {{{1
|
||||
" =============
|
||||
if exists("b:is_bash")
|
||||
" available for: bash; ksh (really should be ksh93 only) but not if its a posix
|
||||
if exists("b:is_bash") || (exists("b:is_kornshell") && !exists("g:is_posix"))
|
||||
syn match shRedir "<<<"
|
||||
endif
|
||||
|
||||
@@ -410,10 +438,10 @@ syn region shDerefVarArray contained matchgroup=shDeref start="\[" end="]" co
|
||||
" ksh bash : ${parameter##pattern} remove large left pattern
|
||||
" ksh bash : ${parameter%pattern} remove small right pattern
|
||||
" ksh bash : ${parameter%%pattern} remove large right pattern
|
||||
" ksh bash : ${parameter^pattern} Case modification
|
||||
" ksh bash : ${parameter^^pattern} Case modification
|
||||
" ksh bash : ${parameter,pattern} Case modification
|
||||
" ksh bash : ${parameter,,pattern} Case modification
|
||||
" bash : ${parameter^pattern} Case modification
|
||||
" bash : ${parameter^^pattern} Case modification
|
||||
" bash : ${parameter,pattern} Case modification
|
||||
" bash : ${parameter,,pattern} Case modification
|
||||
syn cluster shDerefPatternList contains=shDerefPattern,shDerefString
|
||||
syn match shDerefOpError contained ":[[:punct:]]"
|
||||
syn match shDerefOp contained ":\=[-=?]" nextgroup=@shDerefPatternList
|
||||
@@ -421,12 +449,13 @@ syn match shDerefOp contained ":\=+" nextgroup=@shDerefPatternList
|
||||
if exists("b:is_bash") || exists("b:is_kornshell")
|
||||
syn match shDerefOp contained "#\{1,2}" nextgroup=@shDerefPatternList
|
||||
syn match shDerefOp contained "%\{1,2}" nextgroup=@shDerefPatternList
|
||||
syn match shDerefOp contained "\^\{1,2}" nextgroup=@shDerefPatternList
|
||||
syn match shDerefOp contained ",\{1,2}" nextgroup=@shDerefPatternList
|
||||
syn match shDerefPattern contained "[^{}]\+" contains=shDeref,shDerefSimple,shDerefPattern,shDerefString,shCommandSub,shDerefEscape nextgroup=shDerefPattern
|
||||
syn region shDerefPattern contained start="{" end="}" contains=shDeref,shDerefSimple,shDerefString,shCommandSub nextgroup=shDerefPattern
|
||||
syn match shDerefEscape contained '\%(\\\\\)*\\.'
|
||||
endif
|
||||
if exists("b:is_bash")
|
||||
syn match shDerefOp contained "[,^]\{1,2}" nextgroup=@shDerefPatternList
|
||||
endif
|
||||
syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@<!'+ end=+'+ contains=shStringSpecial
|
||||
syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@<!"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial
|
||||
syn match shDerefString contained "\\["']" nextgroup=shDerefPattern
|
||||
@@ -445,7 +474,7 @@ if exists("b:is_bash")
|
||||
endif
|
||||
|
||||
" Arithmetic Parenthesized Expressions: {{{1
|
||||
syn region shParen matchgroup=shArithRegion start='(\ze[^(]' end=')' contains=@shArithParenList
|
||||
syn region shParen matchgroup=shArithRegion start='(\%(\ze[^(]\|$\)' end=')' contains=@shArithParenList
|
||||
|
||||
" Useful sh Keywords: {{{1
|
||||
" ===================
|
||||
|
||||
@@ -43,11 +43,11 @@ syn keyword sqrSection begin-program begin-report begin-setup
|
||||
syn keyword sqrSection end-footing end-heading end-procedure
|
||||
syn keyword sqrSection end-program end-report end-setup
|
||||
|
||||
syn keyword sqrParagraph alter-color-map alter-conection
|
||||
syn keyword sqrParagraph alter-color-map alter-connection
|
||||
syn keyword sqrParagraph alter-locale alter-printer alter-report
|
||||
syn keyword sqrParagraph begin-document begin-execute begin-select
|
||||
syn keyword sqrParagraph begin-sql declare-chart declare-image
|
||||
syn keyword sqrParagraph declare-color-map declare-conection
|
||||
syn keyword sqrParagraph declare-color-map declare-connection
|
||||
syn keyword sqrParagraph declare-layout declare-printer
|
||||
syn keyword sqrParagraph declare-report declare-procedure
|
||||
syn keyword sqrParagraph declare-toc declare-variable end-declare
|
||||
@@ -224,16 +224,16 @@ if version >= 600
|
||||
" See also the sqrString section above for handling of ! characters
|
||||
" inside of strings. (Those patterns override the ones below.)
|
||||
syn match sqrComment /!\@<!!\([^!=].*\|$\)/ contains=sqrTodo
|
||||
" the ! can't be preceeded by another !,
|
||||
" the ! can't be preceded by another !,
|
||||
" and must be followed by at least one
|
||||
" character other than ! or =, or immediately
|
||||
" by the end-of-line
|
||||
syn match sqrComment /^!=.*/ contains=sqrTodo
|
||||
syn match sqrComment /^!!.*/ contains=sqrTodo
|
||||
syn match sqrError /^\s\+\zs!=.*/
|
||||
" it's an error to have "!=" preceeded by
|
||||
" it's an error to have "!=" preceded by
|
||||
" just whitespace on the line ("!="
|
||||
" preceeded by non-whitespace is treated
|
||||
" preceded by non-whitespace is treated
|
||||
" as neither a comment nor an error, since
|
||||
" it is often correct, i.e.
|
||||
" if #count != 7
|
||||
@@ -259,7 +259,7 @@ endif
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier, only when not done already.
|
||||
" For version 5.8 and later, only when an item doesn;t have hightlighting yet.
|
||||
" For version 5.8 and later, only when an item doesn't have highlighting yet.
|
||||
if version >= 508 || !exists("did_sqr_syn_inits")
|
||||
if version < 508
|
||||
let did_sqr_syn_inits = 1
|
||||
|
||||
+144
-53
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: TeX
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrchipO@ScampbellPfamily.AbizM>
|
||||
" Last Change: Dec 07, 2010
|
||||
" Version: 64
|
||||
" Last Change: Oct 12, 2011
|
||||
" Version: 69
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
"
|
||||
" Notes: {{{1
|
||||
@@ -37,6 +37,8 @@ if version < 600
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
scriptencoding utf-8
|
||||
|
||||
" Define the default highlighting. {{{1
|
||||
@@ -101,6 +103,9 @@ endif
|
||||
if b:tex_stylish
|
||||
setlocal isk+=@-@
|
||||
endif
|
||||
if exists("g:tex_nospell") && g:tex_nospell && !exists("g:tex_comment_nospell")
|
||||
let g:tex_comment_nospell= 1
|
||||
endif
|
||||
|
||||
" Clusters: {{{1
|
||||
" --------
|
||||
@@ -110,8 +115,13 @@ if !exists("g:tex_no_error")
|
||||
endif
|
||||
syn cluster texEnvGroup contains=texMatcher,texMathDelim,texSpecialChar,texStatement
|
||||
syn cluster texFoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texSectionMarker,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract
|
||||
syn cluster texMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,@Spell
|
||||
syn cluster texStyleGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texStyleStatement,@Spell,texStyleMatcher
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn cluster texMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,@Spell
|
||||
syn cluster texStyleGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texStyleStatement,@Spell,texStyleMatcher
|
||||
else
|
||||
syn cluster texMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption
|
||||
syn cluster texStyleGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texStyleStatement,texStyleMatcher
|
||||
endif
|
||||
syn cluster texRefGroup contains=texMatcher,texComment,texDelimiter
|
||||
if !exists("tex_no_math")
|
||||
syn cluster texMathZones contains=texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ
|
||||
@@ -147,7 +157,11 @@ else
|
||||
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup
|
||||
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup
|
||||
endif
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup,@Spell
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup,@Spell
|
||||
else
|
||||
syn region texParen start="(" end=")" contains=@texMatchGroup
|
||||
endif
|
||||
if !exists("g:tex_no_error")
|
||||
syn match texError "[}\])]"
|
||||
endif
|
||||
@@ -155,7 +169,8 @@ if !exists("tex_no_math")
|
||||
if !exists("g:tex_no_error")
|
||||
syn match texMathError "}" contained
|
||||
endif
|
||||
syn region texMathMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\}" end="}" end="%stopzone\>" contained contains=@texMathMatchGroup
|
||||
syn region texMathMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\}" end="}" end="%stopzone\>" contained contains=@texMathMatchGroup
|
||||
" syn region texMathMatcher matchgroup=Unique start="[^\\]\zs{" skip="\\\\\|\\[{}]" end="}" end="%stopzone\>" contained contains=@texMathMatchGroup
|
||||
endif
|
||||
|
||||
" TeX/LaTeX keywords: {{{1
|
||||
@@ -173,6 +188,7 @@ endif
|
||||
" TeX/LaTeX delimiters: {{{1
|
||||
syn match texDelimiter "&"
|
||||
syn match texDelimiter "\\\\"
|
||||
syn match texDelimiter "[{}]"
|
||||
|
||||
" Tex/Latex Options: {{{1
|
||||
syn match texOption "[^\\]\zs#\d\+\|^#\d\+"
|
||||
@@ -273,33 +289,59 @@ syn match texSpaceCode "\\\(math\|cat\|del\|lc\|sf\|uc\)code`"me=e-1 nextgroup=
|
||||
syn match texSpaceCodeChar "`\\\=.\(\^.\)\==\(\d\|\"\x\{1,6}\|`.\)" contained
|
||||
|
||||
" Sections, subsections, etc: {{{1
|
||||
if g:tex_fold_enabled && has("folding")
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup,@Spell
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup,@Spell
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup,@Spell
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@Spell
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup,@Spell
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
if g:tex_fold_enabled && has("folding")
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup,@Spell
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup,@Spell
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup,@Spell
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@Spell
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup,@Spell
|
||||
else
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup,@Spell
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup,@Spell
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup,@Spell
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@Spell
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell
|
||||
endif
|
||||
else
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup,@Spell
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup,@Spell
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup,@Spell
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup,@Spell
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@Spell
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell
|
||||
if g:tex_fold_enabled && has("folding")
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup
|
||||
else
|
||||
syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup
|
||||
syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup
|
||||
syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup
|
||||
syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup
|
||||
syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup
|
||||
syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup
|
||||
syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup
|
||||
syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup
|
||||
syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup
|
||||
syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup
|
||||
endif
|
||||
endif
|
||||
|
||||
" Bad Math (mismatched): {{{1
|
||||
if !exists("tex_no_math")
|
||||
syn match texBadMath "\\end\s*{\s*\(array\|gathered\|bBpvV]matrix\|split\|smallmatrix\|xxalignat\)\s*}"
|
||||
syn match texBadMath "\\end\s*{\s*\(array\|gathered\|bBpvV]matrix\|split\|subequations\|smallmatrix\|xxalignat\)\s*}"
|
||||
syn match texBadMath "\\end\s*{\s*\(align\|alignat\|displaymath\|displaymath\|eqnarray\|equation\|flalign\|gather\|math\|multline\|xalignat\)\*\=\s*}"
|
||||
syn match texBadMath "\\[\])]"
|
||||
endif
|
||||
@@ -344,6 +386,7 @@ if !exists("tex_no_math")
|
||||
call TexNewMathZone("G","gather",1)
|
||||
call TexNewMathZone("H","math",1)
|
||||
call TexNewMathZone("I","multline",1)
|
||||
call TexNewMathZone("J","subequations",0)
|
||||
call TexNewMathZone("K","xalignat",1)
|
||||
call TexNewMathZone("L","xxalignat",0)
|
||||
|
||||
@@ -364,7 +407,11 @@ if !exists("tex_no_math")
|
||||
syn match texMathOper "[_^=]" contained
|
||||
|
||||
" Text Inside Math Zones: {{{2
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
if !exists("g:tex_nospell") || !g:tex_nospell
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup,@Spell
|
||||
else
|
||||
syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup
|
||||
endif
|
||||
|
||||
" \left..something.. and \right..something.. support: {{{2
|
||||
syn match texMathDelimBad contained "\S"
|
||||
@@ -501,16 +548,15 @@ else
|
||||
endif
|
||||
|
||||
" Tex Reference Zones: {{{1
|
||||
syn match texRefZone '\\@samp\>' skipwhite nextgroup=texRefLabel
|
||||
syn match texRefZone '\\nocite\>' skipwhite nextgroup=texRefLabel
|
||||
syn match texRefZone '\\bibliography\>' skipwhite nextgroup=texRefLabel
|
||||
syn match texRefZone '\\label\>' skipwhite nextgroup=texRefLabel
|
||||
syn match texRefZone '\\\(page\|eq\)ref\>' skipwhite nextgroup=texRefLabel
|
||||
syn match texRefZone '\\v\=ref' skipwhite nextgroup=texRefLabel
|
||||
syn match texRefZone '\\cite\%([tp]\*\=\)\=' skipwhite nextgroup=texCiteOption,texCite
|
||||
syn region texRefLabel contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup
|
||||
syn region texCiteOption contained matchgroup=Delimiter start='\[' end=']' contains=@Spell,@texRefGroup,@texMathZones,texRefZone nextgroup=texCiteOption,texCite
|
||||
syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup,texCite
|
||||
syn region texZone matchgroup=texStatement start="@samp{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\nocite{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\bibliography{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\label{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\\(page\|eq\)ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\v\=ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn match texRefZone '\\cite\%([tp]\*\=\)\=' nextgroup=texRefOption,texCite
|
||||
syn region texRefOption contained matchgroup=Delimiter start='\[' end=']' contains=@texRefGroup,texRefZone nextgroup=texRefOption,texCite
|
||||
syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup,texRefZone,texCite
|
||||
|
||||
" Handle newcommand, newenvironment : {{{1
|
||||
syn match texNewCmd "\\newcommand\>" nextgroup=texCmdName skipwhite skipnl
|
||||
@@ -556,12 +602,14 @@ if has("conceal") && &enc == 'utf-8'
|
||||
if s:tex_conceal =~ 'm'
|
||||
let s:texMathList=[
|
||||
\ ['|' , '‖'],
|
||||
\ ['aleph' , 'ℵ'],
|
||||
\ ['angle' , '∠'],
|
||||
\ ['approx' , '≈'],
|
||||
\ ['ast' , '∗'],
|
||||
\ ['asymp' , '≍'],
|
||||
\ ['backepsilon' , '∍'],
|
||||
\ ['backsimeq' , '≃'],
|
||||
\ ['backslash' , '∖'],
|
||||
\ ['barwedge' , '⊼'],
|
||||
\ ['because' , '∵'],
|
||||
\ ['between' , '≬'],
|
||||
@@ -592,9 +640,11 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['circlearrowright', '↻'],
|
||||
\ ['circledast' , '⊛'],
|
||||
\ ['circledcirc' , '⊚'],
|
||||
\ ['clubsuit' , '♣'],
|
||||
\ ['complement' , '∁'],
|
||||
\ ['cong' , '≅'],
|
||||
\ ['coprod' , '∐'],
|
||||
\ ['copyright' , '©'],
|
||||
\ ['cup' , '∪'],
|
||||
\ ['Cup' , '⋓'],
|
||||
\ ['curlyeqprec' , '⋞'],
|
||||
@@ -603,6 +653,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['curlywedge' , '⋏'],
|
||||
\ ['dashv' , '⊣'],
|
||||
\ ['diamond' , '⋄'],
|
||||
\ ['diamondsuit' , '♢'],
|
||||
\ ['div' , '÷'],
|
||||
\ ['doteq' , '≐'],
|
||||
\ ['doteqdot' , '≑'],
|
||||
@@ -621,8 +672,10 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['eqslantgtr' , '⪖'],
|
||||
\ ['eqslantless' , '⪕'],
|
||||
\ ['equiv' , '≡'],
|
||||
\ ['ell' , 'ℓ'],
|
||||
\ ['exists' , '∃'],
|
||||
\ ['fallingdotseq' , '≒'],
|
||||
\ ['flat' , '♭'],
|
||||
\ ['forall' , '∀'],
|
||||
\ ['ge' , '≥'],
|
||||
\ ['geq' , '≥'],
|
||||
@@ -633,11 +686,14 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['gtreqless' , '⋛'],
|
||||
\ ['gtrless' , '≷'],
|
||||
\ ['gtrsim' , '≳'],
|
||||
\ ['hbar' , 'ℏ'],
|
||||
\ ['heartsuit' , '♡'],
|
||||
\ ['hookleftarrow' , '↩'],
|
||||
\ ['hookrightarrow' , '↪'],
|
||||
\ ['iiint' , '∭'],
|
||||
\ ['iint' , '∬'],
|
||||
\ ['Im' , 'ℑ'],
|
||||
\ ['imath' , 'ɩ'],
|
||||
\ ['in' , '∈'],
|
||||
\ ['infty' , '∞'],
|
||||
\ ['int' , '∫'],
|
||||
@@ -650,7 +706,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['left(' , '('],
|
||||
\ ['left\[' , '['],
|
||||
\ ['left\\{' , '{'],
|
||||
\ ['Leftrightarrow' , '⇔'],
|
||||
\ ['leftrightarrow' , '⇔'],
|
||||
\ ['leftrightsquigarrow', '↭'],
|
||||
\ ['leftthreetimes' , '⋋'],
|
||||
\ ['leq' , '≤'],
|
||||
@@ -667,6 +723,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['mid' , '∣'],
|
||||
\ ['mp' , '∓'],
|
||||
\ ['nabla' , '∇'],
|
||||
\ ['natural' , '♮'],
|
||||
\ ['ncong' , '≇'],
|
||||
\ ['nearrow' , '↗'],
|
||||
\ ['ne' , '≠'],
|
||||
@@ -705,6 +762,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['oslash' , '⊘'],
|
||||
\ ['otimes' , '⊗'],
|
||||
\ ['owns' , '∋'],
|
||||
\ ['P' , '¶'],
|
||||
\ ['partial' , '∂'],
|
||||
\ ['perp' , '⊥'],
|
||||
\ ['pitchfork' , '⋔'],
|
||||
@@ -716,6 +774,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['precnapprox' , '⪹'],
|
||||
\ ['precneqq' , '⪵'],
|
||||
\ ['precsim' , '≾'],
|
||||
\ ['prime' , '′'],
|
||||
\ ['prod' , '∏'],
|
||||
\ ['propto' , '∝'],
|
||||
\ ['rceil' , '⌉'],
|
||||
@@ -732,9 +791,12 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['risingdotseq' , '≓'],
|
||||
\ ['rmoustache' , '╮'],
|
||||
\ ['rtimes' , '⋊'],
|
||||
\ ['S' , '§'],
|
||||
\ ['searrow' , '↘'],
|
||||
\ ['setminus' , '∖'],
|
||||
\ ['sharp' , '♯'],
|
||||
\ ['sim' , '∼'],
|
||||
\ ['spadesuit' , '♠'],
|
||||
\ ['sphericalangle' , '∢'],
|
||||
\ ['sqcap' , '⊓'],
|
||||
\ ['sqcup' , '⊔'],
|
||||
@@ -767,6 +829,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['times' , '×'],
|
||||
\ ['to' , '→'],
|
||||
\ ['top' , '⊤'],
|
||||
\ ['triangle' , '∆'],
|
||||
\ ['triangleleft' , '⊲'],
|
||||
\ ['trianglelefteq' , '⊴'],
|
||||
\ ['triangleq' , '≜'],
|
||||
@@ -788,6 +851,7 @@ if has("conceal") && &enc == 'utf-8'
|
||||
\ ['vee' , '∨'],
|
||||
\ ['Vvdash' , '⊪'],
|
||||
\ ['wedge' , '∧'],
|
||||
\ ['wp' , '℘'],
|
||||
\ ['wr' , '≀']]
|
||||
for texmath in s:texMathList
|
||||
if texmath[0] =~ '\w$'
|
||||
@@ -804,6 +868,27 @@ if has("conceal") && &enc == 'utf-8'
|
||||
syn match texMathSymbol '\\gg\>' contained conceal cchar=⟫
|
||||
syn match texMathSymbol '\\ll\>' contained conceal cchar=⟪
|
||||
endif
|
||||
|
||||
syn match texMathSymbol '\\hat{a}' contained conceal cchar=â
|
||||
syn match texMathSymbol '\\hat{A}' contained conceal cchar=Â
|
||||
syn match texMathSymbol '\\hat{c}' contained conceal cchar=ĉ
|
||||
syn match texMathSymbol '\\hat{C}' contained conceal cchar=Ĉ
|
||||
syn match texMathSymbol '\\hat{e}' contained conceal cchar=ê
|
||||
syn match texMathSymbol '\\hat{E}' contained conceal cchar=Ê
|
||||
syn match texMathSymbol '\\hat{g}' contained conceal cchar=ĝ
|
||||
syn match texMathSymbol '\\hat{G}' contained conceal cchar=Ĝ
|
||||
syn match texMathSymbol '\\hat{i}' contained conceal cchar=î
|
||||
syn match texMathSymbol '\\hat{I}' contained conceal cchar=Î
|
||||
syn match texMathSymbol '\\hat{o}' contained conceal cchar=ô
|
||||
syn match texMathSymbol '\\hat{O}' contained conceal cchar=Ô
|
||||
syn match texMathSymbol '\\hat{s}' contained conceal cchar=ŝ
|
||||
syn match texMathSymbol '\\hat{S}' contained conceal cchar=Ŝ
|
||||
syn match texMathSymbol '\\hat{u}' contained conceal cchar=û
|
||||
syn match texMathSymbol '\\hat{U}' contained conceal cchar=Û
|
||||
syn match texMathSymbol '\\hat{w}' contained conceal cchar=ŵ
|
||||
syn match texMathSymbol '\\hat{W}' contained conceal cchar=Ŵ
|
||||
syn match texMathSymbol '\\hat{y}' contained conceal cchar=ŷ
|
||||
syn match texMathSymbol '\\hat{Y}' contained conceal cchar=Ŷ
|
||||
endif
|
||||
|
||||
" Greek {{{2
|
||||
@@ -855,8 +940,8 @@ if has("conceal") && &enc == 'utf-8'
|
||||
|
||||
" Superscripts/Subscripts {{{2
|
||||
if s:tex_conceal =~ 's'
|
||||
syn region texSuperscript matchgroup=Delimiter start='\^{' end='}' contained concealends contains=texSuperscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
syn region texSubscript matchgroup=Delimiter start='_{' end='}' contained concealends contains=texSubscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
syn region texSuperscript matchgroup=Delimiter start='\^{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSuperscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
syn region texSubscript matchgroup=Delimiter start='_{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSubscripts,texStatement,texSubscript,texSuperscript,texMathMatcher
|
||||
fun! s:SuperSub(group,leader,pat,cchar)
|
||||
exe 'syn match '.a:group." '".a:leader.a:pat."' contained conceal cchar=".a:cchar
|
||||
exe 'syn match '.a:group."s '".a:pat."' contained conceal cchar=".a:cchar.' nextgroup='.a:group.'s'
|
||||
@@ -980,18 +1065,23 @@ if has("conceal") && &enc == 'utf-8'
|
||||
endfor
|
||||
endfun
|
||||
" \` \' \^ \" \~ \. \c \H \k \r \u \v
|
||||
call s:Accents('a','à','á','â','ä','ã',' ',' ',' ','ą','å','ă','ă')
|
||||
call s:Accents('A','À','Á','Â','Ä','Ã',' ',' ',' ','Ą','Å','Ă','Ă')
|
||||
call s:Accents('a','à','á','â','ä','ã','ȧ',' ',' ','ą','å','ă','ă')
|
||||
call s:Accents('A','À','Á','Â','Ä','Ã','Ȧ',' ',' ','Ą','Å','Ă','Ă')
|
||||
call s:Accents('c',' ','ć','ĉ',' ',' ','ċ','ç',' ',' ',' ',' ','č')
|
||||
call s:Accents('C',' ','Ć','Ĉ',' ',' ','Ċ','Ç',' ',' ',' ',' ','Č')
|
||||
call s:Accents('d',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ď')
|
||||
call s:Accents('D',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ď')
|
||||
call s:Accents('e','è','é','ê','ë','ẽ','ė','ȩ',' ','ę',' ','ĕ','ě')
|
||||
call s:Accents('E','È','É','Ê','Ë','Ẽ','Ė','Ȩ',' ','Ę',' ','Ĕ','Ě')
|
||||
call s:Accents('g',' ',' ',' ',' ',' ','ġ','ģ',' ',' ',' ','ğ',' ')
|
||||
call s:Accents('G',' ',' ',' ',' ',' ','Ġ','Ģ',' ',' ',' ','Ğ',' ')
|
||||
call s:Accents('g',' ','ǵ','ĝ',' ',' ','ġ','ģ',' ',' ',' ','ğ',' ')
|
||||
call s:Accents('G',' ','Ǵ','Ĝ',' ',' ','Ġ','Ģ',' ',' ',' ','Ğ',' ')
|
||||
call s:Accents('h',' ',' ','ĥ',' ',' ',' ',' ',' ',' ',' ',' ','ȟ')
|
||||
call s:Accents('H',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ȟ')
|
||||
call s:Accents('i','ì','í','î','ï','ĩ','į',' ',' ',' ',' ','ĭ',' ')
|
||||
call s:Accents('I','Ì','Í','Î','Ï','Ĩ','İ',' ',' ',' ',' ','Ĭ',' ')
|
||||
call s:Accents('J',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ǰ')
|
||||
call s:Accents('k',' ',' ',' ',' ',' ',' ','ķ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('K',' ',' ',' ',' ',' ',' ','Ķ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('l',' ','ĺ','ľ',' ',' ',' ','ļ',' ',' ',' ',' ','ľ')
|
||||
call s:Accents('L',' ','Ĺ','Ľ',' ',' ',' ','Ļ',' ',' ',' ',' ','Ľ')
|
||||
call s:Accents('n',' ','ń',' ',' ','ñ',' ','ņ',' ',' ',' ',' ','ň')
|
||||
@@ -1000,12 +1090,12 @@ if has("conceal") && &enc == 'utf-8'
|
||||
call s:Accents('O','Ò','Ó','Ô','Ö','Õ','Ȯ',' ','Ő','Ǫ',' ','Ŏ',' ')
|
||||
call s:Accents('r',' ','ŕ',' ',' ',' ',' ','ŗ',' ',' ',' ',' ','ř')
|
||||
call s:Accents('R',' ','Ŕ',' ',' ',' ',' ','Ŗ',' ',' ',' ',' ','Ř')
|
||||
call s:Accents('s',' ','ś','ŝ',' ',' ',' ','ş',' ',' ',' ',' ','š')
|
||||
call s:Accents('s',' ','ś','ŝ',' ',' ',' ','ş',' ','ȿ',' ',' ','š')
|
||||
call s:Accents('S',' ','Ś','Ŝ',' ',' ',' ','Ş',' ',' ',' ',' ','Š')
|
||||
call s:Accents('t',' ',' ',' ',' ',' ',' ','ţ',' ',' ',' ',' ','ť')
|
||||
call s:Accents('T',' ',' ',' ',' ',' ',' ','Ţ',' ',' ',' ',' ','Ť')
|
||||
call s:Accents('u','ù','ú','û','ü','ũ',' ',' ','ű',' ','ů','ŭ',' ')
|
||||
call s:Accents('U','Ù','Ú','Û','Ü','Ũ',' ',' ','Ű',' ','Ů','Ŭ',' ')
|
||||
call s:Accents('u','ù','ú','û','ü','ũ',' ',' ','ű','ų','ů','ŭ','ǔ')
|
||||
call s:Accents('U','Ù','Ú','Û','Ü','Ũ',' ',' ','Ű','Ų','Ů','Ŭ','Ǔ')
|
||||
call s:Accents('w',' ',' ','ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('W',' ',' ','Ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ')
|
||||
call s:Accents('y','ỳ','ý','ŷ','ÿ','ỹ',' ',' ',' ',' ',' ',' ',' ')
|
||||
@@ -1068,6 +1158,7 @@ if did_tex_syntax_inits == 1
|
||||
HiLink texError Error
|
||||
endif
|
||||
|
||||
HiLink texCite texRefZone
|
||||
HiLink texDefCmd texDef
|
||||
HiLink texDefName texDef
|
||||
HiLink texDocType texCmdName
|
||||
@@ -1092,7 +1183,6 @@ if did_tex_syntax_inits == 1
|
||||
HiLink texMathZoneV texMath
|
||||
HiLink texMathZoneZ texMath
|
||||
endif
|
||||
HiLink texRefZone Identifier
|
||||
HiLink texSectionMarker texCmdName
|
||||
HiLink texSectionName texSection
|
||||
HiLink texSpaceCode texStatement
|
||||
@@ -1101,7 +1191,6 @@ if did_tex_syntax_inits == 1
|
||||
HiLink texTypeStyle texType
|
||||
|
||||
" Basic TeX highlighting groups
|
||||
HiLink texCite Special
|
||||
HiLink texCmdArgs Number
|
||||
HiLink texCmdName Statement
|
||||
HiLink texComment Comment
|
||||
@@ -1117,7 +1206,7 @@ if did_tex_syntax_inits == 1
|
||||
HiLink texNewCmd Statement
|
||||
HiLink texNewEnv Statement
|
||||
HiLink texOption Number
|
||||
HiLink texRefLabel Special
|
||||
HiLink texRefZone Special
|
||||
HiLink texSection PreCondit
|
||||
HiLink texSpaceCodeChar Special
|
||||
HiLink texSpecialChar SpecialChar
|
||||
@@ -1130,7 +1219,9 @@ if did_tex_syntax_inits == 1
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
" Current Syntax: {{{1
|
||||
" Cleanup: {{{1
|
||||
unlet s:extfname
|
||||
let b:current_syntax = "tex"
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
" vim: ts=8 fdm=marker
|
||||
|
||||
+18
-16
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Verilog
|
||||
" Maintainer: Mun Johl <Mun.Johl@emulex.com>
|
||||
" Last Update: Fri Oct 13 11:44:32 PDT 2006
|
||||
" Last Update: Wed Jul 20 16:04:19 PDT 2011
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,11 +11,13 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Set the local value of the 'iskeyword' option
|
||||
" Set the local value of the 'iskeyword' option.
|
||||
" NOTE: '?' was added so that verilogNumber would be processed correctly when
|
||||
" '?' is the last character of the number.
|
||||
if version >= 600
|
||||
setlocal iskeyword=@,48-57,_,192-255
|
||||
setlocal iskeyword=@,48-57,63,_,192-255
|
||||
else
|
||||
set iskeyword=@,48-57,_,192-255
|
||||
set iskeyword=@,48-57,63,_,192-255
|
||||
endif
|
||||
|
||||
" A bunch of useful Verilog keywords
|
||||
@@ -48,7 +50,7 @@ syn keyword verilogLabel begin end fork join
|
||||
syn keyword verilogConditional if else case casex casez default endcase
|
||||
syn keyword verilogRepeat forever repeat while for
|
||||
|
||||
syn keyword verilogTodo contained TODO
|
||||
syn keyword verilogTodo contained TODO FIXME
|
||||
|
||||
syn match verilogOperator "[&|~><!)(*#%@+/=?:;}{,.\^\-\[\]]"
|
||||
|
||||
@@ -113,17 +115,17 @@ if version >= 508 || !exists("did_verilog_syn_inits")
|
||||
" The default highlighting.
|
||||
HiLink verilogCharacter Character
|
||||
HiLink verilogConditional Conditional
|
||||
HiLink verilogRepeat Repeat
|
||||
HiLink verilogString String
|
||||
HiLink verilogTodo Todo
|
||||
HiLink verilogComment Comment
|
||||
HiLink verilogConstant Constant
|
||||
HiLink verilogLabel Label
|
||||
HiLink verilogNumber Number
|
||||
HiLink verilogOperator Special
|
||||
HiLink verilogStatement Statement
|
||||
HiLink verilogGlobal Define
|
||||
HiLink verilogDirective SpecialComment
|
||||
HiLink verilogRepeat Repeat
|
||||
HiLink verilogString String
|
||||
HiLink verilogTodo Todo
|
||||
HiLink verilogComment Comment
|
||||
HiLink verilogConstant Constant
|
||||
HiLink verilogLabel Label
|
||||
HiLink verilogNumber Number
|
||||
HiLink verilogOperator Special
|
||||
HiLink verilogStatement Statement
|
||||
HiLink verilogGlobal Define
|
||||
HiLink verilogDirective SpecialComment
|
||||
HiLink verilogEscape Special
|
||||
|
||||
delcommand HiLink
|
||||
|
||||
+34
-27
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim 7.3 script
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Jan 10, 2011
|
||||
" Version: 7.3-07
|
||||
" Last Change: Jul 18, 2011
|
||||
" Version: 7.3-08
|
||||
" Automatically generated keyword lists: {{{1
|
||||
|
||||
" Quit when a syntax file was already loaded {{{2
|
||||
@@ -22,35 +22,35 @@ syn keyword vimCommand contained abc[lear] argdo au bf[irst] bp[revious] br[ewin
|
||||
syn keyword vimCommand contained abo[veleft] arge[dit] bad[d] bl[ast] br bro[wse] buffers caddb[uffer] cc cfir[st] chd[ir] clo[se] cn[ext] col[der] con cpf[ile] cstag debugg[reedy] delm[arks] diffp diffu[pdate] do e echon elsei[f] endfun Error filename fin[d] folddoc[losed] fu[nction] gs?pat?sub? helpf[ind] i imapc[lear] iuna[bbrev] keepj[umps] lad[dexpr] later lcscope lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lop[en] lua ma menut mk[exrc] mo mz nb[key] nkf o ownsyntax pe p:h:h p:r profd[el] pta[g] ptn[ext] pw[d] python3 r redi[r] Rena ri[ght] rubyd[o] san[dbox] sbm[odified] scrip setf[iletype] si sla[st] sn[ext] s@\n@\=\r" spelld[ump] sp[lit] start stopi[nsert] s?version?main? sync tabc[lose] tabm[ove] tabp[revious] tcld[o] tl[ast] tN[ext] tr[ewind] un unl verb[ose] vimgrepa[dd] w winp[os] wqa[ll] X XMLent xunmenu
|
||||
syn keyword vimCommand contained al[l] argg[lobal] ba[ll] bm[odified] brea[k] browseset bun[load] cad[dexpr] ccl[ose] cgetb[uffer] che[ckpath] cmapc[lear] cN[ext] colo[rscheme] conf[irm] cp[revious] cuna[bbrev] del di diffpatch dig doau ea e[dit] em[enu] endf[unction] ex files fini[sh] foldd[oopen] g gui helpg[rep] ia in j[oin] kee[pmarks] laddf[ile] lb[uffer] le[ft] lgetb[uffer] l[ist] lN lNf lo[adview] lpf[ile] luado mak[e] menut[ranslate] mks[ession] mod[e] mzf[ile] nbs[tart] nmapc[lear] ol[dfiles] p ped[it] po[p] pre[serve] prof[ile] ptf[irst] ptN[ext] py q re red[o] Renu rightb[elow] rubyf[ile] sa[rgument] sbn[ext] scripte[ncoding] setg[lobal] sig sl[eep] sN[ext] so spe[llgood] spr[evious] startg[replace] sts[elect] s?version?main?:p syncbind tabd[o] tabN tabr[ewind] tclf[ile] tm TOhtml try una[bbreviate] unlo[ckvar] ve[rsion] vi[sual] wa[ll] win[size] w[rite] xa[ll] XMLns xwininfo
|
||||
syn keyword vimCommand contained Allargs argl[ocal] bar bn[ext] breaka[dd] bu bw[ipeout] caddf[ile] cd cgete[xpr] checkt[ime] cmdname cnf com con[tinue] cq[uit] cw[indow] delc[ommand] diffg[et] diffpu[t] dig[raphs] dr[op] earlier e:e emenu* en[dif] exi[t] filet fir[st] foldo[pen] get gvim helpt[ags] iabc[lear] index ju[mps] l lan lc[d] lefta[bove] lgete[xpr] ll lne lnf[ile] locale lp[revious] luafile Man mes mksp[ell] m[ove] mz[scheme] ne noa omapc[lear] p: pe[rl] popu prev[ious] promptf[ind] ptj[ump] ptp[revious] py3 qa[ll] r:e redr[aw] res[ize] r:r rundo sav[eas] sbN[ext] scrip[tnames] setl[ocal] sign sm[agic] sni[ff] sor[t] spelli[nfo] sre[wind] star[tinsert] sun[hide] sv[iew] synlist tabe[dit] tabnew tabs te[aroff] tm[enu] to[pleft] ts[elect] u[ndo] uns[ilent] vert[ical] viu[sage] wh[ile] wn[ext] ws[verb] x[it] xnoreme y[ank]
|
||||
syn keyword vimCommand contained ar ar[gs]
|
||||
syn keyword vimCommand contained ar ar[gs]
|
||||
syn match vimCommand contained "\<z[-+^.=]\="
|
||||
syn keyword vimCommand contained maca[ction] macm[enu]
|
||||
|
||||
" vimOptions are caught only when contained in a vimSet {{{2
|
||||
syn keyword vimOption contained acd ambiwidth arabicshape autowriteall backupdir bdlay binary breakat bufhidden cd ci cinw co commentstring confirm cpoptions cscopetag csto cwh dg dip eadirection ek equalprg ex fdi fen fileencodings flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imi incsearch infercase isk keymap langmenu linespace loadplugins macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pm printdevice printoptions quoteescape restorescreen rnu rulerformat scr sect sft shellredir shm showmode sj smd spell splitbelow ssl stl sw sxq tabpagemax tags tbis terse thesaurus titleold toolbariconsize tsr ttyfast tx undofile ut verbosefile virtualedit wb wfw wildcharm winaltkeys winminwidth wmnu write
|
||||
syn keyword vimOption contained ai ambw ari aw backupext beval biosk brk buflisted cdpath cin cinwords cocu compatible consk cpt cscopetagorder csverb debug dict dir eb enc errorbells expandtab fdl fenc fileformat fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatekey iminsert inde insertmode iskeyword keymodel laststatus lisp lpl magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste pex pmbcs printencoding prompt rdt revins ro runtimepath scroll sections sh shellslash shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile syn tabstop tagstack tbs textauto tildeop titlestring top ttimeout ttym uc undolevels vb vfile visualbell wc wh wildignore window winwidth wmw writeany
|
||||
syn keyword vimOption contained akm anti arshape awa backupskip bex bioskey browsedir buftype cedit cindent clipboard cole complete conskey crb cscopeverbose cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformats fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imak ims indentexpr is isp keywordprg lazyredraw lispwords ls makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pexpr pmbfn printexpr pt readonly ri rs sb scrollbind secure shcf shelltemp shortname shq sm so spellfile spr st sts swapsync synmaxcol tag tal tenc textmode timeout tl tpm ttimeoutlen ttymouse udf undoreload vbs vi vop wcm whichwrap wildmenu winfixheight wiv wop writebackup
|
||||
syn keyword vimOption contained al antialias autochdir background balloondelay bexpr bk bs casemap cf cink cmdheight colorcolumn completefunc copyindent cryptmethod cspc cul def diff display edcompatible endofline errorformat fcl fdm fex filetype fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imc imsearch indentkeys isf isprint km lbr list lsp makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pfn popt printfont pumheight redrawtime rightleft rtp sbo scrolljump sel shell shelltype showbreak si smartcase softtabstop spelllang sps sta su swb syntax tagbsearch tb term textwidth timeoutlen tm tr ttm ttyscroll udir updatecount vdir viewdir wa wd wi wildmode winfixwidth wiw wrap writedelay
|
||||
syn keyword vimOption contained aleph ar autoindent backspace ballooneval bg bkc bsdir cb cfu cinkeys cmdwinheight columns completeopt cot cscopepathcomp csprg cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fillchars foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imcmdline inc indk isfname joinspaces kmp lcs listchars lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode ph preserveindent printheader pvh relativenumber rightleftcmd ru sbr scrolloff selection shellcmdflag shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf ta taglength tbi termbidi tf title to ts tty ttytype ul updatetime ve viewoptions wak weirdinvert wig wildoptions winheight wm wrapmargin ws
|
||||
syn keyword vimOption contained allowrevins arab autoread backup balloonexpr bh bl bsk cc ch cino cmp com concealcursor cp cscopeprg csqf cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imd include inex isi js kp linebreak lm lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path pheader previewheight printmbcharset pvw remap rl ruf sc scrollopt selectmode shellpipe shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf tabline tagrelative tbidi termencoding tgst titlelen toolbar tsl ttybuiltin tw undodir ur verbose viminfo warn wfh wildchar wim winminheight wmh wrapscan ww
|
||||
syn keyword vimOption contained altkeymap arabic autowrite backupcopy bdir bin bomb bt ccv charconvert cinoptions cms comments conceallevel cpo cscopequickfix cst cursorline dex digraph ead ei equalalways eventignore fde fdt fileencoding fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imdisable includeexpr inf isident key langmap lines lmap ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pi previewwindow printmbfont qe report rlc ruler scb scs sessionoptions shellquote shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws
|
||||
syn keyword vimOption contained acd ambiwidth arabicshape autowriteall backupdir bdlay binary breakat bufhidden cd ci cinw co commentstring confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imd include inex isi js kp linebreak lm lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path pheader previewheight printmbcharset pvw remap rl ruf sc scrollopt selectmode shellpipe shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf tabline tags tbs textmode timeout tl tpm ttimeoutlen ttymouse udf undoreload vbs vi vop wcm whichwrap wildignore winaltkeys winminwidth wmnu write
|
||||
syn keyword vimOption contained ai ambw ari aw backupext beval biosk brk buflisted cdpath cin cinwords cocu compatible consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fileencoding fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imdisable includeexpr inf isident key langmap lines lmap ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pi previewwindow printmbfont qe report rlc ruler scb scs sessionoptions shellquote shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabpagemax tagstack tenc textwidth timeoutlen tm tr ttm ttyscroll udir updatecount vdir viewdir wa wd wi wildignorecase window winwidth wmw writeany
|
||||
syn keyword vimOption contained akm anti arshape awa backupskip bex bioskey browsedir buftype cedit cindent clipboard cole complete conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencodings flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imi incsearch infercase isk keymap langmenu linespace loadplugins macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pm printdevice printoptions quoteescape restorescreen rnu rulerformat scr sect sft shellredir shm showmode sj smd spell splitbelow ssl stl sw sxq tabstop tal term tf title to ts tty ttytype ul updatetime ve viewoptions wak weirdinvert wic wildmenu winfixheight wiv wop writebackup
|
||||
syn keyword vimOption contained al antialias autochdir background balloondelay bexpr bk bs casemap cf cink cmdheight colorcolumn completefunc copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileformat fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatekey iminsert inde insertmode iskeyword keymodel laststatus lisp lpl magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste pex pmbcs printencoding prompt rdt revins ro runtimepath scroll sections sh shellslash shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile syn tag tb termbidi tgst titlelen toolbar tsl ttybuiltin tw undodir ur verbose viminfo warn wfh wig wildmode winfixwidth wiw wrap writedelay
|
||||
syn keyword vimOption contained aleph ar autoindent backspace ballooneval bg bkc bsdir cb cfu cinkeys cmdwinheight columns completeopt cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformats fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imak ims indentexpr is isp keywordprg lazyredraw lispwords ls makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pexpr pmbfn printexpr pt readonly ri rs sb scrollbind secure shcf shelltemp shortname shq sm so spellfile spr st sts swapsync synmaxcol tagbsearch tbi termencoding thesaurus titleold toolbariconsize tsr ttyfast tx undofile ut verbosefile virtualedit wb wfw wildchar wildoptions winheight wm wrapmargin ws
|
||||
syn keyword vimOption contained allowrevins arab autoread backup balloonexpr bh bl bsk cc ch cino cmp com concealcursor cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex filetype fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imc imsearch indentkeys isf isprint km lbr list lsp makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pfn popt printfont pumheight redrawtime rightleft rtp sbo scrolljump sel shell shelltype showbreak si smartcase softtabstop spelllang sps sta su swb syntax taglength tbidi terse tildeop titlestring top ttimeout ttym uc undolevels vb vfile visualbell wc wh wildcharm wim winminheight wmh wrapscan ww
|
||||
syn keyword vimOption contained altkeymap arabic autowrite backupcopy bdir bin bomb bt ccv charconvert cinoptions cms comments conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fillchars foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imcmdline inc indk isfname joinspaces kmp lcs listchars lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode ph preserveindent printheader pvh relativenumber rightleftcmd ru sbr scrolloff selection shellcmdflag shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf ta tagrelative tbis textauto
|
||||
syn keyword vimOption contained fullscreen fu fuoptions fuopt macmeta mmta transparency transp
|
||||
|
||||
" vimOptions: These are the turn-off setting variants {{{2
|
||||
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobuflisted nocin noconfirm nocopyindent nocscopetag nocsverb nocursorbind nodeco nodiff noeb noek noeol noerrorbells noet noexpandtab nofen nofkmap nogd noguipty nohidden nohkmap nohkp nohlsearch noicon noim noimcmdline noimdisable noinf noinsertmode nojoinspaces nolazyredraw nolinebreak nolist nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx novisualbell nowarn noweirdinvert nowfw nowinfixheight nowiv nowrap nowrite nowritebackup
|
||||
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobiosk nobl nocf nocindent noconsk nocp nocscopeverbose nocuc nocursorcolumn nodelcombine nodigraph noed noendofline noequalalways noesckeys noex noexrc nofk nofoldenable nogdefault nohid nohk nohkmapp nohls noic noignorecase noimc noimd noincsearch noinfercase nois nojs nolbr nolisp noloadplugins nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast novb nowa nowb nowfh nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
|
||||
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb noci nocompatible noconskey nocrb nocst nocul nocursorline nodg noea noedcompatible
|
||||
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobuflisted nocin noconfirm nocopyindent nocscopetag nocsverb nocursorbind nodeco nodiff noeb noek noequalalways noesckeys noex noexrc nofk nofoldenable nogdefault nohid nohk nohkmapp nohls noic noignorecase noimc noimd noincsearch noinfercase nois nojs nolbr nolisp noloadplugins nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast novb nowa nowb nowfh nowildignorecase* * nowinfixheight nowiv nowrap nowrite nowritebackup
|
||||
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobiosk nobl nocf nocindent noconsk nocp nocscopeverbose nocuc nocursorcolumn nodelcombine nodigraph noed noendofline noerrorbells noet noexpandtab nofen nofkmap nogd noguipty nohidden nohkmap nohkp nohlsearch noicon noim noimcmdline noimdisable noinf noinsertmode nojoinspaces nolazyredraw nolinebreak nolist nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx novisualbell nowarn noweirdinvert nowfw nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
|
||||
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb noci nocompatible noconskey nocrb nocst nocul nocursorline nodg noea noedcompatible noeol
|
||||
syn keyword vimOption contained nofullscreen nofu nomacmeta nommta
|
||||
|
||||
" vimOptions: These are the invertible variants {{{2
|
||||
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbk invbuflisted invcin invconfirm invcopyindent invcscopetag invcsverb invcursorbind invdeco invdiff inveb invek inveol inverrorbells invet invexpandtab invfen invfkmap invgd invguipty invhidden invhkmap invhkp invhlsearch invicon invim invimcmdline invimdisable invinf invinsertmode invjoinspaces invlazyredraw invlinebreak invlist invlpl invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invvisualbell invwarn invweirdinvert invwfw invwinfixheight invwiv invwrap invwrite invwritebackup
|
||||
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbiosk invbl invcf invcindent invconsk invcp invcscopeverbose invcuc invcursorcolumn invdelcombine invdigraph inved invendofline invequalalways invesckeys invex invexrc invfk invfoldenable invgdefault invhid invhk invhkmapp invhls invic invignorecase invimc invimd invincsearch invinfercase invis invjs invlbr invlisp invloadplugins invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invvb invwa invwb invwfh invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
|
||||
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcrb invcst invcul invcursorline invdg invea invedcompatible
|
||||
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbk invbuflisted invcin invconfirm invcopyindent invcscopetag invcsverb invcursorbind invdeco invdiff inveb invek invequalalways invesckeys invex invexrc invfk invfoldenable invgdefault invhid invhk invhkmapp invhls invic invignorecase invimc invimd invincsearch invinfercase invis invjs invlbr invlisp invloadplugins invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invvb invwa invwb invwfh invwildignorecase* * invwinfixheight invwiv invwrap invwrite invwritebackup
|
||||
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbiosk invbl invcf invcindent invconsk invcp invcscopeverbose invcuc invcursorcolumn invdelcombine invdigraph inved invendofline inverrorbells invet invexpandtab invfen invfkmap invgd invguipty invhidden invhkmap invhkp invhlsearch invicon invim invimcmdline invimdisable invinf invinsertmode invjoinspaces invlazyredraw invlinebreak invlist invlpl invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invvisualbell invwarn invweirdinvert invwfw invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
|
||||
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcrb invcst invcul invcursorline invdg invea invedcompatible inveol
|
||||
syn keyword vimOption contained invfullscreen invfu invmacmeta invmmta
|
||||
|
||||
" termcap codes (which can also be set) {{{2
|
||||
syn keyword vimOption contained t_AB t_al t_bc t_ce t_cl t_Co t_cs t_Cs t_CS t_CV t_da t_db t_dl t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_te t_ti t_ts t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xs t_ZH t_ZR
|
||||
syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm
|
||||
syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm
|
||||
syn match vimOption contained "t_%1"
|
||||
syn match vimOption contained "t_#2"
|
||||
syn match vimOption contained "t_#4"
|
||||
@@ -61,24 +61,24 @@ syn match vimOption contained "t_%i"
|
||||
syn match vimOption contained "t_k;"
|
||||
|
||||
" unsupported settings: these are supported by vi but don't do anything in vim {{{2
|
||||
syn keyword vimErrSetting contained hardtabs ht w1200 w300 w9600
|
||||
syn keyword vimErrSetting contained hardtabs ht w1200 w300 w9600
|
||||
|
||||
" AutoCmd Events {{{2
|
||||
syn case ignore
|
||||
syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre Cmd-event CmdwinEnter CmdwinLeave ColorScheme CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertEnter InsertLeave MenuPopup QuickFixCmdPost QuickFixCmdPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabEnter TabLeave TermChanged TermResponse User UserGettingBored VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave
|
||||
syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre Cmd-event CmdwinEnter CmdwinLeave ColorScheme CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup QuickFixCmdPost QuickFixCmdPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabEnter TabLeave TermChanged TermResponse User UserGettingBored VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave
|
||||
|
||||
" Highlight commonly used Groupnames {{{2
|
||||
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
|
||||
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
|
||||
|
||||
" Default highlighting groups {{{2
|
||||
syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine DiffAdd DiffChange DiffDelete DiffText Directory ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
|
||||
syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine DiffAdd DiffChange DiffDelete DiffText Directory ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
|
||||
syn match vimHLGroup contained "Conceal"
|
||||
syn case match
|
||||
|
||||
" Function Names {{{2
|
||||
syn keyword vimFuncName contained abs append argv atan2 bufexists bufname byte2line ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdtype getfperm getftype getmatches getqflist gettabvar getwinposy globpath haslocaldir histdel hlexists iconv input inputrestore insert items len line localtime map match matchdelete matchstr min mode nextnonblank pathshorten prevnonblank pumvisible readfile reltimestr remote_foreground remote_read remove repeat reverse search searchpair searchpos serverlist setcmdpos setloclist setpos setreg settabwinvar shellescape sin sort spellbadword split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree virtcol winbufnr winheight winnr winrestview winwidth
|
||||
syn keyword vimFuncName contained acos argc asin browse buflisted bufnr byteidx changenr clearmatches complete_add copy count deepcopy diff_filler escape executable expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcmdline getcwd getfsize getline getpid getreg gettabwinvar getwinvar has hasmapto histget hlID indent inputdialog inputsave isdirectory join libcall line2byte log maparg matchadd matchend max mkdir mzeval nr2char pow printf range reltime remote_expr remote_peek remote_send rename resolve round searchdecl searchpairpos server2client setbufvar setline setmatches setqflist settabvar setwinvar simplify sinh soundfold spellsuggest sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagenr tagfiles tan tempname toupper trunc undofile values visualmode wincol winline winrestcmd winsaveview writefile
|
||||
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist
|
||||
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist
|
||||
|
||||
"--- syntax above generated by mkvimvim ---
|
||||
" Special Vim Highlighting (not automatic) {{{1
|
||||
@@ -137,7 +137,7 @@ syn keyword vimFTOption contained detect indent off on plugin
|
||||
|
||||
" Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2
|
||||
" ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
|
||||
syn cluster vimAugroupList contains=vimIsCommand,vimFuncName,vimFunction,vimFunctionError,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue
|
||||
syn cluster vimAugroupList contains=vimIsCommand,vimCommand,vimUserCmd,vimExecute,vimNotFunc,vimFuncName,vimFunction,vimFunctionError,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue
|
||||
if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'a'
|
||||
syn region vimAugroup fold start="\<aug\%[roup]\>\s\+\K\k*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
|
||||
else
|
||||
@@ -168,7 +168,7 @@ syn match vimFunction "\<fu\%[nction]!\=\s\+\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)
|
||||
|
||||
if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'f'
|
||||
syn region vimFuncBody contained fold start="\ze(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\)" contains=@vimFuncBodyList
|
||||
else
|
||||
else
|
||||
syn region vimFuncBody contained start="\ze(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\)" contains=@vimFuncBodyList
|
||||
endif
|
||||
syn match vimFuncVar contained "a:\(\K\k*\|\d\+\)"
|
||||
@@ -283,7 +283,7 @@ syn match vimAddress ",\zs[.$]" skipwhite nextgroup=vimSubst1
|
||||
syn match vimAddress "%\ze\a" skipwhite nextgroup=vimString,vimSubst1
|
||||
|
||||
syn match vimFilter contained "^!.\{-}\(|\|$\)" contains=vimSpecFile
|
||||
syn match vimFilter contained "\A!.\{-}\(|\|$\)"ms=s+1 contains=vimSpecFile
|
||||
syn match vimFilter contained "\A!.\{-}\(|\|$\)"ms=s+1 contains=vimSpecFile,vimFunction,vimFuncName,vimOperParen
|
||||
|
||||
" Complex repeats (:h complex-repeat) {{{2
|
||||
syn match vimCmplxRepeat '[^a-zA-Z_/\\()]q[0-9a-zA-Z"]'lc=1
|
||||
@@ -395,6 +395,7 @@ syn match vimSynNextgroup contained "nextgroup=" nextgroup=vimGroupList
|
||||
|
||||
syn match vimSyntax "\<sy\%[ntax]\>" contains=vimCommand skipwhite nextgroup=vimSynType,vimComment
|
||||
syn match vimAuSyntax contained "\s+sy\%[ntax]" contains=vimCommand skipwhite nextgroup=vimSynType,vimComment
|
||||
syn cluster vimFuncBodyList add=vimSyntax
|
||||
|
||||
" Syntax: case {{{2
|
||||
syn keyword vimSynType contained case skipwhite nextgroup=vimSynCase,vimSynCaseError
|
||||
@@ -411,15 +412,18 @@ syn keyword vimSynType contained cluster skipwhite nextgroup=vimClusterName
|
||||
syn region vimClusterName contained matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" matchgroup=vimSep end="$\||" contains=vimGroupAdd,vimGroupRem,vimSynContains,vimSynError
|
||||
syn match vimGroupAdd contained "add=" nextgroup=vimGroupList
|
||||
syn match vimGroupRem contained "remove=" nextgroup=vimGroupList
|
||||
syn cluster vimFuncBodyList add=vimSynType,vimGroupAdd,vimGroupRem
|
||||
|
||||
" Syntax: include {{{2
|
||||
syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList
|
||||
syn cluster vimFuncBodyList add=vimSynType
|
||||
|
||||
" Syntax: keyword {{{2
|
||||
syn cluster vimSynKeyGroup contains=vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin
|
||||
syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion
|
||||
syn region vimSynKeyRegion contained oneline keepend matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
|
||||
syn match vimSynKeyOpt contained "\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
|
||||
syn cluster vimFuncBodyList add=vimSynType
|
||||
|
||||
" Syntax: match {{{2
|
||||
syn cluster vimSynMtchGroup contains=vimMtchComment,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation
|
||||
@@ -430,6 +434,7 @@ if has("conceal")
|
||||
syn match vimSynMtchOpt contained "\<cchar=" nextgroup=VimSynMtchCchar
|
||||
syn match vimSynMtchCchar contained "\S"
|
||||
endif
|
||||
syn cluster vimFuncBodyList add=vimSynMtchGroup
|
||||
|
||||
" Syntax: off and on {{{2
|
||||
syn keyword vimSynType contained enable list manual off on reset
|
||||
@@ -450,6 +455,7 @@ syn match vimSynPatMod contained "lc=\d\+," nextgroup=vimSynPatMod
|
||||
syn region vimSynPatRange contained start="\[" skip="\\\\\|\\]" end="]"
|
||||
syn match vimSynNotPatRange contained "\\\\\|\\\["
|
||||
syn match vimMtchComment contained '"[^"]\+$'
|
||||
syn cluster vimFuncBodyList add=vimSynType
|
||||
|
||||
" Syntax: sync {{{2
|
||||
" ============
|
||||
@@ -477,7 +483,7 @@ syn match vimIsCommand "<Bar>\s*\a\+" transparent contains=vimCommand,vimNotatio
|
||||
syn cluster vimHighlightCluster contains=vimHiLink,vimHiClear,vimHiKeyList,vimComment
|
||||
syn match vimHighlight "\<hi\%[ghlight]\>" skipwhite nextgroup=vimHiBang,@vimHighlightCluster
|
||||
syn match vimHiBang contained "!" skipwhite nextgroup=@vimHighlightCluster
|
||||
|
||||
|
||||
syn match vimHiGroup contained "\i\+"
|
||||
syn case ignore
|
||||
syn keyword vimHiAttrib contained none bold inverse italic reverse standout underline undercurl
|
||||
@@ -515,7 +521,8 @@ syn match vimHiTermcap contained "\S\+" contains=vimNotation
|
||||
syn keyword vimHiClear contained clear nextgroup=vimHiGroup
|
||||
|
||||
" Highlight: link {{{2
|
||||
syn region vimHiLink contained oneline matchgroup=vimCommand start="\<\(def\s\+\)\=link\>\|\<def\>" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation
|
||||
syn region vimHiLink contained oneline matchgroup=vimCommand start="\<\(def\%[ault]\s\+\)\=link\>\|\<def\>" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation
|
||||
syn cluster vimFuncBodyList add=vimHiLink
|
||||
|
||||
" Control Characters {{{2
|
||||
" ==================
|
||||
|
||||
@@ -7,16 +7,6 @@
|
||||
"
|
||||
" Options: {{{1
|
||||
" g:yacc_uses_cpp : if this variable exists, then C++ is loaded rather than C
|
||||
"
|
||||
" Overall layout of a bison/yacc grammer:
|
||||
" %{
|
||||
" Prolog
|
||||
" %}
|
||||
" Bison/Yacc Declarations
|
||||
" %%
|
||||
" Grammar Rules
|
||||
" %%
|
||||
" Epilogue
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" this version of syntax/yacc.vim requires 6.0 or later
|
||||
|
||||
+11
-11
@@ -1,5 +1,5 @@
|
||||
===============================================================================
|
||||
= B i e n v e n u e dans le T u t o r i e l de V I M - Version 1.7.fr.2 =
|
||||
= B i e n v e n u e dans l e T u t o r i e l de V I M - Version 1.7 =
|
||||
===============================================================================
|
||||
|
||||
Vim est un éditeur très puissant qui a trop de commandes pour pouvoir
|
||||
@@ -67,7 +67,7 @@ NOTE : Les touches fl
|
||||
4. Si vous avez mémorisé ces étapes et êtes confiant, effectuez les étapes
|
||||
1 à 3 pour sortir puis rentrer dans l'éditeur.
|
||||
|
||||
NOTE : :q! <Entrée> annule tous les changements que vous avez fait. Dans
|
||||
NOTE : :q! <Entrée> annule tous les changements que vous avez faits. Dans
|
||||
quelques leçons, vous apprendrez à enregistrer les changements.
|
||||
|
||||
5. Déplacez le curseur à la Leçon 1.3.
|
||||
@@ -260,7 +260,7 @@ NOTE : La lettre d appara
|
||||
|
||||
Une courte liste de mouvements :
|
||||
w - jusqu'au début du prochain mot, en EXCLUANT son premier caractère.
|
||||
e - jusqu'à la fin du mot courant, en EXCLUANT son denier caractère.
|
||||
e - jusqu'à la fin du mot courant, en EXCLUANT son dernier caractère.
|
||||
$ - jusqu'à la fin de la ligne, en INCLUANT son dernier caractère.
|
||||
|
||||
Ainsi, taper de va effacer depuis le curseur jusqu'à la fin du mot.
|
||||
@@ -299,7 +299,7 @@ NOTE : Le seul appui d'un mouvement en mode Normal, sans commande, d
|
||||
|
||||
Outre la combinaison de l'opérateur d'effacement avec un déplacement
|
||||
mentionné ci-dessus, vous pouvez insérer un nombre (quantificateur)
|
||||
pour effacez encore plus :
|
||||
pour effacer encore plus :
|
||||
d nombre déplacement
|
||||
|
||||
1. Déplacez le curseur vers le premier mot en MAJUSCULES dans la ligne
|
||||
@@ -704,7 +704,7 @@ NOTE : Si vous quittez Vim et le red
|
||||
3. Appuyez : . En bas de l'écran :'<,'> va apparaître.
|
||||
|
||||
4. Tapez w TEST , où TEST est un nom de fichier qui n'existe pas.
|
||||
Vérifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur Entrée.
|
||||
Vérifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur <Entrée>.
|
||||
|
||||
5. Vim va enregistrer les lignes sélectionnées dans le fichier TEST.
|
||||
Utilisez :!dir ou !ls pour le voir. Ne l'effacez pas encore !
|
||||
@@ -725,7 +725,7 @@ NOTE : L'appui de v d
|
||||
1. Placez le curseur juste au-dessus de cette ligne.
|
||||
|
||||
NOTE : Après avoir exécuté l'étape 2 vous verrez du texte de la Leçon 5.3.
|
||||
Puis déplacez vous vers le bas pour voir cette leçon à nouveau.
|
||||
Puis déplacez-vous vers le bas pour voir cette leçon à nouveau.
|
||||
|
||||
2. Maintenant récupérez votre fichier TEST en utilisant la commande :r TEST
|
||||
où TEST est le nom de votre fichier.
|
||||
@@ -854,7 +854,7 @@ NOTE : Le mode Remplacement est comme le mode Insertion, mais tous les
|
||||
5. Tapez p pour coller le texte. Puis tapez : un second <Échap> .
|
||||
|
||||
6. Utilisez le mode Visuel pour sélectionner "élément", copiez le avec y ,
|
||||
déplacez vous à la fin de la ligne suivant avec j$ et collez le texte
|
||||
déplacez-vous à la fin de la ligne suivant avec j$ et collez le texte
|
||||
à cet endroit avec p .
|
||||
|
||||
---> a) ceci est le premier élément.
|
||||
@@ -1012,8 +1012,8 @@ NOTE : Le compl
|
||||
Ceci conclut le Tutoriel Vim. Le but était de vous donner un bref aperçu de
|
||||
l'éditeur Vim, juste assez pour vous permettre d'utiliser l'éditeur
|
||||
relativement facilement. Il est loin d'être complet, vu que Vim a beaucoup
|
||||
beaucoup plus de commandes. Un Manuel de l'utilisateur est disponible en
|
||||
anglais : :help user-manual .
|
||||
plus de commandes. Un Manuel de l'utilisateur est disponible en anglais :
|
||||
:help user-manual
|
||||
|
||||
Pour continuer à découvrir et à apprendre Vim, il existe un livre traduit en
|
||||
français. Il parle plus de Vi que de Vim, mais pourra vous être utile.
|
||||
@@ -1030,9 +1030,9 @@ NOTE : Le compl
|
||||
Université d'État du Colorado. E-mail : bware@mines.colorado.edu.
|
||||
|
||||
Modifié pour Vim par Bram Moolenar.
|
||||
Traduit en Français par Adrien Beau, en avril 2001.
|
||||
Traduit en français par Adrien Beau, en avril 2001.
|
||||
Dernières mises à jour par Dominique Pellé.
|
||||
|
||||
E-mail : dominique.pelle@gmail.com
|
||||
Last Change : 2010 May 23
|
||||
Last Change : 2011 Jun 25
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
===============================================================================
|
||||
= B i e n v e n u e dans le T u t o r i e l de V I M - Version 1.7.fr.2 =
|
||||
= B i e n v e n u e dans l e T u t o r i e l de V I M - Version 1.7 =
|
||||
===============================================================================
|
||||
|
||||
Vim est un éditeur très puissant qui a trop de commandes pour pouvoir
|
||||
@@ -67,7 +67,7 @@ NOTE : Les touches fléchées devraient également fonctionner. Mais en utilisan
|
||||
4. Si vous avez mémorisé ces étapes et êtes confiant, effectuez les étapes
|
||||
1 à 3 pour sortir puis rentrer dans l'éditeur.
|
||||
|
||||
NOTE : :q! <Entrée> annule tous les changements que vous avez fait. Dans
|
||||
NOTE : :q! <Entrée> annule tous les changements que vous avez faits. Dans
|
||||
quelques leçons, vous apprendrez à enregistrer les changements.
|
||||
|
||||
5. Déplacez le curseur à la Leçon 1.3.
|
||||
@@ -260,7 +260,7 @@ NOTE : La lettre d apparaîtra sur la dernière ligne de l'écran lors de
|
||||
|
||||
Une courte liste de mouvements :
|
||||
w - jusqu'au début du prochain mot, en EXCLUANT son premier caractère.
|
||||
e - jusqu'à la fin du mot courant, en EXCLUANT son denier caractère.
|
||||
e - jusqu'à la fin du mot courant, en EXCLUANT son dernier caractère.
|
||||
$ - jusqu'à la fin de la ligne, en INCLUANT son dernier caractère.
|
||||
|
||||
Ainsi, taper de va effacer depuis le curseur jusqu'à la fin du mot.
|
||||
@@ -299,7 +299,7 @@ NOTE : Le seul appui d'un mouvement en mode Normal, sans commande, déplace le
|
||||
|
||||
Outre la combinaison de l'opérateur d'effacement avec un déplacement
|
||||
mentionné ci-dessus, vous pouvez insérer un nombre (quantificateur)
|
||||
pour effacez encore plus :
|
||||
pour effacer encore plus :
|
||||
d nombre déplacement
|
||||
|
||||
1. Déplacez le curseur vers le premier mot en MAJUSCULES dans la ligne
|
||||
@@ -704,7 +704,7 @@ NOTE : Si vous quittez Vim et le redémarrez de nouveau avec le fichier TEST,
|
||||
3. Appuyez : . En bas de l'écran :'<,'> va apparaître.
|
||||
|
||||
4. Tapez w TEST , où TEST est un nom de fichier qui n'existe pas.
|
||||
Vérifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur Entrée.
|
||||
Vérifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur <Entrée>.
|
||||
|
||||
5. Vim va enregistrer les lignes sélectionnées dans le fichier TEST.
|
||||
Utilisez :!dir ou !ls pour le voir. Ne l'effacez pas encore !
|
||||
@@ -725,7 +725,7 @@ NOTE : L'appui de v démarre la sélection Visuelle. Vous pouvez déplacer le
|
||||
1. Placez le curseur juste au-dessus de cette ligne.
|
||||
|
||||
NOTE : Après avoir exécuté l'étape 2 vous verrez du texte de la Leçon 5.3.
|
||||
Puis déplacez vous vers le bas pour voir cette leçon à nouveau.
|
||||
Puis déplacez-vous vers le bas pour voir cette leçon à nouveau.
|
||||
|
||||
2. Maintenant récupérez votre fichier TEST en utilisant la commande :r TEST
|
||||
où TEST est le nom de votre fichier.
|
||||
@@ -854,7 +854,7 @@ NOTE : Le mode Remplacement est comme le mode Insertion, mais tous les
|
||||
5. Tapez p pour coller le texte. Puis tapez : un second <Échap> .
|
||||
|
||||
6. Utilisez le mode Visuel pour sélectionner "élément", copiez le avec y ,
|
||||
déplacez vous à la fin de la ligne suivant avec j$ et collez le texte
|
||||
déplacez-vous à la fin de la ligne suivant avec j$ et collez le texte
|
||||
à cet endroit avec p .
|
||||
|
||||
---> a) ceci est le premier élément.
|
||||
@@ -1012,8 +1012,8 @@ NOTE : Le complètement fonctionne pour de nombreuses commandes. Essayez
|
||||
Ceci conclut le Tutoriel Vim. Le but était de vous donner un bref aperçu de
|
||||
l'éditeur Vim, juste assez pour vous permettre d'utiliser l'éditeur
|
||||
relativement facilement. Il est loin d'être complet, vu que Vim a beaucoup
|
||||
beaucoup plus de commandes. Un Manuel de l'utilisateur est disponible en
|
||||
anglais : :help user-manual .
|
||||
plus de commandes. Un Manuel de l'utilisateur est disponible en anglais :
|
||||
:help user-manual
|
||||
|
||||
Pour continuer à découvrir et à apprendre Vim, il existe un livre traduit en
|
||||
français. Il parle plus de Vi que de Vim, mais pourra vous être utile.
|
||||
@@ -1030,9 +1030,9 @@ NOTE : Le complètement fonctionne pour de nombreuses commandes. Essayez
|
||||
Université d'État du Colorado. E-mail : bware@mines.colorado.edu.
|
||||
|
||||
Modifié pour Vim par Bram Moolenar.
|
||||
Traduit en Français par Adrien Beau, en avril 2001.
|
||||
Traduit en français par Adrien Beau, en avril 2001.
|
||||
Dernières mises à jour par Dominique Pellé.
|
||||
|
||||
E-mail : dominique.pelle@gmail.com
|
||||
Last Change : 2010 May 23
|
||||
Last Change : 2011 Jun 25
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
# Project: gvimext
|
||||
# Generates gvimext.dll with gcc.
|
||||
# To be used with Cygwin.
|
||||
#
|
||||
# Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000
|
||||
# Now it is allocated dymanically by the linker by evaluating all DLLs
|
||||
# already loaded in memory. The binary image contains as well information
|
||||
# for automatic pseudo-rebasing, if needed by the system. ALV 2004-02-29
|
||||
|
||||
# If cross-compiling set this to yes, else set it to no
|
||||
CROSS = no
|
||||
#CROSS = yes
|
||||
# For the old MinGW 2.95 (the one you get e.g. with debian woody)
|
||||
# set the following variable to yes and check if the executables are
|
||||
# really named that way.
|
||||
# If you have a newer MinGW or you are using cygwin set it to no and
|
||||
# check also the executables
|
||||
MINGWOLD = no
|
||||
|
||||
# Link against the shared versions of libgcc/libstdc++ by default. Set
|
||||
# STATIC_STDCPLUS to "yes" to link against static versions instead.
|
||||
STATIC_STDCPLUS=no
|
||||
#STATIC_STDCPLUS=yes
|
||||
|
||||
# Note: -static-libstdc++ is not available until gcc 4.5.x.
|
||||
LDFLAGS += -shared
|
||||
ifeq (yes, $(STATIC_STDCPLUS))
|
||||
LDFLAGS += -static-libgcc -static-libstdc++
|
||||
endif
|
||||
|
||||
ifeq ($(CROSS),yes)
|
||||
DEL = rm
|
||||
ifeq ($(MINGWOLD),yes)
|
||||
CXXFLAGS := -O2 -mno-cygwin -fvtable-thunks
|
||||
else
|
||||
CXXFLAGS := -O2 -mno-cygwin
|
||||
endif
|
||||
else
|
||||
CXXFLAGS := -O2 -mno-cygwin
|
||||
ifneq (sh.exe, $(SHELL))
|
||||
DEL = rm
|
||||
else
|
||||
DEL = del
|
||||
endif
|
||||
endif
|
||||
CXX := $(CROSS_COMPILE)g++
|
||||
WINDRES := $(CROSS_COMPILE)windres
|
||||
WINDRES_CXX = $(CXX)
|
||||
WINDRES_FLAGS = --preprocessor="$(WINDRES_CXX) -E -xc" -DRC_INVOKED
|
||||
LIBS := -luuid
|
||||
RES := gvimext.res
|
||||
DEFFILE = gvimext_ming.def
|
||||
OBJ := gvimext.o
|
||||
|
||||
DLL := gvimext.dll
|
||||
|
||||
.PHONY: all all-before all-after clean clean-custom
|
||||
|
||||
all: all-before $(DLL) all-after
|
||||
|
||||
$(DLL): $(OBJ) $(RES) $(DEFFILE)
|
||||
$(CXX) $(LDFLAGS) $(CXXFLAGS) -s -o $@ \
|
||||
-Wl,--enable-auto-image-base \
|
||||
-Wl,--enable-auto-import \
|
||||
-Wl,--whole-archive \
|
||||
$^ \
|
||||
-Wl,--no-whole-archive \
|
||||
$(LIBS)
|
||||
|
||||
gvimext.o: gvimext.cpp
|
||||
$(CXX) $(CXXFLAGS) -DFEAT_GETTEXT -c $? -o $@
|
||||
|
||||
$(RES): gvimext_ming.rc
|
||||
$(WINDRES) $(WINDRES_FLAGS) --input-format=rc --output-format=coff -DMING $? -o $@
|
||||
|
||||
clean: clean-custom
|
||||
-$(DEL) $(OBJ) $(RES) $(DLL)
|
||||
@@ -1,6 +1,6 @@
|
||||
# Project: gvimext
|
||||
# Generates gvimext.dll with gcc.
|
||||
# Can be used for Cygwin and MingW (MingW ignores -mno-cygwin)
|
||||
# To be used with MingW.
|
||||
#
|
||||
# Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000
|
||||
# Now it is allocated dymanically by the linker by evaluating all DLLs
|
||||
@@ -31,12 +31,12 @@ endif
|
||||
ifeq ($(CROSS),yes)
|
||||
DEL = rm
|
||||
ifeq ($(MINGWOLD),yes)
|
||||
CXXFLAGS := -O2 -mno-cygwin -fvtable-thunks
|
||||
CXXFLAGS := -O2 -fvtable-thunks
|
||||
else
|
||||
CXXFLAGS := -O2 -mno-cygwin
|
||||
CXXFLAGS := -O2
|
||||
endif
|
||||
else
|
||||
CXXFLAGS := -O2 -mno-cygwin
|
||||
CXXFLAGS := -O2
|
||||
ifneq (sh.exe, $(SHELL))
|
||||
DEL = rm
|
||||
else
|
||||
@@ -75,4 +75,3 @@ $(RES): gvimext_ming.rc
|
||||
|
||||
clean: clean-custom
|
||||
-$(DEL) $(OBJ) $(RES) $(DLL)
|
||||
|
||||
|
||||
+31
-8
@@ -142,6 +142,7 @@ static char *null_libintl_bindtextdomain(const char *, const char *);
|
||||
static int dyn_libintl_init(char *dir);
|
||||
static void dyn_libintl_end(void);
|
||||
|
||||
static wchar_t *oldenv = NULL;
|
||||
static HINSTANCE hLibintlDLL = 0;
|
||||
static char *(*dyn_libintl_gettext)(const char *) = null_libintl_gettext;
|
||||
static char *(*dyn_libintl_textdomain)(const char *) = null_libintl_textdomain;
|
||||
@@ -339,8 +340,10 @@ DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /* lpReserved */)
|
||||
inc_cRefThisDLL()
|
||||
{
|
||||
#ifdef FEAT_GETTEXT
|
||||
if (g_cRefThisDll == 0)
|
||||
if (g_cRefThisDll == 0) {
|
||||
dyn_gettext_load();
|
||||
oldenv = GetEnvironmentStringsW();
|
||||
}
|
||||
#endif
|
||||
InterlockedIncrement((LPLONG)&g_cRefThisDll);
|
||||
}
|
||||
@@ -349,8 +352,13 @@ inc_cRefThisDLL()
|
||||
dec_cRefThisDLL()
|
||||
{
|
||||
#ifdef FEAT_GETTEXT
|
||||
if (InterlockedDecrement((LPLONG)&g_cRefThisDll) == 0)
|
||||
if (InterlockedDecrement((LPLONG)&g_cRefThisDll) == 0) {
|
||||
dyn_gettext_free();
|
||||
if (oldenv != NULL) {
|
||||
FreeEnvironmentStringsW(oldenv);
|
||||
oldenv = NULL;
|
||||
}
|
||||
}
|
||||
#else
|
||||
InterlockedDecrement((LPLONG)&g_cRefThisDll);
|
||||
#endif
|
||||
@@ -586,8 +594,23 @@ STDMETHODIMP CShellExt::QueryContextMenu(HMENU hMenu,
|
||||
|
||||
// Initialize m_cntOfHWnd to 0
|
||||
m_cntOfHWnd = 0;
|
||||
// Retrieve all the vim instances
|
||||
EnumWindows(EnumWindowsProc, (LPARAM)this);
|
||||
|
||||
HKEY keyhandle;
|
||||
bool showExisting = true;
|
||||
|
||||
// Check whether "Edit with existing Vim" entries are disabled.
|
||||
if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Vim\\Gvim", 0,
|
||||
KEY_READ, &keyhandle) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegQueryValueEx(keyhandle, "DisableEditWithExisting", 0, NULL,
|
||||
NULL, NULL) == ERROR_SUCCESS)
|
||||
showExisting = false;
|
||||
RegCloseKey(keyhandle);
|
||||
}
|
||||
|
||||
// Retrieve all the vim instances, unless disabled.
|
||||
if (showExisting)
|
||||
EnumWindows(EnumWindowsProc, (LPARAM)this);
|
||||
|
||||
if (cbFiles > 1)
|
||||
{
|
||||
@@ -890,8 +913,8 @@ STDMETHODIMP CShellExt::InvokeGvim(HWND hParent,
|
||||
NULL, // Process handle not inheritable.
|
||||
NULL, // Thread handle not inheritable.
|
||||
FALSE, // Set handle inheritance to FALSE.
|
||||
0, // No creation flags.
|
||||
NULL, // Use parent's environment block.
|
||||
oldenv == NULL ? 0 : CREATE_UNICODE_ENVIRONMENT,
|
||||
oldenv, // Use unmodified environment block.
|
||||
NULL, // Use parent's starting directory.
|
||||
&si, // Pointer to STARTUPINFO structure.
|
||||
&pi) // Pointer to PROCESS_INFORMATION structure.
|
||||
@@ -972,8 +995,8 @@ STDMETHODIMP CShellExt::InvokeSingleGvim(HWND hParent,
|
||||
NULL, // Process handle not inheritable.
|
||||
NULL, // Thread handle not inheritable.
|
||||
FALSE, // Set handle inheritance to FALSE.
|
||||
0, // No creation flags.
|
||||
NULL, // Use parent's environment block.
|
||||
oldenv == NULL ? 0 : CREATE_UNICODE_ENVIRONMENT,
|
||||
oldenv, // Use unmodified environment block.
|
||||
NULL, // Use parent's starting directory.
|
||||
&si, // Pointer to STARTUPINFO structure.
|
||||
&pi) // Pointer to PROCESS_INFORMATION structure.
|
||||
|
||||
+64
-5
@@ -11,9 +11,9 @@ The file "feature.h" can be edited to match your preferences. You can skip
|
||||
this, then you will get the default behavior as is documented, which should
|
||||
be fine for most people.
|
||||
|
||||
With the exception of the last two sections (Windows 3.1 and MS-DOS),
|
||||
this document assumes that you are building Vim for Win32
|
||||
(Windows NT/2000/XP/2003/Vista and Windows 95/98/Me)
|
||||
With the exception of two sections (Windows 3.1 and MS-DOS), this document
|
||||
assumes that you are building Vim for Win32 or later.
|
||||
(Windows 95/98/Me/NT/2000/XP/2003/Vista/7)
|
||||
|
||||
|
||||
Contents:
|
||||
@@ -27,6 +27,9 @@ Contents:
|
||||
8. Windows 3.1
|
||||
9. MS-DOS
|
||||
|
||||
10. Installing after building from sources
|
||||
|
||||
|
||||
The currently preferred method is using the free Visual C++ Toolkit 2008
|
||||
|msvc-2008-express|, the produced binary runs on most MS-Windows systems. If
|
||||
you need the executable to run on Windows 98 or ME, use the 2003 one
|
||||
@@ -407,5 +410,61 @@ Windows exe (GUI or console mode), or a 16-bit MS-DOS version.
|
||||
NOTE: multi-byte support is broken in the Borland libraries, not everything
|
||||
will work properly! Esp. handling multi-byte file names.
|
||||
|
||||
If you get all kinds of strange error messages when compiling, try adding
|
||||
changing the file format from "unix" to "dos".
|
||||
If you get all kinds of strange error messages when compiling, try changing
|
||||
the file format from "unix" to "dos".
|
||||
|
||||
|
||||
10. Installing after building from sources
|
||||
==========================================
|
||||
|
||||
[provided by Michael Soyka]
|
||||
|
||||
After you've built the Vim binaries as described above, you're ready to
|
||||
install Vim on your system. However, if you've obtained the Vim sources
|
||||
using Mercurial or by downloading them as a unix tar file, you must first
|
||||
create a "vim73" directory. If you instead downloaded the sources as
|
||||
zip files, you can skip this setup as the zip archives already have the
|
||||
correct directory structure.
|
||||
|
||||
A. Create a Vim "runtime" subdirectory named "vim73"
|
||||
-----------------------------------------------------
|
||||
If you obtained your Vim sources as zip files, you can skip this step.
|
||||
Otherwise, continue reading.
|
||||
|
||||
Go to the directory that contains the Vim "src" and "runtime"
|
||||
directories and create a new subdirectory named "vim73".
|
||||
|
||||
Copy the "runtime" files into "vim73":
|
||||
copy runtime\* vim73
|
||||
|
||||
B. Copy the new binaries into the "vim73" directory
|
||||
----------------------------------------------------
|
||||
Regardless of how you installed the Vim sources, you need to copy the
|
||||
new binaries you created above into "vim73":
|
||||
|
||||
copy src\*.exe vim73
|
||||
copy src\GvimExt\gvimext.dll vim73
|
||||
copy src\xxd\xxd.exe vim73
|
||||
|
||||
C. Move the "vim73" directory into the Vim installation subdirectory
|
||||
---------------------------------------------------------------------
|
||||
Move the "vim73" subdirectory into the subdirectory where you want Vim
|
||||
to be installed. Typically, this subdirectory will be named "vim".
|
||||
If you already have a "vim73" subdirectory in "vim", delete it first
|
||||
by running its uninstal.exe program.
|
||||
|
||||
D. Install Vim
|
||||
---------------
|
||||
"cd" to your Vim installation subdirectory "vim\vim73" and run the
|
||||
"install.exe" program. It will ask you a number of questions about
|
||||
how you would like to have your Vim setup. Among these are:
|
||||
- You can tell it to write a "_vimrc" file with your preferences in the
|
||||
parent directory.
|
||||
- It can also install an "Edit with Vim" entry in the Windows Explorer
|
||||
popup menu.
|
||||
- You can have it create batch files, so that you can run Vim from the
|
||||
console or in a shell. You can select one of the directories in your
|
||||
PATH or add the directory to PATH using the Windows Control Panel.
|
||||
- Create entries for Vim on the desktop and in the Start menu.
|
||||
|
||||
Happy Vimming!
|
||||
|
||||
+175
-590
@@ -2,16 +2,27 @@
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1050</int>
|
||||
<string key="IBDocument.SystemVersion">10F569</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">762</string>
|
||||
<string key="IBDocument.AppKitVersion">1038.29</string>
|
||||
<string key="IBDocument.HIToolboxVersion">461.00</string>
|
||||
<string key="IBDocument.SystemVersion">11B26</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">1617</string>
|
||||
<string key="IBDocument.AppKitVersion">1138</string>
|
||||
<string key="IBDocument.HIToolboxVersion">566.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">762</string>
|
||||
<string key="NS.object.0">1617</string>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="IBDocument.EditedObjectIDs">
|
||||
<integer value="620"/>
|
||||
<array key="IBDocument.IntegratedClassDependencies">
|
||||
<string>NSPopUpButton</string>
|
||||
<string>NSButton</string>
|
||||
<string>NSMenu</string>
|
||||
<string>NSTextFieldCell</string>
|
||||
<string>NSButtonCell</string>
|
||||
<string>NSMenuItem</string>
|
||||
<string>NSMatrix</string>
|
||||
<string>NSCustomView</string>
|
||||
<string>NSCustomObject</string>
|
||||
<string>NSPopUpButtonCell</string>
|
||||
<string>NSUserDefaultsController</string>
|
||||
<string>NSTextField</string>
|
||||
</array>
|
||||
<array key="IBDocument.PluginDependencies">
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
@@ -31,7 +42,7 @@
|
||||
<bool key="NSSharedInstance">YES</bool>
|
||||
</object>
|
||||
<object class="NSCustomView" id="225936320">
|
||||
<nil key="NSNextResponder"/>
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTextField" id="176759725">
|
||||
@@ -707,17 +718,65 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{483, 290}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<string key="NSClassName">NSView</string>
|
||||
</object>
|
||||
<object class="NSCustomView" id="836854791">
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSButton" id="1062985527">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{18, 50}, {388, 18}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="209959448"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="37046570">
|
||||
<int key="NSCellFlags">-2080244224</int>
|
||||
<int key="NSCellFlags2">0</int>
|
||||
<string key="NSContents">Prefer native full-screen support (requires Mac OS X 10.7)</string>
|
||||
<reference key="NSSupport" ref="398275172"/>
|
||||
<reference key="NSControlView" ref="1062985527"/>
|
||||
<int key="NSButtonFlags">1211912703</int>
|
||||
<int key="NSButtonFlags2">2</int>
|
||||
<reference key="NSNormalImage" ref="385062508"/>
|
||||
<reference key="NSAlternateImage" ref="426852917"/>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSTextField" id="209959448">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 20}, {415, 28}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="485630420">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">272760832</int>
|
||||
<string key="NSContents">You may want to disable this option when using multiple monitors since the native full-screen support renders secondary monitors useless.</string>
|
||||
<reference key="NSSupport" ref="26"/>
|
||||
<reference key="NSControlView" ref="209959448"/>
|
||||
<reference key="NSBackgroundColor" ref="821672772"/>
|
||||
<object class="NSColor" key="NSTextColor" id="1006868929">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC41AA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="818542525">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{18, 92}, {174, 18}}</string>
|
||||
<string key="NSFrame">{{18, 146}, {174, 18}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="536705090"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="948343868">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
@@ -738,8 +797,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<object class="NSTextField" id="536705090">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 20}, {444, 70}}</string>
|
||||
<string key="NSFrame">{{17, 74}, {444, 70}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1062985527"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="581527358">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
@@ -748,17 +809,16 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<reference key="NSSupport" ref="26"/>
|
||||
<reference key="NSControlView" ref="536705090"/>
|
||||
<reference key="NSBackgroundColor" ref="821672772"/>
|
||||
<object class="NSColor" key="NSTextColor" id="1006868929">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC41AA</bytes>
|
||||
</object>
|
||||
<reference key="NSTextColor" ref="1006868929"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="747671808">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{18, 228}, {190, 18}}</string>
|
||||
<string key="NSFrame">{{18, 282}, {190, 18}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="864999293"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="266098397">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
@@ -779,8 +839,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<object class="NSTextField" id="864999293">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 198}, {449, 28}}</string>
|
||||
<string key="NSFrame">{{17, 252}, {449, 28}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="538640217"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="526715553">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
@@ -795,8 +857,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<object class="NSButton" id="538640217">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{18, 174}, {133, 18}}</string>
|
||||
<string key="NSFrame">{{18, 228}, {133, 18}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="202792916"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="1057999425">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
@@ -817,8 +881,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<object class="NSTextField" id="202792916">
|
||||
<reference key="NSNextResponder" ref="836854791"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 116}, {449, 56}}</string>
|
||||
<string key="NSFrame">{{17, 170}, {449, 56}}</string>
|
||||
<reference key="NSSuperview" ref="836854791"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="818542525"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="894089534">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
@@ -837,8 +903,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{483, 264}</string>
|
||||
<string key="NSFrameSize">{483, 318}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="747671808"/>
|
||||
<string key="NSClassName">NSView</string>
|
||||
</object>
|
||||
</array>
|
||||
@@ -1040,6 +1108,22 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
</object>
|
||||
<int key="connectionID">1016</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBBindingConnection" key="connection">
|
||||
<string key="label">value: values.MMNativeFullScreen</string>
|
||||
<reference key="source" ref="1062985527"/>
|
||||
<reference key="destination" ref="547503666"/>
|
||||
<object class="NSNibBindingConnector" key="connector">
|
||||
<reference key="NSSource" ref="1062985527"/>
|
||||
<reference key="NSDestination" ref="547503666"/>
|
||||
<string key="NSLabel">value: values.MMNativeFullScreen</string>
|
||||
<string key="NSBinding">value</string>
|
||||
<string key="NSKeyPath">values.MMNativeFullScreen</string>
|
||||
<int key="NSNibBindingConnectorVersion">2</int>
|
||||
</object>
|
||||
</object>
|
||||
<int key="connectionID">1031</int>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<array key="orderedObjects">
|
||||
@@ -1211,6 +1295,8 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<reference ref="747671808"/>
|
||||
<reference ref="536705090"/>
|
||||
<reference ref="818542525"/>
|
||||
<reference ref="209959448"/>
|
||||
<reference ref="1062985527"/>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Advanced</string>
|
||||
@@ -1405,80 +1491,77 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<reference key="object" ref="948343868"/>
|
||||
<reference key="parent" ref="818542525"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1017</int>
|
||||
<reference key="object" ref="209959448"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="485630420"/>
|
||||
</array>
|
||||
<reference key="parent" ref="836854791"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1020</int>
|
||||
<reference key="object" ref="485630420"/>
|
||||
<reference key="parent" ref="209959448"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1028</int>
|
||||
<reference key="object" ref="1062985527"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="37046570"/>
|
||||
</array>
|
||||
<reference key="parent" ref="836854791"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1029</int>
|
||||
<reference key="object" ref="37046570"/>
|
||||
<reference key="parent" ref="1062985527"/>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="-3.ImportedFromIB2"/>
|
||||
<string key="1001.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="1001.ImportedFromIB2"/>
|
||||
<string key="1004.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1013.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1014.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="115.IBEditorWindowLastContentRect">{{329, 705}, {483, 290}}</string>
|
||||
<string key="1017.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1020.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1028.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1029.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="115.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="115.ImportedFromIB2"/>
|
||||
<string key="116.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="116.ImportedFromIB2"/>
|
||||
<string key="117.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="117.ImportedFromIB2"/>
|
||||
<string key="119.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="119.ImportedFromIB2"/>
|
||||
<string key="120.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="120.ImportedFromIB2"/>
|
||||
<string key="121.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="121.ImportedFromIB2"/>
|
||||
<string key="122.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="122.ImportedFromIB2"/>
|
||||
<string key="124.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="124.ImportedFromIB2"/>
|
||||
<string key="126.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="126.ImportedFromIB2"/>
|
||||
<string key="134.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="134.ImportedFromIB2"/>
|
||||
<string key="135.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="135.ImportedFromIB2"/>
|
||||
<string key="137.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="137.ImportedFromIB2"/>
|
||||
<string key="138.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="138.ImportedFromIB2"/>
|
||||
<string key="139.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="139.ImportedFromIB2"/>
|
||||
<string key="427.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="427.ImportedFromIB2"/>
|
||||
<string key="429.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="429.ImportedFromIB2"/>
|
||||
<string key="430.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="430.ImportedFromIB2"/>
|
||||
<string key="431.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="431.ImportedFromIB2"/>
|
||||
<string key="436.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="436.ImportedFromIB2"/>
|
||||
<string key="544.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="544.ImportedFromIB2"/>
|
||||
<string key="58.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="58.ImportedFromIB2"/>
|
||||
<string key="620.IBEditorWindowLastContentRect">{{605, 600}, {483, 264}}</string>
|
||||
<string key="620.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="620.ImportedFromIB2"/>
|
||||
<string key="782.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="782.ImportedFromIB2"/>
|
||||
<string key="815.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="815.ImportedFromIB2"/>
|
||||
<string key="817.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="817.ImportedFromIB2"/>
|
||||
<string key="826.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="826.ImportedFromIB2"/>
|
||||
<string key="957.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="957.ImportedFromIB2"/>
|
||||
<string key="959.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="959.ImportedFromIB2"/>
|
||||
<string key="960.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="960.ImportedFromIB2"/>
|
||||
<string key="961.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="961.ImportedFromIB2"/>
|
||||
<string key="962.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="962.ImportedFromIB2"/>
|
||||
<string key="972.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="973.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="974.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
@@ -1498,7 +1581,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<nil key="activeLocalization"/>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">1016</int>
|
||||
<int key="maxID">1031</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
@@ -1507,25 +1590,30 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<string key="superclassName">NSWindowController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">DBPrefsWindowController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">DBPrefsWindowController</string>
|
||||
<string key="superclassName">NSWindowController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
<string key="minorKey">./Classes/DBPrefsWindowController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">FirstResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<dictionary class="NSMutableDictionary" key="actions">
|
||||
<string key="atsuiButtonClicked:">id</string>
|
||||
<string key="loginShellButtonClicked:">id</string>
|
||||
<string key="quickstartButtonClicked:">id</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="actionInfosByName">
|
||||
<object class="IBActionInfo" key="atsuiButtonClicked:">
|
||||
<string key="name">atsuiButtonClicked:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="loginShellButtonClicked:">
|
||||
<string key="name">loginShellButtonClicked:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="quickstartButtonClicked:">
|
||||
<string key="name">quickstartButtonClicked:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
@@ -1538,537 +1626,35 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<string key="NS.key.0">openInCurrentWindowSelectionChanged:</string>
|
||||
<string key="NS.object.0">id</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="actionInfosByName">
|
||||
<string key="NS.key.0">openInCurrentWindowSelectionChanged:</string>
|
||||
<object class="IBActionInfo" key="NS.object.0">
|
||||
<string key="name">openInCurrentWindowSelectionChanged:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="outlets">
|
||||
<string key="advancedPreferences">NSView</string>
|
||||
<string key="generalPreferences">NSView</string>
|
||||
<string key="layoutPopUpButton">NSPopUpButton</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<object class="IBToOneOutletInfo" key="advancedPreferences">
|
||||
<string key="name">advancedPreferences</string>
|
||||
<string key="candidateClassName">NSView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="generalPreferences">
|
||||
<string key="name">generalPreferences</string>
|
||||
<string key="candidateClassName">NSView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="layoutPopUpButton">
|
||||
<string key="name">layoutPopUpButton</string>
|
||||
<string key="candidateClassName">NSPopUpButton</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">MMPreferenceController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">MMPreferenceController</string>
|
||||
<string key="superclassName">DBPrefsWindowController</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<string key="NS.key.0">changePreloadCacheSize:</string>
|
||||
<string key="NS.object.0">id</string>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenu</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">Miscellaneous.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenu</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSActionCell</string>
|
||||
<string key="superclassName">NSCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="918094059">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="778322014">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="637162915">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSButton</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSButtonCell</string>
|
||||
<string key="superclassName">NSActionCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSCell</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSControl</string>
|
||||
<string key="superclassName">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="92287012">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSController</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSFormatter</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMatrix</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenu</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="130422338">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenuItem</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="881365129">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenuItemCell</string>
|
||||
<string key="superclassName">NSButtonCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="918094059"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="778322014"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="637162915"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="92287012"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDragging.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="130422338"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="975692421">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSError.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSPopUpButton</string>
|
||||
<string key="superclassName">NSButton</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSPopUpButtonCell</string>
|
||||
<string key="superclassName">NSMenuItemCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTextField</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTextFieldCell</string>
|
||||
<string key="superclassName">NSActionCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSUserDefaultsController</string>
|
||||
<string key="superclassName">NSController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSClipView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<reference key="sourceIdentifier" ref="881365129"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<reference key="sourceIdentifier" ref="975692421"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindowController</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<string key="NS.key.0">showWindow:</string>
|
||||
<string key="NS.object.0">id</string>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindowController.h</string>
|
||||
<string key="minorKey">./Classes/MMPreferenceController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
@@ -2080,7 +1666,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
|
||||
<integer value="1050" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<string key="IBDocument.LastKnownRelativeProjectPath">../MacVim.xcodeproj</string>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
<dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
|
||||
<string key="NSMenuCheckmark">{9, 8}</string>
|
||||
|
||||
Binary file not shown.
@@ -1232,7 +1232,7 @@
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>59</string>
|
||||
<string>63</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>MainMenu</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
|
||||
@@ -223,6 +223,7 @@ fsEventCallback(ConstFSEventStreamRef streamRef,
|
||||
[NSNumber numberWithBool:YES], MMUseInlineImKey,
|
||||
#endif // INCLUDE_OLD_IM_CODE
|
||||
[NSNumber numberWithBool:NO], MMSuppressTerminationAlertKey,
|
||||
[NSNumber numberWithBool:YES], MMNativeFullScreenKey,
|
||||
nil];
|
||||
|
||||
[[NSUserDefaults standardUserDefaults] registerDefaults:dict];
|
||||
@@ -241,6 +242,12 @@ fsEventCallback(ConstFSEventStreamRef streamRef,
|
||||
{
|
||||
if (!(self = [super init])) return nil;
|
||||
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
// Disable automatic relaunching
|
||||
if ([NSApp respondsToSelector:@selector(disableRelaunchOnLogin)])
|
||||
[NSApp disableRelaunchOnLogin];
|
||||
#endif
|
||||
|
||||
vimControllers = [NSMutableArray new];
|
||||
cachedVimControllers = [NSMutableArray new];
|
||||
preloadPid = -1;
|
||||
@@ -1065,10 +1072,40 @@ fsEventCallback(ConstFSEventStreamRef streamRef,
|
||||
NSOpenPanel *panel = [NSOpenPanel openPanel];
|
||||
[panel setAllowsMultipleSelection:YES];
|
||||
[panel setAccessoryView:showHiddenFilesView()];
|
||||
#if (MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6)
|
||||
// NOTE: -[NSOpenPanel runModalForDirectory:file:types:] is deprecated on
|
||||
// 10.7 but -[NSOpenPanel setDirectoryURL:] requires 10.6 so jump through
|
||||
// the following hoops on 10.6+.
|
||||
dir = [dir stringByExpandingTildeInPath];
|
||||
if (dir) {
|
||||
NSURL *dirURL = [NSURL fileURLWithPath:dir isDirectory:YES];
|
||||
if (dirURL)
|
||||
[panel setDirectoryURL:dirURL];
|
||||
}
|
||||
|
||||
int result = [panel runModalForDirectory:dir file:nil types:nil];
|
||||
if (NSOKButton == result)
|
||||
[self application:NSApp openFiles:[panel filenames]];
|
||||
NSInteger result = [panel runModal];
|
||||
#else
|
||||
NSInteger result = [panel runModalForDirectory:dir file:nil types:nil];
|
||||
#endif
|
||||
if (NSOKButton == result) {
|
||||
// NOTE: -[NSOpenPanel filenames] is deprecated on 10.7 so use
|
||||
// -[NSOpenPanel URLs] instead. The downside is that we have to check
|
||||
// that each URL is really a path first.
|
||||
NSMutableArray *filenames = [NSMutableArray array];
|
||||
NSArray *urls = [panel URLs];
|
||||
NSUInteger i, count = [urls count];
|
||||
for (i = 0; i < count; ++i) {
|
||||
NSURL *url = [urls objectAtIndex:i];
|
||||
if ([url isFileURL]) {
|
||||
NSString *path = [url path];
|
||||
if (path)
|
||||
[filenames addObject:path];
|
||||
}
|
||||
}
|
||||
|
||||
if ([filenames count] > 0)
|
||||
[self application:NSApp openFiles:filenames];
|
||||
}
|
||||
}
|
||||
|
||||
- (IBAction)selectNextWindow:(id)sender
|
||||
@@ -1410,7 +1447,7 @@ fsEventCallback(ConstFSEventStreamRef streamRef,
|
||||
// as follows:
|
||||
//
|
||||
// 1. Search through ordered windows as determined by NSApp. Unfortunately
|
||||
// this method can fail, e.g. if a full screen window is on another
|
||||
// this method can fail, e.g. if a full-screen window is on another
|
||||
// "Space" (in this case NSApp returns no windows at all), so we have to
|
||||
// fall back on ...
|
||||
// 2. Search through all Vim controllers and return the first visible
|
||||
|
||||
@@ -131,9 +131,9 @@ extern NSTimeInterval MMBalloonEvalInternalDelay;
|
||||
- (int)lookupColorWithKey:(NSString *)key;
|
||||
- (BOOL)hasSpecialKeyWithValue:(char_u *)value;
|
||||
|
||||
- (void)enterFullscreen:(int)fuoptions background:(int)bg;
|
||||
- (void)leaveFullscreen;
|
||||
- (void)setFullscreenBackgroundColor:(int)color;
|
||||
- (void)enterFullScreen:(int)fuoptions background:(int)bg;
|
||||
- (void)leaveFullScreen;
|
||||
- (void)setFullScreenBackgroundColor:(int)color;
|
||||
|
||||
- (void)setAntialias:(BOOL)antialias;
|
||||
|
||||
|
||||
@@ -1150,27 +1150,27 @@ extern GuiFont gui_mch_retain_font(GuiFont font);
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (void)enterFullscreen:(int)fuoptions background:(int)bg
|
||||
- (void)enterFullScreen:(int)fuoptions background:(int)bg
|
||||
{
|
||||
NSMutableData *data = [NSMutableData data];
|
||||
[data appendBytes:&fuoptions length:sizeof(int)];
|
||||
bg = MM_COLOR(bg);
|
||||
[data appendBytes:&bg length:sizeof(int)];
|
||||
[self queueMessage:EnterFullscreenMsgID data:data];
|
||||
[self queueMessage:EnterFullScreenMsgID data:data];
|
||||
}
|
||||
|
||||
- (void)leaveFullscreen
|
||||
- (void)leaveFullScreen
|
||||
{
|
||||
[self queueMessage:LeaveFullscreenMsgID data:nil];
|
||||
[self queueMessage:LeaveFullScreenMsgID data:nil];
|
||||
}
|
||||
|
||||
- (void)setFullscreenBackgroundColor:(int)color
|
||||
- (void)setFullScreenBackgroundColor:(int)color
|
||||
{
|
||||
NSMutableData *data = [NSMutableData data];
|
||||
color = MM_COLOR(color);
|
||||
[data appendBytes:&color length:sizeof(int)];
|
||||
|
||||
[self queueMessage:SetFullscreenColorMsgID data:data];
|
||||
[self queueMessage:SetFullScreenColorMsgID data:data];
|
||||
}
|
||||
|
||||
- (void)setAntialias:(BOOL)antialias
|
||||
@@ -1819,6 +1819,7 @@ static void netbeansReadCallback(CFSocketRef s,
|
||||
[NSNumber numberWithInt:p_mh], @"p_mh",
|
||||
[NSNumber numberWithBool:mmta], @"p_mmta",
|
||||
[NSNumber numberWithInt:numTabs], @"numTabs",
|
||||
[NSNumber numberWithInt:fuoptions_flags], @"fullScreenOptions",
|
||||
nil];
|
||||
|
||||
// Put the state before all other messages.
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
@class MMVimView;
|
||||
|
||||
@interface MMFullscreenWindow : NSWindow {
|
||||
@interface MMFullScreenWindow : NSWindow {
|
||||
NSWindow *target;
|
||||
MMVimView *view;
|
||||
NSPoint oldPosition;
|
||||
@@ -22,7 +22,7 @@
|
||||
int options;
|
||||
int state;
|
||||
|
||||
// These are only valid in fullscreen mode and store pre-fu vim size
|
||||
// These are only valid in full-screen mode and store pre-fu vim size
|
||||
int nonFuRows, nonFuColumns;
|
||||
|
||||
// These store the size vim had right after entering fu mode
|
||||
@@ -32,14 +32,15 @@
|
||||
int startFuFlags;
|
||||
}
|
||||
|
||||
- (MMFullscreenWindow *)initWithWindow:(NSWindow *)t view:(MMVimView *)v
|
||||
- (MMFullScreenWindow *)initWithWindow:(NSWindow *)t view:(MMVimView *)v
|
||||
backgroundColor:(NSColor *)back;
|
||||
- (void)setOptions:(int)opt;
|
||||
- (void)enterFullscreen;
|
||||
- (void)leaveFullscreen;
|
||||
- (void)enterFullScreen;
|
||||
- (void)leaveFullScreen;
|
||||
- (void)centerView;
|
||||
|
||||
- (BOOL)canBecomeKeyWindow;
|
||||
- (BOOL)canBecomeMainWindow;
|
||||
|
||||
- (void)applicationDidChangeScreenParameters:(NSNotification *)notification;
|
||||
@end
|
||||
@@ -8,7 +8,7 @@
|
||||
* See README.txt for an overview of the Vim source code.
|
||||
*/
|
||||
/*
|
||||
* MMFullscreenWindow
|
||||
* MMFullScreenWindow
|
||||
*
|
||||
* A window without any decorations which covers an entire screen.
|
||||
*
|
||||
@@ -23,7 +23,7 @@
|
||||
* Author: Nico Weber
|
||||
*/
|
||||
|
||||
#import "MMFullscreenWindow.h"
|
||||
#import "MMFullScreenWindow.h"
|
||||
#import "MMTextView.h"
|
||||
#import "MMVimController.h"
|
||||
#import "MMVimView.h"
|
||||
@@ -45,18 +45,17 @@ enum {
|
||||
};
|
||||
|
||||
|
||||
@interface MMFullscreenWindow (Private)
|
||||
@interface MMFullScreenWindow (Private)
|
||||
- (BOOL)isOnPrimaryScreen;
|
||||
- (void)windowDidBecomeMain:(NSNotification *)notification;
|
||||
- (void)windowDidResignMain:(NSNotification *)notification;
|
||||
- (void)windowDidMove:(NSNotification *)notification;
|
||||
- (void)applicationDidChangeScreenParameters:(NSNotification *)notification;
|
||||
- (void)resizeVimView;
|
||||
@end
|
||||
|
||||
@implementation MMFullscreenWindow
|
||||
@implementation MMFullScreenWindow
|
||||
|
||||
- (MMFullscreenWindow *)initWithWindow:(NSWindow *)t view:(MMVimView *)v
|
||||
- (MMFullScreenWindow *)initWithWindow:(NSWindow *)t view:(MMVimView *)v
|
||||
backgroundColor:(NSColor *)back
|
||||
{
|
||||
NSScreen* screen = [t screen];
|
||||
@@ -103,11 +102,6 @@ enum {
|
||||
name:NSWindowDidMoveNotification
|
||||
object:self];
|
||||
|
||||
[nc addObserver:self
|
||||
selector:@selector(applicationDidChangeScreenParameters:)
|
||||
name:NSApplicationDidChangeScreenParametersNotification
|
||||
object:NSApp];
|
||||
|
||||
// NOTE: Vim needs to process mouse moved events, so enable them here.
|
||||
[self setAcceptsMouseMovedEvents:YES];
|
||||
|
||||
@@ -131,9 +125,9 @@ enum {
|
||||
options = opt;
|
||||
}
|
||||
|
||||
- (void)enterFullscreen
|
||||
- (void)enterFullScreen
|
||||
{
|
||||
ASLogDebug(@"Enter full screen now");
|
||||
ASLogDebug(@"Enter full-screen now");
|
||||
|
||||
// Hide Dock and menu bar now to avoid the hide animation from playing
|
||||
// after the fade to black (see also windowDidBecomeMain:).
|
||||
@@ -186,18 +180,18 @@ enum {
|
||||
// focus gained message
|
||||
[self setDelegate:delegate];
|
||||
|
||||
// Store view dimension used before entering full screen, then resize the
|
||||
// Store view dimension used before entering full-screen, then resize the
|
||||
// view to match 'fuopt'.
|
||||
[[view textView] getMaxRows:&nonFuRows columns:&nonFuColumns];
|
||||
[self resizeVimView];
|
||||
|
||||
// Store options used when entering full screen so that we can restore
|
||||
// dimensions when exiting full screen.
|
||||
// Store options used when entering full-screen so that we can restore
|
||||
// dimensions when exiting full-screen.
|
||||
startFuFlags = options;
|
||||
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
|
||||
// HACK! Put window on all Spaces to avoid Spaces (available on OS X 10.5
|
||||
// and later) from moving the full screen window to a separate Space from
|
||||
// and later) from moving the full-screen window to a separate Space from
|
||||
// the one the decorated window is occupying. The collection behavior is
|
||||
// restored further down.
|
||||
NSWindowCollectionBehavior wcb = [self collectionBehavior];
|
||||
@@ -223,7 +217,7 @@ enum {
|
||||
state = InFullScreen;
|
||||
}
|
||||
|
||||
- (void)leaveFullscreen
|
||||
- (void)leaveFullScreen
|
||||
{
|
||||
// fade to black
|
||||
Boolean didBlend = NO;
|
||||
@@ -272,10 +266,10 @@ enum {
|
||||
id delegate = [self delegate];
|
||||
[self setDelegate:nil];
|
||||
|
||||
// move text view back to original window, hide fullscreen window,
|
||||
// move text view back to original window, hide fullScreen window,
|
||||
// show original window
|
||||
// do this _after_ resetting delegate and window controller, so the
|
||||
// window controller doesn't get a focus lost message from the fullscreen
|
||||
// window controller doesn't get a focus lost message from the fullScreen
|
||||
// window.
|
||||
[view removeFromSuperviewWithoutNeedingDisplay];
|
||||
[[target contentView] addSubview:view];
|
||||
@@ -290,15 +284,30 @@ enum {
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
|
||||
// HACK! Put decorated window on all Spaces (available on OS X 10.5 and
|
||||
// later) so that the decorated window stays on the same Space as the full
|
||||
// screen window (they may occupy different Spaces e.g. if the full screen
|
||||
// screen window (they may occupy different Spaces e.g. if the full-screen
|
||||
// window was dragged to another Space). The collection behavior is
|
||||
// restored further down.
|
||||
NSWindowCollectionBehavior wcb = [target collectionBehavior];
|
||||
[target setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces];
|
||||
#endif
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
// HACK! On Mac OS X 10.7 windows animate when makeKeyAndOrderFront: is
|
||||
// called. This is distracting here, so disable the animation and restore
|
||||
// animation behavior after calling makeKeyAndOrderFront:.
|
||||
NSWindowAnimationBehavior a = NSWindowAnimationBehaviorNone;
|
||||
if ([target respondsToSelector:@selector(animationBehavior)]) {
|
||||
a = [target animationBehavior];
|
||||
[target setAnimationBehavior:NSWindowAnimationBehaviorNone];
|
||||
}
|
||||
#endif
|
||||
|
||||
[target makeKeyAndOrderFront:self];
|
||||
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
// HACK! Restore animation behavior.
|
||||
if (NSWindowAnimationBehaviorNone != a)
|
||||
[target setAnimationBehavior:a];
|
||||
#endif
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
|
||||
// Restore collection behavior (see hack above).
|
||||
[target setCollectionBehavior:wcb];
|
||||
@@ -318,7 +327,7 @@ enum {
|
||||
[self autorelease]; // Balance the above retain
|
||||
|
||||
state = LeftFullScreen;
|
||||
ASLogDebug(@"Left full screen");
|
||||
ASLogDebug(@"Left full-screen");
|
||||
}
|
||||
|
||||
// Title-less windows normally don't receive key presses, override this
|
||||
@@ -328,12 +337,40 @@ enum {
|
||||
}
|
||||
|
||||
// Title-less windows normally can't become main which means that another
|
||||
// non-fullscreen window will have the "active" titlebar in expose. Bad, fix it.
|
||||
// non-full-screen window will have the "active" titlebar in expose. Bad, fix
|
||||
// it.
|
||||
- (BOOL)canBecomeMainWindow
|
||||
{
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (void)applicationDidChangeScreenParameters:(NSNotification *)notification
|
||||
{
|
||||
if (state != InFullScreen)
|
||||
return;
|
||||
|
||||
// This notification is sent when screen resolution may have changed (e.g.
|
||||
// due to a monitor being unplugged or the resolution being changed
|
||||
// manually) but it also seems to get called when the Dock is
|
||||
// hidden/displayed.
|
||||
ASLogDebug(@"Screen unplugged / resolution changed");
|
||||
|
||||
NSScreen *screen = [target screen];
|
||||
if (!screen) {
|
||||
// Paranoia: if window we originally used for full-screen is gone, try
|
||||
// screen window is on now, and failing that (not sure this can happen)
|
||||
// use main screen.
|
||||
screen = [self screen];
|
||||
if (!screen)
|
||||
screen = [NSScreen mainScreen];
|
||||
}
|
||||
|
||||
// Ensure the full-screen window is still covering the entire screen and
|
||||
// then resize view according to 'fuopt'.
|
||||
[self setFrame:[screen frame] display:NO];
|
||||
[self resizeVimView];
|
||||
}
|
||||
|
||||
- (void)centerView
|
||||
{
|
||||
NSRect outer = [self frame], inner = [view frame];
|
||||
@@ -370,12 +407,12 @@ enum {
|
||||
return YES;
|
||||
}
|
||||
|
||||
@end // MMFullscreenWindow
|
||||
@end // MMFullScreenWindow
|
||||
|
||||
|
||||
|
||||
|
||||
@implementation MMFullscreenWindow (Private)
|
||||
@implementation MMFullScreenWindow (Private)
|
||||
|
||||
- (BOOL)isOnPrimaryScreen
|
||||
{
|
||||
@@ -393,13 +430,13 @@ enum {
|
||||
{
|
||||
// Hide menu and dock, both appear on demand.
|
||||
//
|
||||
// Another way to deal with several fullscreen windows would be to hide/
|
||||
// reveal the dock only when the first fullscreen window is created and
|
||||
// Another way to deal with several full-screen windows would be to hide/
|
||||
// reveal the dock only when the first full-screen window is created and
|
||||
// show it again after the last one has been closed, but toggling on each
|
||||
// focus gain/loss works better with Spaces. The downside is that the
|
||||
// menu bar flashes shortly when switching between two fullscreen windows.
|
||||
// menu bar flashes shortly when switching between two full-screen windows.
|
||||
|
||||
// XXX: If you have a fullscreen window on a secondary monitor and unplug
|
||||
// XXX: If you have a full-screen window on a secondary monitor and unplug
|
||||
// the monitor, this will probably not work right.
|
||||
|
||||
if ([self isOnPrimaryScreen]) {
|
||||
@@ -421,41 +458,14 @@ enum {
|
||||
return;
|
||||
|
||||
// Window may move as a result of being dragged between Spaces.
|
||||
ASLogDebug(@"Full screen window moved, ensuring it covers the screen...");
|
||||
ASLogDebug(@"Full-screen window moved, ensuring it covers the screen...");
|
||||
|
||||
// Ensure the full screen window is still covering the entire screen and
|
||||
// Ensure the full-screen window is still covering the entire screen and
|
||||
// then resize view according to 'fuopt'.
|
||||
[self setFrame:[[self screen] frame] display:NO];
|
||||
[self resizeVimView];
|
||||
}
|
||||
|
||||
- (void)applicationDidChangeScreenParameters:(NSNotification *)notification
|
||||
{
|
||||
if (state != InFullScreen)
|
||||
return;
|
||||
|
||||
// This notification is sent when screen resolution may have changed (e.g.
|
||||
// due to a monitor being unplugged or the resolution being changed
|
||||
// manually) but it also seems to get called when the Dock is
|
||||
// hidden/displayed.
|
||||
ASLogDebug(@"Screen unplugged / resolution changed");
|
||||
|
||||
NSScreen *screen = [target screen];
|
||||
if (!screen) {
|
||||
// Paranoia: if window we originally used for full screen is gone, try
|
||||
// screen window is on now, and failing that (not sure this can happen)
|
||||
// use main screen.
|
||||
screen = [self screen];
|
||||
if (!screen)
|
||||
screen = [NSScreen mainScreen];
|
||||
}
|
||||
|
||||
// Ensure the full screen window is still covering the entire screen and
|
||||
// then resize view according to 'fuopt'.
|
||||
[self setFrame:[screen frame] display:NO];
|
||||
[self resizeVimView];
|
||||
}
|
||||
|
||||
- (void)resizeVimView
|
||||
{
|
||||
// Resize vim view according to options
|
||||
@@ -503,9 +513,9 @@ enum {
|
||||
}
|
||||
|
||||
// The new view dimensions are stored and then consulted when attempting to
|
||||
// restore the windowed view dimensions when leaving full screen.
|
||||
// NOTE: Store them here and not only in enterFullscreen, otherwise the
|
||||
// windowed view dimensions will not be restored if the full screen was on
|
||||
// restore the windowed view dimensions when leaving full-screen.
|
||||
// NOTE: Store them here and not only in enterFullScreen, otherwise the
|
||||
// windowed view dimensions will not be restored if the full-screen was on
|
||||
// a screen that later was unplugged.
|
||||
startFuRows = fuRows;
|
||||
startFuColumns = fuColumns;
|
||||
@@ -513,4 +523,4 @@ enum {
|
||||
[self centerView];
|
||||
}
|
||||
|
||||
@end // MMFullscreenWindow (Private)
|
||||
@end // MMFullScreenWindow (Private)
|
||||
@@ -22,15 +22,6 @@
|
||||
#define ALPHA(argb) (((argb>>24) & 0xff)/255.0f)
|
||||
|
||||
|
||||
enum {
|
||||
// These values are chosen so that the min text view size is not too small
|
||||
// with the default font (they only affect resizing with the mouse, you can
|
||||
// still use e.g. ":set lines=2" to go below these values).
|
||||
MMMinRows = 4,
|
||||
MMMinColumns = 30
|
||||
};
|
||||
|
||||
|
||||
@interface MMTextViewHelper : NSObject {
|
||||
id textView;
|
||||
BOOL isDragging;
|
||||
|
||||
@@ -809,12 +809,12 @@ KeyboardInputSourcesEqual(TISInputSourceRef a, TISInputSourceRef b)
|
||||
#endif
|
||||
|
||||
imControl = enable;
|
||||
ASLogInfo(@"IM control %sabled", enable ? "en" : "dis");
|
||||
ASLogDebug(@"IM control %sabled", enable ? "en" : "dis");
|
||||
}
|
||||
|
||||
- (void)activateIm:(BOOL)enable
|
||||
{
|
||||
ASLogInfo(@"Activate IM=%d", enable);
|
||||
ASLogDebug(@"Activate IM=%d", enable);
|
||||
|
||||
// HACK: If there is marked text when switching IM it will be inserted as
|
||||
// normal text. To avoid this we abandon the marked text before switching.
|
||||
|
||||
@@ -27,8 +27,11 @@
|
||||
id backendProxy;
|
||||
NSMenu *mainMenu;
|
||||
NSMutableArray *popupMenuItems;
|
||||
|
||||
// TODO: Move all toolbar code to window controller?
|
||||
NSToolbar *toolbar;
|
||||
NSMutableDictionary *toolbarItemDict;
|
||||
|
||||
int pid;
|
||||
NSString *serverName;
|
||||
NSDictionary *vimState;
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#import "MMWindowController.h"
|
||||
#import "Miscellaneous.h"
|
||||
#import "MMCoreTextView.h"
|
||||
#import "MMWindow.h"
|
||||
|
||||
|
||||
static NSString *MMDefaultToolbarImageName = @"Attention";
|
||||
@@ -765,15 +766,15 @@ static BOOL isUnsafeMessage(int msgid);
|
||||
encoding:NSUTF8StringEncoding];
|
||||
[self setServerName:name];
|
||||
[name release];
|
||||
} else if (EnterFullscreenMsgID == msgid) {
|
||||
} else if (EnterFullScreenMsgID == msgid) {
|
||||
const void *bytes = [data bytes];
|
||||
int fuoptions = *((int*)bytes); bytes += sizeof(int);
|
||||
int bg = *((int*)bytes);
|
||||
NSColor *back = [NSColor colorWithArgbInt:bg];
|
||||
|
||||
[windowController enterFullscreen:fuoptions backgroundColor:back];
|
||||
} else if (LeaveFullscreenMsgID == msgid) {
|
||||
[windowController leaveFullscreen];
|
||||
[windowController enterFullScreen:fuoptions backgroundColor:back];
|
||||
} else if (LeaveFullScreenMsgID == msgid) {
|
||||
[windowController leaveFullScreen];
|
||||
} else if (SetBuffersModifiedMsgID == msgid) {
|
||||
const void *bytes = [data bytes];
|
||||
// state < 0 <-> some buffer modified
|
||||
@@ -805,11 +806,11 @@ static BOOL isUnsafeMessage(int msgid);
|
||||
}
|
||||
} else if (CloseWindowMsgID == msgid) {
|
||||
[self scheduleClose];
|
||||
} else if (SetFullscreenColorMsgID == msgid) {
|
||||
} else if (SetFullScreenColorMsgID == msgid) {
|
||||
const int *bg = (const int*)[data bytes];
|
||||
NSColor *color = [NSColor colorWithRgbInt:*bg];
|
||||
|
||||
[windowController setFullscreenBackgroundColor:color];
|
||||
[windowController setFullScreenBackgroundColor:color];
|
||||
} else if (ShowFindReplaceDialogMsgID == msgid) {
|
||||
NSDictionary *dict = [NSDictionary dictionaryWithData:data];
|
||||
if (dict) {
|
||||
@@ -886,7 +887,12 @@ static BOOL isUnsafeMessage(int msgid);
|
||||
- (void)savePanelDidEnd:(NSSavePanel *)panel code:(int)code
|
||||
context:(void *)context
|
||||
{
|
||||
NSString *path = (code == NSOKButton) ? [panel filename] : nil;
|
||||
NSString *path = nil;
|
||||
if (code == NSOKButton) {
|
||||
NSURL *url = [panel URL];
|
||||
if ([url isFileURL])
|
||||
path = [url path];
|
||||
}
|
||||
ASLogDebug(@"Open/save panel path=%@", path);
|
||||
|
||||
// NOTE! This causes the sheet animation to run its course BEFORE the rest
|
||||
@@ -1378,6 +1384,12 @@ static BOOL isUnsafeMessage(int msgid);
|
||||
dir = [vimState objectForKey:@"pwd"];
|
||||
}
|
||||
|
||||
#if (MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6)
|
||||
// 10.6+ APIs uses URLs instead of paths
|
||||
dir = [dir stringByExpandingTildeInPath];
|
||||
NSURL *dirURL = dir ? [NSURL fileURLWithPath:dir isDirectory:YES] : nil;
|
||||
#endif
|
||||
|
||||
if (saving) {
|
||||
NSSavePanel *panel = [NSSavePanel savePanel];
|
||||
|
||||
@@ -1387,22 +1399,47 @@ static BOOL isUnsafeMessage(int msgid);
|
||||
[panel setDelegate:self];
|
||||
if ([panel isExpanded])
|
||||
[panel setAccessoryView:showHiddenFilesView()];
|
||||
#if (MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6)
|
||||
// NOTE: -[NSSavePanel beginSheetForDirectory::::::] is deprecated on
|
||||
// 10.6 but -[NSSavePanel setDirectoryURL:] requires 10.6 so jump
|
||||
// through the following hoops on 10.6+.
|
||||
if (dirURL)
|
||||
[panel setDirectoryURL:dirURL];
|
||||
|
||||
[panel beginSheetModalForWindow:[windowController window]
|
||||
completionHandler:^(NSInteger result) {
|
||||
[self savePanelDidEnd:panel code:result context:nil];
|
||||
}];
|
||||
#else
|
||||
[panel beginSheetForDirectory:dir file:nil
|
||||
modalForWindow:[windowController window]
|
||||
modalDelegate:self
|
||||
didEndSelector:@selector(savePanelDidEnd:code:context:)
|
||||
contextInfo:NULL];
|
||||
#endif
|
||||
} else {
|
||||
NSOpenPanel *panel = [NSOpenPanel openPanel];
|
||||
[panel setAllowsMultipleSelection:NO];
|
||||
[panel setAccessoryView:showHiddenFilesView()];
|
||||
|
||||
#if (MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6)
|
||||
// NOTE: -[NSOpenPanel beginSheetForDirectory:::::::] is deprecated on
|
||||
// 10.6 but -[NSOpenPanel setDirectoryURL:] requires 10.6 so jump
|
||||
// through the following hoops on 10.6+.
|
||||
if (dirURL)
|
||||
[panel setDirectoryURL:dirURL];
|
||||
|
||||
[panel beginSheetModalForWindow:[windowController window]
|
||||
completionHandler:^(NSInteger result) {
|
||||
[self savePanelDidEnd:panel code:result context:nil];
|
||||
}];
|
||||
#else
|
||||
[panel beginSheetForDirectory:dir file:nil types:nil
|
||||
modalForWindow:[windowController window]
|
||||
modalDelegate:self
|
||||
didEndSelector:@selector(savePanelDidEnd:code:context:)
|
||||
contextInfo:NULL];
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1593,8 +1630,8 @@ isUnsafeMessage(int msgid)
|
||||
ExecuteActionMsgID, // Impossible to predict
|
||||
ShowPopupMenuMsgID, // Enters modal loop
|
||||
ActivateMsgID, // ?
|
||||
EnterFullscreenMsgID, // Modifies delegate of window controller
|
||||
LeaveFullscreenMsgID, // Modifies delegate of window controller
|
||||
EnterFullScreenMsgID, // Modifies delegate of window controller
|
||||
LeaveFullScreenMsgID, // Modifies delegate of window controller
|
||||
CloseWindowMsgID, // See note below
|
||||
BrowseForFileMsgID, // Enters modal loop
|
||||
ShowDialogMsgID, // Enters modal loop
|
||||
|
||||
@@ -29,4 +29,7 @@
|
||||
- (void)setContentMaxSize:(NSSize)size;
|
||||
- (void)setContentSize:(NSSize)size;
|
||||
|
||||
- (IBAction)toggleFullScreen:(id)sender;
|
||||
- (IBAction)realToggleFullScreen:(id)sender;
|
||||
|
||||
@end
|
||||
|
||||
@@ -152,4 +152,27 @@
|
||||
[[self delegate] performSelector:@selector(zoom:) withObject:sender];
|
||||
}
|
||||
|
||||
- (IBAction)toggleFullScreen:(id)sender
|
||||
{
|
||||
// HACK! This is an NSWindow method used to enter full-screen on OS X 10.7.
|
||||
// We override it so that we can interrupt and pass this on to Vim first.
|
||||
// An alternative hack would be to reroute the action message sent by the
|
||||
// full-screen button in the top right corner of a window, but there could
|
||||
// be other places where this action message is sent from.
|
||||
// To get to the original method (and enter Lion full-screen) we need to
|
||||
// call realToggleFullScreen: defined below.
|
||||
|
||||
// (Use performSelector:: to avoid compilation warning.)
|
||||
[[self delegate] performSelector:@selector(invFullScreen:) withObject:nil];
|
||||
}
|
||||
|
||||
- (IBAction)realToggleFullScreen:(id)sender
|
||||
{
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
// HACK! See toggleFullScreen: comment above.
|
||||
if ([NSWindow instancesRespondToSelector:@selector(toggleFullScreen:)])
|
||||
[super toggleFullScreen:sender];
|
||||
#endif
|
||||
}
|
||||
|
||||
@end // MMWindow
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
|
||||
@class MMWindow;
|
||||
@class MMFullscreenWindow;
|
||||
@class MMFullScreenWindow;
|
||||
@class MMVimController;
|
||||
@class MMVimView;
|
||||
|
||||
@@ -29,17 +29,22 @@
|
||||
BOOL windowPresented;
|
||||
BOOL shouldResizeVimView;
|
||||
BOOL shouldRestoreUserTopLeft;
|
||||
BOOL shouldMaximizeWindow;
|
||||
int updateToolbarFlag;
|
||||
BOOL keepOnScreen;
|
||||
BOOL fullscreenEnabled;
|
||||
NSString *windowAutosaveKey;
|
||||
MMFullscreenWindow *fullscreenWindow;
|
||||
BOOL fullScreenEnabled;
|
||||
MMFullScreenWindow *fullScreenWindow;
|
||||
int fullScreenOptions;
|
||||
BOOL delayEnterFullScreen;
|
||||
NSRect preFullScreenFrame;
|
||||
MMWindow *decoratedWindow;
|
||||
NSString *lastSetTitle;
|
||||
int userRows;
|
||||
int userCols;
|
||||
NSPoint userTopLeft;
|
||||
NSPoint defaultTopLeft;
|
||||
NSToolbar *toolbar;
|
||||
}
|
||||
|
||||
- (id)initWithVimController:(MMVimController *)controller;
|
||||
@@ -75,9 +80,10 @@
|
||||
- (void)liveResizeWillStart;
|
||||
- (void)liveResizeDidEnd;
|
||||
|
||||
- (void)enterFullscreen:(int)fuoptions backgroundColor:(NSColor *)back;
|
||||
- (void)leaveFullscreen;
|
||||
- (void)setFullscreenBackgroundColor:(NSColor *)back;
|
||||
- (void)enterFullScreen:(int)fuoptions backgroundColor:(NSColor *)back;
|
||||
- (void)leaveFullScreen;
|
||||
- (void)setFullScreenBackgroundColor:(NSColor *)back;
|
||||
- (void)invFullScreen:(id)sender;
|
||||
|
||||
- (void)setBufferModified:(BOOL)mod;
|
||||
- (void)setTopLeft:(NSPoint)pt;
|
||||
|
||||
+474
-128
@@ -44,7 +44,7 @@
|
||||
* YES & YES => NO
|
||||
*
|
||||
*
|
||||
* Resizing in full-screen mode:
|
||||
* Resizing in custom full-screen mode:
|
||||
*
|
||||
* The window never resizes since it fills the screen, however the vim view may
|
||||
* change size, e.g. when the user types ":set lines=60", or when a scrollbar
|
||||
@@ -52,13 +52,19 @@
|
||||
*
|
||||
* It is ensured that the vim view never becomes larger than the screen size
|
||||
* and that it always stays in the center of the screen.
|
||||
*
|
||||
*
|
||||
* Resizing in native full-screen mode (Mac OS X 10.7+):
|
||||
*
|
||||
* The window is always kept centered and resizing works more or less the same
|
||||
* way as in windowed mode.
|
||||
*
|
||||
*/
|
||||
|
||||
#import "MMAppController.h"
|
||||
#import "MMAtsuiTextView.h"
|
||||
#import "MMFindReplaceController.h"
|
||||
#import "MMFullscreenWindow.h"
|
||||
#import "MMFullScreenWindow.h"
|
||||
#import "MMTextView.h"
|
||||
#import "MMTypesetter.h"
|
||||
#import "MMVimController.h"
|
||||
@@ -69,6 +75,12 @@
|
||||
#import <PSMTabBarControl/PSMTabBarControl.h>
|
||||
|
||||
|
||||
// These have to be the same as in option.h
|
||||
#define FUOPT_MAXVERT 0x001
|
||||
#define FUOPT_MAXHORZ 0x002
|
||||
#define FUOPT_BGCOLOR_HLGROUP 0x004
|
||||
|
||||
|
||||
|
||||
@interface MMWindowController (Private)
|
||||
- (NSSize)contentSize;
|
||||
@@ -79,9 +91,13 @@
|
||||
- (void)updateResizeConstraints;
|
||||
- (NSTabViewItem *)addNewTabViewItem;
|
||||
- (BOOL)askBackendForStarRegister:(NSPasteboard *)pb;
|
||||
- (void)updateTablineSeparator;
|
||||
- (void)hideTablineSeparator:(BOOL)hide;
|
||||
- (void)doFindNext:(BOOL)next;
|
||||
- (void)updateToolbar;
|
||||
- (BOOL)maximizeWindow:(int)options;
|
||||
- (void)applicationDidChangeScreenParameters:(NSNotification *)notification;
|
||||
- (void)enterNativeFullScreen;
|
||||
@end
|
||||
|
||||
|
||||
@@ -181,6 +197,24 @@
|
||||
if ([win respondsToSelector:@selector(_setContentHasShadow:)])
|
||||
[win _setContentHasShadow:NO];
|
||||
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
// Building on Mac OS X 10.7 or greater.
|
||||
|
||||
// This puts the full-screen button in the top right of each window
|
||||
if ([win respondsToSelector:@selector(setCollectionBehavior:)])
|
||||
[win setCollectionBehavior:NSWindowCollectionBehaviorFullScreenPrimary];
|
||||
|
||||
// This makes windows animate when opened
|
||||
if ([win respondsToSelector:@selector(setAnimationBehavior:)])
|
||||
[win setAnimationBehavior:NSWindowAnimationBehaviorDocumentWindow];
|
||||
#endif
|
||||
|
||||
[[NSNotificationCenter defaultCenter]
|
||||
addObserver:self
|
||||
selector:@selector(applicationDidChangeScreenParameters:)
|
||||
name:NSApplicationDidChangeScreenParametersNotification
|
||||
object:NSApp];
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
@@ -191,6 +225,7 @@
|
||||
[decoratedWindow release]; decoratedWindow = nil;
|
||||
[windowAutosaveKey release]; windowAutosaveKey = nil;
|
||||
[vimView release]; vimView = nil;
|
||||
[toolbar release]; toolbar = nil;
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
@@ -226,16 +261,20 @@
|
||||
|
||||
- (void)cleanup
|
||||
{
|
||||
ASLogDebug(@"%@ %s", [self className], _cmd);
|
||||
ASLogDebug(@"");
|
||||
|
||||
if (fullscreenEnabled) {
|
||||
// If we are closed while still in fullscreen, end fullscreen mode,
|
||||
// NOTE: Must set this before possibly leaving full-screen.
|
||||
setupDone = NO;
|
||||
|
||||
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
||||
|
||||
if (fullScreenEnabled) {
|
||||
// If we are closed while still in full-screen, end full-screen mode,
|
||||
// release ourselves (because this won't happen in MMWindowController)
|
||||
// and perform close operation on the original window.
|
||||
[self leaveFullscreen];
|
||||
[self leaveFullScreen];
|
||||
}
|
||||
|
||||
setupDone = NO;
|
||||
vimController = nil;
|
||||
|
||||
[vimView removeFromSuperviewWithoutNeedingDisplay];
|
||||
@@ -277,17 +316,32 @@
|
||||
[self updateResizeConstraints];
|
||||
[self resizeWindowToFitContentSize:[vimView desiredSize]
|
||||
keepOnScreen:YES];
|
||||
[[self window] makeKeyAndOrderFront:self];
|
||||
|
||||
|
||||
[decoratedWindow makeKeyAndOrderFront:self];
|
||||
|
||||
// HACK! Calling makeKeyAndOrderFront: may cause Cocoa to force the window
|
||||
// into native full-screen mode (this happens e.g. if a new window is
|
||||
// opened when MacVim is already in full-screen). In this case we don't
|
||||
// want the decorated window to pop up before the animation into
|
||||
// full-screen, so set its alpha to 0.
|
||||
if (fullScreenEnabled && !fullScreenWindow)
|
||||
[decoratedWindow setAlphaValue:0];
|
||||
|
||||
// Flag that the window is now placed on screen. From now on it is OK for
|
||||
// code to depend on the screen state. (Such as constraining views etc.)
|
||||
windowPresented = YES;
|
||||
|
||||
if (fullscreenWindow) {
|
||||
// Delayed entering of full screen happens here (a ":set fu" in a
|
||||
if (fullScreenWindow) {
|
||||
// Delayed entering of full-screen happens here (a ":set fu" in a
|
||||
// GUIEnter auto command could cause this).
|
||||
[fullscreenWindow enterFullscreen];
|
||||
fullscreenEnabled = YES;
|
||||
[fullScreenWindow enterFullScreen];
|
||||
fullScreenEnabled = YES;
|
||||
} else if (delayEnterFullScreen) {
|
||||
// Set alpha to zero so that the decorated window doesn't pop up
|
||||
// before we enter full-screen.
|
||||
[decoratedWindow setAlphaValue:0];
|
||||
[self enterNativeFullScreen];
|
||||
}
|
||||
|
||||
return YES;
|
||||
@@ -326,6 +380,29 @@
|
||||
shouldResizeVimView = YES;
|
||||
keepOnScreen = onScreen;
|
||||
}
|
||||
|
||||
// Autosave rows and columns.
|
||||
if (windowAutosaveKey && !fullScreenEnabled
|
||||
&& rows > MMMinRows && cols > MMMinColumns) {
|
||||
// HACK! If tabline is visible then window will look about one line
|
||||
// higher than it actually is so increment rows by one before
|
||||
// autosaving dimension so that the approximate total window height is
|
||||
// autosaved. This is particularly important when window is maximized
|
||||
// vertically; if we don't add a row here a new window will appear to
|
||||
// not be tall enough when the first window is showing the tabline.
|
||||
// A negative side-effect of this is that the window will redraw on
|
||||
// startup if the window is too tall to fit on screen (which happens
|
||||
// for example if 'showtabline=2').
|
||||
// TODO: Store window pixel dimensions instead of rows/columns?
|
||||
int autosaveRows = rows;
|
||||
if (![[vimView tabBarControl] isHidden])
|
||||
++autosaveRows;
|
||||
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[ud setInteger:autosaveRows forKey:MMAutosaveRowsKey];
|
||||
[ud setInteger:cols forKey:MMAutosaveColumnsKey];
|
||||
[ud synchronize];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)zoomWithRows:(int)rows columns:(int)cols state:(int)state
|
||||
@@ -352,12 +429,12 @@
|
||||
return;
|
||||
|
||||
[decoratedWindow setTitle:title];
|
||||
if (fullscreenEnabled) {
|
||||
[fullscreenWindow setTitle:title];
|
||||
if (fullScreenWindow) {
|
||||
[fullScreenWindow setTitle:title];
|
||||
|
||||
// NOTE: Cocoa does not update the "Window" menu for borderless windows
|
||||
// so we have to do it manually.
|
||||
[NSApp changeWindowsItem:fullscreenWindow title:title filename:NO];
|
||||
[NSApp changeWindowsItem:fullScreenWindow title:title filename:NO];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -372,12 +449,17 @@
|
||||
filename = @"";
|
||||
|
||||
[decoratedWindow setRepresentedFilename:filename];
|
||||
[fullscreenWindow setRepresentedFilename:filename];
|
||||
[fullScreenWindow setRepresentedFilename:filename];
|
||||
}
|
||||
|
||||
- (void)setToolbar:(NSToolbar *)toolbar
|
||||
- (void)setToolbar:(NSToolbar *)theToolbar
|
||||
{
|
||||
// The full-screen window has no toolbar.
|
||||
if (theToolbar != toolbar) {
|
||||
[toolbar release];
|
||||
toolbar = [theToolbar retain];
|
||||
}
|
||||
|
||||
// NOTE: Toolbar must be set here or it won't work to show it later.
|
||||
[decoratedWindow setToolbar:toolbar];
|
||||
|
||||
// HACK! Redirect the pill button so that we can ask Vim to hide the
|
||||
@@ -399,6 +481,7 @@
|
||||
{
|
||||
BOOL scrollbarHidden = [vimView destroyScrollbarWithIdentifier:ident];
|
||||
shouldResizeVimView = shouldResizeVimView || scrollbarHidden;
|
||||
shouldMaximizeWindow = shouldMaximizeWindow || scrollbarHidden;
|
||||
|
||||
return scrollbarHidden;
|
||||
}
|
||||
@@ -408,6 +491,7 @@
|
||||
BOOL scrollbarToggled = [vimView showScrollbarWithIdentifier:ident
|
||||
state:visible];
|
||||
shouldResizeVimView = shouldResizeVimView || scrollbarToggled;
|
||||
shouldMaximizeWindow = shouldMaximizeWindow || scrollbarToggled;
|
||||
|
||||
return scrollbarToggled;
|
||||
}
|
||||
@@ -429,8 +513,8 @@
|
||||
// flag on the window here (should be faster if the window is opaque).
|
||||
BOOL isOpaque = [back alphaComponent] == 1.0f;
|
||||
[decoratedWindow setOpaque:isOpaque];
|
||||
if (fullscreenEnabled)
|
||||
[fullscreenWindow setOpaque:isOpaque];
|
||||
if (fullScreenWindow)
|
||||
[fullScreenWindow setOpaque:isOpaque];
|
||||
|
||||
[vimView setDefaultColorsBackground:back foreground:fore];
|
||||
}
|
||||
@@ -440,6 +524,7 @@
|
||||
[[NSFontManager sharedFontManager] setSelectedFont:font isMultiple:NO];
|
||||
[[vimView textView] setFont:font];
|
||||
[self updateResizeConstraints];
|
||||
shouldMaximizeWindow = YES;
|
||||
}
|
||||
|
||||
- (void)setWideFont:(NSFont *)font
|
||||
@@ -469,38 +554,43 @@
|
||||
if (windowPresented && shouldResizeVimView) {
|
||||
shouldResizeVimView = NO;
|
||||
|
||||
NSSize originalSize = [vimView frame].size;
|
||||
NSSize contentSize = [vimView desiredSize];
|
||||
contentSize = [self constrainContentSizeToScreenSize:contentSize];
|
||||
int rows = 0, cols = 0;
|
||||
contentSize = [vimView constrainRows:&rows columns:&cols
|
||||
toSize:contentSize];
|
||||
[vimView setFrameSize:contentSize];
|
||||
// Make sure full-screen window stays maximized (e.g. when scrollbar or
|
||||
// tabline is hidden) according to 'fuopt'.
|
||||
|
||||
if (fullscreenEnabled) {
|
||||
// NOTE! Don't mark the fullscreen content view as needing an
|
||||
// update unless absolutely necessary since when it is updated the
|
||||
// entire screen is cleared. This may cause some parts of the Vim
|
||||
// view to be cleared but not redrawn since Vim does not realize
|
||||
// that we've erased part of the view.
|
||||
if (!NSEqualSizes(originalSize, contentSize)) {
|
||||
[[fullscreenWindow contentView] setNeedsDisplay:YES];
|
||||
[fullscreenWindow centerView];
|
||||
}
|
||||
} else {
|
||||
[self resizeWindowToFitContentSize:contentSize
|
||||
keepOnScreen:keepOnScreen];
|
||||
BOOL didMaximize = NO;
|
||||
if (shouldMaximizeWindow && fullScreenEnabled &&
|
||||
(fullScreenOptions & (FUOPT_MAXVERT|FUOPT_MAXHORZ)) != 0)
|
||||
didMaximize = [self maximizeWindow:fullScreenOptions];
|
||||
|
||||
if (windowAutosaveKey && rows > 0 && cols > 0) {
|
||||
// Autosave rows and columns now that they should have been
|
||||
// constrained to fit on screen. We only do this for the
|
||||
// window which also autosaves window position and we avoid
|
||||
// autosaving when in fullscreen since the rows usually won't
|
||||
// fit when in windowed mode.
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[ud setInteger:rows forKey:MMAutosaveRowsKey];
|
||||
[ud setInteger:cols forKey:MMAutosaveColumnsKey];
|
||||
[ud synchronize];
|
||||
shouldMaximizeWindow = NO;
|
||||
|
||||
// Resize Vim view and window, but don't do this now if the window was
|
||||
// just reszied because this would make the window "jump" unpleasantly.
|
||||
// Instead wait for Vim to respond to the resize message and do the
|
||||
// resizing then.
|
||||
// TODO: What if the resize message fails to make it back?
|
||||
if (!didMaximize) {
|
||||
NSSize originalSize = [vimView frame].size;
|
||||
NSSize contentSize = [vimView desiredSize];
|
||||
contentSize = [self constrainContentSizeToScreenSize:contentSize];
|
||||
int rows = 0, cols = 0;
|
||||
contentSize = [vimView constrainRows:&rows columns:&cols
|
||||
toSize:contentSize];
|
||||
[vimView setFrameSize:contentSize];
|
||||
|
||||
if (fullScreenWindow) {
|
||||
// NOTE! Don't mark the full-screen content view as needing an
|
||||
// update unless absolutely necessary since when it is updated
|
||||
// the entire screen is cleared. This may cause some parts of
|
||||
// the Vim view to be cleared but not redrawn since Vim does
|
||||
// not realize that we've erased part of the view.
|
||||
if (!NSEqualSizes(originalSize, contentSize)) {
|
||||
[[fullScreenWindow contentView] setNeedsDisplay:YES];
|
||||
[fullScreenWindow centerView];
|
||||
}
|
||||
} else {
|
||||
[self resizeWindowToFitContentSize:contentSize
|
||||
keepOnScreen:keepOnScreen];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -511,30 +601,12 @@
|
||||
- (void)showTabBar:(BOOL)on
|
||||
{
|
||||
[[vimView tabBarControl] setHidden:!on];
|
||||
|
||||
// Showing the tabline may result in the tabline separator being hidden or
|
||||
// shown; this does not apply to full-screen mode.
|
||||
if (!on) {
|
||||
NSToolbar *toolbar = [decoratedWindow toolbar];
|
||||
if (([decoratedWindow styleMask] & NSTexturedBackgroundWindowMask)
|
||||
== 0) {
|
||||
[self hideTablineSeparator:![toolbar isVisible]];
|
||||
} else {
|
||||
[self hideTablineSeparator:NO];
|
||||
}
|
||||
} else {
|
||||
if (([decoratedWindow styleMask] & NSTexturedBackgroundWindowMask)
|
||||
== 0) {
|
||||
[self hideTablineSeparator:on];
|
||||
} else {
|
||||
[self hideTablineSeparator:YES];
|
||||
}
|
||||
}
|
||||
[self updateTablineSeparator];
|
||||
shouldMaximizeWindow = YES;
|
||||
}
|
||||
|
||||
- (void)showToolbar:(BOOL)on size:(int)size mode:(int)mode
|
||||
{
|
||||
NSToolbar *toolbar = [decoratedWindow toolbar];
|
||||
if (!toolbar) return;
|
||||
|
||||
[toolbar setSizeMode:size];
|
||||
@@ -561,7 +633,7 @@
|
||||
{
|
||||
if (vimView && [vimView textView]) {
|
||||
[[vimView textView] setLinespace:(float)linespace];
|
||||
shouldResizeVimView = YES;
|
||||
shouldMaximizeWindow = shouldResizeVimView = YES;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -633,58 +705,95 @@
|
||||
}
|
||||
}
|
||||
|
||||
- (void)enterFullscreen:(int)fuoptions backgroundColor:(NSColor *)back
|
||||
- (void)enterFullScreen:(int)fuoptions backgroundColor:(NSColor *)back
|
||||
{
|
||||
if (fullscreenEnabled) return;
|
||||
if (fullScreenEnabled) return;
|
||||
|
||||
// fullscreenWindow could be nil here if this is called multiple times
|
||||
// during startup.
|
||||
[fullscreenWindow release];
|
||||
BOOL useNativeFullScreen = [[NSUserDefaults standardUserDefaults]
|
||||
boolForKey:MMNativeFullScreenKey];
|
||||
// Make sure user is not trying to use native full-screen on systems that
|
||||
// do not support it.
|
||||
if (![NSWindow instancesRespondToSelector:@selector(toggleFullScreen:)])
|
||||
useNativeFullScreen = NO;
|
||||
|
||||
fullscreenWindow = [[MMFullscreenWindow alloc]
|
||||
initWithWindow:decoratedWindow view:vimView backgroundColor:back];
|
||||
[fullscreenWindow setOptions:fuoptions];
|
||||
[fullscreenWindow setRepresentedFilename:
|
||||
[decoratedWindow representedFilename]];
|
||||
|
||||
// NOTE: Do not enter full screen until the window has been presented since
|
||||
// we don't actually know which screen to use before then.
|
||||
if (windowPresented) {
|
||||
[fullscreenWindow enterFullscreen];
|
||||
fullscreenEnabled = YES;
|
||||
|
||||
// The resize handle disappears so the vim view needs to update the
|
||||
// scrollbars.
|
||||
shouldResizeVimView = YES;
|
||||
fullScreenOptions = fuoptions;
|
||||
if (useNativeFullScreen) {
|
||||
// Enter native full-screen mode. Only supported on Mac OS X 10.7+.
|
||||
if (windowPresented) {
|
||||
[self enterNativeFullScreen];
|
||||
} else {
|
||||
delayEnterFullScreen = YES;
|
||||
}
|
||||
} else {
|
||||
ASLogDebug(@"Delay enter full screen");
|
||||
// Enter custom full-screen mode. Always supported.
|
||||
ASLogInfo(@"Enter custom full-screen");
|
||||
|
||||
// fullScreenWindow could be non-nil here if this is called multiple
|
||||
// times during startup.
|
||||
[fullScreenWindow release];
|
||||
|
||||
fullScreenWindow = [[MMFullScreenWindow alloc]
|
||||
initWithWindow:decoratedWindow view:vimView backgroundColor:back];
|
||||
[fullScreenWindow setOptions:fuoptions];
|
||||
[fullScreenWindow setRepresentedFilename:
|
||||
[decoratedWindow representedFilename]];
|
||||
|
||||
// NOTE: Do not enter full-screen until the window has been presented
|
||||
// since we don't actually know which screen to use before then. (The
|
||||
// custom full-screen can appear on any screen, as opposed to native
|
||||
// full-screen which always uses the main screen.)
|
||||
if (windowPresented) {
|
||||
[fullScreenWindow enterFullScreen];
|
||||
fullScreenEnabled = YES;
|
||||
|
||||
// The resize handle disappears so the vim view needs to update the
|
||||
// scrollbars.
|
||||
shouldResizeVimView = YES;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (void)leaveFullscreen
|
||||
- (void)leaveFullScreen
|
||||
{
|
||||
if (!fullscreenEnabled) return;
|
||||
if (!fullScreenEnabled) return;
|
||||
|
||||
fullscreenEnabled = NO;
|
||||
[fullscreenWindow leaveFullscreen];
|
||||
[fullscreenWindow release];
|
||||
fullscreenWindow = nil;
|
||||
ASLogInfo(@"Exit full-screen");
|
||||
|
||||
// The vim view may be too large to fit the screen, so update it.
|
||||
shouldResizeVimView = YES;
|
||||
fullScreenEnabled = NO;
|
||||
if (fullScreenWindow) {
|
||||
// Using custom full-screen
|
||||
[fullScreenWindow leaveFullScreen];
|
||||
[fullScreenWindow release];
|
||||
fullScreenWindow = nil;
|
||||
|
||||
// The vim view may be too large to fit the screen, so update it.
|
||||
shouldResizeVimView = YES;
|
||||
} else {
|
||||
// Using native full-screen
|
||||
// NOTE: fullScreenEnabled is used to detect if we enter full-screen
|
||||
// programatically and so must be set before calling
|
||||
// realToggleFullScreen:.
|
||||
NSParameterAssert(fullScreenEnabled == NO);
|
||||
[decoratedWindow realToggleFullScreen:self];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)setFullscreenBackgroundColor:(NSColor *)back
|
||||
- (void)setFullScreenBackgroundColor:(NSColor *)back
|
||||
{
|
||||
if (fullscreenWindow)
|
||||
[fullscreenWindow setBackgroundColor:back];
|
||||
if (fullScreenWindow)
|
||||
[fullScreenWindow setBackgroundColor:back];
|
||||
}
|
||||
|
||||
- (void)invFullScreen:(id)sender
|
||||
{
|
||||
[vimController addVimInput:@"<C-\\><C-N>:set invfu<CR>"];
|
||||
}
|
||||
|
||||
- (void)setBufferModified:(BOOL)mod
|
||||
{
|
||||
// NOTE: We only set the document edited flag on the decorated window since
|
||||
// the full-screen window has no close button anyway. (It also saves us
|
||||
// from keeping track of the flag in two different places.)
|
||||
// the custom full-screen window has no close button anyway. (It also
|
||||
// saves us from keeping track of the flag in two different places.)
|
||||
[decoratedWindow setDocumentEdited:mod];
|
||||
}
|
||||
|
||||
@@ -855,7 +964,7 @@
|
||||
if (!setupDone)
|
||||
return;
|
||||
|
||||
if (fullscreenEnabled) {
|
||||
if (fullScreenEnabled) {
|
||||
// NOTE: The full-screen is not supposed to be able to be moved. If we
|
||||
// do get here while in full-screen something unexpected happened (e.g.
|
||||
// the full-screen window was on an external display that got
|
||||
@@ -884,7 +993,7 @@
|
||||
|
||||
- (void)windowDidResize:(id)sender
|
||||
{
|
||||
if (!setupDone || fullscreenEnabled) return;
|
||||
if (!setupDone || fullScreenEnabled) return;
|
||||
|
||||
// NOTE: Since we have no control over when the window may resize (Cocoa
|
||||
// may resize automatically) we simply set the view to fill the entire
|
||||
@@ -994,6 +1103,150 @@
|
||||
return NO;
|
||||
}
|
||||
|
||||
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
|
||||
// -- Full-screen delegate ---------------------------------------------------
|
||||
|
||||
- (NSApplicationPresentationOptions)window:(NSWindow *)window
|
||||
willUseFullScreenPresentationOptions:(NSApplicationPresentationOptions)opt
|
||||
{
|
||||
return opt | NSApplicationPresentationAutoHideToolbar;
|
||||
}
|
||||
|
||||
- (NSArray *)customWindowsToEnterFullScreenForWindow:(NSWindow *)window
|
||||
{
|
||||
return [NSArray arrayWithObject:decoratedWindow];
|
||||
}
|
||||
|
||||
- (void)window:(NSWindow *)window
|
||||
startCustomAnimationToEnterFullScreenWithDuration:(NSTimeInterval)duration
|
||||
{
|
||||
// Fade out window, remove title bar and maximize, then fade back in.
|
||||
// (There is a small delay before window is maximized but usually this is
|
||||
// not noticeable on a relatively modern Mac.)
|
||||
[NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
|
||||
[context setDuration:0.5*duration];
|
||||
[[window animator] setAlphaValue:0];
|
||||
} completionHandler:^{
|
||||
[window setStyleMask:([window styleMask] | NSFullScreenWindowMask)];
|
||||
[[vimView tabBarControl] setStyleNamed:@"Unified"];
|
||||
[self updateTablineSeparator];
|
||||
[self maximizeWindow:fullScreenOptions];
|
||||
|
||||
[NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
|
||||
[context setDuration:0.5*duration];
|
||||
[[window animator] setAlphaValue:1];
|
||||
} completionHandler:^{
|
||||
// Do nothing
|
||||
}];
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)windowWillEnterFullScreen:(NSNotification *)notification
|
||||
{
|
||||
// Store window frame and use it when exiting full-screen.
|
||||
preFullScreenFrame = [decoratedWindow frame];
|
||||
|
||||
// ASSUMPTION: fullScreenEnabled always reflects the state of Vim's 'fu'.
|
||||
if (!fullScreenEnabled) {
|
||||
ASLogDebug(@"Full-screen out of sync, tell Vim to set 'fu'");
|
||||
// NOTE: If we get here it means that Cocoa has somehow entered
|
||||
// full-screen without us getting to set the 'fu' option first, so Vim
|
||||
// and the GUI are out of sync. The following code (eventually) gets
|
||||
// them back into sync. A problem is that the full-screen options have
|
||||
// not been set, so we have to cache that state and grab it here.
|
||||
fullScreenOptions = [[vimController objectForVimStateKey:
|
||||
@"fullScreenOptions"] intValue];
|
||||
fullScreenEnabled = YES;
|
||||
[self invFullScreen:self];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)windowDidFailToEnterFullScreen:(NSWindow *)window
|
||||
{
|
||||
// NOTE: This message can be called without
|
||||
// window:startCustomAnimationToEnterFullScreenWithDuration: ever having
|
||||
// been called so any state to store before entering full-screen must be
|
||||
// stored in windowWillEnterFullScreen: which always gets called.
|
||||
ASLogNotice(@"Failed to ENTER full-screen, restoring window frame...");
|
||||
|
||||
fullScreenEnabled = NO;
|
||||
[window setAlphaValue:1];
|
||||
[window setStyleMask:([window styleMask] & ~NSFullScreenWindowMask)];
|
||||
[[vimView tabBarControl] setStyleNamed:@"Metal"];
|
||||
[self updateTablineSeparator];
|
||||
[window setFrame:preFullScreenFrame display:YES];
|
||||
}
|
||||
|
||||
- (NSArray *)customWindowsToExitFullScreenForWindow:(NSWindow *)window
|
||||
{
|
||||
return [NSArray arrayWithObject:decoratedWindow];
|
||||
}
|
||||
|
||||
- (void)window:(NSWindow *)window
|
||||
startCustomAnimationToExitFullScreenWithDuration:(NSTimeInterval)duration
|
||||
{
|
||||
if (!setupDone) {
|
||||
// HACK! The window has closed but Cocoa still brings it back to life
|
||||
// and shows a grey box the size of the window unless we explicitly
|
||||
// hide it by setting its alpha to 0 here.
|
||||
[window setAlphaValue:0];
|
||||
return;
|
||||
}
|
||||
|
||||
// Fade out window, add back title bar and restore window frame, then fade
|
||||
// back in. (There is a small delay before window contents is drawn after
|
||||
// the window frame is set but usually this is not noticeable on a
|
||||
// relatively modern Mac.)
|
||||
[NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
|
||||
[context setDuration:0.5*duration];
|
||||
[[window animator] setAlphaValue:0];
|
||||
} completionHandler:^{
|
||||
[window setStyleMask:([window styleMask] & ~NSFullScreenWindowMask)];
|
||||
[[vimView tabBarControl] setStyleNamed:@"Metal"];
|
||||
[self updateTablineSeparator];
|
||||
[window setFrame:preFullScreenFrame display:YES];
|
||||
|
||||
[NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
|
||||
[context setDuration:0.5*duration];
|
||||
[[window animator] setAlphaValue:1];
|
||||
} completionHandler:^{
|
||||
// Do nothing
|
||||
}];
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)windowWillExitFullScreen:(NSNotification *)notification
|
||||
{
|
||||
// ASSUMPTION: fullScreenEnabled always reflects the state of Vim's 'fu'.
|
||||
if (fullScreenEnabled) {
|
||||
ASLogDebug(@"Full-screen out of sync, tell Vim to clear 'fu'");
|
||||
// NOTE: If we get here it means that Cocoa has somehow exited
|
||||
// full-screen without us getting to clear the 'fu' option first, so
|
||||
// Vim and the GUI are out of sync. The following code (eventually)
|
||||
// gets them back into sync.
|
||||
fullScreenEnabled = NO;
|
||||
[self invFullScreen:self];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)windowDidFailToExitFullScreen:(NSWindow *)window
|
||||
{
|
||||
// TODO: Is this the correct way to deal with this message? Are we still
|
||||
// in full-screen at this point?
|
||||
ASLogNotice(@"Failed to EXIT full-screen, maximizing window...");
|
||||
|
||||
fullScreenEnabled = YES;
|
||||
[window setAlphaValue:1];
|
||||
[window setStyleMask:([window styleMask] | NSFullScreenWindowMask)];
|
||||
[[vimView tabBarControl] setStyleNamed:@"Unified"];
|
||||
[self updateTablineSeparator];
|
||||
[self maximizeWindow:fullScreenOptions];
|
||||
}
|
||||
|
||||
#endif // (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
|
||||
|
||||
@end // MMWindowController
|
||||
|
||||
|
||||
@@ -1029,13 +1282,13 @@
|
||||
shouldRestoreUserTopLeft = NO;
|
||||
}
|
||||
|
||||
if (onScreen && [decoratedWindow screen]) {
|
||||
NSScreen *screen = [decoratedWindow screen];
|
||||
if (onScreen && screen) {
|
||||
// Ensure that the window fits inside the visible part of the screen.
|
||||
// If there are more than one screen the window will be moved to fit
|
||||
// entirely in the screen that most of it occupies.
|
||||
// NOTE: Not called in full-screen mode so use "visibleFrame' instead
|
||||
// of "frame".
|
||||
NSRect maxFrame = [[decoratedWindow screen] visibleFrame];
|
||||
NSRect maxFrame = fullScreenEnabled ? [screen frame]
|
||||
: [screen visibleFrame];
|
||||
maxFrame = [self constrainFrame:maxFrame];
|
||||
|
||||
if (newFrame.size.width > maxFrame.size.width) {
|
||||
@@ -1057,6 +1310,16 @@
|
||||
newFrame.origin.x = NSMaxX(maxFrame) - newFrame.size.width;
|
||||
}
|
||||
|
||||
if (fullScreenEnabled && screen) {
|
||||
// Keep window centered when in native full-screen.
|
||||
NSRect screenFrame = [screen frame];
|
||||
newFrame.origin.y = screenFrame.origin.y +
|
||||
round(0.5*(screenFrame.size.height - newFrame.size.height));
|
||||
newFrame.origin.x = screenFrame.origin.x +
|
||||
round(0.5*(screenFrame.size.width - newFrame.size.width));
|
||||
}
|
||||
|
||||
ASLogDebug(@"Set window frame: %@", NSStringFromRect(newFrame));
|
||||
[decoratedWindow setFrame:newFrame display:YES];
|
||||
|
||||
NSPoint oldTopLeft = { frame.origin.x, NSMaxY(frame) };
|
||||
@@ -1083,7 +1346,7 @@
|
||||
// NOTE: This may be called in both windowed and full-screen mode. The
|
||||
// "visibleFrame" method does not overlap menu and dock so should not be
|
||||
// used in full-screen.
|
||||
NSRect screenRect = fullscreenEnabled ? [[win screen] frame]
|
||||
NSRect screenRect = fullScreenEnabled ? [[win screen] frame]
|
||||
: [[win screen] visibleFrame];
|
||||
NSRect rect = [win contentRectForFrameRect:screenRect];
|
||||
|
||||
@@ -1147,6 +1410,22 @@
|
||||
return reply;
|
||||
}
|
||||
|
||||
- (void)updateTablineSeparator
|
||||
{
|
||||
BOOL tabBarVisible = ![[vimView tabBarControl] isHidden];
|
||||
BOOL toolbarHidden = [decoratedWindow toolbar] == nil;
|
||||
BOOL windowTextured = ([decoratedWindow styleMask] &
|
||||
NSTexturedBackgroundWindowMask) != 0;
|
||||
BOOL hideSeparator = NO;
|
||||
|
||||
if (fullScreenEnabled || tabBarVisible)
|
||||
hideSeparator = YES;
|
||||
else
|
||||
hideSeparator = toolbarHidden && !windowTextured;
|
||||
|
||||
[self hideTablineSeparator:hideSeparator];
|
||||
}
|
||||
|
||||
- (void)hideTablineSeparator:(BOOL)hide
|
||||
{
|
||||
// The full-screen window has no tabline separator so we operate on
|
||||
@@ -1203,28 +1482,95 @@
|
||||
|
||||
- (void)updateToolbar
|
||||
{
|
||||
NSToolbar *toolbar = [decoratedWindow toolbar];
|
||||
if (nil == toolbar || 0 == updateToolbarFlag) return;
|
||||
|
||||
// Positive flag shows toolbar, negative hides it.
|
||||
BOOL on = updateToolbarFlag > 0 ? YES : NO;
|
||||
[toolbar setVisible:on];
|
||||
|
||||
if (([decoratedWindow styleMask] & NSTexturedBackgroundWindowMask) == 0) {
|
||||
if (!on) {
|
||||
[self hideTablineSeparator:YES];
|
||||
} else {
|
||||
[self hideTablineSeparator:![[vimView tabBarControl] isHidden]];
|
||||
}
|
||||
} else {
|
||||
// Textured windows don't have a line below there title bar, so we
|
||||
// need the separator in this case as well. In fact, the only case
|
||||
// where we don't need the separator is when the tab bar control
|
||||
// is visible (because it brings its own separator).
|
||||
[self hideTablineSeparator:![[vimView tabBarControl] isHidden]];
|
||||
}
|
||||
[decoratedWindow setToolbar:(on ? toolbar : nil)];
|
||||
[self updateTablineSeparator];
|
||||
|
||||
updateToolbarFlag = 0;
|
||||
}
|
||||
|
||||
- (BOOL)maximizeWindow:(int)options
|
||||
{
|
||||
int currRows, currColumns;
|
||||
[[vimView textView] getMaxRows:&currRows columns:&currColumns];
|
||||
|
||||
// NOTE: Do not use [NSScreen visibleFrame] when determining the screen
|
||||
// size since it compensates for menu and dock.
|
||||
int maxRows, maxColumns;
|
||||
NSSize size = [[NSScreen mainScreen] frame].size;
|
||||
[vimView constrainRows:&maxRows columns:&maxColumns toSize:size];
|
||||
|
||||
ASLogDebug(@"Window dimensions max: %dx%d current: %dx%d",
|
||||
maxRows, maxColumns, currRows, currColumns);
|
||||
|
||||
// Compute current fu size
|
||||
int fuRows = currRows, fuColumns = currColumns;
|
||||
if (options & FUOPT_MAXVERT)
|
||||
fuRows = maxRows;
|
||||
if (options & FUOPT_MAXHORZ)
|
||||
fuColumns = maxColumns;
|
||||
|
||||
// If necessary, resize vim to target fu size
|
||||
if (currRows != fuRows || currColumns != fuColumns) {
|
||||
// The size sent here is queued and sent to vim when it's in
|
||||
// event processing mode again. Make sure to only send the values we
|
||||
// care about, as they override any changes that were made to 'lines'
|
||||
// and 'columns' after 'fu' was set but before the event loop is run.
|
||||
NSData *data = nil;
|
||||
int msgid = 0;
|
||||
if (currRows != fuRows && currColumns != fuColumns) {
|
||||
int newSize[2] = { fuRows, fuColumns };
|
||||
data = [NSData dataWithBytes:newSize length:2*sizeof(int)];
|
||||
msgid = SetTextDimensionsMsgID;
|
||||
} else if (currRows != fuRows) {
|
||||
data = [NSData dataWithBytes:&fuRows length:sizeof(int)];
|
||||
msgid = SetTextRowsMsgID;
|
||||
} else if (currColumns != fuColumns) {
|
||||
data = [NSData dataWithBytes:&fuColumns length:sizeof(int)];
|
||||
msgid = SetTextColumnsMsgID;
|
||||
}
|
||||
NSParameterAssert(data != nil && msgid != 0);
|
||||
|
||||
ASLogDebug(@"%s: %dx%d", MessageStrings[msgid], fuRows, fuColumns);
|
||||
MMVimController *vc = [self vimController];
|
||||
[vc sendMessage:msgid data:data];
|
||||
[[vimView textView] setMaxRows:fuRows columns:fuColumns];
|
||||
|
||||
// Indicate that window was resized
|
||||
return YES;
|
||||
}
|
||||
|
||||
// Indicate that window was not resized
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (void)applicationDidChangeScreenParameters:(NSNotification *)notification
|
||||
{
|
||||
if (fullScreenWindow) {
|
||||
[fullScreenWindow applicationDidChangeScreenParameters:notification];
|
||||
} else if (fullScreenEnabled) {
|
||||
ASLogDebug(@"Re-maximizing full-screen window...");
|
||||
[self maximizeWindow:fullScreenOptions];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)enterNativeFullScreen
|
||||
{
|
||||
if (fullScreenEnabled)
|
||||
return;
|
||||
|
||||
ASLogInfo(@"Enter native full-screen");
|
||||
|
||||
fullScreenEnabled = YES;
|
||||
|
||||
// NOTE: fullScreenEnabled is used to detect if we enter full-screen
|
||||
// programatically and so must be set before calling realToggleFullScreen:.
|
||||
NSParameterAssert(fullScreenEnabled == YES);
|
||||
[decoratedWindow realToggleFullScreen:self];
|
||||
}
|
||||
|
||||
@end // MMWindowController (Private)
|
||||
|
||||
|
||||
+6
-3
@@ -22,6 +22,9 @@
|
||||
#ifndef MAC_OS_X_VERSION_10_6
|
||||
# define MAC_OS_X_VERSION_10_6 1060
|
||||
#endif
|
||||
#ifndef MAC_OS_X_VERSION_10_7
|
||||
# define MAC_OS_X_VERSION_10_7 1070
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
@@ -156,8 +159,8 @@ enum {
|
||||
AdjustLinespaceMsgID,
|
||||
ActivateMsgID,
|
||||
SetServerNameMsgID,
|
||||
EnterFullscreenMsgID,
|
||||
LeaveFullscreenMsgID,
|
||||
EnterFullScreenMsgID,
|
||||
LeaveFullScreenMsgID,
|
||||
SetBuffersModifiedMsgID,
|
||||
AddInputMsgID,
|
||||
SetPreEditPositionMsgID,
|
||||
@@ -169,7 +172,7 @@ enum {
|
||||
SetDocumentFilenameMsgID,
|
||||
OpenWithArgumentsMsgID,
|
||||
CloseWindowMsgID,
|
||||
SetFullscreenColorMsgID,
|
||||
SetFullScreenColorMsgID,
|
||||
ShowFindReplaceDialogMsgID,
|
||||
FindReplaceMsgID,
|
||||
ActivateKeyScriptMsgID,
|
||||
|
||||
+3
-3
@@ -66,8 +66,8 @@ char *MessageStrings[] =
|
||||
"AdjustLinespaceMsgID",
|
||||
"ActivateMsgID",
|
||||
"SetServerNameMsgID",
|
||||
"EnterFullscreenMsgID",
|
||||
"LeaveFullscreenMsgID",
|
||||
"EnterFullScreenMsgID",
|
||||
"LeaveFullScreenMsgID",
|
||||
"SetBuffersModifiedMsgID",
|
||||
"AddInputMsgID",
|
||||
"SetPreEditPositionMsgID",
|
||||
@@ -79,7 +79,7 @@ char *MessageStrings[] =
|
||||
"SetDocumentFilenameMsgID",
|
||||
"OpenWithArgumentsMsgID",
|
||||
"CloseWindowMsgID",
|
||||
"SetFullscreenColorMsgID",
|
||||
"SetFullScreenColorMsgID",
|
||||
"ShowFindReplaceDialogMsgID",
|
||||
"FindReplaceMsgID",
|
||||
"ActivateKeyScriptMsgID",
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
1D493DBA0C52534300AB718C /* PSMTabBarControl.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 1D493DB90C52533B00AB718C /* PSMTabBarControl.framework */; };
|
||||
1D60088B0E96A0B2003763F0 /* MMFindReplaceController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D60088A0E96A0B2003763F0 /* MMFindReplaceController.m */; };
|
||||
1D80591F0E1185EA001699D1 /* Miscellaneous.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D80591D0E1185EA001699D1 /* Miscellaneous.m */; };
|
||||
1D80FBD40CBBD3B700102A1C /* MMFullscreenWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D80FBD00CBBD3B700102A1C /* MMFullscreenWindow.m */; };
|
||||
1D80FBD40CBBD3B700102A1C /* MMFullScreenWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D80FBD00CBBD3B700102A1C /* MMFullScreenWindow.m */; };
|
||||
1D80FBD60CBBD3B700102A1C /* MMVimView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D80FBD20CBBD3B700102A1C /* MMVimView.m */; };
|
||||
1D8B5A53104AF9FF002E59D5 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D8B5A52104AF9FF002E59D5 /* Carbon.framework */; };
|
||||
1D8BEA74104992290069B072 /* FindAndReplace.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1D8BEA73104992290069B072 /* FindAndReplace.nib */; };
|
||||
@@ -159,8 +159,8 @@
|
||||
1D60088A0E96A0B2003763F0 /* MMFindReplaceController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MMFindReplaceController.m; sourceTree = "<group>"; };
|
||||
1D80591D0E1185EA001699D1 /* Miscellaneous.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Miscellaneous.m; sourceTree = "<group>"; };
|
||||
1D8059220E118663001699D1 /* Miscellaneous.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Miscellaneous.h; sourceTree = "<group>"; };
|
||||
1D80FBCF0CBBD3B700102A1C /* MMFullscreenWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MMFullscreenWindow.h; sourceTree = "<group>"; };
|
||||
1D80FBD00CBBD3B700102A1C /* MMFullscreenWindow.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = MMFullscreenWindow.m; sourceTree = "<group>"; };
|
||||
1D80FBCF0CBBD3B700102A1C /* MMFullScreenWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MMFullScreenWindow.h; sourceTree = "<group>"; };
|
||||
1D80FBD00CBBD3B700102A1C /* MMFullScreenWindow.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = MMFullScreenWindow.m; sourceTree = "<group>"; };
|
||||
1D80FBD10CBBD3B700102A1C /* MMVimView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MMVimView.h; sourceTree = "<group>"; };
|
||||
1D80FBD20CBBD3B700102A1C /* MMVimView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = MMVimView.m; sourceTree = "<group>"; };
|
||||
1D8B5A52104AF9FF002E59D5 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
|
||||
@@ -227,13 +227,6 @@
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
0395AA980D76E86200881434 /* Edit in ODBEditor */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
);
|
||||
name = "Edit in ODBEditor";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
080E96DDFE201D6D7F000001 /* MacVim Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -254,8 +247,8 @@
|
||||
1DE9B94E0D341AB8008FEDD4 /* MMWindow.m */,
|
||||
1D9918460D299F9900A96335 /* MMAtsuiTextView.h */,
|
||||
1D9918470D299F9900A96335 /* MMAtsuiTextView.m */,
|
||||
1D80FBCF0CBBD3B700102A1C /* MMFullscreenWindow.h */,
|
||||
1D80FBD00CBBD3B700102A1C /* MMFullscreenWindow.m */,
|
||||
1D80FBCF0CBBD3B700102A1C /* MMFullScreenWindow.h */,
|
||||
1D80FBD00CBBD3B700102A1C /* MMFullScreenWindow.m */,
|
||||
1D80FBD10CBBD3B700102A1C /* MMVimView.h */,
|
||||
1D80FBD20CBBD3B700102A1C /* MMVimView.m */,
|
||||
1DD66ECB0C803D3600EBDAB3 /* MMApplication.h */,
|
||||
@@ -406,7 +399,6 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1D8B5A52104AF9FF002E59D5 /* Carbon.framework */,
|
||||
0395AA980D76E86200881434 /* Edit in ODBEditor */,
|
||||
1D493DB30C52533B00AB718C /* PSMTabBarControl.xcodeproj */,
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
|
||||
@@ -538,7 +530,7 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "# Clear deployment target, else the python script always thinks we're building on Tiger\nunset MACOSX_DEPLOYMENT_TARGET\n\n# Generate the icons (redirect stderr to ignore warnings)\ncd $PROJECT_DIR/icons/\nmake OUTDIR=$TARGET_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH 2> /dev/null\n";
|
||||
shellScript = "# Clear deployment target, else the python script always thinks we're building on Tiger\nunset MACOSX_DEPLOYMENT_TARGET\n\n# Generate the icons (redirect stderr to ignore warnings)\ncd \"$PROJECT_DIR\"/icons/\nmake OUTDIR=\"$TARGET_BUILD_DIR\"/$UNLOCALIZED_RESOURCES_FOLDER_PATH 2> /dev/null\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
@@ -557,7 +549,7 @@
|
||||
1D1474BC0C567A910038FA2B /* MMWindowController.m in Sources */,
|
||||
1D09AB420C6A4D520045497E /* MMTypesetter.m in Sources */,
|
||||
1DD66ECE0C803D3600EBDAB3 /* MMApplication.m in Sources */,
|
||||
1D80FBD40CBBD3B700102A1C /* MMFullscreenWindow.m in Sources */,
|
||||
1D80FBD40CBBD3B700102A1C /* MMFullScreenWindow.m in Sources */,
|
||||
1D80FBD60CBBD3B700102A1C /* MMVimView.m in Sources */,
|
||||
1D9918490D299F9900A96335 /* MMAtsuiTextView.m in Sources */,
|
||||
1DE9B9500D341AB8008FEDD4 /* MMWindow.m in Sources */,
|
||||
@@ -622,7 +614,7 @@
|
||||
buildSettings = {
|
||||
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = 59;
|
||||
CURRENT_PROJECT_VERSION = 63;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
|
||||
@@ -633,6 +625,7 @@
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_VERSION = "";
|
||||
GCC_WARN_PEDANTIC = NO;
|
||||
HEADER_SEARCH_PATHS = "";
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
@@ -652,7 +645,7 @@
|
||||
buildSettings = {
|
||||
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
||||
COPY_PHASE_STRIP = YES;
|
||||
CURRENT_PROJECT_VERSION = 59;
|
||||
CURRENT_PROJECT_VERSION = 63;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
|
||||
@@ -663,6 +656,7 @@
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_VERSION = "";
|
||||
HEADER_SEARCH_PATHS = "";
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
@@ -679,6 +673,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
||||
GCC_VERSION = 4.2;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
@@ -691,6 +686,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
||||
GCC_VERSION = 4.2;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
|
||||
@@ -53,6 +53,7 @@ extern NSString *MMLastWindowClosedBehaviorKey;
|
||||
extern NSString *MMUseInlineImKey;
|
||||
#endif // INCLUDE_OLD_IM_CODE
|
||||
extern NSString *MMSuppressTerminationAlertKey;
|
||||
extern NSString *MMNativeFullScreenKey;
|
||||
|
||||
|
||||
// Enum for MMUntitledWindowKey
|
||||
@@ -81,6 +82,15 @@ enum {
|
||||
|
||||
|
||||
|
||||
enum {
|
||||
// These values are chosen so that the min text view size is not too small
|
||||
// with the default font (they only affect resizing with the mouse, you can
|
||||
// still use e.g. ":set lines=2" to go below these values).
|
||||
MMMinRows = 4,
|
||||
MMMinColumns = 30
|
||||
};
|
||||
|
||||
|
||||
|
||||
@interface NSIndexSet (MMExtras)
|
||||
+ (id)indexSetWithVimList:(NSString *)list;
|
||||
|
||||
@@ -45,6 +45,7 @@ NSString *MMLastWindowClosedBehaviorKey = @"MMLastWindowClosedBehavior";
|
||||
NSString *MMUseInlineImKey = @"MMUseInlineIm";
|
||||
#endif // INCLUDE_OLD_IM_CODE
|
||||
NSString *MMSuppressTerminationAlertKey = @"MMSuppressTerminationAlert";
|
||||
NSString *MMNativeFullScreenKey = @"MMNativeFullScreen";
|
||||
|
||||
|
||||
|
||||
@@ -219,7 +220,7 @@ NSString *MMSuppressTerminationAlertKey = @"MMSuppressTerminationAlert";
|
||||
- (NSToolbarItem *)itemAtIndex:(NSUInteger)idx
|
||||
{
|
||||
NSArray *items = [self items];
|
||||
if (idx < 0 || idx >= [items count])
|
||||
if (idx >= [items count])
|
||||
return nil;
|
||||
|
||||
return [items objectAtIndex:idx];
|
||||
|
||||
@@ -417,7 +417,11 @@
|
||||
isa = PBXProject;
|
||||
buildConfigurationList = C056398B08A954F8003078D8 /* Build configuration list for PBXProject "PSMTabBarControl" */;
|
||||
compatibilityVersion = "Xcode 2.4";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = 0259C574FE90428111CA0C5A /* PSMTabBarControl */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
@@ -547,6 +551,7 @@
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h";
|
||||
GCC_VERSION = "";
|
||||
INFOPLIST_FILE = "PSMTabBarControlFramework-Info.plist";
|
||||
INSTALL_PATH = "@executable_path/../Frameworks";
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
@@ -568,6 +573,7 @@
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h";
|
||||
GCC_VERSION = "";
|
||||
INFOPLIST_FILE = "PSMTabBarControlFramework-Info.plist";
|
||||
INSTALL_PATH = "@executable_path/../Frameworks";
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
|
||||
@@ -418,6 +418,7 @@
|
||||
labelPosition += closeButtonSize.width + kPSMTabBarCellPadding;
|
||||
}
|
||||
|
||||
#if 0 // MacVim: disable this code. It is unused and calling 'content' on the represented object's identifier seems dangerous at best.
|
||||
// icon
|
||||
if([cell hasIcon]){
|
||||
NSRect iconRect = [self iconRectForTabCell:cell];
|
||||
@@ -430,7 +431,8 @@
|
||||
// scoot label over
|
||||
labelPosition += iconRect.size.width + kPSMTabBarCellPadding;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
// object counter
|
||||
if([cell count] > 0){
|
||||
[[NSColor colorWithCalibratedWhite:0.3 alpha:0.45] set];
|
||||
@@ -451,8 +453,7 @@
|
||||
counterStringRect.origin.y = myRect.origin.y + ((myRect.size.height - counterStringRect.size.height) / 2.0) + 0.5;
|
||||
[counterString drawInRect:counterStringRect];
|
||||
}
|
||||
|
||||
|
||||
|
||||
// label rect
|
||||
NSRect labelRect;
|
||||
labelRect.origin.x = labelPosition;
|
||||
|
||||
@@ -402,7 +402,8 @@ void MyNSDrawWindowBackground(NSRect rect)
|
||||
// scoot label over
|
||||
labelPosition += closeButtonSize.width + kPSMTabBarCellPadding;
|
||||
}
|
||||
|
||||
|
||||
#if 0 // MacVim: disable this code. It is unused and calling 'content' on the represented object's identifier seems dangerous at best.
|
||||
// icon
|
||||
if([cell hasIcon]){
|
||||
NSRect iconRect = [self iconRectForTabCell:cell];
|
||||
@@ -415,7 +416,8 @@ void MyNSDrawWindowBackground(NSRect rect)
|
||||
// scoot label over
|
||||
labelPosition += iconRect.size.width + kPSMTabBarCellPadding;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
// object counter
|
||||
if([cell count] > 0){
|
||||
[[NSColor colorWithCalibratedWhite:0.3 alpha:0.6] set];
|
||||
@@ -438,7 +440,7 @@ void MyNSDrawWindowBackground(NSRect rect)
|
||||
counterStringRect.origin.y = myRect.origin.y + ((myRect.size.height - counterStringRect.size.height) / 2.0) + 0.5;
|
||||
[counterString drawInRect:counterStringRect];
|
||||
}
|
||||
|
||||
|
||||
// label rect
|
||||
NSRect labelRect;
|
||||
labelRect.origin.x = labelPosition;
|
||||
|
||||
@@ -10,6 +10,14 @@
|
||||
|
||||
@implementation PSMRolloverButton
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[_usualImage release];
|
||||
[_rolloverImage release];
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
// the regular image
|
||||
- (void)setUsualImage:(NSImage *)newImage
|
||||
{
|
||||
|
||||
@@ -407,7 +407,7 @@
|
||||
[[cell indicator] setHidden:YES];
|
||||
if([item identifier] != nil){
|
||||
if([[item identifier] respondsToSelector:@selector(content)]){
|
||||
if([[[[cell representedObject] identifier] content] respondsToSelector:@selector(isProcessing)]){
|
||||
if([[[[cell representedObject] identifier] performSelector:@selector(content)] respondsToSelector:@selector(isProcessing)]){
|
||||
NSMutableDictionary *bindingOptions = [NSMutableDictionary dictionary];
|
||||
[bindingOptions setObject:NSNegateBooleanTransformerName forKey:@"NSValueTransformerName"];
|
||||
[[cell indicator] bind:@"animate" toObject:[item identifier] withKeyPath:@"selection.isProcessing" options:nil];
|
||||
@@ -421,7 +421,7 @@
|
||||
[cell setHasIcon:NO];
|
||||
if([item identifier] != nil){
|
||||
if([[item identifier] respondsToSelector:@selector(content)]){
|
||||
if([[[[cell representedObject] identifier] content] respondsToSelector:@selector(icon)]){
|
||||
if([[[[cell representedObject] identifier] performSelector:@selector(content)] respondsToSelector:@selector(icon)]){
|
||||
NSMutableDictionary *bindingOptions = [NSMutableDictionary dictionary];
|
||||
[bindingOptions setObject:NSIsNotNilTransformerName forKey:@"NSValueTransformerName"];
|
||||
[cell bind:@"hasIcon" toObject:[item identifier] withKeyPath:@"selection.icon" options:bindingOptions];
|
||||
@@ -434,7 +434,7 @@
|
||||
[cell setCount:0];
|
||||
if([item identifier] != nil){
|
||||
if([[item identifier] respondsToSelector:@selector(content)]){
|
||||
if([[[[cell representedObject] identifier] content] respondsToSelector:@selector(objectCount)]){
|
||||
if([[[[cell representedObject] identifier] performSelector:@selector(content)] respondsToSelector:@selector(objectCount)]){
|
||||
[cell bind:@"count" toObject:[item identifier] withKeyPath:@"selection.objectCount" options:nil];
|
||||
[[item identifier] addObserver:self forKeyPath:@"selection.objectCount" options:0 context:nil];
|
||||
}
|
||||
|
||||
@@ -398,7 +398,8 @@
|
||||
// scoot label over
|
||||
labelPosition += closeButtonSize.width + kPSMTabBarCellPadding;
|
||||
}
|
||||
|
||||
|
||||
#if 0 // MacVim: disable this code. It is unused and calling 'content' on the represented object's identifier seems dangerous at best.
|
||||
// icon
|
||||
if([cell hasIcon]){
|
||||
NSRect iconRect = [self iconRectForTabCell:cell];
|
||||
@@ -411,7 +412,8 @@
|
||||
// scoot label over
|
||||
labelPosition += iconRect.size.width + kPSMTabBarCellPadding;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
// object counter
|
||||
if([cell count] > 0){
|
||||
[[NSColor colorWithCalibratedWhite:0.3 alpha:0.6] set];
|
||||
@@ -433,7 +435,7 @@
|
||||
counterStringRect.origin.y = myRect.origin.y + ((myRect.size.height - counterStringRect.size.height) / 2.0) + 0.5;
|
||||
[counterString drawInRect:counterStringRect];
|
||||
}
|
||||
|
||||
|
||||
// label rect
|
||||
NSRect labelRect;
|
||||
labelRect.origin.x = labelPosition;
|
||||
|
||||
@@ -1675,14 +1675,14 @@ gui_mch_toggle_tearoffs(int enable)
|
||||
void
|
||||
gui_mch_enter_fullscreen(int fuoptions_flags, guicolor_T bg)
|
||||
{
|
||||
[[MMBackend sharedInstance] enterFullscreen:fuoptions_flags background:bg];
|
||||
[[MMBackend sharedInstance] enterFullScreen:fuoptions_flags background:bg];
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
gui_mch_leave_fullscreen()
|
||||
{
|
||||
[[MMBackend sharedInstance] leaveFullscreen];
|
||||
[[MMBackend sharedInstance] leaveFullScreen];
|
||||
}
|
||||
|
||||
|
||||
@@ -1699,7 +1699,7 @@ gui_mch_fuopt_update()
|
||||
bg = fuoptions_bgcolor;
|
||||
}
|
||||
|
||||
[[MMBackend sharedInstance] setFullscreenBackgroundColor:bg];
|
||||
[[MMBackend sharedInstance] setFullScreenBackgroundColor:bg];
|
||||
}
|
||||
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user