diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-04-28 21:30:58 -0400 |
---|---|---|
committer | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-04-28 21:57:50 -0400 |
commit | df2acdc3be807393ea8d61bb94c41d792388c0de (patch) | |
tree | 6807f01a1794e3c0fe40371bd75661873b27461d | |
parent | 565783be4b42ec8cf2d24543b7d501499c6a1091 (diff) | |
download | rneovim-df2acdc3be807393ea8d61bb94c41d792388c0de.tar.gz rneovim-df2acdc3be807393ea8d61bb94c41d792388c0de.tar.bz2 rneovim-df2acdc3be807393ea8d61bb94c41d792388c0de.zip |
vim-patch:65e0d77a66b7
Update runtime files
https://github.com/vim/vim/commit/65e0d77a66b7e50beb562ad554ace46c32ef8f0f
Omit usr_46.txt because of vim9.
-rw-r--r-- | runtime/doc/eval.txt | 12 | ||||
-rw-r--r-- | runtime/doc/quickref.txt | 1 | ||||
-rw-r--r-- | runtime/doc/syntax.txt | 12 | ||||
-rw-r--r-- | runtime/doc/usr_41.txt | 8 | ||||
-rw-r--r-- | runtime/doc/usr_45.txt | 2 | ||||
-rw-r--r-- | runtime/doc/usr_toc.txt | 2 | ||||
-rw-r--r-- | runtime/doc/windows.txt | 6 | ||||
-rw-r--r-- | runtime/menu.vim | 8 | ||||
-rw-r--r-- | runtime/optwin.vim | 5 | ||||
-rw-r--r-- | runtime/pack/dist/opt/termdebug/plugin/termdebug.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/desktop.vim | 306 | ||||
-rw-r--r-- | runtime/syntax/objc.vim | 5 |
12 files changed, 277 insertions, 94 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index edc37a66cf..91302c94c8 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1296,6 +1296,7 @@ An internal variable is explicitly destroyed with the ":unlet" command Using a name that is not an internal variable or refers to a variable that has been destroyed results in an error. + *variable-scope* There are several name spaces for variables. Which one is to be used is specified by what is prepended: @@ -3893,7 +3894,7 @@ flatten({list} [, {maxdepth}]) *flatten()* a very large number. The {list} is changed in place, make a copy first if you do not want that. - *E964* + *E900* {maxdepth} means how deep in nested lists changes are made. {list} is not modified when {maxdepth} is 0. {maxdepth} must be positive number. @@ -5381,10 +5382,11 @@ inputlist({textlist}) *inputlist()* displayed, one string per line. The user will be prompted to enter a number, which is returned. The user can also select an item by clicking on it with the - mouse. For the first string 0 is returned. When clicking - above the first item a negative number is returned. When - clicking on the prompt one more than the length of {textlist} - is returned. + mouse, if the mouse is enabled in the command line ('mouse' is + "a" or includes "c"). For the first string 0 is returned. + When clicking above the first item a negative number is + returned. When clicking on the prompt one more than the + length of {textlist} is returned. Make sure {textlist} has less than 'lines' entries, otherwise it won't work. It's a good idea to put the entry number at the start of the string. And put a prompt in the first item. diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index 257550082d..7fa449cdca 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -869,6 +869,7 @@ Short explanation of each option: *option-list* 'spellcapcheck' 'spc' pattern to locate end of a sentence 'spellfile' 'spf' files where |zg| and |zw| store words 'spelllang' 'spl' language(s) to do spell checking for +'spelloptions' 'spo' options for spell checking 'spellsuggest' 'sps' method(s) used to suggest spelling corrections 'splitbelow' 'sb' new window from split is below the current one 'splitright' 'spr' new window is put right of the current one diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index d442829773..56f12eadcb 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1191,11 +1191,13 @@ DESKTOP *desktop.vim* *ft-desktop-syntax* Primary goal of this syntax file is to highlight .desktop and .directory files according to freedesktop.org standard: -http://standards.freedesktop.org/desktop-entry-spec/latest/ -But actually almost none implements this standard fully. Thus it will -highlight all Unix ini files. But you can force strict highlighting according -to standard by placing this in your vimrc file: > - :let enforce_freedesktop_standard = 1 +https://specifications.freedesktop.org/desktop-entry-spec/latest/ +To highlight nonstandard extensions that does not begin with X-, set > + let g:desktop_enable_nonstd = 1 +Note that this may cause wrong highlight. +To highlight KDE-reserved features, set > + let g:desktop_enable_kde = 1 +g:desktop_enable_kde follows g:desktop_enable_nonstd if not supplied DIFF *diff.vim* diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt index 119be32433..fcf49c92ac 100644 --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -41,6 +41,12 @@ prefer. And you can use any colon command in it (commands that start with a specific file type. A complicated macro can be defined by a separate Vim script file. You can think of other uses yourself. + If you are familiar with Python, you can find a comparison between + Python and Vim script here, with pointers to other documents: + https://gist.github.com/yegappan/16d964a37ead0979b05e655aa036cad0 + And if you are familiar with Javascript: + https://w0rp.com/blog/post/vim-script-for-the-javascripter/ + Let's start with a simple example: > :let i = 1 @@ -93,6 +99,8 @@ and the value of the variable i. Since i is one, this will print: Then there is the ":let i += 1" command. This does the same thing as ":let i = i + 1". This adds one to the variable i and assigns the new value to the same variable. +Note: this is how it works in legacy Vim script, which is what we discuss in +this file. The example was given to explain the commands, but would you really want to make such a loop, it can be written much more compact: > diff --git a/runtime/doc/usr_45.txt b/runtime/doc/usr_45.txt index 1ce6969d37..bc95f3405e 100644 --- a/runtime/doc/usr_45.txt +++ b/runtime/doc/usr_45.txt @@ -2,7 +2,7 @@ VIM USER MANUAL - by Bram Moolenaar - Select your language + Select your language (locale) The messages in Vim can be given in several languages. This chapter explains diff --git a/runtime/doc/usr_toc.txt b/runtime/doc/usr_toc.txt index 69846f1bcf..eb6dda84bb 100644 --- a/runtime/doc/usr_toc.txt +++ b/runtime/doc/usr_toc.txt @@ -42,7 +42,7 @@ Tuning Vim |usr_42.txt| Add new menus |usr_43.txt| Using filetypes |usr_44.txt| Your own syntax highlighted -|usr_45.txt| Select your language +|usr_45.txt| Select your language (locale) Reference manual diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index 654714177d..bb8e2655f6 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -115,6 +115,12 @@ status line, the '^' character is used for the current window, and '=' for other windows. If 'mouse' is enabled, a status line can be dragged to resize windows. + *filler-lines* +The lines after the last buffer line in a window are called filler lines. +These lines start with a tilde (~) character. By default, these are +highlighted as NonText (|hl-NonText|). The EndOfBuffer highlight group +(|hl-EndOfBuffer|) can be used to change the highlighting of filler lines. + ============================================================================== 3. Opening and closing a window *opening-window* *E36* diff --git a/runtime/menu.vim b/runtime/menu.vim index 40a397b73d..701dd33cdd 100644 --- a/runtime/menu.vim +++ b/runtime/menu.vim @@ -450,12 +450,12 @@ if has("spell") an 40.335.260 &Tools.&Spelling.Set\ Language\ to\ "en_us" :set spl=en_us spell<CR> an <silent> 40.335.270 &Tools.&Spelling.&Find\ More\ Languages :call <SID>SpellLang()<CR> - let s:undo_spellang = ['aun &Tools.&Spelling.&Find\ More\ Languages'] + let s:undo_spelllang = ['aun &Tools.&Spelling.&Find\ More\ Languages'] func! s:SpellLang() - for cmd in s:undo_spellang + for cmd in s:undo_spelllang exe "silent! " . cmd endfor - let s:undo_spellang = [] + let s:undo_spelllang = [] if &enc == "iso-8859-15" let enc = "latin1" @@ -478,7 +478,7 @@ if has("spell") let found += 1 let menuname = '&Tools.&Spelling.' . escape(g:menutrans_set_lang_to, "\\. \t|") . '\ "' . nm . '"' exe 'an 40.335.' . n . ' ' . menuname . ' :set spl=' . nm . ' spell<CR>' - let s:undo_spellang += ['aun ' . menuname] + let s:undo_spelllang += ['aun ' . menuname] endif let n += 10 endfor diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 1da73b397d..3472ad6e28 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2019 Jul 18 +" Last Change: 2020 Jun 10 " If there already is an option window, jump to that one. let buf = bufnr('option-window') @@ -441,6 +441,9 @@ if has("syntax") call append("$", "spellcapcheck\tpattern to locate the end of a sentence") call append("$", "\t(local to buffer)") call <SID>OptionL("spc") + call append("$", "spelloptions\tflags to change how spell checking works") + call append("$", "\t(local to buffer)") + call <SID>OptionL("spo") call append("$", "spellsuggest\tmethods used to suggest corrections") call <SID>OptionG("sps", &sps) call append("$", "mkspellmem\tamount of memory used by :mkspell before compressing") diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index 41d59c39d9..b9ee855836 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -2,7 +2,7 @@ " " Author: Bram Moolenaar " Copyright: Vim license applies, see ":help license" -" Last Change: 2020 May 22 +" Last Change: 2020 Jun 12 " " WORK IN PROGRESS - Only the basics work " Note: On MS-Windows you need a recent version of gdb. The one included with @@ -799,7 +799,7 @@ func s:DeleteCommands() delcommand Asm delcommand Winbar - if exists('s:k_map_saved') + if exists('s:k_map_saved') && !empty(s:k_map_saved) call mapset('n', 0, s:k_map_saved) unlet s:k_map_saved endif diff --git a/runtime/syntax/desktop.vim b/runtime/syntax/desktop.vim index 915107887a..2c1102238d 100644 --- a/runtime/syntax/desktop.vim +++ b/runtime/syntax/desktop.vim @@ -1,107 +1,267 @@ " Vim syntax file -" Language: .desktop, .directory files -" according to freedesktop.org specification 0.9.4 -" http://pdx.freedesktop.org/Standards/desktop-entry-spec/desktop-entry-spec-0.9.4.html -" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl ) -" Last Change: 2016 Apr 02 -" (added "Keywords") -" Version Info: desktop.vim 0.9.4-1.2 +" Language: XDG desktop entry +" Filenames: *.desktop, *.directory +" Maintainer: Eisuke Kawashima ( e.kawaschima+vim AT gmail.com ) +" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl ) +" Last Change: 2020-06-11 +" Version Info: desktop.vim 1.5 +" References: +" - https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.5.html (2020-04-27) +" - https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-0.11.html (2006-02-07) " quit when a syntax file was already loaded if exists("b:current_syntax") - finish + finish endif +let s:cpo_save = &cpo +set cpo&vim +syn case match + +" Variable {{{1 " This syntax file can be used to all *nix configuration files similar to dos -" ini format (eg. .xawtv, .radio, kde rc files) - this is default mode. But -" you can also enforce strict following of freedesktop.org standard for -" .desktop and .directory files . Set (eg. in vimrc) -" let enforce_freedesktop_standard = 1 -" and nonstandard extensions not following X- notation will not be highlighted. -if exists("enforce_freedesktop_standard") - let b:enforce_freedesktop_standard = 1 +" ini format (eg. .xawtv, .radio, kde rc files) - this is default mode. +" By default strict following of freedesktop.org standard is enforced. +" To highlight nonstandard extensions that does not begin with X-, set +" let g:desktop_enable_nonstd = v:true +" Note that this may cause wrong highlight. +" To highlight KDE-reserved features, set +" let g:desktop_enable_kde = v:true +" g:desktop_enable_kde follows g:desktop_enable_nonstd if not supplied + +if exists("g:desktop_enable_nonstd") && g:desktop_enable_nonstd + let s:desktop_enable_nonstd = v:true else - let b:enforce_freedesktop_standard = 0 + let s:desktop_enable_nonstd = v:false endif -" case on -syn case match +if exists("g:desktop_enable_kde") && g:desktop_enable_kde || s:desktop_enable_nonstd + let s:desktop_enable_kde = v:true +else + let s:desktop_enable_kde = v:false +endif + +" Comment {{{1 +syn match dtComment /^#.*$/ -" General -if b:enforce_freedesktop_standard == 0 - syn match dtNotStLabel "^.\{-}=\@=" nextgroup=dtDelim +" Error {{{1 +syn match dtError /\%(^\s.*\|\s\+$\)/ + +" Group Header {{{1 +" ASCII printable characters except for brackets [ (0x5B) and ] (0x5D) +syn match dtGroup /^\[[\x20-\x5A\x5C\x5E-\x7E]\+\]$/ + +" Entries {{{1 +syn match dtDelim /=/ contained +" lang_territory.codeset@modifier +syn match dtLocaleSuffix + \ /\[\%(C\|POSIX\|[a-z]\{2,4}\%(_[A-Z0-9]\{2,3}\)\?\)\%(\.[A-Za-z0-9_-]\+\)\?\%(@[A-Za-z]\+\)\?\]\ze\s*=/ + \ contained + +" Boolean Value {{{2 +syn match dtBoolean + \ /^\%(DBusActivatable\|Hidden\|NoDisplay\|PrefersNonDefaultGPU\|StartupNotify\|Terminal\)\s*=\s*\%(true\|false\)/ + \ contains=dtBooleanKey,dtDelim,dtBooleanValue transparent +syn keyword dtBooleanKey + \ DBusActivatable Hidden NoDisplay PrefersNonDefaultGPU StartupNotify Terminal + \ contained nextgroup=dtDelim + +if s:desktop_enable_kde + syn match dtBoolean + \ /^ReadOnly\s*=\s*\%(true\|false\)/ + \ contains=dtBooleanKey,dtDelim,dtBooleanValue transparent + syn keyword dtBooleanKey + \ ReadOnly + \ contained nextgroup=dtDelim endif +syn keyword dtBooleanValue true false contained -syn match dtGroup /^\s*\[.*\]/ -syn match dtComment /^\s*#.*$/ -syn match dtDelim /=/ contained +" Numeric Value {{{2 +" icon theme +syn match dtNumeric /^\%(MaxSize\|MinSize\|Size\|Threshold\)\s*=\s*\d\+/ contains=dtNumericKey,dtDelim,dtNumericDecimal +syn keyword dtNumericKey + \ MaxSize MinSize Size Threshold + \ contained nextgroup=dtDelim -" Locale -syn match dtLocale /^\s*\<\(Name\|GenericName\|Comment\|SwallowTitle\|Icon\|UnmountIcon\)\>.*/ contains=dtLocaleKey,dtLocaleName,dtDelim transparent -syn keyword dtLocaleKey Name GenericName Comment SwallowTitle Icon UnmountIcon nextgroup=dtLocaleName containedin=dtLocale -syn match dtLocaleName /\(\[.\{-}\]\s*=\@=\|\)/ nextgroup=dtDelim containedin=dtLocale contained +if s:desktop_enable_kde + syn match dtNumeric /^InitialPreference\s*=\s*\d\+/ contains=dtNumericKey,dtDelim,dtNumericDecimal + syn keyword dtNumericKey + \ InitialPreference + \ contained nextgroup=dtDelim +endif + +syn match dtNumericDecimal /\<\d\+$/ contained -" Numeric -syn match dtNumeric /^\s*\<Version\>/ contains=dtNumericKey,dtDelim -syn keyword dtNumericKey Version nextgroup=dtDelim containedin=dtNumeric contained +" String Value {{{2 +syn match dtString + \ /^\%(Actions\|Implements\|MimeType\|NotShowIn\|OnlyShowIn\|Path\|StartupWMClass\|URL\)\s*=.*\S/ + \ contains=dtStringKey,dtDelim transparent +syn keyword dtStringKey + \ Actions Implements MimeType NotShowIn OnlyShowIn Path StartupWMClass URL Version + \ contained nextgroup=dtDelim -" Boolean -syn match dtBoolean /^\s*\<\(StartupNotify\|ReadOnly\|Terminal\|Hidden\|NoDisplay\)\>.*/ contains=dtBooleanKey,dtDelim,dtBooleanValue transparent -syn keyword dtBooleanKey StartupNotify ReadOnly Terminal Hidden NoDisplay nextgroup=dtDelim containedin=dtBoolean contained -syn keyword dtBooleanValue true false containedin=dtBoolean contained +" icon theme +syn match dtString + \ /^\%(Context\|Directories\|Example\|Inherits\)\s*=.*\S/ + \ contains=dtStringKey,dtDelim transparent +syn keyword dtStringKey + \ Context Directories Example Inherits + \ contained nextgroup=dtDelim -" String -syn match dtString /^\s*\<\(Encoding\|Icon\|Path\|Actions\|FSType\|MountPoint\|UnmountIcon\|URL\|Keywords\|Categories\|OnlyShowIn\|NotShowIn\|StartupWMClass\|FilePattern\|MimeType\)\>.*/ contains=dtStringKey,dtDelim transparent -syn keyword dtStringKey Type Encoding TryExec Exec Path Actions FSType MountPoint URL Keywords Categories OnlyShowIn NotShowIn StartupWMClass FilePattern MimeType nextgroup=dtDelim containedin=dtString contained +if s:desktop_enable_kde + syn match dtString + \ /^\%(Dev\|DocPath\|FSType\|MountPoint\|ServiceTypes\)\s*=.*\S/ + \ contains=dtStringKey,dtDelim transparent + syn keyword dtStringKey + \ Dev DocPath FSType MountPoint ServiceTypes + \ contained nextgroup=dtDelim +endif -" Exec -syn match dtExec /^\s*\<\(Exec\|TryExec\|SwallowExec\)\>.*/ contains=dtExecKey,dtDelim,dtExecParam transparent -syn keyword dtExecKey Exec TryExec SwallowExec nextgroup=dtDelim containedin=dtExec contained -syn match dtExecParam /%[fFuUnNdDickv]/ containedin=dtExec contained +" Categories {{{3 +" https://specifications.freedesktop.org/menu-spec/menu-spec-1.0.html#category-registry +syn match dtCategories /^Categories\s*=.\+\S/ contains=dtCategoriesKey,dtDelim,dtCategoriesValue transparent +syn keyword dtCategoriesKey + \ Categories + \ contained nextgroup=dtDelim -" Type -syn match dtType /^\s*\<Type\>.*/ contains=dtTypeKey,dtDelim,dtTypeValue transparent -syn keyword dtTypeKey Type nextgroup=dtDelim containedin=dtType contained -syn keyword dtTypeValue Application Link FSDevice Directory containedin=dtType contained +" Main Categories +syn keyword dtCategoriesValue + \ Audio AudioVideo Development Education Game Graphics Network Office + \ Settings System Utility Video + \ contained -" X-Addition -syn match dtXAdd /^\s*X-.*/ contains=dtXAddKey,dtDelim transparent -syn match dtXAddKey /^\s*X-.\{-}\s*=\@=/ nextgroup=dtDelim containedin=dtXAdd contains=dtXLocale contained +" Additional Categories +syn keyword dtCategoriesValue + \ BoardGame Chat Clock Geoscience Presentation 2DGraphics 3DGraphics + \ Accessibility ActionGame AdventureGame Amusement ArcadeGame Archiving + \ Art ArtificialIntelligence Astronomy AudioVideoEditing Biology + \ BlocksGame BoardGame Building Calculator Calendar CardGame Chart Chat + \ Chemistry Clock Compression ComputerScience ConsoleOnly Construction + \ ContactManagement Core DataVisualization Database Debugger + \ DesktopSettings Dialup Dictionary DiscBurning Documentation Economy + \ Electricity Electronics Email Emulator Engineering FileManager + \ FileTools FileTransfer Filesystem Finance FlowChart GNOME GTK + \ GUIDesigner Geography Geology Geoscience HamRadio HardwareSettings + \ History IDE IRCClient ImageProcessing InstantMessaging Java KDE + \ KidsGame Languages Literature LogicGame Math MedicalSoftware Midi + \ Mixer Monitor Motif Music News NumericalAnalysis OCR P2P PDA + \ PackageManager ParallelComputing Photography Physics Player + \ Presentation Printing Profiling ProjectManagement Publishing Qt + \ RasterGraphics Recorder RemoteAccess RevisionControl Robotics + \ RolePlaying Scanning Science Security Sequencer Simulation Sports + \ SportsGame Spreadsheet StrategyGame TV Telephony TelephonyTools + \ TerminalEmulator TextEditor TextTools Translation Tuner VectorGraphics + \ VideoConference Viewer WebBrowser WebDevelopment WordProcessor + \ contained -" Locale for X-Addition -syn match dtXLocale /\[.\{-}\]\s*=\@=/ containedin=dtXAddKey contained +" Reserved Category +syn keyword dtCategoriesValue + \ Applet Screensaver Shell TrayIcon + \ contained + +" Exec/TryExec {{{3 +syn match dtExec /^\%(Exec\|TryExec\)\s*=.\+\S/ contains=dtExecKey,dtDelim,dtExecParam transparent +syn keyword dtExecKey + \ Exec TryExec + \ contained nextgroup=dtDelim +" code for file(s), URL(s), etc +syn match dtExecParam /\s\zs%[fFuUick]\ze\%(\W\|$\)/ contained + +" Type {{{3 +syn match dtType /^Type\s*=\s*\S\+/ contains=dtTypeKey,dtDelim,dtTypeValue transparent +syn keyword dtTypeKey + \ Type + \ contained nextgroup=dtDelim +syn keyword dtTypeValue + \ Application Directory Link + \ contained + +if s:desktop_enable_kde + syn keyword dtTypeValue + \ FSDevice Service ServiceType + \ contained +endif + + +" Version {{{3 +syn match dtVersion /^Version\s*=\s*\S\+/ contains=dtVersionKey,dtDelim,dtVersionValue transparent +syn keyword dtVersionKey + \ Version + \ contained nextgroup=dtDelim +syn match dtVersionValue /[0-9]\+\%(\.[0-9]\+\)\{1,2}$/ contained + +" Localestring Value {{{2 +syn match dtLocalestring + \ /^\%(Comment\|GenericName\|Keywords\|Name\)\%(\[.\{-}\]\)\?\s*=.*\S/ + \ contains=dtLocalestringKey,dtLocaleSuffix,dtDelim transparent +syn keyword dtLocalestringKey + \ Comment GenericName Keywords Name + \ contained nextgroup=dtLocaleSuffix,dtDelim skipwhite + +" Iconstring Value {{{2 +syn match dtIconstring + \ /^Icon\s*=.*\S/ + \ contains=dtIconstringKey,dtDelim transparent +syn keyword dtIconstringKey + \ Icon + \ contained nextgroup=dtDelim skipwhite + +if s:desktop_enable_kde + syn match dtIconstring + \ /^UnmountIcon\>\%(\[.\{-}\]\)\?\s*=.*\S/ + \ contains=dtIconstringKey,dtLocaleSuffix,dtDelim transparent + syn keyword dtIconstringKey + \ UnmountIcon + \ contained nextgroup=dtLocaleSuffix,dtDelim skipwhite +endif + +" X-Extension {{{2 +syn match dtXExtension /^X-[0-9A-Za-z-]*\%(\[.\{-}\]\)\?\s*=.*\S/ + \ contains=dtXExtensionKey,dtLocaleSuffix,dtDelim transparent +syn match dtXExtensionKey /^X-[0-9A-Za-z-]*/ contained nextgroup=dtLocaleSuffix,dtDelim + +" non standard {{{2 +if s:desktop_enable_nonstd + syn match dtNonStdLabel /^[0-9A-Za-z-]\+\%(\[.\{-}\]\)\?\s*=.*\S/ + \ contains=dtNonStdLabelKey,dtLocaleSuffix,dtDelim transparent + syn match dtNonStdLabelKey /^[0-9A-Za-z-]\+/ contained nextgroup=dtLocaleSuffix,dtDelim +endif -" Locale for all -syn match dtALocale /\[.\{-}\]\s*=\@=/ containedin=ALL +" Highlight {{{1 +hi def link dtComment Comment +hi def link dtError Error +hi def link dtGroup Special -" Define the default highlighting. -" Only when an item doesn't have highlighting yet +hi def link dtDelim Delimiter +hi def link dtLocaleSuffix Identifier -hi def link dtGroup Special -hi def link dtComment Comment -hi def link dtDelim String +hi def link dtBooleanKey Type +hi def link dtBooleanValue Boolean -hi def link dtLocaleKey Type -hi def link dtLocaleName Identifier -hi def link dtXLocale Identifier -hi def link dtALocale Identifier +hi def link dtNumericKey Type +hi def link dtNumericDecimal Number -hi def link dtNumericKey Type +hi def link dtStringKey Type +hi def link dtCategoriesKey Type +hi def link dtCategoriesValue Constant +hi def link dtExecKey Type +hi def link dtExecParam Special +hi def link dtTypeKey Type +hi def link dtTypeValue Constant +hi def link dtVersionKey Type +hi def link dtVersionValue Constant -hi def link dtBooleanKey Type -hi def link dtBooleanValue Constant +hi def link dtLocalestringKey Type -hi def link dtStringKey Type +hi def link dtIconStringKey Type -hi def link dtExecKey Type -hi def link dtExecParam Special -hi def link dtTypeKey Type -hi def link dtTypeValue Constant -hi def link dtNotStLabel Type -hi def link dtXAddKey Type +hi def link dtXExtensionKey Type +hi def link dtNonStdLabelKey Type +" Clean Up {{{1 let b:current_syntax = "desktop" +let &cpo = s:cpo_save -" vim:ts=8 +" vim:ts=8:sw=2:fdm=marker diff --git a/runtime/syntax/objc.vim b/runtime/syntax/objc.vim index 9d7b20ecd0..b29313a3cf 100644 --- a/runtime/syntax/objc.vim +++ b/runtime/syntax/objc.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Objective-C " Maintainer: Kazunobu Kuriyama <kazunobu.kuriyama@gmail.com> -" Last Change: 2015 Dec 14 +" Last Change: 2020 Jun 07 +" Last Change By Maintainer: 2015 Dec 14 """ Preparation for loading ObjC stuff if exists("b:current_syntax") @@ -24,7 +25,7 @@ syn keyword objcUsefulTerm nil Nil NO YES " Preprocessor Directives syn region objcImported display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ -syn match objcImported display contained "\(<\h[-a-zA-Z0-9_/]*\.h>\|<[a-z0-9]\+>\)" +syn match objcImported display contained "\(<\h[-+a-zA-Z0-9_/]*\.h>\|<[a-z0-9]\+>\)" syn match objcImport display "^\s*\(%:\|#\)\s*import\>\s*["<]" contains=objcImported " ObjC Compiler Directives |