mirror of
https://github.com/sheerun/vim-polyglot.git
synced 2025-11-09 12:03:53 -05:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a59f644d49 | ||
|
|
33dd4b2741 | ||
|
|
d6866fcced | ||
|
|
7208e89a13 | ||
|
|
56a815be94 | ||
|
|
45273d44d4 | ||
|
|
e961fa8037 | ||
|
|
1b61c48d46 |
10
README.md
10
README.md
@@ -5,14 +5,14 @@
|
|||||||
|
|
||||||
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 scripts are loaded only on demand\*.
|
- It **won't affect your startup time**, as scripts are loaded only on demand\*.
|
||||||
- It **installs 50+ times faster** than 50+ packages it consist of.
|
- It **installs 50+ times faster** than 50+ packages it consist of.
|
||||||
- Solid syntax and indentation support. Only the best language packs.
|
- Solid syntax and indentation support. Only the best language packs.
|
||||||
- All unnecessary files are ignored (like enormous documentation from php support).
|
- All unnecessary files are ignored (like enormous documentation from php support).
|
||||||
- No support for esoteric languages, only most popular ones (modern too, like `slim`).
|
- No support for esoteric languages, only most popular ones (modern too, like `slim`).
|
||||||
- Each build is tested by automated vimrunner script on CI. Spee `spec` directory.
|
- 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.
|
\*To be completely honest, concatenated `ftdetect` script takes around `3ms` to load.
|
||||||
|
|
||||||
@@ -28,6 +28,7 @@ Optionally download one of the [releases](https://github.com/sheerun/vim-polyglo
|
|||||||
- [arduino](https://github.com/sudar/vim-arduino-syntax) (syntax, indent, ftdetect)
|
- [arduino](https://github.com/sudar/vim-arduino-syntax) (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)
|
||||||
|
- [c-extensions](https://github.com/kergoth/aftersyntaxc.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)
|
||||||
- [csv](https://github.com/chrisbra/csv.vim) (syntax, ftplugin, ftdetect)
|
- [csv](https://github.com/chrisbra/csv.vim) (syntax, ftplugin, ftdetect)
|
||||||
@@ -41,7 +42,8 @@ Optionally download one of the [releases](https://github.com/sheerun/vim-polyglo
|
|||||||
- [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/mustache/vim-mustache-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/travitch/hasksyn) (syntax, indent, ftplugin)
|
||||||
- [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)
|
||||||
- [jasmine](https://github.com/glanotte/vim-jasmine) (syntax, ftdetect)
|
- [jasmine](https://github.com/glanotte/vim-jasmine) (syntax, ftdetect)
|
||||||
- [javascript](https://github.com/pangloss/vim-javascript) (syntax, indent, ftdetect)
|
- [javascript](https://github.com/pangloss/vim-javascript) (syntax, indent, ftdetect)
|
||||||
@@ -49,6 +51,7 @@ Optionally download one of the [releases](https://github.com/sheerun/vim-polyglo
|
|||||||
- [jst](https://github.com/briancollins/vim-jst) (syntax, indent, ftdetect)
|
- [jst](https://github.com/briancollins/vim-jst) (syntax, indent, ftdetect)
|
||||||
- [latex](https://github.com/LaTeX-Box-Team/LaTeX-Box) (syntax, indent, ftplugin)
|
- [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)
|
||||||
@@ -67,6 +70,7 @@ Optionally download one of the [releases](https://github.com/sheerun/vim-polyglo
|
|||||||
- [scala](https://github.com/derekwyatt/vim-scala) (syntax, indent, ftplugin, ftdetect)
|
- [scala](https://github.com/derekwyatt/vim-scala) (syntax, indent, ftplugin, ftdetect)
|
||||||
- [slim](https://github.com/slim-template/vim-slim) (syntax, indent, ftdetect)
|
- [slim](https://github.com/slim-template/vim-slim) (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)
|
||||||
- [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/acustodioo/vim-tmux) (syntax, ftdetect)
|
||||||
- [tomdoc](https://github.com/duwanis/tomdoc.vim) (syntax)
|
- [tomdoc](https://github.com/duwanis/tomdoc.vim) (syntax)
|
||||||
|
|||||||
279
after/syntax/c.vim
Normal file
279
after/syntax/c.vim
Normal file
@@ -0,0 +1,279 @@
|
|||||||
|
" Vim syntax file
|
||||||
|
" Language: C Additions
|
||||||
|
" Maintainer: Mikhail Wolfson <mywolfson@gmail.com>
|
||||||
|
" URL: http://web.mit.edu/wolfsonm
|
||||||
|
" Last Change: 2010 Dec. 3
|
||||||
|
" Version: 0.4
|
||||||
|
"
|
||||||
|
" Changelog:
|
||||||
|
" 0.4 - updates and fixes to cDelimiter to fix break with foldmethod=syntax,
|
||||||
|
" entirely suggested and solved by Ivan Freitas
|
||||||
|
" <ivansichfreitas@gmail.com>
|
||||||
|
" 0.3 - updates and fixes to cUserFunctionPointer, thanks to
|
||||||
|
" Alexei <lxmzhv@gmail.com>
|
||||||
|
" 0.2 - change [] to operator
|
||||||
|
" 0.1 - initial upload, modification from vimscript#1201, Extended c.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 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
|
||||||
|
|
||||||
|
" 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 "[{}]"
|
||||||
|
|
||||||
|
|
||||||
|
" Booleans
|
||||||
|
syn keyword cBoolean true false TRUE FALSE
|
||||||
|
|
||||||
|
|
||||||
|
" Links
|
||||||
|
hi def link cFunction Function
|
||||||
|
hi def link cIdentifier Identifier
|
||||||
|
hi def link cDelimiter Delimiter
|
||||||
|
" foldmethod=syntax fix, courtesy of Ivan Freitas
|
||||||
|
hi def link cBraces Delimiter
|
||||||
|
hi def link cBoolean Boolean
|
||||||
|
|
||||||
@@ -2,15 +2,16 @@
|
|||||||
" 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: 26 Jan 2014
|
" Last Change: 21 Apr 2014
|
||||||
" Version: 0.2
|
" Version: 0.3
|
||||||
" Changelog:
|
" Changelog:
|
||||||
" 0.1 - initial version.
|
" 0.1 - initial version.
|
||||||
" 0.2 - C++14
|
" 0.2 - C++14
|
||||||
|
" 0.3 - Incorporate lastest changes from Mizuchi/STL-Syntax
|
||||||
"
|
"
|
||||||
" Additional Vim syntax highlighting for C++ (including C++11)
|
" Additional Vim syntax highlighting for C++ (including C++11)
|
||||||
"
|
"
|
||||||
" This file contains additional syntax highlighting that I use for my C++11
|
" This file contains additional syntax highlighting that I use for my 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.
|
||||||
@@ -54,6 +55,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
|
||||||
@@ -82,6 +87,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
|
||||||
@@ -157,12 +166,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
|
||||||
@@ -173,7 +179,6 @@ 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
|
||||||
@@ -314,7 +319,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
|
||||||
@@ -426,9 +431,9 @@ 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 strtof
|
||||||
syntax keyword cppSTLfunction strtold
|
|
||||||
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 strtoll
|
||||||
syntax keyword cppSTLfunction strtoul
|
syntax keyword cppSTLfunction strtoul
|
||||||
syntax keyword cppSTLfunction strxfrm
|
syntax keyword cppSTLfunction strxfrm
|
||||||
@@ -466,7 +471,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
|
||||||
@@ -543,12 +547,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
|
||||||
@@ -577,7 +587,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
|
||||||
@@ -598,6 +612,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
|
||||||
@@ -614,9 +629,12 @@ 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 time_t
|
||||||
@@ -631,11 +649,16 @@ 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
|
||||||
@@ -810,6 +833,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
|
||||||
@@ -834,6 +861,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
|
||||||
@@ -859,6 +892,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
|
||||||
@@ -867,6 +901,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
|
||||||
@@ -925,6 +961,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
|
||||||
@@ -1148,6 +1185,7 @@ if !exists("cpp_no_cpp11")
|
|||||||
|
|
||||||
" 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
|
||||||
@@ -1249,24 +1287,38 @@ if !exists("cpp_no_cpp11")
|
|||||||
syntax keyword cppSTLfunction wcstoimax
|
syntax keyword cppSTLfunction wcstoimax
|
||||||
syntax keyword cppSTLfunction wcstoumax
|
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
|
||||||
|
|
||||||
endif " C++11
|
endif " C++11
|
||||||
|
|
||||||
if !exists("cpp_no_cpp14")
|
if !exists("cpp_no_cpp14")
|
||||||
|
|
||||||
"optional
|
|
||||||
syntax keyword cppSTLtype optional
|
|
||||||
"syntax keyword cppSTLfunction value
|
|
||||||
syntax keyword cppSTLfunction value_or
|
|
||||||
syntax keyword cppSTLfunction make_optional
|
|
||||||
|
|
||||||
"dynarray
|
"dynarray
|
||||||
syntax keyword cppSTLtype dynarray
|
syntax keyword cppSTLtype dynarray
|
||||||
|
|
||||||
"thread
|
"thread
|
||||||
syntax keyword cppSTLtype shared_mutex
|
syntax keyword cppSTLtype shared_mutex
|
||||||
syntax keyword cppSTLtype shared_lock
|
syntax keyword cppSTLtype shared_lock
|
||||||
|
|
||||||
|
"memory
|
||||||
|
syntax keyword cppSTLfunction make_unique
|
||||||
endif " C++14
|
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")
|
||||||
if version < 508
|
if version < 508
|
||||||
@@ -1276,15 +1328,15 @@ 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
|
||||||
delcommand HiLink
|
delcommand HiLink
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
@@ -5,5 +5,5 @@ syn region texRefZone matchgroup=texStatement start="\\\(label\|\)c\(page\|\)re
|
|||||||
|
|
||||||
" adds support for listings package
|
" adds support for listings package
|
||||||
syn region texZone start="\\begin{lstlisting}" end="\\end{lstlisting}\|%stopzone\>"
|
syn region texZone start="\\begin{lstlisting}" end="\\end{lstlisting}\|%stopzone\>"
|
||||||
syn region texZone start="\\lstinputlisting" end="{\s*[a-zA-Z/.0-9_^]\+\s*}"
|
syn match texInputFile "\\lstinputlisting\s*\(\[.*\]\)\={.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt
|
||||||
syn match texInputFile "\\lstinline\s*\(\[.*\]\)\={.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt
|
syn match texZone "\\lstinline\s*\(\[.*\]\)\={.\{-}}"
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ function! go#complete#Package(ArgLead, CmdLine, CursorPos)
|
|||||||
if executable('go')
|
if executable('go')
|
||||||
let goroot = substitute(system('go env GOROOT'), '\n', '', 'g')
|
let goroot = substitute(system('go env GOROOT'), '\n', '', 'g')
|
||||||
if v:shell_error
|
if v:shell_error
|
||||||
echomsg '\'go env GOROOT\' failed'
|
echomsg '''go env GOROOT'' failed'
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
let goroot = $GOROOT
|
let goroot = $GOROOT
|
||||||
|
|||||||
@@ -7,9 +7,11 @@
|
|||||||
" 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
|
||||||
|
|
||||||
|
let b:html_omni_flavor = 'html5'
|
||||||
|
|
||||||
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
|
||||||
@@ -167,11 +169,11 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
"runtime! autoload/xml/xhtml10s.vim
|
"runtime! autoload/xml/xhtml10s.vim
|
||||||
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
|
||||||
@@ -469,9 +471,9 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
"runtime! autoload/xml/xhtml10s.vim
|
"runtime! autoload/xml/xhtml10s.vim
|
||||||
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
|
||||||
@@ -551,9 +553,9 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
if !exists("b:html_omni")
|
if !exists("b:html_omni")
|
||||||
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)
|
||||||
@@ -658,9 +660,9 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
|||||||
"runtime! autoload/xml/xhtml10s.vim
|
"runtime! autoload/xml/xhtml10s.vim
|
||||||
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 +765,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
|
||||||
|
|||||||
@@ -342,7 +342,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': []})
|
||||||
|
|||||||
4
build
4
build
@@ -69,6 +69,7 @@ PACKS="
|
|||||||
arduino:sudar/vim-arduino-syntax
|
arduino:sudar/vim-arduino-syntax
|
||||||
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
|
||||||
|
c-extensions:kergoth/aftersyntaxc.vim
|
||||||
clojure:guns/vim-clojure-static
|
clojure:guns/vim-clojure-static
|
||||||
coffee-script:kchmck/vim-coffee-script
|
coffee-script:kchmck/vim-coffee-script
|
||||||
csv:chrisbra/csv.vim
|
csv:chrisbra/csv.vim
|
||||||
@@ -82,6 +83,7 @@ PACKS="
|
|||||||
haml:tpope/vim-haml
|
haml:tpope/vim-haml
|
||||||
handlebars:mustache/vim-mustache-handlebars
|
handlebars:mustache/vim-mustache-handlebars
|
||||||
haskell:travitch/hasksyn
|
haskell:travitch/hasksyn
|
||||||
|
haxe:yaymukund/vim-haxe
|
||||||
html5:othree/html5.vim
|
html5:othree/html5.vim
|
||||||
jade:digitaltoad/vim-jade
|
jade:digitaltoad/vim-jade
|
||||||
jasmine:glanotte/vim-jasmine
|
jasmine:glanotte/vim-jasmine
|
||||||
@@ -90,6 +92,7 @@ PACKS="
|
|||||||
jst:briancollins/vim-jst
|
jst:briancollins/vim-jst
|
||||||
latex:LaTeX-Box-Team/LaTeX-Box
|
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
|
||||||
@@ -108,6 +111,7 @@ PACKS="
|
|||||||
scala:derekwyatt/vim-scala
|
scala:derekwyatt/vim-scala
|
||||||
slim:slim-template/vim-slim
|
slim:slim-template/vim-slim
|
||||||
stylus:wavded/vim-stylus
|
stylus:wavded/vim-stylus
|
||||||
|
systemd:kurayama/systemd-vim-syntax
|
||||||
textile:timcharper/textile.vim
|
textile:timcharper/textile.vim
|
||||||
tmux:acustodioo/vim-tmux
|
tmux:acustodioo/vim-tmux
|
||||||
tomdoc:duwanis/tomdoc.vim
|
tomdoc:duwanis/tomdoc.vim
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ au BufReadPost *.go call s:gofiletype_post()
|
|||||||
autocmd BufNewFile,BufRead *.haml,*.hamlbars,*.hamlc setf haml
|
autocmd BufNewFile,BufRead *.haml,*.hamlbars,*.hamlc setf haml
|
||||||
autocmd BufNewFile,BufRead *.sass setf sass
|
autocmd BufNewFile,BufRead *.sass setf sass
|
||||||
autocmd BufNewFile,BufRead *.scss setf scss
|
autocmd BufNewFile,BufRead *.scss setf scss
|
||||||
|
autocmd BufNewFile,BufRead *.hx setf haxe
|
||||||
autocmd BufNewFile,BufReadPost *.jade set filetype=jade
|
autocmd BufNewFile,BufReadPost *.jade set filetype=jade
|
||||||
autocmd BufNewFile,BufRead *Spec.js,*_spec.js set filetype=jasmine.javascript syntax=jasmine
|
autocmd BufNewFile,BufRead *Spec.js,*_spec.js set filetype=jasmine.javascript syntax=jasmine
|
||||||
au BufNewFile,BufRead *.js setf javascript
|
au BufNewFile,BufRead *.js setf javascript
|
||||||
@@ -71,6 +72,18 @@ au BufNewFile,BufRead *.ejs set filetype=jst
|
|||||||
au BufNewFile,BufRead *.jst set filetype=jst
|
au BufNewFile,BufRead *.jst set filetype=jst
|
||||||
au BufNewFile,BufRead *.hamljs set filetype=jst
|
au BufNewFile,BufRead *.hamljs set filetype=jst
|
||||||
autocmd BufNewFile,BufRead *.less setf less
|
autocmd BufNewFile,BufRead *.less setf less
|
||||||
|
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 |
|
||||||
autocmd BufNewFile,BufRead *.markdown,*.md,*.mdown,*.mkd,*.mkdn
|
autocmd BufNewFile,BufRead *.markdown,*.md,*.mdown,*.mkd,*.mkdn
|
||||||
\ if &ft =~# '^\%(conf\|modula2\)$' |
|
\ if &ft =~# '^\%(conf\|modula2\)$' |
|
||||||
\ set ft=markdown |
|
\ set ft=markdown |
|
||||||
@@ -127,6 +140,14 @@ au BufRead,BufNewFile * call s:DetectScala()
|
|||||||
autocmd BufNewFile,BufRead *.slim set filetype=slim
|
autocmd BufNewFile,BufRead *.slim set filetype=slim
|
||||||
autocmd BufNewFile,BufReadPost *.styl set filetype=stylus
|
autocmd BufNewFile,BufReadPost *.styl set filetype=stylus
|
||||||
autocmd BufNewFile,BufReadPost *.stylus set filetype=stylus
|
autocmd BufNewFile,BufReadPost *.stylus set filetype=stylus
|
||||||
|
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
|
||||||
au BufRead,BufNewFile *.textile set filetype=textile
|
au BufRead,BufNewFile *.textile set filetype=textile
|
||||||
autocmd BufNewFile,BufRead .tmux.conf*,tmux.conf* setf tmux
|
autocmd BufNewFile,BufRead .tmux.conf*,tmux.conf* setf tmux
|
||||||
autocmd BufNewFile,BufRead *.toml set filetype=toml
|
autocmd BufNewFile,BufRead *.toml set filetype=toml
|
||||||
|
|||||||
@@ -483,7 +483,7 @@ fu! <sid>GetDelimiter(first, last) "{{{3
|
|||||||
if !exists("b:csv_fixed_width_cols")
|
if !exists("b:csv_fixed_width_cols")
|
||||||
let _cur = getpos('.')
|
let _cur = getpos('.')
|
||||||
let _s = @/
|
let _s = @/
|
||||||
let Delim= {0: ';', 1: ',', 2: '|', 3: ' '}
|
let Delim= {0: ';', 1: ',', 2: '|', 3: ' ', 4: '\^'}
|
||||||
let temp = {}
|
let temp = {}
|
||||||
" :silent :s does not work with lazyredraw
|
" :silent :s does not work with lazyredraw
|
||||||
let _lz = &lz
|
let _lz = &lz
|
||||||
@@ -525,12 +525,16 @@ fu! <sid>WColumn(...) "{{{3
|
|||||||
let fields=(split(line[0:end],b:col.'\zs'))
|
let fields=(split(line[0:end],b:col.'\zs'))
|
||||||
let ret=len(fields)
|
let ret=len(fields)
|
||||||
if exists("a:1") && a:1 > 0
|
if exists("a:1") && a:1 > 0
|
||||||
" bang attribute
|
" bang attribute: Try to get the column name
|
||||||
let head = split(getline(1),b:col.'\zs')
|
let head = split(getline(1),b:col.'\zs')
|
||||||
" remove preceeding whitespace
|
" remove preceeding whitespace
|
||||||
let ret = substitute(head[ret-1], '^\s\+', '', '')
|
if len(head) < ret
|
||||||
" remove delimiter
|
call <sid>Warn("Header has no field ". ret)
|
||||||
let ret = substitute(ret, b:delimiter. '$', '', '')
|
else
|
||||||
|
let ret = substitute(head[ret-1], '^\s\+', '', '')
|
||||||
|
" remove delimiter
|
||||||
|
let ret = substitute(ret, b:delimiter. '$', '', '')
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
let temp=getpos('.')[2]
|
let temp=getpos('.')[2]
|
||||||
@@ -1002,7 +1006,8 @@ fu! <sid>MoveCol(forward, line, ...) "{{{3
|
|||||||
elseif a:forward < 0
|
elseif a:forward < 0
|
||||||
if colnr > 0 || cpos == spos
|
if colnr > 0 || cpos == spos
|
||||||
call search('.\ze'.pat, 'bWe')
|
call search('.\ze'.pat, 'bWe')
|
||||||
while getpos('.')[2] == cpos
|
let stime=localtime()
|
||||||
|
while getpos('.')[2] == cpos && <sid>Timeout(stime) " make sure loop terminates
|
||||||
" cursor didn't move, move cursor one cell to the left
|
" cursor didn't move, move cursor one cell to the left
|
||||||
norm! h
|
norm! h
|
||||||
if colnr > 0
|
if colnr > 0
|
||||||
@@ -1208,8 +1213,10 @@ fu! <sid>AddColumn(start, stop, ...) range "{{{3
|
|||||||
if exists("a:1")
|
if exists("a:1")
|
||||||
if a:1 == '$' || a:1 >= max
|
if a:1 == '$' || a:1 >= max
|
||||||
let pos = max
|
let pos = max
|
||||||
elseif a:1 <= 0
|
elseif a:1 < 0
|
||||||
let pos = col
|
let pos = col
|
||||||
|
else
|
||||||
|
let pos = a:1
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
let pos = col
|
let pos = col
|
||||||
@@ -1217,7 +1224,7 @@ fu! <sid>AddColumn(start, stop, ...) range "{{{3
|
|||||||
let cnt=(exists("a:2") && a:2 > 0 ? a:2 : 1)
|
let cnt=(exists("a:2") && a:2 > 0 ? a:2 : 1)
|
||||||
|
|
||||||
" translate 1 based columns into zero based list index
|
" translate 1 based columns into zero based list index
|
||||||
let pos -= 1
|
"let pos -= 1
|
||||||
let col -= 1
|
let col -= 1
|
||||||
|
|
||||||
if pos == 0
|
if pos == 0
|
||||||
@@ -1772,7 +1779,7 @@ endfu
|
|||||||
|
|
||||||
fu! <sid>NewRecord(line1, line2, count) "{{{3
|
fu! <sid>NewRecord(line1, line2, count) "{{{3
|
||||||
if a:count =~ "\D"
|
if a:count =~ "\D"
|
||||||
call <sid>WarningMsg("Invalid count specified")
|
call <sid>Warn("Invalid count specified")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -1848,20 +1855,13 @@ fu! <sid>CSVMappings() "{{{3
|
|||||||
call <sid>Map('noremap', 'E', ':<C-U>call <SID>MoveCol(-1, line("."))<CR>')
|
call <sid>Map('noremap', 'E', ':<C-U>call <SID>MoveCol(-1, line("."))<CR>')
|
||||||
call <sid>Map('noremap', '<C-Left>', ':<C-U>call <SID>MoveCol(-1, line("."))<CR>')
|
call <sid>Map('noremap', '<C-Left>', ':<C-U>call <SID>MoveCol(-1, line("."))<CR>')
|
||||||
call <sid>Map('noremap', 'H', ':<C-U>call <SID>MoveCol(-1, line("."), 1)<CR>')
|
call <sid>Map('noremap', 'H', ':<C-U>call <SID>MoveCol(-1, line("."), 1)<CR>')
|
||||||
call <sid>Map('noremap', 'K', ':<C-U>call <SID>MoveCol(0,
|
call <sid>Map('noremap', 'K', ':<C-U>call <SID>MoveCol(0, line(".")-v:count1)<CR>')
|
||||||
\ line(".")-v:count1)<CR>')
|
call <sid>Map('noremap', '<Up>', ':<C-U>call <SID>MoveCol(0, line(".")-v:count1)<CR>')
|
||||||
call <sid>Map('noremap', '<Up>', ':<C-U>call <SID>MoveCol(0,
|
call <sid>Map('noremap', 'J', ':<C-U>call <SID>MoveCol(0, line(".")+v:count1)<CR>')
|
||||||
\ line(".")-v:count1)<CR>')
|
call <sid>Map('noremap', '<Down>', ':<C-U>call <SID>MoveCol(0, line(".")+v:count1)<CR>')
|
||||||
call <sid>Map('noremap', 'J', ':<C-U>call <SID>MoveCol(0,
|
call <sid>Map('nnoremap', '<CR>', ':<C-U>call <SID>PrepareFolding(1, 1)<CR>')
|
||||||
\ line(".")+v:count1)<CR>')
|
call <sid>Map('nnoremap', '<Space>', ':<C-U>call <SID>PrepareFolding(1, 0)<CR>')
|
||||||
call <sid>Map('noremap', '<Down>', ':<C-U>call <SID>MoveCol(0,
|
call <sid>Map('nnoremap', '<BS>', ':<C-U>call <SID>PrepareFolding(0, 1)<CR>')
|
||||||
\ line(".")+v:count1)<CR>')
|
|
||||||
call <sid>Map('nnoremap', '<CR>', ':<C-U>call <SID>PrepareFolding(1,
|
|
||||||
\ 1)<CR>')
|
|
||||||
call <sid>Map('nnoremap', '<Space>', ':<C-U>call <SID>PrepareFolding(1,
|
|
||||||
\ 0)<CR>')
|
|
||||||
call <sid>Map('nnoremap', '<BS>', ':<C-U>call <SID>PrepareFolding(0,
|
|
||||||
\ 1)<CR>')
|
|
||||||
call <sid>Map('imap', '<CR>', '<sid>ColumnMode()', 'expr')
|
call <sid>Map('imap', '<CR>', '<sid>ColumnMode()', 'expr')
|
||||||
" Text object: Field
|
" Text object: Field
|
||||||
call <sid>Map('vnoremap', 'if', ':<C-U>call <sid>MoveOver(0)<CR>')
|
call <sid>Map('vnoremap', 'if', ':<C-U>call <sid>MoveOver(0)<CR>')
|
||||||
@@ -1937,9 +1937,6 @@ fu! <sid>CommandDefinitions() "{{{3
|
|||||||
\ '-nargs=1 -complete=custom,<sid>CompleteColumnNr')
|
\ '-nargs=1 -complete=custom,<sid>CompleteColumnNr')
|
||||||
call <sid>LocalCmd('Transpose', ':call <sid>Transpose(<line1>, <line2>)',
|
call <sid>LocalCmd('Transpose', ':call <sid>Transpose(<line1>, <line2>)',
|
||||||
\ '-range=%')
|
\ '-range=%')
|
||||||
call <sid>LocalCmd('Tabularize', ':call <sid>Tabularize(<bang>0,<line1>,<line2>)',
|
|
||||||
\ '-bang -range=%')
|
|
||||||
" Alias for :Tabularize, might be taken by Tabular plugin
|
|
||||||
call <sid>LocalCmd('CSVTabularize', ':call <sid>Tabularize(<bang>0,<line1>,<line2>)',
|
call <sid>LocalCmd('CSVTabularize', ':call <sid>Tabularize(<bang>0,<line1>,<line2>)',
|
||||||
\ '-bang -range=%')
|
\ '-bang -range=%')
|
||||||
call <sid>LocalCmd("AddColumn",
|
call <sid>LocalCmd("AddColumn",
|
||||||
@@ -2391,6 +2388,9 @@ fu! <sid>ColumnMode() "{{{3
|
|||||||
return "\<CR>"
|
return "\<CR>"
|
||||||
endif
|
endif
|
||||||
endfu
|
endfu
|
||||||
|
fu! <sid>Timeout(start) "{{{3
|
||||||
|
return localtime()-a:start < 2
|
||||||
|
endfu
|
||||||
|
|
||||||
" Global functions "{{{2
|
" Global functions "{{{2
|
||||||
fu! csv#EvalColumn(nr, func, first, last) range "{{{3
|
fu! csv#EvalColumn(nr, func, first, last) range "{{{3
|
||||||
|
|||||||
@@ -9,9 +9,11 @@ if exists("b:did_ftplugin")
|
|||||||
endif
|
endif
|
||||||
let b:did_ftplugin = 1
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
setlocal formatoptions-=t
|
||||||
|
|
||||||
setlocal comments=s1:/*,mb:*,ex:*/,://
|
setlocal comments=s1:/*,mb:*,ex:*/,://
|
||||||
setlocal commentstring=//\ %s
|
setlocal commentstring=//\ %s
|
||||||
|
|
||||||
let b:undo_ftplugin = "setl com< cms<"
|
let b:undo_ftplugin = "setl fo< com< cms<"
|
||||||
|
|
||||||
" vim:ts=4:sw=4:et
|
" vim:ts=4:sw=4:et
|
||||||
|
|||||||
7
ftplugin/html.vim
Normal file
7
ftplugin/html.vim
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
" Maintainer: othree <othree@gmail.com>
|
||||||
|
" URL: http://github.com/othree/html5.vim
|
||||||
|
" Last Change: 2014-05-02
|
||||||
|
" License: MIT
|
||||||
|
" Changes: Add - to keyword
|
||||||
|
|
||||||
|
setlocal iskeyword+=-
|
||||||
@@ -97,6 +97,10 @@ endfunction
|
|||||||
|
|
||||||
" {{{2 TOCFindMatch
|
" {{{2 TOCFindMatch
|
||||||
function! s:TOCFindMatch(strsearch,duplicates,files)
|
function! s:TOCFindMatch(strsearch,duplicates,files)
|
||||||
|
if len(a:files) == 0
|
||||||
|
echoerr "Could not find: " . a:strsearch
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
call s:TOCOpenBuf(a:files[0])
|
call s:TOCOpenBuf(a:files[0])
|
||||||
let dups = a:duplicates
|
let dups = a:duplicates
|
||||||
@@ -116,7 +120,6 @@ function! s:TOCFindMatch(strsearch,duplicates,files)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
call s:TOCFindMatch(a:strsearch,dups,a:files[1:])
|
call s:TOCFindMatch(a:strsearch,dups,a:files[1:])
|
||||||
|
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" {{{2 TOCFoldLevel
|
" {{{2 TOCFoldLevel
|
||||||
|
|||||||
61
ftplugin/liquid.vim
Normal file
61
ftplugin/liquid.vim
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
" Vim filetype plugin
|
||||||
|
" Language: Liquid
|
||||||
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
|
" Last Change: 2010 May 21
|
||||||
|
|
||||||
|
if exists('b:did_ftplugin')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:liquid_default_subtype')
|
||||||
|
let g:liquid_default_subtype = 'html'
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('b:liquid_subtype')
|
||||||
|
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
||||||
|
let b:liquid_subtype = matchstr(s:lines,'liquid_subtype=\zs\w\+')
|
||||||
|
if b:liquid_subtype == ''
|
||||||
|
let b:liquid_subtype = matchstr(&filetype,'^liquid\.\zs\w\+')
|
||||||
|
endif
|
||||||
|
if b:liquid_subtype == ''
|
||||||
|
let b:liquid_subtype = matchstr(substitute(expand('%:t'),'\c\%(\.liquid\)\+$','',''),'\.\zs\w\+$')
|
||||||
|
endif
|
||||||
|
if b:liquid_subtype == ''
|
||||||
|
let b:liquid_subtype = g:liquid_default_subtype
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists('b:liquid_subtype') && b:liquid_subtype != ''
|
||||||
|
exe 'runtime! ftplugin/'.b:liquid_subtype.'.vim ftplugin/'.b:liquid_subtype.'_*.vim ftplugin/'.b:liquid_subtype.'/*.vim'
|
||||||
|
else
|
||||||
|
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||||
|
endif
|
||||||
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
if exists('b:undo_ftplugin')
|
||||||
|
let b:undo_ftplugin .= '|'
|
||||||
|
else
|
||||||
|
let b:undo_ftplugin = ''
|
||||||
|
endif
|
||||||
|
if exists('b:browsefilter')
|
||||||
|
let b:browsefilter = "\n".b:browsefilter
|
||||||
|
else
|
||||||
|
let b:browsefilter = ''
|
||||||
|
endif
|
||||||
|
if exists('b:match_words')
|
||||||
|
let b:match_words .= ','
|
||||||
|
elseif exists('loaded_matchit')
|
||||||
|
let b:match_words = ''
|
||||||
|
endif
|
||||||
|
|
||||||
|
if has('gui_win32')
|
||||||
|
let b:browsefilter="Liquid Files (*.liquid)\t*.liquid" . b:browsefilter
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists('loaded_matchit')
|
||||||
|
let b:match_words .= '\<\%(if\w*\|unless\|case\)\>:\<\%(elsif\|else\|when\)\>:\<end\%(if\w*\|unless\|case\)\>,\<\%(for\|tablerow\)\>:\%({%\s*\)\@<=empty\>:\<end\%(for\|tablerow\)\>,<\(capture\|comment\|highlight\)\>:\<end\1\>'
|
||||||
|
endif
|
||||||
|
|
||||||
|
setlocal commentstring={%\ comment\ %}%s{%\ endcomment\ %}
|
||||||
|
|
||||||
|
let b:undo_ftplugin .= 'setl cms< | unlet! b:browsefilter b:match_words'
|
||||||
@@ -59,10 +59,18 @@ xnoremap <silent> <buffer> ]] :<C-U>call <SID>sectionmovement('{{','' ,'v',v:cou
|
|||||||
|
|
||||||
" Operator pending mappings
|
" Operator pending mappings
|
||||||
|
|
||||||
onoremap <silent> <buffer> ie :<C-U>call <SID>wrap_inside()<CR>
|
" Operators are available by default. Set `let g:mustache_operators = 0` in
|
||||||
onoremap <silent> <buffer> ae :<C-U>call <SID>wrap_around()<CR>
|
" your .vimrc to disable them.
|
||||||
xnoremap <silent> <buffer> ie :<C-U>call <SID>wrap_inside()<CR>
|
if ! exists("g:mustache_operators")
|
||||||
xnoremap <silent> <buffer> ae :<C-U>call <SID>wrap_around()<CR>
|
let g:mustache_operators = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists("g:mustache_operators") && g:mustache_operators
|
||||||
|
onoremap <silent> <buffer> ie :<C-U>call <SID>wrap_inside()<CR>
|
||||||
|
onoremap <silent> <buffer> ae :<C-U>call <SID>wrap_around()<CR>
|
||||||
|
xnoremap <silent> <buffer> ie :<C-U>call <SID>wrap_inside()<CR>
|
||||||
|
xnoremap <silent> <buffer> ae :<C-U>call <SID>wrap_around()<CR>
|
||||||
|
endif
|
||||||
|
|
||||||
function! s:wrap_around()
|
function! s:wrap_around()
|
||||||
" If the cursor is at the end of the tag element, move back
|
" If the cursor is at the end of the tag element, move back
|
||||||
|
|||||||
@@ -8,11 +8,6 @@
|
|||||||
" License: Same as Vim
|
" License: Same as Vim
|
||||||
" Last Change: %%RELEASE_DATE%%
|
" Last Change: %%RELEASE_DATE%%
|
||||||
|
|
||||||
" TODO: Indenting after multibyte characters is broken:
|
|
||||||
" (let [Δ (if foo
|
|
||||||
" bar ; Indent error
|
|
||||||
" baz)])
|
|
||||||
|
|
||||||
if exists("b:did_indent")
|
if exists("b:did_indent")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
@@ -99,7 +94,7 @@ if exists("*searchpairpos")
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:is_paren()", stopat)
|
let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:is_paren()", stopat)
|
||||||
return [pos[0], virtcol(pos)]
|
return [pos[0], col(pos)]
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:clojure_check_for_string_worker()
|
function! s:clojure_check_for_string_worker()
|
||||||
@@ -306,15 +301,23 @@ if exists("*searchpairpos")
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
call search('\v\S', 'bW')
|
call search('\v\S', 'bW')
|
||||||
return [line('.'), virtcol('.') + 1]
|
return [line('.'), col('.') + 1]
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! GetClojureIndent()
|
function! GetClojureIndent()
|
||||||
let lnum = line('.')
|
let lnum = line('.')
|
||||||
|
let orig_lnum = lnum
|
||||||
|
let orig_col = col('.')
|
||||||
let [opening_lnum, indent] = s:clojure_indent_pos()
|
let [opening_lnum, indent] = s:clojure_indent_pos()
|
||||||
|
|
||||||
|
" Account for multibyte characters
|
||||||
|
if opening_lnum > 0
|
||||||
|
let indent -= indent - virtcol([opening_lnum, indent])
|
||||||
|
endif
|
||||||
|
|
||||||
" Return if there are no previous lines to inherit from
|
" Return if there are no previous lines to inherit from
|
||||||
if opening_lnum < 1 || opening_lnum >= lnum - 1
|
if opening_lnum < 1 || opening_lnum >= lnum - 1
|
||||||
|
call cursor(orig_lnum, orig_col)
|
||||||
return indent
|
return indent
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -349,11 +352,13 @@ if exists("*searchpairpos")
|
|||||||
" Check if this is part of a multiline string
|
" Check if this is part of a multiline string
|
||||||
call cursor(lnum, 1)
|
call cursor(lnum, 1)
|
||||||
if s:syn_id_name() !~? '\vstring|regex'
|
if s:syn_id_name() !~? '\vstring|regex'
|
||||||
|
call cursor(orig_lnum, orig_col)
|
||||||
return indent(lnum)
|
return indent(lnum)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endwhile
|
endwhile
|
||||||
|
|
||||||
|
call cursor(orig_lnum, orig_col)
|
||||||
return indent
|
return indent
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,18 @@ if exists("*GoIndent")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" The shiftwidth() function is relatively new.
|
||||||
|
" Don't require it to exist.
|
||||||
|
if exists('*shiftwidth')
|
||||||
|
func s:sw()
|
||||||
|
return shiftwidth()
|
||||||
|
endfunc
|
||||||
|
else
|
||||||
|
func s:sw()
|
||||||
|
return &shiftwidth
|
||||||
|
endfunc
|
||||||
|
endif
|
||||||
|
|
||||||
function! GoIndent(lnum)
|
function! GoIndent(lnum)
|
||||||
let prevlnum = prevnonblank(a:lnum-1)
|
let prevlnum = prevnonblank(a:lnum-1)
|
||||||
if prevlnum == 0
|
if prevlnum == 0
|
||||||
@@ -40,17 +52,17 @@ function! GoIndent(lnum)
|
|||||||
|
|
||||||
if prevl =~ '[({]\s*$'
|
if prevl =~ '[({]\s*$'
|
||||||
" previous line opened a block
|
" previous line opened a block
|
||||||
let ind += &sw
|
let ind += s:sw()
|
||||||
endif
|
endif
|
||||||
if prevl =~# '^\s*\(case .*\|default\):$'
|
if prevl =~# '^\s*\(case .*\|default\):$'
|
||||||
" previous line is part of a switch statement
|
" previous line is part of a switch statement
|
||||||
let ind += &sw
|
let ind += s:sw()
|
||||||
endif
|
endif
|
||||||
" TODO: handle if the previous line is a label.
|
" TODO: handle if the previous line is a label.
|
||||||
|
|
||||||
if thisl =~ '^\s*[)}]'
|
if thisl =~ '^\s*[)}]'
|
||||||
" this line closed a block
|
" this line closed a block
|
||||||
let ind -= &sw
|
let ind -= s:sw()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Colons are tricky.
|
" Colons are tricky.
|
||||||
@@ -58,7 +70,7 @@ function! GoIndent(lnum)
|
|||||||
" We ignore trying to deal with jump labels because (a) they're rare, and
|
" We ignore trying to deal with jump labels because (a) they're rare, and
|
||||||
" (b) they're hard to disambiguate from a composite literal key.
|
" (b) they're hard to disambiguate from a composite literal key.
|
||||||
if thisl =~# '^\s*\(case .*\|default\):$'
|
if thisl =~# '^\s*\(case .*\|default\):$'
|
||||||
let ind -= &sw
|
let ind -= s:sw()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
return ind
|
return ind
|
||||||
|
|||||||
62
indent/liquid.vim
Normal file
62
indent/liquid.vim
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
" Vim indent file
|
||||||
|
" Language: Liquid
|
||||||
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
|
" Last Change: 2010 May 21
|
||||||
|
|
||||||
|
if exists('b:did_indent')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
set indentexpr=
|
||||||
|
if exists('b:liquid_subtype')
|
||||||
|
exe 'runtime! indent/'.b:liquid_subtype.'.vim'
|
||||||
|
else
|
||||||
|
runtime! indent/html.vim
|
||||||
|
endif
|
||||||
|
unlet! b:did_indent
|
||||||
|
|
||||||
|
if &l:indentexpr == ''
|
||||||
|
if &l:cindent
|
||||||
|
let &l:indentexpr = 'cindent(v:lnum)'
|
||||||
|
else
|
||||||
|
let &l:indentexpr = 'indent(prevnonblank(v:lnum-1))'
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
let b:liquid_subtype_indentexpr = &l:indentexpr
|
||||||
|
|
||||||
|
let b:did_indent = 1
|
||||||
|
|
||||||
|
setlocal indentexpr=GetLiquidIndent()
|
||||||
|
setlocal indentkeys=o,O,*<Return>,<>>,{,},0),0],o,O,!^F,=end,=endif,=endunless,=endifchanged,=endcase,=endfor,=endtablerow,=endcapture,=else,=elsif,=when,=empty
|
||||||
|
|
||||||
|
" Only define the function once.
|
||||||
|
if exists('*GetLiquidIndent')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
function! s:count(string,pattern)
|
||||||
|
let string = substitute(a:string,'\C'.a:pattern,"\n",'g')
|
||||||
|
return strlen(substitute(string,"[^\n]",'','g'))
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! GetLiquidIndent(...)
|
||||||
|
if a:0 && a:1 == '.'
|
||||||
|
let v:lnum = line('.')
|
||||||
|
elseif a:0 && a:1 =~ '^\d'
|
||||||
|
let v:lnum = a:1
|
||||||
|
endif
|
||||||
|
let vcol = col('.')
|
||||||
|
call cursor(v:lnum,1)
|
||||||
|
exe "let ind = ".b:liquid_subtype_indentexpr
|
||||||
|
let lnum = prevnonblank(v:lnum-1)
|
||||||
|
let line = getline(lnum)
|
||||||
|
let cline = getline(v:lnum)
|
||||||
|
let line = substitute(line,'\C^\%(\s*{%\s*end\w*\s*%}\)\+','','')
|
||||||
|
let line .= matchstr(cline,'\C^\%(\s*{%\s*end\w*\s*%}\)\+')
|
||||||
|
let cline = substitute(cline,'\C^\%(\s*{%\s*end\w*\s*%}\)\+','','')
|
||||||
|
let ind += &sw * s:count(line,'{%\s*\%(if\|elsif\|else\|unless\|ifchanged\|case\|when\|for\|empty\|tablerow\|capture\)\>')
|
||||||
|
let ind -= &sw * s:count(line,'{%\s*end\%(if\|unless\|ifchanged\|case\|for\|tablerow\|capture\)\>')
|
||||||
|
let ind -= &sw * s:count(cline,'{%\s*\%(elsif\|else\|when\|empty\)\>')
|
||||||
|
let ind -= &sw * s:count(cline,'{%\s*end\w*$')
|
||||||
|
return ind
|
||||||
|
endfunction
|
||||||
@@ -13,7 +13,7 @@ setlocal cindent
|
|||||||
setlocal cinoptions=L0,(0,Ws,JN,j1
|
setlocal cinoptions=L0,(0,Ws,JN,j1
|
||||||
setlocal cinkeys=0{,0},!^F,o,O,0[,0]
|
setlocal cinkeys=0{,0},!^F,o,O,0[,0]
|
||||||
" Don't think cinwords will actually do anything at all... never mind
|
" Don't think cinwords will actually do anything at all... never mind
|
||||||
setlocal cinwords=do,for,if,else,while,loop,impl,mod,unsafe,trait,struct,enum,fn,extern
|
setlocal cinwords=for,if,else,while,loop,impl,mod,unsafe,trait,struct,enum,fn,extern
|
||||||
|
|
||||||
" Some preliminary settings
|
" Some preliminary settings
|
||||||
setlocal nolisp " Make sure lisp indenting doesn't supersede us
|
setlocal nolisp " Make sure lisp indenting doesn't supersede us
|
||||||
@@ -30,7 +30,7 @@ endif
|
|||||||
|
|
||||||
" Come here when loading the script the first time.
|
" Come here when loading the script the first time.
|
||||||
|
|
||||||
function s:get_line_trimmed(lnum)
|
function! s:get_line_trimmed(lnum)
|
||||||
" Get the line and remove a trailing comment.
|
" Get the line and remove a trailing comment.
|
||||||
" Use syntax highlighting attributes when possible.
|
" Use syntax highlighting attributes when possible.
|
||||||
" NOTE: this is not accurate; /* */ or a line continuation could trick it
|
" NOTE: this is not accurate; /* */ or a line continuation could trick it
|
||||||
@@ -40,12 +40,12 @@ function s:get_line_trimmed(lnum)
|
|||||||
" If the last character in the line is a comment, do a binary search for
|
" If the last character in the line is a comment, do a binary search for
|
||||||
" the start of the comment. synID() is slow, a linear search would take
|
" the start of the comment. synID() is slow, a linear search would take
|
||||||
" too long on a long line.
|
" too long on a long line.
|
||||||
if synIDattr(synID(a:lnum, line_len, 1), "name") =~ "Comment\|Todo"
|
if synIDattr(synID(a:lnum, line_len, 1), "name") =~ 'Comment\|Todo'
|
||||||
let min = 1
|
let min = 1
|
||||||
let max = line_len
|
let max = line_len
|
||||||
while min < max
|
while min < max
|
||||||
let col = (min + max) / 2
|
let col = (min + max) / 2
|
||||||
if synIDattr(synID(a:lnum, col, 1), "name") =~ "Comment\|Todo"
|
if synIDattr(synID(a:lnum, col, 1), "name") =~ 'Comment\|Todo'
|
||||||
let max = col
|
let max = col
|
||||||
else
|
else
|
||||||
let min = col + 1
|
let min = col + 1
|
||||||
@@ -61,6 +61,20 @@ function s:get_line_trimmed(lnum)
|
|||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
function! s:is_string_comment(lnum, col)
|
||||||
|
if has('syntax_items')
|
||||||
|
for id in synstack(a:lnum, a:col)
|
||||||
|
let synname = synIDattr(id, "name")
|
||||||
|
if synname == "rustString" || synname =~ "^rustComment"
|
||||||
|
return 1
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
else
|
||||||
|
" without syntax, let's not even try
|
||||||
|
return 0
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
function GetRustIndent(lnum)
|
function GetRustIndent(lnum)
|
||||||
|
|
||||||
" Starting assumption: cindent (called at the end) will do it right
|
" Starting assumption: cindent (called at the end) will do it right
|
||||||
@@ -73,10 +87,10 @@ function GetRustIndent(lnum)
|
|||||||
if synname == "rustString"
|
if synname == "rustString"
|
||||||
" If the start of the line is in a string, don't change the indent
|
" If the start of the line is in a string, don't change the indent
|
||||||
return -1
|
return -1
|
||||||
elseif synname =~ "\\(Comment\\|Todo\\)"
|
elseif synname =~ '\(Comment\|Todo\)'
|
||||||
\ && line !~ "^\\s*/\\*" " not /* opening line
|
\ && line !~ '^\s*/\*' " not /* opening line
|
||||||
if synname =~ "CommentML" " multi-line
|
if synname =~ "CommentML" " multi-line
|
||||||
if line !~ "^\\s*\\*" && getline(a:lnum - 1) =~ "^\\s*/\\*"
|
if line !~ '^\s*\*' && getline(a:lnum - 1) =~ '^\s*/\*'
|
||||||
" This is (hopefully) the line after a /*, and it has no
|
" This is (hopefully) the line after a /*, and it has no
|
||||||
" leader, so the correct indentation is that of the
|
" leader, so the correct indentation is that of the
|
||||||
" previous line.
|
" previous line.
|
||||||
@@ -101,10 +115,16 @@ function GetRustIndent(lnum)
|
|||||||
" };
|
" };
|
||||||
|
|
||||||
" Search backwards for the previous non-empty line.
|
" Search backwards for the previous non-empty line.
|
||||||
let prevline = s:get_line_trimmed(prevnonblank(a:lnum - 1))
|
let prevlinenum = prevnonblank(a:lnum - 1)
|
||||||
|
let prevline = s:get_line_trimmed(prevlinenum)
|
||||||
|
while prevlinenum > 1 && prevline !~ '[^[:blank:]]'
|
||||||
|
let prevlinenum = prevnonblank(prevlinenum - 1)
|
||||||
|
let prevline = s:get_line_trimmed(prevlinenum)
|
||||||
|
endwhile
|
||||||
if prevline[len(prevline) - 1] == ","
|
if prevline[len(prevline) - 1] == ","
|
||||||
\ && s:get_line_trimmed(a:lnum) !~ "^\\s*[\\[\\]{}]"
|
\ && s:get_line_trimmed(a:lnum) !~ '^\s*[\[\]{}]'
|
||||||
\ && prevline !~ "^\\s*fn\\s"
|
\ && prevline !~ '^\s*fn\s'
|
||||||
|
\ && prevline !~ '([^()]\+,$'
|
||||||
" Oh ho! The previous line ended in a comma! I bet cindent will try to
|
" Oh ho! The previous line ended in a comma! I bet cindent will try to
|
||||||
" take this too far... For now, let's normally use the previous line's
|
" take this too far... For now, let's normally use the previous line's
|
||||||
" indent.
|
" indent.
|
||||||
@@ -119,6 +139,16 @@ function GetRustIndent(lnum)
|
|||||||
" fn foo(baz: Baz,
|
" fn foo(baz: Baz,
|
||||||
" baz: Baz) // <-- cindent gets this right by itself
|
" baz: Baz) // <-- cindent gets this right by itself
|
||||||
"
|
"
|
||||||
|
" Another case is similar to the previous, except calling a function
|
||||||
|
" instead of defining it, or any conditional expression that leaves
|
||||||
|
" an open paren:
|
||||||
|
"
|
||||||
|
" foo(baz,
|
||||||
|
" baz);
|
||||||
|
"
|
||||||
|
" if baz && (foo ||
|
||||||
|
" bar) {
|
||||||
|
"
|
||||||
" There are probably other cases where we don't want to do this as
|
" There are probably other cases where we don't want to do this as
|
||||||
" well. Add them as needed.
|
" well. Add them as needed.
|
||||||
return GetRustIndent(a:lnum - 1)
|
return GetRustIndent(a:lnum - 1)
|
||||||
@@ -141,8 +171,10 @@ function GetRustIndent(lnum)
|
|||||||
" column zero)
|
" column zero)
|
||||||
|
|
||||||
call cursor(a:lnum, 1)
|
call cursor(a:lnum, 1)
|
||||||
if searchpair('{\|(', '', '}\|)', 'nbW') == 0
|
if searchpair('{\|(', '', '}\|)', 'nbW',
|
||||||
if searchpair('\[', '', '\]', 'nbW') == 0
|
\ 's:is_string_comment(line("."), col("."))') == 0
|
||||||
|
if searchpair('\[', '', '\]', 'nbW',
|
||||||
|
\ 's:is_string_comment(line("."), col("."))') == 0
|
||||||
" Global scope, should be zero
|
" Global scope, should be zero
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -4,18 +4,21 @@
|
|||||||
" Modifications by : Derek Wyatt
|
" Modifications by : Derek Wyatt
|
||||||
" Last Change: 2011 Mar 19 (Derek Wyatt)
|
" Last Change: 2011 Mar 19 (Derek Wyatt)
|
||||||
|
|
||||||
"if exists("b:did_indent")
|
if exists("b:did_indent")
|
||||||
" finish
|
finish
|
||||||
"endif
|
endif
|
||||||
"let b:did_indent = 1
|
let b:did_indent = 1
|
||||||
|
|
||||||
setlocal indentexpr=GetScalaIndent()
|
setlocal indentexpr=GetScalaIndent()
|
||||||
setlocal indentkeys=0{,0},0),!^F,<>>,o,O,e,=case,<CR>
|
setlocal indentkeys=0{,0},0),!^F,<>>,o,O,e,=case,<CR>
|
||||||
setlocal autoindent
|
setlocal autoindent
|
||||||
|
setlocal softtabstop=2
|
||||||
|
setlocal tabstop=2
|
||||||
|
setlocal shiftwidth=2
|
||||||
|
|
||||||
"if exists("*GetScalaIndent")
|
if exists("*GetScalaIndent")
|
||||||
" finish
|
finish
|
||||||
"endif
|
endif
|
||||||
|
|
||||||
let s:defMatcher = '\%(\%(private\|protected\)\%(\[[^\]]*\]\)\?\s\+\|abstract\s\+\|override\s\+\)*\<def\>'
|
let s:defMatcher = '\%(\%(private\|protected\)\%(\[[^\]]*\]\)\?\s\+\|abstract\s\+\|override\s\+\)*\<def\>'
|
||||||
let s:funcNameMatcher = '\w\+'
|
let s:funcNameMatcher = '\w\+'
|
||||||
|
|||||||
@@ -379,8 +379,13 @@ endif
|
|||||||
syn cluster cLabelGroup contains=cUserLabel
|
syn cluster cLabelGroup contains=cUserLabel
|
||||||
syn match cUserCont display "^\s*\I\i*\s*:$" contains=@cLabelGroup
|
syn match cUserCont display "^\s*\I\i*\s*:$" contains=@cLabelGroup
|
||||||
syn match cUserCont display ";\s*\I\i*\s*:$" contains=@cLabelGroup
|
syn match cUserCont display ";\s*\I\i*\s*:$" contains=@cLabelGroup
|
||||||
syn match cUserCont display "^\s*\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
|
if s:ft ==# 'cpp'
|
||||||
syn match cUserCont display ";\s*\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
|
syn match cUserCont display "^\s*\%(class\|struct\|enum\)\@!\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
|
||||||
|
syn match cUserCont display ";\s*\%(class\|struct\|enum\)\@!\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
|
||||||
|
else
|
||||||
|
syn match cUserCont display "^\s*\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
|
||||||
|
syn match cUserCont display ";\s*\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
|
||||||
|
endif
|
||||||
|
|
||||||
syn match cUserLabel display "\I\i*" contained
|
syn match cUserLabel display "\I\i*" contained
|
||||||
|
|
||||||
|
|||||||
@@ -105,7 +105,7 @@ syntax match clojureMeta "\^"
|
|||||||
syntax match clojureDeref "@"
|
syntax match clojureDeref "@"
|
||||||
syntax match clojureDispatch "\v#[\^'=<_]?"
|
syntax match clojureDispatch "\v#[\^'=<_]?"
|
||||||
|
|
||||||
" Clojure permits no more than 20 params.
|
" Clojure permits no more than 20 anonymous params.
|
||||||
syntax match clojureAnonArg "%\(20\|1\d\|[1-9]\|&\)\?"
|
syntax match clojureAnonArg "%\(20\|1\d\|[1-9]\|&\)\?"
|
||||||
|
|
||||||
syntax match clojureRegexpEscape "\v\\%([\\tnrfae.()\[\]{}^$*?+]|c\u|0[0-3]?\o{1,2}|x%(\x{2}|\{\x{1,6}\})|u\x{4})" contained display
|
syntax match clojureRegexpEscape "\v\\%([\\tnrfae.()\[\]{}^$*?+]|c\u|0[0-3]?\o{1,2}|x%(\x{2}|\{\x{1,6}\})|u\x{4})" contained display
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
" Language: C++
|
" Language: C++
|
||||||
" Current Maintainer: vim-jp (https://github.com/vim-jp/cpp-vim)
|
" Current Maintainer: vim-jp (https://github.com/vim-jp/cpp-vim)
|
||||||
" Previous Maintainer: Ken Shan <ccshan@post.harvard.edu>
|
" Previous Maintainer: Ken Shan <ccshan@post.harvard.edu>
|
||||||
" Last Change: 2012 Jun 14
|
" Last Change: 2014 May 13
|
||||||
|
|
||||||
" For version 5.x: Clear all syntax items
|
" For version 5.x: Clear all syntax items
|
||||||
" For version 6.x: Quit when a syntax file was already loaded
|
" For version 6.x: Quit when a syntax file was already loaded
|
||||||
@@ -39,9 +39,7 @@ if !exists("cpp_no_cpp11")
|
|||||||
syn keyword cppExceptions noexcept
|
syn keyword cppExceptions noexcept
|
||||||
syn keyword cppStorageClass constexpr decltype
|
syn keyword cppStorageClass constexpr decltype
|
||||||
syn keyword cppConstant nullptr
|
syn keyword cppConstant nullptr
|
||||||
" A C++11 raw-string literal. It tries to follow 2.14.5 and 2.14.5.2 of the
|
syn region cppRawString matchgroup=cppRawDelimiter start=+\%(u8\|[uLU]\)\=R"\z([[:alnum:]_{}[\]#<>%:;.?*\+\-/\^&|~!=,"']\{,16}\)(+ end=+)\z1"+ contains=@Spell
|
||||||
" standard.
|
|
||||||
syn region cppRawString matchgroup=cppRawDelim start=+\%(u8\=\|[LU]\)\=R"\z(\%([ ()\\\d9-\d12]\@![\d0-\d127]\)\{,16}\)(+ end=+)\z1"+ contains=@Spell
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" The minimum and maximum operators in GNU C++
|
" The minimum and maximum operators in GNU C++
|
||||||
@@ -65,7 +63,7 @@ if version >= 508 || !exists("did_cpp_syntax_inits")
|
|||||||
HiLink cppStructure Structure
|
HiLink cppStructure Structure
|
||||||
HiLink cppBoolean Boolean
|
HiLink cppBoolean Boolean
|
||||||
HiLink cppConstant Constant
|
HiLink cppConstant Constant
|
||||||
HiLink cppRawDelim cFormat
|
HiLink cppRawDelimiter Delimiter
|
||||||
HiLink cppRawString String
|
HiLink cppRawString String
|
||||||
delcommand HiLink
|
delcommand HiLink
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -16,31 +16,40 @@ syn match elixirComment '#.*' contains=elixirTodo
|
|||||||
syn keyword elixirTodo FIXME NOTE TODO OPTIMIZE XXX HACK contained
|
syn keyword elixirTodo FIXME NOTE TODO OPTIMIZE XXX HACK contained
|
||||||
|
|
||||||
syn keyword elixirKeyword is_atom is_binary is_bitstring is_boolean is_float is_function is_integer is_list is_number is_pid is_port is_record is_reference is_tuple is_exception
|
syn keyword elixirKeyword is_atom is_binary is_bitstring is_boolean is_float is_function is_integer is_list is_number is_pid is_port is_record is_reference is_tuple is_exception
|
||||||
syn keyword elixirKeyword case cond bc lc inlist inbits if unless try receive
|
syn keyword elixirKeyword case cond for if unless try receive send
|
||||||
syn keyword elixirKeyword exit raise throw after rescue catch else do end
|
syn keyword elixirKeyword exit raise throw after rescue catch else do end
|
||||||
syn keyword elixirKeyword quote unquote super
|
syn keyword elixirKeyword quote unquote super
|
||||||
syn match elixirKeyword '\<\%(->\)\>\s*'
|
|
||||||
|
|
||||||
syn keyword elixirInclude import require alias use
|
syn keyword elixirInclude import require alias use
|
||||||
|
|
||||||
syn keyword elixirOperator and not or when xor in
|
syn match elixirId '\<[_a-zA-Z]\w*[!?]\?\>'
|
||||||
syn match elixirOperator '%=\|\*=\|\*\*=\|+=\|-=\|\^=\|||='
|
|
||||||
syn match elixirOperator "\%(<=>\|<\%(<\|=\)\@!\|>\%(<\|=\|>\)\@!\|<=\|>=\|===\|==\|=\~\|!=\|!\~\|\s?[ \t]\@=\)"
|
|
||||||
syn match elixirOperator "!+[ \t]\@=\|&&\|||\|\^\|\*\|+\|-\|/"
|
|
||||||
syn match elixirOperator "|\|++\|--\|\*\*\|\/\/\|\\\\\|<-\|<>\|<<\|>>\|=\|\.\|::"
|
|
||||||
|
|
||||||
syn match elixirSymbol '\(:\)\@<!:\%([a-zA-Z_]\w*\%([?!]\|=[>=]\@!\)\?\|<>\|===\?\|>=\?\|<=\?\)'
|
|
||||||
syn match elixirSymbol '\(:\)\@<!:\%(<=>\|&&\?\|%\(()\|\[\]\|{}\)\|++\?\|--\?\|||\?\|!\|//\|[%&`/|]\)'
|
|
||||||
syn match elixirSymbol "\%([a-zA-Z_]\w*\([?!]\)\?\):\(:\)\@!"
|
|
||||||
|
|
||||||
syn keyword elixirName nil
|
|
||||||
syn match elixirName '\<[A-Z]\w*\>'
|
|
||||||
|
|
||||||
|
" This unfortunately also matches function names in function calls
|
||||||
syn match elixirUnusedVariable '\<_\w*\>'
|
syn match elixirUnusedVariable '\<_\w*\>'
|
||||||
|
|
||||||
syn keyword elixirBoolean true false
|
syn keyword elixirOperator and not or when xor in
|
||||||
|
syn match elixirOperator '!==\|!=\|!'
|
||||||
|
syn match elixirOperator '=\~\|===\|==\|='
|
||||||
|
syn match elixirOperator '<<<\|<<\|<=\|<-\|<'
|
||||||
|
syn match elixirOperator '>>>\|>>\|>=\|>'
|
||||||
|
syn match elixirOperator '->\|--\|-'
|
||||||
|
syn match elixirOperator '++\|+'
|
||||||
|
syn match elixirOperator '&&&\|&&\|&'
|
||||||
|
syn match elixirOperator '|||\|||\||>\||'
|
||||||
|
syn match elixirOperator '\.\.\|\.'
|
||||||
|
syn match elixirOperator "\^\^\^\|\^"
|
||||||
|
syn match elixirOperator '\\\\\|::\|\*\|/\|\~\~\~\|@'
|
||||||
|
|
||||||
syn match elixirVariable '@[a-zA-Z_]\w*\|&\d'
|
syn match elixirAtom '\(:\)\@<!:\%([a-zA-Z_]\w*\%([?!]\|=[>=]\@!\)\?\|<>\|===\?\|>=\?\|<=\?\)'
|
||||||
|
syn match elixirAtom '\(:\)\@<!:\%(<=>\|&&\?\|%\(()\|\[\]\|{}\)\|++\?\|--\?\|||\?\|!\|//\|[%&`/|]\)'
|
||||||
|
syn match elixirAtom "\%([a-zA-Z_]\w*[?!]\?\):\(:\)\@!"
|
||||||
|
|
||||||
|
syn match elixirAlias '\<[A-Z]\w*\(\.[A-Z]\w*\)*\>'
|
||||||
|
|
||||||
|
syn keyword elixirBoolean true false nil
|
||||||
|
|
||||||
|
syn match elixirVariable '@[a-z]\w*'
|
||||||
|
syn match elixirVariable '&\d\+'
|
||||||
|
|
||||||
syn keyword elixirPseudoVariable __FILE__ __DIR__ __MODULE__ __ENV__ __CALLER__
|
syn keyword elixirPseudoVariable __FILE__ __DIR__ __MODULE__ __ENV__ __CALLER__
|
||||||
|
|
||||||
@@ -68,36 +77,34 @@ syn region elixirDocStringStart matchgroup=elixirDocString start=+'''+ end=+$+ o
|
|||||||
syn region elixirDocString start=+\z("""\)+ end=+^\s*\zs\z1+ contains=elixirDocStringStart,elixirTodo,elixirInterpolation fold keepend
|
syn region elixirDocString start=+\z("""\)+ end=+^\s*\zs\z1+ contains=elixirDocStringStart,elixirTodo,elixirInterpolation fold keepend
|
||||||
syn region elixirDocString start=+\z('''\)+ end=+^\s*\zs\z1+ contains=elixirDocStringStart,elixirTodo,elixirInterpolation fold keepend
|
syn region elixirDocString start=+\z('''\)+ end=+^\s*\zs\z1+ contains=elixirDocStringStart,elixirTodo,elixirInterpolation fold keepend
|
||||||
|
|
||||||
syn match elixirSymbolInterpolated ':\("\)\@=' contains=elixirString
|
syn match elixirAtomInterpolated ':\("\)\@=' contains=elixirString
|
||||||
syn match elixirString "\(\w\)\@<!?\%(\\\(x\d{1,2}\|\h{1,2}\h\@!\>\|0[0-7]{0,2}[0-7]\@!\>\|[^x0MC]\)\|(\\[MC]-)+\w\|[^\s\\]\)"
|
syn match elixirString "\(\w\)\@<!?\%(\\\(x\d{1,2}\|\h{1,2}\h\@!\>\|0[0-7]{0,2}[0-7]\@!\>\|[^x0MC]\)\|(\\[MC]-)+\w\|[^\s\\]\)"
|
||||||
|
|
||||||
syn region elixirBlock matchgroup=elixirKeyword start="\<do\>\(:\)\@!" end="\<end\>" contains=ALLBUT,@elixirNotTop fold
|
syn region elixirBlock matchgroup=elixirKeyword start="\<do\>\(:\)\@!" end="\<end\>" contains=ALLBUT,@elixirNotTop fold
|
||||||
syn region elixirAnonymousFunction matchgroup=elixirKeyword start="\<fn\>" end="\<end\>" contains=ALLBUT,@elixirNotTop fold
|
syn region elixirAnonymousFunction matchgroup=elixirKeyword start="\<fn\>" end="\<end\>" contains=ALLBUT,@elixirNotTop fold
|
||||||
|
|
||||||
syn region elixirArguments start="(" end=")" contained contains=elixirOperator,elixirSymbol,elixirPseudoVariable,elixirName,elixirBoolean,elixirVariable,elixirUnusedVariable,elixirNumber,elixirDocString,elixirSymbolInterpolated,elixirRegex,elixirString,elixirDelimiter
|
syn region elixirArguments start="(" end=")" contained contains=elixirOperator,elixirAtom,elixirPseudoVariable,elixirAlias,elixirBoolean,elixirVariable,elixirUnusedVariable,elixirNumber,elixirDocString,elixirAtomInterpolated,elixirRegex,elixirString,elixirDelimiter
|
||||||
|
|
||||||
syn match elixirDelimEscape "\\[(<{\[)>}\]]" transparent display contained contains=NONE
|
syn match elixirDelimEscape "\\[(<{\[)>}\]/\"'|]" transparent display contained contains=NONE
|
||||||
|
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~]\z([~`!@#$%^&*_\-+|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\u\z(/\|\"\|'\||\)" end="\z1" skip="\\\\\|\\\z1" contains=elixirDelimEscape fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][SCRW]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\u{" end="}" skip="\\\\\|\\}" contains=elixirDelimEscape fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][SCRW]\={" end="}" skip="\\\\\|\\}" contains=elixirDelimEscape fold
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\u<" end=">" skip="\\\\\|\\>" contains=elixirDelimEscape fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][SCRW]\=<" end=">" skip="\\\\\|\\>" contains=elixirDelimEscape fold
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\u\[" end="\]" skip="\\\\\|\\\]" contains=elixirDelimEscape fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][SCRW]\=\[" end="\]" skip="\\\\\|\\\]" contains=elixirDelimEscape fold
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\u(" end=")" skip="\\\\\|\\)" contains=elixirDelimEscape fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][SCRW]\=(" end=")" skip="\\\\\|\\)" contains=elixirDelimEscape fold
|
|
||||||
|
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][scrw]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\l\z(/\|\"\|'\||\)" end="\z1" skip="\\\\\|\\\z1" fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][scrw]{" end="}" skip="\\\\\|\\}" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\l{" end="}" skip="\\\\\|\\}" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][scrw]<" end=">" skip="\\\\\|\\>" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\l<" end=">" skip="\\\\\|\\>" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][scrw]\[" end="\]" skip="\\\\\|\\\]" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\l\[" end="\]" skip="\\\\\|\\\]" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start="[%~][scrw](" end=")" skip="\\\\\|\\)" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
syn region elixirSigil matchgroup=elixirDelimiter start="\~\l(" end=")" skip="\\\\\|\\)" fold contains=@elixirStringContained,elixirRegexEscapePunctuation
|
||||||
|
|
||||||
" Sigils surrounded with docString
|
" Sigils surrounded with docString
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start=+[%~][SCRWscrw]\z("""\)+ end=+^\s*\zs\z1+ skip=+\\"+ fold
|
syn region elixirSigil matchgroup=elixirDelimiter start=+\~\a\z("""\)+ end=+^\s*\zs\z1+ skip=+\\"+ fold
|
||||||
syn region elixirSigil matchgroup=elixirDelimiter start=+[%~][SCRWscrw]\z('''\)+ end=+^\s*\zs\z1+ skip=+\\'+ fold
|
syn region elixirSigil matchgroup=elixirDelimiter start=+\~\a\z('''\)+ end=+^\s*\zs\z1+ skip=+\\'+ fold
|
||||||
|
|
||||||
" Defines
|
" Defines
|
||||||
syn keyword elixirDefine def nextgroup=elixirFunctionDeclaration skipwhite skipnl
|
syn keyword elixirDefine def nextgroup=elixirFunctionDeclaration skipwhite skipnl
|
||||||
syn keyword elixirDefine def nextgroup=elixirFunctionDeclaration skipwhite skipnl
|
|
||||||
syn keyword elixirPrivateDefine defp nextgroup=elixirFunctionDeclaration skipwhite skipnl
|
syn keyword elixirPrivateDefine defp nextgroup=elixirFunctionDeclaration skipwhite skipnl
|
||||||
syn keyword elixirModuleDefine defmodule nextgroup=elixirModuleDeclaration skipwhite skipnl
|
syn keyword elixirModuleDefine defmodule nextgroup=elixirModuleDeclaration skipwhite skipnl
|
||||||
syn keyword elixirProtocolDefine defprotocol nextgroup=elixirProtocolDeclaration skipwhite skipnl
|
syn keyword elixirProtocolDefine defprotocol nextgroup=elixirProtocolDeclaration skipwhite skipnl
|
||||||
@@ -110,21 +117,23 @@ syn keyword elixirDelegateDefine defdelegate nextgroup=elixirDelegateDec
|
|||||||
syn keyword elixirOverridableDefine defoverridable nextgroup=elixirOverridableDeclaration skipwhite skipnl
|
syn keyword elixirOverridableDefine defoverridable nextgroup=elixirOverridableDeclaration skipwhite skipnl
|
||||||
syn keyword elixirExceptionDefine defexception nextgroup=elixirExceptionDeclaration skipwhite skipnl
|
syn keyword elixirExceptionDefine defexception nextgroup=elixirExceptionDeclaration skipwhite skipnl
|
||||||
syn keyword elixirCallbackDefine defcallback nextgroup=elixirCallbackDeclaration skipwhite skipnl
|
syn keyword elixirCallbackDefine defcallback nextgroup=elixirCallbackDeclaration skipwhite skipnl
|
||||||
|
syn keyword elixirStructDefine defstruct nextgroup=elixirStructDeclaration skipwhite skipnl
|
||||||
|
|
||||||
" Declarations
|
" Declarations
|
||||||
syn match elixirModuleDeclaration "[^[:space:];#<]\+" contained contains=elixirName nextgroup=elixirBlock skipwhite skipnl
|
syn match elixirModuleDeclaration "[^[:space:];#<]\+" contained contains=elixirAlias nextgroup=elixirBlock skipwhite skipnl
|
||||||
syn match elixirFunctionDeclaration "[^[:space:];#<,()\[\]]\+" contained nextgroup=elixirArguments skipwhite skipnl
|
syn match elixirFunctionDeclaration "[^[:space:];#<,()\[\]]\+" contained nextgroup=elixirArguments skipwhite skipnl
|
||||||
syn match elixirProtocolDeclaration "[^[:space:];#<]\+" contained contains=elixirName skipwhite skipnl
|
syn match elixirProtocolDeclaration "[^[:space:];#<]\+" contained contains=elixirAlias skipwhite skipnl
|
||||||
syn match elixirImplDeclaration "[^[:space:];#<]\+" contained contains=elixirName skipwhite skipnl
|
syn match elixirImplDeclaration "[^[:space:];#<]\+" contained contains=elixirAlias skipwhite skipnl
|
||||||
syn match elixirRecordDeclaration "[^[:space:];#<]\+" contained contains=elixirName,elixirSymbol skipwhite skipnl
|
syn match elixirRecordDeclaration "[^[:space:];#<]\+" contained contains=elixirAlias,elixirAtom skipwhite skipnl
|
||||||
syn match elixirMacroDeclaration "[^[:space:];#<,()\[\]]\+" contained nextgroup=elixirArguments skipwhite skipnl
|
syn match elixirMacroDeclaration "[^[:space:];#<,()\[\]]\+" contained nextgroup=elixirArguments skipwhite skipnl
|
||||||
syn match elixirDelegateDeclaration "[^[:space:];#<,()\[\]]\+" contained contains=elixirFunctionDeclaration skipwhite skipnl
|
syn match elixirDelegateDeclaration "[^[:space:];#<,()\[\]]\+" contained contains=elixirFunctionDeclaration skipwhite skipnl
|
||||||
syn region elixirDelegateDeclaration start='\[' end='\]' contained contains=elixirFunctionDeclaration skipwhite skipnl
|
syn region elixirDelegateDeclaration start='\[' end='\]' contained contains=elixirFunctionDeclaration skipwhite skipnl
|
||||||
syn match elixirOverridableDeclaration "[^[:space:];#<]\+" contained contains=elixirName skipwhite skipnl
|
syn match elixirOverridableDeclaration "[^[:space:];#<]\+" contained contains=elixirAlias skipwhite skipnl
|
||||||
syn match elixirExceptionDeclaration "[^[:space:];#<]\+" contained contains=elixirName skipwhite skipnl
|
syn match elixirExceptionDeclaration "[^[:space:];#<]\+" contained contains=elixirAlias skipwhite skipnl
|
||||||
syn match elixirCallbackDeclaration "[^[:space:];#<,()\[\]]\+" contained contains=elixirFunctionDeclaration skipwhite skipnl
|
syn match elixirCallbackDeclaration "[^[:space:];#<,()\[\]]\+" contained contains=elixirFunctionDeclaration skipwhite skipnl
|
||||||
|
syn match elixirStructDeclaration "[^[:space:];#<]\+" contained nextgroup=elixirArguments skipwhite skipnl
|
||||||
|
|
||||||
syn cluster elixirDeclaration contains=elixirFunctionDeclaration,elixirModuleDeclaration,elixirProtocolDeclaration,elixirImplDeclaration,elixirRecordDeclaration,elixirMacroDeclaration,elixirDelegateDeclaration,elixirOverridableDeclaration,elixirExceptionDeclaration,elixirCallbackDeclaration
|
syn cluster elixirDeclaration contains=elixirFunctionDeclaration,elixirModuleDeclaration,elixirProtocolDeclaration,elixirImplDeclaration,elixirRecordDeclaration,elixirMacroDeclaration,elixirDelegateDeclaration,elixirOverridableDeclaration,elixirExceptionDeclaration,elixirCallbackDeclaration,elixirStructDeclaration
|
||||||
|
|
||||||
hi def link elixirDefine Define
|
hi def link elixirDefine Define
|
||||||
hi def link elixirPrivateDefine Define
|
hi def link elixirPrivateDefine Define
|
||||||
@@ -139,6 +148,7 @@ hi def link elixirDelegateDefine Define
|
|||||||
hi def link elixirOverridableDefine Define
|
hi def link elixirOverridableDefine Define
|
||||||
hi def link elixirExceptionDefine Define
|
hi def link elixirExceptionDefine Define
|
||||||
hi def link elixirCallbackDefine Define
|
hi def link elixirCallbackDefine Define
|
||||||
|
hi def link elixirStructDefine Define
|
||||||
hi def link elixirFunctionDeclaration Function
|
hi def link elixirFunctionDeclaration Function
|
||||||
hi def link elixirMacroDeclaration Macro
|
hi def link elixirMacroDeclaration Macro
|
||||||
hi def link elixirInclude Include
|
hi def link elixirInclude Include
|
||||||
@@ -146,15 +156,15 @@ hi def link elixirComment Comment
|
|||||||
hi def link elixirTodo Todo
|
hi def link elixirTodo Todo
|
||||||
hi def link elixirKeyword Keyword
|
hi def link elixirKeyword Keyword
|
||||||
hi def link elixirOperator Operator
|
hi def link elixirOperator Operator
|
||||||
hi def link elixirSymbol Constant
|
hi def link elixirAtom Constant
|
||||||
hi def link elixirPseudoVariable Constant
|
hi def link elixirPseudoVariable Constant
|
||||||
hi def link elixirName Type
|
hi def link elixirAlias Type
|
||||||
hi def link elixirBoolean Boolean
|
hi def link elixirBoolean Boolean
|
||||||
hi def link elixirVariable Identifier
|
hi def link elixirVariable Identifier
|
||||||
hi def link elixirUnusedVariable Comment
|
hi def link elixirUnusedVariable Comment
|
||||||
hi def link elixirNumber Number
|
hi def link elixirNumber Number
|
||||||
hi def link elixirDocString String
|
hi def link elixirDocString String
|
||||||
hi def link elixirSymbolInterpolated elixirSymbol
|
hi def link elixirAtomInterpolated elixirAtom
|
||||||
hi def link elixirRegex elixirString
|
hi def link elixirRegex elixirString
|
||||||
hi def link elixirRegexEscape elixirSpecial
|
hi def link elixirRegexEscape elixirSpecial
|
||||||
hi def link elixirRegexEscapePunctuation elixirSpecial
|
hi def link elixirRegexEscapePunctuation elixirSpecial
|
||||||
|
|||||||
427
syntax/haxe.vim
Normal file
427
syntax/haxe.vim
Normal file
@@ -0,0 +1,427 @@
|
|||||||
|
" Vim syntax file
|
||||||
|
" Language: haxe
|
||||||
|
" Derived from:
|
||||||
|
" http://tech.motion-twin.com/zip/haxe.vim
|
||||||
|
" and http://www.cactusflower.org/haxe.vim
|
||||||
|
" Please check :help haxe.vim for comments on some of the options available.
|
||||||
|
|
||||||
|
set errorformat=%f\:%l\:\ characters\ %c-%*[^\ ]\ %m,%f\:%l\:\ %m
|
||||||
|
|
||||||
|
" Quit when a syntax file was already loaded
|
||||||
|
if !exists("main_syntax")
|
||||||
|
if version < 600
|
||||||
|
syntax clear
|
||||||
|
elseif exists("b:current_syntax")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let main_syntax='haxe'
|
||||||
|
endif
|
||||||
|
|
||||||
|
if version < 508
|
||||||
|
command! -nargs=+ HaxeHiLink hi link <args>
|
||||||
|
else
|
||||||
|
command! -nargs=+ HaxeHiLink hi def link <args>
|
||||||
|
endif
|
||||||
|
|
||||||
|
" some characters that cannot be in a haxe program (outside a string)
|
||||||
|
syn match haxeError "[\\@`]"
|
||||||
|
syn match haxeError "<<<\|=>\|<>\|||=\|&&=\|\*\/"
|
||||||
|
|
||||||
|
" use separate name so that it can be deleted in haxecc.vim
|
||||||
|
syn match haxeError2 "#\|=<"
|
||||||
|
HaxeHiLink haxeError2 haxeError
|
||||||
|
|
||||||
|
syn keyword haxeExternal import extern using
|
||||||
|
syn keyword haxeDefine package
|
||||||
|
syn keyword haxeConditional if else switch
|
||||||
|
syn keyword haxeRepeat while for do in
|
||||||
|
syn keyword haxeBoolean true false
|
||||||
|
syn keyword haxeConstant null
|
||||||
|
syn keyword haxeTypedef this super
|
||||||
|
syn keyword haxeOperator new cast
|
||||||
|
syn keyword haxeCoreType Void Bool Int Float Dynamic
|
||||||
|
syn keyword haxeStatement return
|
||||||
|
|
||||||
|
syn keyword haxeTypedef1 typedef
|
||||||
|
syn keyword haxeStructure var enum
|
||||||
|
syn keyword haxeScopeDecl private public
|
||||||
|
syn keyword haxeScopeDecl2 static override final dynamic
|
||||||
|
syn keyword haxeFunctionDef function
|
||||||
|
|
||||||
|
syn keyword haxeExceptions throw try catch finally untyped
|
||||||
|
syn keyword haxeAssert assert
|
||||||
|
syn keyword haxeMethodDecl synchronized throws
|
||||||
|
syn keyword haxeClassDecl extends implements interface
|
||||||
|
syn match haxeDelimiter "[;:=\.]"
|
||||||
|
syn match haxeOperator "\(\.\.\.\|\*\|+\|-\|<<\|>>\|\/\|!\|||\|&&\|%\)"
|
||||||
|
syn match haxeComparison "\(==\|<=\|>=\|<\|>\|!=\)"
|
||||||
|
syn match haxeOptionalVars contained "?[a-zA-Z_]\+"
|
||||||
|
|
||||||
|
syn match haxeFunctionRef "[_$a-zA-Z][_$a-zA-Z0-9_]*("me=e-1
|
||||||
|
|
||||||
|
" We use a match here to differentiate the keyword class from MyClass.class
|
||||||
|
syn match haxeTypedef "\.\s*\<class\>"ms=s+1
|
||||||
|
syn match haxeClassDecl "^class\>"
|
||||||
|
syn match haxeClassDecl "[^.]\s*\<class\>"ms=s+1
|
||||||
|
syn keyword haxeBranch break continue nextgroup=haxeUserLabelRef skipwhite
|
||||||
|
syn match haxeUserLabelRef "\k\+" contained
|
||||||
|
syn match haxeClassDef "\(^\s*class\s*\)\@<=[_$a-zA-Z][_$a-zA-Z0-9_]*" contains=haxeTypedef,haxeClassDecl
|
||||||
|
|
||||||
|
syn match haxeLangClass "\<System\>"
|
||||||
|
syn keyword haxeLangClass Array ArrayAccess Class Date DateTools EReg Enum
|
||||||
|
syn keyword haxeLangClass Hash IntHash IntIter Iterable Iterator Lambda
|
||||||
|
syn keyword haxeLangClass List Math Null Reflect Std String StringBug
|
||||||
|
syn keyword haxeLangClass StringTools Type UInt ValueType Xml XmlType
|
||||||
|
|
||||||
|
syn keyword haxeFlashTop flash
|
||||||
|
syn keyword haxeFlashInner accessibility deskdop display errors events
|
||||||
|
syn keyword haxeFlashInner external filters geom media net printing sampler
|
||||||
|
syn keyword haxeFlashInner system text ui utils xml display engine
|
||||||
|
syn keyword haxeFlashFinal BitmapData ExternalInterface BevelFilter
|
||||||
|
syn keyword haxeFlashFinal BitmapFilter BlurFilter ColorMatrixFilter ConvolutionFilter
|
||||||
|
syn keyword haxeFlashFinal DisplacementMapFilter DropShadowFilter GlowFilter GradientBevelFilter
|
||||||
|
syn keyword haxeFlashFinal GradientGlowFilter ColorTransform Matrix Point Rectangle Transform
|
||||||
|
syn keyword haxeFlashFinal FileReference FileReferenceList Capabilities IME Security StyleSheet
|
||||||
|
syn keyword haxeFlashFinal TextRenderer Accessibility Boot Button Camera Color ContextMenu
|
||||||
|
syn keyword haxeFlashFinal ContextMenuItem ExtendedKey Key Lib LoadVars
|
||||||
|
syn keyword haxeFlashFinal LocalConnection Microphone Mouse MovieClip
|
||||||
|
syn keyword haxeFlashFinal MovieClipLoader NetConnection NetStream PrintJob
|
||||||
|
syn keyword haxeFlashFinal Selection SelectionListener SharedObject Sound
|
||||||
|
syn keyword haxeFlashFinal Stage System TextField TextFormat TextSnapshot
|
||||||
|
syn keyword haxeFlashFinal Video XMLRequest XMLSocket
|
||||||
|
syn keyword haxeFlash9Final Accessibility AccessibilityImplementation
|
||||||
|
syn keyword haxeFlash9Final AccessibilityProperties Clipboard
|
||||||
|
syn keyword haxeFlash9Final ClipboardFormats ClipboardTransferMode AVM1Movie
|
||||||
|
syn keyword haxeFlash9Final ActionScriptVersion Bitmap BitmapData
|
||||||
|
syn keyword haxeFlash9Final BitmapDataChannel BlendMode CapsStyle
|
||||||
|
syn keyword haxeFlash9Final DisplayObject DisplayObjectContainer FrameLabel
|
||||||
|
syn keyword haxeFlash9Final GradientType Graphics GraphicsBitmapFill
|
||||||
|
syn keyword haxeFlash9Final GraphicsEndFill GraphicsGradientFill GraphicsPath
|
||||||
|
syn keyword haxeFlash9Final GraphicsPathCommand GraphicsPathWinding
|
||||||
|
syn keyword haxeFlash9Final GraphicsShaderFill GraphicsSolidFill
|
||||||
|
syn keyword haxeFlash9Final GraphicsStroke GraphicsTrianglePath
|
||||||
|
syn keyword haxeFlash9Final IBitmapDrawable IGraphicsData IGraphicsFill
|
||||||
|
syn keyword haxeFlash9Final IGraphicsPath IGraphicsStroke InteractiveObject
|
||||||
|
syn keyword haxeFlash9Final InterpolationMethod JointStyle
|
||||||
|
syn keyword haxeFlash9Final LineScaleMode Loader LoaderInfo MorphShape
|
||||||
|
syn keyword haxeFlash9Final MovieClip PixelSnapping SWFVersion
|
||||||
|
syn keyword haxeFlash9Final Scene Shader ShaderData ShaderInput ShaderJob ShaderParameter
|
||||||
|
syn keyword haxeFlash9Final ShaderParameterType ShaderPrecision Shape
|
||||||
|
syn keyword haxeFlash9Final SimpleButton SpreadMethod Sprite
|
||||||
|
syn keyword haxeFlash9Final Stage StageAlign StageDisplayState StageQuality
|
||||||
|
syn keyword haxeFlash9Final StageScaleMode TriangleCulling
|
||||||
|
syn keyword haxeFlash9Final EOFError Error IOError Illegal OperationError
|
||||||
|
syn keyword haxeFlash9Final InvalidSWFError MemoryError ScriptTimeoutError
|
||||||
|
syn keyword haxeFlash9Final StackOverflowError ActivityEventAsyncErrorEvent
|
||||||
|
syn keyword haxeFlash9Final ContextMenuEvent DataEvent ErrorEvent Event
|
||||||
|
syn keyword haxeFlash9Final EventDispatcher EventPhase FocusEvent
|
||||||
|
syn keyword haxeFlash9Final FullScreenEvent HTTPStatusEvent IEventDispatcher IMEEvent
|
||||||
|
syn keyword haxeFlash9Final IOErrorEvent KeyboardEvent MouseEvent
|
||||||
|
syn keyword haxeFlash9Final NetFilterEvent NetStatusEvent ProgressEvent
|
||||||
|
syn keyword haxeFlash9Final SampleDataEvent SecurityErrorEvent ShaderEvent StatusEvent
|
||||||
|
syn keyword haxeFlash9Final SyncEvent TextEvent TimerEvent WeakFunctionClosure WeakMethodClosure
|
||||||
|
syn keyword haxeFlash9Final ExternalInterface BevelFilter BitmapFilter
|
||||||
|
syn keyword haxeFlash9Final BitmapFilterQuality BitmapFilterType
|
||||||
|
syn keyword haxeFlash9Final BlurFilter ColorMatrixFilter ConvolutionFilter DisplacementMapFilter
|
||||||
|
syn keyword haxeFlash9Final DisplacementMapFilterMode DropShadowFilter
|
||||||
|
syn keyword haxeFlash9Final GlowFilter GradientBevelFilter
|
||||||
|
syn keyword haxeFlash9Final GradientGlowFilter ShaderFilter ColorTransform
|
||||||
|
syn keyword haxeFlash9Final Matrix Matrix3D Orientation3D
|
||||||
|
syn keyword haxeFlash9Final PerspectiveProjection Point Rectangle Transform
|
||||||
|
syn keyword haxeFlash9Final Utils3D Vector3D Camera ID3Info
|
||||||
|
syn keyword haxeFlash9Final Microphone Sound SoundChannel SoundCodec SoundLoaderContext SoundMixer
|
||||||
|
syn keyword haxeFlash9Final SoundTransform Video DynamicPropertyOutput FileFilter FileReference
|
||||||
|
syn keyword haxeFlash9Final FileReferenceList IDynamicPropertyOutput
|
||||||
|
syn keyword haxeFlash9Final IDynamicPropertyWriter LocalConnection
|
||||||
|
syn keyword haxeFlash9Final NetConnection NetStream NetStreamInfo NetSTreamPlayOptions
|
||||||
|
syn keyword haxeFlash9Final NetSTreamPlayTransitions ObjectEncoding Responder SharedObject
|
||||||
|
syn keyword haxeFlash9Final SharedObjectFlushStatus Socket URLLoader URLLoaderDataFormat URLRequest
|
||||||
|
syn keyword haxeFlash9Final URLRequestHeader URLRequestMethod URLStream
|
||||||
|
syn keyword haxeFlash9Final URLVariables XMLSocket PrintJob
|
||||||
|
syn keyword haxeFlash9Final PrintJobOptions PrintJobOrientation Api
|
||||||
|
syn keyword haxeFlash9Final DeleteObjectSample NewObjectSample
|
||||||
|
syn keyword haxeFlash9Final Sample StackFrame ApplicationDomain Capabilities FSCommand IME
|
||||||
|
syn keyword haxeFlash9Final IMEConversionMode JPEGLoaderContext
|
||||||
|
syn keyword haxeFlash9Final LoaderContext Security SecurityDomain
|
||||||
|
syn keyword haxeFlash9Final SecurityPanel System
|
||||||
|
syn keyword haxeFlash9Final BreakOpportunity CFFHinting ContentElement
|
||||||
|
syn keyword haxeFlash9Final DigitCase DigitWidth EastAsianJustifier ElementFormat FontDescription
|
||||||
|
syn keyword haxeFlash9Final FontLookup FontMetrics FontPosture FontWeight
|
||||||
|
syn keyword haxeFlash9Final GraphicElement GroupElement
|
||||||
|
syn keyword haxeFlash9Final JustificationStyle Kerning LIgatureLevel
|
||||||
|
syn keyword haxeFlash9Final LineJustification RenderingMode
|
||||||
|
syn keyword haxeFlash9Final SpaceJustifier TabAlignment TabStop TextBaseline TextBlock TextElement
|
||||||
|
syn keyword haxeFlash9Final TextJustifier TextLine TextLineCreationResult TextLineMirrorRegion
|
||||||
|
syn keyword haxeFlash9Final TextLineValidity TextRotation TypographicCase
|
||||||
|
syn keyword haxeFlash9Final AntiAliasType CSMSettings Font
|
||||||
|
syn keyword haxeFlash9Final FontStyle FontType GridFitType StaticText StyleSheet TextColorType
|
||||||
|
syn keyword haxeFlash9Final TextDisplayMode TextExtent TextField
|
||||||
|
syn keyword haxeFlash9Final TextFieldAutoSize TextFieldType TextFormat
|
||||||
|
syn keyword haxeFlash9Final TextFormatAlign TextFormatDisplay TextLineMetrics TextRenderer TextRun
|
||||||
|
syn keyword haxeFlash9Final TextSnapshot Trace ContextMenu ContextMenuBuiltInItems
|
||||||
|
syn keyword haxeFlash9Final ContextMenuClipboardItems ContextMenuItem KeyLocation Keyboard Mouse
|
||||||
|
syn keyword haxeFlash9Final MouseCursor ByteArray Dictionary Endian
|
||||||
|
syn keyword haxeFlash9Final IDataInput IDataOutput IExternalizable
|
||||||
|
syn keyword haxeFlash9Final Namespace ObjectInput ObjectOutput Proxy QName SetIntervalTimer Timer
|
||||||
|
syn keyword haxeFlash9Final TypedDictionary XML XMLDocument XMLList XMLNode
|
||||||
|
syn keyword haxeFlash9Final XMLNodeType XMLParser XMLTag
|
||||||
|
syn keyword haxeFlash9Final Boot Lib Memory Vector
|
||||||
|
|
||||||
|
HaxeHiLink haxeLangObject haxeConstant
|
||||||
|
syn cluster haxeTop add=haxeLangObject,haxeLangClass
|
||||||
|
syn cluster haxeClasses add=haxeLangClass,haxeFlashClass
|
||||||
|
|
||||||
|
if filereadable(expand("<sfile>:p:h")."/haxeid.vim")
|
||||||
|
source <sfile>:p:h/haxeid.vim
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists("haxe_no_trail_space_error")
|
||||||
|
syn match haxeSpaceError "\s\+$"
|
||||||
|
endif
|
||||||
|
if !exists("haxe_no_tab_space_error")
|
||||||
|
syn match haxeSpaceError " \+\t"me=e-1
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn region haxeLabelRegion transparent matchgroup=haxeLabel start="\<case\>"
|
||||||
|
\ matchgroup=NONE end=":"
|
||||||
|
\ contains=haxeNumber,haxeChr,haxeNumber2
|
||||||
|
syn match haxeUserLabel "\({\s*\|^\s*\|,\s*\)\@<=[_$a-zA-Z][_$a-zA-Z0-9_]*:\s"he=e-1 contains=haxeDelimiter
|
||||||
|
\ contains=haxeLabel
|
||||||
|
syn keyword haxeLabel default never
|
||||||
|
|
||||||
|
" Everything - used in parenthases checking or something
|
||||||
|
syn cluster haxeTop add=haxeExternal,haxeError,haxeError,haxeBranch,
|
||||||
|
\ haxeLabelRegion,haxeLabel,haxeConditional,
|
||||||
|
\ haxeRepeat,haxeBoolean,haxeConstant,
|
||||||
|
\ haxeTypedef,haxeOperator,haxeType,haxeCoreType,
|
||||||
|
\ haxeStatement,haxeStorageClass,haxeAssert,
|
||||||
|
\ haxeExceptions,haxeMethodDecl,haxeClassDecl,
|
||||||
|
\ haxeClassDecl,haxeClassDecl,haxeScopeDecl,
|
||||||
|
\ haxeError,haxeError2,haxeUserLabel,
|
||||||
|
\ haxeLangObject,haxeFlashTop,haxeFlashInner,
|
||||||
|
\ haxeFlashFinal,haxeFlash9Final,haxeFunctionRef,
|
||||||
|
\ haxeComparison,haxeOptionalVars
|
||||||
|
|
||||||
|
" Comments
|
||||||
|
syn keyword haxeTodo contained TODO FIXME XXX
|
||||||
|
if exists("haxe_comment_strings")
|
||||||
|
syn region haxeCmString contained start=+"+ end=+"+ end=+$+
|
||||||
|
\ end=+\*/+me=s-1,he=s-1
|
||||||
|
\ contains=haxeSpecial,haxeCmStar,haxeSpecChr,@Spell
|
||||||
|
syn region haxeCm2String contained start=+"+ end=+$\|"+
|
||||||
|
\ contains=haxeSpecial,haxeSpecChr,@Spell
|
||||||
|
syn match haxeCmCharacter contained "'\\[^']\{1,6\}'" contains=haxeSpecChr
|
||||||
|
syn match haxeCmCharacter contained "'\\''" contains=haxeSpecChr
|
||||||
|
syn match haxeCmCharacter contained "'[^\\]'"
|
||||||
|
syn cluster haxeCmSpecial add=haxeCmString,haxeCmCharacter,haxeNumber,haxeNumber2
|
||||||
|
syn cluster haxeCmSpecial2 add=haxeCm2String,haxeCmCharacter,haxeNumber,haxeNumber2
|
||||||
|
endif
|
||||||
|
syn region haxeCm start="/\*" end="\*/"
|
||||||
|
\ contains=@haxeCmSpecial,haxeTodo,@Spell
|
||||||
|
syn match haxeCmStar contained "^\s*\*[^/]"me=e-1
|
||||||
|
syn match haxeCmStar contained "^\s*\*$"
|
||||||
|
syn match haxeLineCm "//.*" contains=@haxeCmSpecial2,haxeTodo,@Spell
|
||||||
|
HaxeHiLink haxeCmString haxeDocTags
|
||||||
|
HaxeHiLink haxeCm2String haxeString
|
||||||
|
HaxeHiLink haxeCmCharacter haxeChr
|
||||||
|
syn cluster haxeTop add=haxeCm,haxeLineCm
|
||||||
|
if exists("haxe_haxedoc") || main_syntax == 'jsp'
|
||||||
|
syntax case ignore
|
||||||
|
" syntax coloring for haxedoc comments (HTML)
|
||||||
|
" syntax include @haxeHtml <sfile>:p:h/html.vim
|
||||||
|
" unlet b:current_syntax
|
||||||
|
syn region haxeDocCm start="/\*\*" end="\*/" keepend
|
||||||
|
\ contains=haxeCmTitle,@haxeHtml,haxeDocTags,haxeTodo,@Spell,haxeProposedTags
|
||||||
|
syn region haxeCmTitle contained matchgroup=haxeDocCm start="/\*\*"
|
||||||
|
\ matchgroup=haxeCmTitle keepend end="\.$"
|
||||||
|
\ end="\.[ \t\r<]"me=e-1
|
||||||
|
\ end="[^{]@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1
|
||||||
|
\ contains=@haxeHtml,haxeCmStar,haxeTodo,@Spell,haxeDocTags,haxeProposedTags
|
||||||
|
syn region haxeDocTags contained start="{@\(link\|linkplain\|inherit[Dd]oc\|doc[rR]oot\|value\)"
|
||||||
|
\ end="}"
|
||||||
|
syn match haxeDocTags contained "@\(see\|param\|exception\|throws\|since\)\s\+\S\+"
|
||||||
|
\ contains=haxeDocParam
|
||||||
|
syn match haxeDocParam contained "\s\S\+"
|
||||||
|
syn match haxeDocTags contained "@\(version\|author\|return\|deprecated\|serial\|serialField\|serialData\)\>"
|
||||||
|
syn match haxeProposedTags contained "@\(category\|example\|tutorial\|index\|exclude\|todo\|internal\|obsolete\)\>"
|
||||||
|
syntax case match
|
||||||
|
endif
|
||||||
|
syn match haxeCm "/\*\*/" " Edge case
|
||||||
|
|
||||||
|
|
||||||
|
" Strings and constants
|
||||||
|
syn match haxeSpecError contained "\\."
|
||||||
|
"syn match haxeSpecChrError contained "[^']"
|
||||||
|
syn match haxeSpecChr contained "\\\([4-9]\d\|[0-3]\d\d\|[\"\\'ntbrf]\|u\x\{4\}\)"
|
||||||
|
syn match haxeEregEscape contained "\(\\\\\|\\/\)"
|
||||||
|
syn region haxeEreg start=+\~\/+ end=+\/[gims]*+ contains=haxeEregEscape
|
||||||
|
|
||||||
|
syn region haxeString start=+"+ end=+"+ contains=haxeSpecChr,haxeSpecError,@Spell
|
||||||
|
syn region haxeSingleString start=+'+ end=+'+
|
||||||
|
syn match haxeChr "'[^']*'" contains=haxeSpecChr,haxeSpecChrError
|
||||||
|
syn match haxeChr "'\\''" contains=haxeSpecChr
|
||||||
|
syn match haxeChr "'[^\\]'"
|
||||||
|
syn match haxeNumber "\<\(0[0-7]*\|0[xX]\x\+\|\d\+\)[lL]\=\>" contains=haxeSpecNum
|
||||||
|
"syn match haxeNumber "\(\<\d\+\.\d*\|\.\d\+\)\([eE][-+]\=\d\+\)\=[fFdD]\="
|
||||||
|
syn match haxeNumber2 "\(\<\d\+\.\d\+\)\([eE][-+]\=\d\+\)\=[fFdD]\=" contains=haxeSpecNum
|
||||||
|
syn match haxeNumber2 "\<\d\+[eE][-+]\=\d\+[fFdD]\=\>" contains=haxeSpecNum
|
||||||
|
syn match haxeNumber2 "\<\d\+\([eE][-+]\=\d\+\)\=[fFdD]\>" contains=haxeSpecNum
|
||||||
|
syn match haxeSpecNum contained "\(0[xX]\|[\.+-]\)"
|
||||||
|
|
||||||
|
syn region haxeCondIf start="#if \+!\?" end="\(\W\|$\)" skip="([A-Za-z0-9_ |&!]\+)"
|
||||||
|
syn region haxeCondElseIf start="#elseif \+!\?" end="\(\W\|$\)" skip="([A-Za-z0-9_ |&!]\+)"
|
||||||
|
syn match haxeCondElse "#else\s*$"
|
||||||
|
syn match haxeCondEnd "#end"
|
||||||
|
syn match haxeCondError "#else .*$"
|
||||||
|
|
||||||
|
" unicode characters
|
||||||
|
syn match haxeSpecial "\\u\d\{4\}"
|
||||||
|
|
||||||
|
syn match haxeType ":[a-zA-Z_\.]\+"
|
||||||
|
\ contains=haxeDelimiter,haxeCoreType,haxeFlashTop,haxeFlashInner,haxeFlashFinal,haxeFlash9Final
|
||||||
|
|
||||||
|
syn cluster haxeTop add=haxeString,haxeChr,haxeNumber,haxeNumber2
|
||||||
|
syn cluster haxeTop add=haxeSpecial,haxeStringError,haxeDelimiter,haxeType
|
||||||
|
|
||||||
|
syn keyword haxeTraceFun trace contained
|
||||||
|
syn region haxeTrace start=+\(^\s*\)\@<=trace(+ end=+);+ contains=haxeTraceFun
|
||||||
|
|
||||||
|
if exists("haxe_highlight_functions")
|
||||||
|
if haxe_highlight_functions == "indent"
|
||||||
|
syn match haxeFuncDef "^\(\t\| \{4\}\)[_$a-zA-Z][_$a-zA-Z0-9_. \[\]]*([^-+*/()]*)"
|
||||||
|
\ contains=haxeType,haxeStorageClass,@haxeClasses
|
||||||
|
syn region haxeFuncDef start=+^\(\t\| \{4\}\)[$_a-zA-Z][$_a-zA-Z0-9_. \[\]]*([^-+*/()]*,\s*+
|
||||||
|
\ end=+)+ contains=haxeType,haxeStorageClass,@haxeClasses
|
||||||
|
syn match haxeFuncDef "^ [$_a-zA-Z][$_a-zA-Z0-9_. \[\]]*([^-+*/()]*)"
|
||||||
|
\ contains=haxeType,haxeStorageClass,@haxeClasses
|
||||||
|
syn region haxeFuncDef start=+^ [$_a-zA-Z][$_a-zA-Z0-9_. \[\]]*([^-+*/()]*,\s*+
|
||||||
|
\ end=+)+
|
||||||
|
\ contains=haxeType,haxeStorageClass,@haxeClasses
|
||||||
|
else
|
||||||
|
" This line catches method declarations at any indentation>0, but it assumes
|
||||||
|
" two things:
|
||||||
|
" 1. class names are always capitalized (ie: Button)
|
||||||
|
" 2. method names are never capitalized (except constructors, of course)
|
||||||
|
syn region haxeFuncDef start=+\s\+\(\(void\|boolean\|char\|byte\|short\|int\|long\|float\|double\|\([A-Za-z_][A-Za-z0-9_$]*\.\)*[A-Z][A-Za-z0-9_$]*\)\(\[\]\)*\s\+[a-z][A-Za-z0-9_$]*\|[A-Z][A-Za-z0-9_$]*\)\s*(+
|
||||||
|
\ end=+)+
|
||||||
|
\ contains=haxeType,haxeStorageClass,haxeCm,haxeLineCm,@haxeClasses
|
||||||
|
endif
|
||||||
|
syn match haxeBraces "[{}]"
|
||||||
|
syn cluster haxeTop add=haxeFuncDef,haxeBraces
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists("haxe_mark_braces_in_parens_as_errors")
|
||||||
|
syn match haxeInParen contained "[{}]"
|
||||||
|
HaxeHiLink haxeInParen haxeError
|
||||||
|
syn cluster haxeTop add=haxeInParen
|
||||||
|
endif
|
||||||
|
|
||||||
|
" catch errors caused by wrong parenthesis
|
||||||
|
syn region haxeParenT transparent matchgroup=haxeParen start="("
|
||||||
|
\ end=")" contains=@haxeTop,haxeParenT1
|
||||||
|
syn region haxeParenT1 transparent matchgroup=haxeParen1 start="("
|
||||||
|
\ end=")" contains=@haxeTop,haxeParenT2 contained
|
||||||
|
syn region haxeParenT2 transparent matchgroup=haxeParen2 start="("
|
||||||
|
\ end=")" contains=@haxeTop,haxeParenT contained
|
||||||
|
syn match haxeParenError ")"
|
||||||
|
HaxeHiLink haxeParenError haxeError
|
||||||
|
|
||||||
|
|
||||||
|
if !exists("haxe_minlines")
|
||||||
|
let haxe_minlines = 5000
|
||||||
|
endif
|
||||||
|
exec "syn sync ccomment haxeCm minlines=" . haxe_minlines
|
||||||
|
syn sync linebreaks=30
|
||||||
|
|
||||||
|
" The default highlighting.
|
||||||
|
if version >= 508 || !exists("did_haxe_syn_inits")
|
||||||
|
if version < 508
|
||||||
|
let did_haxe_syn_inits = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
HaxeHiLink haxeFunctionDef Identifier
|
||||||
|
HaxeHiLink haxeFuncDef Identifier
|
||||||
|
HaxeHiLink haxeFunctionRef Function
|
||||||
|
HaxeHiLink haxeBraces Function
|
||||||
|
HaxeHiLink haxeBranch Conditional
|
||||||
|
HaxeHiLink haxeUserLabelRef haxeUserLabel
|
||||||
|
HaxeHiLink haxeLabel Label
|
||||||
|
HaxeHiLink haxeUserLabel Label
|
||||||
|
HaxeHiLink haxeConditional Conditional
|
||||||
|
HaxeHiLink haxeRepeat Repeat
|
||||||
|
HaxeHiLink haxeExceptions Exception
|
||||||
|
HaxeHiLink haxeAssert Statement
|
||||||
|
|
||||||
|
HaxeHiLink haxeClassDef Underlined
|
||||||
|
HaxeHiLink haxeStructure Structure
|
||||||
|
HaxeHiLink haxeMethodDecl haxeStorageClass
|
||||||
|
HaxeHiLink haxeClassDecl Structure
|
||||||
|
HaxeHiLink haxeScopeDecl StorageClass
|
||||||
|
HaxeHiLink haxeScopeDecl2 Tag
|
||||||
|
HaxeHiLink haxeBoolean Boolean
|
||||||
|
HaxeHiLink haxeSpecial Special
|
||||||
|
HaxeHiLink haxeSpecError Error
|
||||||
|
HaxeHiLink haxeSpecChrError Error
|
||||||
|
HaxeHiLink haxeString String
|
||||||
|
HaxeHiLink haxeSingleString Character
|
||||||
|
|
||||||
|
HaxeHiLink haxeEreg Number
|
||||||
|
HaxeHiLink haxeEregEscape Debug
|
||||||
|
HaxeHiLink haxeChr Character
|
||||||
|
HaxeHiLink haxeSpecChr SpecialChar
|
||||||
|
HaxeHiLink haxeNumber Number
|
||||||
|
HaxeHiLink haxeNumber2 Float
|
||||||
|
HaxeHiLink haxeSpecNum Boolean
|
||||||
|
HaxeHiLink haxeError Error
|
||||||
|
HaxeHiLink haxeStringError Debug
|
||||||
|
HaxeHiLink haxeStatement Statement
|
||||||
|
HaxeHiLink haxeOperator Operator
|
||||||
|
HaxeHiLink haxeComparison Repeat
|
||||||
|
HaxeHiLink haxeTraceFun SpecialComment
|
||||||
|
HaxeHiLink haxeTrace Comment
|
||||||
|
HaxeHiLink haxeDelimiter Delimiter
|
||||||
|
|
||||||
|
HaxeHiLink haxeCm Comment
|
||||||
|
HaxeHiLink haxeDocCm Comment
|
||||||
|
HaxeHiLink haxeLineCm Comment
|
||||||
|
HaxeHiLink haxeConstant Constant
|
||||||
|
HaxeHiLink haxeTypedef Typedef
|
||||||
|
HaxeHiLink haxeTypedef1 Typedef
|
||||||
|
HaxeHiLink haxeTodo Todo
|
||||||
|
HaxeHiLink haxeLangClass Special
|
||||||
|
HaxeHiLink haxeFlashClass Keyword
|
||||||
|
HaxeHiLink haxeFunction Function
|
||||||
|
HaxeHiLink haxeCmTitle Special
|
||||||
|
HaxeHiLink haxeDocTags SpecialComment
|
||||||
|
HaxeHiLink haxeProposedTags SpecialComment
|
||||||
|
HaxeHiLink haxeCmStar Comment
|
||||||
|
|
||||||
|
HaxeHiLink haxeDocParam Function
|
||||||
|
HaxeHiLink haxeCoreType Keyword
|
||||||
|
HaxeHiLink haxeType Type
|
||||||
|
HaxeHiLink haxeExternal Include
|
||||||
|
HaxeHiLink haxeDefine Define
|
||||||
|
HaxeHiLink htmlComment Special
|
||||||
|
HaxeHiLink htmlCommentPart Special
|
||||||
|
HaxeHiLink haxeSpaceError Error
|
||||||
|
HaxeHiLink haxeCondIf PreCondit
|
||||||
|
HaxeHiLink haxeCondElseIf PreCondit
|
||||||
|
HaxeHiLink haxeCondElse PreProc
|
||||||
|
HaxeHiLink haxeCondEnd PreProc
|
||||||
|
|
||||||
|
HaxeHiLink haxeCondError Error
|
||||||
|
|
||||||
|
HaxeHiLink haxeFlashTop PreProc
|
||||||
|
HaxeHiLink haxeFlashInner Macro
|
||||||
|
HaxeHiLink haxeFlashFinal Define
|
||||||
|
HaxeHiLink haxeFlash9Final Define
|
||||||
|
|
||||||
|
HaxeHiLink haxeOptionalVars Identifier
|
||||||
|
endif
|
||||||
|
|
||||||
|
delcommand HaxeHiLink
|
||||||
|
let b:current_syntax = "haxe"
|
||||||
|
if main_syntax == 'haxe'
|
||||||
|
unlet main_syntax
|
||||||
|
endif
|
||||||
|
let b:spell_options="contained"
|
||||||
@@ -1,12 +1,11 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: WAI-ARIA
|
" Language: WAI-ARIA
|
||||||
" Maintainer: othree <othree@gmail.com>
|
" Maintainer: othree <othree@gmail.com>
|
||||||
" URL: http://github.com/othree/html5-syntax.vim
|
" URL: http://github.com/othree/html5-syntax.vim
|
||||||
" Last Change: 2010-09-25
|
" Last Change: 2014-05-02
|
||||||
" License: MIT
|
" License: MIT
|
||||||
" Changes: update to Draft 16 September 2010
|
" Changes: Add match rules
|
||||||
|
" update to Draft 16 September 2010
|
||||||
setlocal iskeyword+=-
|
|
||||||
|
|
||||||
" WAI-ARIA States and Properties
|
" WAI-ARIA States and Properties
|
||||||
" http://www.w3.org/TR/wai-aria/states_and_properties
|
" http://www.w3.org/TR/wai-aria/states_and_properties
|
||||||
@@ -35,3 +34,29 @@ syn keyword htmlArg contained aria-dropeffect aria-grabbed
|
|||||||
syn keyword htmlArg contained aria-activedescendant aria-controls aria-describedby aria-flowto
|
syn keyword htmlArg contained aria-activedescendant aria-controls aria-describedby aria-flowto
|
||||||
syn keyword htmlArg contained aria-labelledby aria-owns aria-posinset aria-setsize
|
syn keyword htmlArg contained aria-labelledby aria-owns aria-posinset aria-setsize
|
||||||
|
|
||||||
|
|
||||||
|
" Use match: https://github.com/othree/html5.vim/issues/39
|
||||||
|
|
||||||
|
" Global States and Properties
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|atomic\|busy\|controls\|describedby\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|disabled\|dropeffect\|flowto\|grabbed\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|haspopup\|hidden\|invalid\|label\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|labelledby\|live\|owns\|relevant\)\>"
|
||||||
|
|
||||||
|
" Widget Attributes
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|autocomplete\|checked\|disabled\|expanded\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|haspopup\|hidden\|invalid\|label\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|level\|multiline\|multiselectable\|orientation\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|pressed\|readonly\|required\|selected\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|sort\|valuemax\|valuemin\|valuenow\|valuetext\)\>"
|
||||||
|
|
||||||
|
" Live Region Attributes
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|atomic\|busy\|live\|relevant\)\>"
|
||||||
|
|
||||||
|
" Drag-and-Drop attributes
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|dropeffect\|grabbed\)\>"
|
||||||
|
|
||||||
|
" Relationship Attributes
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|activedescendant\|controls\|describedby\|flowto\)\>"
|
||||||
|
syn match htmlArg contained "\<aria-\%(\|labelledby\|owns\|posinset\|setsize\)\>"
|
||||||
|
|
||||||
|
|||||||
@@ -12,8 +12,6 @@ if !exists("main_syntax")
|
|||||||
let main_syntax = 'jade'
|
let main_syntax = 'jade'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
runtime! syntax/html.vim
|
|
||||||
runtime! syntax/html/html5.vim
|
|
||||||
silent! syntax include @htmlCoffeescript syntax/coffee.vim
|
silent! syntax include @htmlCoffeescript syntax/coffee.vim
|
||||||
unlet! b:current_syntax
|
unlet! b:current_syntax
|
||||||
silent! syntax include @htmlStylus syntax/stylus.vim
|
silent! syntax include @htmlStylus syntax/stylus.vim
|
||||||
@@ -56,8 +54,10 @@ syn region jadeMarkdownFilter matchgroup=jadeFilter start=/^\z(\s*\):markdown\s
|
|||||||
syn region jadeStylusFilter matchgroup=jadeFilter start="^\z(\s*\):stylus\s*$" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlStylus
|
syn region jadeStylusFilter matchgroup=jadeFilter start="^\z(\s*\):stylus\s*$" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlStylus
|
||||||
syn region jadePlainFilter matchgroup=jadeFilter start="^\z(\s*\):\%(sass\|less\|cdata\)\s*$" end="^\%(\z1\s\|\s*$\)\@!"
|
syn region jadePlainFilter matchgroup=jadeFilter start="^\z(\s*\):\%(sass\|less\|cdata\)\s*$" end="^\%(\z1\s\|\s*$\)\@!"
|
||||||
|
|
||||||
syn match jadeScriptConditional "\<\%(if\|else\|unless\|while\|for\|until\|case\|when\|default\)\>[?!]\@!"
|
syn match jadeScriptConditional "^\s*\<\%(if\|else\|unless\|while\|until\|case\|when\|default\)\>[?!]\@!"
|
||||||
syn match jadeScriptStatement "\<\%(each\|block\|prepend\|append\|mixin\|extends\|include\)\>[?!]\@!"
|
syn region jadeScriptLoopRegion start="^\s*\(for\)" end="$" contains=jadeScriptLoopKeywords
|
||||||
|
syn keyword jadeScriptLoopKeywords for in contained
|
||||||
|
syn match jadeScriptStatement "^\s*\<\%(each\|block\|prepend\|append\|mixin\|extends\|include\)\>[?!]\@!"
|
||||||
|
|
||||||
syn region jadeJavascript start="^\z(\s*\)script\%(:\w\+\)\=" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlJavascript,jadeJavascriptTag keepend
|
syn region jadeJavascript start="^\z(\s*\)script\%(:\w\+\)\=" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlJavascript,jadeJavascriptTag keepend
|
||||||
syn region jadeJavascriptTag contained start="^\z(\s*\)script\%(:\w\+\)\=" end="$" contains=jadeBegin,jadeTag
|
syn region jadeJavascriptTag contained start="^\z(\s*\)script\%(:\w\+\)\=" end="$" contains=jadeBegin,jadeTag
|
||||||
@@ -67,6 +67,7 @@ syn match jadeError "\$" contained
|
|||||||
|
|
||||||
hi def link jadePlainChar Special
|
hi def link jadePlainChar Special
|
||||||
hi def link jadeScriptConditional PreProc
|
hi def link jadeScriptConditional PreProc
|
||||||
|
hi def link jadeScriptLoopKeywords PreProc
|
||||||
hi def link jadeScriptStatement PreProc
|
hi def link jadeScriptStatement PreProc
|
||||||
hi def link jadeHtmlArg htmlArg
|
hi def link jadeHtmlArg htmlArg
|
||||||
hi def link jadeAttributeString String
|
hi def link jadeAttributeString String
|
||||||
|
|||||||
138
syntax/liquid.vim
Normal file
138
syntax/liquid.vim
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
" Vim syntax file
|
||||||
|
" Language: Liquid
|
||||||
|
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||||
|
" Filenames: *.liquid
|
||||||
|
" Last Change: 2010 May 21
|
||||||
|
|
||||||
|
if exists('b:current_syntax')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('main_syntax')
|
||||||
|
let main_syntax = 'liquid'
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:liquid_default_subtype')
|
||||||
|
let g:liquid_default_subtype = 'html'
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('b:liquid_subtype') && main_syntax == 'liquid'
|
||||||
|
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
||||||
|
let b:liquid_subtype = matchstr(s:lines,'liquid_subtype=\zs\w\+')
|
||||||
|
if b:liquid_subtype == ''
|
||||||
|
let b:liquid_subtype = matchstr(&filetype,'^liquid\.\zs\w\+')
|
||||||
|
endif
|
||||||
|
if b:liquid_subtype == ''
|
||||||
|
let b:liquid_subtype = matchstr(substitute(expand('%:t'),'\c\%(\.liquid\)\+$','',''),'\.\zs\w\+$')
|
||||||
|
endif
|
||||||
|
if b:liquid_subtype == ''
|
||||||
|
let b:liquid_subtype = g:liquid_default_subtype
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists('b:liquid_subtype') && b:liquid_subtype != ''
|
||||||
|
exe 'runtime! syntax/'.b:liquid_subtype.'.vim'
|
||||||
|
unlet! b:current_syntax
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn case match
|
||||||
|
|
||||||
|
if exists('b:liquid_subtype') && b:liquid_subtype != 'yaml'
|
||||||
|
" YAML Front Matter
|
||||||
|
syn include @liquidYamlTop syntax/yaml.vim
|
||||||
|
unlet! b:current_syntax
|
||||||
|
syn region liquidYamlHead start="\%^---$" end="^---\s*$" keepend contains=@liquidYamlTop,@Spell
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:liquid_highlight_types')
|
||||||
|
let g:liquid_highlight_types = []
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('s:subtype')
|
||||||
|
let s:subtype = exists('b:liquid_subtype') ? b:liquid_subtype : ''
|
||||||
|
|
||||||
|
for s:type in map(copy(g:liquid_highlight_types),'matchstr(v:val,"[^=]*$")')
|
||||||
|
if s:type =~ '\.'
|
||||||
|
let b:{matchstr(s:type,'[^.]*')}_subtype = matchstr(s:type,'\.\zs.*')
|
||||||
|
endif
|
||||||
|
exe 'syn include @liquidHighlight'.substitute(s:type,'\.','','g').' syntax/'.matchstr(s:type,'[^.]*').'.vim'
|
||||||
|
unlet! b:current_syntax
|
||||||
|
endfor
|
||||||
|
unlet! s:type
|
||||||
|
|
||||||
|
if s:subtype == ''
|
||||||
|
unlet! b:liquid_subtype
|
||||||
|
else
|
||||||
|
let b:liquid_subtype = s:subtype
|
||||||
|
endif
|
||||||
|
unlet s:subtype
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn region liquidStatement matchgroup=liquidDelimiter start="{%" end="%}" contains=@liquidStatement containedin=ALLBUT,@liquidExempt keepend
|
||||||
|
syn region liquidExpression matchgroup=liquidDelimiter start="{{" end="}}" contains=@liquidExpression containedin=ALLBUT,@liquidExempt keepend
|
||||||
|
syn region liquidComment matchgroup=liquidDelimiter start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" contains=liquidTodo,@Spell containedin=ALLBUT,@liquidExempt keepend
|
||||||
|
syn region liquidRaw matchgroup=liquidDelimiter start="{%\s*raw\s*%}" end="{%\s*endraw\s*%}" contains=TOP,@liquidExempt containedin=ALLBUT,@liquidExempt keepend
|
||||||
|
|
||||||
|
syn cluster liquidExempt contains=liquidStatement,liquidExpression,liquidComment,liquidRaw,@liquidStatement,liquidYamlHead
|
||||||
|
syn cluster liquidStatement contains=liquidConditional,liquidRepeat,liquidKeyword,@liquidExpression
|
||||||
|
syn cluster liquidExpression contains=liquidOperator,liquidString,liquidNumber,liquidFloat,liquidBoolean,liquidNull,liquidEmpty,liquidPipe,liquidForloop
|
||||||
|
|
||||||
|
syn keyword liquidKeyword highlight nextgroup=liquidTypeHighlight skipwhite contained
|
||||||
|
syn keyword liquidKeyword endhighlight contained
|
||||||
|
syn region liquidHighlight start="{%\s*highlight\s\+\w\+\s*%}" end="{% endhighlight %}" keepend
|
||||||
|
|
||||||
|
for s:type in g:liquid_highlight_types
|
||||||
|
exe 'syn match liquidTypeHighlight "\<'.matchstr(s:type,'[^=]*').'\>" contained'
|
||||||
|
exe 'syn region liquidHighlight'.substitute(matchstr(s:type,'[^=]*$'),'\..*','','').' start="{%\s*highlight\s\+'.matchstr(s:type,'[^=]*').'\s*%}" end="{% endhighlight %}" keepend contains=@liquidHighlight'.substitute(matchstr(s:type,'[^=]*$'),'\.','','g')
|
||||||
|
endfor
|
||||||
|
unlet! s:type
|
||||||
|
|
||||||
|
syn region liquidString matchgroup=liquidQuote start=+"+ end=+"+ contained
|
||||||
|
syn region liquidString matchgroup=liquidQuote start=+'+ end=+'+ contained
|
||||||
|
syn match liquidNumber "-\=\<\d\+\>" contained
|
||||||
|
syn match liquidFloat "-\=\<\d\+\>\.\.\@!\%(\d\+\>\)\=" contained
|
||||||
|
syn keyword liquidBoolean true false contained
|
||||||
|
syn keyword liquidNull null nil contained
|
||||||
|
syn match liquidEmpty "\<empty\>" contained
|
||||||
|
|
||||||
|
syn keyword liquidOperator and or not contained
|
||||||
|
syn match liquidPipe '|' contained skipwhite nextgroup=liquidFilter
|
||||||
|
|
||||||
|
syn keyword liquidFilter date capitalize downcase upcase first last join sort size strip_html strip_newlines newline_to_br replace replace_first remove remove_first truncate truncatewords prepend append minus plus times divided_by contained
|
||||||
|
|
||||||
|
syn keyword liquidConditional if elsif else endif unless endunless case when endcase ifchanged endifchanged contained
|
||||||
|
syn keyword liquidRepeat for endfor tablerow endtablerow in contained
|
||||||
|
syn match liquidRepeat "\%({%\s*\)\@<=empty\>" contained
|
||||||
|
syn keyword liquidKeyword assign cycle include with contained
|
||||||
|
|
||||||
|
syn keyword liquidForloop forloop nextgroup=liquidForloopDot contained
|
||||||
|
syn match liquidForloopDot "\." nextgroup=liquidForloopAttribute contained
|
||||||
|
syn keyword liquidForloopAttribute length index index0 rindex rindex0 first last contained
|
||||||
|
|
||||||
|
syn keyword liquidTablerowloop tablerowloop nextgroup=liquidTablerowloopDot contained
|
||||||
|
syn match liquidTablerowloopDot "\." nextgroup=liquidTableForloopAttribute contained
|
||||||
|
syn keyword liquidTablerowloopAttribute length index index0 col col0 index0 rindex rindex0 first last col_first col_last contained
|
||||||
|
|
||||||
|
hi def link liquidDelimiter PreProc
|
||||||
|
hi def link liquidComment Comment
|
||||||
|
hi def link liquidTypeHighlight Type
|
||||||
|
hi def link liquidConditional Conditional
|
||||||
|
hi def link liquidRepeat Repeat
|
||||||
|
hi def link liquidKeyword Keyword
|
||||||
|
hi def link liquidOperator Operator
|
||||||
|
hi def link liquidString String
|
||||||
|
hi def link liquidQuote Delimiter
|
||||||
|
hi def link liquidNumber Number
|
||||||
|
hi def link liquidFloat Float
|
||||||
|
hi def link liquidEmpty liquidNull
|
||||||
|
hi def link liquidNull liquidBoolean
|
||||||
|
hi def link liquidBoolean Boolean
|
||||||
|
hi def link liquidFilter Function
|
||||||
|
hi def link liquidForloop Identifier
|
||||||
|
hi def link liquidForloopAttribute Identifier
|
||||||
|
|
||||||
|
let b:current_syntax = 'liquid'
|
||||||
|
|
||||||
|
if exists('main_syntax') && main_syntax == 'liquid'
|
||||||
|
unlet main_syntax
|
||||||
|
endif
|
||||||
@@ -30,6 +30,7 @@
|
|||||||
" unlet perl_nofold_packages
|
" unlet perl_nofold_packages
|
||||||
" let perl_nofold_subs = 1
|
" let perl_nofold_subs = 1
|
||||||
" unlet perl_fold_anonymous_subs
|
" unlet perl_fold_anonymous_subs
|
||||||
|
" unlet perl_no_subprototype_error
|
||||||
|
|
||||||
if exists("b:current_syntax")
|
if exists("b:current_syntax")
|
||||||
finish
|
finish
|
||||||
@@ -143,34 +144,35 @@ syn match perlPackageRef "[$@#%*&]\%(\%(::\|'\)\=\I\i*\%(\%(::\|'\)\I\i*\)*\)\
|
|||||||
" just set the variable "perl_no_extended_vars"...
|
" just set the variable "perl_no_extended_vars"...
|
||||||
|
|
||||||
if !exists("perl_no_scope_in_variables")
|
if !exists("perl_no_scope_in_variables")
|
||||||
syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
|
syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref
|
||||||
syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef
|
syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef
|
||||||
syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
|
syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref
|
||||||
else
|
else
|
||||||
syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
|
syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref
|
||||||
syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)"
|
syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)"
|
||||||
syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
|
syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref
|
||||||
endif
|
endif
|
||||||
|
|
||||||
syn match perlVarPlain2 "%[-+]"
|
syn match perlVarPlain2 "%[-+]"
|
||||||
|
|
||||||
if !exists("perl_no_extended_vars")
|
if !exists("perl_no_extended_vars")
|
||||||
syn cluster perlExpr contains=perlStatementIndirObjWrap,perlStatementScalar,perlStatementRegexp,perlStatementNumeric,perlStatementList,perlStatementHash,perlStatementFiles,perlStatementTime,perlStatementMisc,perlVarPlain,perlVarPlain2,perlVarNotInMatches,perlVarSlash,perlVarBlock,perlVarBlock2,perlShellCommand,perlFloat,perlNumber,perlStringUnexpanded,perlString,perlQQ,perlArrow,perlBraces
|
syn cluster perlExpr contains=perlStatementIndirObjWrap,perlStatementScalar,perlStatementRegexp,perlStatementNumeric,perlStatementList,perlStatementHash,perlStatementFiles,perlStatementTime,perlStatementMisc,perlVarPlain,perlVarPlain2,perlVarNotInMatches,perlVarSlash,perlVarBlock,perlVarBlock2,perlShellCommand,perlFloat,perlNumber,perlStringUnexpanded,perlString,perlQQ,perlArrow,perlBraces
|
||||||
syn region perlArrow matchgroup=perlArrow start="->\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
|
syn region perlArrow matchgroup=perlArrow start="->\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained
|
||||||
syn region perlArrow matchgroup=perlArrow start="->\s*\[" end="\]" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
|
syn region perlArrow matchgroup=perlArrow start="->\s*\[" end="\]" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained
|
||||||
syn region perlArrow matchgroup=perlArrow start="->\s*{" end="}" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
|
syn region perlArrow matchgroup=perlArrow start="->\s*{" end="}" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained
|
||||||
syn match perlArrow "->\s*{\s*\I\i*\s*}" contains=perlVarSimpleMemberName nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
|
syn match perlArrow "->\s*{\s*\I\i*\s*}" contains=perlVarSimpleMemberName nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained
|
||||||
syn region perlArrow matchgroup=perlArrow start="->\s*\$*\I\i*\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
|
syn region perlArrow matchgroup=perlArrow start="->\s*\$*\I\i*\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contained
|
||||||
syn region perlVarBlock matchgroup=perlVarPlain start="\%($#\|[$@]\)\$*{" skip="\\}" end=+}\|\%(\%(<<\%('\|"\)\?\)\@=\)+ contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod extend
|
syn region perlVarBlock matchgroup=perlVarPlain start="\%($#\|[$@]\)\$*{" skip="\\}" end=+}\|\%(\%(<<\%('\|"\)\?\)\@=\)+ contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend
|
||||||
syn region perlVarBlock2 matchgroup=perlVarPlain start="[%&*]\$*{" skip="\\}" end=+}\|\%(\%(<<\%('\|"\)\?\)\@=\)+ contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod extend
|
syn region perlVarBlock2 matchgroup=perlVarPlain start="[%&*]\$*{" skip="\\}" end=+}\|\%(\%(<<\%('\|"\)\?\)\@=\)+ contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend
|
||||||
syn match perlVarPlain2 "[%&*]\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod extend
|
syn match perlVarPlain2 "[%&*]\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend
|
||||||
syn match perlVarPlain "\%(\$#\|[@$]\)\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod extend
|
syn match perlVarPlain "\%(\$#\|[@$]\)\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend
|
||||||
syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\={" skip="\\}" end="}" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod extend
|
syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\={" skip="\\}" end="}" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend
|
||||||
syn match perlVarSimpleMember "\%(->\)\={\s*\I\i*\s*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contains=perlVarSimpleMemberName contained extend
|
syn match perlVarSimpleMember "\%(->\)\={\s*\I\i*\s*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref contains=perlVarSimpleMemberName contained extend
|
||||||
syn match perlVarSimpleMemberName "\I\i*" contained
|
syn match perlVarSimpleMemberName "\I\i*" contained
|
||||||
syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\=\[" skip="\\]" end="]" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod extend
|
syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\=\[" skip="\\]" end="]" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod,perlPostDeref extend
|
||||||
syn match perlPackageConst "__PACKAGE__" nextgroup=perlMethod
|
syn match perlPackageConst "__PACKAGE__" nextgroup=perlMethod,perlPostDeref
|
||||||
syn match perlMethod "->\$*\I\i*" contained nextgroup=perlVarSimpleMember,perlVarMember,perlMethod
|
syn match perlMethod "->\$*\I\i*" contained nextgroup=perlVarSimpleMember,perlVarMember,perlMethod,perlPostDeref
|
||||||
|
syn match perlPostDeref "->\%($#\|[$@%]\)\*" contained nextgroup=perlVarSimpleMember,perlVarMember,perlMethod,perlPostDeref
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" File Descriptors
|
" File Descriptors
|
||||||
@@ -392,10 +394,10 @@ syn match perlFormatField "@$" contained
|
|||||||
|
|
||||||
" __END__ and __DATA__ clauses
|
" __END__ and __DATA__ clauses
|
||||||
if exists("perl_fold")
|
if exists("perl_fold")
|
||||||
syntax region perlDATA start="^__DATA__$" skip="." end="." fold
|
syntax region perlDATA start="^__DATA__$" skip="." end="." contains=@perlDATA fold
|
||||||
syntax region perlDATA start="^__END__$" skip="." end="." contains=perlPOD,@perlDATA fold
|
syntax region perlDATA start="^__END__$" skip="." end="." contains=perlPOD,@perlDATA fold
|
||||||
else
|
else
|
||||||
syntax region perlDATA start="^__DATA__$" skip="." end="."
|
syntax region perlDATA start="^__DATA__$" skip="." end="." contains=@perlDATA
|
||||||
syntax region perlDATA start="^__END__$" skip="." end="." contains=perlPOD,@perlDATA
|
syntax region perlDATA start="^__END__$" skip="." end="." contains=perlPOD,@perlDATA
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -512,6 +514,7 @@ HiLink perlStatementMisc perlStatement
|
|||||||
HiLink perlStatementIndirObj perlStatement
|
HiLink perlStatementIndirObj perlStatement
|
||||||
HiLink perlFunctionName perlIdentifier
|
HiLink perlFunctionName perlIdentifier
|
||||||
HiLink perlMethod perlIdentifier
|
HiLink perlMethod perlIdentifier
|
||||||
|
HiLink perlPostDeref perlIdentifier
|
||||||
HiLink perlFunctionPRef perlType
|
HiLink perlFunctionPRef perlType
|
||||||
if !get(g:, 'perl_include_pod', 1)
|
if !get(g:, 'perl_include_pod', 1)
|
||||||
HiLink perlPOD perlComment
|
HiLink perlPOD perlComment
|
||||||
|
|||||||
560
syntax/php.vim
560
syntax/php.vim
File diff suppressed because one or more lines are too long
@@ -18,30 +18,40 @@ syn keyword rustOperator as
|
|||||||
|
|
||||||
syn match rustAssert "\<assert\(\w\)*!" contained
|
syn match rustAssert "\<assert\(\w\)*!" contained
|
||||||
syn match rustFail "\<fail\(\w\)*!" contained
|
syn match rustFail "\<fail\(\w\)*!" contained
|
||||||
syn keyword rustKeyword break continue
|
syn keyword rustKeyword break
|
||||||
syn keyword rustKeyword extern nextgroup=rustExternCrate,rustObsoleteExternMod skipwhite
|
syn keyword rustKeyword box nextgroup=rustBoxPlacement skipwhite skipempty
|
||||||
|
syn keyword rustKeyword continue
|
||||||
|
syn keyword rustKeyword extern nextgroup=rustExternCrate,rustObsoleteExternMod skipwhite skipempty
|
||||||
|
syn keyword rustKeyword fn nextgroup=rustFuncName skipwhite skipempty
|
||||||
syn keyword rustKeyword for in if impl let
|
syn keyword rustKeyword for in if impl let
|
||||||
syn keyword rustKeyword loop once priv pub
|
syn keyword rustKeyword loop once proc pub
|
||||||
syn keyword rustKeyword return
|
syn keyword rustKeyword return super
|
||||||
syn keyword rustKeyword unsafe while
|
syn keyword rustKeyword unsafe virtual while
|
||||||
syn keyword rustKeyword use nextgroup=rustModPath skipwhite
|
syn keyword rustKeyword use nextgroup=rustModPath skipwhite skipempty
|
||||||
" FIXME: Scoped impl's name is also fallen in this category
|
" FIXME: Scoped impl's name is also fallen in this category
|
||||||
syn keyword rustKeyword mod trait struct enum type nextgroup=rustIdentifier skipwhite
|
syn keyword rustKeyword mod trait struct enum type nextgroup=rustIdentifier skipwhite skipempty
|
||||||
syn keyword rustKeyword fn nextgroup=rustFuncName skipwhite
|
|
||||||
syn keyword rustKeyword proc
|
|
||||||
syn keyword rustStorage mut ref static
|
syn keyword rustStorage mut ref static
|
||||||
syn keyword rustObsoleteStorage const
|
syn keyword rustObsoleteStorage const
|
||||||
|
|
||||||
syn keyword rustInvalidBareKeyword crate
|
syn keyword rustInvalidBareKeyword crate
|
||||||
|
|
||||||
syn keyword rustExternCrate crate contained nextgroup=rustIdentifier skipwhite
|
syn keyword rustExternCrate crate contained nextgroup=rustIdentifier skipwhite skipempty
|
||||||
syn keyword rustObsoleteExternMod mod contained nextgroup=rustIdentifier skipwhite
|
syn keyword rustObsoleteExternMod mod contained nextgroup=rustIdentifier skipwhite skipempty
|
||||||
|
|
||||||
syn match rustIdentifier contains=rustIdentifierPrime "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
|
syn match rustIdentifier contains=rustIdentifierPrime "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
|
||||||
syn match rustFuncName "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
|
syn match rustFuncName "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
|
||||||
|
|
||||||
|
syn region rustBoxPlacement matchgroup=rustBoxPlacementParens start="(" end=")" contains=TOP contained
|
||||||
|
syn keyword rustBoxPlacementExpr GC containedin=rustBoxPlacement
|
||||||
|
" Ideally we'd have syntax rules set up to match arbitrary expressions. Since
|
||||||
|
" we don't, we'll just define temporary contained rules to handle balancing
|
||||||
|
" delimiters.
|
||||||
|
syn region rustBoxPlacementBalance start="(" end=")" containedin=rustBoxPlacement transparent
|
||||||
|
syn region rustBoxPlacementBalance start="\[" end="\]" containedin=rustBoxPlacement transparent
|
||||||
|
" {} are handled by rustFoldBraces
|
||||||
|
|
||||||
" Reserved (but not yet used) keywords {{{2
|
" Reserved (but not yet used) keywords {{{2
|
||||||
syn keyword rustReservedKeyword alignof be do offsetof pure sizeof typeof yield
|
syn keyword rustReservedKeyword alignof be do offsetof priv pure sizeof typeof unsized yield
|
||||||
|
|
||||||
" Built-in types {{{2
|
" Built-in types {{{2
|
||||||
syn keyword rustType int uint float char bool u8 u16 u32 u64 f32
|
syn keyword rustType int uint float char bool u8 u16 u32 u64 f32
|
||||||
@@ -52,10 +62,10 @@ syn keyword rustType f64 i8 i16 i32 i64 str Self
|
|||||||
" to make it easy to update.
|
" to make it easy to update.
|
||||||
|
|
||||||
" Core operators {{{3
|
" Core operators {{{3
|
||||||
syn keyword rustTrait Share Copy Send Sized
|
syn keyword rustTrait Copy Send Sized Share
|
||||||
syn keyword rustTrait Add Sub Mul Div Rem Neg Not
|
syn keyword rustTrait Add Sub Mul Div Rem Neg Not
|
||||||
syn keyword rustTrait BitAnd BitOr BitXor
|
syn keyword rustTrait BitAnd BitOr BitXor
|
||||||
syn keyword rustTrait Drop
|
syn keyword rustTrait Drop Deref DerefMut
|
||||||
syn keyword rustTrait Shl Shr Index
|
syn keyword rustTrait Shl Shr Index
|
||||||
syn keyword rustEnum Option
|
syn keyword rustEnum Option
|
||||||
syn keyword rustEnumVariant Some None
|
syn keyword rustEnumVariant Some None
|
||||||
@@ -68,7 +78,6 @@ syn keyword rustEnumVariant Ok Err
|
|||||||
"syn keyword rustFunction drop
|
"syn keyword rustFunction drop
|
||||||
|
|
||||||
" Types and traits {{{3
|
" Types and traits {{{3
|
||||||
syn keyword rustTrait Any AnyOwnExt AnyRefExt AnyMutRefExt
|
|
||||||
syn keyword rustTrait Ascii AsciiCast OwnedAsciiCast AsciiStr IntoBytes
|
syn keyword rustTrait Ascii AsciiCast OwnedAsciiCast AsciiStr IntoBytes
|
||||||
syn keyword rustTrait ToCStr
|
syn keyword rustTrait ToCStr
|
||||||
syn keyword rustTrait Char
|
syn keyword rustTrait Char
|
||||||
@@ -80,25 +89,32 @@ syn keyword rustTrait FromIterator Extendable
|
|||||||
syn keyword rustTrait Iterator DoubleEndedIterator RandomAccessIterator CloneableIterator
|
syn keyword rustTrait Iterator DoubleEndedIterator RandomAccessIterator CloneableIterator
|
||||||
syn keyword rustTrait OrdIterator MutableDoubleEndedIterator ExactSize
|
syn keyword rustTrait OrdIterator MutableDoubleEndedIterator ExactSize
|
||||||
syn keyword rustTrait Num NumCast CheckedAdd CheckedSub CheckedMul
|
syn keyword rustTrait Num NumCast CheckedAdd CheckedSub CheckedMul
|
||||||
syn keyword rustTrait Signed Unsigned Round
|
syn keyword rustTrait Signed Unsigned
|
||||||
syn keyword rustTrait Primitive Int Float ToPrimitive FromPrimitive
|
syn keyword rustTrait Primitive Int Float FloatMath ToPrimitive FromPrimitive
|
||||||
|
"syn keyword rustTrait Expect
|
||||||
|
syn keyword rustTrait Box
|
||||||
syn keyword rustTrait GenericPath Path PosixPath WindowsPath
|
syn keyword rustTrait GenericPath Path PosixPath WindowsPath
|
||||||
syn keyword rustTrait RawPtr
|
syn keyword rustTrait RawPtr
|
||||||
syn keyword rustTrait Buffer Writer Reader Seek
|
syn keyword rustTrait Buffer Writer Reader Seek
|
||||||
syn keyword rustTrait Str StrVector StrSlice OwnedStr IntoMaybeOwned
|
syn keyword rustTrait Str StrVector StrSlice OwnedStr IntoMaybeOwned
|
||||||
|
syn keyword rustTrait StrAllocating
|
||||||
syn keyword rustTrait ToStr IntoStr
|
syn keyword rustTrait ToStr IntoStr
|
||||||
syn keyword rustTrait Tuple1 Tuple2 Tuple3 Tuple4
|
syn keyword rustTrait Tuple1 Tuple2 Tuple3 Tuple4
|
||||||
syn keyword rustTrait Tuple5 Tuple6 Tuple7 Tuple8
|
syn keyword rustTrait Tuple5 Tuple6 Tuple7 Tuple8
|
||||||
syn keyword rustTrait Tuple9 Tuple10 Tuple11 Tuple12
|
syn keyword rustTrait Tuple9 Tuple10 Tuple11 Tuple12
|
||||||
syn keyword rustTrait ImmutableEqVector ImmutableTotalOrdVector ImmutableCloneableVector
|
syn keyword rustTrait CloneableVector ImmutableCloneableVector MutableCloneableVector
|
||||||
syn keyword rustTrait OwnedVector OwnedCloneableVector OwnedEqVector
|
syn keyword rustTrait ImmutableVector MutableVector
|
||||||
syn keyword rustTrait MutableVector MutableTotalOrdVector
|
syn keyword rustTrait ImmutableEqVector ImmutableTotalOrdVector MutableTotalOrdVector
|
||||||
syn keyword rustTrait Vector VectorVector CloneableVector ImmutableVector
|
syn keyword rustTrait Vector VectorVector OwnedVector MutableVectorAllocating
|
||||||
|
syn keyword rustTrait String
|
||||||
|
syn keyword rustTrait Vec
|
||||||
|
|
||||||
"syn keyword rustFunction stream
|
"syn keyword rustFunction sync_channel channel
|
||||||
syn keyword rustTrait Sender Receiver
|
syn keyword rustTrait SyncSender Sender Receiver
|
||||||
"syn keyword rustFunction spawn
|
"syn keyword rustFunction spawn
|
||||||
|
|
||||||
|
"syn keyword rustConstant GC
|
||||||
|
|
||||||
syn keyword rustSelf self
|
syn keyword rustSelf self
|
||||||
syn keyword rustBoolean true false
|
syn keyword rustBoolean true false
|
||||||
|
|
||||||
@@ -239,6 +255,8 @@ hi def link rustLifetime Special
|
|||||||
hi def link rustInvalidBareKeyword Error
|
hi def link rustInvalidBareKeyword Error
|
||||||
hi def link rustExternCrate rustKeyword
|
hi def link rustExternCrate rustKeyword
|
||||||
hi def link rustObsoleteExternMod Error
|
hi def link rustObsoleteExternMod Error
|
||||||
|
hi def link rustBoxPlacementParens Delimiter
|
||||||
|
hi def link rustBoxPlacementExpr rustKeyword
|
||||||
|
|
||||||
" Other Suggestions:
|
" Other Suggestions:
|
||||||
" hi rustAttribute ctermfg=cyan
|
" hi rustAttribute ctermfg=cyan
|
||||||
|
|||||||
@@ -58,6 +58,8 @@ syn match sassAmpersand "&"
|
|||||||
" TODO: Attribute namespaces
|
" TODO: Attribute namespaces
|
||||||
" TODO: Arithmetic (including strings and concatenation)
|
" TODO: Arithmetic (including strings and concatenation)
|
||||||
|
|
||||||
|
syn region sassMediaQuery matchgroup=sassMedia start="@media" end="$" contains=sassMediaOperators
|
||||||
|
syn keyword sassMediaOperators and not only contained
|
||||||
syn region sassCharset start="@charset" end=";\|$" contains=scssComment,cssStringQ,cssStringQQ,cssURL,cssUnicodeEscape,cssMediaType
|
syn region sassCharset start="@charset" end=";\|$" contains=scssComment,cssStringQ,cssStringQQ,cssURL,cssUnicodeEscape,cssMediaType
|
||||||
syn region sassInclude start="@import" end=";\|$" contains=scssComment,cssStringQ,cssStringQQ,cssURL,cssUnicodeEscape,cssMediaType
|
syn region sassInclude start="@import" end=";\|$" contains=scssComment,cssStringQ,cssStringQQ,cssURL,cssUnicodeEscape,cssMediaType
|
||||||
syn region sassDebugLine end=";\|$" matchgroup=sassDebug start="@debug\>" contains=@sassCssAttributes,sassVariable,sassFunction
|
syn region sassDebugLine end=";\|$" matchgroup=sassDebug start="@debug\>" contains=@sassCssAttributes,sassVariable,sassFunction
|
||||||
@@ -84,6 +86,8 @@ hi def link sassFunctionDecl PreProc
|
|||||||
hi def link sassReturn PreProc
|
hi def link sassReturn PreProc
|
||||||
hi def link sassTodo Todo
|
hi def link sassTodo Todo
|
||||||
hi def link sassCharset PreProc
|
hi def link sassCharset PreProc
|
||||||
|
hi def link sassMedia PreProc
|
||||||
|
hi def link sassMediaOperators PreProc
|
||||||
hi def link sassInclude Include
|
hi def link sassInclude Include
|
||||||
hi def link sassDebug sassControl
|
hi def link sassDebug sassControl
|
||||||
hi def link sassWarn sassControl
|
hi def link sassWarn sassControl
|
||||||
|
|||||||
@@ -4,8 +4,19 @@ elseif exists("b:current_syntax")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
scriptencoding utf-8
|
||||||
|
|
||||||
let b:current_syntax = "scala"
|
let b:current_syntax = "scala"
|
||||||
|
|
||||||
|
function! s:ContainedGroup()
|
||||||
|
try
|
||||||
|
silent syn list @scala
|
||||||
|
return '@scala'
|
||||||
|
catch /E392/
|
||||||
|
return 'TOP'
|
||||||
|
endtry
|
||||||
|
endfunction
|
||||||
|
|
||||||
syn case match
|
syn case match
|
||||||
syn sync minlines=200 maxlines=1000
|
syn sync minlines=200 maxlines=1000
|
||||||
|
|
||||||
@@ -17,7 +28,7 @@ syn keyword scalaKeyword val nextgroup=scalaNameDefinition,scalaQuasiQuotes skip
|
|||||||
syn keyword scalaKeyword def var nextgroup=scalaNameDefinition skipwhite
|
syn keyword scalaKeyword def var nextgroup=scalaNameDefinition skipwhite
|
||||||
hi link scalaKeyword Keyword
|
hi link scalaKeyword Keyword
|
||||||
|
|
||||||
syn region scalaBlock start=/{/ end=/}/ contains=TOP fold
|
exe 'syn region scalaBlock start=/{/ end=/}/ contains=' . s:ContainedGroup() . ' fold'
|
||||||
|
|
||||||
syn keyword scalaAkkaSpecialWord when goto using startWith initialize onTransition stay become unbecome
|
syn keyword scalaAkkaSpecialWord when goto using startWith initialize onTransition stay become unbecome
|
||||||
hi link scalaAkkaSpecialWord PreProc
|
hi link scalaAkkaSpecialWord PreProc
|
||||||
@@ -103,13 +114,13 @@ hi link scalaIString String
|
|||||||
hi link scalaTripleIString String
|
hi link scalaTripleIString String
|
||||||
|
|
||||||
syn match scalaInterpolation /\$[a-zA-Z0-9_$]\+/ contained
|
syn match scalaInterpolation /\$[a-zA-Z0-9_$]\+/ contained
|
||||||
syn region scalaInterpolationB matchgroup=scalaInterpolation start=/\${/ end=/}/ contained contains=TOP
|
exe 'syn region scalaInterpolationB matchgroup=scalaInterpolation start=/\${/ end=/}/ contained contains=' . s:ContainedGroup()
|
||||||
hi link scalaInterpolation Function
|
hi link scalaInterpolation Function
|
||||||
hi link scalaInterpolationB Normal
|
hi link scalaInterpolationB Normal
|
||||||
|
|
||||||
syn region scalaFString matchgroup=Special start=/f"/ skip=/\\"/ end=/"/ contains=scalaFInterpolation,scalaFInterpolationB,scalaEscapedChar,scalaUnicodeChar
|
syn region scalaFString matchgroup=Special start=/f"/ skip=/\\"/ end=/"/ contains=scalaFInterpolation,scalaFInterpolationB,scalaEscapedChar,scalaUnicodeChar
|
||||||
syn match scalaFInterpolation /\$[a-zA-Z0-9_$]\+\(%[-A-Za-z0-9\.]\+\)\?/ contained
|
syn match scalaFInterpolation /\$[a-zA-Z0-9_$]\+\(%[-A-Za-z0-9\.]\+\)\?/ contained
|
||||||
syn region scalaFInterpolationB matchgroup=scalaFInterpolation start=/${/ end=/}\(%[-A-Za-z0-9\.]\+\)\?/ contained contains=TOP
|
exe 'syn region scalaFInterpolationB matchgroup=scalaFInterpolation start=/${/ end=/}\(%[-A-Za-z0-9\.]\+\)\?/ contained contains=' . s:ContainedGroup()
|
||||||
hi link scalaFString String
|
hi link scalaFString String
|
||||||
hi link scalaFInterpolation Function
|
hi link scalaFInterpolation Function
|
||||||
hi link scalaFInterpolationB Normal
|
hi link scalaFInterpolationB Normal
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ syn match cssSelector /\.[A-Za-z][A-Za-z0-9_-]\+/
|
|||||||
syn match cssSelector /#[A-Za-z][A-Za-z0-9_-]\+/
|
syn match cssSelector /#[A-Za-z][A-Za-z0-9_-]\+/
|
||||||
syn region cssSelector start='\[' end='\]' contains=cssString
|
syn region cssSelector start='\[' end='\]' contains=cssString
|
||||||
|
|
||||||
syn region cssDefineBlock start="{" end="}" transparent contains=ALL
|
syn region cssDefineBlock start="{" end="}" transparent contains=TOP
|
||||||
|
|
||||||
syn keyword cssCommonVal inherit initial auto both normal hidden none medium contained
|
syn keyword cssCommonVal inherit initial auto both normal hidden none medium contained
|
||||||
|
|
||||||
@@ -149,6 +149,7 @@ syn match cssTextProp /text-\(align-last\|align\|decoration\|emphasis\|height\|i
|
|||||||
syn match cssTextProp /\(line-stacking-\(ruby\|shift\|strategy\)\|line-stacking\|line-height\)/ contained
|
syn match cssTextProp /\(line-stacking-\(ruby\|shift\|strategy\)\|line-stacking\|line-height\)/ contained
|
||||||
syn match cssTextProp /vertical-align/ contained
|
syn match cssTextProp /vertical-align/ contained
|
||||||
syn match cssTextProp /letter-spacing/ contained
|
syn match cssTextProp /letter-spacing/ contained
|
||||||
|
syn match cssTextProp /user-select/ contained
|
||||||
syn match cssTextProp /white-\(space-collapse\|space\)/ contained
|
syn match cssTextProp /white-\(space-collapse\|space\)/ contained
|
||||||
syn match cssTextProp /word-\(break\|spacing\|wrap\)/ contained
|
syn match cssTextProp /word-\(break\|spacing\|wrap\)/ contained
|
||||||
syn match cssTextProp "\<word-wrap\>" contained
|
syn match cssTextProp "\<word-wrap\>" contained
|
||||||
@@ -235,6 +236,7 @@ syn match cssAdvancedProp /\(pitch-range\|pitch\)/
|
|||||||
syn match cssAdvancedProp /presentation-level/
|
syn match cssAdvancedProp /presentation-level/
|
||||||
syn match cssAdvancedProp /punctuation-trim/
|
syn match cssAdvancedProp /punctuation-trim/
|
||||||
syn match cssAdvancedProp /rendering-intent/
|
syn match cssAdvancedProp /rendering-intent/
|
||||||
|
syn match cssAdvancedProp /pointer-events/
|
||||||
syn match cssAdvancedProp /\(rest-\(after\|before\)\|rest\)/
|
syn match cssAdvancedProp /\(rest-\(after\|before\)\|rest\)/
|
||||||
syn match cssAdvancedProp /\(rotation-point\|rotation\)/
|
syn match cssAdvancedProp /\(rotation-point\|rotation\)/
|
||||||
syn match cssAdvancedProp /ruby-\(align\|overhang\|position\|span\)/
|
syn match cssAdvancedProp /ruby-\(align\|overhang\|position\|span\)/
|
||||||
|
|||||||
273
syntax/systemd.vim
Normal file
273
syntax/systemd.vim
Normal file
@@ -0,0 +1,273 @@
|
|||||||
|
" Filename: systemd.vim
|
||||||
|
" Purpose: Vim syntax file
|
||||||
|
" Language: systemd unit files
|
||||||
|
" Maintainer: Will Woods <wwoods@redhat.com>
|
||||||
|
" Last Change: Sep 15, 2011
|
||||||
|
|
||||||
|
if exists("b:current_syntax") && !exists ("g:syntax_debug")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn case match
|
||||||
|
syntax sync fromstart
|
||||||
|
setlocal iskeyword+=-
|
||||||
|
|
||||||
|
" special sequences, common data types, comments, includes {{{1
|
||||||
|
" hilight errors with this
|
||||||
|
syn match sdErr contained /\s*\S\+/ nextgroup=sdErr
|
||||||
|
|
||||||
|
" environment args and format strings
|
||||||
|
syn match sdEnvArg contained /\$\i\+\|\${\i\+}/
|
||||||
|
syn match sdFormatStr contained /%[inpINPfcrRt]/ containedin=ALLBUT,sdComment,sdErr
|
||||||
|
|
||||||
|
" common data types
|
||||||
|
syn match sdUInt contained nextgroup=sdErr /\d\+/
|
||||||
|
syn match sdInt contained nextgroup=sdErr /-\=\d\+/
|
||||||
|
syn match sdOctal contained nextgroup=sdErr /0\o\{3,4}/
|
||||||
|
syn match sdDuration contained nextgroup=sdErr /\d\+/
|
||||||
|
syn match sdDuration contained nextgroup=sdErr /\%(\d\+\%(s\|min\|h\|d\|w\|ms\|us\)\s*\)\+/
|
||||||
|
syn match sdDatasize contained nextgroup=sdErr /\d\+[KMGT]/
|
||||||
|
syn match sdFilename contained nextgroup=sdErr /\/\S*/
|
||||||
|
syn keyword sdBool contained nextgroup=sdErr 1 yes true on 0 no false off
|
||||||
|
syn match sdUnitName contained /\S\+\.\(automount\|mount\|swap\|socket\|service\|target\|path\|timer\|device\)\_s/
|
||||||
|
|
||||||
|
" .include
|
||||||
|
syn match sdInclude /^.include/ nextgroup=sdFilename
|
||||||
|
|
||||||
|
" comments
|
||||||
|
syn match sdComment /^[;#].*/ contains=sdTodo containedin=ALL
|
||||||
|
syn keyword sdTodo contained TODO XXX FIXME NOTE
|
||||||
|
|
||||||
|
" [Unit] {{{1
|
||||||
|
" see systemd.unit(5)
|
||||||
|
syn region sdUnitBlock matchgroup=sdHeader start=/^\[Unit\]/ end=/^\[/me=e-2 contains=sdUnitKey
|
||||||
|
syn match sdUnitKey contained /^Description=/
|
||||||
|
syn match sdUnitKey contained /^Documentation=/ nextgroup=sdDocURI
|
||||||
|
syn match sdUnitKey contained /^SourcePath=/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdUnitKey contained /^\%(Requires\|RequiresOverridable\|Requisite\|RequisiteOverridable\|Wants\|BindsTo\|PartOf\|Conflicts\|Before\|After\|OnFailure\|Names|PropagatesReloadTo\|ReloadPropagatedFrom\)=/ nextgroup=sdUnitList
|
||||||
|
syn match sdUnitKey contained /^\%(OnFailureIsolate\|IgnoreOnIsolate\|IgnoreOnSnapshot\|StopWhenUnneeded\|RefuseManualStart\|RefuseManualStop\|AllowIsolate\|DefaultDependencies\)=/ nextgroup=sdBool,sdErr
|
||||||
|
syn match sdUnitKey contained /^JobTimeoutSec=/ nextgroup=sdDuration,sdErr
|
||||||
|
" ConditionXXX. Note that they all have an optional '|' after the '='
|
||||||
|
syn match sdUnitKey contained /^Condition\(PathExists\|PathExistsGlob\|PathIsDirectory\|PathIsMountPoint\|PathIsReadWrite\|PathIsSymbolicLink\|DirectoryNotEmpty\|FileNotEmpty\|FileIsExecutable\)=|\=!\=/ contains=sdConditionFlag nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdUnitKey contained /^ConditionVirtualization=|\=!\=/ contains=sdConditionFlag nextgroup=sdVirtType,sdErr
|
||||||
|
syn match sdUnitKey contained /^ConditionSecurity=|\=!\=/ contains=sdConditionFlag nextgroup=sdSecurityType,sdErr
|
||||||
|
syn match sdUnitKey contained /^ConditionCapability=|\=!\=/ contains=sdConditionFlag nextgroup=sdAnyCapName,sdErr
|
||||||
|
syn match sdUnitKey contained /^Condition\%(KernelCommandLine\|Host\)=|\=!\=/ contains=sdConditionFlag
|
||||||
|
syn match sdUnitKey contained /^Condition\%(ACPower\|Null\)=|\=/ contains=sdConditionFlag nextgroup=sdBool,sdErr
|
||||||
|
" extra bits
|
||||||
|
syn match sdUnitList contained /.*/ contains=sdUnitName,sdErr
|
||||||
|
syn match sdConditionFlag contained /[!|]/
|
||||||
|
syn keyword sdVirtType contained nextgroup=sdErr vm container qemu kvm vmware microsoft oracle xen bochs chroot openvz lxc lxc-libvirt systemd-nspawn
|
||||||
|
syn keyword sdSecurityType contained nextgroup=sdErr selinux
|
||||||
|
syn match sdDocUri contained /\%(https\=:\/\/\|file:\|info:\|man:\)\S\+\s*/ nextgroup=sdDocUri,sdErr
|
||||||
|
|
||||||
|
" [Install] {{{1
|
||||||
|
" see systemd.unit(5)
|
||||||
|
syn region sdInstallBlock matchgroup=sdHeader start=/^\[Install\]/ end=/^\[/me=e-2 contains=sdInstallKey
|
||||||
|
syn match sdInstallKey contained /^\%(WantedBy\|Alias\|Also\)=/ nextgroup=sdUnitList
|
||||||
|
|
||||||
|
" Execution options common to [Service|Socket|Mount|Swap] {{{1
|
||||||
|
" see systemd.exec(5)
|
||||||
|
syn match sdExecKey contained /^Exec\%(Start\%(Pre\|Post\|\)\|Reload\|Stop\|StopPost\)=/ nextgroup=sdExecFlag,sdExecFile,sdErr
|
||||||
|
syn match sdExecKey contained /^\%(WorkingDirectory\|RootDirectory\|TTYPath\)=/ nextgroup=sdFilename,sdErr
|
||||||
|
" TODO: handle some of these better
|
||||||
|
" CPUAffinity is: list of uint
|
||||||
|
" BlockIOWeight is: uint\|filename uint
|
||||||
|
" BlockIO\%(Read\|Write\)Bandwidth is: filename datasize
|
||||||
|
syn match sdExecKey contained /^\%(User\|Group\|SupplementaryGroups\|CPUAffinity\|SyslogIdentifier\|PAMName\|TCPWrapName\|ControlGroup\|ControlGroupAttribute\|DeviceAllow\|DeviceDeny\|BlockIOWeight\|BlockIO\%(Read\|Write\)Bandwidth\|UtmpIdentifier\)=/
|
||||||
|
syn match sdExecKey contained /^Limit\%(CPU\|FSIZE\|DATA\|STACK\|CORE\|RSS\|NOFILE\|AS\|NPROC\|MEMLOCK\|LOCKS\|SIGPENDING\|MSGQUEUE\|NICE\|RTPRIO\|RTTIME\)=/ nextgroup=sdRlimit
|
||||||
|
syn match sdExecKey contained /^\%(CPUSchedulingResetOnFork\|TTYReset\|TTYVHangup\|TTYVTDisallocate\|SyslogLevelPrefix\|ControlGroupModify\|PrivateTmp\|PrivateNetwork\)=/ nextgroup=sdBool,sdErr
|
||||||
|
syn match sdExecKey contained /^\%(Nice\|OOMScoreAdjust\)=/ nextgroup=sdInt,sdErr
|
||||||
|
syn match sdExecKey contained /^\%(CPUSchedulingPriority\|TimerSlackNSec\|CPUShares\)=/ nextgroup=sdUInt,sdErr
|
||||||
|
syn match sdExecKey contained /^\%(MemoryLimit\|MemorySoftLimit\)=/ nextgroup=sdDatasize,sdErr
|
||||||
|
syn match sdExecKey contained /^\%(ReadWrite\|ReadOnly\|Inaccessible\)Directories=/ nextgroup=sdFileList
|
||||||
|
syn match sdExecKey contained /^Device\%(Allow\|Deny\)=/ nextgroup=sdDevAllow,sdErr
|
||||||
|
syn match sdExecKey contained /^CapabilityBoundingSet=/ nextgroup=sdCapNameList
|
||||||
|
syn match sdExecKey contained /^Capabilities=/ nextgroup=sdCapability,sdErr
|
||||||
|
syn match sdExecKey contained /^UMask=/ nextgroup=sdOctal,sdErr
|
||||||
|
syn match sdExecKey contained /^StandardInput=/ nextgroup=sdStdin,sdErr
|
||||||
|
syn match sdExecKey contained /^Standard\%(Output\|Error\)=/ nextgroup=sdStdout,sdErr
|
||||||
|
syn match sdExecKey contained /^SecureBits=/ nextgroup=sdSecureBitList
|
||||||
|
syn match sdExecKey contained /^SyslogFacility=/ nextgroup=sdSyslogFacil,sdErr
|
||||||
|
syn match sdExecKey contained /^SyslogLevel=/ nextgroup=sdSyslogLevel,sdErr
|
||||||
|
syn match sdExecKey contained /^IOSchedulingClass=/ nextgroup=sdIOSchedClass,sdErr
|
||||||
|
syn match sdExecKey contained /^IOSchedulingPriority=/ nextgroup=sdIOSchedPrio,sdErr
|
||||||
|
syn match sdExecKey contained /^CPUSchedulingPolicy=/ nextgroup=sdCPUSchedPol,sdErr
|
||||||
|
syn match sdExecKey contained /^MountFlags=/ nextgroup=sdMountFlags,sdErr
|
||||||
|
syn match sdExecKey contained /^Environment=/ nextgroup=sdEnvDefs
|
||||||
|
syn match sdExecKey contained /^EnvironmentFile=-\=/ contains=sdEnvDashFlag nextgroup=sdFilename,sdErr
|
||||||
|
|
||||||
|
syn match sdExecFlag contained /-\=@\=/ nextgroup=sdExecFile,sdErr
|
||||||
|
syn match sdExecFile contained /\/\S\+/ nextgroup=sdExecArgs
|
||||||
|
syn match sdExecArgs contained /.*/ contains=sdEnvArg
|
||||||
|
syn match sdEnvDefs contained /.*/ contains=sdEnvDef
|
||||||
|
syn match sdEnvDashFlag contained /-/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdEnvDef contained /\i\+=/he=e-1
|
||||||
|
syn match sdFileList contained /.*/ contains=sdFilename,sdErr
|
||||||
|
" CAPABILITIES WOOO {{{
|
||||||
|
syn case ignore
|
||||||
|
syn match sdCapNameList contained /.*/ contains=sdAnyCapName,sdErr
|
||||||
|
syn match sdAnyCapName contained /CAP_[A-Z_]\+\s*/ contains=sdCapName
|
||||||
|
syn keyword sdCapName contained CAP_AUDIT_CONTROL CAP_AUDIT_WRITE CAP_CHOWN CAP_DAC_OVERRIDE CAP_DAC_READ_SEARCH
|
||||||
|
syn keyword sdCapName contained CAP_FOWNER CAP_FSETID CAP_IPC_LOCK CAP_IPC_OWNER CAP_KILL CAP_LEASE
|
||||||
|
syn keyword sdCapName contained CAP_LINUX_IMMUTABLE CAP_MAC_ADMIN CAP_MAC_OVERRIDE CAP_MKNOD
|
||||||
|
syn keyword sdCapName contained CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW
|
||||||
|
syn keyword sdCapName contained CAP_SETGID CAP_SETFCAP CAP_SETPCAP CAP_SETUID
|
||||||
|
syn keyword sdCapName contained CAP_SYS_ADMIN CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT
|
||||||
|
syn keyword sdCapName contained CAP_SYS_PTRACE CAP_SYS_RAWIO CAP_SYS_RESOURCE CAP_SYS_TIME CAP_SYS_TTY_CONFIG
|
||||||
|
syn case match
|
||||||
|
syn cluster sdCap contains=sdCapName,sdCapOps,sdCapFlags
|
||||||
|
syn match sdCapOps contained /[=+-]/
|
||||||
|
syn match sdCapFlags contained /\<[eip]\+/
|
||||||
|
syn match sdCapability contained /\%(\%([A-Za-z_]\+,\=\)*\|all\)\%(=[eip]*\|[+-][eip]\+\)\s*/ contains=@sdCap nextgroup=sdCapability,sdErr
|
||||||
|
"}}}
|
||||||
|
syn match sdDevAllow contained /\/\S\+\s\+/ nextgroup=sdDevAllowPerm
|
||||||
|
syn match sdDevAllowPerm contained /\S\+/ contains=sdDevAllowErr nextgroup=sdErr
|
||||||
|
syn match sdDevAllowErr contained /[^rwm]\+/
|
||||||
|
syn keyword sdStdin contained nextgroup=sdErr null tty-force tty-fail socket tty
|
||||||
|
syn match sdStdout contained nextgroup=sdErr /\%(syslog\|kmsg\|journal\)\%(+console\)\=/
|
||||||
|
syn keyword sdStdout contained nextgroup=sdErr inherit null tty socket
|
||||||
|
syn keyword sdSyslogFacil contained nextgroup=sdErr kern user mail daemon auth syslog lpr news uucp cron authpriv ftp
|
||||||
|
syn match sdSyslogFacil contained nextgroup=sdErr /\<local[0-7]\>/
|
||||||
|
syn keyword sdSyslogLevel contained nextgroup=sdErr emerg alert crit err warning notice info debug
|
||||||
|
syn keyword sdIOSchedClass contained nextgroup=sdErr 0 1 2 3 none realtime best-effort idle
|
||||||
|
syn keyword sdIOSchedPrio contained nextgroup=sdErr 0 1 2 3 4 5 6 7
|
||||||
|
syn keyword sdCPUSchedPol contained nextgroup=sdErr other batch idle fifo rr
|
||||||
|
syn keyword sdMountFlags contained nextgroup=sdErr shared slave private
|
||||||
|
syn match sdRlimit contained nextgroup=sdErr /\<\%(\d\+\|infinity\)\>/
|
||||||
|
syn keyword sdSecureBits contained nextgroup=sdErr keep-caps keep-caps-locked noroot noroot-locked no-setuid-fixup no-setuid-fixup-locked
|
||||||
|
|
||||||
|
" These are also shared by [Service|Socket|Mount|Swap], although they're not
|
||||||
|
" listed in systemd.exec(5)
|
||||||
|
syn match sdExecKey contained /^TimeoutSec=/ nextgroup=sdDuration,sdErr
|
||||||
|
syn match sdExecKey contained /^KillSignal=/ nextgroup=sdSignal,sdOtherSignal,sdErr
|
||||||
|
syn match sdExecKey contained /^SendSIGKill=/ nextgroup=sdBool,sdErr
|
||||||
|
syn match sdExecKey contained /^KillMode=/ nextgroup=sdKillMode,sdErr
|
||||||
|
syn keyword sdSignal contained nextgroup=sdErr SIGHUP SIGINT SIGQUIT SIGKILL SIGTERM SIGUSR1 SIGUSR2
|
||||||
|
syn match sdOtherSignal contained nextgroup=sdErr /\<\%(\d\+\|SIG[A-Z]\{2,6}\)\>/
|
||||||
|
syn match sdKillMode contained nextgroup=sdErr /\%(control-group\|process\|none\)/
|
||||||
|
|
||||||
|
" [Service] {{{1
|
||||||
|
syn region sdServiceBlock matchgroup=sdHeader start=/^\[Service\]/ end=/^\[/me=e-2 contains=sdServiceKey,sdExecKey
|
||||||
|
syn match sdServiceKey contained /^BusName=/
|
||||||
|
syn match sdServiceKey contained /^\%(RemainAfterExit\|GuessMainPID\|PermissionsStartOnly\|RootDirectoryStartOnly\|NonBlocking\|ControlGroupModify\)=/ nextgroup=sdBool,sdErr
|
||||||
|
syn match sdServiceKey contained /^\%(SysVStartPriority\|FsckPassNo\)=/ nextgroup=sdUInt,sdErr
|
||||||
|
syn match sdServiceKey contained /^\%(Restart\|Timeout\)Sec=/ nextgroup=sdDuration,sdErr
|
||||||
|
syn match sdServiceKey contained /^Sockets=/ nextgroup=sdUnitList
|
||||||
|
syn match sdServiceKey contained /^PIDFile=/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdServiceKey contained /^Type=/ nextgroup=sdServiceType,sdErr
|
||||||
|
syn match sdServiceKey contained /^Restart=/ nextgroup=sdRestartType,sdErr
|
||||||
|
syn match sdServiceKey contained /^NotifyAccess=/ nextgroup=sdNotifyType,sdErr
|
||||||
|
syn keyword sdServiceType contained nextgroup=sdErr simple forking dbus oneshot notify idle
|
||||||
|
syn keyword sdRestartType contained nextgroup=sdErr no on-success on-failure on-abort always
|
||||||
|
syn keyword sdNotifyType contained nextgroup=sdErr none main all
|
||||||
|
|
||||||
|
" [Socket] {{{1
|
||||||
|
syn region sdSocketBlock matchgroup=sdHeader start=/^\[Socket\]/ end=/^\[/me=e-2 contains=sdSocketKey,sdExecKey
|
||||||
|
syn match sdSocketKey contained /^Listen\%(Stream\|Datagram\|SequentialPacket\|FIFO\|Special\|Netlink\|MessageQueue\)=/
|
||||||
|
syn match sdSocketKey contained /^Listen\%(FIFO\|Special\)=/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdSocketKey contained /^\%(Socket\|Directory\)Mode=/ nextgroup=sdOctal,sdErr
|
||||||
|
syn match sdSocketKey contained /^\%(Backlog\|MaxConnections\|Priority\|ReceiveBuffer\|SendBuffer\|IPTTL\|Mark\|PipeSize\|MessageQueueMaxMessages\|MessageQueueMessageSize\)=/ nextgroup=sdUInt,sdErr
|
||||||
|
syn match sdSocketKey contained /^\%(Accept\|KeepAlive\|FreeBind\|Transparent\|Broadcast\)=/ nextgroup=sdBool,sdErr
|
||||||
|
syn match sdSocketKey contained /^BindToDevice=/
|
||||||
|
syn match sdSocketKey contained /^Service=/ nextgroup=sdUnitList
|
||||||
|
syn match sdSocketKey contained /^BindIPv6Only=/ nextgroup=sdBindIPv6,sdErr
|
||||||
|
syn match sdSocketKey contained /^IPTOS=/ nextgroup=sdIPTOS,sdUInt,sdErr
|
||||||
|
syn match sdSocketKey contained /^TCPCongestion=/ nextgroup=sdTCPCongest
|
||||||
|
syn keyword sdBindIPv6 contained nextgroup=sdErr default both ipv6-only
|
||||||
|
syn keyword sdIPTOS contained nextgroup=sdErr low-delay throughput reliability low-cost
|
||||||
|
syn keyword sdTCPCongest contained nextgroup=sdErr westwood veno cubic lp
|
||||||
|
|
||||||
|
" [Timer|Automount|Mount|Swap|Path] {{{1
|
||||||
|
" [Timer]
|
||||||
|
syn region sdTimerBlock matchgroup=sdHeader start=/^\[Timer\]/ end=/^\[/me=e-2 contains=sdTimerKey
|
||||||
|
syn match sdTimerKey contained /^On\%(Active\|Boot\|Startup\|UnitActive\|UnitInactive\)Sec=/ nextgroup=sdDuration,sdErr
|
||||||
|
syn match sdTimerKey contained /^Unit=/ nextgroup=sdUnitList
|
||||||
|
|
||||||
|
" [Automount]
|
||||||
|
syn region sdAutoMountBlock matchgroup=sdHeader start=/^\[Automount\]/ end=/^\[/me=e-2 contains=sdAutomountKey
|
||||||
|
syn match sdAutomountKey contained /^Where=/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdAutomountKey contained /^DirectoryMode=/ nextgroup=sdOctal,sdErr
|
||||||
|
|
||||||
|
" [Mount]
|
||||||
|
syn region sdMountBlock matchgroup=sdHeader start=/^\[Mount\]/ end=/^\[/me=e-2 contains=sdMountKey,sdAutomountKey,sdExecKey
|
||||||
|
syn match sdMountKey contained /^\%(What\|Type\|Options\)=/
|
||||||
|
|
||||||
|
" [Swap]
|
||||||
|
syn region sdSwapBlock matchgroup=sdHeader start=/^\[Swap\]/ end=/^\[/me=e-2 contains=sdSwapKey,sdExecKey
|
||||||
|
syn match sdSwapKey contained /^What=/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdSwapKey contained /^Priority=/ nextgroup=sdUInt,sdErr
|
||||||
|
|
||||||
|
" [Path]
|
||||||
|
syn region sdPathBlock matchgroup=sdHeader start=/^\[Path\]/ end=/^\[/me=e-2 contains=sdPathKey
|
||||||
|
syn match sdPathKey contained /^\%(PathExists\|PathExistsGlob\|PathChanged\|DirectoryNotEmpty\)=/ nextgroup=sdFilename,sdErr
|
||||||
|
syn match sdPathKey contained /^MakeDirectory=/ nextgroup=sdBool,sdErr
|
||||||
|
syn match sdPathKey contained /^DirectoryMode=/ nextgroup=sdOctal,sdErr
|
||||||
|
syn match sdPathKey contained /^Unit=/ nextgroup=sdUnitList
|
||||||
|
|
||||||
|
" Coloring definitions {{{1
|
||||||
|
hi def link sdComment Comment
|
||||||
|
hi def link sdTodo Todo
|
||||||
|
hi def link sdInclude PreProc
|
||||||
|
hi def link sdHeader Type
|
||||||
|
hi def link sdEnvArg PreProc
|
||||||
|
hi def link sdFormatStr Special
|
||||||
|
hi def link sdErr Error
|
||||||
|
hi def link sdEnvDef Identifier
|
||||||
|
hi def link sdUnitName PreProc
|
||||||
|
hi def link sdKey Statement
|
||||||
|
hi def link sdValue Constant
|
||||||
|
hi def link sdSymbol Special
|
||||||
|
|
||||||
|
" Coloring links: keys {{{1
|
||||||
|
|
||||||
|
" It'd be nice if this worked..
|
||||||
|
"hi def link sd.\+Key sdKey
|
||||||
|
hi def link sdUnitKey sdKey
|
||||||
|
hi def link sdInstallKey sdKey
|
||||||
|
hi def link sdExecKey sdKey
|
||||||
|
hi def link sdSocketKey sdKey
|
||||||
|
hi def link sdServiceKey sdKey
|
||||||
|
hi def link sdServiceCommonKey sdKey
|
||||||
|
hi def link sdTimerKey sdKey
|
||||||
|
hi def link sdMountKey sdKey
|
||||||
|
hi def link sdAutomountKey sdKey
|
||||||
|
hi def link sdSwapKey sdKey
|
||||||
|
hi def link sdPathKey sdKey
|
||||||
|
|
||||||
|
" Coloring links: constant values {{{1
|
||||||
|
hi def link sdInt sdValue
|
||||||
|
hi def link sdUInt sdValue
|
||||||
|
hi def link sdBool sdValue
|
||||||
|
hi def link sdOctal sdValue
|
||||||
|
hi def link sdDuration sdValue
|
||||||
|
hi def link sdVirtType sdValue
|
||||||
|
hi def link sdServiceType sdValue
|
||||||
|
hi def link sdNotifyType sdValue
|
||||||
|
hi def link sdSecurityType sdValue
|
||||||
|
hi def link sdSecureBits sdValue
|
||||||
|
hi def link sdMountFlags sdValue
|
||||||
|
hi def link sdKillMode sdValue
|
||||||
|
hi def link sdRestartType sdValue
|
||||||
|
hi def link sdSignal sdValue
|
||||||
|
hi def link sdStdin sdValue
|
||||||
|
hi def link sdStdout sdValue
|
||||||
|
hi def link sdSyslogFacil sdValue
|
||||||
|
hi def link sdSyslogLevel sdValue
|
||||||
|
hi def link sdIOSched sdValue
|
||||||
|
hi def link sdCPUSched sdValue
|
||||||
|
hi def link sdRlimit sdValue
|
||||||
|
hi def link sdCapName sdValue
|
||||||
|
hi def link sdDevAllowPerm sdValue
|
||||||
|
hi def link sdDevAllowErr Error
|
||||||
|
|
||||||
|
" Coloring links: symbols/flags {{{1
|
||||||
|
hi def link sdExecFlag sdSymbol
|
||||||
|
hi def link sdConditionFlag sdSymbol
|
||||||
|
hi def link sdEnvDashFlag sdSymbol
|
||||||
|
hi def link sdCapOps sdSymbol
|
||||||
|
hi def link sdCapFlags Identifier
|
||||||
|
"}}}
|
||||||
|
|
||||||
|
let b:current_syntax = "systemd"
|
||||||
|
" vim: fdm=marker
|
||||||
Reference in New Issue
Block a user