mirror of
https://github.com/sheerun/vim-polyglot.git
synced 2025-11-08 11:33:52 -05:00
Compare commits
138 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
25d2786cae | ||
|
|
1f1e821192 | ||
|
|
ae882e85f8 | ||
|
|
aec5e42bdb | ||
|
|
a0c79360ed | ||
|
|
2d3b20bc68 | ||
|
|
a6b0efd530 | ||
|
|
0de043adbc | ||
|
|
67fcbd2a86 | ||
|
|
c925c92217 | ||
|
|
852d25b307 | ||
|
|
4d8ff4eabc | ||
|
|
d6bc08610b | ||
|
|
c154d82557 | ||
|
|
cf1e53bc39 | ||
|
|
92ab75408d | ||
|
|
f977779693 | ||
|
|
4033ac02d0 | ||
|
|
9ab9275f66 | ||
|
|
1c80c4bb08 | ||
|
|
548653cafe | ||
|
|
ee6b1ea157 | ||
|
|
12db3dafc5 | ||
|
|
d1e95cbc98 | ||
|
|
7ffa793f19 | ||
|
|
4203435c48 | ||
|
|
271b63d717 | ||
|
|
acd7ce5950 | ||
|
|
f24fecc338 | ||
|
|
23913e0598 | ||
|
|
1c21231175 | ||
|
|
4541e98466 | ||
|
|
6cd2d5417d | ||
|
|
b7a30b1f1a | ||
|
|
6745c49110 | ||
|
|
1a97304cf6 | ||
|
|
d8eaa50aed | ||
|
|
8e26e6e963 | ||
|
|
676e9dd82e | ||
|
|
23af3f70da | ||
|
|
b79385fecc | ||
|
|
03dd22587a | ||
|
|
bbc6be1099 | ||
|
|
7f2e366334 | ||
|
|
04f868b94a | ||
|
|
4071c094c6 | ||
|
|
617b01a5b6 | ||
|
|
bd35da8e9c | ||
|
|
91da1ec2a5 | ||
|
|
964107c604 | ||
|
|
c0560d6199 | ||
|
|
15db2d7120 | ||
|
|
4935f02217 | ||
|
|
438d222b95 | ||
|
|
90b24287de | ||
|
|
5f1223fbc5 | ||
|
|
a59f644d49 | ||
|
|
33dd4b2741 | ||
|
|
d6866fcced | ||
|
|
7208e89a13 | ||
|
|
56a815be94 | ||
|
|
45273d44d4 | ||
|
|
e961fa8037 | ||
|
|
1b61c48d46 | ||
|
|
8f483aee0f | ||
|
|
b36260d015 | ||
|
|
6c198a3ca9 | ||
|
|
a4c9223257 | ||
|
|
d681cb59d3 | ||
|
|
0b50acdddf | ||
|
|
daa6fc6958 | ||
|
|
610f4c5701 | ||
|
|
f3833f5a39 | ||
|
|
fe26a3a7e6 | ||
|
|
548f7d672a | ||
|
|
10b28c4175 | ||
|
|
95bc6710a4 | ||
|
|
94f72a68c3 | ||
|
|
9b3b092d15 | ||
|
|
959a2ffa3d | ||
|
|
d51b8fd17e | ||
|
|
fa57320919 | ||
|
|
9a2b4f5cd8 | ||
|
|
f211f02d1e | ||
|
|
e45b23b6ee | ||
|
|
a0c5f3ee55 | ||
|
|
6b8c72637f | ||
|
|
d330fdc01b | ||
|
|
c225bf8826 | ||
|
|
20125ac3ac | ||
|
|
9f19823a30 | ||
|
|
56d5fc498b | ||
|
|
ab679f37dd | ||
|
|
ca95a47a93 | ||
|
|
a26bebbeb9 | ||
|
|
edd5ee63e6 | ||
|
|
8a255002df | ||
|
|
b2d556d384 | ||
|
|
30c1920e4f | ||
|
|
57cfac7ae3 | ||
|
|
085aad28a4 | ||
|
|
e108a087b4 | ||
|
|
b3257271db | ||
|
|
e9d8c39608 | ||
|
|
04e6a8a73c | ||
|
|
b6a2261cc2 | ||
|
|
811fe888a6 | ||
|
|
2b19388166 | ||
|
|
a531f6b104 | ||
|
|
90d87abd30 | ||
|
|
d6710f1b57 | ||
|
|
0db9bdbfd6 | ||
|
|
c069f0661a | ||
|
|
235a5631f9 | ||
|
|
edf1aa4a1c | ||
|
|
88bd82d6c9 | ||
|
|
2686fb60f4 | ||
|
|
9d92f10375 | ||
|
|
fc0b11afe1 | ||
|
|
0fcd056648 | ||
|
|
78cd7e48cb | ||
|
|
ba1305772d | ||
|
|
ff3cc42bf3 | ||
|
|
e69f9f91d9 | ||
|
|
c37e16fbbd | ||
|
|
d7873996b4 | ||
|
|
73cbf0269e | ||
|
|
0077bd5a31 | ||
|
|
e8c16931f9 | ||
|
|
752a647be1 | ||
|
|
97a0bdcef6 | ||
|
|
58f119c57f | ||
|
|
0ac0389039 | ||
|
|
4bf3f6c300 | ||
|
|
4a80e945ad | ||
|
|
27f22774b1 | ||
|
|
f6be1d3d13 | ||
|
|
77f091c8c7 |
5
.gitattributes
vendored
5
.gitattributes
vendored
@@ -1,4 +1,7 @@
|
|||||||
.gitignore export-ignore
|
.gitignore export-ignore
|
||||||
.gitattributes export-ignore
|
.gitattributes export-ignore
|
||||||
build export-ignore
|
|
||||||
README.md export-ignore
|
README.md export-ignore
|
||||||
|
/spec export-ignore
|
||||||
|
Gemfile export-ignore
|
||||||
|
Gemfile.lock export-ignore
|
||||||
|
.travis.yml export-ignore
|
||||||
|
|||||||
8
.travis.yml
Normal file
8
.travis.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
language: ruby
|
||||||
|
rvm:
|
||||||
|
- 1.9.3
|
||||||
|
before_install: sudo apt-get install vim-gtk
|
||||||
|
before_script:
|
||||||
|
- "export DISPLAY=:99.0"
|
||||||
|
- "sh -e /etc/init.d/xvfb start"
|
||||||
|
script: bundle exec rspec --format=documentation
|
||||||
4
Gemfile
Normal file
4
Gemfile
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
source 'https://rubygems.org'
|
||||||
|
|
||||||
|
gem 'vimrunner'
|
||||||
|
gem 'rspec'
|
||||||
20
Gemfile.lock
Normal file
20
Gemfile.lock
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
diff-lcs (1.1.3)
|
||||||
|
rspec (2.12.0)
|
||||||
|
rspec-core (~> 2.12.0)
|
||||||
|
rspec-expectations (~> 2.12.0)
|
||||||
|
rspec-mocks (~> 2.12.0)
|
||||||
|
rspec-core (2.12.2)
|
||||||
|
rspec-expectations (2.12.1)
|
||||||
|
diff-lcs (~> 1.1.3)
|
||||||
|
rspec-mocks (2.12.0)
|
||||||
|
vimrunner (0.3.0)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
ruby
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
rspec
|
||||||
|
vimrunner
|
||||||
96
README.md
96
README.md
@@ -1,14 +1,20 @@
|
|||||||
# vim-polyglot
|
# vim-polyglot [![Build Status][travis-img-url]][travis-url]
|
||||||
|
|
||||||
|
[travis-img-url]: https://travis-ci.org/sheerun/vim-polyglot.png
|
||||||
|
[travis-url]: https://travis-ci.org/sheerun/vim-polyglot
|
||||||
|
|
||||||
A collection of language packs for Vim.
|
A collection of language packs for Vim.
|
||||||
|
|
||||||
One to rule them all, one to find them, one to bring them all and in the darkness bind them.
|
> One to rule them all, one to find them, one to bring them all and in the darkness bind them.
|
||||||
|
|
||||||
- It **won't affect your startup time**, as all files are loaded only on demand.
|
- It **won't affect your startup time**, as scripts are loaded only on demand\*.
|
||||||
- It **installs 40x faster** (unparallelized), as language packs are not submoduled, but merged.
|
- It **installs 50+ times faster** than 50+ packages it consist of.
|
||||||
- It clones even faster as all unnecessary files are ignored (like enormous documentation from php support).
|
- Solid syntax and indentation support. Only the best language packs.
|
||||||
- Best syntax and indentation support. If someone releases better language pack, it will be replaced here.
|
- All unnecessary files are ignored (like enormous documentation from php support).
|
||||||
- No support for esoteric languages (vim-polyglot supports modern ones like `slim` though).
|
- No support for esoteric languages, only most popular ones (modern too, like `slim`).
|
||||||
|
- Each build is tested by automated vimrunner script on CI. See `spec` directory.
|
||||||
|
|
||||||
|
\*To be completely honest, concatenated `ftdetect` script takes around `3ms` to load.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
@@ -19,49 +25,91 @@ Optionally download one of the [releases](https://github.com/sheerun/vim-polyglo
|
|||||||
|
|
||||||
## Language packs
|
## Language packs
|
||||||
|
|
||||||
- [arduino](https://github.com/sudar/vim-arduino-syntax) (syntax, ftdetect)
|
- [arduino](https://github.com/sudar/vim-arduino-syntax) (syntax, indent, ftdetect)
|
||||||
- [bundler](https://github.com/tpope/vim-bundler) (compiler)
|
- [blade](https://github.com/xsbeats/vim-blade) (syntax, indent, ftdetect)
|
||||||
- [c++11](https://github.com/octol/vim-cpp-enhanced-highlight) (syntax)
|
- [c++11](https://github.com/octol/vim-cpp-enhanced-highlight) (syntax)
|
||||||
- [c/c++](https://github.com/vim-jp/cpp-vim) (syntax)
|
- [c/c++](https://github.com/vim-jp/cpp-vim) (syntax)
|
||||||
- [clojure](https://github.com/guns/vim-clojure-static) (syntax, indent, autoload, ftplugin, ftdetect)
|
- [clojure](https://github.com/guns/vim-clojure-static) (syntax, indent, autoload, ftplugin, ftdetect)
|
||||||
- [coffee-script](https://github.com/kchmck/vim-coffee-script) (syntax, indent, compiler, autoload, ftplugin, ftdetect)
|
- [coffee-script](https://github.com/kchmck/vim-coffee-script) (syntax, indent, compiler, autoload, ftplugin, ftdetect)
|
||||||
- [css-color](https://github.com/ap/vim-css-color) (syntax)
|
- [cjsx](https://github.com/mtscout6/vim-cjsx) (ftdetect, syntax, ftplugin)
|
||||||
- [csv](https://github.com/chrisbra/csv.vim) (syntax, ftplugin, ftdetect)
|
- [css](https://github.com/JulesWang/css.vim) (syntax)
|
||||||
- [cucumber](https://github.com/tpope/vim-cucumber) (syntax, indent, compiler, ftplugin, ftdetect)
|
- [cucumber](https://github.com/tpope/vim-cucumber) (syntax, indent, compiler, ftplugin, ftdetect)
|
||||||
|
- [dockerfile](https://github.com/honza/dockerfile.vim) (syntax, ftdetect)
|
||||||
- [elixir](https://github.com/elixir-lang/vim-elixir) (syntax, indent, compiler, ftplugin, ftdetect)
|
- [elixir](https://github.com/elixir-lang/vim-elixir) (syntax, indent, compiler, ftplugin, ftdetect)
|
||||||
- [erlang](https://github.com/jimenezrick/vimerl) (syntax, indent, compiler, autoload, ftplugin)
|
- [emberscript](https://github.com/heartsentwined/vim-ember-script) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [emblem](https://github.com/heartsentwined/vim-emblem) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [erlang](https://github.com/vim-erlang/vim-erlang-runtime) (syntax, indent, ftdetect)
|
||||||
- [git](https://github.com/tpope/vim-git) (syntax, indent, ftplugin, ftdetect)
|
- [git](https://github.com/tpope/vim-git) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [go](https://github.com/jnwhiteh/vim-golang) (syntax, indent, autoload, ftplugin, ftdetect)
|
- [glsl](https://github.com/tikhomirov/vim-glsl) (syntax, indent, ftdetect)
|
||||||
|
- [go](https://github.com/fatih/vim-go) (syntax, indent, ftdetect)
|
||||||
|
- [groovy](https://github.com/vim-scripts/groovy.vim) (syntax)
|
||||||
- [haml](https://github.com/tpope/vim-haml) (syntax, indent, compiler, ftplugin, ftdetect)
|
- [haml](https://github.com/tpope/vim-haml) (syntax, indent, compiler, ftplugin, ftdetect)
|
||||||
- [handlebars](https://github.com/nono/vim-handlebars) (syntax, ftplugin, ftdetect)
|
- [handlebars](https://github.com/mustache/vim-mustache-handlebars) (syntax, ftplugin, ftdetect)
|
||||||
- [haskell](https://github.com/travitch/hasksyn) (syntax, indent, ftplugin)
|
- [haskell](https://github.com/neovimhaskell/haskell-vim) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [html5](https://github.com/othree/html5.vim) (syntax, indent, autoload)
|
- [haxe](https://github.com/yaymukund/vim-haxe) (syntax, ftdetect)
|
||||||
|
- [html5](https://github.com/othree/html5.vim) (syntax, indent, autoload, ftplugin)
|
||||||
- [jade](https://github.com/digitaltoad/vim-jade) (syntax, indent, ftplugin, ftdetect)
|
- [jade](https://github.com/digitaltoad/vim-jade) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [javascript](https://github.com/pangloss/vim-javascript) (syntax, indent, ftdetect)
|
- [jasmine](https://github.com/glanotte/vim-jasmine) (syntax, ftdetect)
|
||||||
- [json](https://github.com/leshill/vim-json) (syntax, ftdetect)
|
- [javascript](https://github.com/sheerun/yajs.vim) (syntax, indent)
|
||||||
|
- [julia](https://github.com/dcjones/julia-minimalist-vim) (syntax, indent, ftdetect)
|
||||||
|
- [json](https://github.com/sheerun/vim-json) (syntax, indent, ftdetect)
|
||||||
- [jst](https://github.com/briancollins/vim-jst) (syntax, indent, ftdetect)
|
- [jst](https://github.com/briancollins/vim-jst) (syntax, indent, ftdetect)
|
||||||
- [latex](https://github.com/jcf/vim-latex) (indent, compiler, ftplugin)
|
- [jsx](https://github.com/mxw/vim-jsx) (after)
|
||||||
|
- [kotlin](https://github.com/udalov/kotlin-vim) (syntax, indent, ftdetect)
|
||||||
|
- [latex](https://github.com/LaTeX-Box-Team/LaTeX-Box) (syntax, indent, ftplugin)
|
||||||
- [less](https://github.com/groenewege/vim-less) (syntax, indent, ftplugin, ftdetect)
|
- [less](https://github.com/groenewege/vim-less) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [liquid](https://github.com/tpope/vim-liquid) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [markdown](https://github.com/tpope/vim-markdown) (syntax, ftplugin, ftdetect)
|
- [markdown](https://github.com/tpope/vim-markdown) (syntax, ftplugin, ftdetect)
|
||||||
- [nginx](https://github.com/mutewinter/nginx.vim) (syntax, ftdetect)
|
- [nginx](https://github.com/mutewinter/nginx.vim) (syntax, ftdetect)
|
||||||
- [ocaml](https://github.com/jrk/vim-ocaml) (syntax, indent, ftplugin)
|
- [ocaml](https://github.com/jrk/vim-ocaml) (syntax, indent, ftplugin)
|
||||||
- [octave](https://github.com/vim-scripts/octave.vim--) (syntax)
|
- [octave](https://github.com/vim-scripts/octave.vim--) (syntax)
|
||||||
|
- [opencl](https://github.com/petRUShka/vim-opencl) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [perl](https://github.com/vim-perl/vim-perl) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [php](https://github.com/StanAngeloff/php.vim) (syntax)
|
- [php](https://github.com/StanAngeloff/php.vim) (syntax)
|
||||||
- [puppet](https://github.com/ajf/puppet-vim) (syntax, indent, ftplugin, ftdetect)
|
- [puppet](https://github.com/rodjek/vim-puppet) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [powershell](https://github.com/Persistent13/vim-ps1) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [protobuf](https://github.com/uarun/vim-protobuf) (syntax, ftdetect)
|
- [protobuf](https://github.com/uarun/vim-protobuf) (syntax, ftdetect)
|
||||||
- [python](https://github.com/vim-scripts/python.vim--Vasiliev) (syntax)
|
- [python](https://github.com/mitsuhiko/vim-python-combined) (syntax, indent)
|
||||||
- [rspec](https://github.com/skwp/vim-rspec) (syntax)
|
- [qml](https://github.com/peterhoeg/vim-qml) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [r-lang](https://github.com/vim-scripts/R.vim) (syntax, ftplugin)
|
||||||
|
- [ragel](https://github.com/jneen/ragel.vim) (syntax)
|
||||||
|
- [rspec](https://github.com/sheerun/rspec.vim) (syntax, ftdetect)
|
||||||
- [ruby](https://github.com/vim-ruby/vim-ruby) (syntax, indent, compiler, autoload, ftplugin, ftdetect)
|
- [ruby](https://github.com/vim-ruby/vim-ruby) (syntax, indent, compiler, autoload, ftplugin, ftdetect)
|
||||||
|
- [rust](https://github.com/wting/rust.vim) (syntax, indent, compiler, autoload, ftplugin, ftdetect)
|
||||||
- [sbt](https://github.com/derekwyatt/vim-sbt) (syntax, ftdetect)
|
- [sbt](https://github.com/derekwyatt/vim-sbt) (syntax, ftdetect)
|
||||||
- [scala](https://github.com/derekwyatt/vim-scala) (syntax, indent, ftplugin, ftdetect)
|
- [scala](https://github.com/derekwyatt/vim-scala) (syntax, indent, compiler, ftplugin, ftdetect)
|
||||||
- [slim](https://github.com/slim-template/vim-slim) (syntax, indent, ftdetect)
|
- [slim](https://github.com/slim-template/vim-slim) (syntax, indent, ftdetect)
|
||||||
|
- [solidity](https://github.com/ethereum/vim-solidity) (syntax, indent, ftdetect)
|
||||||
- [stylus](https://github.com/wavded/vim-stylus) (syntax, indent, ftplugin, ftdetect)
|
- [stylus](https://github.com/wavded/vim-stylus) (syntax, indent, ftplugin, ftdetect)
|
||||||
|
- [systemd](https://github.com/kurayama/systemd-vim-syntax) (syntax, ftdetect)
|
||||||
|
- [swift](https://github.com/toyamarinyon/vim-swift) (syntax, indent, ftdetect)
|
||||||
- [textile](https://github.com/timcharper/textile.vim) (syntax, ftplugin, ftdetect)
|
- [textile](https://github.com/timcharper/textile.vim) (syntax, ftplugin, ftdetect)
|
||||||
- [tmux](https://github.com/acustodioo/vim-tmux) (syntax, ftdetect)
|
- [tmux](https://github.com/tejr/vim-tmux) (syntax, ftdetect)
|
||||||
- [tomdoc](https://github.com/duwanis/tomdoc.vim) (syntax)
|
- [tomdoc](https://github.com/duwanis/tomdoc.vim) (syntax)
|
||||||
|
- [typescript](https://github.com/leafgarland/typescript-vim) (syntax, indent, compiler, ftplugin, ftdetect)
|
||||||
- [vbnet](https://github.com/vim-scripts/vbnet.vim) (syntax)
|
- [vbnet](https://github.com/vim-scripts/vbnet.vim) (syntax)
|
||||||
|
- [thrift](https://github.com/solarnz/thrift.vim) (syntax, ftdetect)
|
||||||
|
- [toml](https://github.com/cespare/vim-toml) (syntax, ftplugin, ftdetect)
|
||||||
- [twig](https://github.com/beyondwords/vim-twig) (syntax, ftplugin, ftdetect)
|
- [twig](https://github.com/beyondwords/vim-twig) (syntax, ftplugin, ftdetect)
|
||||||
- [xls](https://github.com/vim-scripts/XSLT-syntax) (syntax)
|
- [xls](https://github.com/vim-scripts/XSLT-syntax) (syntax)
|
||||||
|
- [yard](https://github.com/sheerun/vim-yardoc) (syntax)
|
||||||
|
- [vala](https://github.com/tkztmk/vim-vala) (syntax, indent, ftdetect)
|
||||||
|
- [vm](https://github.com/lepture/vim-velocity) (syntax, indent, ftdetect)
|
||||||
|
|
||||||
|
## Disabling a language pack
|
||||||
|
|
||||||
|
Individual language packs can be disabled by setting `g:polyglot_disabled`.
|
||||||
|
|
||||||
|
```viml
|
||||||
|
" ~/.vimrc
|
||||||
|
let g:polyglot_disabled = ['css']
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that disabiling languages won't make in general your vim startup any faster / slower (only for specific file type). Vim-polyglot is selection of language plugins that are loaded only on demand.
|
||||||
|
|
||||||
|
## Updating
|
||||||
|
|
||||||
|
You can either wait for new patch release with updates or run the `./build` script by yourself.
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
|
|||||||
24
after/ftdetect/javascript.vim
Normal file
24
after/ftdetect/javascript.vim
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jsx') == -1
|
||||||
|
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Vim ftdetect file
|
||||||
|
"
|
||||||
|
" Language: JSX (JavaScript)
|
||||||
|
" Maintainer: Max Wang <mxawng@gmail.com>
|
||||||
|
"
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
exec 'source '.fnameescape(expand('<sfile>:p:h:h').'/jsx-config.vim')
|
||||||
|
|
||||||
|
fu! <SID>EnableJSX()
|
||||||
|
if g:jsx_pragma_required && !b:jsx_pragma_found | return 0 | endif
|
||||||
|
if g:jsx_ext_required && !exists('b:jsx_ext_found') | return 0 | endif
|
||||||
|
return 1
|
||||||
|
endfu
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.jsx let b:jsx_ext_found = 1
|
||||||
|
autocmd BufNewFile,BufRead *.jsx set filetype=javascript.jsx
|
||||||
|
autocmd BufNewFile,BufRead *.js
|
||||||
|
\ if <SID>EnableJSX() | set filetype=javascript.jsx | endif
|
||||||
|
|
||||||
|
endif
|
||||||
6
after/ftdetect/rspec.vim
Normal file
6
after/ftdetect/rspec.vim
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rspec') == -1
|
||||||
|
|
||||||
|
autocmd BufReadPost,BufNewFile *_spec.rb set syntax=rspec
|
||||||
|
autocmd BufReadPost,BufNewFile *_spec.rb setlocal commentstring=#\ %s
|
||||||
|
|
||||||
|
endif
|
||||||
8
after/ftplugin/cabal.vim
Normal file
8
after/ftplugin/cabal.vim
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
|
||||||
|
|
||||||
|
setlocal comments=s1fl:{-,mb:-,ex:-},:--
|
||||||
|
setlocal formatoptions-=cro formatoptions+=j
|
||||||
|
setlocal iskeyword+=-,.,*
|
||||||
|
setlocal commentstring=--\ %s
|
||||||
|
|
||||||
|
endif
|
||||||
9
after/ftplugin/coffee.vim
Normal file
9
after/ftplugin/coffee.vim
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cjsx') == -1
|
||||||
|
|
||||||
|
if exists("loaded_matchit")
|
||||||
|
let b:match_ignorecase = 0
|
||||||
|
let b:match_words = '(:),\[:\],{:},<:>,' .
|
||||||
|
\ '<\@<=\([^/][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>'
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,9 +1,7 @@
|
|||||||
" Vim ftplugin file
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
|
||||||
" Language: Haskell
|
|
||||||
" Maintainer: Tristan Ravitch
|
setlocal comments=s1fl:{-,mb:-,ex:-},:--
|
||||||
|
setlocal formatoptions-=cro formatoptions+=j
|
||||||
|
setlocal iskeyword+='
|
||||||
|
|
||||||
" I don't fully understand what the vim-default ftplugin does, but I do know
|
endif
|
||||||
" that the three-part comment entry really messes up this indenter (I also
|
|
||||||
" hate the leading '-'s it puts in on each line). Disable it here.
|
|
||||||
setlocal comments&
|
|
||||||
setlocal comments=:--
|
|
||||||
|
|||||||
21
after/ftplugin/jsx.vim
Normal file
21
after/ftplugin/jsx.vim
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jsx') == -1
|
||||||
|
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Vim ftplugin file
|
||||||
|
"
|
||||||
|
" Language: JSX (JavaScript)
|
||||||
|
" Maintainer: Max Wang <mxawng@gmail.com>
|
||||||
|
" Depends: pangloss/vim-javascript
|
||||||
|
"
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
" modified from html.vim
|
||||||
|
if exists("loaded_matchit")
|
||||||
|
let b:match_ignorecase = 0
|
||||||
|
let b:match_words = '(:),\[:\],{:},<:>,' .
|
||||||
|
\ '<\@<=\([^/][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>'
|
||||||
|
endif
|
||||||
|
|
||||||
|
setlocal suffixesadd+=.jsx
|
||||||
|
|
||||||
|
endif
|
||||||
20
after/ftplugin/puppet.vim
Normal file
20
after/ftplugin/puppet.vim
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'puppet') == -1
|
||||||
|
|
||||||
|
if !exists('g:puppet_align_hashes')
|
||||||
|
let g:puppet_align_hashes = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if g:puppet_align_hashes && exists(':Tabularize')
|
||||||
|
inoremap <buffer> <silent> > ><Esc>:call <SID>puppetalign()<CR>a
|
||||||
|
function! s:puppetalign()
|
||||||
|
let p = '^\s*\w+\s*[=+]>.*$'
|
||||||
|
let column = strlen(substitute(getline('.')[0:col('.')],'\([^=]\|=[^>]\)','','g'))
|
||||||
|
let position = strlen(matchstr(getline('.')[0:col('.')],'.*=>\s*\zs.*'))
|
||||||
|
Tabularize /=>/l1
|
||||||
|
normal! 0
|
||||||
|
echo repeat('\([^=]\|=[^>]\)*=>',column).'\s\{-\}'.repeat('.',position)
|
||||||
|
call search(repeat('\([^=]\|=[^>]\)*=>',column).'\s\{-\}'.repeat('.',position),'ce',line('.'))
|
||||||
|
endfunction
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,15 +1,17 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
" Maintainer: Mick Koch <mick@kochm.co>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
" License: WTFPL
|
" License: WTFPL
|
||||||
|
|
||||||
" Load the coffee and html indent functions.
|
" Load the coffee and html indent functions.
|
||||||
unlet b:did_indent
|
silent! unlet b:did_indent
|
||||||
runtime indent/coffee.vim
|
runtime indent/coffee.vim
|
||||||
let s:coffeeIndentExpr = &l:indentexpr
|
let s:coffeeIndentExpr = &l:indentexpr
|
||||||
|
|
||||||
" Load html last so it can overwrite coffee settings.
|
" Load html last so it can overwrite coffee settings.
|
||||||
unlet b:did_indent
|
silent! unlet b:did_indent
|
||||||
runtime indent/html.vim
|
runtime indent/html.vim
|
||||||
let s:htmlIndentExpr = &l:indentexpr
|
let s:htmlIndentExpr = &l:indentexpr
|
||||||
|
|
||||||
@@ -31,3 +33,5 @@ function! GetCoffeeHtmlIndent(curlinenum)
|
|||||||
" Otherwise use html indenting.
|
" Otherwise use html indenting.
|
||||||
exec 'return ' s:htmlIndentExpr
|
exec 'return ' s:htmlIndentExpr
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
102
after/indent/jsx.vim
Normal file
102
after/indent/jsx.vim
Normal file
@@ -0,0 +1,102 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jsx') == -1
|
||||||
|
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Vim indent file
|
||||||
|
"
|
||||||
|
" Language: JSX (JavaScript)
|
||||||
|
" Maintainer: Max Wang <mxawng@gmail.com>
|
||||||
|
" Depends: pangloss/vim-javascript
|
||||||
|
"
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
" Do nothing if we don't find the @jsx pragma (and we care).
|
||||||
|
exec 'source '.fnameescape(expand('<sfile>:p:h:h').'/jsx-config.vim')
|
||||||
|
if g:jsx_pragma_required && !b:jsx_pragma_found | finish | endif
|
||||||
|
|
||||||
|
" Do nothing if we don't have the .jsx extension (and we care).
|
||||||
|
if g:jsx_ext_required && !exists('b:jsx_ext_found') | finish | endif
|
||||||
|
|
||||||
|
" Prologue; load in XML indentation.
|
||||||
|
if exists('b:did_indent')
|
||||||
|
let s:did_indent=b:did_indent
|
||||||
|
unlet b:did_indent
|
||||||
|
endif
|
||||||
|
exe 'runtime! indent/xml.vim'
|
||||||
|
if exists('s:did_indent')
|
||||||
|
let b:did_indent=s:did_indent
|
||||||
|
endif
|
||||||
|
|
||||||
|
setlocal indentexpr=GetJsxIndent()
|
||||||
|
|
||||||
|
" JS indentkeys
|
||||||
|
setlocal indentkeys=0{,0},0),0],0\,,!^F,o,O,e
|
||||||
|
" XML indentkeys
|
||||||
|
setlocal indentkeys+=*<Return>,<>>,<<>,/
|
||||||
|
|
||||||
|
" Self-closing tag regex.
|
||||||
|
let s:sctag = '^\s*\/>\s*;\='
|
||||||
|
|
||||||
|
" Get all syntax types at the beginning of a given line.
|
||||||
|
fu! SynSOL(lnum)
|
||||||
|
return map(synstack(a:lnum, 1), 'synIDattr(v:val, "name")')
|
||||||
|
endfu
|
||||||
|
|
||||||
|
" Get all syntax types at the end of a given line.
|
||||||
|
fu! SynEOL(lnum)
|
||||||
|
let lnum = prevnonblank(a:lnum)
|
||||||
|
let col = strlen(getline(lnum))
|
||||||
|
return map(synstack(lnum, col), 'synIDattr(v:val, "name")')
|
||||||
|
endfu
|
||||||
|
|
||||||
|
" Check if a syntax attribute is XMLish.
|
||||||
|
fu! SynAttrXMLish(synattr)
|
||||||
|
return a:synattr =~ "^xml" || a:synattr =~ "^jsx"
|
||||||
|
endfu
|
||||||
|
|
||||||
|
" Check if a synstack is XMLish (i.e., has an XMLish last attribute).
|
||||||
|
fu! SynXMLish(syns)
|
||||||
|
return SynAttrXMLish(get(a:syns, -1))
|
||||||
|
endfu
|
||||||
|
|
||||||
|
" Check if a synstack has any XMLish attribute.
|
||||||
|
fu! SynXMLishAny(syns)
|
||||||
|
for synattr in a:syns
|
||||||
|
if SynAttrXMLish(synattr)
|
||||||
|
return 1
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
return 0
|
||||||
|
endfu
|
||||||
|
|
||||||
|
" Check if a synstack denotes the end of a JSX block.
|
||||||
|
fu! SynJSXBlockEnd(syns)
|
||||||
|
return get(a:syns, -1) == 'jsBraces' && SynAttrXMLish(get(a:syns, -2))
|
||||||
|
endfu
|
||||||
|
|
||||||
|
" Cleverly mix JS and XML indentation.
|
||||||
|
fu! GetJsxIndent()
|
||||||
|
let cursyn = SynSOL(v:lnum)
|
||||||
|
let prevsyn = SynEOL(v:lnum - 1)
|
||||||
|
|
||||||
|
" Use XML indenting if the syntax at the end of the previous line was either
|
||||||
|
" JSX or was the closing brace of a jsBlock whose parent syntax was JSX.
|
||||||
|
if (SynXMLish(prevsyn) || SynJSXBlockEnd(prevsyn)) && SynXMLishAny(cursyn)
|
||||||
|
let ind = XmlIndentGet(v:lnum, 0)
|
||||||
|
|
||||||
|
" Align '/>' with '<' for multiline self-closing tags.
|
||||||
|
if getline(v:lnum) =~? s:sctag
|
||||||
|
let ind = ind - &sw
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Then correct the indentation of any JSX following '/>'.
|
||||||
|
if getline(v:lnum - 1) =~? s:sctag
|
||||||
|
let ind = ind + &sw
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
let ind = GetJavascriptIndent()
|
||||||
|
endif
|
||||||
|
|
||||||
|
return ind
|
||||||
|
endfu
|
||||||
|
|
||||||
|
endif
|
||||||
37
after/jsx-config.vim
Normal file
37
after/jsx-config.vim
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jsx') == -1
|
||||||
|
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Vimscript file
|
||||||
|
"
|
||||||
|
" Set up a bunch of configuration variables.
|
||||||
|
"
|
||||||
|
" Also check (if desired) whether or not the @jsx pragma is correctly included
|
||||||
|
" in '%'. Set the result in b:jsx_pragma_found.
|
||||||
|
"
|
||||||
|
" Language: JSX (JavaScript)
|
||||||
|
" Maintainer: Max Wang <mxawng@gmail.com>
|
||||||
|
"
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
" Only check once.
|
||||||
|
if exists('b:jsx_pragma_found')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Whether the .jsx extension is required to enable JSX syntax/indent.
|
||||||
|
if !exists('g:jsx_ext_required')
|
||||||
|
let g:jsx_ext_required = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Whether the @jsx pragma is required to enable JSX syntax/indent.
|
||||||
|
if !exists('g:jsx_pragma_required')
|
||||||
|
let g:jsx_pragma_required = 0
|
||||||
|
endif
|
||||||
|
if !g:jsx_pragma_required | finish | endif
|
||||||
|
|
||||||
|
" Look for the @jsx pragma. It must be included in a docblock comment before
|
||||||
|
" anything else in the file (except whitespace).
|
||||||
|
let s:jsx_pragma_pattern = '\%^\_s*\/\*\*\%(\_.\%(\*\/\)\@!\)*@jsx\_.\{-}\*\/'
|
||||||
|
let b:jsx_pragma_found = search(s:jsx_pragma_pattern, 'npw')
|
||||||
|
|
||||||
|
endif
|
||||||
296
after/syntax/c.vim
Normal file
296
after/syntax/c.vim
Normal file
@@ -0,0 +1,296 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'c++11') == -1
|
||||||
|
|
||||||
|
" Vim syntax file
|
||||||
|
" Language: C Additions
|
||||||
|
" Maintainer: Jon Haggblad <jon@haeggblad.com>
|
||||||
|
" Contributor: Mikhail Wolfson <mywolfson@gmail.com>
|
||||||
|
" URL: http://www.haeggblad.com
|
||||||
|
" Last Change: 6 Sep 2014
|
||||||
|
" Version: 0.3
|
||||||
|
" Changelog:
|
||||||
|
" 0.3 - integration of aftersyntaxc.vim
|
||||||
|
" 0.2 - Cleanup
|
||||||
|
" 0.1 - initial version.
|
||||||
|
"
|
||||||
|
" Syntax highlighting for functions in C.
|
||||||
|
"
|
||||||
|
" Based on:
|
||||||
|
" http://stackoverflow.com/questions/736701/class-function-names-highlighting-in-vim
|
||||||
|
|
||||||
|
" -----------------------------------------------------------------------------
|
||||||
|
" Highlight function names.
|
||||||
|
" -----------------------------------------------------------------------------
|
||||||
|
syn match cCustomParen "(" contains=cParen contains=cCppParen
|
||||||
|
syn match cCustomFunc "\w\+\s*(\@=" contains=cCustomParen
|
||||||
|
hi def link cCustomFunc Function
|
||||||
|
|
||||||
|
" -----------------------------------------------------------------------------
|
||||||
|
" Source: aftersyntaxc.vim
|
||||||
|
" -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
" Common ANSI-standard functions
|
||||||
|
syn keyword cAnsiFunction MULU_ DIVU_ MODU_ MUL_ DIV_ MOD_
|
||||||
|
syn keyword cAnsiFunction main typeof
|
||||||
|
syn keyword cAnsiFunction open close read write lseek dup dup2
|
||||||
|
syn keyword cAnsiFunction fcntl ioctl
|
||||||
|
syn keyword cAnsiFunction wctrans towctrans towupper
|
||||||
|
syn keyword cAnsiFunction towlower wctype iswctype
|
||||||
|
syn keyword cAnsiFunction iswxdigit iswupper iswspace
|
||||||
|
syn keyword cAnsiFunction iswpunct iswprint iswlower
|
||||||
|
syn keyword cAnsiFunction iswgraph iswdigit iswcntrl
|
||||||
|
syn keyword cAnsiFunction iswalpha iswalnum wcsrtombs
|
||||||
|
syn keyword cAnsiFunction mbsrtowcs wcrtomb mbrtowc
|
||||||
|
syn keyword cAnsiFunction mbrlen mbsinit wctob
|
||||||
|
syn keyword cAnsiFunction btowc wcsfxtime wcsftime
|
||||||
|
syn keyword cAnsiFunction wmemset wmemmove wmemcpy
|
||||||
|
syn keyword cAnsiFunction wmemcmp wmemchr wcstok
|
||||||
|
syn keyword cAnsiFunction wcsstr wcsspn wcsrchr
|
||||||
|
syn keyword cAnsiFunction wcspbrk wcslen wcscspn
|
||||||
|
syn keyword cAnsiFunction wcschr wcsxfrm wcsncmp
|
||||||
|
syn keyword cAnsiFunction wcscoll wcscmp wcsncat
|
||||||
|
syn keyword cAnsiFunction wcscat wcsncpy wcscpy
|
||||||
|
syn keyword cAnsiFunction wcstoull wcstoul wcstoll
|
||||||
|
syn keyword cAnsiFunction wcstol wcstold wcstof
|
||||||
|
syn keyword cAnsiFunction wcstod ungetwc putwchar
|
||||||
|
syn keyword cAnsiFunction putwc getwchar getwc
|
||||||
|
syn keyword cAnsiFunction fwide fputws fputwc
|
||||||
|
syn keyword cAnsiFunction fgetws fgetwc wscanf
|
||||||
|
syn keyword cAnsiFunction wprintf vwscanf vwprintf
|
||||||
|
syn keyword cAnsiFunction vswscanf vswprintf vfwscanf
|
||||||
|
syn keyword cAnsiFunction vfwprintf swscanf swprintf
|
||||||
|
syn keyword cAnsiFunction fwscanf fwprintf zonetime
|
||||||
|
syn keyword cAnsiFunction strfxtime strftime localtime
|
||||||
|
syn keyword cAnsiFunction gmtime ctime asctime
|
||||||
|
syn keyword cAnsiFunction time mkxtime mktime
|
||||||
|
syn keyword cAnsiFunction difftime clock strlen
|
||||||
|
syn keyword cAnsiFunction strerror memset strtok
|
||||||
|
syn keyword cAnsiFunction strstr strspn strrchr
|
||||||
|
syn keyword cAnsiFunction strpbrk strcspn strchr
|
||||||
|
syn keyword cAnsiFunction memchr strxfrm strncmp
|
||||||
|
syn keyword cAnsiFunction strcoll strcmp memcmp
|
||||||
|
syn keyword cAnsiFunction strncat strcat strncpy
|
||||||
|
syn keyword cAnsiFunction strcpy memmove memcpy
|
||||||
|
syn keyword cAnsiFunction wcstombs mbstowcs wctomb
|
||||||
|
syn keyword cAnsiFunction mbtowc mblen lldiv
|
||||||
|
syn keyword cAnsiFunction ldiv div llabs
|
||||||
|
syn keyword cAnsiFunction labs abs qsort
|
||||||
|
"syn keyword cAnsiFunction bsearch system getenv
|
||||||
|
syn keyword cAnsiFunction bsearch getenv
|
||||||
|
syn keyword cAnsiFunction exit atexit abort
|
||||||
|
syn keyword cAnsiFunction realloc malloc free
|
||||||
|
syn keyword cAnsiFunction calloc srand rand
|
||||||
|
syn keyword cAnsiFunction strtoull strtoul strtoll
|
||||||
|
syn keyword cAnsiFunction strtol strtold strtof
|
||||||
|
syn keyword cAnsiFunction strtod atoll atol
|
||||||
|
syn keyword cAnsiFunction atoi atof perror
|
||||||
|
syn keyword cAnsiFunction ferror feof clearerr
|
||||||
|
syn keyword cAnsiFunction rewind ftell fsetpos
|
||||||
|
syn keyword cAnsiFunction fseek fgetpos fwrite
|
||||||
|
syn keyword cAnsiFunction fread ungetc puts
|
||||||
|
syn keyword cAnsiFunction putchar putc gets
|
||||||
|
syn keyword cAnsiFunction getchar getc fputs
|
||||||
|
syn keyword cAnsiFunction fputc fgets fgetc
|
||||||
|
syn keyword cAnsiFunction vsscanf vsprintf vsnprintf
|
||||||
|
syn keyword cAnsiFunction vscanf vprintf vfscanf
|
||||||
|
syn keyword cAnsiFunction vfprintf sscanf sprintf
|
||||||
|
syn keyword cAnsiFunction snprintf scanf printf
|
||||||
|
syn keyword cAnsiFunction fscanf fprintf setvbuf
|
||||||
|
syn keyword cAnsiFunction setbuf freopen fopen
|
||||||
|
syn keyword cAnsiFunction fflush fclose tmpnam
|
||||||
|
syn keyword cAnsiFunction tmpfile rename remove
|
||||||
|
syn keyword cAnsiFunction offsetof va_start va_end
|
||||||
|
syn keyword cAnsiFunction va_copy va_arg raise signal
|
||||||
|
syn keyword cAnsiFunction longjmp setjmp isunordered
|
||||||
|
syn keyword cAnsiFunction islessgreater islessequal isless
|
||||||
|
syn keyword cAnsiFunction isgreaterequal isgreater fmal
|
||||||
|
syn keyword cAnsiFunction fmaf fma fminl
|
||||||
|
syn keyword cAnsiFunction fminf fmin fmaxl
|
||||||
|
syn keyword cAnsiFunction fmaxf fmax fdiml
|
||||||
|
syn keyword cAnsiFunction fdimf fdim nextafterxl
|
||||||
|
syn keyword cAnsiFunction nextafterxf nextafterx nextafterl
|
||||||
|
syn keyword cAnsiFunction nextafterf nextafter nanl
|
||||||
|
syn keyword cAnsiFunction nanf nan copysignl
|
||||||
|
syn keyword cAnsiFunction copysignf copysign remquol
|
||||||
|
syn keyword cAnsiFunction remquof remquo remainderl
|
||||||
|
syn keyword cAnsiFunction remainderf remainder fmodl
|
||||||
|
syn keyword cAnsiFunction fmodf fmod truncl
|
||||||
|
syn keyword cAnsiFunction truncf trunc llroundl
|
||||||
|
syn keyword cAnsiFunction llroundf llround lroundl
|
||||||
|
syn keyword cAnsiFunction lroundf lround roundl
|
||||||
|
syn keyword cAnsiFunction roundf round llrintl
|
||||||
|
syn keyword cAnsiFunction llrintf llrint lrintl
|
||||||
|
syn keyword cAnsiFunction lrintf lrint rintl
|
||||||
|
syn keyword cAnsiFunction rintf rint nearbyintl
|
||||||
|
syn keyword cAnsiFunction nearbyintf nearbyint floorl
|
||||||
|
syn keyword cAnsiFunction floorf floor ceill
|
||||||
|
syn keyword cAnsiFunction ceilf ceil tgammal
|
||||||
|
syn keyword cAnsiFunction tgammaf tgamma lgammal
|
||||||
|
syn keyword cAnsiFunction lgammaf lgamma erfcl
|
||||||
|
syn keyword cAnsiFunction erfcf erfc erfl
|
||||||
|
syn keyword cAnsiFunction erff erf sqrtl
|
||||||
|
syn keyword cAnsiFunction sqrtf sqrt powl
|
||||||
|
syn keyword cAnsiFunction powf pow hypotl
|
||||||
|
syn keyword cAnsiFunction hypotf hypot fabsl
|
||||||
|
syn keyword cAnsiFunction fabsf fabs cbrtl
|
||||||
|
syn keyword cAnsiFunction cbrtf cbrt scalblnl
|
||||||
|
syn keyword cAnsiFunction scalblnf scalbln scalbnl
|
||||||
|
syn keyword cAnsiFunction scalbnf scalbn modfl
|
||||||
|
syn keyword cAnsiFunction modff modf logbl
|
||||||
|
syn keyword cAnsiFunction logbf logb log2l
|
||||||
|
syn keyword cAnsiFunction log2f log2 log1pl
|
||||||
|
syn keyword cAnsiFunction log1pf log1p log10l
|
||||||
|
syn keyword cAnsiFunction log10f log10 logl
|
||||||
|
syn keyword cAnsiFunction logf log ldexpl
|
||||||
|
syn keyword cAnsiFunction ldexpf ldexp ilogbl
|
||||||
|
syn keyword cAnsiFunction ilogbf ilogb frexpl
|
||||||
|
syn keyword cAnsiFunction frexpf frexp expm1l
|
||||||
|
syn keyword cAnsiFunction expm1f expm1 exp2l
|
||||||
|
syn keyword cAnsiFunction exp2f exp2 expl
|
||||||
|
syn keyword cAnsiFunction expf exp tanhl
|
||||||
|
syn keyword cAnsiFunction tanhf tanh sinhl
|
||||||
|
syn keyword cAnsiFunction sinhf sinh coshl
|
||||||
|
syn keyword cAnsiFunction coshf cosh atanhl
|
||||||
|
syn keyword cAnsiFunction atanhf atanh asinhl
|
||||||
|
syn keyword cAnsiFunction asinhf asinh acoshl
|
||||||
|
syn keyword cAnsiFunction acoshf acosh tanl
|
||||||
|
syn keyword cAnsiFunction tanf tan sinl
|
||||||
|
syn keyword cAnsiFunction sinf sin cosl
|
||||||
|
syn keyword cAnsiFunction cosf cos atan2l
|
||||||
|
syn keyword cAnsiFunction atan2f atan2 atanl
|
||||||
|
syn keyword cAnsiFunction atanf atan asinl
|
||||||
|
syn keyword cAnsiFunction asinf asin acosl
|
||||||
|
syn keyword cAnsiFunction acosf acos signbit
|
||||||
|
syn keyword cAnsiFunction isnormal isnan isinf
|
||||||
|
syn keyword cAnsiFunction isfinite fpclassify localeconv
|
||||||
|
syn keyword cAnsiFunction setlocale wcstoumax wcstoimax
|
||||||
|
syn keyword cAnsiFunction strtoumax strtoimax feupdateenv
|
||||||
|
syn keyword cAnsiFunction fesetenv feholdexcept fegetenv
|
||||||
|
syn keyword cAnsiFunction fesetround fegetround fetestexcept
|
||||||
|
syn keyword cAnsiFunction fesetexceptflag feraiseexcept fegetexceptflag
|
||||||
|
syn keyword cAnsiFunction feclearexcept toupper tolower
|
||||||
|
syn keyword cAnsiFunction isxdigit isupper isspace
|
||||||
|
syn keyword cAnsiFunction ispunct isprint islower
|
||||||
|
syn keyword cAnsiFunction isgraph isdigit iscntrl
|
||||||
|
syn keyword cAnsiFunction isalpha isalnum creall
|
||||||
|
syn keyword cAnsiFunction crealf creal cprojl
|
||||||
|
syn keyword cAnsiFunction cprojf cproj conjl
|
||||||
|
syn keyword cAnsiFunction conjf conj cimagl
|
||||||
|
syn keyword cAnsiFunction cimagf cimag cargl
|
||||||
|
syn keyword cAnsiFunction cargf carg csqrtl
|
||||||
|
syn keyword cAnsiFunction csqrtf csqrt cpowl
|
||||||
|
syn keyword cAnsiFunction cpowf cpow cabsl
|
||||||
|
syn keyword cAnsiFunction cabsf cabs clogl
|
||||||
|
syn keyword cAnsiFunction clogf clog cexpl
|
||||||
|
syn keyword cAnsiFunction cexpf cexp ctanhl
|
||||||
|
syn keyword cAnsiFunction ctanhf ctanh csinhl
|
||||||
|
syn keyword cAnsiFunction csinhf csinh ccoshl
|
||||||
|
syn keyword cAnsiFunction ccoshf ccosh catanhl
|
||||||
|
syn keyword cAnsiFunction catanhf catanh casinhl
|
||||||
|
syn keyword cAnsiFunction casinhf casinh cacoshl
|
||||||
|
syn keyword cAnsiFunction cacoshf cacosh ctanl
|
||||||
|
syn keyword cAnsiFunction ctanf ctan csinl
|
||||||
|
syn keyword cAnsiFunction csinf csin ccosl
|
||||||
|
syn keyword cAnsiFunction ccosf ccos catanl
|
||||||
|
syn keyword cAnsiFunction catanf catan casinl
|
||||||
|
syn keyword cAnsiFunction casinf casin cacosl
|
||||||
|
syn keyword cAnsiFunction cacosf cacos assert
|
||||||
|
syn keyword cAnsiFunction UINTMAX_C INTMAX_C UINT64_C
|
||||||
|
syn keyword cAnsiFunction UINT32_C UINT16_C UINT8_C
|
||||||
|
syn keyword cAnsiFunction INT64_C INT32_C INT16_C INT8_C
|
||||||
|
|
||||||
|
" Common ANSI-standard Names
|
||||||
|
syn keyword cAnsiName PRId8 PRIi16 PRIo32 PRIu64
|
||||||
|
syn keyword cAnsiName PRId16 PRIi32 PRIo64 PRIuLEAST8
|
||||||
|
syn keyword cAnsiName PRId32 PRIi64 PRIoLEAST8 PRIuLEAST16
|
||||||
|
syn keyword cAnsiName PRId64 PRIiLEAST8 PRIoLEAST16 PRIuLEAST32
|
||||||
|
syn keyword cAnsiName PRIdLEAST8 PRIiLEAST16 PRIoLEAST32 PRIuLEAST64
|
||||||
|
syn keyword cAnsiName PRIdLEAST16 PRIiLEAST32 PRIoLEAST64 PRIuFAST8
|
||||||
|
syn keyword cAnsiName PRIdLEAST32 PRIiLEAST64 PRIoFAST8 PRIuFAST16
|
||||||
|
syn keyword cAnsiName PRIdLEAST64 PRIiFAST8 PRIoFAST16 PRIuFAST32
|
||||||
|
syn keyword cAnsiName PRIdFAST8 PRIiFAST16 PRIoFAST32 PRIuFAST64
|
||||||
|
syn keyword cAnsiName PRIdFAST16 PRIiFAST32 PRIoFAST64 PRIuMAX
|
||||||
|
syn keyword cAnsiName PRIdFAST32 PRIiFAST64 PRIoMAX PRIuPTR
|
||||||
|
syn keyword cAnsiName PRIdFAST64 PRIiMAX PRIoPTR PRIx8
|
||||||
|
syn keyword cAnsiName PRIdMAX PRIiPTR PRIu8 PRIx16
|
||||||
|
syn keyword cAnsiName PRIdPTR PRIo8 PRIu16 PRIx32
|
||||||
|
syn keyword cAnsiName PRIi8 PRIo16 PRIu32 PRIx64
|
||||||
|
|
||||||
|
syn keyword cAnsiName PRIxLEAST8 SCNd8 SCNiFAST32 SCNuLEAST32
|
||||||
|
syn keyword cAnsiName PRIxLEAST16 SCNd16 SCNiFAST64 SCNuLEAST64
|
||||||
|
syn keyword cAnsiName PRIxLEAST32 SCNd32 SCNiMAX SCNuFAST8
|
||||||
|
syn keyword cAnsiName PRIxLEAST64 SCNd64 SCNiPTR SCNuFAST16
|
||||||
|
syn keyword cAnsiName PRIxFAST8 SCNdLEAST8 SCNo8 SCNuFAST32
|
||||||
|
syn keyword cAnsiName PRIxFAST16 SCNdLEAST16 SCNo16 SCNuFAST64
|
||||||
|
syn keyword cAnsiName PRIxFAST32 SCNdLEAST32 SCNo32 SCNuMAX
|
||||||
|
syn keyword cAnsiName PRIxFAST64 SCNdLEAST64 SCNo64 SCNuPTR
|
||||||
|
syn keyword cAnsiName PRIxMAX SCNdFAST8 SCNoLEAST8 SCNx8
|
||||||
|
syn keyword cAnsiName PRIxPTR SCNdFAST16 SCNoLEAST16 SCNx16
|
||||||
|
syn keyword cAnsiName PRIX8 SCNdFAST32 SCNoLEAST32 SCNx32
|
||||||
|
syn keyword cAnsiName PRIX16 SCNdFAST64 SCNoLEAST64 SCNx64
|
||||||
|
syn keyword cAnsiName PRIX32 SCNdMAX SCNoFAST8 SCNxLEAST8
|
||||||
|
syn keyword cAnsiName PRIX64 SCNdPTR SCNoFAST16 SCNxLEAST16
|
||||||
|
syn keyword cAnsiName PRIXLEAST8 SCNi8 SCNoFAST32 SCNxLEAST32
|
||||||
|
syn keyword cAnsiName PRIXLEAST16 SCNi16 SCNoFAST64 SCNxLEAST64
|
||||||
|
syn keyword cAnsiName PRIXLEAST32 SCNi32 SCNoMAX SCNxFAST8
|
||||||
|
syn keyword cAnsiName PRIXLEAST64 SCNi64 SCNoPTR SCNxFAST16
|
||||||
|
syn keyword cAnsiName PRIXFAST8 SCNiLEAST8 SCNu8 SCNxFAST32
|
||||||
|
syn keyword cAnsiName PRIXFAST16 SCNiLEAST16 SCNu16 SCNxFAST64
|
||||||
|
syn keyword cAnsiName PRIXFAST32 SCNiLEAST32 SCNu32 SCNxMAX
|
||||||
|
syn keyword cAnsiName PRIXFAST64 SCNiLEAST64 SCNu64 SCNxPTR
|
||||||
|
syn keyword cAnsiName PRIXMAX SCNiFAST8 SCNuLEAST8
|
||||||
|
syn keyword cAnsiName PRIXPTR SCNiFAST16 SCNuLEAST16
|
||||||
|
|
||||||
|
syn keyword cAnsiName errno environ
|
||||||
|
|
||||||
|
syn keyword cAnsiName STDC CX_LIMITED_RANGE
|
||||||
|
syn keyword cAnsiName STDC FENV_ACCESS
|
||||||
|
syn keyword cAnsiName STDC FP_CONTRACT
|
||||||
|
|
||||||
|
syn keyword cAnsiName and bitor not_eq xor
|
||||||
|
syn keyword cAnsiName and_eq compl or xor_eq
|
||||||
|
syn keyword cAnsiName bitand not or_eq
|
||||||
|
|
||||||
|
hi def link cAnsiFunction cFunction
|
||||||
|
hi def link cAnsiName cIdentifier
|
||||||
|
hi def link cFunction Function
|
||||||
|
hi def link cIdentifier Identifier
|
||||||
|
|
||||||
|
" Booleans
|
||||||
|
syn keyword cBoolean true false TRUE FALSE
|
||||||
|
hi def link cBoolean Boolean
|
||||||
|
|
||||||
|
" -----------------------------------------------------------------------------
|
||||||
|
" Additional optional highlighting
|
||||||
|
" -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
" Operators
|
||||||
|
"syn match cOperator "\(<<\|>>\|[-+*/%&^|<>!=]\)="
|
||||||
|
"syn match cOperator "<<\|>>\|&&\|||\|++\|--\|->"
|
||||||
|
"syn match cOperator "[.!~*&%<>^|=,+-]"
|
||||||
|
"syn match cOperator "/[^/*=]"me=e-1
|
||||||
|
"syn match cOperator "/$"
|
||||||
|
"syn match cOperator "&&\|||"
|
||||||
|
"syn match cOperator "[][]"
|
||||||
|
"
|
||||||
|
"" Preprocs
|
||||||
|
"syn keyword cDefined defined contained containedin=cDefine
|
||||||
|
"hi def link cDefined cDefine
|
||||||
|
|
||||||
|
"" Functions
|
||||||
|
"syn match cUserFunction "\<\h\w*\>\(\s\|\n\)*("me=e-1 contains=cType,cDelimiter,cDefine
|
||||||
|
"syn match cUserFunctionPointer "(\s*\*\s*\h\w*\s*)\(\s\|\n\)*(" contains=cDelimiter,cOperator
|
||||||
|
"
|
||||||
|
"hi def link cUserFunction cFunction
|
||||||
|
"hi def link cUserFunctionPointer cFunction
|
||||||
|
"
|
||||||
|
"" Delimiters
|
||||||
|
"syn match cDelimiter "[();\\]"
|
||||||
|
"" foldmethod=syntax fix, courtesy of Ivan Freitas
|
||||||
|
"syn match cBraces display "[{}]"
|
||||||
|
|
||||||
|
" Links
|
||||||
|
"hi def link cDelimiter Delimiter
|
||||||
|
" foldmethod=syntax fix, courtesy of Ivan Freitas
|
||||||
|
"hi def link cBraces Delimiter
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,20 +1,31 @@
|
|||||||
" This file describes a very basic syntax for TomDoc comments in a
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cjsx') == -1
|
||||||
" CoffeeScript file.
|
|
||||||
"
|
if exists('b:current_syntax')
|
||||||
" For more information on TomDoc, check it out here: http://tomdoc.org/
|
let s:current_syntax=b:current_syntax
|
||||||
"
|
unlet b:current_syntax
|
||||||
|
endif
|
||||||
|
|
||||||
syn keyword tomdocKeywords Returns containedin=coffeeComment contained
|
if exists('s:current_syntax')
|
||||||
syn keyword tomdocKeywords Throws containedin=coffeeComment contained
|
let b:current_syntax=s:current_syntax
|
||||||
syn keyword tomdocKeywords Examples containedin=coffeeComment contained
|
endif
|
||||||
syn keyword tomdocKeywords Signature containedin=coffeeComment contained
|
|
||||||
|
|
||||||
syn match tomdocArguments +\s*[A-Za-z0-9_\-&\*:]*\(\s*- \)+he=e-3 containedin=coffeeComment contained
|
syn match cjsxEntity contained "&[^; \t]*;" contains=cjsxEntityPunct
|
||||||
|
syn match cjsxEntityPunct contained "[&.;]"
|
||||||
|
|
||||||
syn match tomdocDescriptions +\s*Public:+he=e-1 containedin=coffeeComment contained
|
syn match cjsxAttribProperty /[A-Za-z_][A-Za-z0-9_-]*/ contained
|
||||||
syn match tomdocDescriptions +\s*Internal:+he=e-1 containedin=coffeeComment contained
|
syn region cjsxAttrib start=/\s[A-Za-z_][A-Za-z0-9_-]/hs=s+1 end=/=/ end=/\s[A-Za-z_]/me=e-2 end=+[/>]+me=e-1 contained contains=cjsxAttribProperty
|
||||||
syn match tomdocDescriptions +\s*Deprecated:+he=e-1 containedin=coffeeComment contained
|
|
||||||
|
|
||||||
hi default link tomdocDescriptions String
|
syn region cjsxBody start=+[^/]>+ms=s+2 start=/>/ms=s+1 end=+<\/+me=e-2 contained contains=cjsxElement,coffeeCurlies,cjsxEntity
|
||||||
hi default link tomdocKeywords String
|
|
||||||
hi default link tomdocArguments HELP
|
syn region cjsxElement start=/<@\=[A-Za-z_][A-Za-z0-9-_\.]*/ end=/\/>/ end=/<\/@\=[A-Za-z_][A-Za-z0-9-_\.]*>/ contains=cjsxOpenTag,cjsxBody,coffeeCurlies,coffeeString,cjsxAttrib,coffeeNumber,coffeeFloat
|
||||||
|
|
||||||
|
syn cluster coffeeAll add=cjsxElement
|
||||||
|
|
||||||
|
" The default highlighting.
|
||||||
|
hi def link cjsxElement Function
|
||||||
|
hi def link cjsxTagName Function
|
||||||
|
hi def link cjsxEntity Statement
|
||||||
|
hi def link cjsxEntityPunct Type
|
||||||
|
hi def link cjsxAttribProperty Type
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,15 +1,21 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'c++11') == -1
|
||||||
|
|
||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: C++ Additions
|
" Language: C++ Additions
|
||||||
" Maintainer: Jon Haggblad <jon@haeggblad.com>
|
" Maintainer: Jon Haggblad <jon@haeggblad.com>
|
||||||
" URL: http://www.haeggblad.com
|
" URL: http://www.haeggblad.com
|
||||||
" Last Change: 17 May 2013
|
" Last Change: 21 Sep 2014
|
||||||
" Version: 0.1
|
" Version: 0.5
|
||||||
" Changelog:
|
" Changelog:
|
||||||
" 0.1 - initial version.
|
" 0.1 - initial version.
|
||||||
|
" 0.2 - C++14
|
||||||
|
" 0.3 - Incorporate lastest changes from Mizuchi/STL-Syntax
|
||||||
|
" 0.4 - Add template function highlight
|
||||||
|
" 0.5 - Redo template function highlight to be more robust. Add options.
|
||||||
"
|
"
|
||||||
" Additional Vim syntax highlighting for C++ (including C++11)
|
" Additional Vim syntax highlighting for C++ (including C++11/14)
|
||||||
"
|
"
|
||||||
" This file contains additional syntax highlighting that I use for my C++11
|
" This file contains additional syntax highlighting that I use for C++11/14
|
||||||
" development in Vim. Compared to the standard syntax highlighting for C++ it
|
" development in Vim. Compared to the standard syntax highlighting for C++ it
|
||||||
" adds highlighting of (user defined) functions and the containers and types
|
" adds highlighting of (user defined) functions and the containers and types
|
||||||
" in the standard library / boost.
|
" in the standard library / boost.
|
||||||
@@ -27,21 +33,35 @@
|
|||||||
" Based on the discussion in:
|
" Based on the discussion in:
|
||||||
" http://stackoverflow.com/questions/736701/class-function-names-highlighting-in-vim
|
" http://stackoverflow.com/questions/736701/class-function-names-highlighting-in-vim
|
||||||
" -----------------------------------------------------------------------------
|
" -----------------------------------------------------------------------------
|
||||||
syn match cCustomParen "(" contains=cParen contains=cCppParen
|
|
||||||
syn match cCustomFunc "\w\+\s*(\@=" contains=cCustomParen
|
|
||||||
syn match cCustomScope "::"
|
|
||||||
syn match cCustomClass "\w\+\s*::" contains=cCustomScope
|
|
||||||
|
|
||||||
|
" Functions
|
||||||
|
syn match cCustomParen "(" contains=cParen contains=cCppParen
|
||||||
|
syn match cCustomFunc "\w\+\s*(\@=" contains=cCustomParen
|
||||||
hi def link cCustomFunc Function
|
hi def link cCustomFunc Function
|
||||||
|
|
||||||
" Uncomment this to also highlight 'class::' and 'namespace::'
|
" Template functions
|
||||||
"hi def link cCustomClass Function
|
if exists('g:cpp_experimental_template_highlight') && g:cpp_experimental_template_highlight
|
||||||
|
syn region cCustomAngleBrackets matchgroup=AngleBracketContents start="\v%(<operator\_s*)@<!%(%(\_i|template\_s*)@<=\<[<=]@!|\<@<!\<[[:space:]<=]@!)" end='>' contains=@cppSTLgroup,cppStructure,cType,cCustomClass,cCustomAngleBrackets,cNumbers
|
||||||
|
syn match cCustomBrack "<\|>" contains=cCustomAngleBrackets
|
||||||
|
syn match cCustomTemplateFunc "\w\+\s*<.*>(\@=" contains=cCustomBrack,cCustomAngleBrackets
|
||||||
|
hi def link cCustomTemplateFunc Function
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Class and namespace scope
|
||||||
|
if exists('g:cpp_class_scope_highlight') && g:cpp_class_scope_highlight
|
||||||
|
syn match cCustomScope "::"
|
||||||
|
syn match cCustomClass "\w\+\s*::" contains=cCustomScope
|
||||||
|
hi def link cCustomClass Function " disabled for now
|
||||||
|
endif
|
||||||
|
|
||||||
" Alternative syntax that is used in:
|
" Alternative syntax that is used in:
|
||||||
" http://www.vim.org/scripts/script.php?script_id=3064
|
" http://www.vim.org/scripts/script.php?script_id=3064
|
||||||
"syn match cUserFunction "\<\h\w*\>\(\s\|\n\)*("me=e-1 contains=cType,cDelimiter,cDefine
|
"syn match cUserFunction "\<\h\w*\>\(\s\|\n\)*("me=e-1 contains=cType,cDelimiter,cDefine
|
||||||
"hi def link cCustomFunc Function
|
"hi def link cCustomFunc Function
|
||||||
|
|
||||||
|
" Cluster for all the stdlib functions defined below
|
||||||
|
syn cluster cppSTLgroup contains=cppSTLfunction,cppSTLfunctional,cppSTLconstant,cppSTLnamespace,cppSTLtype,cppSTLexception,cppSTLiterator,cppSTLiterator_tagcppSTLenumcppSTLioscppSTLcast
|
||||||
|
|
||||||
" -----------------------------------------------------------------------------
|
" -----------------------------------------------------------------------------
|
||||||
" Standard library types and functions.
|
" Standard library types and functions.
|
||||||
"
|
"
|
||||||
@@ -53,6 +73,10 @@ hi def link cCustomFunc Function
|
|||||||
" http://www.vim.org/scripts/script.php?script_id=1640
|
" http://www.vim.org/scripts/script.php?script_id=1640
|
||||||
" -----------------------------------------------------------------------------
|
" -----------------------------------------------------------------------------
|
||||||
syntax keyword cppSTLconstant badbit
|
syntax keyword cppSTLconstant badbit
|
||||||
|
syntax keyword cppSTLconstant cerr
|
||||||
|
syntax keyword cppSTLconstant cin
|
||||||
|
syntax keyword cppSTLconstant clog
|
||||||
|
syntax keyword cppSTLconstant cout
|
||||||
syntax keyword cppSTLconstant digits
|
syntax keyword cppSTLconstant digits
|
||||||
syntax keyword cppSTLconstant digits10
|
syntax keyword cppSTLconstant digits10
|
||||||
syntax keyword cppSTLconstant eofbit
|
syntax keyword cppSTLconstant eofbit
|
||||||
@@ -81,6 +105,10 @@ syntax keyword cppSTLconstant radix
|
|||||||
syntax keyword cppSTLconstant round_style
|
syntax keyword cppSTLconstant round_style
|
||||||
syntax keyword cppSTLconstant tinyness_before
|
syntax keyword cppSTLconstant tinyness_before
|
||||||
syntax keyword cppSTLconstant traps
|
syntax keyword cppSTLconstant traps
|
||||||
|
syntax keyword cppSTLconstant wcerr
|
||||||
|
syntax keyword cppSTLconstant wcin
|
||||||
|
syntax keyword cppSTLconstant wclog
|
||||||
|
syntax keyword cppSTLconstant wcout
|
||||||
syntax keyword cppSTLexception bad_alloc
|
syntax keyword cppSTLexception bad_alloc
|
||||||
syntax keyword cppSTLexception bad_array_new_length
|
syntax keyword cppSTLexception bad_array_new_length
|
||||||
syntax keyword cppSTLexception bad_exception
|
syntax keyword cppSTLexception bad_exception
|
||||||
@@ -108,6 +136,7 @@ syntax keyword cppSTLfunctional binary_negate
|
|||||||
syntax keyword cppSTLfunctional bit_and
|
syntax keyword cppSTLfunctional bit_and
|
||||||
syntax keyword cppSTLfunctional bit_not
|
syntax keyword cppSTLfunctional bit_not
|
||||||
syntax keyword cppSTLfunctional bit_or
|
syntax keyword cppSTLfunctional bit_or
|
||||||
|
syntax keyword cppSTLfunctional bit_xor
|
||||||
syntax keyword cppSTLfunctional divides
|
syntax keyword cppSTLfunctional divides
|
||||||
syntax keyword cppSTLfunctional equal_to
|
syntax keyword cppSTLfunctional equal_to
|
||||||
syntax keyword cppSTLfunctional greater
|
syntax keyword cppSTLfunctional greater
|
||||||
@@ -139,11 +168,12 @@ syntax keyword cppSTLfunction atexit
|
|||||||
syntax keyword cppSTLfunction atof
|
syntax keyword cppSTLfunction atof
|
||||||
syntax keyword cppSTLfunction atoi
|
syntax keyword cppSTLfunction atoi
|
||||||
syntax keyword cppSTLfunction atol
|
syntax keyword cppSTLfunction atol
|
||||||
|
syntax keyword cppSTLfunction atoll
|
||||||
syntax keyword cppSTLfunction back
|
syntax keyword cppSTLfunction back
|
||||||
syntax keyword cppSTLfunction back_inserter
|
syntax keyword cppSTLfunction back_inserter
|
||||||
syntax keyword cppSTLfunction bad
|
syntax keyword cppSTLfunction bad
|
||||||
syntax keyword cppSTLfunction beg
|
syntax keyword cppSTLfunction beg
|
||||||
syntax keyword cppSTLfunction begin
|
"syntax keyword cppSTLfunction begin
|
||||||
syntax keyword cppSTLfunction binary_compose
|
syntax keyword cppSTLfunction binary_compose
|
||||||
syntax keyword cppSTLfunction binary_negate
|
syntax keyword cppSTLfunction binary_negate
|
||||||
syntax keyword cppSTLfunction binary_search
|
syntax keyword cppSTLfunction binary_search
|
||||||
@@ -155,12 +185,9 @@ syntax keyword cppSTLfunction bsearch
|
|||||||
syntax keyword cppSTLfunction calloc
|
syntax keyword cppSTLfunction calloc
|
||||||
syntax keyword cppSTLfunction capacity
|
syntax keyword cppSTLfunction capacity
|
||||||
syntax keyword cppSTLfunction ceil
|
syntax keyword cppSTLfunction ceil
|
||||||
syntax keyword cppSTLfunction cerr
|
|
||||||
syntax keyword cppSTLfunction cin
|
|
||||||
syntax keyword cppSTLfunction clear
|
syntax keyword cppSTLfunction clear
|
||||||
syntax keyword cppSTLfunction clearerr
|
syntax keyword cppSTLfunction clearerr
|
||||||
syntax keyword cppSTLfunction clock
|
syntax keyword cppSTLfunction clock
|
||||||
syntax keyword cppSTLfunction clog
|
|
||||||
syntax keyword cppSTLfunction close
|
syntax keyword cppSTLfunction close
|
||||||
syntax keyword cppSTLfunction compare
|
syntax keyword cppSTLfunction compare
|
||||||
syntax keyword cppSTLfunction conj
|
syntax keyword cppSTLfunction conj
|
||||||
@@ -171,17 +198,16 @@ syntax keyword cppSTLfunction cos
|
|||||||
syntax keyword cppSTLfunction cosh
|
syntax keyword cppSTLfunction cosh
|
||||||
syntax keyword cppSTLfunction count
|
syntax keyword cppSTLfunction count
|
||||||
syntax keyword cppSTLfunction count_if
|
syntax keyword cppSTLfunction count_if
|
||||||
syntax keyword cppSTLfunction cout
|
|
||||||
syntax keyword cppSTLfunction c_str
|
syntax keyword cppSTLfunction c_str
|
||||||
syntax keyword cppSTLfunction ctime
|
syntax keyword cppSTLfunction ctime
|
||||||
syntax keyword cppSTLfunction data
|
"syntax keyword cppSTLfunction data
|
||||||
syntax keyword cppSTLfunction denorm_min
|
syntax keyword cppSTLfunction denorm_min
|
||||||
syntax keyword cppSTLfunction destroy
|
syntax keyword cppSTLfunction destroy
|
||||||
syntax keyword cppSTLfunction difftime
|
syntax keyword cppSTLfunction difftime
|
||||||
syntax keyword cppSTLfunction distance
|
syntax keyword cppSTLfunction distance
|
||||||
syntax keyword cppSTLfunction div
|
syntax keyword cppSTLfunction div
|
||||||
syntax keyword cppSTLfunction empty
|
syntax keyword cppSTLfunction empty
|
||||||
syntax keyword cppSTLfunction end
|
"syntax keyword cppSTLfunction end
|
||||||
syntax keyword cppSTLfunction eof
|
syntax keyword cppSTLfunction eof
|
||||||
syntax keyword cppSTLfunction epsilon
|
syntax keyword cppSTLfunction epsilon
|
||||||
syntax keyword cppSTLfunction equal
|
syntax keyword cppSTLfunction equal
|
||||||
@@ -312,7 +338,7 @@ syntax keyword cppSTLfunction norm
|
|||||||
syntax keyword cppSTLfunction not1
|
syntax keyword cppSTLfunction not1
|
||||||
syntax keyword cppSTLfunction not2
|
syntax keyword cppSTLfunction not2
|
||||||
syntax keyword cppSTLfunction nth_element
|
syntax keyword cppSTLfunction nth_element
|
||||||
syntax keyword cppSTLfunction numeric_limits
|
syntax keyword cppSTLtype numeric_limits
|
||||||
syntax keyword cppSTLfunction open
|
syntax keyword cppSTLfunction open
|
||||||
syntax keyword cppSTLfunction partial_sort
|
syntax keyword cppSTLfunction partial_sort
|
||||||
syntax keyword cppSTLfunction partial_sort_copy
|
syntax keyword cppSTLfunction partial_sort_copy
|
||||||
@@ -394,7 +420,7 @@ syntax keyword cppSTLfunction signal
|
|||||||
syntax keyword cppSTLfunction signaling_NaN
|
syntax keyword cppSTLfunction signaling_NaN
|
||||||
syntax keyword cppSTLfunction sin
|
syntax keyword cppSTLfunction sin
|
||||||
syntax keyword cppSTLfunction sinh
|
syntax keyword cppSTLfunction sinh
|
||||||
syntax keyword cppSTLfunction size
|
"syntax keyword cppSTLfunction size
|
||||||
syntax keyword cppSTLfunction sort
|
syntax keyword cppSTLfunction sort
|
||||||
syntax keyword cppSTLfunction sort_heap
|
syntax keyword cppSTLfunction sort_heap
|
||||||
syntax keyword cppSTLfunction splice
|
syntax keyword cppSTLfunction splice
|
||||||
@@ -423,8 +449,11 @@ syntax keyword cppSTLfunction strrchr
|
|||||||
syntax keyword cppSTLfunction strspn
|
syntax keyword cppSTLfunction strspn
|
||||||
syntax keyword cppSTLfunction strstr
|
syntax keyword cppSTLfunction strstr
|
||||||
syntax keyword cppSTLfunction strtod
|
syntax keyword cppSTLfunction strtod
|
||||||
|
syntax keyword cppSTLfunction strtof
|
||||||
syntax keyword cppSTLfunction strtok
|
syntax keyword cppSTLfunction strtok
|
||||||
syntax keyword cppSTLfunction strtol
|
syntax keyword cppSTLfunction strtol
|
||||||
|
syntax keyword cppSTLfunction strtold
|
||||||
|
syntax keyword cppSTLfunction strtoll
|
||||||
syntax keyword cppSTLfunction strtoul
|
syntax keyword cppSTLfunction strtoul
|
||||||
syntax keyword cppSTLfunction strxfrm
|
syntax keyword cppSTLfunction strxfrm
|
||||||
syntax keyword cppSTLfunction substr
|
syntax keyword cppSTLfunction substr
|
||||||
@@ -433,14 +462,13 @@ syntax keyword cppSTLfunction swap_ranges
|
|||||||
syntax keyword cppSTLfunction swprintf
|
syntax keyword cppSTLfunction swprintf
|
||||||
syntax keyword cppSTLfunction swscanf
|
syntax keyword cppSTLfunction swscanf
|
||||||
syntax keyword cppSTLfunction sync_with_stdio
|
syntax keyword cppSTLfunction sync_with_stdio
|
||||||
syntax keyword cppSTLfunction system
|
"syntax keyword cppSTLfunction system
|
||||||
syntax keyword cppSTLfunction tan
|
syntax keyword cppSTLfunction tan
|
||||||
syntax keyword cppSTLfunction tanh
|
syntax keyword cppSTLfunction tanh
|
||||||
syntax keyword cppSTLfunction tellg
|
syntax keyword cppSTLfunction tellg
|
||||||
syntax keyword cppSTLfunction tellp
|
syntax keyword cppSTLfunction tellp
|
||||||
syntax keyword cppSTLfunction test
|
"syntax keyword cppSTLfunction test
|
||||||
syntax keyword cppSTLfunction time
|
"syntax keyword cppSTLfunction time
|
||||||
syntax keyword cppSTLfunction time_t
|
|
||||||
syntax keyword cppSTLfunction tmpfile
|
syntax keyword cppSTLfunction tmpfile
|
||||||
syntax keyword cppSTLfunction tmpnam
|
syntax keyword cppSTLfunction tmpnam
|
||||||
syntax keyword cppSTLfunction tolower
|
syntax keyword cppSTLfunction tolower
|
||||||
@@ -462,7 +490,6 @@ syntax keyword cppSTLfunction unique_copy
|
|||||||
syntax keyword cppSTLfunction unsetf
|
syntax keyword cppSTLfunction unsetf
|
||||||
syntax keyword cppSTLfunction upper_bound
|
syntax keyword cppSTLfunction upper_bound
|
||||||
syntax keyword cppSTLfunction va_arg
|
syntax keyword cppSTLfunction va_arg
|
||||||
syntax keyword cppSTLfunction va_arg
|
|
||||||
syntax keyword cppSTLfunction va_copy
|
syntax keyword cppSTLfunction va_copy
|
||||||
syntax keyword cppSTLfunction va_end
|
syntax keyword cppSTLfunction va_end
|
||||||
syntax keyword cppSTLfunction value_comp
|
syntax keyword cppSTLfunction value_comp
|
||||||
@@ -539,12 +566,18 @@ syntax keyword cppSTLnamespace rel_ops
|
|||||||
syntax keyword cppSTLnamespace std
|
syntax keyword cppSTLnamespace std
|
||||||
syntax keyword cppSTLtype allocator
|
syntax keyword cppSTLtype allocator
|
||||||
syntax keyword cppSTLtype auto_ptr
|
syntax keyword cppSTLtype auto_ptr
|
||||||
|
syntax keyword cppSTLtype basic_filebuf
|
||||||
syntax keyword cppSTLtype basic_fstream
|
syntax keyword cppSTLtype basic_fstream
|
||||||
syntax keyword cppSTLtype basic_ifstream
|
syntax keyword cppSTLtype basic_ifstream
|
||||||
|
syntax keyword cppSTLtype basic_iostream
|
||||||
|
syntax keyword cppSTLtype basic_istream
|
||||||
syntax keyword cppSTLtype basic_istringstream
|
syntax keyword cppSTLtype basic_istringstream
|
||||||
syntax keyword cppSTLtype basic_ofstream
|
syntax keyword cppSTLtype basic_ofstream
|
||||||
|
syntax keyword cppSTLtype basic_ostream
|
||||||
syntax keyword cppSTLtype basic_ostringstream
|
syntax keyword cppSTLtype basic_ostringstream
|
||||||
|
syntax keyword cppSTLtype basic_streambuf
|
||||||
syntax keyword cppSTLtype basic_string
|
syntax keyword cppSTLtype basic_string
|
||||||
|
syntax keyword cppSTLtype basic_stringbuf
|
||||||
syntax keyword cppSTLtype basic_stringstream
|
syntax keyword cppSTLtype basic_stringstream
|
||||||
syntax keyword cppSTLtype binary_compose
|
syntax keyword cppSTLtype binary_compose
|
||||||
syntax keyword cppSTLtype binder1st
|
syntax keyword cppSTLtype binder1st
|
||||||
@@ -573,7 +606,11 @@ syntax keyword cppSTLtype ifstream
|
|||||||
syntax keyword cppSTLtype imaxdiv_t
|
syntax keyword cppSTLtype imaxdiv_t
|
||||||
syntax keyword cppSTLtype indirect_array
|
syntax keyword cppSTLtype indirect_array
|
||||||
syntax keyword cppSTLtype int_type
|
syntax keyword cppSTLtype int_type
|
||||||
|
syntax keyword cppSTLtype ios_base
|
||||||
|
syntax keyword cppSTLtype iostream
|
||||||
|
syntax keyword cppSTLtype istream
|
||||||
syntax keyword cppSTLtype istringstream
|
syntax keyword cppSTLtype istringstream
|
||||||
|
syntax keyword cppSTLtype istrstream
|
||||||
syntax keyword cppSTLtype iterator_traits
|
syntax keyword cppSTLtype iterator_traits
|
||||||
syntax keyword cppSTLtype key_compare
|
syntax keyword cppSTLtype key_compare
|
||||||
syntax keyword cppSTLtype key_type
|
syntax keyword cppSTLtype key_type
|
||||||
@@ -594,6 +631,7 @@ syntax keyword cppSTLtype off_type
|
|||||||
syntax keyword cppSTLtype ofstream
|
syntax keyword cppSTLtype ofstream
|
||||||
syntax keyword cppSTLtype ostream
|
syntax keyword cppSTLtype ostream
|
||||||
syntax keyword cppSTLtype ostringstream
|
syntax keyword cppSTLtype ostringstream
|
||||||
|
syntax keyword cppSTLtype ostrstream
|
||||||
syntax keyword cppSTLtype pair
|
syntax keyword cppSTLtype pair
|
||||||
syntax keyword cppSTLtype pointer
|
syntax keyword cppSTLtype pointer
|
||||||
syntax keyword cppSTLtype pointer_to_binary_function
|
syntax keyword cppSTLtype pointer_to_binary_function
|
||||||
@@ -610,11 +648,15 @@ syntax keyword cppSTLtype size_type
|
|||||||
syntax keyword cppSTLtype slice_array
|
syntax keyword cppSTLtype slice_array
|
||||||
syntax keyword cppSTLtype stack
|
syntax keyword cppSTLtype stack
|
||||||
syntax keyword cppSTLtype stream
|
syntax keyword cppSTLtype stream
|
||||||
|
syntax keyword cppSTLtype streambuf
|
||||||
syntax keyword cppSTLtype string
|
syntax keyword cppSTLtype string
|
||||||
syntax keyword cppSTLtype stringbuf
|
syntax keyword cppSTLtype stringbuf
|
||||||
syntax keyword cppSTLtype stringstream
|
syntax keyword cppSTLtype stringstream
|
||||||
|
syntax keyword cppSTLtype strstream
|
||||||
|
syntax keyword cppSTLtype strstreambuf
|
||||||
syntax keyword cppSTLtype temporary_buffer
|
syntax keyword cppSTLtype temporary_buffer
|
||||||
syntax keyword cppSTLtype test_type
|
syntax keyword cppSTLtype test_type
|
||||||
|
syntax keyword cppSTLtype time_t
|
||||||
syntax keyword cppSTLtype tm
|
syntax keyword cppSTLtype tm
|
||||||
syntax keyword cppSTLtype traits_type
|
syntax keyword cppSTLtype traits_type
|
||||||
syntax keyword cppSTLtype type_info
|
syntax keyword cppSTLtype type_info
|
||||||
@@ -626,18 +668,102 @@ syntax keyword cppSTLtype valarray
|
|||||||
syntax keyword cppSTLtype value_compare
|
syntax keyword cppSTLtype value_compare
|
||||||
syntax keyword cppSTLtype value_type
|
syntax keyword cppSTLtype value_type
|
||||||
syntax keyword cppSTLtype vector
|
syntax keyword cppSTLtype vector
|
||||||
|
syntax keyword cppSTLtype wfilebuf
|
||||||
syntax keyword cppSTLtype wfstream
|
syntax keyword cppSTLtype wfstream
|
||||||
syntax keyword cppSTLtype wifstream
|
syntax keyword cppSTLtype wifstream
|
||||||
|
syntax keyword cppSTLtype wiostream
|
||||||
|
syntax keyword cppSTLtype wistream
|
||||||
syntax keyword cppSTLtype wistringstream
|
syntax keyword cppSTLtype wistringstream
|
||||||
syntax keyword cppSTLtype wofstream
|
syntax keyword cppSTLtype wofstream
|
||||||
|
syntax keyword cppSTLtype wostream
|
||||||
syntax keyword cppSTLtype wostringstream
|
syntax keyword cppSTLtype wostringstream
|
||||||
|
syntax keyword cppSTLtype wstreambuf
|
||||||
syntax keyword cppSTLtype wstring
|
syntax keyword cppSTLtype wstring
|
||||||
syntax keyword cppSTLtype wstringbuf
|
syntax keyword cppSTLtype wstringbuf
|
||||||
syntax keyword cppSTLtype wstringstream
|
syntax keyword cppSTLtype wstringstream
|
||||||
|
|
||||||
|
syntax keyword cppSTLfunction mblen
|
||||||
|
syntax keyword cppSTLfunction mbtowc
|
||||||
|
syntax keyword cppSTLfunction wctomb
|
||||||
|
syntax keyword cppSTLfunction mbstowcs
|
||||||
|
syntax keyword cppSTLfunction wcstombs
|
||||||
|
syntax keyword cppSTLfunction mbsinit
|
||||||
|
syntax keyword cppSTLfunction btowc
|
||||||
|
syntax keyword cppSTLfunction wctob
|
||||||
|
syntax keyword cppSTLfunction mbrlen
|
||||||
|
syntax keyword cppSTLfunction mbrtowc
|
||||||
|
syntax keyword cppSTLfunction wcrtomb
|
||||||
|
syntax keyword cppSTLfunction mbsrtowcs
|
||||||
|
syntax keyword cppSTLfunction wcsrtombs
|
||||||
|
|
||||||
|
syntax keyword cppSTLtype mbstate_t
|
||||||
|
|
||||||
|
syntax keyword cppSTLconstant MB_LEN_MAX
|
||||||
|
syntax keyword cppSTLconstant MB_CUR_MAX
|
||||||
|
syntax keyword cppSTLconstant __STDC_UTF_16__
|
||||||
|
syntax keyword cppSTLconstant __STDC_UTF_32__
|
||||||
|
|
||||||
|
syntax keyword cppSTLfunction iswalnum
|
||||||
|
syntax keyword cppSTLfunction iswalpha
|
||||||
|
syntax keyword cppSTLfunction iswlower
|
||||||
|
syntax keyword cppSTLfunction iswupper
|
||||||
|
syntax keyword cppSTLfunction iswdigit
|
||||||
|
syntax keyword cppSTLfunction iswxdigit
|
||||||
|
syntax keyword cppSTLfunction iswcntrl
|
||||||
|
syntax keyword cppSTLfunction iswgraph
|
||||||
|
syntax keyword cppSTLfunction iswspace
|
||||||
|
syntax keyword cppSTLfunction iswprint
|
||||||
|
syntax keyword cppSTLfunction iswpunct
|
||||||
|
syntax keyword cppSTLfunction iswctype
|
||||||
|
syntax keyword cppSTLfunction wctype
|
||||||
|
|
||||||
|
syntax keyword cppSTLfunction towlower
|
||||||
|
syntax keyword cppSTLfunction towupper
|
||||||
|
syntax keyword cppSTLfunction towctrans
|
||||||
|
syntax keyword cppSTLfunction wctrans
|
||||||
|
|
||||||
|
syntax keyword cppSTLfunction wcstol
|
||||||
|
syntax keyword cppSTLfunction wcstoll
|
||||||
|
syntax keyword cppSTLfunction wcstoul
|
||||||
|
syntax keyword cppSTLfunction wcstoull
|
||||||
|
syntax keyword cppSTLfunction wcstof
|
||||||
|
syntax keyword cppSTLfunction wcstod
|
||||||
|
syntax keyword cppSTLfunction wcstold
|
||||||
|
|
||||||
|
syntax keyword cppSTLfunction wcscpy
|
||||||
|
syntax keyword cppSTLfunction wcsncpy
|
||||||
|
syntax keyword cppSTLfunction wcscat
|
||||||
|
syntax keyword cppSTLfunction wcsncat
|
||||||
|
syntax keyword cppSTLfunction wcsxfrm
|
||||||
|
syntax keyword cppSTLfunction wcslen
|
||||||
|
syntax keyword cppSTLfunction wcscmp
|
||||||
|
syntax keyword cppSTLfunction wcsncmp
|
||||||
|
syntax keyword cppSTLfunction wcscoll
|
||||||
|
syntax keyword cppSTLfunction wcschr
|
||||||
|
syntax keyword cppSTLfunction wcsrchr
|
||||||
|
syntax keyword cppSTLfunction wcsspn
|
||||||
|
syntax keyword cppSTLfunction wcscspn
|
||||||
|
syntax keyword cppSTLfunction wcspbrk
|
||||||
|
syntax keyword cppSTLfunction wcsstr
|
||||||
|
syntax keyword cppSTLfunction wcstok
|
||||||
|
syntax keyword cppSTLfunction wmemcpy
|
||||||
|
syntax keyword cppSTLfunction wmemmove
|
||||||
|
syntax keyword cppSTLfunction wmemcmp
|
||||||
|
syntax keyword cppSTLfunction wmemchr
|
||||||
|
syntax keyword cppSTLfunction wmemset
|
||||||
|
|
||||||
|
syntax keyword cppSTLtype wctrans_t
|
||||||
|
syntax keyword cppSTLtype wctype_t
|
||||||
|
syntax keyword cppSTLtype wint_t
|
||||||
|
|
||||||
|
syntax keyword cppSTLconstant WEOF
|
||||||
|
syntax keyword cppSTLconstant WCHAR_MIN
|
||||||
|
syntax keyword cppSTLconstant WCHAR_MAX
|
||||||
|
|
||||||
if !exists("cpp_no_cpp11")
|
if !exists("cpp_no_cpp11")
|
||||||
syntax keyword cppSTLtype nullptr_t max_align_t
|
syntax keyword cppSTLtype nullptr_t max_align_t
|
||||||
syntax keyword cppSTLtype type_index
|
syntax keyword cppSTLtype type_index
|
||||||
|
syntax keyword cppSTLconstant nullptr
|
||||||
|
|
||||||
" type_traits
|
" type_traits
|
||||||
syntax keyword cppSTLtype is_void
|
syntax keyword cppSTLtype is_void
|
||||||
@@ -727,6 +853,10 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLtype integral_constant
|
syntax keyword cppSTLtype integral_constant
|
||||||
syntax keyword cppSTLtype true_type
|
syntax keyword cppSTLtype true_type
|
||||||
syntax keyword cppSTLtype false_type
|
syntax keyword cppSTLtype false_type
|
||||||
|
syntax keyword cppSTLfunction declval
|
||||||
|
|
||||||
|
syntax keyword cppSTLconstant piecewise_construct
|
||||||
|
syntax keyword cppSTLtype piecewise_construct_t
|
||||||
|
|
||||||
" memory
|
" memory
|
||||||
syntax keyword cppSTLtype unique_ptr
|
syntax keyword cppSTLtype unique_ptr
|
||||||
@@ -751,6 +881,12 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLtype pointer_traits
|
syntax keyword cppSTLtype pointer_traits
|
||||||
syntax keyword cppSTLfunction addressof
|
syntax keyword cppSTLfunction addressof
|
||||||
syntax keyword cppSTLfunction align
|
syntax keyword cppSTLfunction align
|
||||||
|
syntax keyword cppSTLfunction make_shared
|
||||||
|
syntax keyword cppSTLfunction allocate_shared
|
||||||
|
syntax keyword cppSTLcast static_pointer_cast
|
||||||
|
syntax keyword cppSTLcast dynamic_pointer_cast
|
||||||
|
syntax keyword cppSTLcast const_pointer_cast
|
||||||
|
syntax keyword cppSTLfunction get_deleter
|
||||||
|
|
||||||
" function object
|
" function object
|
||||||
syntax keyword cppSTLfunction bind
|
syntax keyword cppSTLfunction bind
|
||||||
@@ -776,6 +912,7 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLfunction quick_exit
|
syntax keyword cppSTLfunction quick_exit
|
||||||
syntax keyword cppSTLfunction _Exit
|
syntax keyword cppSTLfunction _Exit
|
||||||
syntax keyword cppSTLfunction at_quick_exit
|
syntax keyword cppSTLfunction at_quick_exit
|
||||||
|
syntax keyword cppSTLfunction forward
|
||||||
|
|
||||||
" date and time
|
" date and time
|
||||||
syntax keyword cppSTLnamespace chrono
|
syntax keyword cppSTLnamespace chrono
|
||||||
@@ -784,6 +921,8 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLtype steady_clock
|
syntax keyword cppSTLtype steady_clock
|
||||||
syntax keyword cppSTLtype high_resolution_clock
|
syntax keyword cppSTLtype high_resolution_clock
|
||||||
syntax keyword cppSTLtype time_point
|
syntax keyword cppSTLtype time_point
|
||||||
|
syntax keyword cppSTLcast duration_cast
|
||||||
|
syntax keyword cppSTLcast time_point_cast
|
||||||
|
|
||||||
" tuple
|
" tuple
|
||||||
syntax keyword cppSTLtype tuple
|
syntax keyword cppSTLtype tuple
|
||||||
@@ -842,6 +981,7 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLfunction copy_if
|
syntax keyword cppSTLfunction copy_if
|
||||||
syntax keyword cppSTLfunction copy_n
|
syntax keyword cppSTLfunction copy_n
|
||||||
syntax keyword cppSTLfunction move
|
syntax keyword cppSTLfunction move
|
||||||
|
syntax keyword cppSTLfunction move_if_noexcept
|
||||||
syntax keyword cppSTLfunction move_backward
|
syntax keyword cppSTLfunction move_backward
|
||||||
syntax keyword cppSTLfunction shuffle
|
syntax keyword cppSTLfunction shuffle
|
||||||
syntax keyword cppSTLfunction is_partitioned
|
syntax keyword cppSTLfunction is_partitioned
|
||||||
@@ -916,7 +1056,7 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLconstant FLT_EVAL_METHOD
|
syntax keyword cppSTLconstant FLT_EVAL_METHOD
|
||||||
|
|
||||||
" complex
|
" complex
|
||||||
syntax keyword cppSTLfunction proj
|
"syntax keyword cppSTLfunction proj
|
||||||
|
|
||||||
" random
|
" random
|
||||||
syntax keyword cppSTLtype linear_congruential_engine
|
syntax keyword cppSTLtype linear_congruential_engine
|
||||||
@@ -968,6 +1108,7 @@ if !exists("cpp_no_cpp11")
|
|||||||
|
|
||||||
" locale
|
" locale
|
||||||
syntax keyword cppSTLfunction isblank
|
syntax keyword cppSTLfunction isblank
|
||||||
|
syntax keyword cppSTLfunction iswblank
|
||||||
syntax keyword cppSTLtype wstring_convert
|
syntax keyword cppSTLtype wstring_convert
|
||||||
syntax keyword cppSTLtype wbuffer_convert
|
syntax keyword cppSTLtype wbuffer_convert
|
||||||
syntax keyword cppSTLtype codecvt_utf8
|
syntax keyword cppSTLtype codecvt_utf8
|
||||||
@@ -1016,16 +1157,55 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLfunction atomic_flag_clear
|
syntax keyword cppSTLfunction atomic_flag_clear
|
||||||
syntax keyword cppSTLfunction atomic_flag_clear_explicit
|
syntax keyword cppSTLfunction atomic_flag_clear_explicit
|
||||||
|
|
||||||
|
syntax keyword cppSTLtype atomic_bool
|
||||||
|
syntax keyword cppSTLtype atomic_char
|
||||||
|
syntax keyword cppSTLtype atomic_schar
|
||||||
|
syntax keyword cppSTLtype atomic_uchar
|
||||||
|
syntax keyword cppSTLtype atomic_short
|
||||||
|
syntax keyword cppSTLtype atomic_ushort
|
||||||
|
syntax keyword cppSTLtype atomic_int
|
||||||
|
syntax keyword cppSTLtype atomic_uint
|
||||||
|
syntax keyword cppSTLtype atomic_long
|
||||||
|
syntax keyword cppSTLtype atomic_ulong
|
||||||
|
syntax keyword cppSTLtype atomic_llong
|
||||||
|
syntax keyword cppSTLtype atomic_ullong
|
||||||
|
syntax keyword cppSTLtype atomic_char16_t
|
||||||
|
syntax keyword cppSTLtype atomic_char32_t
|
||||||
|
syntax keyword cppSTLtype atomic_wchar_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_least8_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_least8_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_least16_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_least16_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_least32_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_least32_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_least64_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_least64_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_fast8_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_fast8_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_fast16_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_fast16_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_fast32_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_fast32_t
|
||||||
|
syntax keyword cppSTLtype atomic_int_fast64_t
|
||||||
|
syntax keyword cppSTLtype atomic_uint_fast64_t
|
||||||
|
syntax keyword cppSTLtype atomic_intptr_t
|
||||||
|
syntax keyword cppSTLtype atomic_uintptr_t
|
||||||
|
syntax keyword cppSTLtype atomic_size_t
|
||||||
|
syntax keyword cppSTLtype atomic_ptrdiff_t
|
||||||
|
syntax keyword cppSTLtype atomic_intmax_t
|
||||||
|
syntax keyword cppSTLtype atomic_uintmax_t
|
||||||
|
|
||||||
syntax keyword cppSTLtype memory_order
|
syntax keyword cppSTLtype memory_order
|
||||||
syntax keyword cppSTLfunction atomic_init
|
syntax keyword cppSTLfunction atomic_init
|
||||||
syntax keyword cppSTLfunction ATOMIC_VAR_INIT
|
syntax keyword cppSTLfunction ATOMIC_VAR_INIT
|
||||||
syntax keyword cppSTLconstant ATOMIC_FLAG_INIT
|
syntax keyword cppSTLconstant ATOMIC_FLAG_INIT
|
||||||
syntax keyword cppSTLconstant kill_dependency
|
syntax keyword cppSTLfunction kill_dependency
|
||||||
syntax keyword cppSTLconstant atomic_thread_fence
|
syntax keyword cppSTLfunction atomic_thread_fence
|
||||||
syntax keyword cppSTLconstant atomic_signal_fence
|
syntax keyword cppSTLfunction atomic_signal_fence
|
||||||
|
|
||||||
" thread
|
" thread
|
||||||
syntax keyword cppSTLtype thread
|
syntax keyword cppSTLtype thread
|
||||||
|
syntax keyword cppSTLnamespace this_thread
|
||||||
syntax keyword cppSTLfunction yield
|
syntax keyword cppSTLfunction yield
|
||||||
syntax keyword cppSTLfunction get_id
|
syntax keyword cppSTLfunction get_id
|
||||||
syntax keyword cppSTLfunction sleep_for
|
syntax keyword cppSTLfunction sleep_for
|
||||||
@@ -1061,8 +1241,8 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLtype future
|
syntax keyword cppSTLtype future
|
||||||
syntax keyword cppSTLtype shared_future
|
syntax keyword cppSTLtype shared_future
|
||||||
|
|
||||||
"syntax keyword cppSTLfunction async
|
syntax keyword cppSTLfunction async
|
||||||
"syntax keyword cppSTLenum launch
|
syntax keyword cppSTLenum launch
|
||||||
|
|
||||||
syntax keyword cppSTLenum future_status
|
syntax keyword cppSTLenum future_status
|
||||||
syntax keyword cppSTLenum future_errc
|
syntax keyword cppSTLenum future_errc
|
||||||
@@ -1114,7 +1294,54 @@ if !exists("cpp_no_cpp11")
|
|||||||
|
|
||||||
"limits
|
"limits
|
||||||
syntax keyword cppSTLfunction lowest
|
syntax keyword cppSTLfunction lowest
|
||||||
endif
|
|
||||||
|
"cuchar
|
||||||
|
syntax keyword cppSTLfunction mbrtoc16
|
||||||
|
syntax keyword cppSTLfunction c16rtomb
|
||||||
|
syntax keyword cppSTLfunction mbrtoc32
|
||||||
|
syntax keyword cppSTLfunction c32rtomb
|
||||||
|
|
||||||
|
"cinttypes
|
||||||
|
syntax keyword cppSTLfunction strtoimax
|
||||||
|
syntax keyword cppSTLfunction strtoumax
|
||||||
|
syntax keyword cppSTLfunction wcstoimax
|
||||||
|
syntax keyword cppSTLfunction wcstoumax
|
||||||
|
|
||||||
|
syntax keyword cppSTLtype nanoseconds
|
||||||
|
syntax keyword cppSTLtype microseconds
|
||||||
|
syntax keyword cppSTLtype milliseconds
|
||||||
|
syntax keyword cppSTLtype seconds
|
||||||
|
syntax keyword cppSTLtype minutes
|
||||||
|
syntax keyword cppSTLtype hours
|
||||||
|
|
||||||
|
"raw string literals
|
||||||
|
syntax region cppRawString matchgroup=cppRawDelimiter start=@\%(u8\|[uLU]\)\=R"\z([[:alnum:]_{}[\]#<>%:;.?*\+\-/\^&|~!=,"']\{,16}\)(@ end=/)\z1"/ contains=@Spell
|
||||||
|
|
||||||
|
syn match cNumber "0b[01]\+"
|
||||||
|
endif " C++11
|
||||||
|
|
||||||
|
if !exists("cpp_no_cpp14")
|
||||||
|
"dynarray
|
||||||
|
syntax keyword cppSTLtype dynarray
|
||||||
|
|
||||||
|
"thread
|
||||||
|
syntax keyword cppSTLtype shared_mutex
|
||||||
|
syntax keyword cppSTLtype shared_lock
|
||||||
|
|
||||||
|
"memory
|
||||||
|
syntax keyword cppSTLfunction make_unique
|
||||||
|
endif " C++14
|
||||||
|
|
||||||
|
if !exists("cpp_no_boost")
|
||||||
|
"optional is not a part of C++14 anymore
|
||||||
|
syntax keyword cppSTLtype optional
|
||||||
|
"syntax keyword cppSTLfunction value
|
||||||
|
syntax keyword cppSTLfunction value_or
|
||||||
|
syntax keyword cppSTLfunction make_optional
|
||||||
|
|
||||||
|
syntax keyword cppSTLnamespace boost
|
||||||
|
syntax keyword cppSTLcast lexical_cast
|
||||||
|
endif " Boost
|
||||||
|
|
||||||
" Default highlighting
|
" Default highlighting
|
||||||
if version >= 508 || !exists("did_cpp_syntax_inits")
|
if version >= 508 || !exists("did_cpp_syntax_inits")
|
||||||
@@ -1125,15 +1352,19 @@ if version >= 508 || !exists("did_cpp_syntax_inits")
|
|||||||
command -nargs=+ HiLink hi def link <args>
|
command -nargs=+ HiLink hi def link <args>
|
||||||
endif
|
endif
|
||||||
HiLink cppSTLfunction Function
|
HiLink cppSTLfunction Function
|
||||||
HiLink cppSTLfunctional Type
|
HiLink cppSTLfunctional Typedef
|
||||||
HiLink cppSTLconstant Constant
|
HiLink cppSTLconstant Constant
|
||||||
HiLink cppSTLnamespace Constant
|
HiLink cppSTLnamespace Constant
|
||||||
HiLink cppSTLtype Type
|
HiLink cppSTLtype Typedef
|
||||||
HiLink cppSTLexception Type
|
HiLink cppSTLexception Exception
|
||||||
HiLink cppSTLiterator Type
|
HiLink cppSTLiterator Typedef
|
||||||
HiLink cppSTLiterator_tag Type
|
HiLink cppSTLiterator_tag Typedef
|
||||||
HiLink cppSTLenum Type
|
HiLink cppSTLenum Typedef
|
||||||
HiLink cppSTLios Function
|
HiLink cppSTLios Function
|
||||||
|
HiLink cppSTLcast Statement " be consistent with official syntax
|
||||||
|
HiLink cppRawString String
|
||||||
|
HiLink cppRawDelimiter Delimiter
|
||||||
delcommand HiLink
|
delcommand HiLink
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,500 +0,0 @@
|
|||||||
" Language: Colorful CSS Color Preview
|
|
||||||
" Author: Aristotle Pagaltzis <pagaltzis@gmx.de>
|
|
||||||
" Last Change: 2013-03-09
|
|
||||||
" Licence: No Warranties. WTFPL. But please tell me!
|
|
||||||
" Version: 0.7.3
|
|
||||||
" vim:et:ts=2 sw=2 sts=2
|
|
||||||
"
|
|
||||||
" KNOWN PROBLEMS: compatibility with `cursorline` -- https://github.com/ap/vim-css-color/issues/24
|
|
||||||
|
|
||||||
let s:hex={}
|
|
||||||
for i in range(0, 255)
|
|
||||||
let s:hex[ printf( '%02x', i ) ] = i
|
|
||||||
endfor
|
|
||||||
|
|
||||||
let s:black = '#000000'
|
|
||||||
let s:white = '#ffffff'
|
|
||||||
|
|
||||||
function! s:FGForBG(color)
|
|
||||||
" pick suitable text color given a background color
|
|
||||||
let color = tolower(a:color)
|
|
||||||
let r = s:hex[color[0:1]]
|
|
||||||
let g = s:hex[color[2:3]]
|
|
||||||
let b = s:hex[color[4:5]]
|
|
||||||
return r*30 + g*59 + b*11 > 12000 ? s:black : s:white
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
let b:color_pattern = {}
|
|
||||||
let s:color_prefix = 'gui'
|
|
||||||
let s:fg_color_calc = 'let color = "#" . toupper(a:color)'
|
|
||||||
|
|
||||||
function! s:MatchColorValue(color, pattern)
|
|
||||||
if ! len(a:color) | return | endif
|
|
||||||
|
|
||||||
if has_key( b:color_pattern, a:pattern ) | return | endif
|
|
||||||
let b:color_pattern[a:pattern] = 1
|
|
||||||
|
|
||||||
let pattern = a:pattern
|
|
||||||
" iff pattern ends on word character, require word break to match
|
|
||||||
if pattern =~ '\>$' | let pattern .= '\>' | endif
|
|
||||||
|
|
||||||
let group = 'cssColor' . tolower(a:color)
|
|
||||||
exe 'syn match' group '/'.escape(pattern, '/').'/ contained'
|
|
||||||
exe 'syn cluster cssColors add='.group
|
|
||||||
exe s:fg_color_calc
|
|
||||||
exe 'hi' group s:color_prefix.'bg='.color s:color_prefix.'fg='.s:FGForBG(a:color)
|
|
||||||
return ''
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! s:HexForRGBValue(r,g,b)
|
|
||||||
" Convert 80% -> 204, 100% -> 255, etc.
|
|
||||||
let rgb = map( [a:r,a:g,a:b], 'v:val =~ "%$" ? ( 255 * v:val ) / 100 : v:val' )
|
|
||||||
return printf( '%02x%02x%02x', rgb[0], rgb[1], rgb[2] )
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! s:HexForHSLValue(h,s,l)
|
|
||||||
" Convert 80% -> 0.8, 100% -> 1.0, etc.
|
|
||||||
let [s,l] = map( [a:s, a:l], 'v:val =~ "%$" ? v:val / 100.0 : str2float(v:val)' )
|
|
||||||
" algorithm transcoded to vim from http://www.w3.org/TR/css3-color/#hsl-color
|
|
||||||
let hh = ( a:h % 360 ) / 360.0
|
|
||||||
let m2 = l <= 0.5 ? l * ( s + 1 ) : l + s - l * s
|
|
||||||
let m1 = l * 2 - m2
|
|
||||||
let rgb = []
|
|
||||||
for h in [ hh + (1/3.0), hh, hh - (1/3.0) ]
|
|
||||||
let h = h < 0 ? h + 1 : h > 1 ? h - 1 : h
|
|
||||||
let v =
|
|
||||||
\ h * 6 < 1 ? m1 + ( m2 - m1 ) * h * 6 :
|
|
||||||
\ h * 2 < 1 ? m2 :
|
|
||||||
\ h * 3 < 2 ? m1 + ( m2 - m1 ) * ( 2/3.0 - h ) * 6 :
|
|
||||||
\ m1
|
|
||||||
if v > 1.0 | return '' | endif
|
|
||||||
let rgb += [ float2nr( 255 * v ) ]
|
|
||||||
endfor
|
|
||||||
return printf( '%02x%02x%02x', rgb[0], rgb[1], rgb[2] )
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! s:PreviewCSSColorInLine()
|
|
||||||
" TODO use cssColor matchdata
|
|
||||||
"
|
|
||||||
" N.B. these substitute() calls are here just for the side effect
|
|
||||||
" of invoking s:MatchColorValue during substitution -- because
|
|
||||||
" match() and friends do not allow finding all matches in a single
|
|
||||||
" scan without examining the start of the string over and over
|
|
||||||
call substitute( substitute( substitute( substitute( getline('.'),
|
|
||||||
\ '#\(\x\)\(\x\)\(\x\)\>', '\=s:MatchColorValue(submatch(1).submatch(1).submatch(2).submatch(2).submatch(3).submatch(3), submatch(0))', 'g' ),
|
|
||||||
\ '#\(\x\{6}\)\>', '\=s:MatchColorValue(submatch(1), submatch(0))', 'g' ),
|
|
||||||
\ 'rgba\?(\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*\%(,[^)]*\)\?)', '\=s:MatchColorValue(s:HexForRGBValue(submatch(1),submatch(2),submatch(3)),submatch(0))', 'g' ),
|
|
||||||
\ 'hsla\?(\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*\%(,[^)]*\)\?)', '\=s:MatchColorValue(s:HexForHSLValue(submatch(1),submatch(2),submatch(3)),submatch(0))', 'g' )
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
if has("gui_running") || &t_Co==256
|
|
||||||
" HACK modify cssDefinition to add @cssColors to its contains
|
|
||||||
redir => cssdef
|
|
||||||
silent! syn list cssDefinition
|
|
||||||
redir END
|
|
||||||
if len( cssdef )
|
|
||||||
for out in split( cssdef, "\n" )
|
|
||||||
if out !~ '^cssDefinition ' | continue | endif
|
|
||||||
let out = substitute( out, ' \+xxx \+', ' ', '' )
|
|
||||||
let out = substitute( out, ' contains=\zs', '@cssColors,', '' )
|
|
||||||
exe 'syn region' out
|
|
||||||
endfor
|
|
||||||
endif
|
|
||||||
|
|
||||||
if ! has('gui_running')
|
|
||||||
|
|
||||||
let s:black = 0
|
|
||||||
let s:white = 15
|
|
||||||
|
|
||||||
let s:color_prefix = 'cterm'
|
|
||||||
let s:fg_color_calc = 'let color = s:XTermColorForRGB(a:color)'
|
|
||||||
|
|
||||||
" preset 16 vt100 colors
|
|
||||||
let s:xtermcolor = [
|
|
||||||
\ [ 0x00, 0x00, 0x00, 0 ],
|
|
||||||
\ [ 0xCD, 0x00, 0x00, 1 ],
|
|
||||||
\ [ 0x00, 0xCD, 0x00, 2 ],
|
|
||||||
\ [ 0xCD, 0xCD, 0x00, 3 ],
|
|
||||||
\ [ 0x00, 0x00, 0xEE, 4 ],
|
|
||||||
\ [ 0xCD, 0x00, 0xCD, 5 ],
|
|
||||||
\ [ 0x00, 0xCD, 0xCD, 6 ],
|
|
||||||
\ [ 0xE5, 0xE5, 0xE5, 7 ],
|
|
||||||
\ [ 0x7F, 0x7F, 0x7F, 8 ],
|
|
||||||
\ [ 0xFF, 0x00, 0x00, 9 ],
|
|
||||||
\ [ 0x00, 0xFF, 0x00, 10 ],
|
|
||||||
\ [ 0xFF, 0xFF, 0x00, 11 ],
|
|
||||||
\ [ 0x5C, 0x5C, 0xFF, 12 ],
|
|
||||||
\ [ 0xFF, 0x00, 0xFF, 13 ],
|
|
||||||
\ [ 0x00, 0xFF, 0xFF, 14 ],
|
|
||||||
\ [ 0xFF, 0xFF, 0xFF, 15 ]]
|
|
||||||
" grayscale ramp
|
|
||||||
" (value is 8+10*lum for lum in 0..23)
|
|
||||||
let s:xtermcolor += [
|
|
||||||
\ [ 0x08, 0x08, 0x08, 232 ],
|
|
||||||
\ [ 0x12, 0x12, 0x12, 233 ],
|
|
||||||
\ [ 0x1C, 0x1C, 0x1C, 234 ],
|
|
||||||
\ [ 0x26, 0x26, 0x26, 235 ],
|
|
||||||
\ [ 0x30, 0x30, 0x30, 236 ],
|
|
||||||
\ [ 0x3A, 0x3A, 0x3A, 237 ],
|
|
||||||
\ [ 0x44, 0x44, 0x44, 238 ],
|
|
||||||
\ [ 0x4E, 0x4E, 0x4E, 239 ],
|
|
||||||
\ [ 0x58, 0x58, 0x58, 240 ],
|
|
||||||
\ [ 0x62, 0x62, 0x62, 241 ],
|
|
||||||
\ [ 0x6C, 0x6C, 0x6C, 242 ],
|
|
||||||
\ [ 0x76, 0x76, 0x76, 243 ],
|
|
||||||
\ [ 0x80, 0x80, 0x80, 244 ],
|
|
||||||
\ [ 0x8A, 0x8A, 0x8A, 245 ],
|
|
||||||
\ [ 0x94, 0x94, 0x94, 246 ],
|
|
||||||
\ [ 0x9E, 0x9E, 0x9E, 247 ],
|
|
||||||
\ [ 0xA8, 0xA8, 0xA8, 248 ],
|
|
||||||
\ [ 0xB2, 0xB2, 0xB2, 249 ],
|
|
||||||
\ [ 0xBC, 0xBC, 0xBC, 250 ],
|
|
||||||
\ [ 0xC6, 0xC6, 0xC6, 251 ],
|
|
||||||
\ [ 0xD0, 0xD0, 0xD0, 252 ],
|
|
||||||
\ [ 0xDA, 0xDA, 0xDA, 253 ],
|
|
||||||
\ [ 0xE4, 0xE4, 0xE4, 254 ],
|
|
||||||
\ [ 0xEE, 0xEE, 0xEE, 255 ]]
|
|
||||||
|
|
||||||
" the 6 values used in the xterm color cube
|
|
||||||
" 0 95 135 175 215 255
|
|
||||||
let s:cubergb = [ 0x00, 0x5F, 0x87, 0xAF, 0xD7, 0xFF ]
|
|
||||||
|
|
||||||
" 0..255 mapped to 0..5 based on the color cube values
|
|
||||||
let s:xvquant = repeat([0],48)
|
|
||||||
\ + repeat([1],68)
|
|
||||||
\ + repeat([2],40)
|
|
||||||
\ + repeat([3],40)
|
|
||||||
\ + repeat([4],40)
|
|
||||||
\ + repeat([5],20)
|
|
||||||
" tweak the mapping for the exact matches (0 and 1 already correct)
|
|
||||||
let s:xvquant[s:cubergb[2]] = 2
|
|
||||||
let s:xvquant[s:cubergb[3]] = 3
|
|
||||||
let s:xvquant[s:cubergb[4]] = 4
|
|
||||||
let s:xvquant[s:cubergb[5]] = 5
|
|
||||||
|
|
||||||
" selects the nearest xterm color for a rgb value like #FF0000
|
|
||||||
function! s:XTermColorForRGB(color)
|
|
||||||
let best_match=0
|
|
||||||
let smallest_distance = 10000000000
|
|
||||||
let color = tolower(a:color)
|
|
||||||
let r = s:hex[color[0:1]]
|
|
||||||
let g = s:hex[color[2:3]]
|
|
||||||
let b = s:hex[color[4:5]]
|
|
||||||
|
|
||||||
let vr = s:xvquant[r]
|
|
||||||
let vg = s:xvquant[g]
|
|
||||||
let vb = s:xvquant[b]
|
|
||||||
let cidx = vr * 36 + vg * 6 + vb + 16
|
|
||||||
let ccol = [ s:cubergb[vr], s:cubergb[vg], s:cubergb[vb], cidx ]
|
|
||||||
|
|
||||||
for [tr,tg,tb,idx] in [ ccol ] + s:xtermcolor
|
|
||||||
let dr = tr - r
|
|
||||||
let dg = tg - g
|
|
||||||
let db = tb - b
|
|
||||||
let distance = dr*dr + dg*dg + db*db
|
|
||||||
if distance == 0 | return idx | endif
|
|
||||||
if distance > smallest_distance | continue | endif
|
|
||||||
let smallest_distance = distance
|
|
||||||
let best_match = idx
|
|
||||||
endfor
|
|
||||||
return best_match
|
|
||||||
endfunction
|
|
||||||
endif
|
|
||||||
|
|
||||||
hi cssColor000000 guibg=#000000 guifg=#FFFFFF ctermbg=16 ctermfg=231 | syn cluster cssColors add=cssColor000000
|
|
||||||
hi cssColor000080 guibg=#000080 guifg=#FFFFFF ctermbg=235 ctermfg=231 | syn cluster cssColors add=cssColor000080
|
|
||||||
hi cssColor00008b guibg=#00008B guifg=#FFFFFF ctermbg=4 ctermfg=231 | syn cluster cssColors add=cssColor00008b
|
|
||||||
hi cssColor0000cd guibg=#0000CD guifg=#FFFFFF ctermbg=4 ctermfg=231 | syn cluster cssColors add=cssColor0000cd
|
|
||||||
hi cssColor0000ff guibg=#0000FF guifg=#FFFFFF ctermbg=4 ctermfg=231 | syn cluster cssColors add=cssColor0000ff
|
|
||||||
hi cssColor006400 guibg=#006400 guifg=#FFFFFF ctermbg=235 ctermfg=231 | syn cluster cssColors add=cssColor006400
|
|
||||||
hi cssColor008000 guibg=#008000 guifg=#FFFFFF ctermbg=2 ctermfg=231 | syn cluster cssColors add=cssColor008000
|
|
||||||
hi cssColor008080 guibg=#008080 guifg=#FFFFFF ctermbg=30 ctermfg=231 | syn cluster cssColors add=cssColor008080
|
|
||||||
hi cssColor008b8b guibg=#008B8B guifg=#FFFFFF ctermbg=30 ctermfg=231 | syn cluster cssColors add=cssColor008b8b
|
|
||||||
hi cssColor00bfff guibg=#00BFFF guifg=#000000 ctermbg=6 ctermfg=16 | syn cluster cssColors add=cssColor00bfff
|
|
||||||
hi cssColor00ced1 guibg=#00CED1 guifg=#000000 ctermbg=6 ctermfg=16 | syn cluster cssColors add=cssColor00ced1
|
|
||||||
hi cssColor00fa9a guibg=#00FA9A guifg=#000000 ctermbg=6 ctermfg=16 | syn cluster cssColors add=cssColor00fa9a
|
|
||||||
hi cssColor00ff00 guibg=#00FF00 guifg=#000000 ctermbg=10 ctermfg=16 | syn cluster cssColors add=cssColor00ff00
|
|
||||||
hi cssColor00ff7f guibg=#00FF7F guifg=#000000 ctermbg=6 ctermfg=16 | syn cluster cssColors add=cssColor00ff7f
|
|
||||||
hi cssColor00ffff guibg=#00FFFF guifg=#000000 ctermbg=51 ctermfg=16 | syn cluster cssColors add=cssColor00ffff
|
|
||||||
hi cssColor191970 guibg=#191970 guifg=#FFFFFF ctermbg=237 ctermfg=231 | syn cluster cssColors add=cssColor191970
|
|
||||||
hi cssColor1e90ff guibg=#1E90FF guifg=#000000 ctermbg=12 ctermfg=16 | syn cluster cssColors add=cssColor1e90ff
|
|
||||||
hi cssColor20b2aa guibg=#20B2AA guifg=#000000 ctermbg=37 ctermfg=16 | syn cluster cssColors add=cssColor20b2aa
|
|
||||||
hi cssColor228b22 guibg=#228B22 guifg=#FFFFFF ctermbg=2 ctermfg=231 | syn cluster cssColors add=cssColor228b22
|
|
||||||
hi cssColor2e8b57 guibg=#2E8B57 guifg=#FFFFFF ctermbg=240 ctermfg=231 | syn cluster cssColors add=cssColor2e8b57
|
|
||||||
hi cssColor2f4f4f guibg=#2F4F4F guifg=#FFFFFF ctermbg=238 ctermfg=231 | syn cluster cssColors add=cssColor2f4f4f
|
|
||||||
hi cssColor32cd32 guibg=#32CD32 guifg=#000000 ctermbg=2 ctermfg=16 | syn cluster cssColors add=cssColor32cd32
|
|
||||||
hi cssColor3cb371 guibg=#3CB371 guifg=#000000 ctermbg=71 ctermfg=16 | syn cluster cssColors add=cssColor3cb371
|
|
||||||
hi cssColor40e0d0 guibg=#40E0D0 guifg=#000000 ctermbg=80 ctermfg=16 | syn cluster cssColors add=cssColor40e0d0
|
|
||||||
hi cssColor4169e1 guibg=#4169E1 guifg=#FFFFFF ctermbg=12 ctermfg=231 | syn cluster cssColors add=cssColor4169e1
|
|
||||||
hi cssColor4682b4 guibg=#4682B4 guifg=#FFFFFF ctermbg=67 ctermfg=231 | syn cluster cssColors add=cssColor4682b4
|
|
||||||
hi cssColor483d8b guibg=#483D8B guifg=#FFFFFF ctermbg=240 ctermfg=231 | syn cluster cssColors add=cssColor483d8b
|
|
||||||
hi cssColor48d1cc guibg=#48D1CC guifg=#000000 ctermbg=80 ctermfg=16 | syn cluster cssColors add=cssColor48d1cc
|
|
||||||
hi cssColor4b0082 guibg=#4B0082 guifg=#FFFFFF ctermbg=238 ctermfg=231 | syn cluster cssColors add=cssColor4b0082
|
|
||||||
hi cssColor556b2f guibg=#556B2F guifg=#FFFFFF ctermbg=239 ctermfg=231 | syn cluster cssColors add=cssColor556b2f
|
|
||||||
hi cssColor5f9ea0 guibg=#5F9EA0 guifg=#000000 ctermbg=73 ctermfg=16 | syn cluster cssColors add=cssColor5f9ea0
|
|
||||||
hi cssColor6495ed guibg=#6495ED guifg=#000000 ctermbg=12 ctermfg=16 | syn cluster cssColors add=cssColor6495ed
|
|
||||||
hi cssColor66cdaa guibg=#66CDAA guifg=#000000 ctermbg=79 ctermfg=16 | syn cluster cssColors add=cssColor66cdaa
|
|
||||||
hi cssColor696969 guibg=#696969 guifg=#FFFFFF ctermbg=242 ctermfg=231 | syn cluster cssColors add=cssColor696969
|
|
||||||
hi cssColor6a5acd guibg=#6A5ACD guifg=#FFFFFF ctermbg=12 ctermfg=231 | syn cluster cssColors add=cssColor6a5acd
|
|
||||||
hi cssColor6b8e23 guibg=#6B8E23 guifg=#FFFFFF ctermbg=241 ctermfg=231 | syn cluster cssColors add=cssColor6b8e23
|
|
||||||
hi cssColor708090 guibg=#708090 guifg=#000000 ctermbg=66 ctermfg=16 | syn cluster cssColors add=cssColor708090
|
|
||||||
hi cssColor778899 guibg=#778899 guifg=#000000 ctermbg=102 ctermfg=16 | syn cluster cssColors add=cssColor778899
|
|
||||||
hi cssColor7b68ee guibg=#7B68EE guifg=#000000 ctermbg=12 ctermfg=16 | syn cluster cssColors add=cssColor7b68ee
|
|
||||||
hi cssColor7cfc00 guibg=#7CFC00 guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColor7cfc00
|
|
||||||
hi cssColor7fff00 guibg=#7FFF00 guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColor7fff00
|
|
||||||
hi cssColor7fffd4 guibg=#7FFFD4 guifg=#000000 ctermbg=122 ctermfg=16 | syn cluster cssColors add=cssColor7fffd4
|
|
||||||
hi cssColor800000 guibg=#800000 guifg=#FFFFFF ctermbg=88 ctermfg=231 | syn cluster cssColors add=cssColor800000
|
|
||||||
hi cssColor800080 guibg=#800080 guifg=#FFFFFF ctermbg=240 ctermfg=231 | syn cluster cssColors add=cssColor800080
|
|
||||||
hi cssColor808000 guibg=#808000 guifg=#FFFFFF ctermbg=240 ctermfg=231 | syn cluster cssColors add=cssColor808000
|
|
||||||
hi cssColor808080 guibg=#808080 guifg=#000000 ctermbg=244 ctermfg=16 | syn cluster cssColors add=cssColor808080
|
|
||||||
hi cssColor87ceeb guibg=#87CEEB guifg=#000000 ctermbg=117 ctermfg=16 | syn cluster cssColors add=cssColor87ceeb
|
|
||||||
hi cssColor87cefa guibg=#87CEFA guifg=#000000 ctermbg=117 ctermfg=16 | syn cluster cssColors add=cssColor87cefa
|
|
||||||
hi cssColor8a2be2 guibg=#8A2BE2 guifg=#FFFFFF ctermbg=12 ctermfg=231 | syn cluster cssColors add=cssColor8a2be2
|
|
||||||
hi cssColor8b0000 guibg=#8B0000 guifg=#FFFFFF ctermbg=88 ctermfg=231 | syn cluster cssColors add=cssColor8b0000
|
|
||||||
hi cssColor8b008b guibg=#8B008B guifg=#FFFFFF ctermbg=5 ctermfg=231 | syn cluster cssColors add=cssColor8b008b
|
|
||||||
hi cssColor8b4513 guibg=#8B4513 guifg=#FFFFFF ctermbg=94 ctermfg=231 | syn cluster cssColors add=cssColor8b4513
|
|
||||||
hi cssColor8fbc8f guibg=#8FBC8F guifg=#000000 ctermbg=108 ctermfg=16 | syn cluster cssColors add=cssColor8fbc8f
|
|
||||||
hi cssColor90ee90 guibg=#90EE90 guifg=#000000 ctermbg=249 ctermfg=16 | syn cluster cssColors add=cssColor90ee90
|
|
||||||
hi cssColor9370d8 guibg=#9370D8 guifg=#000000 ctermbg=12 ctermfg=16 | syn cluster cssColors add=cssColor9370d8
|
|
||||||
hi cssColor9400d3 guibg=#9400D3 guifg=#FFFFFF ctermbg=5 ctermfg=231 | syn cluster cssColors add=cssColor9400d3
|
|
||||||
hi cssColor98fb98 guibg=#98FB98 guifg=#000000 ctermbg=250 ctermfg=16 | syn cluster cssColors add=cssColor98fb98
|
|
||||||
hi cssColor9932cc guibg=#9932CC guifg=#FFFFFF ctermbg=5 ctermfg=231 | syn cluster cssColors add=cssColor9932cc
|
|
||||||
hi cssColor9acd32 guibg=#9ACD32 guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColor9acd32
|
|
||||||
hi cssColora0522d guibg=#A0522D guifg=#FFFFFF ctermbg=130 ctermfg=231 | syn cluster cssColors add=cssColora0522d
|
|
||||||
hi cssColora52a2a guibg=#A52A2A guifg=#FFFFFF ctermbg=124 ctermfg=231 | syn cluster cssColors add=cssColora52a2a
|
|
||||||
hi cssColora9a9a9 guibg=#A9A9A9 guifg=#000000 ctermbg=248 ctermfg=16 | syn cluster cssColors add=cssColora9a9a9
|
|
||||||
hi cssColoradd8e6 guibg=#ADD8E6 guifg=#000000 ctermbg=152 ctermfg=16 | syn cluster cssColors add=cssColoradd8e6
|
|
||||||
hi cssColoradff2f guibg=#ADFF2F guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColoradff2f
|
|
||||||
hi cssColorafeeee guibg=#AFEEEE guifg=#000000 ctermbg=159 ctermfg=16 | syn cluster cssColors add=cssColorafeeee
|
|
||||||
hi cssColorb0c4de guibg=#B0C4DE guifg=#000000 ctermbg=152 ctermfg=16 | syn cluster cssColors add=cssColorb0c4de
|
|
||||||
hi cssColorb0e0e6 guibg=#B0E0E6 guifg=#000000 ctermbg=152 ctermfg=16 | syn cluster cssColors add=cssColorb0e0e6
|
|
||||||
hi cssColorb22222 guibg=#B22222 guifg=#FFFFFF ctermbg=124 ctermfg=231 | syn cluster cssColors add=cssColorb22222
|
|
||||||
hi cssColorb8860b guibg=#B8860B guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColorb8860b
|
|
||||||
hi cssColorba55d3 guibg=#BA55D3 guifg=#000000 ctermbg=5 ctermfg=16 | syn cluster cssColors add=cssColorba55d3
|
|
||||||
hi cssColorbc8f8f guibg=#BC8F8F guifg=#000000 ctermbg=138 ctermfg=16 | syn cluster cssColors add=cssColorbc8f8f
|
|
||||||
hi cssColorbdb76b guibg=#BDB76B guifg=#000000 ctermbg=247 ctermfg=16 | syn cluster cssColors add=cssColorbdb76b
|
|
||||||
hi cssColorc0c0c0 guibg=#C0C0C0 guifg=#000000 ctermbg=250 ctermfg=16 | syn cluster cssColors add=cssColorc0c0c0
|
|
||||||
hi cssColorc71585 guibg=#C71585 guifg=#FFFFFF ctermbg=5 ctermfg=231 | syn cluster cssColors add=cssColorc71585
|
|
||||||
hi cssColorcd5c5c guibg=#CD5C5C guifg=#000000 ctermbg=167 ctermfg=16 | syn cluster cssColors add=cssColorcd5c5c
|
|
||||||
hi cssColorcd853f guibg=#CD853F guifg=#000000 ctermbg=173 ctermfg=16 | syn cluster cssColors add=cssColorcd853f
|
|
||||||
hi cssColord2691e guibg=#D2691E guifg=#000000 ctermbg=166 ctermfg=16 | syn cluster cssColors add=cssColord2691e
|
|
||||||
hi cssColord2b48c guibg=#D2B48C guifg=#000000 ctermbg=180 ctermfg=16 | syn cluster cssColors add=cssColord2b48c
|
|
||||||
hi cssColord3d3d3 guibg=#D3D3D3 guifg=#000000 ctermbg=252 ctermfg=16 | syn cluster cssColors add=cssColord3d3d3
|
|
||||||
hi cssColord87093 guibg=#D87093 guifg=#000000 ctermbg=168 ctermfg=16 | syn cluster cssColors add=cssColord87093
|
|
||||||
hi cssColord8bfd8 guibg=#D8BFD8 guifg=#000000 ctermbg=252 ctermfg=16 | syn cluster cssColors add=cssColord8bfd8
|
|
||||||
hi cssColorda70d6 guibg=#DA70D6 guifg=#000000 ctermbg=249 ctermfg=16 | syn cluster cssColors add=cssColorda70d6
|
|
||||||
hi cssColordaa520 guibg=#DAA520 guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColordaa520
|
|
||||||
hi cssColordc143c guibg=#DC143C guifg=#FFFFFF ctermbg=161 ctermfg=231 | syn cluster cssColors add=cssColordc143c
|
|
||||||
hi cssColordcdcdc guibg=#DCDCDC guifg=#000000 ctermbg=253 ctermfg=16 | syn cluster cssColors add=cssColordcdcdc
|
|
||||||
hi cssColordda0dd guibg=#DDA0DD guifg=#000000 ctermbg=182 ctermfg=16 | syn cluster cssColors add=cssColordda0dd
|
|
||||||
hi cssColordeb887 guibg=#DEB887 guifg=#000000 ctermbg=180 ctermfg=16 | syn cluster cssColors add=cssColordeb887
|
|
||||||
hi cssColore0ffff guibg=#E0FFFF guifg=#000000 ctermbg=195 ctermfg=16 | syn cluster cssColors add=cssColore0ffff
|
|
||||||
hi cssColore6e6fa guibg=#E6E6FA guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColore6e6fa
|
|
||||||
hi cssColore9967a guibg=#E9967A guifg=#000000 ctermbg=174 ctermfg=16 | syn cluster cssColors add=cssColore9967a
|
|
||||||
hi cssColoree82ee guibg=#EE82EE guifg=#000000 ctermbg=251 ctermfg=16 | syn cluster cssColors add=cssColoree82ee
|
|
||||||
hi cssColoreee8aa guibg=#EEE8AA guifg=#000000 ctermbg=223 ctermfg=16 | syn cluster cssColors add=cssColoreee8aa
|
|
||||||
hi cssColorf08080 guibg=#F08080 guifg=#000000 ctermbg=210 ctermfg=16 | syn cluster cssColors add=cssColorf08080
|
|
||||||
hi cssColorf0e68c guibg=#F0E68C guifg=#000000 ctermbg=222 ctermfg=16 | syn cluster cssColors add=cssColorf0e68c
|
|
||||||
hi cssColorf0f8ff guibg=#F0F8FF guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorf0f8ff
|
|
||||||
hi cssColorf0fff0 guibg=#F0FFF0 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorf0fff0
|
|
||||||
hi cssColorf0ffff guibg=#F0FFFF guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorf0ffff
|
|
||||||
hi cssColorf4a460 guibg=#F4A460 guifg=#000000 ctermbg=215 ctermfg=16 | syn cluster cssColors add=cssColorf4a460
|
|
||||||
hi cssColorf5deb3 guibg=#F5DEB3 guifg=#000000 ctermbg=223 ctermfg=16 | syn cluster cssColors add=cssColorf5deb3
|
|
||||||
hi cssColorf5f5dc guibg=#F5F5DC guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorf5f5dc
|
|
||||||
hi cssColorf5f5f5 guibg=#F5F5F5 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorf5f5f5
|
|
||||||
hi cssColorf5fffa guibg=#F5FFFA guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorf5fffa
|
|
||||||
hi cssColorf8f8ff guibg=#F8F8FF guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorf8f8ff
|
|
||||||
hi cssColorfa8072 guibg=#FA8072 guifg=#000000 ctermbg=209 ctermfg=16 | syn cluster cssColors add=cssColorfa8072
|
|
||||||
hi cssColorfaebd7 guibg=#FAEBD7 guifg=#000000 ctermbg=7 ctermfg=16 | syn cluster cssColors add=cssColorfaebd7
|
|
||||||
hi cssColorfaf0e6 guibg=#FAF0E6 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorfaf0e6
|
|
||||||
hi cssColorfafad2 guibg=#FAFAD2 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorfafad2
|
|
||||||
hi cssColorfdf5e6 guibg=#FDF5E6 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorfdf5e6
|
|
||||||
hi cssColorff0000 guibg=#FF0000 guifg=#FFFFFF ctermbg=196 ctermfg=231 | syn cluster cssColors add=cssColorff0000
|
|
||||||
hi cssColorff00ff guibg=#FF00FF guifg=#FFFFFF ctermbg=13 ctermfg=231 | syn cluster cssColors add=cssColorff00ff
|
|
||||||
hi cssColorff1493 guibg=#FF1493 guifg=#FFFFFF ctermbg=5 ctermfg=231 | syn cluster cssColors add=cssColorff1493
|
|
||||||
hi cssColorff4500 guibg=#FF4500 guifg=#FFFFFF ctermbg=9 ctermfg=231 | syn cluster cssColors add=cssColorff4500
|
|
||||||
hi cssColorff6347 guibg=#FF6347 guifg=#000000 ctermbg=203 ctermfg=16 | syn cluster cssColors add=cssColorff6347
|
|
||||||
hi cssColorff69b4 guibg=#FF69B4 guifg=#000000 ctermbg=205 ctermfg=16 | syn cluster cssColors add=cssColorff69b4
|
|
||||||
hi cssColorff7f50 guibg=#FF7F50 guifg=#000000 ctermbg=209 ctermfg=16 | syn cluster cssColors add=cssColorff7f50
|
|
||||||
hi cssColorff8c00 guibg=#FF8C00 guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColorff8c00
|
|
||||||
hi cssColorffa07a guibg=#FFA07A guifg=#000000 ctermbg=216 ctermfg=16 | syn cluster cssColors add=cssColorffa07a
|
|
||||||
hi cssColorffa500 guibg=#FFA500 guifg=#000000 ctermbg=3 ctermfg=16 | syn cluster cssColors add=cssColorffa500
|
|
||||||
hi cssColorffb6c1 guibg=#FFB6C1 guifg=#000000 ctermbg=217 ctermfg=16 | syn cluster cssColors add=cssColorffb6c1
|
|
||||||
hi cssColorffc0cb guibg=#FFC0CB guifg=#000000 ctermbg=218 ctermfg=16 | syn cluster cssColors add=cssColorffc0cb
|
|
||||||
hi cssColorffd700 guibg=#FFD700 guifg=#000000 ctermbg=11 ctermfg=16 | syn cluster cssColors add=cssColorffd700
|
|
||||||
hi cssColorffdab9 guibg=#FFDAB9 guifg=#000000 ctermbg=223 ctermfg=16 | syn cluster cssColors add=cssColorffdab9
|
|
||||||
hi cssColorffdead guibg=#FFDEAD guifg=#000000 ctermbg=223 ctermfg=16 | syn cluster cssColors add=cssColorffdead
|
|
||||||
hi cssColorffe4b5 guibg=#FFE4B5 guifg=#000000 ctermbg=223 ctermfg=16 | syn cluster cssColors add=cssColorffe4b5
|
|
||||||
hi cssColorffe4c4 guibg=#FFE4C4 guifg=#000000 ctermbg=224 ctermfg=16 | syn cluster cssColors add=cssColorffe4c4
|
|
||||||
hi cssColorffe4e1 guibg=#FFE4E1 guifg=#000000 ctermbg=224 ctermfg=16 | syn cluster cssColors add=cssColorffe4e1
|
|
||||||
hi cssColorffebcd guibg=#FFEBCD guifg=#000000 ctermbg=7 ctermfg=16 | syn cluster cssColors add=cssColorffebcd
|
|
||||||
hi cssColorffefd5 guibg=#FFEFD5 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorffefd5
|
|
||||||
hi cssColorfff0f5 guibg=#FFF0F5 guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorfff0f5
|
|
||||||
hi cssColorfff5ee guibg=#FFF5EE guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorfff5ee
|
|
||||||
hi cssColorfff8dc guibg=#FFF8DC guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorfff8dc
|
|
||||||
hi cssColorfffacd guibg=#FFFACD guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorfffacd
|
|
||||||
hi cssColorfffaf0 guibg=#FFFAF0 guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorfffaf0
|
|
||||||
hi cssColorfffafa guibg=#FFFAFA guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorfffafa
|
|
||||||
hi cssColorffff00 guibg=#FFFF00 guifg=#000000 ctermbg=11 ctermfg=16 | syn cluster cssColors add=cssColorffff00
|
|
||||||
hi cssColorffffe0 guibg=#FFFFE0 guifg=#000000 ctermbg=255 ctermfg=16 | syn cluster cssColors add=cssColorffffe0
|
|
||||||
hi cssColorfffff0 guibg=#FFFFF0 guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorfffff0
|
|
||||||
hi cssColorffffff guibg=#FFFFFF guifg=#000000 ctermbg=231 ctermfg=16 | syn cluster cssColors add=cssColorffffff
|
|
||||||
|
|
||||||
" w3c Colors
|
|
||||||
syn keyword cssColor000000 black contained
|
|
||||||
syn keyword cssColorc0c0c0 silver contained
|
|
||||||
syn keyword cssColor808080 gray contained
|
|
||||||
syn match cssColorffffff "\<white\(-\)\@!\>" contained
|
|
||||||
syn keyword cssColor800000 maroon contained
|
|
||||||
syn keyword cssColorff0000 red contained
|
|
||||||
syn keyword cssColor800080 purple contained
|
|
||||||
syn keyword cssColorff00ff fuchsia contained
|
|
||||||
syn keyword cssColor008000 green contained
|
|
||||||
syn keyword cssColor00ff00 lime contained
|
|
||||||
syn keyword cssColor808000 olive contained
|
|
||||||
syn keyword cssColorffff00 yellow contained
|
|
||||||
syn keyword cssColor000080 navy contained
|
|
||||||
syn keyword cssColor0000ff blue contained
|
|
||||||
syn keyword cssColor008080 teal contained
|
|
||||||
syn keyword cssColor00ffff aqua contained
|
|
||||||
|
|
||||||
" extra colors
|
|
||||||
syn keyword cssColorf0f8ff AliceBlue contained
|
|
||||||
syn keyword cssColorfaebd7 AntiqueWhite contained
|
|
||||||
syn keyword cssColor7fffd4 Aquamarine contained
|
|
||||||
syn keyword cssColorf0ffff Azure contained
|
|
||||||
syn keyword cssColorf5f5dc Beige contained
|
|
||||||
syn keyword cssColorffe4c4 Bisque contained
|
|
||||||
syn keyword cssColorffebcd BlanchedAlmond contained
|
|
||||||
syn keyword cssColor8a2be2 BlueViolet contained
|
|
||||||
syn keyword cssColora52a2a Brown contained
|
|
||||||
syn keyword cssColordeb887 BurlyWood contained
|
|
||||||
syn keyword cssColor5f9ea0 CadetBlue contained
|
|
||||||
syn keyword cssColor7fff00 Chartreuse contained
|
|
||||||
syn keyword cssColord2691e Chocolate contained
|
|
||||||
syn keyword cssColorff7f50 Coral contained
|
|
||||||
syn keyword cssColor6495ed CornflowerBlue contained
|
|
||||||
syn keyword cssColorfff8dc Cornsilk contained
|
|
||||||
syn keyword cssColordc143c Crimson contained
|
|
||||||
syn keyword cssColor00ffff Cyan contained
|
|
||||||
syn keyword cssColor00008b DarkBlue contained
|
|
||||||
syn keyword cssColor008b8b DarkCyan contained
|
|
||||||
syn keyword cssColorb8860b DarkGoldenRod contained
|
|
||||||
syn keyword cssColora9a9a9 DarkGray contained
|
|
||||||
syn keyword cssColor006400 DarkGreen contained
|
|
||||||
syn keyword cssColora9a9a9 DarkGrey contained
|
|
||||||
syn keyword cssColorbdb76b DarkKhaki contained
|
|
||||||
syn keyword cssColor8b008b DarkMagenta contained
|
|
||||||
syn keyword cssColor556b2f DarkOliveGreen contained
|
|
||||||
syn keyword cssColor9932cc DarkOrchid contained
|
|
||||||
syn keyword cssColor8b0000 DarkRed contained
|
|
||||||
syn keyword cssColore9967a DarkSalmon contained
|
|
||||||
syn keyword cssColor8fbc8f DarkSeaGreen contained
|
|
||||||
syn keyword cssColor483d8b DarkSlateBlue contained
|
|
||||||
syn keyword cssColor2f4f4f DarkSlateGray contained
|
|
||||||
syn keyword cssColor2f4f4f DarkSlateGrey contained
|
|
||||||
syn keyword cssColor00ced1 DarkTurquoise contained
|
|
||||||
syn keyword cssColor9400d3 DarkViolet contained
|
|
||||||
syn keyword cssColorff8c00 Darkorange contained
|
|
||||||
syn keyword cssColorff1493 DeepPink contained
|
|
||||||
syn keyword cssColor00bfff DeepSkyBlue contained
|
|
||||||
syn keyword cssColor696969 DimGray contained
|
|
||||||
syn keyword cssColor696969 DimGrey contained
|
|
||||||
syn keyword cssColor1e90ff DodgerBlue contained
|
|
||||||
syn keyword cssColorb22222 FireBrick contained
|
|
||||||
syn keyword cssColorfffaf0 FloralWhite contained
|
|
||||||
syn keyword cssColor228b22 ForestGreen contained
|
|
||||||
syn keyword cssColordcdcdc Gainsboro contained
|
|
||||||
syn keyword cssColorf8f8ff GhostWhite contained
|
|
||||||
syn keyword cssColorffd700 Gold contained
|
|
||||||
syn keyword cssColordaa520 GoldenRod contained
|
|
||||||
syn keyword cssColoradff2f GreenYellow contained
|
|
||||||
syn keyword cssColor808080 Grey contained
|
|
||||||
syn keyword cssColorf0fff0 HoneyDew contained
|
|
||||||
syn keyword cssColorff69b4 HotPink contained
|
|
||||||
syn keyword cssColorcd5c5c IndianRed contained
|
|
||||||
syn keyword cssColor4b0082 Indigo contained
|
|
||||||
syn keyword cssColorfffff0 Ivory contained
|
|
||||||
syn keyword cssColorf0e68c Khaki contained
|
|
||||||
syn keyword cssColore6e6fa Lavender contained
|
|
||||||
syn keyword cssColorfff0f5 LavenderBlush contained
|
|
||||||
syn keyword cssColor7cfc00 LawnGreen contained
|
|
||||||
syn keyword cssColorfffacd LemonChiffon contained
|
|
||||||
syn keyword cssColoradd8e6 LightBlue contained
|
|
||||||
syn keyword cssColorf08080 LightCoral contained
|
|
||||||
syn keyword cssColore0ffff LightCyan contained
|
|
||||||
syn keyword cssColorfafad2 LightGoldenRodYellow contained
|
|
||||||
syn keyword cssColord3d3d3 LightGray contained
|
|
||||||
syn keyword cssColor90ee90 LightGreen contained
|
|
||||||
syn keyword cssColord3d3d3 LightGrey contained
|
|
||||||
syn keyword cssColorffb6c1 LightPink contained
|
|
||||||
syn keyword cssColorffa07a LightSalmon contained
|
|
||||||
syn keyword cssColor20b2aa LightSeaGreen contained
|
|
||||||
syn keyword cssColor87cefa LightSkyBlue contained
|
|
||||||
syn keyword cssColor778899 LightSlateGray contained
|
|
||||||
syn keyword cssColor778899 LightSlateGrey contained
|
|
||||||
syn keyword cssColorb0c4de LightSteelBlue contained
|
|
||||||
syn keyword cssColorffffe0 LightYellow contained
|
|
||||||
syn keyword cssColor32cd32 LimeGreen contained
|
|
||||||
syn keyword cssColorfaf0e6 Linen contained
|
|
||||||
syn keyword cssColorff00ff Magenta contained
|
|
||||||
syn keyword cssColor66cdaa MediumAquaMarine contained
|
|
||||||
syn keyword cssColor0000cd MediumBlue contained
|
|
||||||
syn keyword cssColorba55d3 MediumOrchid contained
|
|
||||||
syn keyword cssColor9370d8 MediumPurple contained
|
|
||||||
syn keyword cssColor3cb371 MediumSeaGreen contained
|
|
||||||
syn keyword cssColor7b68ee MediumSlateBlue contained
|
|
||||||
syn keyword cssColor00fa9a MediumSpringGreen contained
|
|
||||||
syn keyword cssColor48d1cc MediumTurquoise contained
|
|
||||||
syn keyword cssColorc71585 MediumVioletRed contained
|
|
||||||
syn keyword cssColor191970 MidnightBlue contained
|
|
||||||
syn keyword cssColorf5fffa MintCream contained
|
|
||||||
syn keyword cssColorffe4e1 MistyRose contained
|
|
||||||
syn keyword cssColorffe4b5 Moccasin contained
|
|
||||||
syn keyword cssColorffdead NavajoWhite contained
|
|
||||||
syn keyword cssColorfdf5e6 OldLace contained
|
|
||||||
syn keyword cssColor6b8e23 OliveDrab contained
|
|
||||||
syn keyword cssColorffa500 Orange contained
|
|
||||||
syn keyword cssColorff4500 OrangeRed contained
|
|
||||||
syn keyword cssColorda70d6 Orchid contained
|
|
||||||
syn keyword cssColoreee8aa PaleGoldenRod contained
|
|
||||||
syn keyword cssColor98fb98 PaleGreen contained
|
|
||||||
syn keyword cssColorafeeee PaleTurquoise contained
|
|
||||||
syn keyword cssColord87093 PaleVioletRed contained
|
|
||||||
syn keyword cssColorffefd5 PapayaWhip contained
|
|
||||||
syn keyword cssColorffdab9 PeachPuff contained
|
|
||||||
syn keyword cssColorcd853f Peru contained
|
|
||||||
syn keyword cssColorffc0cb Pink contained
|
|
||||||
syn keyword cssColordda0dd Plum contained
|
|
||||||
syn keyword cssColorb0e0e6 PowderBlue contained
|
|
||||||
syn keyword cssColorbc8f8f RosyBrown contained
|
|
||||||
syn keyword cssColor4169e1 RoyalBlue contained
|
|
||||||
syn keyword cssColor8b4513 SaddleBrown contained
|
|
||||||
syn keyword cssColorfa8072 Salmon contained
|
|
||||||
syn keyword cssColorf4a460 SandyBrown contained
|
|
||||||
syn keyword cssColor2e8b57 SeaGreen contained
|
|
||||||
syn keyword cssColorfff5ee SeaShell contained
|
|
||||||
syn keyword cssColora0522d Sienna contained
|
|
||||||
syn keyword cssColor87ceeb SkyBlue contained
|
|
||||||
syn keyword cssColor6a5acd SlateBlue contained
|
|
||||||
syn keyword cssColor708090 SlateGray contained
|
|
||||||
syn keyword cssColor708090 SlateGrey contained
|
|
||||||
syn keyword cssColorfffafa Snow contained
|
|
||||||
syn keyword cssColor00ff7f SpringGreen contained
|
|
||||||
syn keyword cssColor4682b4 SteelBlue contained
|
|
||||||
syn keyword cssColord2b48c Tan contained
|
|
||||||
syn keyword cssColord8bfd8 Thistle contained
|
|
||||||
syn keyword cssColorff6347 Tomato contained
|
|
||||||
syn keyword cssColor40e0d0 Turquoise contained
|
|
||||||
syn keyword cssColoree82ee Violet contained
|
|
||||||
syn keyword cssColorf5deb3 Wheat contained
|
|
||||||
syn keyword cssColorf5f5f5 WhiteSmoke contained
|
|
||||||
syn keyword cssColor9acd32 YellowGreen contained
|
|
||||||
|
|
||||||
let view = winsaveview()
|
|
||||||
%call s:PreviewCSSColorInLine()
|
|
||||||
call winrestview(view)
|
|
||||||
|
|
||||||
autocmd CursorMoved <buffer> silent call s:PreviewCSSColorInLine()
|
|
||||||
autocmd CursorMovedI <buffer> silent call s:PreviewCSSColorInLine()
|
|
||||||
endif
|
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Sven Felix Oberquelle <Svelix.Github@gmail.com>
|
" Maintainer: Sven Felix Oberquelle <Svelix.Github@gmail.com>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
@@ -11,3 +13,5 @@ syn region hamlCoffeescriptFilter matchgroup=hamlFilter
|
|||||||
\ end="^\%(\z1 \| *$\)\@!"
|
\ end="^\%(\z1 \| *$\)\@!"
|
||||||
\ contains=@hamlCoffeeScript,hamlInterpolation
|
\ contains=@hamlCoffeeScript,hamlInterpolation
|
||||||
\ keepend
|
\ keepend
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,8 +1,18 @@
|
|||||||
let b:current_syntax = ''
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'scala') == -1
|
||||||
unlet b:current_syntax
|
|
||||||
|
" Extends standard help syntax with highlighting of Scala code.
|
||||||
|
"
|
||||||
|
" Place code between !sc! and !/sc! delimiters. These will be hidden if Vim is
|
||||||
|
" built with conceal support.
|
||||||
|
|
||||||
|
unlet! b:current_syntax
|
||||||
|
|
||||||
syntax include @ScalaCode syntax/scala.vim
|
syntax include @ScalaCode syntax/scala.vim
|
||||||
|
|
||||||
if has('conceal')
|
if has('conceal')
|
||||||
syntax region rgnScala matchgroup=Ignore concealends start='!sc!' end='!/sc!' contains=@ScalaCode
|
syntax region rgnScala matchgroup=Ignore concealends start='!sc!' end='!/sc!' contains=@ScalaCode
|
||||||
else
|
else
|
||||||
syntax region rgnScala matchgroup=Ignore start='!sc!' end='!/sc!' contains=@ScalaCode
|
syntax region rgnScala matchgroup=Ignore start='!sc!' end='!/sc!' contains=@ScalaCode
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
" Maintainer: Mick Koch <mick@kochm.co>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
" License: WTFPL
|
" License: WTFPL
|
||||||
|
|
||||||
@@ -9,3 +11,48 @@ syn region coffeeScript start=#<script [^>]*type="text/coffeescript"[^>]*>#
|
|||||||
\ end=#</script>#me=s-1 keepend
|
\ end=#</script>#me=s-1 keepend
|
||||||
\ contains=@htmlCoffeeScript,htmlScriptTag,@htmlPreproc
|
\ contains=@htmlCoffeeScript,htmlScriptTag,@htmlPreproc
|
||||||
\ containedin=htmlHead
|
\ containedin=htmlHead
|
||||||
|
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'glsl') == -1
|
||||||
|
|
||||||
|
" Language: OpenGL Shading Language
|
||||||
|
" Maintainer: Sergey Tikhomirov <sergey@tikhomirov.io>
|
||||||
|
|
||||||
|
syn include @GLSL syntax/glsl.vim
|
||||||
|
syn region ShaderScript
|
||||||
|
\ start="<script [^>]*type=\('\|\"\)x-shader/x-\(vertex\|fragment\)\('\|\"\)[^>]*>"
|
||||||
|
\ keepend
|
||||||
|
\ end="</script>"me=s-1
|
||||||
|
\ contains=@GLSL,htmlScriptTag,@htmlPreproc
|
||||||
|
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'less') == -1
|
||||||
|
|
||||||
|
if !exists("g:less_html_style_tags")
|
||||||
|
let g:less_html_style_tags = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !g:less_html_style_tags
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Unset (but preserve) so that less will run.
|
||||||
|
if exists("b:current_syntax")
|
||||||
|
let s:pre_less_cur_syn = b:current_syntax
|
||||||
|
unlet b:current_syntax
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Inspired by code from github.com/kchmck/vim-coffee-script
|
||||||
|
" and the html syntax file included with vim 7.4.
|
||||||
|
|
||||||
|
syn include @htmlLess syntax/less.vim
|
||||||
|
|
||||||
|
" We have to explicitly add to htmlHead (containedin) as that region specifies 'contains'.
|
||||||
|
syn region lessStyle start=+<style [^>]*type *=[^>]*text/less[^>]*>+ keepend end=+</style>+ contains=@htmlLess,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc containedin=htmlHead
|
||||||
|
|
||||||
|
" Reset since 'less' isn't really the current_syntax.
|
||||||
|
if exists("s:pre_less_cur_syn")
|
||||||
|
let b:current_syntax = s:pre_less_cur_syn
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
51
after/syntax/jsx.vim
Normal file
51
after/syntax/jsx.vim
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jsx') == -1
|
||||||
|
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Vim syntax file
|
||||||
|
"
|
||||||
|
" Language: JSX (JavaScript)
|
||||||
|
" Maintainer: Max Wang <mxawng@gmail.com>
|
||||||
|
" Depends: pangloss/vim-javascript
|
||||||
|
"
|
||||||
|
" CREDITS: Inspired by Facebook.
|
||||||
|
"
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
" Do nothing if we don't find the @jsx pragma (and we care).
|
||||||
|
exec 'source '.fnameescape(expand('<sfile>:p:h:h').'/jsx-config.vim')
|
||||||
|
if g:jsx_pragma_required && !b:jsx_pragma_found | finish | endif
|
||||||
|
|
||||||
|
" Do nothing if we don't have the .jsx extension (and we care).
|
||||||
|
if g:jsx_ext_required && !exists('b:jsx_ext_found') | finish | endif
|
||||||
|
|
||||||
|
" Prologue; load in XML syntax.
|
||||||
|
if exists('b:current_syntax')
|
||||||
|
let s:current_syntax=b:current_syntax
|
||||||
|
unlet b:current_syntax
|
||||||
|
endif
|
||||||
|
syn include @XMLSyntax syntax/xml.vim
|
||||||
|
if exists('s:current_syntax')
|
||||||
|
let b:current_syntax=s:current_syntax
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Highlight JSX regions as XML; recursively match.
|
||||||
|
syn region jsxRegion contains=@XMLSyntax,jsxRegion,jsBlock,javascriptBlock
|
||||||
|
\ start=+<\@<!<\z([a-zA-Z][a-zA-Z0-9:\-.]*\)+
|
||||||
|
\ skip=+<!--\_.\{-}-->+
|
||||||
|
\ end=+</\z1\_\s\{-}>+
|
||||||
|
\ end=+/>+
|
||||||
|
\ keepend
|
||||||
|
\ extend
|
||||||
|
|
||||||
|
" JSX attributes should color as JS. Note the trivial end pattern; we let
|
||||||
|
" jsBlock take care of ending the region.
|
||||||
|
syn region xmlString contained start=+{+ end=++ contains=jsBlock,javascriptBlock
|
||||||
|
|
||||||
|
" Add jsxRegion to the lowest-level JS syntax cluster.
|
||||||
|
syn cluster jsExpression add=jsxRegion
|
||||||
|
|
||||||
|
" Allow jsxRegion to contain reserved words.
|
||||||
|
" See: https://github.com/othree/yajs.vim
|
||||||
|
syn cluster javascriptNoReserved add=jsxRegion
|
||||||
|
|
||||||
|
endif
|
||||||
36
after/syntax/rspec.vim
Normal file
36
after/syntax/rspec.vim
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rspec') == -1
|
||||||
|
|
||||||
|
"
|
||||||
|
" An rspec syntax file
|
||||||
|
" Originally from http://www.vim.org/scripts/script.php?script_id=2286
|
||||||
|
"
|
||||||
|
"
|
||||||
|
|
||||||
|
runtime! syntax/ruby.vim
|
||||||
|
unlet! b:current_syntax
|
||||||
|
|
||||||
|
syntax keyword rspecGroupMethods context describe example it its let it_should_behave_like shared_examples_for subject it_behaves_like pending specify When Then Given Invariant feature scenario given
|
||||||
|
highlight link rspecGroupMethods Type
|
||||||
|
|
||||||
|
syntax keyword rspecBeforeAndAfter after after_suite_parts append_after append_before before before_suite_parts prepend_after prepend_before around
|
||||||
|
highlight link rspecBeforeAndAfter Statement
|
||||||
|
|
||||||
|
syntax keyword rspecMocks double mock stub stub_chain
|
||||||
|
highlight link rspecMocks Constant
|
||||||
|
|
||||||
|
syntax keyword rspecMockMethods and_raise and_return and_throw and_yield build_child called_max_times expected_args invoke matches
|
||||||
|
highlight link rspecMockMethods Function
|
||||||
|
|
||||||
|
syntax keyword rspecKeywords should should_not should_not_receive should_receive
|
||||||
|
highlight link rspecKeywords Constant
|
||||||
|
|
||||||
|
syntax keyword rspecMatchers be change eql equal exist expect have have_at_least have_at_most have_exactly include match matcher raise_error raise_exception respond_to satisfy throw_symbol to to_not not_to when wrap_expectation
|
||||||
|
syntax match rspecMatchers /\<\(be\|have\)_\w\+\>/
|
||||||
|
highlight link rspecMatchers Function
|
||||||
|
|
||||||
|
syntax keyword rspecMessageExpectation advise any_args any_number_of_times anything at_least at_most exactly expected_messages_received generate_error hash_including hash_not_including ignoring_args instance_of matches_at_least_count matches_at_most_count matches_exact_count matches_name_but_not_args negative_expectation_for never no_args once ordered similar_messages times twice verify_messages_received with
|
||||||
|
highlight link rspecMessageExpectation Function
|
||||||
|
|
||||||
|
let b:current_syntax = 'rspec'
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,20 +1,130 @@
|
|||||||
" This file describes a very basic syntax for TomDoc comments in a Ruby file.
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'yard') == -1
|
||||||
"
|
|
||||||
" For more information on TomDoc, check it out here: http://tomdoc.org/
|
" Ruby syntax extensions for highlighting YARD documentation.
|
||||||
"
|
"
|
||||||
|
" Author: Joel Holdbrooks <https://github.com/noprompt>
|
||||||
|
" URI: https://github.com/noprompt/vim-yardoc
|
||||||
|
" Version: 0.0.1
|
||||||
|
|
||||||
syn keyword tomdocKeywords Returns containedin=rubyComment contained
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
syn keyword tomdocKeywords Yields containedin=rubyComment contained
|
" Tags
|
||||||
syn keyword tomdocKeywords Raises containedin=rubyComment contained
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
syn keyword tomdocKeywords Examples containedin=rubyComment contained
|
syn match yardGenericTag "@\h\+" contained
|
||||||
syn keyword tomdocKeywords Signature containedin=rubyComment contained
|
syn match yardAbstract "@abstract" contained
|
||||||
|
syn match yardApi "@api" contained
|
||||||
|
syn match yardAttr "@attr" contained
|
||||||
|
syn match yardAttrReader "@attr_reader" contained
|
||||||
|
syn match yardAttrWriter "@attr_writer" contained
|
||||||
|
syn match yardAuthor "@author" contained
|
||||||
|
syn match yardDeprecated "@deprecated" contained
|
||||||
|
syn match yardExample "@example" contained
|
||||||
|
syn match yardNote "@note" contained
|
||||||
|
syn match yardOption "@option" contained
|
||||||
|
syn match yardOverload "@overload" contained
|
||||||
|
syn match yardParam "@param" contained
|
||||||
|
syn match yardPrivate "@private" contained
|
||||||
|
syn match yardRaise "@raise" contained
|
||||||
|
syn match yardReturn "@return" contained
|
||||||
|
syn match yardSee "@see" contained
|
||||||
|
syn match yardSince "@since" contained
|
||||||
|
syn match yardTodo "@todo" contained
|
||||||
|
syn match yardVersion "@version" contained
|
||||||
|
syn match yardYield "@yield" contained
|
||||||
|
syn match yardYieldParam "@yieldparam" contained
|
||||||
|
syn match yardYieldReturn "@yieldreturn" contained
|
||||||
|
syn cluster yardTags contains=yardGenericTag,yardAbstract,yardApi,yardAttr,yardAttrReader,yardAttrWriter,yardAuthor,yardDeprecated,yardExample,yardNote,yardOption,yardOverload,yardParam,yardPrivate,yardRaise,yardReturn,yardSee,yardSince,yardTodo,yardVersion,yardYield,yardYieldParam,yardYieldReturn
|
||||||
|
|
||||||
syn match tomdocArguments +\s*[A-Za-z0-9_\-&\*:]*\(\s*- \)+he=e-3 containedin=rubyComment contained
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Directives
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
syn match yardGenericDirective "@!\h\+" contained
|
||||||
|
syn match yardAttribute "@!attribute" contained
|
||||||
|
syn match yardEndGroup "@!endgroup" contained
|
||||||
|
syn match yardGroup "@!group" contained
|
||||||
|
syn match yardMacro "@!macro" contained
|
||||||
|
syn match yardMethod "@!method" contained
|
||||||
|
syn match yardParse "@!parse" contained
|
||||||
|
syn match yardScope "@!scope" contained
|
||||||
|
syn match yardVisibility "@!visibility" contained
|
||||||
|
|
||||||
syn match tomdocDescriptions +\s*Public:+he=e-1 containedin=rubyComment contained
|
syn cluster yardDirectives contains=yardGenericDirective,yardAttribute,yardEndGroup,yardGroup,yardMacro,yardMethod,yardParse,yardScope,yardVisibility
|
||||||
syn match tomdocDescriptions +\s*Internal:+he=e-1 containedin=rubyComment contained
|
|
||||||
syn match tomdocDescriptions +\s*Deprecated:+he=e-1 containedin=rubyComment contained
|
|
||||||
|
|
||||||
hi default link tomdocDescriptions String
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
hi default link tomdocKeywords String
|
" Types, Lists, and Hashes
|
||||||
hi default link tomdocArguments HELP
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
syn match yardDuckType "#\h\+" contained
|
||||||
|
syn match yardType "[A-Z]\h\+" contained
|
||||||
|
syn match yardLiteral "\(true\|false\|nil\|self\|void\)" contained
|
||||||
|
syn match yardComma "," nextgroup=@yardTypes contained
|
||||||
|
syn match yardArrow "=>" nextgroup=@yardTypes contained
|
||||||
|
|
||||||
|
syn region yardParametricType start="[A-Z]\+\h\+<" end=">" contains=yardType,yardOrderDependentList,yardComma skipwhite contained
|
||||||
|
syn region yardOrderDependentList start="(" end=")" contains=@yardTypes,yardComma skipwhite contained
|
||||||
|
syn region yardTypeList start="\[" end="]" contains=@yardTypes,yardOrderDependentList,@yardHashes skipwhite contained
|
||||||
|
syn region yardHashAngle start="Hash<" end=">" contains=yardDuckType,yardType,yardLiteral,yardArrow,yardComma skipwhite contained
|
||||||
|
syn region yardHashCurly start="Hash{" end="}" contains=@yardTypes,yardArrow,yardComma skipwhite contained
|
||||||
|
|
||||||
|
syn cluster yardTypes contains=yardDuckType,yardType,yardLiteral,yardParametricType
|
||||||
|
syn cluster yardHashes contains=yardArrow,yardHashAngle,yardHashCurly
|
||||||
|
syn cluster yardLists contains=yardComma,yardTypeList,yardOrderDependentList
|
||||||
|
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Yard
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
syn match yardComment "#\s*@!\{,1}\h\+.*" contains=@yardTags,@yardDirectives,yardTypeList
|
||||||
|
syn match rubyComment "#.*" contains=rubySharpBang,rubySpaceError,rubyTodo,@Spell,yardComment
|
||||||
|
syn region rubyMultilineComment start="\%(\%(^\s*#.*\n\)\@<!\%(^\s*#.*\n\)\)\%(\(^\s*#.*\n\)\{1,}\)\@=" end="\%(^\s*#.*\n\)\@<=\%(^\s*#.*\n\)\%(^\s*#\)\@!" contains=rubyComment transparent fold keepend
|
||||||
|
syn cluster rubyNotTop add=@yardTags,@yardDirectives,@yardTypes,@yardLists,@yardHashes
|
||||||
|
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Links
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
hi def link yardComment rubyComment
|
||||||
|
" Tags
|
||||||
|
hi def link yardGenericTag rubyKeyword
|
||||||
|
hi def link yardAbstract yardGenericTag
|
||||||
|
hi def link yardApi yardGenericTag
|
||||||
|
hi def link yardAttr yardGenericTag
|
||||||
|
hi def link yardAttrReader yardGenericTag
|
||||||
|
hi def link yardAttrWriter yardGenericTag
|
||||||
|
hi def link yardAuthor yardGenericTag
|
||||||
|
hi def link yardDeprecated yardGenericTag
|
||||||
|
hi def link yardExample yardGenericTag
|
||||||
|
hi def link yardNote yardGenericTag
|
||||||
|
hi def link yardOption yardGenericTag
|
||||||
|
hi def link yardOverload yardGenericTag
|
||||||
|
hi def link yardParam yardGenericTag
|
||||||
|
hi def link yardPrivate yardGenericTag
|
||||||
|
hi def link yardRaise yardGenericTag
|
||||||
|
hi def link yardReturn yardGenericTag
|
||||||
|
hi def link yardSee yardGenericTag
|
||||||
|
hi def link yardSince yardGenericTag
|
||||||
|
hi def link yardTodo yardGenericTag
|
||||||
|
hi def link yardVersion yardGenericTag
|
||||||
|
hi def link yield yardGenericTag
|
||||||
|
hi def link yieldparam yardGenericTag
|
||||||
|
hi def link yieldreturn yardGenericTag
|
||||||
|
" Directives
|
||||||
|
hi def link yardGenericDirective rubyKeyword
|
||||||
|
hi def link yardAttribute yardGenericDirective
|
||||||
|
hi def link yardEndGroup yardGenericDirective
|
||||||
|
hi def link yardGroup yardGenericDirective
|
||||||
|
hi def link yardMacro yardGenericDirective
|
||||||
|
hi def link yardMethod yardGenericDirective
|
||||||
|
hi def link yardParse yardGenericDirective
|
||||||
|
hi def link yardScope yardGenericDirective
|
||||||
|
hi def link yardVisibility yardGenericDirective
|
||||||
|
" Types
|
||||||
|
hi def link yardComma yardComment
|
||||||
|
hi def link yardType yardComment
|
||||||
|
hi def link yardDuckType yardComment
|
||||||
|
hi def link yardLiteral yardComment
|
||||||
|
" Lists
|
||||||
|
hi def link yardTypeList yardComment
|
||||||
|
hi def link yardParametricType yardComment
|
||||||
|
" Hashes
|
||||||
|
hi def link yardArrow yardComment
|
||||||
|
hi def link yardHashAngle yardComment
|
||||||
|
hi def link yardHashCurly yardComment
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
35
after/syntax/rust.vim
Normal file
35
after/syntax/rust.vim
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
|
||||||
|
|
||||||
|
if !exists('g:rust_conceal') || !has('conceal') || &enc != 'utf-8'
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
" For those who don't want to see `::`...
|
||||||
|
if exists('g:rust_conceal_mod_path')
|
||||||
|
syn match rustNiceOperator "::" conceal cchar=ㆍ
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn match rustRightArrowHead contained ">" conceal cchar=
|
||||||
|
syn match rustRightArrowTail contained "-" conceal cchar=⟶
|
||||||
|
syn match rustNiceOperator "->" contains=rustRightArrowHead,rustRightArrowTail
|
||||||
|
|
||||||
|
syn match rustFatRightArrowHead contained ">" conceal cchar=
|
||||||
|
syn match rustFatRightArrowTail contained "=" conceal cchar=⟹
|
||||||
|
syn match rustNiceOperator "=>" contains=rustFatRightArrowHead,rustFatRightArrowTail
|
||||||
|
|
||||||
|
syn match rustNiceOperator /\<\@!_\(_*\>\)\@=/ conceal cchar=′
|
||||||
|
|
||||||
|
" For those who don't want to see `pub`...
|
||||||
|
if exists('g:rust_conceal_pub')
|
||||||
|
syn match rustPublicSigil contained "pu" conceal cchar=*
|
||||||
|
syn match rustPublicRest contained "b" conceal cchar=
|
||||||
|
syn match rustNiceOperator "pub " contains=rustPublicSigil,rustPublicRest
|
||||||
|
endif
|
||||||
|
|
||||||
|
hi link rustNiceOperator Operator
|
||||||
|
|
||||||
|
if !exists('g:rust_conceal_mod_path')
|
||||||
|
hi! link Conceal Operator
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1 +0,0 @@
|
|||||||
syn cluster sassCssAttributes add=@cssColors
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
syn cluster stylusCssAttributes add=@cssColors
|
|
||||||
13
after/syntax/tex.vim
Normal file
13
after/syntax/tex.vim
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'latex') == -1
|
||||||
|
|
||||||
|
" adds support for cleverref package
|
||||||
|
" \Cref, \cref, \cpageref, \labelcref, \labelcpageref
|
||||||
|
syn region texRefZone matchgroup=texStatement start="\\Cref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||||
|
syn region texRefZone matchgroup=texStatement start="\\\(label\|\)c\(page\|\)ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||||
|
|
||||||
|
" adds support for listings package
|
||||||
|
syn region texZone start="\\begin{lstlisting}" end="\\end{lstlisting}\|%stopzone\>"
|
||||||
|
syn match texInputFile "\\lstinputlisting\s*\(\[.*\]\)\={.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt
|
||||||
|
syn match texZone "\\lstinline\s*\(\[.*\]\)\={.\{-}}"
|
||||||
|
|
||||||
|
endif
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,5 +1,7 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
" Maintainer: Mick Koch <mick@kochm.co>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
" License: WTFPL
|
" License: WTFPL
|
||||||
|
|
||||||
@@ -52,3 +54,5 @@ function! coffee#CoffeeSetUpErrorFormat()
|
|||||||
\%f:%l:%c:\ error:\ %m,
|
\%f:%l:%c:\ error:\ %m,
|
||||||
\%-G%.%#
|
\%-G%.%#
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,219 +0,0 @@
|
|||||||
" Vim omni completion file
|
|
||||||
" Language: Erlang
|
|
||||||
" Author: Oscar Hellström <oscar@oscarh.net>
|
|
||||||
" Contributors: kTT (http://github.com/kTT)
|
|
||||||
" Ricardo Catalinas Jiménez <jimenezrick@gmail.com>
|
|
||||||
" Eduardo Lopez (http://github.com/tapichu)
|
|
||||||
" Zhihui Jiao (http://github.com/onlychoice)
|
|
||||||
" License: Vim license
|
|
||||||
" Version: 2012/11/26
|
|
||||||
|
|
||||||
if !exists('g:erlang_completion_cache')
|
|
||||||
let g:erlang_completion_cache = 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Completion program path
|
|
||||||
let s:erlang_complete_file = expand('<sfile>:p:h') . '/erlang_complete.erl'
|
|
||||||
|
|
||||||
" Modules cache used to speed up the completion
|
|
||||||
let s:modules_cache = {}
|
|
||||||
|
|
||||||
" File cache for persistence between Vim sessions
|
|
||||||
if filewritable(expand('<sfile>:p:h')) == 2
|
|
||||||
let s:file_cache = expand('<sfile>:p:h') . '/vimerl_cache'
|
|
||||||
else
|
|
||||||
let s:file_cache = '/tmp/vimerl_cache'
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Patterns for completions
|
|
||||||
let s:erlang_local_func_beg = '\(\<[0-9A-Za-z_-]*\|\s*\)$'
|
|
||||||
let s:erlang_external_func_beg = '\<[0-9A-Za-z_-]\+:[0-9A-Za-z_-]*$'
|
|
||||||
let s:erlang_blank_line = '^\s*\(%.*\)\?$'
|
|
||||||
|
|
||||||
" Main function for completion
|
|
||||||
function erlang_complete#Complete(findstart, base)
|
|
||||||
let lnum = line('.')
|
|
||||||
let column = col('.')
|
|
||||||
let line = strpart(getline('.'), 0, column - 1)
|
|
||||||
|
|
||||||
" 1) Check if the char to the left of us are part of a function call
|
|
||||||
"
|
|
||||||
" Nothing interesting is written at the char just before the cursor
|
|
||||||
" This means _anything_ could be started here
|
|
||||||
" In this case, keyword completion should probably be used,
|
|
||||||
" for now we'll only try and complete local functions.
|
|
||||||
"
|
|
||||||
" TODO: Examine if we can stare Identifiers end complete on them
|
|
||||||
" Is this worth it? Is /completion/ of a "blank" wanted? Can we consider
|
|
||||||
" `(' interesting and check if we are in a function call etc.?
|
|
||||||
if line[column - 2] !~ '[0-9A-Za-z:_-]'
|
|
||||||
if a:findstart
|
|
||||||
return column
|
|
||||||
else
|
|
||||||
return s:ErlangFindLocalFunc(a:base)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" 2) Function in external module
|
|
||||||
if line =~ s:erlang_external_func_beg
|
|
||||||
let delimiter = match(line, ':[0-9A-Za-z_-]*$') + 1
|
|
||||||
if a:findstart
|
|
||||||
return delimiter
|
|
||||||
else
|
|
||||||
let module = matchstr(line[:-2], '\<\k*\>$')
|
|
||||||
return s:ErlangFindExternalFunc(module, a:base)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" 3) Local function
|
|
||||||
if line =~ s:erlang_local_func_beg
|
|
||||||
let funcstart = match(line, ':\@<![0-9A-Za-z_-]*$')
|
|
||||||
if a:findstart
|
|
||||||
return funcstart
|
|
||||||
else
|
|
||||||
return s:ErlangFindLocalFunc(a:base)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" 4) Unhandled situation
|
|
||||||
if a:findstart
|
|
||||||
return -1
|
|
||||||
else
|
|
||||||
return []
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Find the next non-blank line
|
|
||||||
function s:ErlangFindNextNonBlank(lnum)
|
|
||||||
let lnum = nextnonblank(a:lnum + 1)
|
|
||||||
let line = getline(lnum)
|
|
||||||
|
|
||||||
while line =~ s:erlang_blank_line && 0 != lnum
|
|
||||||
let lnum = nextnonblank(lnum + 1)
|
|
||||||
let line = getline(lnum)
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
return lnum
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Find external function names
|
|
||||||
function s:ErlangFindExternalFunc(module, base)
|
|
||||||
" If the module is cached, load its functions
|
|
||||||
if has_key(s:modules_cache, a:module)
|
|
||||||
for field_cache in get(s:modules_cache, a:module)
|
|
||||||
if match(field_cache.word, a:base) == 0
|
|
||||||
call complete_add(field_cache)
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
|
|
||||||
return []
|
|
||||||
endif
|
|
||||||
|
|
||||||
let functions = system(s:erlang_complete_file . ' ' . a:module)
|
|
||||||
for function_spec in split(functions, '\n')
|
|
||||||
if match(function_spec, a:base) == 0
|
|
||||||
let function_name = matchstr(function_spec, a:base . '\w*')
|
|
||||||
let field = {'word': function_name . '(', 'abbr': function_spec,
|
|
||||||
\ 'kind': 'f', 'dup': 1}
|
|
||||||
call complete_add(field)
|
|
||||||
|
|
||||||
" Populate the cache only when iterating over all the
|
|
||||||
" module functions (i.e. no prefix for the completion)
|
|
||||||
if g:erlang_completion_cache && a:base == ''
|
|
||||||
if !has_key(s:modules_cache, a:module)
|
|
||||||
let s:modules_cache[a:module] = [field]
|
|
||||||
else
|
|
||||||
let fields_cache = get(s:modules_cache, a:module)
|
|
||||||
let s:modules_cache[a:module] = add(fields_cache, field)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" The user entered some text, so stop the completion
|
|
||||||
if complete_check()
|
|
||||||
" The module couldn't be entirely cached
|
|
||||||
if has_key(s:modules_cache, a:module)
|
|
||||||
call remove(s:modules_cache, a:module)
|
|
||||||
endif
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
|
|
||||||
call s:ErlangWriteCache(a:module)
|
|
||||||
|
|
||||||
return []
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Find local function names
|
|
||||||
function s:ErlangFindLocalFunc(base)
|
|
||||||
" Begin at line 1
|
|
||||||
let lnum = s:ErlangFindNextNonBlank(1)
|
|
||||||
|
|
||||||
if "" == a:base
|
|
||||||
let base = '\w' " Used to match against word symbol
|
|
||||||
else
|
|
||||||
let base = a:base
|
|
||||||
endif
|
|
||||||
|
|
||||||
while 0 != lnum && !complete_check()
|
|
||||||
let line = getline(lnum)
|
|
||||||
let function_name = matchstr(line, '^' . base . '[0-9A-Za-z_-]\+(\@=')
|
|
||||||
if function_name != ""
|
|
||||||
call complete_add({'word': function_name, 'kind': 'f'})
|
|
||||||
endif
|
|
||||||
let lnum = s:ErlangFindNextNonBlank(lnum)
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
return []
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function s:ErlangLoadCache()
|
|
||||||
if filereadable(s:file_cache)
|
|
||||||
for line in readfile(s:file_cache)
|
|
||||||
let cache_entry = eval(line)
|
|
||||||
" cache_entry is a dict with just one key with the
|
|
||||||
" module name and the function list we are going to
|
|
||||||
" add to the memory cache as the value of this key
|
|
||||||
for mod_name in keys(cache_entry)
|
|
||||||
let func_list = get(cache_entry, mod_name)
|
|
||||||
let s:modules_cache[mod_name] = func_list
|
|
||||||
endfor
|
|
||||||
endfor
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function s:ErlangWriteCache(module)
|
|
||||||
" Write all the module functions to the cache file
|
|
||||||
if has_key(s:modules_cache, a:module)
|
|
||||||
let func_list = get(s:modules_cache, a:module)
|
|
||||||
if len(func_list) > 0
|
|
||||||
let cache_entry = {a:module : func_list}
|
|
||||||
execute 'redir >>' . s:file_cache
|
|
||||||
silent echon cache_entry
|
|
||||||
silent echon "\n"
|
|
||||||
redir END
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function s:ErlangPurgeCache(...)
|
|
||||||
for mod_name in a:000
|
|
||||||
if has_key(s:modules_cache, mod_name)
|
|
||||||
call remove(s:modules_cache, mod_name)
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
|
|
||||||
" Delete the old cache file
|
|
||||||
call delete(s:file_cache)
|
|
||||||
|
|
||||||
" Write a new one
|
|
||||||
for mod_name in keys(s:modules_cache)
|
|
||||||
call s:ErlangWriteCache(mod_name)
|
|
||||||
endfor
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Load the file cache when this script is autoloaded
|
|
||||||
call s:ErlangLoadCache()
|
|
||||||
|
|
||||||
" Command for removing modules from the cache
|
|
||||||
command -nargs=+ ErlangPurgeCache silent call s:ErlangPurgeCache(<f-args>)
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
" Copyright 2011 The Go Authors. All rights reserved.
|
|
||||||
" Use of this source code is governed by a BSD-style
|
|
||||||
" license that can be found in the LICENSE file.
|
|
||||||
"
|
|
||||||
" This file provides a utility function that performs auto-completion of
|
|
||||||
" package names, for use by other commands.
|
|
||||||
|
|
||||||
let s:goos = $GOOS
|
|
||||||
let s:goarch = $GOARCH
|
|
||||||
|
|
||||||
if len(s:goos) == 0
|
|
||||||
if exists('g:golang_goos')
|
|
||||||
let s:goos = g:golang_goos
|
|
||||||
elseif has('win32') || has('win64')
|
|
||||||
let s:goos = 'windows'
|
|
||||||
elseif has('macunix')
|
|
||||||
let s:goos = 'darwin'
|
|
||||||
else
|
|
||||||
let s:goos = '*'
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
if len(s:goarch) == 0
|
|
||||||
if exists('g:golang_goarch')
|
|
||||||
let s:goarch = g:golang_goarch
|
|
||||||
else
|
|
||||||
let s:goarch = '*'
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
function! go#complete#Package(ArgLead, CmdLine, CursorPos)
|
|
||||||
let dirs = []
|
|
||||||
|
|
||||||
if executable('go')
|
|
||||||
let goroot = substitute(system('go env GOROOT'), '\n', '', 'g')
|
|
||||||
if v:shell_error
|
|
||||||
echo '\'go env GOROOT\' failed'
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
let goroot = $GOROOT
|
|
||||||
endif
|
|
||||||
|
|
||||||
if len(goroot) != 0 && isdirectory(goroot)
|
|
||||||
let dirs += [ goroot ]
|
|
||||||
endif
|
|
||||||
|
|
||||||
let workspaces = split($GOPATH, ':')
|
|
||||||
if workspaces != []
|
|
||||||
let dirs += workspaces
|
|
||||||
endif
|
|
||||||
|
|
||||||
if len(dirs) == 0
|
|
||||||
" should not happen
|
|
||||||
return []
|
|
||||||
endif
|
|
||||||
|
|
||||||
let ret = {}
|
|
||||||
for dir in dirs
|
|
||||||
let root = expand(dir . '/pkg/' . s:goos . '_' . s:goarch)
|
|
||||||
for i in split(globpath(root, a:ArgLead.'*'), "\n")
|
|
||||||
if isdirectory(i)
|
|
||||||
let i .= '/'
|
|
||||||
elseif i !~ '\.a$'
|
|
||||||
continue
|
|
||||||
endif
|
|
||||||
let i = substitute(substitute(i[len(root)+1:], '[\\]', '/', 'g'), '\.a$', '', 'g')
|
|
||||||
let ret[i] = i
|
|
||||||
endfor
|
|
||||||
endfor
|
|
||||||
return sort(keys(ret))
|
|
||||||
endfunction
|
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'html5') == -1
|
||||||
|
|
||||||
" Vim completion script
|
" Vim completion script
|
||||||
" Language: HTML and XHTML
|
" Language: HTML and XHTML
|
||||||
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||||
@@ -7,9 +9,51 @@
|
|||||||
" Last Change: 2010 Sep 25
|
" Last Change: 2010 Sep 25
|
||||||
|
|
||||||
if !exists('g:aria_attributes_complete')
|
if !exists('g:aria_attributes_complete')
|
||||||
let g:aria_attributes_complete = 1
|
let g:aria_attributes_complete = 1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" Distinguish between HTML versions.
|
||||||
|
" To use with other HTML versions add another "elseif" condition to match
|
||||||
|
" proper DOCTYPE.
|
||||||
|
function! htmlcomplete#DetectOmniFlavor()
|
||||||
|
if &filetype == 'xhtml'
|
||||||
|
let b:html_omni_flavor = 'xhtml10s'
|
||||||
|
else
|
||||||
|
let b:html_omni_flavor = 'html5'
|
||||||
|
endif
|
||||||
|
let i = 1
|
||||||
|
let line = ""
|
||||||
|
while i < 10 && i < line("$")
|
||||||
|
let line = getline(i)
|
||||||
|
if line =~ '<!DOCTYPE.*\<DTD '
|
||||||
|
break
|
||||||
|
endif
|
||||||
|
let i += 1
|
||||||
|
endwhile
|
||||||
|
if line =~ '<!DOCTYPE.*\<DTD ' " doctype line found above
|
||||||
|
if line =~ ' HTML 3\.2'
|
||||||
|
let b:html_omni_flavor = 'html32'
|
||||||
|
elseif line =~ ' XHTML 1\.1'
|
||||||
|
let b:html_omni_flavor = 'xhtml11'
|
||||||
|
else " two-step detection with strict/frameset/transitional
|
||||||
|
if line =~ ' XHTML 1\.0'
|
||||||
|
let b:html_omni_flavor = 'xhtml10'
|
||||||
|
elseif line =~ ' HTML 4\.01'
|
||||||
|
let b:html_omni_flavor = 'html401'
|
||||||
|
elseif line =~ ' HTML 4.0\>'
|
||||||
|
let b:html_omni_flavor = 'html40'
|
||||||
|
endif
|
||||||
|
if line =~ '\<Transitional\>'
|
||||||
|
let b:html_omni_flavor .= 't'
|
||||||
|
elseif line =~ '\<Frameset\>'
|
||||||
|
let b:html_omni_flavor .= 'f'
|
||||||
|
else
|
||||||
|
let b:html_omni_flavor .= 's'
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! htmlcomplete#CompleteTags(findstart, base)
|
function! htmlcomplete#CompleteTags(findstart, base)
|
||||||
if a:findstart
|
if a:findstart
|
||||||
" locate the start of the word
|
" locate the start of the word
|
||||||
@@ -160,18 +204,15 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
if exists("b:entitiescompl")
|
if exists("b:entitiescompl")
|
||||||
unlet! b:entitiescompl
|
unlet! b:entitiescompl
|
||||||
|
|
||||||
if !exists("b:html_doctype")
|
|
||||||
call htmlcomplete#CheckDoctype()
|
|
||||||
endif
|
|
||||||
if !exists("b:html_omni")
|
if !exists("b:html_omni")
|
||||||
"runtime! autoload/xml/xhtml10s.vim
|
call htmlcomplete#CheckDoctype()
|
||||||
call htmlcomplete#LoadData()
|
call htmlcomplete#LoadData()
|
||||||
endif
|
endif
|
||||||
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
||||||
call htmlcomplete#LoadAria()
|
call htmlcomplete#LoadAria()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let entities = b:html_omni['vimxmlentities']
|
let entities = b:html_omni['vimxmlentities']
|
||||||
|
|
||||||
if len(a:base) == 1
|
if len(a:base) == 1
|
||||||
for m in entities
|
for m in entities
|
||||||
@@ -462,16 +503,13 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
let entered_value = matchstr(attr, ".*=\\s*[\"']\\?\\zs.*")
|
let entered_value = matchstr(attr, ".*=\\s*[\"']\\?\\zs.*")
|
||||||
let values = []
|
let values = []
|
||||||
" Load data {{{
|
" Load data {{{
|
||||||
if !exists("b:html_doctype")
|
|
||||||
call htmlcomplete#CheckDoctype()
|
|
||||||
endif
|
|
||||||
if !exists("b:html_omni")
|
if !exists("b:html_omni")
|
||||||
"runtime! autoload/xml/xhtml10s.vim
|
call htmlcomplete#CheckDoctype()
|
||||||
call htmlcomplete#LoadData()
|
call htmlcomplete#LoadData()
|
||||||
endif
|
endif
|
||||||
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
||||||
call htmlcomplete#LoadAria()
|
call htmlcomplete#LoadAria()
|
||||||
endif
|
endif
|
||||||
" }}}
|
" }}}
|
||||||
if attrname == 'href'
|
if attrname == 'href'
|
||||||
" Now we are looking for local anchors defined by name or id
|
" Now we are looking for local anchors defined by name or id
|
||||||
@@ -545,15 +583,13 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
let sbase = matchstr(context, '.*\ze\s.*')
|
let sbase = matchstr(context, '.*\ze\s.*')
|
||||||
|
|
||||||
" Load data {{{
|
" Load data {{{
|
||||||
if !exists("b:html_doctype")
|
|
||||||
call htmlcomplete#CheckDoctype()
|
|
||||||
endif
|
|
||||||
if !exists("b:html_omni")
|
if !exists("b:html_omni")
|
||||||
|
call htmlcomplete#CheckDoctype()
|
||||||
call htmlcomplete#LoadData()
|
call htmlcomplete#LoadData()
|
||||||
endif
|
endif
|
||||||
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
||||||
call htmlcomplete#LoadAria()
|
call htmlcomplete#LoadAria()
|
||||||
endif
|
endif
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
if has_key(b:html_omni, tag)
|
if has_key(b:html_omni, tag)
|
||||||
@@ -651,16 +687,13 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
endif
|
endif
|
||||||
" }}}
|
" }}}
|
||||||
" Load data {{{
|
" Load data {{{
|
||||||
if !exists("b:html_doctype")
|
|
||||||
call htmlcomplete#CheckDoctype()
|
|
||||||
endif
|
|
||||||
if !exists("b:html_omni")
|
if !exists("b:html_omni")
|
||||||
"runtime! autoload/xml/xhtml10s.vim
|
call htmlcomplete#CheckDoctype()
|
||||||
call htmlcomplete#LoadData()
|
call htmlcomplete#LoadData()
|
||||||
endif
|
endif
|
||||||
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
if g:aria_attributes_complete == 1 && !exists("b:aria_omni")
|
||||||
call htmlcomplete#LoadAria()
|
call htmlcomplete#LoadAria()
|
||||||
endif
|
endif
|
||||||
" }}}
|
" }}}
|
||||||
" Tag completion {{{
|
" Tag completion {{{
|
||||||
" Deal with tag completion.
|
" Deal with tag completion.
|
||||||
@@ -763,9 +796,9 @@ endfunction
|
|||||||
function! htmlcomplete#LoadData() " {{{
|
function! htmlcomplete#LoadData() " {{{
|
||||||
if !exists("b:html_omni_flavor")
|
if !exists("b:html_omni_flavor")
|
||||||
if &filetype == 'html'
|
if &filetype == 'html'
|
||||||
let b:html_omni_flavor = 'html401t'
|
let b:html_omni_flavor = 'html5'
|
||||||
else
|
else
|
||||||
let b:html_omni_flavor = 'xhtml10s'
|
let b:html_omni_flavor = 'html5'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
" With that if we still have bloated memory but create new buffer
|
" With that if we still have bloated memory but create new buffer
|
||||||
@@ -785,61 +818,8 @@ function! htmlcomplete#CheckDoctype() " {{{
|
|||||||
else
|
else
|
||||||
let old_flavor = ''
|
let old_flavor = ''
|
||||||
endif
|
endif
|
||||||
let i = 1
|
call htmlcomplete#DetectOmniFlavor()
|
||||||
while i < 10 && i < line("$")
|
if !exists('b:html_omni_flavor')
|
||||||
let line = getline(i)
|
|
||||||
if line =~ '<!DOCTYPE.*\<DTD HTML 3\.2'
|
|
||||||
let b:html_omni_flavor = 'html32'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.0 Transitional'
|
|
||||||
let b:html_omni_flavor = 'html40t'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.0 Frameset'
|
|
||||||
let b:html_omni_flavor = 'html40f'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.0'
|
|
||||||
let b:html_omni_flavor = 'html40s'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.01 Transitional'
|
|
||||||
let b:html_omni_flavor = 'html401t'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.01 Frameset'
|
|
||||||
let b:html_omni_flavor = 'html401f'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.01'
|
|
||||||
let b:html_omni_flavor = 'html401s'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.0 Transitional'
|
|
||||||
let b:html_omni_flavor = 'xhtml10t'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.0 Frameset'
|
|
||||||
let b:html_omni_flavor = 'xhtml10f'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.0 Strict'
|
|
||||||
let b:html_omni_flavor = 'xhtml10s'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.1'
|
|
||||||
let b:html_omni_flavor = 'xhtml11'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
elseif line =~ '<!DOCTYPE html'
|
|
||||||
let b:html_omni_flavor = 'html5'
|
|
||||||
let b:html_doctype = 1
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
let i += 1
|
|
||||||
endwhile
|
|
||||||
if !exists("b:html_doctype")
|
|
||||||
return
|
return
|
||||||
else
|
else
|
||||||
" Tie g:xmldata with b:html_omni this way we need to sourca data file only
|
" Tie g:xmldata with b:html_omni this way we need to sourca data file only
|
||||||
@@ -859,3 +839,5 @@ function! htmlcomplete#CheckDoctype() " {{{
|
|||||||
endfunction
|
endfunction
|
||||||
" }}}
|
" }}}
|
||||||
" vim:set foldmethod=marker:
|
" vim:set foldmethod=marker:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim completion script
|
" Vim completion script
|
||||||
" Language: Ruby
|
" Language: Ruby
|
||||||
" Maintainer: Mark Guzman <segfault@hasno.info>
|
" Maintainer: Mark Guzman <segfault@hasno.info>
|
||||||
@@ -704,7 +706,9 @@ class VimRubyCompletion
|
|||||||
cv = eval("self.class.constants")
|
cv = eval("self.class.constants")
|
||||||
vartype = get_var_type( receiver )
|
vartype = get_var_type( receiver )
|
||||||
dprint "vartype: %s" % vartype
|
dprint "vartype: %s" % vartype
|
||||||
if vartype != ''
|
|
||||||
|
invalid_vartype = ['', "gets"]
|
||||||
|
if !invalid_vartype.include?(vartype)
|
||||||
load_buffer_class( vartype )
|
load_buffer_class( vartype )
|
||||||
|
|
||||||
begin
|
begin
|
||||||
@@ -732,7 +736,7 @@ class VimRubyCompletion
|
|||||||
methods.concat m.instance_methods(false)
|
methods.concat m.instance_methods(false)
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
variables += add_rails_columns( "#{vartype}" ) if vartype && vartype.length > 0
|
variables += add_rails_columns( "#{vartype}" ) if vartype && !invalid_vartype.include?(vartype)
|
||||||
|
|
||||||
when /^\(?\s*[A-Za-z0-9:^@.%\/+*\(\)]+\.\.\.?[A-Za-z0-9:^@.%\/+*\(\)]+\s*\)?\.([^.]*)/
|
when /^\(?\s*[A-Za-z0-9:^@.%\/+*\(\)]+\.\.\.?[A-Za-z0-9:^@.%\/+*\(\)]+\s*\)?\.([^.]*)/
|
||||||
message = $1
|
message = $1
|
||||||
@@ -829,3 +833,5 @@ call s:DefRuby()
|
|||||||
|
|
||||||
|
|
||||||
" vim:tw=78:sw=4:ts=8:et:fdm=marker:ft=vim:norl:
|
" vim:tw=78:sw=4:ts=8:et:fdm=marker:ft=vim:norl:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
229
autoload/rust.vim
Normal file
229
autoload/rust.vim
Normal file
@@ -0,0 +1,229 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
|
||||||
|
|
||||||
|
" Author: Kevin Ballard
|
||||||
|
" Description: Helper functions for Rust commands/mappings
|
||||||
|
" Last Modified: May 27, 2014
|
||||||
|
|
||||||
|
" Jump {{{1
|
||||||
|
|
||||||
|
function! rust#Jump(mode, function) range
|
||||||
|
let cnt = v:count1
|
||||||
|
normal! m'
|
||||||
|
if a:mode ==# 'v'
|
||||||
|
norm! gv
|
||||||
|
endif
|
||||||
|
let foldenable = &foldenable
|
||||||
|
set nofoldenable
|
||||||
|
while cnt > 0
|
||||||
|
execute "call <SID>Jump_" . a:function . "()"
|
||||||
|
let cnt = cnt - 1
|
||||||
|
endwhile
|
||||||
|
let &foldenable = foldenable
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:Jump_Back()
|
||||||
|
call search('{', 'b')
|
||||||
|
keepjumps normal! w99[{
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:Jump_Forward()
|
||||||
|
normal! j0
|
||||||
|
call search('{', 'b')
|
||||||
|
keepjumps normal! w99[{%
|
||||||
|
call search('{')
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Run {{{1
|
||||||
|
|
||||||
|
function! rust#Run(bang, args)
|
||||||
|
if a:bang
|
||||||
|
let idx = index(a:args, '--')
|
||||||
|
if idx != -1
|
||||||
|
let rustc_args = idx == 0 ? [] : a:args[:idx-1]
|
||||||
|
let args = a:args[idx+1:]
|
||||||
|
else
|
||||||
|
let rustc_args = a:args
|
||||||
|
let args = []
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
let rustc_args = []
|
||||||
|
let args = a:args
|
||||||
|
endif
|
||||||
|
|
||||||
|
let b:rust_last_rustc_args = rustc_args
|
||||||
|
let b:rust_last_args = args
|
||||||
|
|
||||||
|
call s:WithPath(function("s:Run"), rustc_args, args)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:Run(path, rustc_args, args)
|
||||||
|
try
|
||||||
|
let exepath = tempname()
|
||||||
|
if has('win32')
|
||||||
|
let exepath .= '.exe'
|
||||||
|
endif
|
||||||
|
|
||||||
|
let rustc_args = [a:path, '-o', exepath] + a:rustc_args
|
||||||
|
|
||||||
|
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||||
|
|
||||||
|
let output = system(shellescape(rustc) . " " . join(map(rustc_args, 'shellescape(v:val)')))
|
||||||
|
if output != ''
|
||||||
|
echohl WarningMsg
|
||||||
|
echo output
|
||||||
|
echohl None
|
||||||
|
endif
|
||||||
|
if !v:shell_error
|
||||||
|
exe '!' . shellescape(exepath) . " " . join(map(a:args, 'shellescape(v:val)'))
|
||||||
|
endif
|
||||||
|
finally
|
||||||
|
if exists("exepath")
|
||||||
|
silent! call delete(exepath)
|
||||||
|
endif
|
||||||
|
endtry
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Expand {{{1
|
||||||
|
|
||||||
|
function! rust#Expand(bang, args)
|
||||||
|
if a:bang && !empty(a:args)
|
||||||
|
let pretty = a:args[0]
|
||||||
|
let args = a:args[1:]
|
||||||
|
else
|
||||||
|
let pretty = "expanded"
|
||||||
|
let args = a:args
|
||||||
|
endif
|
||||||
|
call s:WithPath(function("s:Expand"), pretty, args)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:Expand(path, pretty, args)
|
||||||
|
try
|
||||||
|
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||||
|
|
||||||
|
let args = [a:path, '--pretty', a:pretty] + a:args
|
||||||
|
let output = system(shellescape(rustc) . " " . join(map(args, "shellescape(v:val)")))
|
||||||
|
if v:shell_error
|
||||||
|
echohl WarningMsg
|
||||||
|
echo output
|
||||||
|
echohl None
|
||||||
|
else
|
||||||
|
new
|
||||||
|
silent put =output
|
||||||
|
1
|
||||||
|
d
|
||||||
|
setl filetype=rust
|
||||||
|
setl buftype=nofile
|
||||||
|
setl bufhidden=hide
|
||||||
|
setl noswapfile
|
||||||
|
endif
|
||||||
|
endtry
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! rust#CompleteExpand(lead, line, pos)
|
||||||
|
if a:line[: a:pos-1] =~ '^RustExpand!\s*\S*$'
|
||||||
|
" first argument and it has a !
|
||||||
|
let list = ["normal", "expanded", "typed", "expanded,identified", "flowgraph="]
|
||||||
|
if !empty(a:lead)
|
||||||
|
call filter(list, "v:val[:len(a:lead)-1] == a:lead")
|
||||||
|
endif
|
||||||
|
return list
|
||||||
|
endif
|
||||||
|
|
||||||
|
return glob(escape(a:lead, "*?[") . '*', 0, 1)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Emit {{{1
|
||||||
|
|
||||||
|
function! rust#Emit(type, args)
|
||||||
|
call s:WithPath(function("s:Emit"), a:type, a:args)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:Emit(path, type, args)
|
||||||
|
try
|
||||||
|
let rustc = exists("g:rustc_path") ? g:rustc_path : "rustc"
|
||||||
|
|
||||||
|
let args = [a:path, '--emit', a:type, '-o', '-'] + a:args
|
||||||
|
let output = system(shellescape(rustc) . " " . join(map(args, "shellescape(v:val)")))
|
||||||
|
if v:shell_error
|
||||||
|
echohl WarningMsg
|
||||||
|
echo output
|
||||||
|
echohl None
|
||||||
|
else
|
||||||
|
new
|
||||||
|
silent put =output
|
||||||
|
1
|
||||||
|
d
|
||||||
|
if a:type == "ir"
|
||||||
|
setl filetype=llvm
|
||||||
|
elseif a:type == "asm"
|
||||||
|
setl filetype=asm
|
||||||
|
endif
|
||||||
|
setl buftype=nofile
|
||||||
|
setl bufhidden=hide
|
||||||
|
setl noswapfile
|
||||||
|
endif
|
||||||
|
endtry
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Utility functions {{{1
|
||||||
|
|
||||||
|
function! s:WithPath(func, ...)
|
||||||
|
try
|
||||||
|
let save_write = &write
|
||||||
|
set write
|
||||||
|
let path = expand('%')
|
||||||
|
let pathisempty = empty(path)
|
||||||
|
if pathisempty || !save_write
|
||||||
|
" use a temporary file named 'unnamed.rs' inside a temporary
|
||||||
|
" directory. This produces better error messages
|
||||||
|
let tmpdir = tempname()
|
||||||
|
call mkdir(tmpdir)
|
||||||
|
|
||||||
|
let save_cwd = getcwd()
|
||||||
|
silent exe 'lcd' fnameescape(tmpdir)
|
||||||
|
|
||||||
|
let path = 'unnamed.rs'
|
||||||
|
|
||||||
|
let save_mod = &mod
|
||||||
|
set nomod
|
||||||
|
|
||||||
|
silent exe 'keepalt write! ' . fnameescape(path)
|
||||||
|
if pathisempty
|
||||||
|
silent keepalt 0file
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
update
|
||||||
|
endif
|
||||||
|
|
||||||
|
call call(a:func, [path] + a:000)
|
||||||
|
finally
|
||||||
|
if exists("save_mod") | let &mod = save_mod | endif
|
||||||
|
if exists("save_write") | let &write = save_write | endif
|
||||||
|
if exists("save_cwd") | silent exe 'lcd' fnameescape(save_cwd) | endif
|
||||||
|
if exists("tmpdir") | silent call s:RmDir(tmpdir) | endif
|
||||||
|
endtry
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! rust#AppendCmdLine(text)
|
||||||
|
call setcmdpos(getcmdpos())
|
||||||
|
let cmd = getcmdline() . a:text
|
||||||
|
return cmd
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:RmDir(path)
|
||||||
|
" sanity check; make sure it's not empty, /, or $HOME
|
||||||
|
if empty(a:path)
|
||||||
|
echoerr 'Attempted to delete empty path'
|
||||||
|
return 0
|
||||||
|
elseif a:path == '/' || a:path == $HOME
|
||||||
|
echoerr 'Attempted to delete protected path: ' . a:path
|
||||||
|
return 0
|
||||||
|
endif
|
||||||
|
silent exe "!rm -rf " . shellescape(a:path)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" }}}1
|
||||||
|
|
||||||
|
" vim: set noet sw=4 ts=4:
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'html5') == -1
|
||||||
|
|
||||||
" Vim completion for WAI-ARIA data file
|
" Vim completion for WAI-ARIA data file
|
||||||
" Language: HTML + WAI-ARIA
|
" Language: HTML + WAI-ARIA
|
||||||
" Maintainer: othree <othree@gmail.com>
|
" Maintainer: othree <othree@gmail.com>
|
||||||
@@ -230,3 +232,5 @@ let g:xmldata_aria = {
|
|||||||
\ 'default_role': default_role,
|
\ 'default_role': default_role,
|
||||||
\ 'vimariaattrinfo': aria_attributes_value
|
\ 'vimariaattrinfo': aria_attributes_value
|
||||||
\ }
|
\ }
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'html5') == -1
|
||||||
|
|
||||||
" Vim completion for HTML5 data file
|
" Vim completion for HTML5 data file
|
||||||
" Language: HTML5
|
" Language: HTML5
|
||||||
" Maintainer: othree <othree@gmail.com>
|
" Maintainer: othree <othree@gmail.com>
|
||||||
@@ -61,7 +63,7 @@ let charset = [
|
|||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
" Attributes_and_Settings: {{{
|
" Attributes_and_Settings: {{{
|
||||||
let core_attributes = {'accesskey': [], 'class': [], 'contenteditable': ['true', 'false', ''], 'contextmenu': [], 'dir': ['ltr', 'rtl'], 'draggable': ['true', 'false'], 'hidden': ['hidden', ''], 'id': [], 'lang': lang_tag, 'spellcheck': ['true', 'false', ''], 'style': [], 'tabindex': [], 'title': []}
|
let core_attributes = {'accesskey': [], 'class': [], 'contenteditable': ['true', 'false', ''], 'contextmenu': [], 'dir': ['ltr', 'rtl'], 'draggable': ['true', 'false'], 'hidden': ['hidden', ''], 'id': [], 'is': [], 'lang': lang_tag, 'spellcheck': ['true', 'false', ''], 'style': [], 'tabindex': [], 'title': []}
|
||||||
let xml_attributes = {'xml:lang': lang_tag, 'xml:space': ['preserve'], 'xml:base': [], 'xmlns': ['http://www.w3.org/1999/xhtml', 'http://www.w3.org/1998/Math/MathML', 'http://www.w3.org/2000/svg', 'http://www.w3.org/1999/xlink']}
|
let xml_attributes = {'xml:lang': lang_tag, 'xml:space': ['preserve'], 'xml:base': [], 'xmlns': ['http://www.w3.org/1999/xhtml', 'http://www.w3.org/1998/Math/MathML', 'http://www.w3.org/2000/svg', 'http://www.w3.org/1999/xlink']}
|
||||||
|
|
||||||
let body_attributes = {}
|
let body_attributes = {}
|
||||||
@@ -101,6 +103,7 @@ let attributes_value = {
|
|||||||
\ 'disabled': ['Bool', ''],
|
\ 'disabled': ['Bool', ''],
|
||||||
\ 'draggable': ['true/false', ''],
|
\ 'draggable': ['true/false', ''],
|
||||||
\ 'enctype': ['Token', ''],
|
\ 'enctype': ['Token', ''],
|
||||||
|
\ 'extends': ['Text', ''],
|
||||||
\ 'for': ['ID', ''],
|
\ 'for': ['ID', ''],
|
||||||
\ 'form': ['ID', ''],
|
\ 'form': ['ID', ''],
|
||||||
\ 'formaction': ['URL', ''],
|
\ 'formaction': ['URL', ''],
|
||||||
@@ -152,6 +155,7 @@ let attributes_value = {
|
|||||||
\ 'scope': ['Token', ''],
|
\ 'scope': ['Token', ''],
|
||||||
\ 'scoped': ['Bool', ''],
|
\ 'scoped': ['Bool', ''],
|
||||||
\ 'seamless': ['Bool', ''],
|
\ 'seamless': ['Bool', ''],
|
||||||
|
\ 'select': ['Text', ''],
|
||||||
\ 'selected': ['Bool', ''],
|
\ 'selected': ['Bool', ''],
|
||||||
\ 'shape': ['Token', ''],
|
\ 'shape': ['Token', ''],
|
||||||
\ 'size': ['Int', ''],
|
\ 'size': ['Int', ''],
|
||||||
@@ -322,16 +326,16 @@ endif
|
|||||||
|
|
||||||
" Ref: http://dev.w3.org/html5/markup/
|
" Ref: http://dev.w3.org/html5/markup/
|
||||||
" Version: Draft 05 April 2011
|
" Version: Draft 05 April 2011
|
||||||
let phrasing_elements = ['a', 'em', 'strong', 'small', 'mark', 'abbr', 'dfn', 'i', 'b', 'u', 'code', 'var', 'samp', 'kbd', 'sup', 'sub', 'q', 'cite', 'span', 'bdo', 'bdi', 'br', 'wbr', 'ins', 'del', 'img', 'embed', 'object', 'iframe', 'map', 'area', 'script', 'noscript', 'ruby', 'video', 'audio', 'input', 'textarea', 'select', 'button', 'label', 'output', 'datalist', 'keygen', 'progress', 'command', 'canvas', 'time', 'meter', 'data']
|
let phrasing_elements = ['a', 'em', 'strong', 'small', 'mark', 'abbr', 'dfn', 'i', 'b', 'u', 'code', 'var', 'samp', 'kbd', 'sup', 'sub', 'q', 'cite', 'span', 'bdo', 'bdi', 'br', 'wbr', 'ins', 'del', 'img', 'picture', 'embed', 'object', 'iframe', 'map', 'area', 'script', 'noscript', 'ruby', 'video', 'audio', 'input', 'textarea', 'select', 'button', 'label', 'output', 'datalist', 'keygen', 'progress', 'command', 'canvas', 'time', 'meter', 'data', 'content', 'shadow']
|
||||||
|
|
||||||
let metadata_elements = ['link', 'style', 'meta', 'script', 'noscript', 'command']
|
let metadata_elements = ['link', 'style', 'meta', 'script', 'noscript', 'command']
|
||||||
|
|
||||||
let flow_elements = phrasing_elements + ['p', 'hr', 'pre', 'ul', 'ol', 'dl', 'div', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'hgroup', 'address', 'blockquote', 'ins', 'del', 'object', 'main', 'map', 'noscript', 'section', 'nav', 'article', 'aside', 'header', 'footer', 'video', 'audio', 'figure', 'table', 'template', 'form', 'fieldset', 'menu', 'canvas', 'details']
|
let flow_elements = phrasing_elements + ['p', 'hr', 'pre', 'ul', 'ol', 'dl', 'div', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'hgroup', 'address', 'blockquote', 'ins', 'del', 'element', 'object', 'main', 'map', 'noscript', 'section', 'nav', 'article', 'aside', 'header', 'footer', 'video', 'audio', 'figure', 'table', 'template', 'form', 'fieldset', 'menu', 'canvas', 'details']
|
||||||
|
|
||||||
" http://dev.w3.org/html5/spec/Overview.html#linkTypes
|
" http://dev.w3.org/html5/spec/Overview.html#linkTypes
|
||||||
let linktypes = ['alternate', 'author', 'bookmark', 'external', 'help', 'icon', 'license', 'next', 'nofollow', 'noreferrer', 'pingback', 'prefetch', 'prev', 'search', 'stylesheet', 'sidebar', 'tag']
|
let linktypes = ['alternate', 'author', 'bookmark', 'external', 'help', 'icon', 'license', 'next', 'nofollow', 'noreferrer', 'pingback', 'prefetch', 'prev', 'search', 'stylesheet', 'sidebar', 'tag']
|
||||||
" http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html
|
" http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html
|
||||||
let linkreltypes = linktypes + ['canonical']
|
let linkreltypes = linktypes + ['canonical', 'import']
|
||||||
|
|
||||||
" a and button are special elements for interactive, some element can't be its descendent
|
" a and button are special elements for interactive, some element can't be its descendent
|
||||||
let abutton_dec = 'details\\|embed\\|iframe\\|keygen\\|label\\|menu\\|select\\|textarea'
|
let abutton_dec = 'details\\|embed\\|iframe\\|keygen\\|label\\|menu\\|select\\|textarea'
|
||||||
@@ -340,7 +344,7 @@ let abutton_dec = 'details\\|embed\\|iframe\\|keygen\\|label\\|menu\\|select\\|t
|
|||||||
|
|
||||||
let g:xmldata_html5 = {
|
let g:xmldata_html5 = {
|
||||||
\ 'vimxmlentities': ['AElig', 'Aacute', 'Acirc', 'Agrave', 'Alpha', 'Aring', 'Atilde', 'Auml', 'Beta', 'Ccedil', 'Chi', 'Dagger', 'Delta', 'ETH', 'Eacute', 'Ecirc', 'Egrave', 'Epsilon', 'Eta', 'Euml', 'Gamma', 'Iacute', 'Icirc', 'Igrave', 'Iota', 'Iuml', 'Kappa', 'Lambda', 'Mu', 'Ntilde', 'Nu', 'OElig', 'Oacute', 'Ocirc', 'Ograve', 'Omega', 'Omicron', 'Oslash', 'Otilde', 'Ouml', 'Phi', 'Pi', 'Prime', 'Psi', 'Rho', 'Scaron', 'Sigma', 'THORN', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', 'ndash', 'ne', 'ni', 'not', 'notin', 'nsub', 'ntilde', 'nu', 'oacute', 'ocirc', 'oelig', 'ograve', 'oline', 'omega', 'omicron', 'oplus', 'or', 'ordf', 'ordm', 'oslash', 'otilde', 'otimes', 'ouml', 'para', 'part', 'permil', 'perp', 'phi', 'pi', 'piv', 'plusmn', 'pound', 'prime', 'prod', 'prop', 'psi', 'quot', 'rArr', 'radic', 'rang', 'raquo', 'rarr', 'rceil', 'rdquo', 'real', 'reg', 'rfloor', 'rho', 'rlm', 'rsaquo', 'rsquo', 'sbquo', 'scaron', 'sdot', 'sect', 'shy', 'sigma', 'sigmaf', 'sim', 'spades', 'sub', 'sube', 'sum', 'sup', 'sup1', 'sup2', 'sup3', 'supe', 'szlig', 'tau', 'there4', 'theta', 'thetasym', 'thinsp', 'thorn', 'tilde', 'times', 'trade', 'uArr', 'uacute', 'uarr', 'ucirc', 'ugrave', 'uml', 'upsih', 'upsilon', 'uuml', 'weierp', 'xi', 'yacute', 'yen', 'yuml', 'zeta', 'zwj', 'zwnj'],
|
\ 'vimxmlentities': ['AElig', 'Aacute', 'Acirc', 'Agrave', 'Alpha', 'Aring', 'Atilde', 'Auml', 'Beta', 'Ccedil', 'Chi', 'Dagger', 'Delta', 'ETH', 'Eacute', 'Ecirc', 'Egrave', 'Epsilon', 'Eta', 'Euml', 'Gamma', 'Iacute', 'Icirc', 'Igrave', 'Iota', 'Iuml', 'Kappa', 'Lambda', 'Mu', 'Ntilde', 'Nu', 'OElig', 'Oacute', 'Ocirc', 'Ograve', 'Omega', 'Omicron', 'Oslash', 'Otilde', 'Ouml', 'Phi', 'Pi', 'Prime', 'Psi', 'Rho', 'Scaron', 'Sigma', 'THORN', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', 'ndash', 'ne', 'ni', 'not', 'notin', 'nsub', 'ntilde', 'nu', 'oacute', 'ocirc', 'oelig', 'ograve', 'oline', 'omega', 'omicron', 'oplus', 'or', 'ordf', 'ordm', 'oslash', 'otilde', 'otimes', 'ouml', 'para', 'part', 'permil', 'perp', 'phi', 'pi', 'piv', 'plusmn', 'pound', 'prime', 'prod', 'prop', 'psi', 'quot', 'rArr', 'radic', 'rang', 'raquo', 'rarr', 'rceil', 'rdquo', 'real', 'reg', 'rfloor', 'rho', 'rlm', 'rsaquo', 'rsquo', 'sbquo', 'scaron', 'sdot', 'sect', 'shy', 'sigma', 'sigmaf', 'sim', 'spades', 'sub', 'sube', 'sum', 'sup', 'sup1', 'sup2', 'sup3', 'supe', 'szlig', 'tau', 'there4', 'theta', 'thetasym', 'thinsp', 'thorn', 'tilde', 'times', 'trade', 'uArr', 'uacute', 'uarr', 'ucirc', 'ugrave', 'uml', 'upsih', 'upsilon', 'uuml', 'weierp', 'xi', 'yacute', 'yen', 'yuml', 'zeta', 'zwj', 'zwnj'],
|
||||||
\ 'vimxmlroot': ['html'],
|
\ 'vimxmlroot': ['html', 'head', 'body'] + flow_elements,
|
||||||
\ 'a': [
|
\ 'a': [
|
||||||
\ filter(copy(flow_elements), "!(v:val =~ '". abutton_dec ."')"),
|
\ filter(copy(flow_elements), "!(v:val =~ '". abutton_dec ."')"),
|
||||||
\ extend(copy(global_attributes), {'name': [], 'href': [], 'target': [], 'rel': linktypes, 'hreflang': lang_tag, 'media': [], 'type': []})
|
\ extend(copy(global_attributes), {'name': [], 'href': [], 'target': [], 'rel': linktypes, 'hreflang': lang_tag, 'media': [], 'type': []})
|
||||||
@@ -425,6 +429,10 @@ let g:xmldata_html5 = {
|
|||||||
\ [],
|
\ [],
|
||||||
\ extend(copy(global_attributes), {'span': []})
|
\ extend(copy(global_attributes), {'span': []})
|
||||||
\ ],
|
\ ],
|
||||||
|
\ 'content': [
|
||||||
|
\ [],
|
||||||
|
\ extend(copy(global_attributes), {'select': []})
|
||||||
|
\ ],
|
||||||
\ 'command': [
|
\ 'command': [
|
||||||
\ ['col'],
|
\ ['col'],
|
||||||
\ extend(copy(global_attributes), {'type': ['command', 'radio', 'checkbox'], 'radiogroup': [], 'checked': ['checked', ''], 'label': [], 'icon': [], 'disabled': ['disabled', '']})
|
\ extend(copy(global_attributes), {'type': ['command', 'radio', 'checkbox'], 'radiogroup': [], 'checked': ['checked', ''], 'label': [], 'icon': [], 'disabled': ['disabled', '']})
|
||||||
@@ -539,7 +547,7 @@ let g:xmldata_html5 = {
|
|||||||
\ ],
|
\ ],
|
||||||
\ 'iframe': [
|
\ 'iframe': [
|
||||||
\ [],
|
\ [],
|
||||||
\ extend(copy(global_attributes), {'src': [], 'name': [], 'width': [], 'height': [], 'sandbox': ['allow-same-origin', 'allow-forms', 'allow-scripts'], 'seamless': ['seamless', '']})
|
\ extend(copy(global_attributes), {'src': [], 'srcdoc': [], 'name': [], 'width': [], 'height': [], 'sandbox': ['allow-same-origin', 'allow-forms', 'allow-scripts'], 'seamless': ['seamless', '']})
|
||||||
\ ],
|
\ ],
|
||||||
\ 'img': [
|
\ 'img': [
|
||||||
\ [],
|
\ [],
|
||||||
@@ -547,7 +555,7 @@ let g:xmldata_html5 = {
|
|||||||
\ ],
|
\ ],
|
||||||
\ 'input': [
|
\ 'input': [
|
||||||
\ [],
|
\ [],
|
||||||
\ extend(copy(global_attributes), {'type': ['text', 'password', 'checkbox', 'radio', 'button', 'submit', 'reset', 'file', 'hidden', 'image', 'datetime', 'datetime-local', 'date', 'month', 'time', 'week', 'number', 'range', 'email', 'url', 'search', 'tel', 'coloe'], 'name': [], 'disabled': ['disabled', ''], 'form': [], 'maxlength': [], 'readonly': ['readonly', ''], 'size': [], 'value': [], 'autocomplete': ['on', 'off'], 'autofocus': ['autofocus', ''], 'list': [], 'pattern': [], 'required': ['required', ''], 'placeholder': [], 'checked': ['checked'], 'accept': [], 'multiple': ['multiple', ''], 'alt': [], 'src': [], 'height': [], 'width': [], 'min': [], 'max': [], 'step': [], 'formenctype': ['application/x-www-form-urlencoded', 'multipart/form-data', 'text/plain'], 'formmethod': ['get', 'post', 'put', 'delete'], 'formtarget': [], 'formnovalidate': ['formnovalidate', '']})
|
\ extend(copy(global_attributes), {'type': ['text', 'password', 'checkbox', 'radio', 'button', 'submit', 'reset', 'file', 'hidden', 'image', 'datetime', 'datetime-local', 'date', 'month', 'time', 'week', 'number', 'range', 'email', 'url', 'search', 'tel', 'color'], 'name': [], 'disabled': ['disabled', ''], 'form': [], 'maxlength': [], 'readonly': ['readonly', ''], 'size': [], 'value': [], 'autocomplete': ['on', 'off'], 'autofocus': ['autofocus', ''], 'list': [], 'pattern': [], 'required': ['required', ''], 'placeholder': [], 'checked': ['checked'], 'accept': [], 'multiple': ['multiple', ''], 'alt': [], 'src': [], 'height': [], 'width': [], 'min': [], 'max': [], 'step': [], 'formenctype': ['application/x-www-form-urlencoded', 'multipart/form-data', 'text/plain'], 'formmethod': ['get', 'post', 'put', 'delete'], 'formtarget': [], 'formnovalidate': ['formnovalidate', '']})
|
||||||
\ ],
|
\ ],
|
||||||
\ 'ins': [
|
\ 'ins': [
|
||||||
\ flow_elements,
|
\ flow_elements,
|
||||||
@@ -595,7 +603,7 @@ let g:xmldata_html5 = {
|
|||||||
\ ],
|
\ ],
|
||||||
\ 'meta': [
|
\ 'meta': [
|
||||||
\ [],
|
\ [],
|
||||||
\ extend(copy(global_attributes), {'name': [], 'http-equiv': ['refresh', 'default-style', 'content-type'], 'content': [], 'charset': charset})
|
\ extend(copy(global_attributes), {'name': ['application-name', 'author', 'description', 'generator', 'referrer', 'creator', 'googlebot', 'publisher', 'robots', 'slurp', 'viewport', 'theme-color'], 'http-equiv': ['refresh', 'default-style', 'content-type'], 'content': [], 'charset': charset})
|
||||||
\ ],
|
\ ],
|
||||||
\ 'meter': [
|
\ 'meter': [
|
||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
@@ -637,6 +645,10 @@ let g:xmldata_html5 = {
|
|||||||
\ [],
|
\ [],
|
||||||
\ extend(copy(global_attributes), {'name': [], 'value': []})
|
\ extend(copy(global_attributes), {'name': [], 'value': []})
|
||||||
\ ],
|
\ ],
|
||||||
|
\ 'picture': [
|
||||||
|
\ flow_elements + ['source'],
|
||||||
|
\ global_attributes
|
||||||
|
\ ],
|
||||||
\ 'pre': [
|
\ 'pre': [
|
||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
\ global_attributes
|
\ global_attributes
|
||||||
@@ -649,6 +661,10 @@ let g:xmldata_html5 = {
|
|||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
\ extend(copy(global_attributes), {'cite': []})
|
\ extend(copy(global_attributes), {'cite': []})
|
||||||
\ ],
|
\ ],
|
||||||
|
\ 'rb': [
|
||||||
|
\ phrasing_elements,
|
||||||
|
\ global_attributes
|
||||||
|
\ ],
|
||||||
\ 'rp': [
|
\ 'rp': [
|
||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
\ global_attributes
|
\ global_attributes
|
||||||
@@ -657,10 +673,14 @@ let g:xmldata_html5 = {
|
|||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
\ global_attributes
|
\ global_attributes
|
||||||
\ ],
|
\ ],
|
||||||
\ 'ruby': [
|
\ 'rtc': [
|
||||||
\ phrasing_elements + ['rp', 'rt'],
|
\ phrasing_elements + ['rp', 'rt'],
|
||||||
\ global_attributes
|
\ global_attributes
|
||||||
\ ],
|
\ ],
|
||||||
|
\ 'ruby': [
|
||||||
|
\ phrasing_elements + ['rb', 'rp', 'rt', 'rtc'],
|
||||||
|
\ global_attributes
|
||||||
|
\ ],
|
||||||
\ 'samp': [
|
\ 'samp': [
|
||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
\ global_attributes
|
\ global_attributes
|
||||||
@@ -677,13 +697,17 @@ let g:xmldata_html5 = {
|
|||||||
\ ['optgroup', 'option'],
|
\ ['optgroup', 'option'],
|
||||||
\ extend(copy(global_attributes), {'name': [], 'disabled': ['disabled', ''], 'form': [], 'size': [], 'multiple': ['multiple', '']})
|
\ extend(copy(global_attributes), {'name': [], 'disabled': ['disabled', ''], 'form': [], 'size': [], 'multiple': ['multiple', '']})
|
||||||
\ ],
|
\ ],
|
||||||
|
\ 'shadow': [
|
||||||
|
\ [],
|
||||||
|
\ global_attributes
|
||||||
|
\ ],
|
||||||
\ 'small': [
|
\ 'small': [
|
||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
\ global_attributes
|
\ global_attributes
|
||||||
\ ],
|
\ ],
|
||||||
\ 'source': [
|
\ 'source': [
|
||||||
\ [],
|
\ [],
|
||||||
\ extend(copy(global_attributes), {'src': [], 'type': [], 'media': []})
|
\ extend(copy(global_attributes), {'src': [], 'type': [], 'media': [], 'srcset': [], 'sizes': []})
|
||||||
\ ],
|
\ ],
|
||||||
\ 'span': [
|
\ 'span': [
|
||||||
\ phrasing_elements,
|
\ phrasing_elements,
|
||||||
@@ -801,3 +825,5 @@ let g:xmldata_html5 = {
|
|||||||
\ 'wbr': ['/>', ''],
|
\ 'wbr': ['/>', ''],
|
||||||
\ },
|
\ },
|
||||||
\ }
|
\ }
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
128
build
128
build
@@ -1,17 +1,24 @@
|
|||||||
#!/bin/sh
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
set -E
|
set -E
|
||||||
|
|
||||||
DIRS="syntax indent compiler autoload ftplugin ftdetect after/syntax after/indent after/ftplugin after/ftdetect"
|
DIRS="syntax indent compiler autoload ftplugin ftdetect after/syntax after/indent after/ftplugin after/ftdetect"
|
||||||
|
DIRS_BASIC="syntax indent ftdetect after/syntax after/indent after/ftdetect"
|
||||||
|
DIRS_ALL="syntax indent compiler autoload ftplugin ftdetect after"
|
||||||
|
|
||||||
# Fetches syntax files from given Github repo
|
OUTPUT=""
|
||||||
|
|
||||||
|
output() {
|
||||||
|
OUTPUT="$OUTPUT$1"
|
||||||
|
printf -- "$1"
|
||||||
|
}
|
||||||
|
|
||||||
download() {
|
download() {
|
||||||
for pack in $1; do
|
for pack in $1; do
|
||||||
path="$(printf "$pack" | cut -d ':' -f 2)"
|
path="$(printf "$pack" | cut -d ':' -f 2)"
|
||||||
dir="tmp/$(printf "$path" | cut -d '/' -f 2)"
|
dir="tmp/$(printf "$path" | cut -d '/' -f 2)"
|
||||||
rm -rf "$dir"
|
rm -rf "$dir"
|
||||||
(git clone -q --recursive "https://github.com/$path.git" "$dir" && printf '.') &
|
(mkdir -p "$dir" && curl --silent -L https://codeload.github.com/$path/tar.gz/master | tar -zx -C "$dir" --strip 1 && printf '.') &
|
||||||
done
|
done
|
||||||
|
|
||||||
wait
|
wait
|
||||||
@@ -23,22 +30,35 @@ extract() {
|
|||||||
name="$(printf "$pack" | cut -d ':' -f 1)"
|
name="$(printf "$pack" | cut -d ':' -f 1)"
|
||||||
path="$(printf "$pack" | cut -d ':' -f 2)"
|
path="$(printf "$pack" | cut -d ':' -f 2)"
|
||||||
dir="tmp/$(printf "$path" | cut -d '/' -f 2)"
|
dir="tmp/$(printf "$path" | cut -d '/' -f 2)"
|
||||||
printf -- "- [$name](https://github.com/$path) ("
|
directories="DIRS$(printf "$pack" | cut -d ':' -f 3)"
|
||||||
|
subtree="$(printf "$pack" | cut -d ':' -f 4)"
|
||||||
|
output "- [$name](https://github.com/$path) ("
|
||||||
|
|
||||||
# which tree > /dev/null && tree tmp
|
|
||||||
subdirs=""
|
subdirs=""
|
||||||
for subdir in $DIRS; do
|
for subdir in ${!directories}; do
|
||||||
if [ -d "$dir/$subdir" ]; then
|
if [ -d "${dir}${subtree:-/}${subdir}" ]; then
|
||||||
base="$(basename "$subdir")"
|
base="$(basename "$subdir")"
|
||||||
if [[ "$subdirs" != *"$base"* ]]; then
|
if [[ "$subdirs" != *"$base"* ]]; then
|
||||||
subdirs="$subdirs, $base"
|
subdirs="$subdirs, $base"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
copy_dir "$dir" "$subdir"
|
copy_dir "${dir}${subtree}" "$subdir" "$name"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
printf "${subdirs##, })\n"
|
|
||||||
|
output "${subdirs##, })\n"
|
||||||
|
done
|
||||||
|
|
||||||
|
for pack in $1; do
|
||||||
|
name="$(printf "$pack" | cut -d ':' -f 1)"
|
||||||
|
path="$(printf "$pack" | cut -d ':' -f 2)"
|
||||||
|
dir="tmp/$(printf "$path" | cut -d '/' -f 2)"
|
||||||
|
subtree="$(printf "$pack" | cut -d ':' -f 4)"
|
||||||
|
|
||||||
|
if [ -d "$dir${subtree:-/}plugin" ]; then
|
||||||
|
printf "Possible error (plugin directory exists): $path\n"
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -46,62 +66,116 @@ copy_dir() {
|
|||||||
for file in $(find "$1/$2" -name '*.vim'); do
|
for file in $(find "$1/$2" -name '*.vim'); do
|
||||||
file_path="$(dirname "${file##$1/}")"
|
file_path="$(dirname "${file##$1/}")"
|
||||||
mkdir -p "$file_path"
|
mkdir -p "$file_path"
|
||||||
cp $file $file_path/
|
touch "$file_path/$(basename "$file")"
|
||||||
|
|
||||||
|
# Use comma instead of / to handle cases like c/c++
|
||||||
|
sed -e "s,%%PACK%%,$3," -e "/%%CONTENT%%/{r $file" -e "d;}" plugin_guard.vim.template >> $file_path/$(basename "$file")
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
rm -rf tmp
|
concat_ftdetect() {
|
||||||
rm -rf $DIRS
|
cat ftdetect/* | grep -E '^[^"]' > tmp/polyglot.vim
|
||||||
mkdir -p tmp
|
rm -f ftdetect/*
|
||||||
|
mv tmp/polyglot.vim ftdetect/
|
||||||
|
}
|
||||||
|
|
||||||
|
update_readme() {
|
||||||
|
OLD_README="$(cat README.md)"
|
||||||
|
|
||||||
|
ed README.md <<- EOF
|
||||||
|
/Language packs
|
||||||
|
+2kb
|
||||||
|
/##
|
||||||
|
'b,-2c
|
||||||
|
$(printf -- "$OUTPUT")
|
||||||
|
.
|
||||||
|
w
|
||||||
|
q
|
||||||
|
EOF
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
PACKS="
|
PACKS="
|
||||||
arduino:sudar/vim-arduino-syntax
|
arduino:sudar/vim-arduino-syntax
|
||||||
bundler:tpope/vim-bundler
|
blade:xsbeats/vim-blade
|
||||||
c++11:octol/vim-cpp-enhanced-highlight
|
c++11:octol/vim-cpp-enhanced-highlight
|
||||||
c/c++:vim-jp/cpp-vim
|
c/c++:vim-jp/cpp-vim
|
||||||
clojure:guns/vim-clojure-static
|
clojure:guns/vim-clojure-static
|
||||||
coffee-script:kchmck/vim-coffee-script
|
coffee-script:kchmck/vim-coffee-script
|
||||||
css-color:ap/vim-css-color
|
cjsx:mtscout6/vim-cjsx
|
||||||
csv:chrisbra/csv.vim
|
css:JulesWang/css.vim
|
||||||
cucumber:tpope/vim-cucumber
|
cucumber:tpope/vim-cucumber
|
||||||
|
dockerfile:honza/dockerfile.vim
|
||||||
elixir:elixir-lang/vim-elixir
|
elixir:elixir-lang/vim-elixir
|
||||||
erlang:jimenezrick/vimerl
|
emberscript:heartsentwined/vim-ember-script
|
||||||
|
emblem:heartsentwined/vim-emblem
|
||||||
|
erlang:vim-erlang/vim-erlang-runtime
|
||||||
git:tpope/vim-git
|
git:tpope/vim-git
|
||||||
go:jnwhiteh/vim-golang
|
glsl:tikhomirov/vim-glsl
|
||||||
|
go:fatih/vim-go:_BASIC
|
||||||
|
groovy:vim-scripts/groovy.vim
|
||||||
haml:tpope/vim-haml
|
haml:tpope/vim-haml
|
||||||
handlebars:nono/vim-handlebars
|
handlebars:mustache/vim-mustache-handlebars
|
||||||
haskell:travitch/hasksyn
|
haskell:neovimhaskell/haskell-vim
|
||||||
|
haxe:yaymukund/vim-haxe
|
||||||
html5:othree/html5.vim
|
html5:othree/html5.vim
|
||||||
jade:digitaltoad/vim-jade
|
jade:digitaltoad/vim-jade
|
||||||
javascript:pangloss/vim-javascript
|
jasmine:glanotte/vim-jasmine
|
||||||
json:leshill/vim-json
|
javascript:sheerun/yajs.vim
|
||||||
|
julia:dcjones/julia-minimalist-vim
|
||||||
|
json:sheerun/vim-json
|
||||||
jst:briancollins/vim-jst
|
jst:briancollins/vim-jst
|
||||||
latex:jcf/vim-latex
|
jsx:mxw/vim-jsx:_ALL
|
||||||
|
kotlin:udalov/kotlin-vim
|
||||||
|
latex:LaTeX-Box-Team/LaTeX-Box
|
||||||
less:groenewege/vim-less
|
less:groenewege/vim-less
|
||||||
|
liquid:tpope/vim-liquid
|
||||||
markdown:tpope/vim-markdown
|
markdown:tpope/vim-markdown
|
||||||
nginx:mutewinter/nginx.vim
|
nginx:mutewinter/nginx.vim
|
||||||
ocaml:jrk/vim-ocaml
|
ocaml:jrk/vim-ocaml
|
||||||
octave:vim-scripts/octave.vim--
|
octave:vim-scripts/octave.vim--
|
||||||
|
opencl:petRUShka/vim-opencl
|
||||||
|
perl:vim-perl/vim-perl
|
||||||
php:StanAngeloff/php.vim
|
php:StanAngeloff/php.vim
|
||||||
puppet:ajf/puppet-vim
|
puppet:rodjek/vim-puppet
|
||||||
|
powershell:Persistent13/vim-ps1
|
||||||
protobuf:uarun/vim-protobuf
|
protobuf:uarun/vim-protobuf
|
||||||
python:vim-scripts/python.vim--Vasiliev
|
python:mitsuhiko/vim-python-combined
|
||||||
rspec:skwp/vim-rspec
|
qml:peterhoeg/vim-qml
|
||||||
|
r-lang:vim-scripts/R.vim
|
||||||
|
ragel:jneen/ragel.vim
|
||||||
|
rspec:sheerun/rspec.vim
|
||||||
ruby:vim-ruby/vim-ruby
|
ruby:vim-ruby/vim-ruby
|
||||||
|
rust:wting/rust.vim
|
||||||
sbt:derekwyatt/vim-sbt
|
sbt:derekwyatt/vim-sbt
|
||||||
scala:derekwyatt/vim-scala
|
scala:derekwyatt/vim-scala
|
||||||
slim:slim-template/vim-slim
|
slim:slim-template/vim-slim
|
||||||
|
solidity:ethereum/vim-solidity
|
||||||
stylus:wavded/vim-stylus
|
stylus:wavded/vim-stylus
|
||||||
|
systemd:kurayama/systemd-vim-syntax
|
||||||
|
swift:toyamarinyon/vim-swift
|
||||||
textile:timcharper/textile.vim
|
textile:timcharper/textile.vim
|
||||||
tmux:acustodioo/vim-tmux
|
tmux:tejr/vim-tmux
|
||||||
tomdoc:duwanis/tomdoc.vim
|
tomdoc:duwanis/tomdoc.vim
|
||||||
|
typescript:leafgarland/typescript-vim
|
||||||
vbnet:vim-scripts/vbnet.vim
|
vbnet:vim-scripts/vbnet.vim
|
||||||
|
thrift:solarnz/thrift.vim
|
||||||
|
toml:cespare/vim-toml
|
||||||
twig:beyondwords/vim-twig
|
twig:beyondwords/vim-twig
|
||||||
xls:vim-scripts/XSLT-syntax
|
xls:vim-scripts/XSLT-syntax
|
||||||
|
yard:sheerun/vim-yardoc
|
||||||
|
vala:tkztmk/vim-vala
|
||||||
|
vm:lepture/vim-velocity
|
||||||
"
|
"
|
||||||
|
|
||||||
|
rm -rf tmp
|
||||||
|
rm -rf $DIRS_ALL
|
||||||
|
mkdir tmp
|
||||||
|
|
||||||
printf "Downloading packs..."
|
printf "Downloading packs..."
|
||||||
download "$PACKS"
|
download "$PACKS"
|
||||||
extract "$PACKS"
|
extract "$PACKS"
|
||||||
|
concat_ftdetect
|
||||||
|
update_readme
|
||||||
|
|
||||||
rm -rf tmp
|
rm -rf tmp
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
" Vim compiler file
|
|
||||||
|
|
||||||
if exists("current_compiler")
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
let current_compiler = "bundler"
|
|
||||||
|
|
||||||
let s:cpo_save = &cpo
|
|
||||||
set cpo-=C
|
|
||||||
|
|
||||||
CompilerSet makeprg=bundle
|
|
||||||
|
|
||||||
CompilerSet errorformat=
|
|
||||||
\%+E%f:%l:\ parse\ error,
|
|
||||||
\%W%f:%l:\ warning:\ %m,
|
|
||||||
\%E%f:%l:in\ %*[^:]:\ %m,
|
|
||||||
\%E%f:%l:\ %m,
|
|
||||||
\%-C%\tfrom\ %f:%l:in\ %.%#,
|
|
||||||
\%-Z%\tfrom\ %f:%l,
|
|
||||||
\%-Z%p^,
|
|
||||||
\%-G%.%#
|
|
||||||
|
|
||||||
let &cpo = s:cpo_save
|
|
||||||
unlet s:cpo_save
|
|
||||||
|
|
||||||
" vim: sw=2:
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
" Maintainer: Mick Koch <mick@kochm.co>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
" License: WTFPL
|
" License: WTFPL
|
||||||
|
|
||||||
@@ -13,3 +15,5 @@ call coffee#CoffeeSetUpVariables()
|
|||||||
exec 'CompilerSet makeprg=' . escape(g:coffee_cake . ' ' .
|
exec 'CompilerSet makeprg=' . escape(g:coffee_cake . ' ' .
|
||||||
\ g:coffee_cake_options . ' $*', ' ')
|
\ g:coffee_cake_options . ' $*', ' ')
|
||||||
call coffee#CoffeeSetUpErrorFormat()
|
call coffee#CoffeeSetUpErrorFormat()
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
69
compiler/cargo.vim
Normal file
69
compiler/cargo.vim
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
|
||||||
|
|
||||||
|
" Vim compiler file
|
||||||
|
" Compiler: Cargo Compiler
|
||||||
|
" Maintainer: Damien Radtke <damienradtke@gmail.com>
|
||||||
|
" Latest Revision: 2014 Sep 24
|
||||||
|
|
||||||
|
if exists('current_compiler')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
runtime compiler/rustc.vim
|
||||||
|
let current_compiler = "cargo"
|
||||||
|
|
||||||
|
if exists(':CompilerSet') != 2
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists('g:cargo_makeprg_params')
|
||||||
|
execute 'CompilerSet makeprg=cargo\ '.escape(g:cargo_makeprg_params, ' \|"').'\ $*'
|
||||||
|
else
|
||||||
|
CompilerSet makeprg=cargo\ $*
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Allow a configurable global Cargo.toml name. This makes it easy to
|
||||||
|
" support variations like 'cargo.toml'.
|
||||||
|
let s:cargo_manifest_name = get(g:, 'cargo_manifest_name', 'Cargo.toml')
|
||||||
|
|
||||||
|
function! s:is_absolute(path)
|
||||||
|
return a:path[0] == '/' || a:path =~ '[A-Z]\+:'
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
let s:local_manifest = findfile(s:cargo_manifest_name, '.;')
|
||||||
|
if s:local_manifest != ''
|
||||||
|
let s:local_manifest = fnamemodify(s:local_manifest, ':p:h').'/'
|
||||||
|
augroup cargo
|
||||||
|
au!
|
||||||
|
au QuickfixCmdPost make call s:FixPaths()
|
||||||
|
augroup END
|
||||||
|
|
||||||
|
" FixPaths() is run after Cargo, and is used to change the file paths
|
||||||
|
" to be relative to the current directory instead of Cargo.toml.
|
||||||
|
function! s:FixPaths()
|
||||||
|
let qflist = getqflist()
|
||||||
|
let manifest = s:local_manifest
|
||||||
|
for qf in qflist
|
||||||
|
if !qf.valid
|
||||||
|
let m = matchlist(qf.text, '(file://\(.*\))$')
|
||||||
|
if !empty(m)
|
||||||
|
let manifest = m[1].'/'
|
||||||
|
" Manually strip another slash if needed; usually just an
|
||||||
|
" issue on Windows.
|
||||||
|
if manifest =~ '^/[A-Z]\+:/'
|
||||||
|
let manifest = manifest[1:]
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
continue
|
||||||
|
endif
|
||||||
|
let filename = bufname(qf.bufnr)
|
||||||
|
if s:is_absolute(filename)
|
||||||
|
continue
|
||||||
|
endif
|
||||||
|
let qf.filename = simplify(manifest.filename)
|
||||||
|
call remove(qf, 'bufnr')
|
||||||
|
endfor
|
||||||
|
call setqflist(qflist, 'r')
|
||||||
|
endfunction
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
" Maintainer: Mick Koch <mick@kochm.co>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
" License: WTFPL
|
" License: WTFPL
|
||||||
|
|
||||||
@@ -27,8 +29,8 @@ function! s:GetMakePrg()
|
|||||||
\ ' -c' .
|
\ ' -c' .
|
||||||
\ ' ' . b:coffee_litcoffee .
|
\ ' ' . b:coffee_litcoffee .
|
||||||
\ ' ' . g:coffee_make_options .
|
\ ' ' . g:coffee_make_options .
|
||||||
\ ' ' . fnameescape(expand('%')) .
|
\ ' $*' .
|
||||||
\ ' $*'
|
\ ' ' . fnameescape(expand('%'))
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" Set `makeprg` and return 1 if coffee is still the compiler, else return 0.
|
" Set `makeprg` and return 1 if coffee is still the compiler, else return 0.
|
||||||
@@ -75,8 +77,10 @@ augroup CoffeeUpdateMakePrg
|
|||||||
|
|
||||||
" Set autocmd locally if compiler was set locally.
|
" Set autocmd locally if compiler was set locally.
|
||||||
if &l:makeprg =~ s:pat
|
if &l:makeprg =~ s:pat
|
||||||
autocmd BufFilePost,BufWritePost <buffer> call s:UpdateMakePrg()
|
autocmd BufWritePre,BufFilePost <buffer> call s:UpdateMakePrg()
|
||||||
else
|
else
|
||||||
autocmd BufFilePost,BufWritePost call s:UpdateMakePrg()
|
autocmd BufWritePre,BufFilePost call s:UpdateMakePrg()
|
||||||
endif
|
endif
|
||||||
augroup END
|
augroup END
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cucumber') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: Cucumber
|
" Compiler: Cucumber
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -19,7 +21,7 @@ CompilerSet makeprg=cucumber
|
|||||||
|
|
||||||
CompilerSet errorformat=
|
CompilerSet errorformat=
|
||||||
\%W%m\ (Cucumber::Undefined),
|
\%W%m\ (Cucumber::Undefined),
|
||||||
\%E%m\ (%.%#),
|
\%E%m\ (%\\S%#),
|
||||||
\%Z%f:%l,
|
\%Z%f:%l,
|
||||||
\%Z%f:%l:%.%#
|
\%Z%f:%l:%.%#
|
||||||
|
|
||||||
@@ -27,3 +29,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim:set sw=2 sts=2:
|
" vim:set sw=2 sts=2:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,111 +0,0 @@
|
|||||||
" Vim compiler file
|
|
||||||
" Language: Erlang
|
|
||||||
" Author: Pawel 'kTT' Salata <rockplayer.pl@gmail.com>
|
|
||||||
" Contributors: Ricardo Catalinas Jiménez <jimenezrick@gmail.com>
|
|
||||||
" License: Vim license
|
|
||||||
" Version: 2013/03/06
|
|
||||||
|
|
||||||
if exists("current_compiler") || v:version < 703
|
|
||||||
finish
|
|
||||||
else
|
|
||||||
let current_compiler = "erlang"
|
|
||||||
endif
|
|
||||||
|
|
||||||
let b:error_list = {}
|
|
||||||
let b:is_showing_msg = 0
|
|
||||||
let b:next_sign_id = 1
|
|
||||||
|
|
||||||
if exists(":CompilerSet") != 2
|
|
||||||
command -nargs=* CompilerSet setlocal <args>
|
|
||||||
endif
|
|
||||||
|
|
||||||
CompilerSet makeprg=make
|
|
||||||
CompilerSet errorformat=%f:%l:\ %tarning:\ %m,%f:%l:\ %m
|
|
||||||
|
|
||||||
" Only define functions and script scope variables once
|
|
||||||
if exists("*s:ShowErrors")
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
|
|
||||||
if !exists("g:erlang_show_errors")
|
|
||||||
let g:erlang_show_errors = 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
let s:erlang_check_file = expand("<sfile>:p:h") . "/erlang_check.erl"
|
|
||||||
let s:autocmds_defined = 0
|
|
||||||
|
|
||||||
sign define ErlangError text=>> texthl=Error
|
|
||||||
sign define ErlangWarning text=>> texthl=Todo
|
|
||||||
|
|
||||||
command ErlangDisableShowErrors silent call s:DisableShowErrors()
|
|
||||||
command ErlangEnableShowErrors silent call s:EnableShowErrors()
|
|
||||||
|
|
||||||
function s:ShowErrors()
|
|
||||||
setlocal shellpipe=>
|
|
||||||
if match(getline(1), "#!.*escript") != -1
|
|
||||||
setlocal makeprg=escript\ -s\ %
|
|
||||||
else
|
|
||||||
execute "setlocal makeprg=" . s:erlang_check_file . "\\ \%"
|
|
||||||
endif
|
|
||||||
silent make!
|
|
||||||
for error in getqflist()
|
|
||||||
let item = {}
|
|
||||||
let item["lnum"] = error.lnum
|
|
||||||
let item["text"] = error.text
|
|
||||||
let b:error_list[error.lnum] = item
|
|
||||||
let type = error.type == "W" ? "ErlangWarning" : "ErlangError"
|
|
||||||
execute "sign place" b:next_sign_id "line=" . item.lnum "name=" . type "file=" . expand("%:p")
|
|
||||||
let b:next_sign_id += 1
|
|
||||||
endfor
|
|
||||||
setlocal shellpipe&
|
|
||||||
setlocal makeprg=make
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function s:ShowErrorMsg()
|
|
||||||
let pos = getpos(".")
|
|
||||||
if has_key(b:error_list, pos[1])
|
|
||||||
let item = get(b:error_list, pos[1])
|
|
||||||
echo item.text
|
|
||||||
let b:is_showing_msg = 1
|
|
||||||
else
|
|
||||||
if b:is_showing_msg
|
|
||||||
echo
|
|
||||||
let b:is_showing_msg = 0
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endf
|
|
||||||
|
|
||||||
function s:ClearErrors()
|
|
||||||
sign unplace *
|
|
||||||
let b:error_list = {}
|
|
||||||
let b:next_sign_id = 1
|
|
||||||
if b:is_showing_msg
|
|
||||||
echo
|
|
||||||
let b:is_showing_msg = 0
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function s:EnableShowErrors()
|
|
||||||
if !s:autocmds_defined
|
|
||||||
augroup vimerl
|
|
||||||
autocmd!
|
|
||||||
autocmd BufWritePre *.erl call s:ClearErrors()
|
|
||||||
autocmd BufWritePost *.erl call s:ShowErrors()
|
|
||||||
autocmd CursorHold *.erl call s:ShowErrorMsg()
|
|
||||||
autocmd CursorMoved *.erl call s:ShowErrorMsg()
|
|
||||||
augroup END
|
|
||||||
let s:autocmds_defined = 1
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function s:DisableShowErrors()
|
|
||||||
sign unplace *
|
|
||||||
augroup vimerl
|
|
||||||
autocmd!
|
|
||||||
augroup END
|
|
||||||
let s:autocmds_defined = 0
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
if g:erlang_show_errors
|
|
||||||
call s:EnableShowErrors()
|
|
||||||
endif
|
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Language: eRuby
|
" Language: eRuby
|
||||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
@@ -37,3 +39,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elixir') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Language: ExUnit
|
" Language: ExUnit
|
||||||
" Maintainer: Rein Henrichs <rein.henrichs@gmail.com>
|
" Maintainer: Rein Henrichs <rein.henrichs@gmail.com>
|
||||||
@@ -22,3 +24,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haml') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: Haml
|
" Compiler: Haml
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -15,7 +17,7 @@ endif
|
|||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo-=C
|
set cpo-=C
|
||||||
|
|
||||||
CompilerSet makeprg=haml\ -c
|
CompilerSet makeprg=haml
|
||||||
|
|
||||||
CompilerSet errorformat=
|
CompilerSet errorformat=
|
||||||
\Haml\ %trror\ on\ line\ %l:\ %m,
|
\Haml\ %trror\ on\ line\ %l:\ %m,
|
||||||
@@ -26,3 +28,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim:set sw=2 sts=2:
|
" vim:set sw=2 sts=2:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Language: Rake
|
" Language: Rake
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -27,9 +29,15 @@ CompilerSet errorformat=
|
|||||||
\%\\s%#[%f:%l:\ %#%m,
|
\%\\s%#[%f:%l:\ %#%m,
|
||||||
\%\\s%#%f:%l:\ %#%m,
|
\%\\s%#%f:%l:\ %#%m,
|
||||||
\%\\s%#%f:%l:,
|
\%\\s%#%f:%l:,
|
||||||
\%m\ [%f:%l]:
|
\%m\ [%f:%l]:,
|
||||||
|
\%+Erake\ aborted!,
|
||||||
|
\%+EDon't\ know\ how\ to\ build\ task\ %.%#,
|
||||||
|
\%+Einvalid\ option:%.%#,
|
||||||
|
\%+Irake\ %\\S%\\+%\\s%\\+#\ %.%#
|
||||||
|
|
||||||
let &cpo = s:cpo_save
|
let &cpo = s:cpo_save
|
||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Language: RSpec
|
" Language: RSpec
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -31,3 +33,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Language: Ruby
|
" Language: Ruby
|
||||||
" Function: Syntax check and/or error reporting
|
" Function: Syntax check and/or error reporting
|
||||||
@@ -43,3 +45,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Language: Test::Unit - Ruby Unit Testing Framework
|
" Language: Test::Unit - Ruby Unit Testing Framework
|
||||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||||
@@ -17,6 +19,8 @@ let s:cpo_save = &cpo
|
|||||||
set cpo-=C
|
set cpo-=C
|
||||||
|
|
||||||
CompilerSet makeprg=testrb
|
CompilerSet makeprg=testrb
|
||||||
|
" CompilerSet makeprg=ruby\ -Itest
|
||||||
|
" CompilerSet makeprg=m
|
||||||
|
|
||||||
CompilerSet errorformat=\%W\ %\\+%\\d%\\+)\ Failure:,
|
CompilerSet errorformat=\%W\ %\\+%\\d%\\+)\ Failure:,
|
||||||
\%C%m\ [%f:%l]:,
|
\%C%m\ [%f:%l]:,
|
||||||
@@ -31,3 +35,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
37
compiler/rustc.vim
Normal file
37
compiler/rustc.vim
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
|
||||||
|
|
||||||
|
" Vim compiler file
|
||||||
|
" Compiler: Rust Compiler
|
||||||
|
" Maintainer: Chris Morgan <me@chrismorgan.info>
|
||||||
|
" Latest Revision: 2013 Jul 12
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "rustc"
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
if exists(":CompilerSet") != 2
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists("g:rustc_makeprg_no_percent") && g:rustc_makeprg_no_percent == 1
|
||||||
|
CompilerSet makeprg=rustc
|
||||||
|
else
|
||||||
|
CompilerSet makeprg=rustc\ \%
|
||||||
|
endif
|
||||||
|
|
||||||
|
CompilerSet errorformat=
|
||||||
|
\%f:%l:%c:\ %t%*[^:]:\ %m,
|
||||||
|
\%f:%l:%c:\ %*\\d:%*\\d\ %t%*[^:]:\ %m,
|
||||||
|
\%-G%f:%l\ %s,
|
||||||
|
\%-G%*[\ ]^,
|
||||||
|
\%-G%*[\ ]^%*[~],
|
||||||
|
\%-G%*[\ ]...
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haml') == -1
|
||||||
|
|
||||||
" Vim compiler file
|
" Vim compiler file
|
||||||
" Compiler: Sass
|
" Compiler: Sass
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -15,7 +17,7 @@ endif
|
|||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo-=C
|
set cpo-=C
|
||||||
|
|
||||||
CompilerSet makeprg=sass\ -c
|
CompilerSet makeprg=sass
|
||||||
|
|
||||||
CompilerSet errorformat=
|
CompilerSet errorformat=
|
||||||
\%f:%l:%m\ (Sass::Syntax%trror),
|
\%f:%l:%m\ (Sass::Syntax%trror),
|
||||||
@@ -28,3 +30,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet s:cpo_save
|
unlet s:cpo_save
|
||||||
|
|
||||||
" vim:set sw=2 sts=2:
|
" vim:set sw=2 sts=2:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
34
compiler/sbt.vim
Normal file
34
compiler/sbt.vim
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'scala') == -1
|
||||||
|
|
||||||
|
" Vim compiler file
|
||||||
|
" Language: Scala SBT (http://www.scala-sbt.org/)
|
||||||
|
" Maintainer: Derek Wyatt
|
||||||
|
" URL: https://github.com/derekwyatt/vim-scala
|
||||||
|
" License: Apache 2
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
if exists('current_compiler')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = 'sbt'
|
||||||
|
|
||||||
|
if exists(':CompilerSet') != 2 " older Vim always used :setlocal
|
||||||
|
command -nargs=* CompilerSet setlocal <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo-=C
|
||||||
|
|
||||||
|
CompilerSet makeprg=sbt\ -Dsbt.log.noformat=true\ compile
|
||||||
|
|
||||||
|
CompilerSet errorformat=
|
||||||
|
\%E\ %#[error]\ %f:%l:\ %m,%C\ %#[error]\ %p^,%-C%.%#,%Z,
|
||||||
|
\%W\ %#[warn]\ %f:%l:\ %m,%C\ %#[warn]\ %p^,%-C%.%#,%Z,
|
||||||
|
\%-G%.%#
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
|
" vim:set sw=2 sts=2 ts=8 et:
|
||||||
|
|
||||||
|
endif
|
||||||
298
compiler/tex.vim
298
compiler/tex.vim
@@ -1,298 +0,0 @@
|
|||||||
" File: tex.vim
|
|
||||||
" Type: compiler plugin for LaTeX
|
|
||||||
" Original Author: Artem Chuprina <ran@ran.pp.ru>
|
|
||||||
" Customization: Srinath Avadhanula <srinath@fastmail.fm>
|
|
||||||
" Description: {{{
|
|
||||||
" This file sets the 'makeprg' and 'errorformat' options for the LaTeX
|
|
||||||
" compiler. It is customizable to optionally ignore certain warnings and
|
|
||||||
" provides the ability to set a dynamic 'ignore-warning' level.
|
|
||||||
"
|
|
||||||
" By default it is set up in a 'non-verbose', 'ignore-common-warnings' mode,
|
|
||||||
" which means that irrelevant lines from the compilers output will be
|
|
||||||
" ignored and also some very common warnings are ignored.
|
|
||||||
"
|
|
||||||
" Depending on the 'ignore-level', the following kinds of messages are
|
|
||||||
" ignored. An ignore level of 3 for instance means that messages 1-3 will be
|
|
||||||
" ignored. By default, the ignore level is set to 4.
|
|
||||||
"
|
|
||||||
" 1. LaTeX Warning: Specifier 'h' changed to 't'.
|
|
||||||
" This errors occurs when TeX is not able to correctly place a floating
|
|
||||||
" object at a specified location, because of which it defaulted to the
|
|
||||||
" top of the page.
|
|
||||||
" 2. LaTeX Warning: Underfull box ...
|
|
||||||
" 3. LaTeX Warning: Overfull box ...
|
|
||||||
" both these warnings (very common) are due to \hbox settings not being
|
|
||||||
" satisfied nicely.
|
|
||||||
" 4. LaTeX Warning: You have requested ...,
|
|
||||||
" This warning occurs in slitex when using the xypic package.
|
|
||||||
" 5. Missing number error:
|
|
||||||
" Usually, when the name of an included eps file is spelled incorrectly,
|
|
||||||
" then the \bb-error message is accompanied by a bunch of "missing
|
|
||||||
" number, treated as zero" error messages. This level ignores these
|
|
||||||
" warnings.
|
|
||||||
" NOTE: number 5 is actually a latex error, not a warning!
|
|
||||||
"
|
|
||||||
" Use
|
|
||||||
" TCLevel <level>
|
|
||||||
" where level is a number to set the ignore level dynamically.
|
|
||||||
"
|
|
||||||
" When TCLevel is called with the unquoted string strict
|
|
||||||
" TClevel strict
|
|
||||||
" then the 'efm' switches to a 'verbose', 'no-lines-ignored' mode which is
|
|
||||||
" useful when you want to make final checks of your document and want to be
|
|
||||||
" careful not to let things slip by.
|
|
||||||
"
|
|
||||||
" TIP: MikTeX has a bug where it sometimes erroneously splits a line number
|
|
||||||
" into multiple lines. i.e, if the warning is on line 1234. the compiler
|
|
||||||
" output is:
|
|
||||||
" LaTeX Warning: ... on input line 123
|
|
||||||
" 4.
|
|
||||||
" In this case, vim will wrongly interpret the line-number as 123 instead
|
|
||||||
" of 1234. If you have cygwin, a simple remedy around this is to first
|
|
||||||
" copy the file vimlatex (provided) into your $PATH, make sure its
|
|
||||||
" executable and then set the variable g:tex_flavor to vimlatex in your
|
|
||||||
" ~/.vimrc (i.e putting let "g:tex_flavor = 'vimlatex'" in your .vimrc).
|
|
||||||
" This problem occurs rarely enough that its not a botheration for most
|
|
||||||
" people.
|
|
||||||
"
|
|
||||||
" TODO:
|
|
||||||
" 1. menu items for dynamically selecting a ignore warning level.
|
|
||||||
" }}}
|
|
||||||
|
|
||||||
" avoid reinclusion for the same buffer. keep it buffer local so it can be
|
|
||||||
" externally reset in case of emergency re-sourcing.
|
|
||||||
if exists('b:doneTexCompiler') && !exists('b:forceRedoTexCompiler')
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
let b:doneTexCompiler = 1
|
|
||||||
|
|
||||||
" ==============================================================================
|
|
||||||
" Customization of 'efm': {{{
|
|
||||||
" This section contains the customization variables which the user can set.
|
|
||||||
" g:Tex_IgnoredWarnings: This variable contains a ¡ seperated list of
|
|
||||||
" patterns which will be ignored in the TeX compiler's output. Use this
|
|
||||||
" carefully, otherwise you might end up losing valuable information.
|
|
||||||
if !exists('g:Tex_IgnoredWarnings')
|
|
||||||
let g:Tex_IgnoredWarnings =
|
|
||||||
\'Underfull'."\n".
|
|
||||||
\'Overfull'."\n".
|
|
||||||
\'specifier changed to'."\n".
|
|
||||||
\'You have requested'."\n".
|
|
||||||
\'Missing number, treated as zero.'."\n".
|
|
||||||
\'There were undefined references'."\n".
|
|
||||||
\'Citation %.%# undefined'
|
|
||||||
endif
|
|
||||||
" This is the number of warnings in the g:Tex_IgnoredWarnings string which
|
|
||||||
" will be ignored.
|
|
||||||
if !exists('g:Tex_IgnoreLevel')
|
|
||||||
let g:Tex_IgnoreLevel = 7
|
|
||||||
endif
|
|
||||||
" There will be lots of stuff in a typical compiler output which will
|
|
||||||
" completely fall through the 'efm' parsing. This options sets whether or not
|
|
||||||
" you will be shown those lines.
|
|
||||||
if !exists('g:Tex_IgnoreUnmatched')
|
|
||||||
let g:Tex_IgnoreUnmatched = 1
|
|
||||||
endif
|
|
||||||
" With all this customization, there is a slight risk that you might be
|
|
||||||
" ignoring valid warnings or errors. Therefore before getting the final copy
|
|
||||||
" of your work, you might want to reset the 'efm' with this variable set to 1.
|
|
||||||
" With that value, all the lines from the compiler are shown irrespective of
|
|
||||||
" whether they match the error or warning patterns.
|
|
||||||
" NOTE: An easier way of resetting the 'efm' to show everything is to do
|
|
||||||
" TCLevel strict
|
|
||||||
if !exists('g:Tex_ShowallLines')
|
|
||||||
let g:Tex_ShowallLines = 0
|
|
||||||
endif
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
" ==============================================================================
|
|
||||||
" Customization of 'makeprg': {{{
|
|
||||||
|
|
||||||
" There are several alternate ways in which 'makeprg' is set up.
|
|
||||||
"
|
|
||||||
" Case 1
|
|
||||||
" ------
|
|
||||||
" The first is when this file is a part of latex-suite. In this case, a
|
|
||||||
" variable called g:Tex_DefaultTargetFormat exists, which gives the default
|
|
||||||
" format .tex files should be compiled into. In this case, we use the TTarget
|
|
||||||
" command provided by latex-suite.
|
|
||||||
"
|
|
||||||
" Case 2
|
|
||||||
" ------
|
|
||||||
" The user is using this file without latex-suite AND he wants to directly
|
|
||||||
" specify the complete 'makeprg'. Then he should set the g:Tex_CompileRule_dvi
|
|
||||||
" variable. This is a string which should be directly be able to be cast into
|
|
||||||
" &makeprg. An example of one such string is:
|
|
||||||
"
|
|
||||||
" g:Tex_CompileRule_dvi = 'pdflatex \\nonstopmode \\input\{$*\}'
|
|
||||||
"
|
|
||||||
" NOTE: You will need to escape back-slashes, {'s etc yourself if you are
|
|
||||||
" using this file independently of latex-suite.
|
|
||||||
" TODO: Should we also have a check for backslash escaping here based on
|
|
||||||
" platform?
|
|
||||||
"
|
|
||||||
" Case 3
|
|
||||||
" ------
|
|
||||||
" The use is using this file without latex-suite and he doesnt want any
|
|
||||||
" customization. In this case, this file makes some intelligent guesses based
|
|
||||||
" on the platform. If he doesn't want to specify the complete 'makeprg' but
|
|
||||||
" only the name of the compiler program (for example 'pdflatex' or 'latex'),
|
|
||||||
" then he sets b:tex_flavor or g:tex_flavor.
|
|
||||||
|
|
||||||
if exists('g:Tex_DefaultTargetFormat')
|
|
||||||
exec 'TTarget '.g:Tex_DefaultTargetFormat
|
|
||||||
elseif exists('g:Tex_CompileRule_dvi')
|
|
||||||
let &l:makeprg = g:Tex_CompileRule_dvi
|
|
||||||
else
|
|
||||||
" If buffer-local variable 'tex_flavor' exists, it defines TeX flavor,
|
|
||||||
" otherwize the same for global variable with same name, else it will be LaTeX
|
|
||||||
if exists("b:tex_flavor")
|
|
||||||
let current_compiler = b:tex_flavor
|
|
||||||
elseif exists("g:tex_flavor")
|
|
||||||
let current_compiler = g:tex_flavor
|
|
||||||
else
|
|
||||||
let current_compiler = "latex"
|
|
||||||
end
|
|
||||||
if has('win32')
|
|
||||||
let escChars = ''
|
|
||||||
else
|
|
||||||
let escChars = '{}\'
|
|
||||||
endif
|
|
||||||
" Furthermore, if 'win32' is detected, then we want to set the arguments up so
|
|
||||||
" that miktex can handle it.
|
|
||||||
if has('win32')
|
|
||||||
let options = '--src-specials'
|
|
||||||
else
|
|
||||||
let options = ''
|
|
||||||
endif
|
|
||||||
let &l:makeprg = current_compiler . ' ' . options .
|
|
||||||
\ escape(' \nonstopmode \input{$*}', escChars)
|
|
||||||
endif
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
" ==============================================================================
|
|
||||||
" Functions for setting up a customized 'efm' {{{
|
|
||||||
|
|
||||||
" IgnoreWarnings: parses g:Tex_IgnoredWarnings for message customization {{{
|
|
||||||
" Description:
|
|
||||||
function! <SID>IgnoreWarnings()
|
|
||||||
let i = 1
|
|
||||||
while s:Strntok(g:Tex_IgnoredWarnings, "\n", i) != '' &&
|
|
||||||
\ i <= g:Tex_IgnoreLevel
|
|
||||||
let warningPat = s:Strntok(g:Tex_IgnoredWarnings, "\n", i)
|
|
||||||
let warningPat = escape(substitute(warningPat, '[\,]', '%\\\\&', 'g'), ' ')
|
|
||||||
exe 'setlocal efm+=%-G%.%#'.warningPat.'%.%#'
|
|
||||||
let i = i + 1
|
|
||||||
endwhile
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
" SetLatexEfm: sets the 'efm' for the latex compiler {{{
|
|
||||||
" Description:
|
|
||||||
function! <SID>SetLatexEfm()
|
|
||||||
|
|
||||||
let pm = ( g:Tex_ShowallLines == 1 ? '+' : '-' )
|
|
||||||
|
|
||||||
setlocal efm=
|
|
||||||
" remove default error formats that cause issues with revtex, where they
|
|
||||||
" match version messages
|
|
||||||
" Reference: http://bugs.debian.org/582100
|
|
||||||
setlocal efm-=%f:%l:%m
|
|
||||||
setlocal efm-=%f:%l:%c:%m
|
|
||||||
|
|
||||||
if !g:Tex_ShowallLines
|
|
||||||
call s:IgnoreWarnings()
|
|
||||||
endif
|
|
||||||
|
|
||||||
setlocal efm+=%E!\ LaTeX\ %trror:\ %m
|
|
||||||
setlocal efm+=%E!\ %m
|
|
||||||
setlocal efm+=%E%f:%l:\ %m
|
|
||||||
|
|
||||||
setlocal efm+=%+WLaTeX\ %.%#Warning:\ %.%#line\ %l%.%#
|
|
||||||
setlocal efm+=%+W%.%#\ at\ lines\ %l--%*\\d
|
|
||||||
setlocal efm+=%+WLaTeX\ %.%#Warning:\ %m
|
|
||||||
|
|
||||||
exec 'setlocal efm+=%'.pm.'Cl.%l\ %m'
|
|
||||||
exec 'setlocal efm+=%'.pm.'Cl.%l\ '
|
|
||||||
exec 'setlocal efm+=%'.pm.'C\ \ %m'
|
|
||||||
exec 'setlocal efm+=%'.pm.'C%.%#-%.%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'C%.%#[]%.%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'C[]%.%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'C%.%#%[{}\\]%.%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'C<%.%#>%m'
|
|
||||||
exec 'setlocal efm+=%'.pm.'C\ \ %m'
|
|
||||||
exec 'setlocal efm+=%'.pm.'GSee\ the\ LaTeX%m'
|
|
||||||
exec 'setlocal efm+=%'.pm.'GType\ \ H\ <return>%m'
|
|
||||||
exec 'setlocal efm+=%'.pm.'G\ ...%.%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'G%.%#\ (C)\ %.%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'G(see\ the\ transcript%.%#)'
|
|
||||||
exec 'setlocal efm+=%'.pm.'G\\s%#'
|
|
||||||
exec 'setlocal efm+=%'.pm.'O(%*[^()])%r'
|
|
||||||
exec 'setlocal efm+=%'.pm.'P(%f%r'
|
|
||||||
exec 'setlocal efm+=%'.pm.'P\ %\\=(%f%r'
|
|
||||||
exec 'setlocal efm+=%'.pm.'P%*[^()](%f%r'
|
|
||||||
exec 'setlocal efm+=%'.pm.'P(%f%*[^()]'
|
|
||||||
exec 'setlocal efm+=%'.pm.'P[%\\d%[^()]%#(%f%r'
|
|
||||||
if g:Tex_IgnoreUnmatched && !g:Tex_ShowallLines
|
|
||||||
setlocal efm+=%-P%*[^()]
|
|
||||||
endif
|
|
||||||
exec 'setlocal efm+=%'.pm.'Q)%r'
|
|
||||||
exec 'setlocal efm+=%'.pm.'Q%*[^()])%r'
|
|
||||||
exec 'setlocal efm+=%'.pm.'Q[%\\d%*[^()])%r'
|
|
||||||
if g:Tex_IgnoreUnmatched && !g:Tex_ShowallLines
|
|
||||||
setlocal efm+=%-Q%*[^()]
|
|
||||||
endif
|
|
||||||
if g:Tex_IgnoreUnmatched && !g:Tex_ShowallLines
|
|
||||||
setlocal efm+=%-G%.%#
|
|
||||||
endif
|
|
||||||
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
" Strntok: extract the n^th token from a list {{{
|
|
||||||
" example: Strntok('1,23,3', ',', 2) = 23
|
|
||||||
fun! <SID>Strntok(s, tok, n)
|
|
||||||
return matchstr( a:s.a:tok[0], '\v(\zs([^'.a:tok.']*)\ze['.a:tok.']){'.a:n.'}')
|
|
||||||
endfun
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
" SetTexCompilerLevel: sets the "level" for the latex compiler {{{
|
|
||||||
function! <SID>SetTexCompilerLevel(...)
|
|
||||||
if a:0 > 0
|
|
||||||
let level = a:1
|
|
||||||
else
|
|
||||||
call Tex_ResetIncrementNumber(0)
|
|
||||||
echo substitute(g:Tex_IgnoredWarnings,
|
|
||||||
\ '^\|\n\zs\S', '\=Tex_IncrementNumber(1)." ".submatch(0)', 'g')
|
|
||||||
let level = input("\nChoose an ignore level: ")
|
|
||||||
if level == ''
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
if level == 'strict'
|
|
||||||
let g:Tex_ShowallLines = 1
|
|
||||||
elseif level =~ '^\d\+$'
|
|
||||||
let g:Tex_ShowallLines = 0
|
|
||||||
let g:Tex_IgnoreLevel = level
|
|
||||||
else
|
|
||||||
echoerr "SetTexCompilerLevel: Unkwown option [".level."]"
|
|
||||||
end
|
|
||||||
call s:SetLatexEfm()
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
com! -nargs=? TCLevel :call <SID>SetTexCompilerLevel(<f-args>)
|
|
||||||
" }}}
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
" ==============================================================================
|
|
||||||
|
|
||||||
call s:SetLatexEfm()
|
|
||||||
|
|
||||||
if !exists('*Tex_Debug')
|
|
||||||
function! Tex_Debug(...)
|
|
||||||
endfunction
|
|
||||||
endif
|
|
||||||
|
|
||||||
call Tex_Debug("compiler/tex.vim: sourcing this file", "comp")
|
|
||||||
|
|
||||||
" vim:fdm=marker:ff=unix:noet:ts=4:sw=4
|
|
||||||
20
compiler/typescript.vim
Normal file
20
compiler/typescript.vim
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'typescript') == -1
|
||||||
|
|
||||||
|
if exists("current_compiler")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let current_compiler = "typescript"
|
||||||
|
|
||||||
|
if !exists("g:typescript_compiler_binary")
|
||||||
|
let g:typescript_compiler_binary = "tsc"
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists("g:typescript_compiler_options")
|
||||||
|
let g:typescript_compiler_options = ""
|
||||||
|
endif
|
||||||
|
|
||||||
|
let &l:makeprg = g:typescript_compiler_binary . ' ' . g:typescript_compiler_options . ' $* %'
|
||||||
|
|
||||||
|
CompilerSet errorformat=%+A\ %#%f\ %#(%l\\\,%c):\ %m,%C%m
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1 +0,0 @@
|
|||||||
au BufRead,BufNewFile *.ino,*.pde set filetype=arduino
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
au BufNewFile,BufRead *.clj,*.cljs,*.edn setf clojure
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
" Language: CoffeeScript
|
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
|
||||||
" License: WTFPL
|
|
||||||
|
|
||||||
autocmd BufNewFile,BufRead *.coffee set filetype=coffee
|
|
||||||
autocmd BufNewFile,BufRead *Cakefile set filetype=coffee
|
|
||||||
autocmd BufNewFile,BufRead *.coffeekup,*.ck set filetype=coffee
|
|
||||||
autocmd BufNewFile,BufRead *._coffee set filetype=coffee
|
|
||||||
|
|
||||||
function! s:DetectCoffee()
|
|
||||||
if getline(1) =~ '^#!.*\<coffee\>'
|
|
||||||
set filetype=coffee
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
autocmd BufNewFile,BufRead * call s:DetectCoffee()
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
" Install Filetype detection for CSV files
|
|
||||||
au BufRead,BufNewFile *.csv,*.dat,*.tsv,*.tab set filetype=csv
|
|
||||||
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
" Cucumber
|
|
||||||
autocmd BufNewFile,BufReadPost *.feature,*.story set filetype=cucumber
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
au BufRead,BufNewFile *.ex,*.exs set filetype=elixir
|
|
||||||
au FileType elixir setl sw=2 sts=2 et iskeyword+=!,?
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
" Git
|
|
||||||
autocmd BufNewFile,BufRead *.git/{,modules/**/}{COMMIT_EDIT,MERGE_}MSG set ft=gitcommit
|
|
||||||
autocmd BufNewFile,BufRead *.git/config,.gitconfig,.gitmodules set ft=gitconfig
|
|
||||||
autocmd BufNewFile,BufRead */.config/git/config set ft=gitconfig
|
|
||||||
autocmd BufNewFile,BufRead *.git/modules/**/config set ft=gitconfig
|
|
||||||
autocmd BufNewFile,BufRead git-rebase-todo set ft=gitrebase
|
|
||||||
autocmd BufNewFile,BufRead .msg.[0-9]*
|
|
||||||
\ if getline(1) =~ '^From.*# This line is ignored.$' |
|
|
||||||
\ set ft=gitsendemail |
|
|
||||||
\ endif
|
|
||||||
autocmd BufNewFile,BufRead *.git/**
|
|
||||||
\ if getline(1) =~ '^\x\{40\}\>\|^ref: ' |
|
|
||||||
\ set ft=git |
|
|
||||||
\ endif
|
|
||||||
|
|
||||||
" This logic really belongs in scripts.vim
|
|
||||||
autocmd BufNewFile,BufRead,StdinReadPost *
|
|
||||||
\ if getline(1) =~ '^\(commit\|tree\|object\) \x\{40\}\>\|^tag \S\+$' |
|
|
||||||
\ set ft=git |
|
|
||||||
\ endif
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
" We take care to preserve the user's fileencodings and fileformats,
|
|
||||||
" because those settings are global (not buffer local), yet we want
|
|
||||||
" to override them for loading Go files, which are defined to be UTF-8.
|
|
||||||
let s:current_fileformats = ''
|
|
||||||
let s:current_fileencodings = ''
|
|
||||||
|
|
||||||
" define fileencodings to open as utf-8 encoding even if it's ascii.
|
|
||||||
function! s:gofiletype_pre()
|
|
||||||
let s:current_fileformats = &g:fileformats
|
|
||||||
let s:current_fileencodings = &g:fileencodings
|
|
||||||
set fileencodings=utf-8 fileformats=unix
|
|
||||||
setlocal filetype=go
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" restore fileencodings as others
|
|
||||||
function! s:gofiletype_post()
|
|
||||||
let &g:fileformats = s:current_fileformats
|
|
||||||
let &g:fileencodings = s:current_fileencodings
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
au BufNewFile *.go setlocal filetype=go fileencoding=utf-8 fileformat=unix
|
|
||||||
au BufRead *.go call s:gofiletype_pre()
|
|
||||||
au BufReadPost *.go call s:gofiletype_post()
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead *.haml,*.hamlbars setf haml
|
|
||||||
autocmd BufNewFile,BufRead *.sass setf sass
|
|
||||||
autocmd BufNewFile,BufRead *.scss setf scss
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
if has("autocmd")
|
|
||||||
au BufNewFile,BufRead *.{handlebars,hb,hbs,hbt}{,.erb} set ft=html syntax=handlebars | runtime! ftplugin/handlebars.vim ftplugin/handlebars*.vim ftplugin/handlebars/*.vim
|
|
||||||
endif
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
" Jade
|
|
||||||
autocmd BufNewFile,BufReadPost *.jade set filetype=jade
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
au BufNewFile,BufRead *.js setf javascript
|
|
||||||
au BufNewFile,BufRead *.jsm setf javascript
|
|
||||||
au BufNewFile,BufRead *.json setf javascript
|
|
||||||
au BufNewFile,BufRead Jakefile setf javascript
|
|
||||||
|
|
||||||
fun! s:SelectJavascript()
|
|
||||||
if getline(1) =~# '^#!.*/bin/env\s\+node\>'
|
|
||||||
set ft=javascript
|
|
||||||
endif
|
|
||||||
endfun
|
|
||||||
au BufNewFile,BufRead * call s:SelectJavascript()
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead *.json set filetype=json
|
|
||||||
|
|
||||||
augroup json_autocmd
|
|
||||||
autocmd!
|
|
||||||
autocmd FileType json setlocal autoindent
|
|
||||||
autocmd FileType json setlocal formatoptions=tcq2l
|
|
||||||
autocmd FileType json setlocal foldmethod=syntax
|
|
||||||
augroup END
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
au BufNewFile,BufRead *.ejs set filetype=jst
|
|
||||||
au BufNewFile,BufRead *.jst set filetype=jst
|
|
||||||
au BufNewFile,BufRead *.hamljs set filetype=jst
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead *.less setf less
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead *.markdown,*.md,*.mdown,*.mkd,*.mkdn
|
|
||||||
\ if &ft =~# '^\%(conf\|modula2\)$' |
|
|
||||||
\ set ft=markdown |
|
|
||||||
\ else |
|
|
||||||
\ setf markdown |
|
|
||||||
\ endif
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
au BufRead,BufNewFile /etc/nginx/*,/usr/local/nginx/*,*/nginx/vhosts.d/*,nginx.conf if &ft == '' | setfiletype nginx | endif
|
|
||||||
378
ftdetect/polyglot.vim
Normal file
378
ftdetect/polyglot.vim
Normal file
@@ -0,0 +1,378 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'arduino') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.ino,*.pde set filetype=arduino
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'blade') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.blade.php set filetype=blade
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cjsx') == -1
|
||||||
|
|
||||||
|
augroup CJSX
|
||||||
|
au!
|
||||||
|
autocmd BufNewFile,BufRead *.csx,*.cjsx set filetype=coffee
|
||||||
|
augroup END
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'clojure') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.clj,*.cljs,*.edn,*.cljx,*.cljc setlocal filetype=clojure
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.coffee set filetype=coffee
|
||||||
|
autocmd BufNewFile,BufRead *Cakefile set filetype=coffee
|
||||||
|
autocmd BufNewFile,BufRead *.coffeekup,*.ck set filetype=coffee
|
||||||
|
autocmd BufNewFile,BufRead *._coffee set filetype=coffee
|
||||||
|
function! s:DetectCoffee()
|
||||||
|
if getline(1) =~ '^#!.*\<coffee\>'
|
||||||
|
set filetype=coffee
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
autocmd BufNewFile,BufRead * call s:DetectCoffee()
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cucumber') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufReadPost *.feature,*.story set filetype=cucumber
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dockerfile') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead Dockerfile set filetype=dockerfile
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elixir') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.eex set filetype=eelixir
|
||||||
|
au FileType eelixir setl sw=2 sts=2 et iskeyword+=!,?
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elixir') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.ex,*.exs set filetype=elixir
|
||||||
|
au FileType elixir setl sw=2 sts=2 et iskeyword+=!,?
|
||||||
|
function! s:DetectElixir()
|
||||||
|
if getline(1) =~ '^#!.*\<elixir\>'
|
||||||
|
set filetype=elixir
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
autocmd BufNewFile,BufRead * call s:DetectElixir()
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'emberscript') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.em set filetype=ember-script
|
||||||
|
autocmd FileType ember-script set tabstop=2|set shiftwidth=2|set expandtab
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'emblem') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.emblem set filetype=emblem
|
||||||
|
autocmd FileType emblem set tabstop=2|set shiftwidth=2|set expandtab
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'erlang') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.erl,*.hrl,rebar.config,*.app,*.app.src,*.yaws,*.xrl set ft=erlang
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'git') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.git/{,modules/**/,worktrees/*/}{COMMIT_EDIT,TAG_EDIT,MERGE_,}MSG set ft=gitcommit
|
||||||
|
autocmd BufNewFile,BufRead *.git/config,.gitconfig,gitconfig,.gitmodules set ft=gitconfig
|
||||||
|
autocmd BufNewFile,BufRead */.config/git/config set ft=gitconfig
|
||||||
|
autocmd BufNewFile,BufRead *.git/modules/**/config set ft=gitconfig
|
||||||
|
autocmd BufNewFile,BufRead git-rebase-todo set ft=gitrebase
|
||||||
|
autocmd BufNewFile,BufRead .gitsendemail.* set ft=gitsendemail
|
||||||
|
autocmd BufNewFile,BufRead *.git/**
|
||||||
|
\ if getline(1) =~ '^\x\{40\}\>\|^ref: ' |
|
||||||
|
\ set ft=git |
|
||||||
|
\ endif
|
||||||
|
autocmd BufNewFile,BufRead,StdinReadPost *
|
||||||
|
\ if getline(1) =~ '^\(commit\|tree\|object\) \x\{40\}\>\|^tag \S\+$' |
|
||||||
|
\ set ft=git |
|
||||||
|
\ endif
|
||||||
|
autocmd BufNewFile,BufRead *
|
||||||
|
\ if getline(1) =~ '^From \x\{40\} Mon Sep 17 00:00:00 2001$' |
|
||||||
|
\ set filetype=gitsendemail |
|
||||||
|
\ endif
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'glsl') == -1
|
||||||
|
|
||||||
|
autocmd! BufNewFile,BufRead *.glsl,*.geom,*.vert,*.frag,*.gsh,*.vsh,*.fsh,*.vs,*.fs,*.gs,*.tcs,*.tes set filetype=glsl
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'go') == -1
|
||||||
|
|
||||||
|
let s:current_fileformats = ''
|
||||||
|
let s:current_fileencodings = ''
|
||||||
|
function! s:gofiletype_pre()
|
||||||
|
let s:current_fileformats = &g:fileformats
|
||||||
|
let s:current_fileencodings = &g:fileencodings
|
||||||
|
set fileencodings=utf-8 fileformats=unix
|
||||||
|
setlocal filetype=go
|
||||||
|
endfunction
|
||||||
|
function! s:gofiletype_post()
|
||||||
|
let &g:fileformats = s:current_fileformats
|
||||||
|
let &g:fileencodings = s:current_fileencodings
|
||||||
|
endfunction
|
||||||
|
au BufNewFile *.go setfiletype go | setlocal fileencoding=utf-8 fileformat=unix
|
||||||
|
au BufRead *.go call s:gofiletype_pre()
|
||||||
|
au BufReadPost *.go call s:gofiletype_post()
|
||||||
|
au BufRead,BufNewFile *.tmpl set filetype=gohtmltmpl
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haml') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.haml,*.hamlbars,*.hamlc setf haml
|
||||||
|
autocmd BufNewFile,BufRead *.sass setf sass
|
||||||
|
autocmd BufNewFile,BufRead *.scss setf scss
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.hsc set filetype=haskell
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haxe') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.hx setf haxe
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jade') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufReadPost *.jade set filetype=jade
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jasmine') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *Spec.js,*_spec.js set filetype=jasmine.javascript syntax=jasmine
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'json') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.json set filetype=json
|
||||||
|
autocmd BufNewFile,BufRead *.jsonp set filetype=json
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'jst') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.ejs set filetype=jst
|
||||||
|
au BufNewFile,BufRead *.jst set filetype=jst
|
||||||
|
au BufNewFile,BufRead *.djs set filetype=jst
|
||||||
|
au BufNewFile,BufRead *.hamljs set filetype=jst
|
||||||
|
au BufNewFile,BufRead *.ect set filetype=jst
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'julia') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.jl let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lisp<"
|
||||||
|
au BufRead,BufNewFile *.jl set filetype=julia
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'kotlin') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.kt setfiletype kotlin
|
||||||
|
autocmd BufNewFile,BufRead *.kts setfiletype kotlin
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'less') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.less setf less
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'liquid') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.liquid set ft=liquid
|
||||||
|
au BufNewFile,BufRead */_layouts/*.html,*/_includes/*.html set ft=liquid
|
||||||
|
au BufNewFile,BufRead *.html,*.xml,*.textile
|
||||||
|
\ if getline(1) == '---' | set ft=liquid | endif
|
||||||
|
au BufNewFile,BufRead *.markdown,*.mkd,*.mkdn,*.md
|
||||||
|
\ if getline(1) == '---' |
|
||||||
|
\ let b:liquid_subtype = 'markdown' |
|
||||||
|
\ set ft=liquid |
|
||||||
|
\ endif
|
||||||
|
au BufNewFile,BufRead */templates/**.liquid,*/layout/**.liquid,*/snippets/**.liquid
|
||||||
|
\ let b:liquid_subtype = 'html' |
|
||||||
|
\ set ft=liquid |
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'markdown') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.markdown,*.md,*.mdown,*.mkd,*.mkdn
|
||||||
|
\ if &ft =~# '^\%(conf\|modula2\)$' |
|
||||||
|
\ set ft=markdown |
|
||||||
|
\ else |
|
||||||
|
\ setf markdown |
|
||||||
|
\ endif
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'perl') == -1
|
||||||
|
|
||||||
|
autocmd BufRead *.html
|
||||||
|
\ if getline(1) =~ '^\(%\|<[%&].*>\)' |
|
||||||
|
\ set filetype=mason |
|
||||||
|
\ endif
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'handlebars') == -1
|
||||||
|
|
||||||
|
if has("autocmd")
|
||||||
|
au BufNewFile,BufRead *.mustache,*.hogan,*.hulk,*.hjs set filetype=html.mustache syntax=mustache | runtime! ftplugin/mustache.vim ftplugin/mustache*.vim ftplugin/mustache/*.vim
|
||||||
|
au BufNewFile,BufRead *.handlebars,*.hbs set filetype=html.handlebars syntax=mustache | runtime! ftplugin/mustache.vim ftplugin/mustache*.vim ftplugin/mustache/*.vim
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'nginx') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile /etc/nginx/*,/usr/local/nginx/*,*/nginx/vhosts.d/*,nginx.conf if &ft == '' | setfiletype nginx | endif
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'opencl') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.cl set filetype=opencl
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'perl') == -1
|
||||||
|
|
||||||
|
function! s:DetectPerl6()
|
||||||
|
let line_no = 1
|
||||||
|
let eof = line('$')
|
||||||
|
let in_pod = 0
|
||||||
|
while line_no <= eof
|
||||||
|
let line = getline(line_no)
|
||||||
|
let line_no = line_no + 1
|
||||||
|
if line =~ '^=\w'
|
||||||
|
let in_pod = 1
|
||||||
|
elseif line =~ '^=\%(end\|cut\)'
|
||||||
|
let in_pod = 0
|
||||||
|
elseif !in_pod
|
||||||
|
let line = substitute(line, '#.*', '', '')
|
||||||
|
if line =~ '^\s*$'
|
||||||
|
continue
|
||||||
|
endif
|
||||||
|
if line =~ '^\s*\%(use\s\+\)\=v6\%(\.\d\%(\.\d\)\=\)\=;'
|
||||||
|
set filetype=perl6 " we matched a 'use v6' declaration
|
||||||
|
elseif line =~ '^\s*\%(\%(my\|our\)\s\+\)\=\%(unit\s\+\)\=\(module\|class\|role\|enum\|grammar\)'
|
||||||
|
set filetype=perl6 " we found a class, role, module, enum, or grammar declaration
|
||||||
|
endif
|
||||||
|
break " we either found what we needed, or we found a non-POD, non-comment,
|
||||||
|
" non-Perl 6 indicating line, so bail out
|
||||||
|
endif
|
||||||
|
endwhile
|
||||||
|
endfunction
|
||||||
|
autocmd BufReadPost *.pl,*.pm,*.t call s:DetectPerl6()
|
||||||
|
autocmd BufNew,BufNewFile,BufRead *.nqp setf perl6
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'protobuf') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.proto setfiletype proto
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'powershell') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.ps1 set ft=ps1
|
||||||
|
au BufNewFile,BufRead *.psd1 set ft=ps1
|
||||||
|
au BufNewFile,BufRead *.psm1 set ft=ps1
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'powershell') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.ps1xml set ft=ps1xml
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'puppet') == -1
|
||||||
|
|
||||||
|
au! BufRead,BufNewFile *.pp setfiletype puppet
|
||||||
|
au! BufRead,BufNewFile Puppetfile setfiletype ruby
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'qml') == -1
|
||||||
|
|
||||||
|
autocmd BufRead,BufNewFile *.qml setfiletype qml
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
|
function! s:setf(filetype) abort
|
||||||
|
if &filetype !=# a:filetype
|
||||||
|
let &filetype = a:filetype
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
au BufNewFile,BufRead *.rb,*.rbw,*.gemspec call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead *.builder,*.rxml,*.rjs,*.ruby call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead [rR]akefile,*.rake call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead [rR]antfile,*.rant call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead .irbrc,irbrc call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead .pryrc call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead *.ru call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Capfile,*.cap call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Gemfile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Guardfile,.Guardfile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Cheffile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Berksfile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead [vV]agrantfile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead .autotest call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead *.erb,*.rhtml call s:setf('eruby')
|
||||||
|
au BufNewFile,BufRead [tT]horfile,*.thor call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead *.rabl call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead *.jbuilder call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Puppetfile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead [Bb]uildfile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Appraisals call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead Podfile,*.podspec call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead [rR]outefile call s:setf('ruby')
|
||||||
|
au BufNewFile,BufRead .simplecov set filetype=ruby
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.rs set filetype=rust
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'sbt') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.sbt set filetype=sbt.scala
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'scala') == -1
|
||||||
|
|
||||||
|
fun! s:DetectScala()
|
||||||
|
if getline(1) =~# '^#!\(/usr\)\?/bin/env\s\+scalas\?'
|
||||||
|
set filetype=scala
|
||||||
|
endif
|
||||||
|
endfun
|
||||||
|
au BufRead,BufNewFile *.scala set filetype=scala
|
||||||
|
au BufRead,BufNewFile * call s:DetectScala()
|
||||||
|
au BufRead,BufNewFile *.sbt setfiletype sbt.scala
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'slim') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.slim set filetype=slim
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'solidity') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.sol setf solidity
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'stylus') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufReadPost *.styl set filetype=stylus
|
||||||
|
autocmd BufNewFile,BufReadPost *.stylus set filetype=stylus
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'swift') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.swift set filetype=swift
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'systemd') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.automount set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.mount set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.path set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.service set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.socket set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.swap set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.target set filetype=systemd
|
||||||
|
au BufNewFile,BufRead *.timer set filetype=systemd
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'textile') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.textile set filetype=textile
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'thrift') == -1
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.thrift setlocal filetype=thrift
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'tmux') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead {.,}tmux.conf{.*,} setlocal filetype=tmux
|
||||||
|
autocmd BufNewFile,BufRead {.,}tmux.conf{.*,} setlocal commentstring=#\ %s
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'toml') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.toml set filetype=toml
|
||||||
|
autocmd BufNewFile,BufRead Cargo.lock set filetype=toml
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'twig') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.twig set filetype=twig
|
||||||
|
autocmd BufNewFile,BufRead *.html.twig set filetype=html.twig
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'typescript') == -1
|
||||||
|
|
||||||
|
autocmd BufNewFile,BufRead *.ts,*.tsx setlocal filetype=typescript
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vala') == -1
|
||||||
|
|
||||||
|
autocmd BufRead *.vala,*.vapi set efm=%f:%l.%c-%[%^:]%#:\ %t%[%^:]%#:\ %m
|
||||||
|
au BufRead,BufNewFile *.vala,*.vapi setfiletype vala
|
||||||
|
endif
|
||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vm') == -1
|
||||||
|
|
||||||
|
au BufRead,BufNewFile *.vm set ft=velocity syntax=velocity
|
||||||
|
endif
|
||||||
@@ -1 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead *.proto setfiletype proto
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
" detect puppet filetype
|
|
||||||
au BufRead,BufNewFile *.pp set filetype=puppet
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
" Ruby
|
|
||||||
au BufNewFile,BufRead *.rb,*.rbw,*.gemspec set filetype=ruby
|
|
||||||
|
|
||||||
" Ruby on Rails
|
|
||||||
au BufNewFile,BufRead *.builder,*.rxml,*.rjs set filetype=ruby
|
|
||||||
|
|
||||||
" Rakefile
|
|
||||||
au BufNewFile,BufRead [rR]akefile,*.rake set filetype=ruby
|
|
||||||
|
|
||||||
" Rantfile
|
|
||||||
au BufNewFile,BufRead [rR]antfile,*.rant set filetype=ruby
|
|
||||||
|
|
||||||
" IRB config
|
|
||||||
au BufNewFile,BufRead .irbrc,irbrc set filetype=ruby
|
|
||||||
|
|
||||||
" Pry config
|
|
||||||
au BufNewFile,BufRead .pryrc set filetype=ruby
|
|
||||||
|
|
||||||
" Rackup
|
|
||||||
au BufNewFile,BufRead *.ru set filetype=ruby
|
|
||||||
|
|
||||||
" Capistrano
|
|
||||||
au BufNewFile,BufRead Capfile set filetype=ruby
|
|
||||||
|
|
||||||
" Bundler
|
|
||||||
au BufNewFile,BufRead Gemfile set filetype=ruby
|
|
||||||
|
|
||||||
" Guard
|
|
||||||
au BufNewFile,BufRead Guardfile,.Guardfile set filetype=ruby
|
|
||||||
|
|
||||||
" Chef
|
|
||||||
au BufNewFile,BufRead Cheffile set filetype=ruby
|
|
||||||
au BufNewFile,BufRead Berksfile set filetype=ruby
|
|
||||||
|
|
||||||
" Vagrant
|
|
||||||
au BufNewFile,BufRead [vV]agrantfile set filetype=ruby
|
|
||||||
|
|
||||||
" Autotest
|
|
||||||
au BufNewFile,BufRead .autotest set filetype=ruby
|
|
||||||
|
|
||||||
" eRuby
|
|
||||||
au BufNewFile,BufRead *.erb,*.rhtml set filetype=eruby
|
|
||||||
|
|
||||||
" Thor
|
|
||||||
au BufNewFile,BufRead [tT]horfile,*.thor set filetype=ruby
|
|
||||||
|
|
||||||
" Rabl
|
|
||||||
au BufNewFile,BufRead *.rabl set filetype=ruby
|
|
||||||
|
|
||||||
" Jbuilder
|
|
||||||
au BufNewFile,BufRead *.jbuilder set filetype=ruby
|
|
||||||
|
|
||||||
" Puppet librarian
|
|
||||||
au BufNewFile,BufRead Puppetfile set filetype=ruby
|
|
||||||
"
|
|
||||||
" Buildr Buildfile
|
|
||||||
au BufNewFile,BufRead [Bb]uildfile set filetype=ruby
|
|
||||||
|
|
||||||
" Appraisal
|
|
||||||
au BufNewFile,BufRead Appraisals set filetype=ruby
|
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8 noet:
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
" Vim detect file
|
|
||||||
" Language: sbt
|
|
||||||
" Maintainer: Derek Wyatt <derek@{myfirstname}{mylastname}.org>
|
|
||||||
" Last Change: 2012 Jan 19
|
|
||||||
|
|
||||||
au BufRead,BufNewFile *.sbt set filetype=sbt
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fun! s:DetectScala()
|
|
||||||
if getline(1) == '#!/usr/bin/env scala'
|
|
||||||
set filetype=scala
|
|
||||||
endif
|
|
||||||
endfun
|
|
||||||
|
|
||||||
au BufRead,BufNewFile *.scala,*.sbt set filetype=scala
|
|
||||||
au BufRead,BufNewFile * call s:DetectScala()
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead *.slim setf slim
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
" Stylus
|
|
||||||
autocmd BufNewFile,BufReadPost *.styl set filetype=stylus
|
|
||||||
autocmd BufNewFile,BufReadPost *.stylus set filetype=stylus
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
" textile.vim
|
|
||||||
"
|
|
||||||
" Tim Harper (tim.theenchanter.com)
|
|
||||||
|
|
||||||
" Force filetype to be textile even if already set
|
|
||||||
" This will override the system ftplugin/changelog
|
|
||||||
" set on some distros
|
|
||||||
au BufRead,BufNewFile *.textile set filetype=textile
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
autocmd BufNewFile,BufRead .tmux.conf*,tmux.conf* setf tmux
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
" Twig
|
|
||||||
autocmd BufNewFile,BufRead *.twig set filetype=twig
|
|
||||||
|
|
||||||
" HTML Twig
|
|
||||||
autocmd BufNewFile,BufRead *.html.twig set filetype=html.twig
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
" File: bib_latexSuite.vim
|
|
||||||
" Author: Srinath Avadhanula
|
|
||||||
" License: Vim Charityware License
|
|
||||||
" Description:
|
|
||||||
" This file sources the bibtex.vim file distributed as part of latex-suite.
|
|
||||||
" That file sets up 3 maps BBB, BAS, and BBA which are easy wasy to type in
|
|
||||||
" bibliographic entries.
|
|
||||||
"
|
|
||||||
|
|
||||||
" source main.vim because we need a few functions from it.
|
|
||||||
runtime ftplugin/latex-suite/main.vim
|
|
||||||
" Disable smart-quotes because we need to enter real quotes in bib files.
|
|
||||||
runtime ftplugin/latex-suite/bibtex.vim
|
|
||||||
|
|
||||||
" vim:fdm=marker:ff=unix:noet:ts=4:sw=4:nowrap
|
|
||||||
69
ftplugin/cabal.vim
Normal file
69
ftplugin/cabal.vim
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
|
||||||
|
|
||||||
|
if exists("g:loaded_haskellvim_cabal")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
let g:loaded_haskellvim_cabal = 1
|
||||||
|
|
||||||
|
function! s:makeSection(content)
|
||||||
|
return "\n" . join(a:content, "\n")
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:exeTmpl(name, src)
|
||||||
|
let l:exetmpl = [ 'executable ' . a:name,
|
||||||
|
\ '-- ghc-options:',
|
||||||
|
\ 'main-is: ' . a:src,
|
||||||
|
\ '-- other-modules:',
|
||||||
|
\ '-- other-extensions:',
|
||||||
|
\ 'build-depends: base',
|
||||||
|
\ '-- hs-source-dirs:',
|
||||||
|
\ 'default-language: Haskell2010'
|
||||||
|
\ ]
|
||||||
|
|
||||||
|
return s:makeSection(l:exetmpl)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:libTmpl()
|
||||||
|
let l:libtmpl = [ 'library',
|
||||||
|
\ '-- ghc-options:',
|
||||||
|
\ '-- other-modules:',
|
||||||
|
\ '-- other-extensions:',
|
||||||
|
\ 'build-depends: base',
|
||||||
|
\ '-- hs-source-dirs:',
|
||||||
|
\ 'default-language: Haskell2010'
|
||||||
|
\ ]
|
||||||
|
|
||||||
|
return s:makeSection(l:libtmpl)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:flagTmpl(name)
|
||||||
|
let l:flagtmpl = [ 'flag ' . a:name,
|
||||||
|
\ 'description:',
|
||||||
|
\ 'default: False',
|
||||||
|
\ 'manual: True',
|
||||||
|
\ ]
|
||||||
|
|
||||||
|
return s:makeSection(l:flagtmpl)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! cabal#addExecutable()
|
||||||
|
let l:name = input("Enter executable name: ")
|
||||||
|
let l:src = input("Enter source file: ")
|
||||||
|
exe "normal Go" . s:exeTmpl(l:name, l:src)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! cabal#addLibrary()
|
||||||
|
exe "normal Go" . s:libTmpl()
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! cabal#addFlag()
|
||||||
|
let l:name = input("Enter flag name: ")
|
||||||
|
exe "normal Go" . s:flagTmpl(l:name)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
command! -buffer CabalAddExecutable call cabal#addExecutable()
|
||||||
|
command! -buffer CabalAddLibrary call cabal#addLibrary()
|
||||||
|
command! -buffer CabalAddFlag call cabal#addFlag()
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'clojure') == -1
|
||||||
|
|
||||||
" Vim filetype plugin file
|
" Vim filetype plugin file
|
||||||
" Language: Clojure
|
" Language: Clojure
|
||||||
" Author: Meikel Brandmeyer <mb@kotka.de>
|
" Author: Meikel Brandmeyer <mb@kotka.de>
|
||||||
@@ -15,7 +17,7 @@ let b:did_ftplugin = 1
|
|||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
let b:undo_ftplugin = 'setlocal iskeyword< define< formatoptions< comments< commentstring<'
|
let b:undo_ftplugin = 'setlocal iskeyword< define< formatoptions< comments< commentstring< lispwords<'
|
||||||
|
|
||||||
setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$
|
setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$
|
||||||
|
|
||||||
@@ -23,14 +25,29 @@ setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$
|
|||||||
" of user-defined def* definitions.
|
" of user-defined def* definitions.
|
||||||
setlocal define=\\v[(/]def(ault)@!\\S*
|
setlocal define=\\v[(/]def(ault)@!\\S*
|
||||||
|
|
||||||
" Remove 't' from 'formatoptions' to avoid auto-wrapping code. The '+=croql'
|
" Remove 't' from 'formatoptions' to avoid auto-wrapping code.
|
||||||
" is standard ftplugin boilerplate, although it is arguably intrusive.
|
setlocal formatoptions-=t
|
||||||
setlocal formatoptions-=t formatoptions+=croql
|
|
||||||
|
|
||||||
" Lisp comments are routinely nested (e.g. ;;; SECTION HEADING)
|
" Lisp comments are routinely nested (e.g. ;;; SECTION HEADING)
|
||||||
setlocal comments=n:;
|
setlocal comments=n:;
|
||||||
setlocal commentstring=;\ %s
|
setlocal commentstring=;\ %s
|
||||||
|
|
||||||
|
" Specially indented symbols from clojure.core and clojure.test.
|
||||||
|
"
|
||||||
|
" Clojure symbols are indented in the defn style when they:
|
||||||
|
"
|
||||||
|
" * Define vars and anonymous functions
|
||||||
|
" * Create new lexical scopes or scopes with altered environments
|
||||||
|
" * Create conditional branches from a predicate function or value
|
||||||
|
"
|
||||||
|
" The arglists for these functions are generally in the form of [x & body];
|
||||||
|
" Functions that accept a flat list of forms do not treat the first argument
|
||||||
|
" specially and hence are not indented specially.
|
||||||
|
"
|
||||||
|
" -*- LISPWORDS -*-
|
||||||
|
" Generated from https://github.com/guns/vim-clojure-static/blob/%%RELEASE_TAG%%/clj/src/vim_clojure_static/generate.clj
|
||||||
|
setlocal lispwords=as->,binding,bound-fn,case,catch,cond->,cond->>,condp,def,definline,definterface,defmacro,defmethod,defmulti,defn,defn-,defonce,defprotocol,defrecord,defstruct,deftest,deftest-,deftype,doseq,dotimes,doto,extend,extend-protocol,extend-type,fn,for,if,if-let,if-not,if-some,let,letfn,locking,loop,ns,proxy,reify,set-test,testing,when,when-first,when-let,when-not,when-some,while,with-bindings,with-in-str,with-local-vars,with-open,with-precision,with-redefs,with-redefs-fn,with-test
|
||||||
|
|
||||||
" Provide insert mode completions for special forms and clojure.core. As
|
" Provide insert mode completions for special forms and clojure.core. As
|
||||||
" 'omnifunc' is set by popular Clojure REPL client plugins, we also set
|
" 'omnifunc' is set by popular Clojure REPL client plugins, we also set
|
||||||
" 'completefunc' so that the user has some form of completion available when
|
" 'completefunc' so that the user has some form of completion available when
|
||||||
@@ -78,3 +95,5 @@ let &cpo = s:cpo_save
|
|||||||
unlet! s:cpo_save s:setting s:dir
|
unlet! s:cpo_save s:setting s:dir
|
||||||
|
|
||||||
" vim:sts=8:sw=8:ts=8:noet
|
" vim:sts=8:sw=8:ts=8:noet
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coffee-script') == -1
|
||||||
|
|
||||||
" Language: CoffeeScript
|
" Language: CoffeeScript
|
||||||
" Maintainer: Mick Koch <kchmck@gmail.com>
|
" Maintainer: Mick Koch <mick@kochm.co>
|
||||||
" URL: http://github.com/kchmck/vim-coffee-script
|
" URL: http://github.com/kchmck/vim-coffee-script
|
||||||
" License: WTFPL
|
" License: WTFPL
|
||||||
|
|
||||||
@@ -13,6 +15,7 @@ call coffee#CoffeeSetUpVariables()
|
|||||||
setlocal formatoptions-=t formatoptions+=croql
|
setlocal formatoptions-=t formatoptions+=croql
|
||||||
setlocal comments=:# commentstring=#\ %s
|
setlocal comments=:# commentstring=#\ %s
|
||||||
setlocal omnifunc=javascriptcomplete#CompleteJS
|
setlocal omnifunc=javascriptcomplete#CompleteJS
|
||||||
|
setlocal suffixesadd+=coffee
|
||||||
|
|
||||||
" Create custom augroups.
|
" Create custom augroups.
|
||||||
augroup CoffeeBufUpdate | augroup END
|
augroup CoffeeBufUpdate | augroup END
|
||||||
@@ -330,7 +333,7 @@ function! s:CoffeeLint(startline, endline, bang, args)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
let output = system(g:coffee_linter .
|
let output = system(g:coffee_linter .
|
||||||
\ ' -s --csv' .
|
\ ' -s --reporter csv' .
|
||||||
\ ' ' . b:coffee_litcoffee .
|
\ ' ' . b:coffee_litcoffee .
|
||||||
\ ' ' . g:coffee_lint_options .
|
\ ' ' . g:coffee_lint_options .
|
||||||
\ ' ' . a:args .
|
\ ' ' . a:args .
|
||||||
@@ -394,11 +397,13 @@ if !exists('b:coffee_run_buf')
|
|||||||
call s:CoffeeRunResetVars()
|
call s:CoffeeRunResetVars()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
command! -range=% -bar -nargs=* -complete=customlist,s:CoffeeComplete
|
command! -buffer -range=% -bar -nargs=* -complete=customlist,s:CoffeeComplete
|
||||||
\ CoffeeCompile call s:CoffeeCompile(<line1>, <line2>, <q-args>)
|
\ CoffeeCompile call s:CoffeeCompile(<line1>, <line2>, <q-args>)
|
||||||
command! -bar -nargs=* -complete=customlist,s:CoffeeComplete
|
command! -buffer -bar -nargs=* -complete=customlist,s:CoffeeComplete
|
||||||
\ CoffeeWatch call s:CoffeeWatch(<q-args>)
|
\ CoffeeWatch call s:CoffeeWatch(<q-args>)
|
||||||
command! -range=% -bar -nargs=* CoffeeRun
|
command! -buffer -range=% -bar -nargs=* CoffeeRun
|
||||||
\ call s:CoffeeRun(<line1>, <line2>, <q-args>)
|
\ call s:CoffeeRun(<line1>, <line2>, <q-args>)
|
||||||
command! -range=% -bang -bar -nargs=* CoffeeLint
|
command! -buffer -range=% -bang -bar -nargs=* CoffeeLint
|
||||||
\ call s:CoffeeLint(<line1>, <line2>, <q-bang>, <q-args>)
|
\ call s:CoffeeLint(<line1>, <line2>, <q-bang>, <q-args>)
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
2446
ftplugin/csv.vim
2446
ftplugin/csv.vim
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,9 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cucumber') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Vim filetype plugin
|
||||||
" Language: Cucumber
|
" Language: Cucumber
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
" Last Change: 2010 Aug 09
|
" Last Change: 2013 Jun 01
|
||||||
|
|
||||||
" Only do this when not done yet for this buffer
|
" Only do this when not done yet for this buffer
|
||||||
if (exists("b:did_ftplugin"))
|
if (exists("b:did_ftplugin"))
|
||||||
@@ -9,6 +11,9 @@ if (exists("b:did_ftplugin"))
|
|||||||
endif
|
endif
|
||||||
let b:did_ftplugin = 1
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
let s:keepcpo= &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
setlocal formatoptions-=t formatoptions+=croql
|
setlocal formatoptions-=t formatoptions+=croql
|
||||||
setlocal comments=:# commentstring=#\ %s
|
setlocal comments=:# commentstring=#\ %s
|
||||||
setlocal omnifunc=CucumberComplete
|
setlocal omnifunc=CucumberComplete
|
||||||
@@ -16,27 +21,23 @@ setlocal omnifunc=CucumberComplete
|
|||||||
let b:undo_ftplugin = "setl fo< com< cms< ofu<"
|
let b:undo_ftplugin = "setl fo< com< cms< ofu<"
|
||||||
|
|
||||||
let b:cucumber_root = expand('%:p:h:s?.*[\/]\%(features\|stories\)\zs[\/].*??')
|
let b:cucumber_root = expand('%:p:h:s?.*[\/]\%(features\|stories\)\zs[\/].*??')
|
||||||
|
if !exists("b:cucumber_steps_glob")
|
||||||
|
let b:cucumber_steps_glob = b:cucumber_root.'/**/*.rb'
|
||||||
|
endif
|
||||||
|
|
||||||
if !exists("g:no_plugin_maps") && !exists("g:no_cucumber_maps")
|
if !exists("g:no_plugin_maps") && !exists("g:no_cucumber_maps")
|
||||||
nnoremap <silent><buffer> <C-]> :<C-U>exe <SID>jump('edit',v:count)<CR>
|
cnoremap <SID>foldopen <Bar>if &foldopen =~# 'tag'<Bar>exe 'norm! zv'<Bar>endif
|
||||||
nnoremap <silent><buffer> [<C-D> :<C-U>exe <SID>jump('edit',v:count)<CR>
|
nnoremap <silent> <script> <buffer> [<C-D> :<C-U>exe <SID>jump('edit',v:count)<SID>foldopen<CR>
|
||||||
nnoremap <silent><buffer> ]<C-D> :<C-U>exe <SID>jump('edit',v:count)<CR>
|
nnoremap <silent> <script> <buffer> ]<C-D> :<C-U>exe <SID>jump('edit',v:count)<SID>foldopen<CR>
|
||||||
nnoremap <silent><buffer> <C-W>] :<C-U>exe <SID>jump('split',v:count)<CR>
|
nnoremap <silent> <script> <buffer> <C-W>d :<C-U>exe <SID>jump('split',v:count)<SID>foldopen<CR>
|
||||||
nnoremap <silent><buffer> <C-W><C-]> :<C-U>exe <SID>jump('split',v:count)<CR>
|
nnoremap <silent> <script> <buffer> <C-W><C-D> :<C-U>exe <SID>jump('split',v:count)<SID>foldopen<CR>
|
||||||
nnoremap <silent><buffer> <C-W>d :<C-U>exe <SID>jump('split',v:count)<CR>
|
nnoremap <silent> <script> <buffer> [d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||||
nnoremap <silent><buffer> <C-W><C-D> :<C-U>exe <SID>jump('split',v:count)<CR>
|
nnoremap <silent> <script> <buffer> ]d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||||
nnoremap <silent><buffer> <C-W>} :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
|
||||||
nnoremap <silent><buffer> [d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
|
||||||
nnoremap <silent><buffer> ]d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
|
||||||
let b:undo_ftplugin .=
|
let b:undo_ftplugin .=
|
||||||
\ "|sil! nunmap <buffer> <C-]>" .
|
|
||||||
\ "|sil! nunmap <buffer> [<C-D>" .
|
\ "|sil! nunmap <buffer> [<C-D>" .
|
||||||
\ "|sil! nunmap <buffer> ]<C-D>" .
|
\ "|sil! nunmap <buffer> ]<C-D>" .
|
||||||
\ "|sil! nunmap <buffer> <C-W>]" .
|
|
||||||
\ "|sil! nunmap <buffer> <C-W><C-]>" .
|
|
||||||
\ "|sil! nunmap <buffer> <C-W>d" .
|
\ "|sil! nunmap <buffer> <C-W>d" .
|
||||||
\ "|sil! nunmap <buffer> <C-W><C-D>" .
|
\ "|sil! nunmap <buffer> <C-W><C-D>" .
|
||||||
\ "|sil! nunmap <buffer> <C-W>}" .
|
|
||||||
\ "|sil! nunmap <buffer> [d" .
|
\ "|sil! nunmap <buffer> [d" .
|
||||||
\ "|sil! nunmap <buffer> ]d"
|
\ "|sil! nunmap <buffer> ]d"
|
||||||
endif
|
endif
|
||||||
@@ -56,7 +57,7 @@ endfunction
|
|||||||
function! s:allsteps()
|
function! s:allsteps()
|
||||||
let step_pattern = '\C^\s*\K\k*\>\s*(\=\s*\zs\S.\{-\}\ze\s*)\=\s*\%(do\|{\)\s*\%(|[^|]*|\s*\)\=\%($\|#\)'
|
let step_pattern = '\C^\s*\K\k*\>\s*(\=\s*\zs\S.\{-\}\ze\s*)\=\s*\%(do\|{\)\s*\%(|[^|]*|\s*\)\=\%($\|#\)'
|
||||||
let steps = []
|
let steps = []
|
||||||
for file in split(glob(b:cucumber_root.'/**/*.rb'),"\n")
|
for file in split(glob(b:cucumber_steps_glob),"\n")
|
||||||
let lines = readfile(file)
|
let lines = readfile(file)
|
||||||
let num = 0
|
let num = 0
|
||||||
for line in lines
|
for line in lines
|
||||||
@@ -145,4 +146,9 @@ function! CucumberComplete(findstart,base) abort
|
|||||||
return sort(steps)
|
return sort(steps)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
let &cpo = s:keepcpo
|
||||||
|
unlet s:keepcpo
|
||||||
|
|
||||||
" vim:set sts=2 sw=2:
|
" vim:set sts=2 sw=2:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
95
ftplugin/eelixir.vim
Normal file
95
ftplugin/eelixir.vim
Normal file
@@ -0,0 +1,95 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elixir') == -1
|
||||||
|
|
||||||
|
" Vim filetype plugin
|
||||||
|
" Language: Embedded Elixir
|
||||||
|
" URL: https://github.com/elixir-lang/vim-elixir
|
||||||
|
|
||||||
|
if exists("b:did_ftplugin")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:save_cpo = &cpo
|
||||||
|
set cpo-=C
|
||||||
|
|
||||||
|
let s:undo_ftplugin = ""
|
||||||
|
let s:browsefilter = "All Files (*.*)\t*.*\n"
|
||||||
|
let s:match_words = ""
|
||||||
|
|
||||||
|
if !exists("g:eelixir_default_subtype")
|
||||||
|
let g:eelixir_default_subtype = "html"
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists("b:eelixir_subtype")
|
||||||
|
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
||||||
|
let b:eelixir_subtype = matchstr(s:lines,'eelixir_subtype=\zs\w\+')
|
||||||
|
if b:eelixir_subtype == ''
|
||||||
|
let b:eelixir_subtype = matchstr(&filetype,'^eex\.\zs\w\+')
|
||||||
|
endif
|
||||||
|
if b:eelixir_subtype == ''
|
||||||
|
let b:eelixir_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.eex\|\.eelixir\)\+$','',''),'\.\zs\w\+$')
|
||||||
|
endif
|
||||||
|
if b:eelixir_subtype == 'ex'
|
||||||
|
let b:eelixir_subtype = 'elixir'
|
||||||
|
elseif b:eelixir_subtype == 'exs'
|
||||||
|
let b:eelixir_subtype = 'elixir'
|
||||||
|
elseif b:eelixir_subtype == 'yml'
|
||||||
|
let b:eelixir_subtype = 'yaml'
|
||||||
|
elseif b:eelixir_subtype == 'js'
|
||||||
|
let b:eelixir_subtype = 'javascript'
|
||||||
|
elseif b:eelixir_subtype == 'txt'
|
||||||
|
" Conventional; not a real file type
|
||||||
|
let b:eelixir_subtype = 'text'
|
||||||
|
elseif b:eelixir_subtype == ''
|
||||||
|
let b:eelixir_subtype = g:eelixir_default_subtype
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists("b:eelixir_subtype") && b:eelixir_subtype != ''
|
||||||
|
exe "runtime! ftplugin/".b:eelixir_subtype.".vim ftplugin/".b:eelixir_subtype."_*.vim ftplugin/".b:eelixir_subtype."/*.vim"
|
||||||
|
else
|
||||||
|
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||||
|
endif
|
||||||
|
unlet! b:did_ftplugin
|
||||||
|
|
||||||
|
" Override our defaults if these were set by an included ftplugin.
|
||||||
|
if exists("b:undo_ftplugin")
|
||||||
|
let s:undo_ftplugin = b:undo_ftplugin
|
||||||
|
unlet b:undo_ftplugin
|
||||||
|
endif
|
||||||
|
if exists("b:browsefilter")
|
||||||
|
let s:browsefilter = b:browsefilter
|
||||||
|
unlet b:browsefilter
|
||||||
|
endif
|
||||||
|
if exists("b:match_words")
|
||||||
|
let s:match_words = b:match_words
|
||||||
|
unlet b:match_words
|
||||||
|
endif
|
||||||
|
|
||||||
|
runtime! ftplugin/elixir.vim ftplugin/elixir_*.vim ftplugin/elixir/*.vim
|
||||||
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
" Combine the new set of values with those previously included.
|
||||||
|
if exists("b:undo_ftplugin")
|
||||||
|
let s:undo_ftplugin = b:undo_ftplugin . " | " . s:undo_ftplugin
|
||||||
|
endif
|
||||||
|
if exists ("b:browsefilter")
|
||||||
|
let s:browsefilter = substitute(b:browsefilter,'\cAll Files (\*\.\*)\t\*\.\*\n','','') . s:browsefilter
|
||||||
|
endif
|
||||||
|
if exists("b:match_words")
|
||||||
|
let s:match_words = b:match_words . ',' . s:match_words
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Load the combined list of match_words for matchit.vim
|
||||||
|
if exists("loaded_matchit")
|
||||||
|
let b:match_words = s:match_words
|
||||||
|
endif
|
||||||
|
|
||||||
|
setlocal comments=:<%#
|
||||||
|
setlocal commentstring=<%#\ %s\ %>
|
||||||
|
|
||||||
|
let b:undo_ftplugin = "setl cms< "
|
||||||
|
\ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
|
||||||
|
|
||||||
|
let &cpo = s:save_cpo
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elixir') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Vim filetype plugin
|
||||||
" Language: Elixir
|
" Language: Elixir
|
||||||
" Maintainer: Carlos Galdino <carloshsgaldino@gmail.com>
|
" Maintainer: Carlos Galdino <carloshsgaldino@gmail.com>
|
||||||
@@ -23,3 +25,5 @@ endif
|
|||||||
|
|
||||||
setlocal comments=:#
|
setlocal comments=:#
|
||||||
setlocal commentstring=#\ %s
|
setlocal commentstring=#\ %s
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
21
ftplugin/ember-script.vim
Normal file
21
ftplugin/ember-script.vim
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'emberscript') == -1
|
||||||
|
|
||||||
|
" Language: ember-script
|
||||||
|
" Maintainer: heartsentwined <heartsentwined@cogito-lab.com>
|
||||||
|
" URL: http://github.com/heartsentwined/vim-ember-script
|
||||||
|
" Version: 1.0.1
|
||||||
|
" Last Change: 2013 Apr 17
|
||||||
|
" License: GPL-3.0
|
||||||
|
|
||||||
|
setlocal tabstop=2
|
||||||
|
setlocal softtabstop=2
|
||||||
|
setlocal shiftwidth=2
|
||||||
|
setlocal smarttab
|
||||||
|
setlocal expandtab
|
||||||
|
setlocal smartindent
|
||||||
|
|
||||||
|
setlocal formatoptions-=t formatoptions+=croqlj
|
||||||
|
setlocal comments=:#
|
||||||
|
setlocal commentstring=#\ %s
|
||||||
|
|
||||||
|
endif
|
||||||
21
ftplugin/emblem.vim
Normal file
21
ftplugin/emblem.vim
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'emblem') == -1
|
||||||
|
|
||||||
|
" Language: emblem
|
||||||
|
" Maintainer: heartsentwined <heartsentwined@cogito-lab.com>
|
||||||
|
" URL: http://github.com/heartsentwined/vim-emblem
|
||||||
|
" Version: 1.2.0
|
||||||
|
" Last Change: 2013 Apr 22
|
||||||
|
" License: GPL-3.0
|
||||||
|
|
||||||
|
setlocal tabstop=2
|
||||||
|
setlocal softtabstop=2
|
||||||
|
setlocal shiftwidth=2
|
||||||
|
setlocal smarttab
|
||||||
|
setlocal expandtab
|
||||||
|
setlocal smartindent
|
||||||
|
|
||||||
|
setlocal formatoptions=q
|
||||||
|
setlocal comments=:/
|
||||||
|
setlocal commentstring=/\ %s
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,85 +0,0 @@
|
|||||||
" Vim ftplugin file
|
|
||||||
" Language: Erlang
|
|
||||||
" Author: Oscar Hellström <oscar@oscarh.net>
|
|
||||||
" Contributors: Ricardo Catalinas Jiménez <jimenezrick@gmail.com>
|
|
||||||
" Eduardo Lopez (http://github.com/tapichu)
|
|
||||||
" License: Vim license
|
|
||||||
" Version: 2012/11/25
|
|
||||||
|
|
||||||
if exists('b:did_ftplugin')
|
|
||||||
finish
|
|
||||||
else
|
|
||||||
let b:did_ftplugin = 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
if exists('s:did_function_definitions')
|
|
||||||
call s:SetErlangOptions()
|
|
||||||
finish
|
|
||||||
else
|
|
||||||
let s:did_function_definitions = 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
if !exists('g:erlang_keywordprg')
|
|
||||||
let g:erlang_keywordprg = 'erl -man'
|
|
||||||
endif
|
|
||||||
|
|
||||||
if !exists('g:erlang_folding')
|
|
||||||
let g:erlang_folding = 0
|
|
||||||
endif
|
|
||||||
|
|
||||||
let s:erlang_fun_begin = '^\(\a\w*\|[''][^'']*['']\)(.*$'
|
|
||||||
let s:erlang_fun_end = '^[^%]*\.\s*\(%.*\)\?$'
|
|
||||||
|
|
||||||
function s:SetErlangOptions()
|
|
||||||
compiler erlang
|
|
||||||
if version >= 700
|
|
||||||
setlocal omnifunc=erlang_complete#Complete
|
|
||||||
endif
|
|
||||||
|
|
||||||
if g:erlang_folding
|
|
||||||
setlocal foldmethod=expr
|
|
||||||
setlocal foldexpr=GetErlangFold(v:lnum)
|
|
||||||
setlocal foldtext=ErlangFoldText()
|
|
||||||
endif
|
|
||||||
|
|
||||||
setlocal comments=:%%%,:%%,:%
|
|
||||||
setlocal commentstring=%%s
|
|
||||||
setlocal formatoptions+=ro
|
|
||||||
setlocal suffixesadd=.erl
|
|
||||||
let libs = substitute(system('which erl'), '/bin/erl', '/lib/erlang/lib/**/src/', '')
|
|
||||||
execute 'setlocal path+=' . libs
|
|
||||||
let &l:keywordprg = g:erlang_keywordprg
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function GetErlangFold(lnum)
|
|
||||||
let lnum = a:lnum
|
|
||||||
let line = getline(lnum)
|
|
||||||
|
|
||||||
if line =~ s:erlang_fun_end
|
|
||||||
return '<1'
|
|
||||||
endif
|
|
||||||
|
|
||||||
if line =~ s:erlang_fun_begin && foldlevel(lnum - 1) == 1
|
|
||||||
return '1'
|
|
||||||
endif
|
|
||||||
|
|
||||||
if line =~ s:erlang_fun_begin
|
|
||||||
return '>1'
|
|
||||||
endif
|
|
||||||
|
|
||||||
return '='
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function ErlangFoldText()
|
|
||||||
let line = getline(v:foldstart)
|
|
||||||
let foldlen = v:foldend - v:foldstart + 1
|
|
||||||
let lines = ' ' . foldlen . ' lines: ' . substitute(line, "[ \t]*", '', '')
|
|
||||||
if foldlen < 10
|
|
||||||
let lines = ' ' . lines
|
|
||||||
endif
|
|
||||||
let retval = '+' . v:folddashes . lines
|
|
||||||
|
|
||||||
return retval
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
call s:SetErlangOptions()
|
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ruby') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Vim filetype plugin
|
||||||
" Language: eRuby
|
" Language: eRuby
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -27,7 +29,7 @@ elseif !exists("b:eruby_subtype")
|
|||||||
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
||||||
let b:eruby_subtype = matchstr(s:lines,'eruby_subtype=\zs\w\+')
|
let b:eruby_subtype = matchstr(s:lines,'eruby_subtype=\zs\w\+')
|
||||||
if b:eruby_subtype == ''
|
if b:eruby_subtype == ''
|
||||||
let b:eruby_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.erb\|\.eruby\|\.erubis\)\+$','',''),'\.\zs\w\+$')
|
let b:eruby_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.erb\|\.eruby\|\.erubis\)\+$','',''),'\.\zs\w\+\%(\ze+\w\+\)\=$')
|
||||||
endif
|
endif
|
||||||
if b:eruby_subtype == 'rhtml'
|
if b:eruby_subtype == 'rhtml'
|
||||||
let b:eruby_subtype = 'html'
|
let b:eruby_subtype = 'html'
|
||||||
@@ -100,3 +102,5 @@ let &cpo = s:save_cpo
|
|||||||
unlet s:save_cpo
|
unlet s:save_cpo
|
||||||
|
|
||||||
" vim: nowrap sw=2 sts=2 ts=8:
|
" vim: nowrap sw=2 sts=2 ts=8:
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'git') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Vim filetype plugin
|
||||||
" Language: generic git output
|
" Language: generic git output
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -36,3 +38,5 @@ endif
|
|||||||
|
|
||||||
setlocal includeexpr=substitute(v:fname,'^[^/]\\+/','','')
|
setlocal includeexpr=substitute(v:fname,'^[^/]\\+/','','')
|
||||||
let b:undo_ftplugin = "setl keywordprg< path< includeexpr<"
|
let b:undo_ftplugin = "setl keywordprg< path< includeexpr<"
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'git') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Vim filetype plugin
|
||||||
" Language: git commit file
|
" Language: git commit file
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -11,15 +13,8 @@ endif
|
|||||||
runtime! ftplugin/git.vim
|
runtime! ftplugin/git.vim
|
||||||
let b:did_ftplugin = 1
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
setlocal nomodeline tabstop=8 formatoptions-=croq formatoptions+=tl
|
setlocal nomodeline tabstop=8 formatoptions-=croq formatoptions+=tl textwidth=72
|
||||||
|
let b:undo_ftplugin = 'setl modeline< tabstop< formatoptions< tw<'
|
||||||
let b:undo_ftplugin = 'setl modeline< tabstop< formatoptions<'
|
|
||||||
|
|
||||||
if &textwidth == 0
|
|
||||||
" make sure that log messages play nice with git-log on standard terminals
|
|
||||||
setlocal textwidth=72
|
|
||||||
let b:undo_ftplugin .= "|setl tw<"
|
|
||||||
endif
|
|
||||||
|
|
||||||
if exists("g:no_gitcommit_commands") || v:version < 700
|
if exists("g:no_gitcommit_commands") || v:version < 700
|
||||||
finish
|
finish
|
||||||
@@ -65,3 +60,5 @@ function! s:gitdiffcached(bang,gitdir,...)
|
|||||||
nnoremap <buffer> <silent> q :q<CR>
|
nnoremap <buffer> <silent> q :q<CR>
|
||||||
setlocal buftype=nowrite nobuflisted noswapfile nomodifiable filetype=git
|
setlocal buftype=nowrite nobuflisted noswapfile nomodifiable filetype=git
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'git') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Vim filetype plugin
|
||||||
" Language: git config file
|
" Language: git config file
|
||||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
@@ -13,3 +15,5 @@ setlocal formatoptions-=t formatoptions+=croql
|
|||||||
setlocal comments=:#,:; commentstring=;\ %s
|
setlocal comments=:#,:; commentstring=;\ %s
|
||||||
|
|
||||||
let b:undo_ftplugin = "setl fo< com< cms<"
|
let b:undo_ftplugin = "setl fo< com< cms<"
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user