updated for version 7.1a
This commit is contained in:
595
runtime/autoload/ada.vim
Normal file
595
runtime/autoload/ada.vim
Normal file
@ -0,0 +1,595 @@
|
||||
"------------------------------------------------------------------------------
|
||||
" Description: Perform Ada specific completion & tagging.
|
||||
" Language: Ada (2005)
|
||||
" $Id$
|
||||
" Maintainer: Martin Krischik
|
||||
" Neil Bird <neil@fnxweb.com>
|
||||
" $Author$
|
||||
" $Date$
|
||||
" Version: 4.2
|
||||
" $Revision$
|
||||
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/ada.vim $
|
||||
" History: 24.05.2006 MK Unified Headers
|
||||
" 26.05.2006 MK ' should not be in iskeyword.
|
||||
" 16.07.2006 MK Ada-Mode as vim-ball
|
||||
" 02.10.2006 MK Better folding.
|
||||
" 15.10.2006 MK Bram's suggestion for runtime integration
|
||||
" 05.11.2006 MK Bram suggested not to use include protection for
|
||||
" autoload
|
||||
" 05.11.2006 MK Bram suggested to save on spaces
|
||||
" Help Page: ft-ada-functions
|
||||
"------------------------------------------------------------------------------
|
||||
|
||||
if version < 700
|
||||
finish
|
||||
endif
|
||||
|
||||
" Section: Constants {{{1
|
||||
"
|
||||
let g:ada#DotWordRegex = '\a\w*\(\_s*\.\_s*\a\w*\)*'
|
||||
let g:ada#WordRegex = '\a\w*'
|
||||
let g:ada#Comment = "\\v^(\"[^\"]*\"|'.'|[^\"']){-}\\zs\\s*--.*"
|
||||
let g:ada#Keywords = []
|
||||
|
||||
" Section: g:ada#Keywords {{{1
|
||||
"
|
||||
" Section: add Ada keywords {{{2
|
||||
"
|
||||
for Item in ['abort', 'else', 'new', 'return', 'abs', 'elsif', 'not', 'reverse', 'abstract', 'end', 'null', 'accept', 'entry', 'select', 'access', 'exception', 'of', 'separate', 'aliased', 'exit', 'or', 'subtype', 'all', 'others', 'synchronized', 'and', 'for', 'out', 'array', 'function', 'overriding', 'tagged', 'at', 'task', 'generic', 'package', 'terminate', 'begin', 'goto', 'pragma', 'then', 'body', 'private', 'type', 'if', 'procedure', 'case', 'in', 'protected', 'until', 'constant', 'interface', 'use', 'is', 'raise', 'declare', 'range', 'when', 'delay', 'limited', 'record', 'while', 'delta', 'loop', 'rem', 'with', 'digits', 'renames', 'do', 'mod', 'requeue', 'xor']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'keyword',
|
||||
\ 'info': 'Ada keyword.',
|
||||
\ 'kind': 'k',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
|
||||
" Section: GNAT Project Files {{{3
|
||||
"
|
||||
if exists ('g:ada_with_gnat_project_files')
|
||||
for Item in ['project']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'keyword',
|
||||
\ 'info': 'GNAT projectfile keyword.',
|
||||
\ 'kind': 'k',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
endif
|
||||
|
||||
" Section: add standart exception {{{2
|
||||
"
|
||||
for Item in ['Constraint_Error', 'Program_Error', 'Storage_Error', 'Tasking_Error', 'Status_Error', 'Mode_Error', 'Name_Error', 'Use_Error', 'Device_Error', 'End_Error', 'Data_Error', 'Layout_Error', 'Length_Error', 'Pattern_Error', 'Index_Error', 'Translation_Error', 'Time_Error', 'Argument_Error', 'Tag_Error', 'Picture_Error', 'Terminator_Error', 'Conversion_Error', 'Pointer_Error', 'Dereference_Error', 'Update_Error']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'exception',
|
||||
\ 'info': 'Ada standart exception.',
|
||||
\ 'kind': 'x',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
|
||||
" Section: add GNAT exception {{{3
|
||||
"
|
||||
if exists ('g:ada_gnat_extensions')
|
||||
for Item in ['Assert_Failure']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'exception',
|
||||
\ 'info': 'GNAT exception.',
|
||||
\ 'kind': 'x',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
endif
|
||||
|
||||
" Section: add Ada buildin types {{{2
|
||||
"
|
||||
for Item in ['Boolean', 'Integer', 'Natural', 'Positive', 'Float', 'Character', 'Wide_Character', 'Wide_Wide_Character', 'String', 'Wide_String', 'Wide_Wide_String', 'Duration']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'type',
|
||||
\ 'info': 'Ada buildin type.',
|
||||
\ 'kind': 't',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
|
||||
" Section: add GNAT buildin types {{{3
|
||||
"
|
||||
if exists ('g:ada_gnat_extensions')
|
||||
for Item in ['Short_Integer', 'Short_Short_Integer', 'Long_Integer', 'Long_Long_Integer', 'Short_Float', 'Short_Short_Float', 'Long_Float', 'Long_Long_Float']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'type',
|
||||
\ 'info': 'GNAT buildin type.',
|
||||
\ 'kind': 't',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
endif
|
||||
|
||||
" Section: add Ada Attributes {{{2
|
||||
"
|
||||
for Item in ['''Access', '''Address', '''Adjacent', '''Aft', '''Alignment', '''Base', '''Bit_Order', '''Body_Version', '''Callable', '''Caller', '''Ceiling', '''Class', '''Component_Size', '''Compose', '''Constrained', '''Copy_Sign', '''Count', '''Definite', '''Delta', '''Denorm', '''Digits', '''Emax', '''Exponent', '''External_Tag', '''Epsilon', '''First', '''First_Bit', '''Floor', '''Fore', '''Fraction', '''Identity', '''Image', '''Input', '''Large', '''Last', '''Last_Bit', '''Leading_Part', '''Length', '''Machine', '''Machine_Emax', '''Machine_Emin', '''Machine_Mantissa', '''Machine_Overflows', '''Machine_Radix', '''Machine_Rounding', '''Machine_Rounds', '''Mantissa', '''Max', '''Max_Size_In_Storage_Elements', '''Min', '''Mod', '''Model', '''Model_Emin', '''Model_Epsilon', '''Model_Mantissa', '''Model_Small', '''Modulus', '''Output', '''Partition_ID', '''Pos', '''Position', '''Pred', '''Priority', '''Range', '''Read', '''Remainder', '''Round', '''Rounding', '''Safe_Emax', '''Safe_First', '''Safe_Large', '''Safe_Last', '''Safe_Small', '''Scale', '''Scaling', '''Signed_Zeros', '''Size', '''Small', '''Storage_Pool', '''Storage_Size', '''Stream_Size', '''Succ', '''Tag', '''Terminated', '''Truncation', '''Unbiased_Rounding', '''Unchecked_Access', '''Val', '''Valid', '''Value', '''Version', '''Wide_Image', '''Wide_Value', '''Wide_Wide_Image', '''Wide_Wide_Value', '''Wide_Wide_Width', '''Wide_Width', '''Width', '''Write']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'attribute',
|
||||
\ 'info': 'Ada attribute.',
|
||||
\ 'kind': 'a',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
|
||||
" Section: add GNAT Attributes {{{3
|
||||
"
|
||||
if exists ('g:ada_gnat_extensions')
|
||||
for Item in ['''Abort_Signal', '''Address_Size', '''Asm_Input', '''Asm_Output', '''AST_Entry', '''Bit', '''Bit_Position', '''Code_Address', '''Default_Bit_Order', '''Elaborated', '''Elab_Body', '''Elab_Spec', '''Emax', '''Enum_Rep', '''Epsilon', '''Fixed_Value', '''Has_Access_Values', '''Has_Discriminants', '''Img', '''Integer_Value', '''Machine_Size', '''Max_Interrupt_Priority', '''Max_Priority', '''Maximum_Alignment', '''Mechanism_Code', '''Null_Parameter', '''Object_Size', '''Passed_By_Reference', '''Range_Length', '''Storage_Unit', '''Target_Name', '''Tick', '''To_Address', '''Type_Class', '''UET_Address', '''Unconstrained_Array', '''Universal_Literal_String', '''Unrestricted_Access', '''VADS_Size', '''Value_Size', '''Wchar_T_Size', '''Word_Size']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'attribute',
|
||||
\ 'info': 'GNAT attribute.',
|
||||
\ 'kind': 'a',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
endif
|
||||
|
||||
" Section: add Ada Pragmas {{{2
|
||||
"
|
||||
for Item in ['All_Calls_Remote', 'Assert', 'Assertion_Policy', 'Asynchronous', 'Atomic', 'Atomic_Components', 'Attach_Handler', 'Controlled', 'Convention', 'Detect_Blocking', 'Discard_Names', 'Elaborate', 'Elaborate_All', 'Elaborate_Body', 'Export', 'Import', 'Inline', 'Inspection_Point', 'Interface (Obsolescent)', 'Interrupt_Handler', 'Interrupt_Priority', 'Linker_Options', 'List', 'Locking_Policy', 'Memory_Size (Obsolescent)', 'No_Return', 'Normalize_Scalars', 'Optimize', 'Pack', 'Page', 'Partition_Elaboration_Policy', 'Preelaborable_Initialization', 'Preelaborate', 'Priority', 'Priority_Specific_Dispatching', 'Profile', 'Pure', 'Queueing_Policy', 'Relative_Deadline', 'Remote_Call_Interface', 'Remote_Types', 'Restrictions', 'Reviewable', 'Shared (Obsolescent)', 'Shared_Passive', 'Storage_Size', 'Storage_Unit (Obsolescent)', 'Suppress', 'System_Name (Obsolescent)', 'Task_Dispatching_Policy', 'Unchecked_Union', 'Unsuppress', 'Volatile', 'Volatile_Components']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'pragma',
|
||||
\ 'info': 'Ada pragma.',
|
||||
\ 'kind': 'p',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
|
||||
" Section: add GNAT Pragmas {{{3
|
||||
"
|
||||
if exists ('g:ada_gnat_extensions')
|
||||
for Item in ['Abort_Defer', 'Ada_83', 'Ada_95', 'Ada_05', 'Annotate', 'Ast_Entry', 'C_Pass_By_Copy', 'Comment', 'Common_Object', 'Compile_Time_Warning', 'Complex_Representation', 'Component_Alignment', 'Convention_Identifier', 'CPP_Class', 'CPP_Constructor', 'CPP_Virtual', 'CPP_Vtable', 'Debug', 'Elaboration_Checks', 'Eliminate', 'Export_Exception', 'Export_Function', 'Export_Object', 'Export_Procedure', 'Export_Value', 'Export_Valued_Procedure', 'Extend_System', 'External', 'External_Name_Casing', 'Finalize_Storage_Only', 'Float_Representation', 'Ident', 'Import_Exception', 'Import_Function', 'Import_Object', 'Import_Procedure', 'Import_Valued_Procedure', 'Initialize_Scalars', 'Inline_Always', 'Inline_Generic', 'Interface_Name', 'Interrupt_State', 'Keep_Names', 'License', 'Link_With', 'Linker_Alias', 'Linker_Section', 'Long_Float', 'Machine_Attribute', 'Main_Storage', 'Obsolescent', 'Passive', 'Polling', 'Profile_Warnings', 'Propagate_Exceptions', 'Psect_Object', 'Pure_Function', 'Restriction_Warnings', 'Source_File_Name', 'Source_File_Name_Project', 'Source_Reference', 'Stream_Convert', 'Style_Checks', 'Subtitle', 'Suppress_All', 'Suppress_Exception_Locations', 'Suppress_Initialization', 'Task_Info', 'Task_Name', 'Task_Storage', 'Thread_Body', 'Time_Slice', 'Title', 'Unimplemented_Unit', 'Universal_Data', 'Unreferenced', 'Unreserve_All_Interrupts', 'Use_VADS_Size', 'Validity_Checks', 'Warnings', 'Weak_External']
|
||||
let g:ada#Keywords += [{
|
||||
\ 'word': Item,
|
||||
\ 'menu': 'pragma',
|
||||
\ 'info': 'GNAT pragma.',
|
||||
\ 'kind': 'p',
|
||||
\ 'icase': 1}]
|
||||
endfor
|
||||
endif
|
||||
" 1}}}
|
||||
|
||||
" Section: g:ada#Ctags_Kinds {{{1
|
||||
"
|
||||
let g:ada#Ctags_Kinds = {
|
||||
\ 'P': ["packspec", "package specifications"],
|
||||
\ 'p': ["package", "packages"],
|
||||
\ 'T': ["typespec", "type specifications"],
|
||||
\ 't': ["type", "types"],
|
||||
\ 'U': ["subspec", "subtype specifications"],
|
||||
\ 'u': ["subtype", "subtypes"],
|
||||
\ 'c': ["component", "record type components"],
|
||||
\ 'l': ["literal", "enum type literals"],
|
||||
\ 'V': ["varspec", "variable specifications"],
|
||||
\ 'v': ["variable", "variables"],
|
||||
\ 'f': ["formal", "generic formal parameters"],
|
||||
\ 'n': ["constant", "constants"],
|
||||
\ 'x': ["exception", "user defined exceptions"],
|
||||
\ 'R': ["subprogspec", "subprogram specifications"],
|
||||
\ 'r': ["subprogram", "subprograms"],
|
||||
\ 'K': ["taskspec", "task specifications"],
|
||||
\ 'k': ["task", "tasks"],
|
||||
\ 'O': ["protectspec", "protected data specifications"],
|
||||
\ 'o': ["protected", "protected data"],
|
||||
\ 'E': ["entryspec", "task/protected data entry specifications"],
|
||||
\ 'e': ["entry", "task/protected data entries"],
|
||||
\ 'b': ["label", "labels"],
|
||||
\ 'i': ["identifier", "loop/declare identifiers"],
|
||||
\ 'a': ["autovar", "automatic variables"],
|
||||
\ 'y': ["annon", "loops and blocks with no identifier"]}
|
||||
|
||||
" Section: ada#Word (...) {{{1
|
||||
"
|
||||
" Extract current Ada word across multiple lines
|
||||
" AdaWord ([line, column])\
|
||||
"
|
||||
function ada#Word (...)
|
||||
if a:0 > 1
|
||||
let l:Line_Nr = a:1
|
||||
let l:Column_Nr = a:2 - 1
|
||||
else
|
||||
let l:Line_Nr = line('.')
|
||||
let l:Column_Nr = col('.') - 1
|
||||
endif
|
||||
|
||||
let l:Line = substitute (getline (l:Line_Nr), g:ada#Comment, '', '' )
|
||||
|
||||
" Cope with tag searching for items in comments; if we are, don't loop
|
||||
" backards looking for previous lines
|
||||
if l:Column_Nr > strlen(l:Line)
|
||||
" We were in a comment
|
||||
let l:Line = getline(l:Line_Nr)
|
||||
let l:Search_Prev_Lines = 0
|
||||
else
|
||||
let l:Search_Prev_Lines = 1
|
||||
endif
|
||||
|
||||
" Go backwards until we find a match (Ada ID) that *doesn't* include our
|
||||
" location - i.e., the previous ID. This is because the current 'correct'
|
||||
" match will toggle matching/not matching as we traverse characters
|
||||
" backwards. Thus, we have to find the previous unrelated match, exclude
|
||||
" it, then use the next full match (ours).
|
||||
" Remember to convert vim column 'l:Column_Nr' [1..n] to string offset [0..(n-1)]
|
||||
" ... but start, here, one after the required char.
|
||||
let l:New_Column = l:Column_Nr + 1
|
||||
while 1
|
||||
let l:New_Column = l:New_Column - 1
|
||||
if l:New_Column < 0
|
||||
" Have to include previous l:Line from file
|
||||
let l:Line_Nr = l:Line_Nr - 1
|
||||
if l:Line_Nr < 1 || !l:Search_Prev_Lines
|
||||
" Start of file or matching in a comment
|
||||
let l:Line_Nr = 1
|
||||
let l:New_Column = 0
|
||||
let l:Our_Match = match (l:Line, g:ada#WordRegex )
|
||||
break
|
||||
endif
|
||||
" Get previous l:Line, and prepend it to our search string
|
||||
let l:New_Line = substitute (getline (l:Line_Nr), g:ada#Comment, '', '' )
|
||||
let l:New_Column = strlen (l:New_Line) - 1
|
||||
let l:Column_Nr = l:Column_Nr + l:New_Column
|
||||
let l:Line = l:New_Line . l:Line
|
||||
endif
|
||||
" Check to see if this is a match excluding 'us'
|
||||
let l:Match_End = l:New_Column +
|
||||
\ matchend (strpart (l:Line,l:New_Column), g:ada#WordRegex ) - 1
|
||||
if l:Match_End >= l:New_Column &&
|
||||
\ l:Match_End < l:Column_Nr
|
||||
" Yes
|
||||
let l:Our_Match = l:Match_End+1 +
|
||||
\ match (strpart (l:Line,l:Match_End+1), g:ada#WordRegex )
|
||||
break
|
||||
endif
|
||||
endwhile
|
||||
|
||||
" Got anything?
|
||||
if l:Our_Match < 0
|
||||
return ''
|
||||
else
|
||||
let l:Line = strpart (l:Line, l:Our_Match)
|
||||
endif
|
||||
|
||||
" Now simply add further lines until the match gets no bigger
|
||||
let l:Match_String = matchstr (l:Line, g:ada#WordRegex)
|
||||
let l:Last_Line = line ('$')
|
||||
let l:Line_Nr = line ('.') + 1
|
||||
while l:Line_Nr <= l:Last_Line
|
||||
let l:Last_Match = l:Match_String
|
||||
let l:Line = l:Line .
|
||||
\ substitute (getline (l:Line_Nr), g:ada#Comment, '', '')
|
||||
let l:Match_String = matchstr (l:Line, g:ada#WordRegex)
|
||||
if l:Match_String == l:Last_Match
|
||||
break
|
||||
endif
|
||||
endwhile
|
||||
|
||||
" Strip whitespace & return
|
||||
return substitute (l:Match_String, '\s\+', '', 'g')
|
||||
endfunction ada#Word
|
||||
|
||||
" Section: ada#List_Tag (...) {{{1
|
||||
"
|
||||
" List tags in quickfix window
|
||||
"
|
||||
function ada#List_Tag (...)
|
||||
if a:0 > 1
|
||||
let l:Tag_Word = ada#Word (a:1, a:2)
|
||||
elseif a:0 > 0
|
||||
let l:Tag_Word = a:1
|
||||
else
|
||||
let l:Tag_Word = ada#Word ()
|
||||
endif
|
||||
|
||||
echo "Searching for" l:Tag_Word
|
||||
|
||||
let l:Pattern = '^' . l:Tag_Word . '$'
|
||||
let l:Tag_List = taglist (l:Pattern)
|
||||
let l:Error_List = []
|
||||
"
|
||||
" add symbols
|
||||
"
|
||||
for Tag_Item in l:Tag_List
|
||||
if l:Tag_Item['kind'] == ''
|
||||
let l:Tag_Item['kind'] = 's'
|
||||
endif
|
||||
|
||||
let l:Error_List += [
|
||||
\ l:Tag_Item['filename'] . '|' .
|
||||
\ l:Tag_Item['cmd'] . '|' .
|
||||
\ l:Tag_Item['kind'] . "\t" .
|
||||
\ l:Tag_Item['name'] ]
|
||||
endfor
|
||||
set errorformat=%f\|%l\|%m
|
||||
cexpr l:Error_List
|
||||
cwindow
|
||||
endfunction ada#List_Tag
|
||||
|
||||
" Section: ada#Jump_Tag (Word, Mode) {{{1
|
||||
"
|
||||
" Word tag - include '.' and if Ada make uppercase
|
||||
"
|
||||
function ada#Jump_Tag (Word, Mode)
|
||||
if a:Word == ''
|
||||
" Get current word
|
||||
let l:Word = ada#Word()
|
||||
if l:Word == ''
|
||||
throw "NOT_FOUND: no identifier found."
|
||||
endif
|
||||
else
|
||||
let l:Word = a:Word
|
||||
endif
|
||||
|
||||
echo "Searching for " . l:Word
|
||||
|
||||
try
|
||||
execute a:Mode l:Word
|
||||
catch /.*:E426:.*/
|
||||
let ignorecase = &ignorecase
|
||||
set ignorecase
|
||||
execute a:Mode l:Word
|
||||
let &ignorecase = ignorecase
|
||||
endtry
|
||||
|
||||
return
|
||||
endfunction ada#Jump_Tag
|
||||
|
||||
" Section: ada#Insert_Backspace () {{{1
|
||||
"
|
||||
" Backspace at end of line after auto-inserted commentstring '-- ' wipes it
|
||||
"
|
||||
function ada#Insert_Backspace ()
|
||||
let l:Line = getline ('.')
|
||||
if col ('.') > strlen (l:Line) &&
|
||||
\ match (l:Line, '-- $') != -1 &&
|
||||
\ match (&comments,'--') != -1
|
||||
return "\<bs>\<bs>\<bs>"
|
||||
else
|
||||
return "\<bs>"
|
||||
endif
|
||||
|
||||
return
|
||||
endfunction ada#InsertBackspace
|
||||
|
||||
" Section: Insert Completions {{{1
|
||||
"
|
||||
" Section: ada#User_Complete(findstart, base) {{{2
|
||||
"
|
||||
" This function is used for the 'complete' option.
|
||||
"
|
||||
function! ada#User_Complete(findstart, base)
|
||||
if a:findstart == 1
|
||||
"
|
||||
" locate the start of the word
|
||||
"
|
||||
let line = getline ('.')
|
||||
let start = col ('.') - 1
|
||||
while start > 0 && line[start - 1] =~ '\i\|'''
|
||||
let start -= 1
|
||||
endwhile
|
||||
return start
|
||||
else
|
||||
"
|
||||
" look up matches
|
||||
"
|
||||
let l:Pattern = '^' . a:base . '.*$'
|
||||
"
|
||||
" add keywords
|
||||
"
|
||||
for Tag_Item in g:ada#Keywords
|
||||
if l:Tag_Item['word'] =~? l:Pattern
|
||||
if complete_add (l:Tag_Item) == 0
|
||||
return []
|
||||
endif
|
||||
if complete_check ()
|
||||
return []
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
return []
|
||||
endif
|
||||
endfunction ada#User_Complete
|
||||
|
||||
" Section: ada#Completion (cmd) {{{2
|
||||
"
|
||||
" Word completion (^N/^R/^X^]) - force '.' inclusion
|
||||
function ada#Completion (cmd)
|
||||
set iskeyword+=46
|
||||
return a:cmd . "\<C-R>=ada#Completion_End ()\<CR>"
|
||||
endfunction ada#Completion
|
||||
|
||||
" Section: ada#Completion_End () {{{2
|
||||
"
|
||||
function ada#Completion_End ()
|
||||
set iskeyword-=46
|
||||
return ''
|
||||
endfunction ada#Completion_End
|
||||
|
||||
" Section: ada#Create_Tags {{{1
|
||||
"
|
||||
function ada#Create_Tags (option)
|
||||
if a:option == 'file'
|
||||
let l:Filename = fnamemodify (bufname ('%'), ':p')
|
||||
elseif a:option == 'dir'
|
||||
let l:Filename =
|
||||
\ fnamemodify (bufname ('%'), ':p:h') . "*.ada " .
|
||||
\ fnamemodify (bufname ('%'), ':p:h') . "*.adb " .
|
||||
\ fnamemodify (bufname ('%'), ':p:h') . "*.ads"
|
||||
else
|
||||
let l:Filename = a:option
|
||||
endif
|
||||
execute '!ctags --excmd=number ' . l:Filename
|
||||
endfunction ada#Create_Tags
|
||||
|
||||
function ada#Switch_Session (New_Session) "{{{1
|
||||
if a:New_Session != v:this_session
|
||||
"
|
||||
" We actualy got a new session - otherwise there
|
||||
" is nothing to do.
|
||||
"
|
||||
if strlen (v:this_session) > 0
|
||||
execute 'mksession! ' . v:this_session
|
||||
endif
|
||||
|
||||
let v:this_session = a:New_Session
|
||||
|
||||
if filereadable (v:this_session)
|
||||
execute 'source ' . v:this_session
|
||||
endif
|
||||
|
||||
augroup ada_session
|
||||
autocmd!
|
||||
autocmd VimLeavePre * execute 'mksession! ' . v:this_session
|
||||
augroup END
|
||||
endif
|
||||
|
||||
return
|
||||
endfunction ada#Switch_Session "}}}1
|
||||
|
||||
" Section: GNAT Pretty Printer folding {{{1
|
||||
"
|
||||
if exists('g:ada_folding') && g:ada_folding[0] == 'g'
|
||||
"
|
||||
" Lines consisting only of ')' ';' are due to a gnat pretty bug and
|
||||
" have the same level as the line above (can't happen in the first
|
||||
" line).
|
||||
"
|
||||
let s:Fold_Collate = '^\([;)]*$\|'
|
||||
|
||||
"
|
||||
" some lone statements are folded with the line above
|
||||
"
|
||||
if stridx (g:ada_folding, 'i') >= 0
|
||||
let s:Fold_Collate .= '\s\+\<is\>$\|'
|
||||
endif
|
||||
if stridx (g:ada_folding, 'b') >= 0
|
||||
let s:Fold_Collate .= '\s\+\<begin\>$\|'
|
||||
endif
|
||||
if stridx (g:ada_folding, 'p') >= 0
|
||||
let s:Fold_Collate .= '\s\+\<private\>$\|'
|
||||
endif
|
||||
if stridx (g:ada_folding, 'x') >= 0
|
||||
let s:Fold_Collate .= '\s\+\<exception\>$\|'
|
||||
endif
|
||||
|
||||
" We also handle empty lines and
|
||||
" comments here.
|
||||
let s:Fold_Collate .= '--\)'
|
||||
|
||||
function ada#Pretty_Print_Folding (Line) " {{{2
|
||||
let l:Text = getline (a:Line)
|
||||
|
||||
if l:Text =~ s:Fold_Collate
|
||||
"
|
||||
" fold with line above
|
||||
"
|
||||
let l:Level = "="
|
||||
elseif l:Text =~ '^\s\+('
|
||||
"
|
||||
" gnat outdents a line which stards with a ( by one characters so
|
||||
" that parameters which follow are aligned.
|
||||
"
|
||||
let l:Level = (indent (a:Line) + 1) / &shiftwidth
|
||||
else
|
||||
let l:Level = indent (a:Line) / &shiftwidth
|
||||
endif
|
||||
|
||||
return l:Level
|
||||
endfunction ada#Pretty_Print_Folding " }}}2
|
||||
endif
|
||||
|
||||
" Section: Options and Menus {{{1
|
||||
"
|
||||
" Section: ada#Switch_Syntax_Options {{{2
|
||||
"
|
||||
function ada#Switch_Syntax_Option (option)
|
||||
syntax off
|
||||
if exists ('g:ada_' . a:option)
|
||||
unlet g:ada_{a:option}
|
||||
echo a:option . 'now off'
|
||||
else
|
||||
let g:ada_{a:option}=1
|
||||
echo a:option . 'now on'
|
||||
endif
|
||||
syntax on
|
||||
endfunction ada#Switch_Syntax_Option
|
||||
|
||||
" Section: ada#Map_Menu {{{2
|
||||
"
|
||||
function ada#Map_Menu (Text, Keys, Command)
|
||||
if a:Keys[0] == ':'
|
||||
execute
|
||||
\ "50amenu " .
|
||||
\ "Ada." . escape(a:Text, ' ') .
|
||||
\ "<Tab>" . a:Keys .
|
||||
\ " :" . a:Command . "<CR>"
|
||||
execute
|
||||
\ "command -buffer " .
|
||||
\ a:Keys[1:] .
|
||||
\" :" . a:Command . "<CR>"
|
||||
elseif a:Keys[0] == '<'
|
||||
execute
|
||||
\ "50amenu " .
|
||||
\ "Ada." . escape(a:Text, ' ') .
|
||||
\ "<Tab>" . a:Keys .
|
||||
\ " :" . a:Command . "<CR>"
|
||||
execute
|
||||
\ "nnoremap <buffer> " .
|
||||
\ a:Keys .
|
||||
\" :" . a:Command . "<CR>"
|
||||
execute
|
||||
\ "inoremap <buffer> " .
|
||||
\ a:Keys .
|
||||
\" <C-O>:" . a:Command . "<CR>"
|
||||
else
|
||||
execute
|
||||
\ "50amenu " .
|
||||
\ "Ada." . escape(a:Text, ' ') .
|
||||
\ "<Tab>" . escape(g:mapleader . "a" . a:Keys , '\') .
|
||||
\ " :" . a:Command . "<CR>"
|
||||
execute
|
||||
\ "nnoremap <buffer>" .
|
||||
\ escape(g:mapleader . "a" . a:Keys , '\') .
|
||||
\" :" . a:Command
|
||||
execute
|
||||
\ "inoremap <buffer>" .
|
||||
\ escape(g:mapleader . "a" . a:Keys , '\') .
|
||||
\" <C-O>:" . a:Command
|
||||
endif
|
||||
return
|
||||
endfunction
|
||||
|
||||
" Section: ada#Map_Popup {{{2
|
||||
"
|
||||
function ada#Map_Popup (Text, Keys, Command)
|
||||
execute
|
||||
\ "50amenu " .
|
||||
\ "PopUp." . escape(a:Text, ' ') .
|
||||
\ "<Tab>" . escape(g:mapleader . "a" . a:Keys , '\') .
|
||||
\ " :" . a:Command . "<CR>"
|
||||
|
||||
call ada#Map_Menu (a:Text, a:Keys, a:Command)
|
||||
return
|
||||
endfunction ada#Map_Popup
|
||||
|
||||
" }}}1
|
||||
|
||||
lockvar g:ada#WordRegex
|
||||
lockvar g:ada#DotWordRegex
|
||||
lockvar g:ada#Comment
|
||||
lockvar! g:ada#Keywords
|
||||
lockvar! g:ada#Ctags_Kinds
|
||||
|
||||
finish " 1}}}
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
" Copyright (C) 2006 Martin Krischik
|
||||
"
|
||||
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
|
||||
"------------------------------------------------------------------------------
|
||||
" vim: textwidth=78 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
|
||||
" vim: foldmethod=marker
|
||||
139
runtime/autoload/gnat.vim
Normal file
139
runtime/autoload/gnat.vim
Normal file
@ -0,0 +1,139 @@
|
||||
"------------------------------------------------------------------------------
|
||||
" Description: Vim Ada/GNAT compiler file
|
||||
" Language: Ada (GNAT)
|
||||
" $Id$
|
||||
" Copyright: Copyright (C) 2006 Martin Krischik
|
||||
" Maintainer: Martin Krischik
|
||||
" $Author$
|
||||
" $Date$
|
||||
" Version: 4.2
|
||||
" $Revision$
|
||||
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/gnat.vim $
|
||||
" History: 24.05.2006 MK Unified Headers
|
||||
" 16.07.2006 MK Ada-Mode as vim-ball
|
||||
" 05.08.2006 MK Add session support
|
||||
" 15.10.2006 MK Bram's suggestion for runtime integration
|
||||
" 05.11.2006 MK Bram suggested not to use include protection for
|
||||
" autoload
|
||||
" 05.11.2006 MK Bram suggested to save on spaces
|
||||
" Help Page: compiler-gnat
|
||||
"------------------------------------------------------------------------------
|
||||
|
||||
if version < 700
|
||||
finish
|
||||
endif
|
||||
|
||||
function gnat#Make () dict " {{{1
|
||||
let &l:makeprg = self.Get_Command('Make')
|
||||
let &l:errorformat = self.Error_Format
|
||||
wall
|
||||
make
|
||||
copen
|
||||
set wrap
|
||||
wincmd W
|
||||
endfunction gnat#Make " }}}1
|
||||
|
||||
function gnat#Pretty () dict " {{{1
|
||||
execute "!" . self.Get_Command('Pretty')
|
||||
endfunction gnat#Make " }}}1
|
||||
|
||||
function gnat#Find () dict " {{{1
|
||||
execute "!" . self.Get_Command('Find')
|
||||
endfunction gnat#Find " }}}1
|
||||
|
||||
function gnat#Tags () dict " {{{1
|
||||
execute "!" . self.Get_Command('Tags')
|
||||
edit tags
|
||||
call gnat#Insert_Tags_Header ()
|
||||
update
|
||||
quit
|
||||
endfunction gnat#Tags " }}}1
|
||||
|
||||
function gnat#Set_Project_File (...) dict " {{{1
|
||||
if a:0 > 0
|
||||
let self.Project_File = a:1
|
||||
|
||||
if ! filereadable (self.Project_File)
|
||||
let self.Project_File = findfile (
|
||||
\ fnamemodify (self.Project_File, ':r'),
|
||||
\ $ADA_PROJECT_PATH,
|
||||
\ 1)
|
||||
endif
|
||||
elseif strlen (self.Project_File) > 0
|
||||
let self.Project_File = browse (0, 'GNAT Project File?', '', self.Project_File)
|
||||
elseif expand ("%:e") == 'gpr'
|
||||
let self.Project_File = browse (0, 'GNAT Project File?', '', expand ("%:e"))
|
||||
else
|
||||
let self.Project_File = browse (0, 'GNAT Project File?', '', 'default.gpr')
|
||||
endif
|
||||
|
||||
if strlen (v:this_session) > 0
|
||||
execute 'mksession! ' . v:this_session
|
||||
endif
|
||||
|
||||
if strlen (self.Project_File) > 0
|
||||
call ada#Switch_Session (
|
||||
\ expand('~') . "/vimfiles/session/" .
|
||||
\ fnamemodify (self.Project_File, ":t:r") . ".vim")
|
||||
else
|
||||
call ada#Switch_Session ('')
|
||||
endif
|
||||
|
||||
return
|
||||
endfunction gnat#Set_Project_File " }}}1
|
||||
|
||||
function gnat#Get_Command (Command) dict " {{{1
|
||||
let l:Command = eval ('self.' . a:Command . '_Command')
|
||||
return eval (l:Command)
|
||||
endfunction gnat#Get_Command " }}}1
|
||||
|
||||
function gnat#Set_Session (...) dict " {{{1
|
||||
if argc() == 1 && fnamemodify (argv(0), ':e') == 'gpr'
|
||||
call self.Set_Project_File (argv(0))
|
||||
elseif strlen (v:servername) > 0
|
||||
call self.Set_Project_File (v:servername . '.gpr')
|
||||
endif
|
||||
endfunction gnat#Set_Session " }}}1
|
||||
|
||||
function gnat#New () " {{{1
|
||||
let l:Retval = {
|
||||
\ 'Make' : function ('gnat#Make'),
|
||||
\ 'Pretty' : function ('gnat#Pretty'),
|
||||
\ 'Find' : function ('gnat#Find'),
|
||||
\ 'Tags' : function ('gnat#Tags'),
|
||||
\ 'Set_Project_File' : function ('gnat#Set_Project_File'),
|
||||
\ 'Set_Session' : function ('gnat#Set_Session'),
|
||||
\ 'Get_Command' : function ('gnat#Get_Command'),
|
||||
\ 'Project_File' : '',
|
||||
\ 'Make_Command' : '"gnat make -P " . self.Project_File . " -F -gnatef "',
|
||||
\ 'Pretty_Command' : '"gnat pretty -P " . self.Project_File . " "',
|
||||
\ 'Find_Program' : '"gnat find -P " . self.Project_File . " -F "',
|
||||
\ 'Tags_Command' : '"gnat xref -P " . self.Project_File . " -v *.AD*"',
|
||||
\ 'Error_Format' : '%f:%l:%c: %trror: %m,' .
|
||||
\ '%f:%l:%c: %tarning: %m,' .
|
||||
\ '%f:%l:%c: (%ttyle) %m'}
|
||||
|
||||
return l:Retval
|
||||
endfunction gnat#New " }}}1
|
||||
|
||||
function gnat#Insert_Tags_Header () " {{{1
|
||||
1insert
|
||||
!_TAG_FILE_FORMAT 1 /extended format; --format=1 will not append ;" to lines/
|
||||
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
|
||||
!_TAG_PROGRAM_AUTHOR AdaCore /info@adacore.com/
|
||||
!_TAG_PROGRAM_NAME gnatxref //
|
||||
!_TAG_PROGRAM_URL http://www.adacore.com /official site/
|
||||
!_TAG_PROGRAM_VERSION 5.05w //
|
||||
.
|
||||
return
|
||||
endfunction gnat#Insert_Tags_Header " }}}1
|
||||
|
||||
finish " 1}}}
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
" Copyright (C) 2006 Martin Krischik
|
||||
"
|
||||
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
|
||||
"------------------------------------------------------------------------------
|
||||
" vim: textwidth=0 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
|
||||
" vim: foldmethod=marker
|
||||
@ -1,8 +1,8 @@
|
||||
" netrwFileHandlers: contains various extension-based file handlers for
|
||||
" netrw's browsers' x command ("eXecute launcher")
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: May 01, 2006
|
||||
" Version: 8
|
||||
" Date: May 30, 2006
|
||||
" Version: 9
|
||||
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
@ -22,16 +22,41 @@ if exists("g:loaded_netrwFileHandlers") || &cp
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
let g:loaded_netrwFileHandlers= "v8"
|
||||
let g:loaded_netrwFileHandlers= "v9"
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" netrwFileHandlers#Invoke: {{{1
|
||||
fun! netrwFileHandlers#Invoke(exten,fname)
|
||||
" call Dfunc("netrwFileHandlers#Invoke(exten<".a:exten."> fname<".a:fname.">)")
|
||||
let fname= a:fname
|
||||
" list of supported special characters. Consider rcs,v --- that can be
|
||||
" supported with a NFH_rcsCOMMAv() handler
|
||||
if a:fname =~ '[@:,$!=\-+%?;~]'
|
||||
let specials= {
|
||||
\ '@' : 'AT',
|
||||
\ ':' : 'COLON',
|
||||
\ ',' : 'COMMA',
|
||||
\ '$' : 'DOLLAR',
|
||||
\ '!' : 'EXCLAMATION',
|
||||
\ '=' : 'EQUAL',
|
||||
\ '-' : 'MINUS',
|
||||
\ '+' : 'PLUS',
|
||||
\ '%' : 'PERCENT',
|
||||
\ '?' : 'QUESTION',
|
||||
\ ';' : 'SEMICOLON',
|
||||
\ '~' : 'TILDE'}
|
||||
let fname= substitute(a:fname,'[@:,$!=\-+%?;~]','\=specials[submatch(0)]','ge')
|
||||
" call Decho('fname<'.fname.'> done with dictionary')
|
||||
endif
|
||||
|
||||
if a:exten != "" && exists("*s:NFH_".a:exten)
|
||||
" call Decho("let ret= netrwFileHandlers#NFH_".a:exten.'("'.a:fname.'")')
|
||||
exe "let ret= s:NFH_".a:exten.'("'.a:fname.'")'
|
||||
if a:exten != "" && exists("*NFH_".a:exten)
|
||||
" support user NFH_*() functions
|
||||
" call Decho("let ret= netrwFileHandlers#NFH_".a:exten.'("'.fname.'")')
|
||||
exe "let ret= NFH_".a:exten.'("'.fname.'")'
|
||||
elseif a:exten != "" && exists("*s:NFH_".a:exten)
|
||||
" use builtin-NFH_*() functions
|
||||
" call Decho("let ret= netrwFileHandlers#NFH_".a:exten.'("'.fname.'")')
|
||||
exe "let ret= s:NFH_".a:exten.'("'.fname.'")'
|
||||
endif
|
||||
|
||||
" call Dret("netrwFileHandlers#Invoke 0 : ret=".ret)
|
||||
@ -48,10 +73,10 @@ fun! s:NFH_html(pagefile)
|
||||
|
||||
if executable("mozilla")
|
||||
" call Decho("executing !mozilla ".page)
|
||||
exe "!mozilla \"".page.'"'
|
||||
exe "!mozilla ".g:netrw_shq.page.g:netrw_shq
|
||||
elseif executable("netscape")
|
||||
" call Decho("executing !netscape ".page)
|
||||
exe "!netscape \"".page.'"'
|
||||
exe "!netscape ".g:netrw_shq..page.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_html 0")
|
||||
return 0
|
||||
@ -71,10 +96,10 @@ fun! s:NFH_htm(pagefile)
|
||||
|
||||
if executable("mozilla")
|
||||
" call Decho("executing !mozilla ".page)
|
||||
exe "!mozilla \"".page.'"'
|
||||
exe "!mozilla ".g:netrw_shq.page.g:netrw_shq
|
||||
elseif executable("netscape")
|
||||
" call Decho("executing !netscape ".page)
|
||||
exe "!netscape \"".page.'"'
|
||||
exe "!netscape ".g:netrw_shq.page.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_htm 0")
|
||||
return 0
|
||||
@ -90,10 +115,10 @@ fun! s:NFH_jpg(jpgfile)
|
||||
" call Dfunc("s:NFH_jpg(jpgfile<".a:jpgfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:jpgfile
|
||||
exe "silent! !gimp -s ".g:netrw_shq.a:jpgfile.g:netrw_shq
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
" call Decho("silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".escape(a:jpgfile," []|'"))
|
||||
exe "!".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:jpgfile.'"'
|
||||
exe "!".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".g:netrw_shq.a:jpgfile.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_jpg 0")
|
||||
return 0
|
||||
@ -109,9 +134,9 @@ fun! s:NFH_gif(giffile)
|
||||
" call Dfunc("s:NFH_gif(giffile<".a:giffile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:giffile
|
||||
exe "silent! !gimp -s ".g:netrw_shq.a:giffile.g:netrw_shq
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:giffile.'"'
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".g:netrw_shq.a:giffile.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_gif 0")
|
||||
return 0
|
||||
@ -127,9 +152,9 @@ fun! s:NFH_png(pngfile)
|
||||
" call Dfunc("s:NFH_png(pngfile<".a:pngfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:pngfile
|
||||
exe "silent! !gimp -s ".g:netrw_shq.a:pngfile.g:netrw_shq
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:pngfile.'"'
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".g:netrw_shq.a:pngfile.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_png 0")
|
||||
return 0
|
||||
@ -145,9 +170,9 @@ fun! s:NFH_pnm(pnmfile)
|
||||
" call Dfunc("s:NFH_pnm(pnmfile<".a:pnmfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:pnmfile
|
||||
exe "silent! !gimp -s ".g:netrw_shq.a:pnmfile.g:netrw_shq
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:pnmfile.'"'
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".g:netrw_shq.a:pnmfile.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_pnm 0")
|
||||
return 0
|
||||
@ -165,7 +190,7 @@ fun! s:NFH_bmp(bmpfile)
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:bmpfile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:bmpfile.'"'
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".g:netrw_shq.a:bmpfile.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_bmp 0")
|
||||
return 0
|
||||
@ -180,7 +205,9 @@ endfun
|
||||
fun! s:NFH_pdf(pdf)
|
||||
" call Dfunc("s:NFH_pdf(pdf<".a:pdf.">)")
|
||||
if executable("gs")
|
||||
exe 'silent! !gs "'.a:pdf.'"'
|
||||
exe 'silent! !gs '.g:netrw_shq.a:pdf.g:netrw_shq
|
||||
elseif executable("pdftotext")
|
||||
exe 'silent! pdftotext -nopgbrk '.g:netrw_shq.a:pdf.g:netrw_shq
|
||||
else
|
||||
" call Dret("s:NFH_pdf 0")
|
||||
return 0
|
||||
@ -196,7 +223,7 @@ fun! s:NFH_doc(doc)
|
||||
" call Dfunc("s:NFH_doc(doc<".a:doc.">)")
|
||||
|
||||
if executable("oowriter")
|
||||
exe 'silent! !oowriter "'.a:doc.'"'
|
||||
exe 'silent! !oowriter '.g:netrw_shq.a:doc.g:netrw_shq
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_doc 0")
|
||||
@ -213,7 +240,7 @@ fun! s:NFH_sxw(sxw)
|
||||
" call Dfunc("s:NFH_sxw(sxw<".a:sxw.">)")
|
||||
|
||||
if executable("oowriter")
|
||||
exe 'silent! !oowriter "'.a:sxw.'"'
|
||||
exe 'silent! !oowriter '.g:netrw_shq.a:sxw.g:netrw_shq
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_sxw 0")
|
||||
@ -230,7 +257,7 @@ fun! s:NFH_xls(xls)
|
||||
" call Dfunc("s:NFH_xls(xls<".a:xls.">)")
|
||||
|
||||
if executable("oocalc")
|
||||
exe 'silent! !oocalc "'.a:xls.'"'
|
||||
exe 'silent! !oocalc '.g:netrw_shq.a:xls.g:netrw_shq
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_xls 0")
|
||||
@ -247,15 +274,15 @@ fun! s:NFH_ps(ps)
|
||||
" call Dfunc("s:NFH_ps(ps<".a:ps.">)")
|
||||
if executable("gs")
|
||||
" call Decho("exe silent! !gs ".a:ps)
|
||||
exe "silent! !gs ".a:ps
|
||||
exe "silent! !gs ".g:netrw_shq.a:ps.g:netrw_shq
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
" call Decho("exe silent! !ghostscript ".a:ps)
|
||||
exe "silent! !ghostscript ".a:ps
|
||||
exe "silent! !ghostscript ".g:netrw_shq.a:ps.g:netrw_shq
|
||||
redraw!
|
||||
elseif executable("gswin32")
|
||||
" call Decho("exe silent! !gswin32 \"".a:ps.'"')
|
||||
exe "silent! !gswin32 \"".a:ps.'"'
|
||||
" call Decho("exe silent! !gswin32 ".g:netrw_shq.a:ps.g:netrw_shq)
|
||||
exe "silent! !gswin32 ".g:netrw_shq.a:ps.g:netrw_shq
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_ps 0")
|
||||
@ -271,16 +298,16 @@ endfun
|
||||
fun! s:NFH_eps(eps)
|
||||
" call Dfunc("s:NFH_eps()")
|
||||
if executable("gs")
|
||||
exe "silent! !gs ".a:eps
|
||||
exe "silent! !gs ".g:netrw_shq.a:eps.g:netrw_shq
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".a:eps
|
||||
exe "silent! !ghostscript ".g:netrw_shq.a:eps.g:netrw_shq
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".a:eps
|
||||
exe "silent! !ghostscript ".g:netrw_shq.a:eps.g:netrw_shq
|
||||
redraw!
|
||||
elseif executable("gswin32")
|
||||
exe "silent! !gswin32 \"".a:eps.'"'
|
||||
exe "silent! !gswin32 ".g:netrw_shq.a:eps.g:netrw_shq
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_eps 0")
|
||||
@ -325,4 +352,4 @@ endfun
|
||||
let &cpo= s:keepcpo
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim: ts=4 fdm=marker
|
||||
" vim: fdm=marker
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: May 02, 2006
|
||||
" Version: 9
|
||||
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Date: Sep 29, 2006
|
||||
" Version: 11
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
"
|
||||
" Contains many ideas from Michael Toren's <tar.vim>
|
||||
@ -18,13 +18,13 @@
|
||||
" of this software.
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Initialization: {{{1
|
||||
" Load Once: {{{1
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
if exists("g:loaded_tar")
|
||||
if &cp || exists("g:loaded_tar") || v:version < 700
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v9"
|
||||
let g:loaded_tar= "v11"
|
||||
"call Decho("loading autoload/tar.vim")
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
@ -41,6 +41,13 @@ endif
|
||||
if !exists("g:tar_writeoptions")
|
||||
let g:tar_writeoptions= "uf"
|
||||
endif
|
||||
if !exists("g:tar_shq")
|
||||
if has("unix")
|
||||
let g:tar_shq= "'"
|
||||
else
|
||||
let g:tar_shq= '"'
|
||||
endif
|
||||
endif
|
||||
|
||||
" ----------------
|
||||
" Functions: {{{1
|
||||
@ -55,8 +62,9 @@ fun! tar#Browse(tarfile)
|
||||
|
||||
" sanity checks
|
||||
if !executable(g:tar_cmd)
|
||||
redraw!
|
||||
echohl Error | echo '***error*** (tar#Browse) "'.g:tar_cmd.'" not available on your system'
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Browse")
|
||||
return
|
||||
@ -65,8 +73,9 @@ fun! tar#Browse(tarfile)
|
||||
" call Decho('a:tarfile<'.a:tarfile.'> not filereadable')
|
||||
if a:tarfile !~# '^\a\+://'
|
||||
" if its an url, don't complain, let url-handlers such as vim do its thing
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Browse) File not readable<".a:tarfile.">" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
endif
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Browse : file<".a:tarfile."> not readable")
|
||||
@ -99,30 +108,26 @@ fun! tar#Browse(tarfile)
|
||||
endif
|
||||
let curlast= line("$")
|
||||
if tarfile =~# '\.\(gz\|tgz\)$'
|
||||
" call Decho("exe silent r! gzip -d -c '".tarfile."'| tar -".g:tar_browseoptions." - ")
|
||||
exe "silent r! gzip -d -c '".tarfile."'| tar -".g:tar_browseoptions." - "
|
||||
" call Decho("exe silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.bz2$'
|
||||
" call Decho("exe silent r! bzip2 -d -c '".tarfile."'| tar -".g:tar_browseoptions." - ")
|
||||
exe "silent r! bzip2 -d -c '".tarfile."'| tar -".g:tar_browseoptions." - "
|
||||
" call Decho("exe silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
else
|
||||
" call Decho("exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." '".tarfile."'")
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." '".tarfile."'"
|
||||
" call Decho("exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".g:tar_shq.tarfile.g:tar_shq)
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".g:tar_shq.tarfile.g:tar_shq
|
||||
endif
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl WarningMsg | echo "***warning*** (tar#Browse) please check your g:tar_browseoptions<".g:tar_browseoptions.">"
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call Dret("tar#Browse : a:tarfile<".a:tarfile.">")
|
||||
silent %d
|
||||
let eikeep= &ei
|
||||
set ei=BufReadCmd,FileReadCmd
|
||||
exe "r ".a:tarfile
|
||||
let &ei= eikeep
|
||||
1d
|
||||
return
|
||||
endif
|
||||
if line("$") == curlast || ( line("$") == (curlast + 1) && getline("$") =~? '\c\%(warning\|error\|inappropriate\|unrecognized\)')
|
||||
if line("$") == curlast || ( line("$") == (curlast + 1) && getline("$") =~ '\c\%(warning\|error\|inappropriate\|unrecognized\)')
|
||||
redraw!
|
||||
echohl WarningMsg | echo "***warning*** (tar#Browse) ".a:tarfile." doesn't appear to be a tar file" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
silent %d
|
||||
let eikeep= &ei
|
||||
set ei=BufReadCmd,FileReadCmd
|
||||
@ -190,14 +195,14 @@ fun! tar#Read(fname,mode)
|
||||
" call Decho("fname<".fname.">")
|
||||
|
||||
if tarfile =~# '\.\(gz\|tgz\)$'
|
||||
" call Decho("exe silent r! gzip -d -c '".tarfile."'| tar -OPxf - '".fname."'")
|
||||
exe "silent r! gzip -d -c '".tarfile."'| tar -".g:tar_readoptions." - '".fname."'"
|
||||
" call Decho("exe silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -OPxf - '".fname."'")
|
||||
exe "silent r! gzip -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_readoptions." - '".fname."'"
|
||||
elseif tarfile =~# '\.bz2$'
|
||||
" call Decho("exe silent r! bzip2 -d -c '".tarfile."'| tar -".g:tar_readoptions." - '".fname."'")
|
||||
exe "silent r! bzip2 -d -c '".tarfile."'| tar -".g:tar_readoptions." - '".fname."'"
|
||||
" call Decho("exe silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_readoptions." - '".fname."'")
|
||||
exe "silent r! bzip2 -d -c ".g:tar_shq.tarfile.g:tar_shq."| ".g:tar_cmd." -".g:tar_readoptions." - '".fname."'"
|
||||
else
|
||||
" call Decho("exe silent r! tar -".g:tar_readoptions." '".tarfile."' '".fname."'")
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." '".tarfile."' '".fname."'"
|
||||
" call Decho("exe silent r! ".g:tar_cmd." -".g:tar_readoptions." ".g:tar_shq.tarfile.g:tar_shq." ".g:tar_shq.fname.g:tar_shq)
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." ".g:tar_shq.tarfile.g:tar_shq." ".g:tar_shq.fname.g:tar_shq
|
||||
endif
|
||||
let w:tarfile= a:fname
|
||||
exe "file tarfile:".fname
|
||||
@ -219,15 +224,17 @@ fun! tar#Write(fname)
|
||||
|
||||
" sanity checks
|
||||
if !executable(g:tar_cmd)
|
||||
redraw!
|
||||
echohl Error | echo '***error*** (tar#Browse) "'.g:tar_cmd.'" not available on your system'
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endif
|
||||
if !exists("*mkdir")
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, mkdir() doesn't work on your system" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
@ -246,8 +253,9 @@ fun! tar#Write(fname)
|
||||
try
|
||||
exe "cd ".escape(tmpdir,' \')
|
||||
catch /^Vim\%((\a\+)\)\=:E344/
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
@ -282,8 +290,9 @@ fun! tar#Write(fname)
|
||||
endif
|
||||
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
else
|
||||
|
||||
" call Decho("tarfile<".tarfile."> fname<".fname.">")
|
||||
@ -309,16 +318,18 @@ fun! tar#Write(fname)
|
||||
" call Decho("tar --delete -f '".tarfile."' '".fname."'")
|
||||
call system("tar --delete -f '".tarfile."' '".fname."'")
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
else
|
||||
|
||||
" update tarfile with new file
|
||||
" call Decho("tar -".g:tar_writeoptions." '".tarfile."' '".fname."'")
|
||||
call system("tar -".g:tar_writeoptions." '".tarfile."' '".fname."'")
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
elseif exists("compress")
|
||||
" call Decho("call system(".compress.")")
|
||||
call system(compress)
|
||||
@ -376,4 +387,4 @@ endfun
|
||||
" Modelines And Restoration: {{{1
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
" vim:ts=8 fdm=marker
|
||||
" vim:ts=8 fdm=marker
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
" vim: tw=0 ts=4 sw=4
|
||||
" Vim color file
|
||||
" Maintainer: Ron Aaron <ron@ronware.org>
|
||||
" Last Change: 2006 Mar 26
|
||||
" Last Change: 2006 Dec 10
|
||||
|
||||
hi clear
|
||||
set background=dark
|
||||
@ -13,11 +13,11 @@ let g:colors_name = "koehler"
|
||||
hi Normal guifg=white guibg=black
|
||||
hi Scrollbar guifg=darkcyan guibg=cyan
|
||||
hi Menu guifg=black guibg=cyan
|
||||
hi SpecialKey term=bold cterm=bold ctermfg=darkred guifg=Blue
|
||||
hi NonText term=bold cterm=bold ctermfg=darkred gui=bold guifg=Blue
|
||||
hi Directory term=bold cterm=bold ctermfg=brown guifg=Blue
|
||||
hi ErrorMsg term=standout cterm=bold ctermfg=grey ctermbg=blue guifg=White guibg=Red
|
||||
hi Search term=reverse ctermfg=white ctermbg=red guifg=white guibg=Red
|
||||
hi SpecialKey term=bold cterm=bold ctermfg=darkred guifg=#cc0000
|
||||
hi NonText term=bold cterm=bold ctermfg=darkred gui=bold guifg=#cc0000
|
||||
hi Directory term=bold cterm=bold ctermfg=brown guifg=#cc8000
|
||||
hi ErrorMsg term=standout cterm=bold ctermfg=grey ctermbg=red guifg=White guibg=Red
|
||||
hi Search term=reverse ctermfg=white ctermbg=red guifg=white guibg=Red
|
||||
hi MoreMsg term=bold cterm=bold ctermfg=darkgreen gui=bold guifg=SeaGreen
|
||||
hi ModeMsg term=bold cterm=bold gui=bold guifg=White guibg=Blue
|
||||
hi LineNr term=underline cterm=bold ctermfg=darkcyan guifg=Yellow
|
||||
@ -26,20 +26,20 @@ hi StatusLine term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white gu
|
||||
hi StatusLineNC term=reverse ctermfg=white ctermbg=lightblue guifg=white guibg=blue
|
||||
hi Title term=bold cterm=bold ctermfg=darkmagenta gui=bold guifg=Magenta
|
||||
hi Visual term=reverse cterm=reverse gui=reverse
|
||||
hi WarningMsg term=standout cterm=bold ctermfg=darkblue guifg=Red
|
||||
hi WarningMsg term=standout cterm=bold ctermfg=darkred guifg=Red
|
||||
hi Cursor guifg=bg guibg=Green
|
||||
hi Comment term=bold cterm=bold ctermfg=cyan guifg=#80a0ff
|
||||
hi Constant term=underline cterm=bold ctermfg=magenta guifg=#ffa0a0
|
||||
hi Special term=bold cterm=bold ctermfg=red guifg=Orange
|
||||
hi Identifier term=underline ctermfg=brown guifg=#40ffff
|
||||
hi Statement term=bold cterm=bold ctermfg=yellow gui=bold guifg=#ffff60
|
||||
hi PreProc term=underline ctermfg=darkblue guifg=#ff80ff
|
||||
hi PreProc term=underline ctermfg=darkmagenta guifg=#ff80ff
|
||||
hi Type term=underline cterm=bold ctermfg=lightgreen gui=bold guifg=#60ff60
|
||||
hi Error term=reverse ctermfg=darkcyan ctermbg=black guifg=Red guibg=Black
|
||||
hi Todo term=standout ctermfg=black ctermbg=darkcyan guifg=Blue guibg=Yellow
|
||||
hi CursorLine term=underline guibg=#555555
|
||||
hi CursorColumn term=underline guibg=#555555
|
||||
hi MatchParen term=reverse guibg=Blue
|
||||
hi CursorLine term=underline guibg=#555555 cterm=underline
|
||||
hi CursorColumn term=underline guibg=#555555 cterm=underline
|
||||
hi MatchParen term=reverse ctermfg=blue guibg=Blue
|
||||
hi TabLine term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white gui=bold guifg=blue guibg=white
|
||||
hi TabLineFill term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white gui=bold guifg=blue guibg=white
|
||||
hi TabLineSel term=reverse ctermfg=white ctermbg=lightblue guifg=white guibg=blue
|
||||
|
||||
54
runtime/compiler/decada.vim
Normal file
54
runtime/compiler/decada.vim
Normal file
@ -0,0 +1,54 @@
|
||||
"------------------------------------------------------------------------------
|
||||
" Description: Vim Ada/Dec Ada compiler file
|
||||
" Language: Ada (Dec Ada)
|
||||
" $Id$
|
||||
" Copyright: Copyright (C) 2006 Martin Krischik
|
||||
" Maintainer: Martin Krischik
|
||||
" $Author$
|
||||
" $Date$
|
||||
" Version: 4.2
|
||||
" $Revision$
|
||||
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/decada.vim $
|
||||
" History: 21.07.2006 MK New Dec Ada
|
||||
" 15.10.2006 MK Bram's suggestion for runtime integration
|
||||
" Help Page: compiler-decada
|
||||
"------------------------------------------------------------------------------
|
||||
|
||||
if (exists("current_compiler") &&
|
||||
\ current_compiler == "decada") ||
|
||||
\ version < 700
|
||||
finish
|
||||
endif
|
||||
|
||||
let current_compiler = "decada"
|
||||
|
||||
if !exists("g:decada")
|
||||
let g:decada = decada#New ()
|
||||
endif
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
"
|
||||
" plugin loaded by other means then the "compiler" command
|
||||
"
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
call g:decada.Set_Session ()
|
||||
|
||||
execute "CompilerSet makeprg=" . escape (g:decada.Make_Command, ' ')
|
||||
execute "CompilerSet errorformat=" . escape (g:decada.Error_Format, ' ')
|
||||
|
||||
call ada#Map_Menu (
|
||||
\'Dec Ada.Build',
|
||||
\'<F7>',
|
||||
\'call decada.Make ()')
|
||||
|
||||
finish " 1}}}
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
" Copyright (C) 2006 Martin Krischik
|
||||
"
|
||||
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
|
||||
"------------------------------------------------------------------------------
|
||||
" vim: textwidth=78 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
|
||||
" vim: foldmethod=marker
|
||||
71
runtime/compiler/gnat.vim
Normal file
71
runtime/compiler/gnat.vim
Normal file
@ -0,0 +1,71 @@
|
||||
"------------------------------------------------------------------------------
|
||||
" Description: Vim Ada/GNAT compiler file
|
||||
" Language: Ada (GNAT)
|
||||
" $Id$
|
||||
" Copyright: Copyright (C) 2006 Martin Krischik
|
||||
" Maintainer: Martin Krischik
|
||||
" $Author$
|
||||
" $Date$
|
||||
" Version: 4.2
|
||||
" $Revision$
|
||||
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/gnat.vim $
|
||||
" History: 24.05.2006 MK Unified Headers
|
||||
" 16.07.2006 MK Ada-Mode as vim-ball
|
||||
" 15.10.2006 MK Bram's suggestion for runtime integration
|
||||
" Help Page: compiler-gnat
|
||||
"------------------------------------------------------------------------------
|
||||
|
||||
if (exists("current_compiler") &&
|
||||
\ current_compiler == "gnat") ||
|
||||
\ version < 700
|
||||
finish
|
||||
endif
|
||||
|
||||
let current_compiler = "gnat"
|
||||
|
||||
if !exists("g:gnat")
|
||||
let g:gnat = gnat#New ()
|
||||
|
||||
call ada#Map_Menu (
|
||||
\ 'GNAT.Build',
|
||||
\ '<F7>',
|
||||
\ 'call gnat.Make ()')
|
||||
call ada#Map_Menu (
|
||||
\ 'GNAT.Pretty Print',
|
||||
\ ':GnatPretty',
|
||||
\ 'call gnat.Pretty ()')
|
||||
call ada#Map_Menu (
|
||||
\ 'GNAT.Tags',
|
||||
\ ':GnatTags',
|
||||
\ 'call gnat.Tags ()')
|
||||
call ada#Map_Menu (
|
||||
\ 'GNAT.Find',
|
||||
\ ':GnatFind',
|
||||
\ 'call gnat.Find ()')
|
||||
call ada#Map_Menu (
|
||||
\ 'GNAT.Set Projectfile\.\.\.',
|
||||
\ ':SetProject',
|
||||
\ 'call gnat.Set_Project_File ()')
|
||||
endif
|
||||
|
||||
if exists(":CompilerSet") != 2
|
||||
"
|
||||
" plugin loaded by other means then the "compiler" command
|
||||
"
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
call g:gnat.Set_Session ()
|
||||
|
||||
execute "CompilerSet makeprg=" . escape (g:gnat.Get_Command('Make'), ' ')
|
||||
execute "CompilerSet errorformat=" . escape (g:gnat.Error_Format, ' ')
|
||||
|
||||
finish " 1}}}
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
" Copyright (C) 2006 Martin Krischik
|
||||
"
|
||||
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
|
||||
"------------------------------------------------------------------------------
|
||||
" vim: textwidth=0 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
|
||||
" vim: foldmethod=marker
|
||||
24
runtime/compiler/mcs.vim
Normal file
24
runtime/compiler/mcs.vim
Normal file
@ -0,0 +1,24 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Mono C# Compiler
|
||||
" Maintainer: Jarek Sobiecki <harijari@go2.pl>
|
||||
" Latest Revision: 2006-06-18
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "mcs"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
setlocal errorformat=
|
||||
\%E%f(%l\\,%c):\ error\ CS%n:%m,
|
||||
\%W%f(%l\\,%c):\ warning\ CS%n:%m,
|
||||
\%E%>syntax\ error\\,%m,%Z%f(%l\\,%c):\ error\ CS%n:%m,
|
||||
\%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',
|
||||
\%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',
|
||||
\%DMaking\ %*\\a\ in\ %f,
|
||||
\%G-%.%#
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
515
runtime/doc/ada.txt
Normal file
515
runtime/doc/ada.txt
Normal file
@ -0,0 +1,515 @@
|
||||
*ada.txt* For Vim version 7.1a. Last change: 2006 Nov 12
|
||||
|
||||
|
||||
ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
|
||||
|
||||
ADA *ada.vim*
|
||||
|
||||
1. Syntax Highlighting |ft-ada-syntax|
|
||||
2. Plug-in |ft-ada-plugin|
|
||||
3. Omni Completion |ft-ada-omni|
|
||||
3.1 Omni Completion with "gnat xref" |gnat-xref|
|
||||
3.2 Omni Completion with "ctags" |ada-ctags|
|
||||
4. Compiler Support |ada-compiler|
|
||||
4.1 GNAT |compiler-gnat|
|
||||
4.1 Dec Ada |compiler-decada|
|
||||
5. References |ada-reference|
|
||||
5.1 Options |ft-ada-options|
|
||||
5.2 Functions |ft-ada-functions|
|
||||
5.3 Commands |ft-ada-commands|
|
||||
5.4 Variables |ft-ada-variables|
|
||||
5.5 Constants |ft-ada-constants|
|
||||
8. Extra Plug-ins |ada-extra-plugins|
|
||||
|
||||
==============================================================================
|
||||
1. Syntax Highlighting ~
|
||||
*ft-ada-syntax*
|
||||
|
||||
This mode is designed for the 2005 edition of Ada ("Ada 2005"), which includes
|
||||
support for objected-programming, protected types, and so on. It handles code
|
||||
written for the original Ada language ("Ada83", "Ada87", "Ada95") as well,
|
||||
though code which uses Ada 2005-only keywords will be wrongly colored (such
|
||||
code should be fixed anyway). For more information about Ada, see
|
||||
http://www.adapower.com.
|
||||
|
||||
The Ada mode handles a number of situations cleanly.
|
||||
|
||||
For example, it knows that the "-" in "-5" is a number, but the same character
|
||||
in "A-5" is an operator. Normally, a "with" or "use" clause referencing
|
||||
another compilation unit is coloured the same way as C's "#include" is coloured.
|
||||
If you have "Conditional" or "Repeat" groups coloured differently, then "end
|
||||
if" and "end loop" will be coloured as part of those respective groups.
|
||||
|
||||
You can set these to different colours using vim's "highlight" command (e.g.,
|
||||
to change how loops are displayed, enter the command ":hi Repeat" followed by
|
||||
the colour specification; on simple terminals the colour specification
|
||||
ctermfg=White often shows well).
|
||||
|
||||
There are several options you can select in this Ada mode. See|ft-ada-options|
|
||||
for a complete list.
|
||||
|
||||
To enable them, assign a value to the option. For example, to turn one on:
|
||||
>
|
||||
> let g:ada_standard_types = 1
|
||||
>
|
||||
To disable them use ":unlet". Example:
|
||||
>
|
||||
> unlet g:ada_standard_types
|
||||
|
||||
You can just use ":" and type these into the command line to set these
|
||||
temporarily before loading an Ada file. You can make these option settings
|
||||
permanent by adding the "let" command(s), without a colon, to your "~/.vimrc"
|
||||
file.
|
||||
|
||||
Even on a slow (90Mhz) PC this mode works quickly, but if you find the
|
||||
performance unacceptable, turn on |g:ada_withuse_ordinary|.
|
||||
|
||||
Syntax folding instructions (|fold-syntax|) are added when |g:ada_folding| is
|
||||
set.
|
||||
|
||||
==============================================================================
|
||||
2. File type Plug-in ~
|
||||
*ft-ada-indent* *ft-ada-plugin*
|
||||
|
||||
The Ada plug-in provides support for:
|
||||
|
||||
- auto indenting (|indent.txt|)
|
||||
- insert completion (|i_CTRL-N|)
|
||||
- user completion (|i_CTRL-X_CTRL-U|)
|
||||
- tag searches (|tagsrch.txt|)
|
||||
- Quick Fix (|quickfix.txt|)
|
||||
- backspace handling (|'backspace'|)
|
||||
- comment handling (|'comments'|, |'commentstring'|)
|
||||
|
||||
The plug-in only activates the features of the Ada mode whenever an Ada
|
||||
files is opened and add adds Ada related entries to the main and pop-up menu.
|
||||
|
||||
==============================================================================
|
||||
3. Omni Completion ~
|
||||
*ft-ada-omni*
|
||||
|
||||
The Ada omni-completions (|i_CTRL-X_CTRL-O|) uses tags database created either
|
||||
by "gnat xref -v" or the "exuberant Ctags (http://ctags.sourceforge.net). The
|
||||
complete function will automatically detect which tool was used to create the
|
||||
tags file.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
3.1 Omni Completion with "gnat xref" ~
|
||||
*gnat-xref*
|
||||
|
||||
GNAT XREF uses the compiler internal informations (ali-files) to produce the
|
||||
tags file. This has the advantage to be 100% correct and the option of deep
|
||||
nested analysis. However the code must compile, the generator is quite
|
||||
slow and the created tags file contains only the basic Ctags informations for
|
||||
each entry - not enough for some of the more advanced Vim code browser
|
||||
plug-ins.
|
||||
|
||||
NOTE: "gnat xref -v" is very tricky to use as it has almost no diagnostic
|
||||
output - If nothing is printed then usually the parameters are wrong.
|
||||
Here some important tips:
|
||||
|
||||
1) You need to compile your code first and use the "-aO" option to point to
|
||||
your .ali files.
|
||||
2) "gnat xref -v ../Include/adacl.ads" won't work - use the "gnat xref -v
|
||||
-aI../Include adacl.ads" instead.
|
||||
3) "gnat xref -v -aI../Include *.ad?" won't work - use "cd ../Include" and
|
||||
then "gnat xref -v *.ad?"
|
||||
4) Project manager support is completely broken - don't even try "gnat xref
|
||||
-Padacl.gpr".
|
||||
5) VIM is faster when the tags file is sorted - use "sort --unique
|
||||
--ignore-case --output=tags tags" .
|
||||
6) Remember to insert "!_TAG_FILE_SORTED 2 %sort ui" as first line to mark
|
||||
the file assorted.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
3.2 Omni Completion with "ctags"~
|
||||
*ada-ctags*
|
||||
|
||||
Exuberant Ctags uses it's own multi-language code parser. The parser is quite
|
||||
fast, produces a lot of extra informations (hence the name "Exuberant Ctags")
|
||||
and can run on files which currently do not compile.
|
||||
|
||||
There are also lots of other Vim-tools which use exuberant Ctags.
|
||||
|
||||
You will need to install a version of the Exuberant Ctags which has Ada
|
||||
support patched in. Such a version is available from the GNU Ada Project
|
||||
(http://gnuada.sourceforge.net).
|
||||
|
||||
The Ada parser for Exuberant Ctags is fairly new - don't expect complete
|
||||
support yet.
|
||||
|
||||
==============================================================================
|
||||
4. Compiler Support ~
|
||||
*ada-compiler*
|
||||
|
||||
The Ada mode supports more then one Ada compiler and will automatically load the
|
||||
compiler set in|g:ada_default_compiler|whenever an Ada source is opened. The
|
||||
provided compiler plug-ins are split into the actual compiler plug-in and a
|
||||
collection of support functions and variables. This allows the easy
|
||||
development of specialized compiler plug-ins fine tuned to your development
|
||||
environment.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
4.1 GNAT ~
|
||||
*compiler-gnat*
|
||||
|
||||
GNAT is the only free (beer and speech) Ada compiler available. There are
|
||||
several version available which differentiate in the licence terms used.
|
||||
|
||||
The GNAT compiler plug-in will perform a compile on pressing <F7> and then
|
||||
immediately shows the result. You can set the project file to be used by
|
||||
setting:
|
||||
>
|
||||
> call g:gnat.Set_Project_File ('my_project.gpr')
|
||||
|
||||
Setting a project file will also create a Vim session (|views-sessions|) so -
|
||||
like with the GPS - opened files, window positions etc. will remembered
|
||||
separately for all projects.
|
||||
|
||||
*gnat_members*
|
||||
GNAT OBJECT ~
|
||||
|
||||
*g:gnat.Make()*
|
||||
g:gnat.Make()
|
||||
Calls|g:gnat.Make_Command|and displays the result inside a
|
||||
|quickfix| window.
|
||||
|
||||
*g:gnat.Pretty()*
|
||||
g:gnat.Pretty()
|
||||
Calls|g:gnat.Pretty_Command|
|
||||
|
||||
*g:gnat.Find()*
|
||||
g:gnat.Find()
|
||||
Calls|g:gnat.Find_Command|
|
||||
|
||||
*g:gnat.Tags()*
|
||||
g:gnat.Tags()
|
||||
Calls|g:gnat.Tags_Command|
|
||||
|
||||
*g:gnat.Set_Project_File()*
|
||||
g:gnat.Set_Project_File([{file}])
|
||||
Set gnat project file and load associated session. An open
|
||||
project will be closed and the session written. If called
|
||||
without file name the file selector opens for selection of a
|
||||
project file. If called with an empty string then the project
|
||||
and associated session are closed.
|
||||
|
||||
*g:gnat.Project_File*
|
||||
g:gnat.Project_File string
|
||||
Current project file.
|
||||
|
||||
*g:gnat.Make_Command*
|
||||
g:gnat.Make_Command string
|
||||
External command used for|g:gnat.Make()| (|'makeprg'|).
|
||||
|
||||
*g:gnat.Pretty_Program*
|
||||
g:gnat.Pretty_Program string
|
||||
External command used for|g:gnat.Pretty()|
|
||||
|
||||
*g:gnat.Find_Program*
|
||||
g:gnat.Find_Program string
|
||||
External command used for|g:gnat.Find()|
|
||||
|
||||
*g:gnat.Tags_Command*
|
||||
g:gnat.Tags_Command string
|
||||
External command used for|g:gnat.Tags()|
|
||||
|
||||
*g:gnat.Error_Format*
|
||||
g:gnat.Error_Format string
|
||||
Error format (|'errorformat'|)
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
4.2 Dec Ada ~
|
||||
*compiler-hpada* *compiler-decada*
|
||||
*compiler-vaxada* *compiler-compaqada*
|
||||
|
||||
Dec Ada (also known by - in chronological order - VAX Ada, Dec Ada, Compaq Ada
|
||||
and HP Ada) is a fairly dated Ada 83 compiler. Support is basic: <F7> will
|
||||
compile the current unit.
|
||||
|
||||
The Dec Ada compiler expects the package name and not the file name to be
|
||||
passed a parameter. The compiler plug-in supports the usual file name
|
||||
convention to convert the file into a unit name. For separates both '-' and
|
||||
'__' are allowed.
|
||||
|
||||
*decada_members*
|
||||
DEC ADA OBJECT ~
|
||||
|
||||
*g:decada.Make()*
|
||||
g:decada.Make() function
|
||||
Calls|g:decada.Make_Command|and displays the result inside a
|
||||
|quickfix| window.
|
||||
|
||||
*g:decada.Unit_Name()*
|
||||
g:decada.Unit_Name() function
|
||||
Get the Unit name for the current file.
|
||||
|
||||
*g:decada.Make_Command*
|
||||
g:decada.Make_Command string
|
||||
External command used for|g:decadat.Make()| (|'makeprg'|).
|
||||
|
||||
*g:decada.Error_Format*
|
||||
g:decada.Error_Format| string
|
||||
Error format (|'errorformat'|).
|
||||
|
||||
==============================================================================
|
||||
5. References ~
|
||||
*ada-reference*
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.1 Options ~
|
||||
*ft-ada-options*
|
||||
|
||||
*g:ada_standard_types*
|
||||
g:ada_standard_types bool (true when exists)
|
||||
Highlight types in package Standard (e.g., "Float")
|
||||
|
||||
*g:ada_space_errors*
|
||||
*g:ada_no_trail_space_error*
|
||||
*g:ada_no_tab_space_error*
|
||||
*g:ada_all_tab_usage*
|
||||
g:ada_space_errors bool (true when exists)
|
||||
Highlight extraneous errors in spaces ...
|
||||
g:ada_no_trail_space_error
|
||||
- but ignore trailing spaces at the end of a line
|
||||
g:ada_no_tab_space_error
|
||||
- but ignore tabs after spaces
|
||||
g:ada_all_tab_usage
|
||||
- highlight all tab use
|
||||
|
||||
*g:ada_line_errors*
|
||||
g:ada_line_errors bool (true when exists)
|
||||
Highlight lines which are to long. Note: This highlighting
|
||||
option is quite CPU intensive.
|
||||
|
||||
*g:ada_rainbow_color*
|
||||
g:ada_rainbow_color bool (true when exists)
|
||||
Use rainbow colours for '(' and ')'. You need the
|
||||
rainbow_parenthesis for this to work
|
||||
|
||||
*g:ada_folding*
|
||||
g:ada_folding set ('sigpft')
|
||||
Use folding for Ada sources.
|
||||
's': activate syntax folding on load
|
||||
'p': fold packages
|
||||
'f': fold functions and procedures
|
||||
't': fold types
|
||||
'c': fold conditionals
|
||||
'g': activate gnat pretty print folding on load
|
||||
'i': lone 'is' folded with line above
|
||||
'b': lone 'begin' folded with line above
|
||||
'p': lone 'private' folded with line above
|
||||
'x': lone 'exception' folded with line above
|
||||
'i': activate indent folding on load
|
||||
|
||||
Note: Syntax folding is in an early (unuseable) stage and
|
||||
indent or gnat pretty folding is suggested.
|
||||
|
||||
For gnat pretty folding to work the following settings are
|
||||
suggested: -cl3 -M79 -c2 -c3 -c4 -A1 -A2 -A3 -A4 -A5
|
||||
|
||||
For indent folding to work the following settings are
|
||||
suggested: shiftwidth=3 softtabstop=3
|
||||
|
||||
*g:ada_abbrev*
|
||||
g:ada_abbrev bool (true when exists)
|
||||
Add some abbreviations. This feature more or less superseded
|
||||
by the various completion methods.
|
||||
|
||||
*g:ada_withuse_ordinary*
|
||||
g:ada_withuse_ordinary bool (true when exists)
|
||||
Show "with" and "use" as ordinary keywords (when used to
|
||||
reference other compilation units they're normally highlighted
|
||||
specially).
|
||||
|
||||
*g:ada_begin_preproc*
|
||||
g:ada_begin_preproc bool (true when exists)
|
||||
Show all begin-like keywords using the colouring of C
|
||||
preprocessor commands.
|
||||
|
||||
*g:ada_omni_with_keywords*
|
||||
g:ada_omni_with_keywords
|
||||
Add Keywords, Pragmas, Attributes to omni-completions
|
||||
(|compl-omni|). Note: You can always complete then with user
|
||||
completion (|i_CTRL-X_CTRL-U|).
|
||||
|
||||
*g:ada_extended_tagging*
|
||||
g:ada_extended_tagging enum ('jump', 'list')
|
||||
use extended tagging, two options are available
|
||||
'jump': use tjump to jump.
|
||||
'list': add tags quick fix list.
|
||||
Normal tagging does not support function or operator
|
||||
overloading as these features are not available in C and
|
||||
tagging was originally developed for C.
|
||||
|
||||
*g:ada_extended_completion*
|
||||
g:ada_extended_completion
|
||||
Uses extended completion for <C-N> and <C-R> completions
|
||||
(|i_CTRL-N|). In this mode the '.' is used as part of the
|
||||
identifier so that 'Object.Method' or 'Package.Procedure' are
|
||||
completed together.
|
||||
|
||||
*g:ada_gnat_extensions*
|
||||
g:ada_gnat_extensions bool (true when exists)
|
||||
Support GNAT extensions.
|
||||
|
||||
*g:ada_with_gnat_project_files*
|
||||
g:ada_with_gnat_project_files bool (true when exists)
|
||||
Add gnat project file keywords and Attributes.
|
||||
|
||||
*g:ada_default_compiler*
|
||||
g:ada_default_compiler string
|
||||
set default compiler. Currently supported is 'gnat' and
|
||||
'decada'.
|
||||
|
||||
An "exists" type is a boolean is considered true when the variable is defined
|
||||
and false when the variable is undefined. The value which the variable is
|
||||
set makes no difference.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.3 Commands ~
|
||||
*ft-ada-commands*
|
||||
|
||||
:AdaRainbow *:AdaRainbow*
|
||||
Toggles rainbow colour (|g:ada_rainbow_color|) mode for
|
||||
'(' and ')'
|
||||
|
||||
:AdaLines *:AdaLines*
|
||||
Toggles line error (|g:ada_line_errors|) display
|
||||
|
||||
:AdaSpaces *:AdaSpaces*
|
||||
Toggles space error (|g:ada_space_errors|) display.
|
||||
|
||||
:AdaTagDir *:AdaTagDir*
|
||||
Creates tags file for the directory of the current file.
|
||||
|
||||
:AdaTagFile *:AdaTagFile*
|
||||
Creates tags file for the current file.
|
||||
|
||||
:AdaTypes *:AdaTypes*
|
||||
Toggles standard types (|g:ada_standard_types|) colour.
|
||||
|
||||
:GnatFind *:GnatFind*
|
||||
Calls |g:gnat.Find()|
|
||||
|
||||
:GnatPretty *:GnatPretty*
|
||||
Calls |g:gnat.Pretty()|
|
||||
|
||||
:GnatTags *:GnatTags*
|
||||
Calls |g:gnat.Tags()|
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.3 Variables ~
|
||||
*ft-ada-variables*
|
||||
|
||||
*g:gnat*
|
||||
g:gnat object
|
||||
Control object which manages GNAT compiles. The object
|
||||
is created when the first Ada source code is loaded provided
|
||||
that |g:ada_default_compiler|is set to 'gnat'. See|gnat_members|
|
||||
for details.
|
||||
|
||||
*g:decada*
|
||||
g:decada object
|
||||
Control object which manages Dec Ada compiles. The object
|
||||
is created when the first Ada source code is loaded provided
|
||||
that |g:ada_default_compiler|is set to 'decada'. See
|
||||
|decada_members|for details.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.4 Constants ~
|
||||
*ft-ada-constants*
|
||||
|
||||
All constants are locked. See |:lockvar| for details.
|
||||
|
||||
*g:ada#WordRegex*
|
||||
g:ada#WordRegex string
|
||||
Regular expression to search for Ada words
|
||||
|
||||
*g:ada#DotWordRegex*
|
||||
g:ada#DotWordRegex string
|
||||
Regular expression to search for Ada words separated by dots.
|
||||
|
||||
*g:ada#Comment*
|
||||
g:ada#Comment string
|
||||
Regular expression to search for Ada comments
|
||||
|
||||
*g:ada#Keywords*
|
||||
g:ada#Keywords list of dictionaries
|
||||
List of keywords, attributes etc. pp. in the format used by
|
||||
omni completion. See |complete-items| for details.
|
||||
|
||||
*g:ada#Ctags_Kinds*
|
||||
g:ada#Ctags_Kinds dictionary of lists
|
||||
Dictionary of the various kinds of items which the Ada support
|
||||
for Ctags generates.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.2 Functions ~
|
||||
*ft-ada-functions*
|
||||
|
||||
ada#Word([{line}, {col}]) *ada#Word()*
|
||||
Return full name of Ada entity under the cursor (or at given
|
||||
line/column), stripping white space/newlines as necessary.
|
||||
|
||||
ada#List_Tag([{line}, {col}]) *ada#Listtags()*
|
||||
List all occurrences of the Ada entity under the cursor (or at
|
||||
given line/column) inside the quick-fix window
|
||||
|
||||
ada#Jump_Tag ({ident}, {mode}) *ada#Jump_Tag()*
|
||||
List all occurrences of the Ada entity under the cursor (or at
|
||||
given line/column) in the tag jump list. Mode can either be
|
||||
'tjump' or 'stjump'.
|
||||
|
||||
ada#Create_Tags ({option}) *ada#Create_Tags()*
|
||||
Creates tag file using Ctags. The option can either be 'file'
|
||||
for the current file, 'dir' for the directory of the current
|
||||
file or a file name.
|
||||
|
||||
gnat#Insert_Tags_Header() *gnat#Insert_Tags_Header()*
|
||||
Adds the tag file header (!_TAG_) informations to the current
|
||||
file which are missing from the GNAT XREF output.
|
||||
|
||||
ada#Switch_Syntax_Option ({option}) *ada#Switch_Syntax_Option()*
|
||||
Toggles highlighting options on or off. Used for the Ada menu.
|
||||
|
||||
*gnat#New()*
|
||||
gnat#New ()
|
||||
Create a new gnat object. See |g:gnat| for details.
|
||||
|
||||
|
||||
==============================================================================
|
||||
8. Extra Plugins ~
|
||||
*ada-extra-plugins*
|
||||
|
||||
You can optionally install the following extra plug-in. They work well with Ada
|
||||
and enhance the ability of the Ada mode.:
|
||||
|
||||
backup.vim
|
||||
http://www.vim.org/scripts/script.php?script_id=1537
|
||||
Keeps as many backups as you like so you don't have to.
|
||||
|
||||
rainbow_parenthsis.vim
|
||||
http://www.vim.org/scripts/script.php?script_id=1561
|
||||
Very helpful since Ada uses only '(' and ')'.
|
||||
|
||||
nerd_comments.vim
|
||||
http://www.vim.org/scripts/script.php?script_id=1218
|
||||
Excellent commenting and uncommenting support for almost any
|
||||
programming language.
|
||||
|
||||
matchit.vim
|
||||
http://www.vim.org/scripts/script.php?script_id=39
|
||||
'%' jumping for any language. The normal '%' jump only works for '{}'
|
||||
style languages. The Ada mode will set the needed search patters.
|
||||
|
||||
taglist.vim
|
||||
http://www.vim.org/scripts/script.php?script_id=273
|
||||
Source code explorer sidebar. There is a patch for Ada available.
|
||||
|
||||
The GNU Ada Project distribution (http://gnuada.sourceforge.net) of Vim
|
||||
contains all of the above.
|
||||
|
||||
==============================================================================
|
||||
vim: textwidth=78 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab
|
||||
vim: filetype=help encoding=latin1
|
||||
@ -1,4 +1,4 @@
|
||||
*arabic.txt* For Vim version 7.0. Last change: 2005 Mar 29
|
||||
*arabic.txt* For Vim version 7.1a. Last change: 2005 Mar 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Nadim Shaikli
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*farsi.txt* For Vim version 7.0. Last change: 2005 Mar 29
|
||||
*farsi.txt* For Vim version 7.1a. Last change: 2005 Mar 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 7.0. Last change: 2006 Apr 28
|
||||
*filetype.txt* For Vim version 7.1a. Last change: 2007 Mar 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -43,6 +43,8 @@ Detail: The ":filetype on" command will load one of these files:
|
||||
BufNewFile and BufRead events. If the file type is not found by the
|
||||
name, the file $VIMRUNTIME/scripts.vim is used to detect it from the
|
||||
contents of the file.
|
||||
When the GUI is running or will start soon, the menu.vim script is
|
||||
also sourced. See |'go-M'| about avoiding that.
|
||||
|
||||
To add your own file types, see |new-filetype| below. To search for help on a
|
||||
filetype prepend "ft-" and optionally append "-syntax", "-indent" or
|
||||
@ -304,24 +306,28 @@ all loaded. For example, if this command: >
|
||||
|
||||
set runtimepath
|
||||
|
||||
produces this output: >
|
||||
produces this output:
|
||||
|
||||
runtimepath=/etc/vim,~/.vim,/usr/local/share/vim/vim60
|
||||
runtimepath=/etc/vim,~/.vim,/usr/local/share/vim/vim60 ~
|
||||
|
||||
then Vim will load all plugins in these directories: >
|
||||
then Vim will load all plugins in these directories and below:
|
||||
|
||||
/etc/vim/plugin/
|
||||
~/.vim/plugin/
|
||||
/usr/local/share/vim/vim60/plugin/
|
||||
/etc/vim/plugin/ ~
|
||||
~/.vim/plugin/ ~
|
||||
/usr/local/share/vim/vim60/plugin/ ~
|
||||
|
||||
Note that the last one is the value of $VIMRUNTIME which has been expanded.
|
||||
|
||||
What if it looks like your plugin is not being loaded? You can find out what
|
||||
happens when Vim starts up by using the |-V| argument: >
|
||||
vim -V1
|
||||
|
||||
vim -V2
|
||||
|
||||
You will see a lot of messages, in between them is a remark about loading the
|
||||
plugins. It starts with: >
|
||||
Searching for "plugin/*.vim" in
|
||||
plugins. It starts with:
|
||||
|
||||
Searching for "plugin/**/*.vim" in ~
|
||||
|
||||
There you can see where Vim looks for your plugin scripts.
|
||||
|
||||
==============================================================================
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*hebrew.txt* For Vim version 7.0. Last change: 2003 May 11
|
||||
*hebrew.txt* For Vim version 7.1a. Last change: 2003 May 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ron Aaron (and Avner Lottem)
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*howto.txt* For Vim version 7.0. Last change: 2006 Apr 02
|
||||
*howto.txt* For Vim version 7.1a. Last change: 2006 Apr 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 7.0. Last change: 2006 Apr 20
|
||||
*intro.txt* For Vim version 7.1a. Last change: 2006 Apr 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*os_amiga.txt* For Vim version 7.0. Last change: 2005 Mar 29
|
||||
*os_amiga.txt* For Vim version 7.1a. Last change: 2005 Mar 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*os_dos.txt* For Vim version 7.0. Last change: 2006 Mar 30
|
||||
*os_dos.txt* For Vim version 7.1a. Last change: 2006 Mar 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
||||
*os_win32.txt* For Vim version 7.1a. Last change: 2007 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@ -269,7 +269,7 @@ A. When writing a file Vim renames the original file, this is a backup (in
|
||||
Q. How do I get to see the output of ":make" while it's running?
|
||||
A. Basically what you need is to put a tee program that will copy its input
|
||||
(the output from make) to both stdout and to the errorfile. You can find a
|
||||
copy of tee (and a number of other GNU tools tools) at
|
||||
copy of tee (and a number of other GNU tools) at
|
||||
http://gnuwin32.sourceforge.net or http://unxutils.sourceforge.net
|
||||
Alternatively, try the more recent Cygnus version of the GNU tools at
|
||||
http://www.cygwin.com Other Unix-style tools for Win32 are listed at
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
||||
*pattern.txt* For Vim version 7.1a. Last change: 2007 Apr 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -587,7 +587,7 @@ overview.
|
||||
{Vi does not have any of these}
|
||||
|
||||
n and m are positive decimal numbers or zero
|
||||
|
||||
*non-greedy*
|
||||
If a "-" appears immediately after the "{", then a shortest match
|
||||
first algorithm is used (see example below). In particular, "\{-}" is
|
||||
the same as "*" but uses the shortest match first algorithm. BUT: A
|
||||
@ -969,7 +969,7 @@ x A single character, with no special meaning, matches itself
|
||||
[xyz] any 'x', 'y' or 'z'
|
||||
[a-zA-Z]$ any alphabetic character at the end of a line
|
||||
\c[a-z]$ same
|
||||
|
||||
*/[\n]*
|
||||
With "\_" prepended the collection also includes the end-of-line.
|
||||
The same can be done by including "\n" in the collection. The
|
||||
end-of-line is also matched when the collection starts with "^"! Thus
|
||||
@ -1042,6 +1042,7 @@ x A single character, with no special meaning, matches itself
|
||||
\t <Tab>
|
||||
\r <CR> (NOT end-of-line!)
|
||||
\b <BS>
|
||||
\n line break, see above |/[\n]|
|
||||
\d123 decimal number of character
|
||||
\o40 octal number of character up to 0377
|
||||
\x20 hexadecimal number of character up to 0xff
|
||||
@ -1068,6 +1069,8 @@ x A single character, with no special meaning, matches itself
|
||||
You don't often have to use it, but it is possible. Example: >
|
||||
/\<r\%[[eo]ad]\>
|
||||
< Matches the words "r", "re", "ro", "rea", "roa", "read" and "road".
|
||||
There can be no \(\), \%(\) or \z(\) items inside the [] and \%[] does
|
||||
not nest.
|
||||
{not available when compiled without the +syntax feature}
|
||||
|
||||
*/\%d* */\%x* */\%o* */\%u* */\%U* *E678*
|
||||
@ -1145,7 +1148,7 @@ composing character by itself, except that it doesn't matter what comes before
|
||||
this.
|
||||
|
||||
The order of composing characters matters, even though changing the order
|
||||
doen't change what a character looks like. This may change in the future.
|
||||
doesn't change what a character looks like. This may change in the future.
|
||||
|
||||
==============================================================================
|
||||
9. Compare with Perl patterns *perl-patterns*
|
||||
@ -1219,6 +1222,10 @@ Finally, these constructs are unique to Perl:
|
||||
'ignorecase' does not apply, use |/\c| in the pattern to
|
||||
ignore case. Otherwise case is not ignored.
|
||||
|
||||
When matching end-of-line and Vim redraws only part of the
|
||||
display you may get unexpected results. That is because Vim
|
||||
looks for a match in the line where redrawing starts.
|
||||
|
||||
Also see |matcharg()|, it returns the highlight group and
|
||||
pattern of a previous :match command.
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*pi_spec.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*pi_spec.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
by Gustavo Niemeyer ~
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*quotes.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*quotes.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*remote.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
||||
*remote.txt* For Vim version 7.1a. Last change: 2006 Apr 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
||||
*repeat.txt* For Vim version 7.1a. Last change: 2007 Jan 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -53,6 +53,13 @@ selection, the same SIZE of area is used, see |visual-repeat|.
|
||||
:[range]v[global]/{pattern}/[cmd]
|
||||
Same as :g!.
|
||||
|
||||
Instead of the '/' which surrounds the {pattern}, you can use any other
|
||||
single byte character, but not an alphanumeric character, '\', '"' or '|'.
|
||||
This is useful if you want to include a '/' in the search pattern or
|
||||
replacement string.
|
||||
|
||||
For the definition of a pattern, see |pattern|.
|
||||
|
||||
The global commands work by first scanning through the [range] lines and
|
||||
marking each line where a match occurs (for a multi-line pattern, only the
|
||||
start of the match matters).
|
||||
@ -656,4 +663,7 @@ mind there are various things that may clobber the results:
|
||||
- Profiling may give weird results on multi-processor systems, when sleep
|
||||
mode kicks in or the processor frequency is reduced to save power.
|
||||
|
||||
- The "self" time is wrong when a function is used recursively.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*scroll.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*scroll.txt* For Vim version 7.1a. Last change: 2006 Aug 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -223,7 +223,7 @@ jump to a location where the current window's relative offset is valid. This
|
||||
behavior can be changed by clearing the 'jump' flag from the 'scrollopt'
|
||||
option.
|
||||
|
||||
*syncbind* *:syncbind*
|
||||
*syncbind* *:syncbind* *:sync*
|
||||
:syncbind Force all 'scrollbind' windows to have the same
|
||||
relative offset. I.e., when any of the 'scrollbind'
|
||||
windows is scrolled to the top of its buffer, all of
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*spell.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
||||
*spell.txt* For Vim version 7.1a. Last change: 2007 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -16,6 +16,10 @@ Spell checking *spell*
|
||||
Spell checking is not available when the |+syntax| feature has been disabled
|
||||
at compile time.
|
||||
|
||||
Note: There also is a vimspell plugin. If you have it you can do ":help
|
||||
vimspell" to find about it. But you will probably want to get rid of the
|
||||
plugin and use the 'spell' option instead, it works better.
|
||||
|
||||
==============================================================================
|
||||
1. Quick start *spell-quickstart*
|
||||
|
||||
@ -409,6 +413,7 @@ done:
|
||||
For the second method adding the @NoSpell cluster will disable spell checking
|
||||
again. This can be used, for example, to add @Spell to the comments of a
|
||||
program, and add @NoSpell for items that shouldn't be checked.
|
||||
Also see |:syn-spell| for text that is not in a syntax item.
|
||||
|
||||
|
||||
VIM SCRIPTS
|
||||
@ -465,7 +470,7 @@ the word list and keeps it small.
|
||||
You can create a Vim spell file from the .aff and .dic files that Myspell
|
||||
uses. Myspell is used by OpenOffice.org and Mozilla. You should be able to
|
||||
find them here:
|
||||
http://lingucomponent.openoffice.org/spell_dic.html
|
||||
http://wiki.services.openoffice.org/wiki/Dictionaries
|
||||
You can also use a plain word list. The results are the same, the choice
|
||||
depends on what word lists you can find.
|
||||
|
||||
@ -546,7 +551,7 @@ following procedure is recommended:
|
||||
2. Make a copy of these files to xx_YY.orig.aff and xx_YY.orig.dic.
|
||||
3. Change the xx_YY.aff and xx_YY.dic files to remove bad words, add missing
|
||||
words, define word characters with FOL/LOW/UPP, etc. The distributed
|
||||
"src/spell/*.diff" files can be used.
|
||||
"*.diff" files can be used.
|
||||
4. Start Vim with the right locale and use |:mkspell| to generate the Vim
|
||||
spell file.
|
||||
5. Try out the spell file with ":set spell spelllang=xx" if you wrote it in
|
||||
@ -646,7 +651,7 @@ exceptions:
|
||||
only ASCII letters for most of the words.
|
||||
|
||||
The default "spellfile.vim" plugin uses this autocommand, if you define your
|
||||
autocommand afterwars you may want to use ":au! SpellFileMissing" to overrule
|
||||
autocommand afterwards you may want to use ":au! SpellFileMissing" to overrule
|
||||
it. If you define your autocommand before the plugin is loaded it will notice
|
||||
this and not do anything.
|
||||
|
||||
@ -1332,7 +1337,7 @@ With the example "ideeen" has three syllables, counted by "i", "ee" and "e".
|
||||
|
||||
Only case-folded letters need to be included.
|
||||
|
||||
Above another way to restrict compounding was mentioned above: Adding the
|
||||
Another way to restrict compounding was mentioned above: Adding the
|
||||
|spell-COMPOUNDFORBIDFLAG| flag to an affix causes all words that are made
|
||||
with that affix not be be used for compounding.
|
||||
|
||||
@ -1510,7 +1515,7 @@ COMPLEXPREFIXES (Hunspell) *spell-COMPLEXPREFIXES*
|
||||
Enables using two prefixes. Not supported.
|
||||
|
||||
COMPOUND (Hunspell) *spell-COMPOUND*
|
||||
This is one line with the count of COMPOUND items, followd by
|
||||
This is one line with the count of COMPOUND items, followed by
|
||||
that many COMPOUND lines with a pattern.
|
||||
Remove the first line with the count and rename the other
|
||||
items to COMPOUNDRULE |spell-COMPOUNDRULE|
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*sql.txt* For Vim version 7.0. Last change: Wed Apr 26 2006 3:05:33 PM
|
||||
*sql.txt* For Vim version 7.1a. Last change: Wed Apr 26 2006 3:05:33 PM
|
||||
|
||||
by David Fishburn
|
||||
|
||||
@ -632,7 +632,7 @@ your |vimrc|: >
|
||||
- When completing tables, procedure or views and using dbext.vim 3.00
|
||||
or higher the list of objects will also include the owner name.
|
||||
When completing these objects and omni_sql_include_owner is enabled
|
||||
the owner name will be be replaced. >
|
||||
the owner name will be replaced. >
|
||||
|
||||
omni_sql_precache_syntax_groups
|
||||
< - Default:
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 7.0. Last change: 2006 Apr 25
|
||||
*starting.txt* For Vim version 7.1a. Last change: 2007 Apr 22
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -311,12 +311,16 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
Messages will be given for each file that is ":source"d and
|
||||
for reading or writing a viminfo file. Can be used to find
|
||||
out what is happening upon startup and exit. {not in Vi}
|
||||
Example: >
|
||||
vim -V8 foobar
|
||||
|
||||
-V[N]{filename}
|
||||
Like -V and set 'verbosefile' to {filename}. The result is
|
||||
that messages are not displayed but written to the file
|
||||
{filename}. {filename} must not start with a digit.
|
||||
|
||||
Example: >
|
||||
vim -V20vimlog foobar
|
||||
<
|
||||
*-D*
|
||||
-D Debugging. Go to debugging mode when executing the first
|
||||
command from a script. |debug-mode|
|
||||
@ -537,7 +541,7 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
See |--remote-expr|. {not in Vi}
|
||||
|
||||
--serverlist Output a list of Vim server names and exit. See
|
||||
See |--serverlist|. {not in Vi}
|
||||
|--serverlist|. {not in Vi}
|
||||
|
||||
--socketid {id} *--socketid*
|
||||
GTK+ GUI Vim only. Make gvim try to use GtkPlug mechanism, so
|
||||
@ -905,9 +909,10 @@ set, it will be set to 'nocompatible'. This has the side effect of setting or
|
||||
resetting other options (see 'compatible'). But only the options that have
|
||||
not been set or reset will be changed. This has the same effect like the
|
||||
value of 'compatible' had this value when starting Vim. Note that this
|
||||
doesn't happen for the system-wide vimrc file. It does also happen for gvimrc
|
||||
files. The $MYVIMRC or $MYGVIMRC file will be set to the first found vimrc
|
||||
and/or gvimrc file.
|
||||
doesn't happen for the system-wide vimrc file nor when Vim was started with
|
||||
the |-u| command line argument. It does also happen for gvimrc files. The
|
||||
$MYVIMRC or $MYGVIMRC file will be set to the first found vimrc and/or gvimrc
|
||||
file.
|
||||
|
||||
But there is a side effect of setting or resetting 'compatible' at the moment
|
||||
a .vimrc file is found: Mappings are interpreted the moment they are
|
||||
@ -1200,8 +1205,8 @@ resulting file, when executed with a ":source" command:
|
||||
including hidden and unloaded buffers. Otherwise only buffers in windows
|
||||
are restored.
|
||||
8. Restores all windows with the same layout. If 'sessionoptions' contains
|
||||
contains "help", help windows are restored. If 'sessionoptions' contains
|
||||
"blank", windows editing a buffer without a name will be restored.
|
||||
"help", help windows are restored. If 'sessionoptions' contains "blank",
|
||||
windows editing a buffer without a name will be restored.
|
||||
If 'sessionoptions' contains "winsize" and no (help/blank) windows were
|
||||
left out, the window sizes are restored (relative to the screen size).
|
||||
Otherwise, the windows are just given sensible sizes.
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.0. Last change: 2006 Apr 30
|
||||
*syntax.txt* For Vim version 7.1a. Last change: 2007 May 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -467,52 +467,9 @@ abel_obsolete_ok obsolete keywords are statements, not errors
|
||||
abel_cpp_comments_illegal do not interpret '//' as inline comment leader
|
||||
|
||||
|
||||
ADA *ada.vim* *ft-ada-syntax*
|
||||
ADA
|
||||
|
||||
This mode is designed for the 1995 edition of Ada ("Ada95"), which
|
||||
includes support for objected-programming, protected types, and so on.
|
||||
It handles code written for the original Ada language
|
||||
("Ada83" or "Ada87") as well, though Ada83 code which uses Ada95-only
|
||||
keywords will be wrongly colored (such code should be fixed anyway).
|
||||
For more information about Ada, see http://www.adapower.com.
|
||||
|
||||
The Ada mode handles a number of situations cleanly.
|
||||
For example, it knows that the "-" in "-5" is a number, but the same
|
||||
character in "A-5" is an operator. Normally, a "with" or "use" clause
|
||||
referencing another compilation unit is colored the same way as C's
|
||||
"#include" is colored. If you have "Conditional" or "Repeat"
|
||||
groups colored differently, then "end if" and "end loop" will be
|
||||
colored as part of those respective groups.
|
||||
You can set these to different colors using vim's "highlight" command
|
||||
(e.g., to change how loops are displayed, enter the command
|
||||
":hi Repeat" followed by the color specification; on simple terminals
|
||||
the color specification ctermfg=White often shows well).
|
||||
|
||||
There are several options you can select in this Ada mode.
|
||||
To enable them, assign a value to the option. For example, to turn one on:
|
||||
let ada_standard_types = 1
|
||||
To disable them use ":unlet". Example:
|
||||
unlet ada_standard_types = 1
|
||||
You can just use ":" and type these into the command line to set these
|
||||
temporarily before loading an Ada file. You can make these option settings
|
||||
permanent by adding the "let" command(s), without a colon,
|
||||
to your "~/.vimrc" file.
|
||||
|
||||
Here are the Ada mode options:
|
||||
|
||||
Variable Action ~
|
||||
ada_standard_types Highlight types in package Standard (e.g., "Float")
|
||||
ada_space_errors Highlight extraneous errors in spaces...
|
||||
ada_no_trail_space_error but ignore trailing spaces at the end of a line
|
||||
ada_no_tab_space_error but ignore tabs after spaces
|
||||
ada_withuse_ordinary Show "with" and "use" as ordinary keywords
|
||||
(when used to reference other compilation units
|
||||
they're normally highlighted specially).
|
||||
ada_begin_preproc Show all begin-like keywords using the coloring
|
||||
of C preprocessor commands.
|
||||
|
||||
Even on a slow (90Mhz) PC this mode works quickly, but if you find
|
||||
the performance unacceptable, turn on ada_withuse_ordinary.
|
||||
See |ft-ada-syntax|
|
||||
|
||||
|
||||
ANT *ant.vim* *ft-ant-syntax*
|
||||
@ -903,10 +860,6 @@ or in a modeline by appending '.doxygen' to the syntax of the file. Example: >
|
||||
or >
|
||||
// vim:syntax=c.doxygen
|
||||
|
||||
To use doxygen formatting on top of any filetype, add the following to your
|
||||
.vimrc for each filetype, replacing {filetype} with the relevent value. >
|
||||
:let g:syntax_extra_{filetype}='doxygen'
|
||||
|
||||
It can also be done automaticly for c, cpp and idl files by setting the global
|
||||
or buffer-local variable load_doxygen_syntax. This is done by adding the
|
||||
following to your .vimrc. >
|
||||
@ -2339,6 +2292,8 @@ Folding can be enabled by defining "ruby_fold": >
|
||||
|
||||
This will set the 'foldmethod' option to "syntax" and allow folding of
|
||||
classes, modules, methods, code blocks, heredocs and comments.
|
||||
|
||||
|
||||
SCHEME *scheme.vim* *ft-scheme-syntax*
|
||||
|
||||
By default only R5RS keywords are highlighted and properly indented.
|
||||
@ -2598,6 +2553,16 @@ If you have a slow computer, you may wish to reduce the values for >
|
||||
increase them. This primarily affects synchronizing (i.e. just what group,
|
||||
if any, is the text at the top of the screen supposed to be in?).
|
||||
|
||||
*tex-morecommands* *tex-package*
|
||||
Wish To Highlight More Commmands? ~
|
||||
|
||||
LaTeX is a programmable language, and so there are thousands of packages full
|
||||
of specialized LaTeX commands, syntax, and fonts. If you're using such a
|
||||
package you'll often wish that the distributed syntax/tex.vim would support
|
||||
it. However, clearly this is impractical. So please consider using the
|
||||
techniques in |mysyntaxfile-add| to extend or modify the highlighting provided
|
||||
by syntax/tex.vim.
|
||||
|
||||
*tex-error*
|
||||
Excessive Error Highlighting? ~
|
||||
|
||||
@ -4396,7 +4361,7 @@ Put these lines in your Makefile:
|
||||
# Make a highlight file for types. Requires Exuberant ctags and awk
|
||||
types: types.vim
|
||||
types.vim: *.[ch]
|
||||
ctags -i=gstuS -o- *.[ch] |\
|
||||
ctags --c-kinds=gstu -o- *.[ch] |\
|
||||
awk 'BEGIN{printf("syntax keyword Type\t")}\
|
||||
{printf("%s ", $$1)}END{print ""}' > $@
|
||||
|
||||
@ -4504,7 +4469,7 @@ You probably want to use these X resources (in your ~/.Xdefaults file):
|
||||
|
||||
[Note: The cursorColor is required to work around a bug, which changes the
|
||||
cursor color to the color of the last drawn text. This has been fixed by a
|
||||
newer version of xterm, but not everybody is it using yet.]
|
||||
newer version of xterm, but not everybody is using it yet.]
|
||||
|
||||
To get these right away, reload the .Xdefaults file to the X Option database
|
||||
Manager (you only need to do this when you just changed the .Xdefaults file): >
|
||||
@ -4520,7 +4485,7 @@ these resources:
|
||||
XTerm*cursorColor: White
|
||||
|
||||
*hpterm-color*
|
||||
These settings work (more or less) for a hpterm, which only supports 8
|
||||
These settings work (more or less) for an hpterm, which only supports 8
|
||||
foreground colors: >
|
||||
:if has("terminfo")
|
||||
: set t_Co=8
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*tagsrch.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*tagsrch.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.0. Last change: 2006 May 07
|
||||
*todo.txt* For Vim version 7.1a. Last change: 2007 May 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -30,9 +30,476 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Patch to make virtcol([123, '$']) do the right thing. (Michael Schaap)
|
||||
|
||||
Insert mode completion: CTRL-N and CTRL-P work differently and they both don't
|
||||
work as expected. (Bernhard Walle, 2007 Feb 27)
|
||||
|
||||
glob() doesn't work correctly with single quotes and 'shell' set to /bin/sh.
|
||||
(Adri Verhoef, Charles Campbell 2007 Mar 26)
|
||||
|
||||
Splitting quickfix window messes up window layout. (Marius Gedminas, 2007 Apr
|
||||
25)
|
||||
|
||||
Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520
|
||||
(Martin Stubenschrott)
|
||||
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .
|
||||
|
||||
Making the German sharp s uppercase doesn't work properly: one character less
|
||||
is uppercased in "gUe".
|
||||
Also: latin2 has the same character but it isn't uppercased there.
|
||||
|
||||
Mac: After a ":vsplit" the left scrollbar doesn't appear until 'columns' is
|
||||
changed or the window is resized.
|
||||
|
||||
Mac: Patch for Mac GUI tabline. (Nicolas Weber, 2006 Jul 18, Update 2007 Feb)
|
||||
New update v6 ~/tmp/guitab.v6.diff (Kyle Wheeler)
|
||||
|
||||
When 'virtualedit' is set a "p" of a block just past the end of the line
|
||||
inserts before the cursor. (Engelke)
|
||||
|
||||
Using Aap to build Vim: add remarks about how to set personal preferences.
|
||||
Example on http://www.calmar.ws/tmp/aap.html
|
||||
|
||||
GTK: 'bsdir' doesn't work. Sometimes get a "gtk critical error".
|
||||
Moved some code to append file name to further down in gui_gtk.c
|
||||
gui_mch_browse(), but "last" value of 'bsdir' still doesn't work.
|
||||
|
||||
C syntax: "#define x {" The macro should terminate at the end of the line,
|
||||
not continue in the next line. (Kelvin Lee, 2006 May 24)
|
||||
|
||||
C syntax: {} inside () causes following {} to be highlighted as error.
|
||||
(Michalis Giannakidis, 2006 Jun 1)
|
||||
|
||||
Gnome improvements: Edward Catmur, 2007 Jan 7
|
||||
Also use Save/Discard for other GUIs
|
||||
|
||||
New PHP syntax file, use it? (Peter Hodge)
|
||||
|
||||
'foldcolumn' in modeline applied to wrong window when using a session. (Teemu
|
||||
Likonen, March 19)
|
||||
|
||||
Syntax highlighting wrong for transparent region. (Doug Kearns, 2007 Feb 26)
|
||||
|
||||
More AmigaOS4 patches. (Peter Bengtsson, Nov 9)
|
||||
|
||||
Add v:searchforward variable. Patch by Yakov Lerner, 2006 Nov 18.
|
||||
|
||||
Redraw problem in loop. (Yakov Lerner, 2006 Sep 7)
|
||||
|
||||
Add option settings to help ftplugin. (David Eggum, 2006 Dec 18)
|
||||
|
||||
Use new dutch wordlist for spelling? http://www.opentaal.org/
|
||||
See remarks from Adri, 2007 Feb 9.
|
||||
|
||||
When opening quickfix window, disable spell checking?
|
||||
|
||||
Win32: When 'encoding' is "latin1" 'ignorecase' doesn't work for characters
|
||||
with umlaut. (Joachim Hofmann) toupper_tab[] and tolower_tab[] are not filled
|
||||
properly?
|
||||
|
||||
Completion: Scanning for tags doesn't check for typed key now and then?
|
||||
Hangs for about 5 seconds. Appears to be caused by finding include files with
|
||||
"foo/**" in 'path'. (Kalisiak, 2006 July 15)
|
||||
|
||||
Completion: When 'completeopt' has "longest" and there is one match the
|
||||
message is "back at original" and typing a char doesn't leave completion mode.
|
||||
(Igor Prischepoff, 2006 Oct 5)
|
||||
|
||||
Completion: When using CTRL-X O and there is only "struct." before the cursor,
|
||||
typing one char to reduce the matches, then BS completion stops. Should keep
|
||||
completion if still no less than what we started with.
|
||||
|
||||
Completion: don't stop completion when typing a space when completing full
|
||||
lines? Also when completing file names? Only stop completion when there are
|
||||
no matches?
|
||||
After using BS completion only stops when typing a space. Many people want to
|
||||
stop at non-word characters, e.g., '('. Add an option for this? Or check
|
||||
vim_iswordc() before calling ins_compl_addleader()?
|
||||
|
||||
searchpos() doesn't use match under cursor at start of line. (Viktor
|
||||
Kojouharov, 2006 Nov 16)
|
||||
|
||||
When FEAT_BYTEOFF is defined but FEAT_NETBEANS_INTG is not compiling fails.
|
||||
Add FEAT_BYTEOFF to the check at line 1180 in feature.h
|
||||
|
||||
Color for cUserLabel should differ from case label, so that a mistake in a
|
||||
switch list is noticed:
|
||||
switch (i)
|
||||
{
|
||||
case 1:
|
||||
foobar:
|
||||
}
|
||||
|
||||
":s" command removes combining characters. (Ron Aaron, 2006 May 17, 2006 Dec 7)
|
||||
|
||||
Look at http://www.gtk-server.org/ . It has a Vim script implementation.
|
||||
|
||||
Changes for Win32 makefile. (Mike Williams, 2007 Jan 22, Alexei Alexandrov,
|
||||
2007 Feb 8)
|
||||
|
||||
Patch for Win32 clipboard under Cygwin. (Frodak Baksik, Feb 15)
|
||||
Sutcliffe says it works well.
|
||||
|
||||
Win32: Patch for convert_filterW(). (Taro Muraoka, 2007 Mar 2)
|
||||
|
||||
Win32: XPM support only works with path without spaces. Patch by Mathias
|
||||
Michaelis, 2006 Jun 9. Another patch for more path names, 2006 May 31.
|
||||
New version: http://members.tcnet.ch/michaelis/vim/patches.zip (also for other
|
||||
patches by Mathias, see mail Feb 22)
|
||||
|
||||
Win32: compiling with normal features and OLE fails. Patch by Mathias
|
||||
Michaelis, 2006 Jun 4.
|
||||
|
||||
Win32: echo doesn't work for gvim.exe.mnf. Use inline file. Patch by Mathias
|
||||
Michaelis. http://groups.yahoo.com/group/vimdev/message/43765
|
||||
Patch that includes this and does more by George Reilly, 2007 Feb 12
|
||||
|
||||
Win16: include patches to make Win16 version work. (Vince Negri, 2006 May 22)
|
||||
|
||||
Win32: after "[I" showing matches, scroll wheel messes up screen. (Tsakiridis,
|
||||
2007 Feb 18)
|
||||
|
||||
Win32: using CTRL-S in Insert mode doesn't remove the "+" from the tab pages
|
||||
label. (Tsakiridis, 2007 Feb 18)
|
||||
|
||||
Win32: remote editing doesn't work when the current directory name contains
|
||||
"[]". (Ivan Tishchenko, 2007 March 1)
|
||||
|
||||
Win64: diff.exe crashes on Win64. (Julianne Bailey, 2006 Dec 12)
|
||||
Build another diff.exe somehow?
|
||||
|
||||
Win64: Seek error in swap file for a very big file (3 Gbyte). Check storing
|
||||
pointer in long and seek offset in 64 bit var.
|
||||
|
||||
When doing "gvim --remote-tab foo" while gvim is minimized the tab pages line
|
||||
only shows the current label, not the others.
|
||||
|
||||
Problem finding swap file for recovery. (Gautam Iyer, 2006 May 16)
|
||||
|
||||
When setting 'keymap' twice the b:keymap_name variable isn't set. (Milan
|
||||
Berta, 2007 Mar 9) Has something to do with 'iminsert'.
|
||||
|
||||
Problem with CursorHoldI? (Max Dyckhoff, 2006 Nov 10)
|
||||
|
||||
UTF-8: mapping a multi-byte key where the second byte is 0x80 doesn't appear
|
||||
to work. (Tony Mechelynck, 2007 March 2)
|
||||
|
||||
The str2special() function doesn't handle multi-byte characters properly.
|
||||
Patch from Vladimir Vichniakov, 2007 Apr 24.
|
||||
find_special_key() also has this problem.
|
||||
|
||||
In debug mode, using CTRL-R = to evaluate a function causes stepping through
|
||||
the function. (Hari Krishna Dara, 2006 Jun 28)
|
||||
|
||||
":let &shiftwidth = 'asdf'" doesn't produce an error message.
|
||||
|
||||
C++ indenting wrong with "=". (James Kanze, 2007 Jan 26)
|
||||
|
||||
"zug" reports wrong file. problem with Namebuff? (Lawrence Kesteloot, 2006 Sep
|
||||
10)
|
||||
|
||||
":lockvar" should use copyID to avoid endless loop.
|
||||
|
||||
Gvim: dialog for closing Vim should check if Vim is busy writing a file. Then
|
||||
use a different dialog: "busy saving, really quit? yes / no".
|
||||
|
||||
Win32: editing remote file d:\a[1]\aa.txt doesn't work. (Liu Yubao, 2006 May
|
||||
29)
|
||||
|
||||
"zw" doesn't appear to work. (Luis A Florit, 2006 Jun 23, 24)
|
||||
|
||||
"dw" in a line with one character deletes the line. Vi and nvi don't do this.
|
||||
Is it intentional or not? (Kjell Arne Rekaa)
|
||||
|
||||
Check other interfaces for changing curbuf in a wrong way. Patch like for
|
||||
if_ruby.c.
|
||||
|
||||
Spell checking in popup menu: If the only problem is the case of the first
|
||||
character, don't offer "ignore" and "add to word list".
|
||||
|
||||
":helpgrep" should use the directory from 'helpfile'.
|
||||
|
||||
The need_fileinfo flag is messy. Instead make the message right away and put
|
||||
it in keep_msg?
|
||||
|
||||
More-prompt is skipped when doing this; (Randall W. Morris, Jun 17)
|
||||
:au
|
||||
<Space>
|
||||
b
|
||||
<Space>
|
||||
|
||||
Editing a file remotely that matches 'wildignore' results in a "no match"
|
||||
error. Should only happen when there are wildards, not when giving the file
|
||||
name literally, and esp. if there is only one name.
|
||||
|
||||
When 'expandtab' is set then a Tab copied for 'copyindent' is expanded to
|
||||
spaces, even when 'preserveindent' is set. (Alexei Alexandrov, Mar 7)
|
||||
|
||||
Test 61 fails sometimes. This is a timing problem: "sleep 2" sometimes takes
|
||||
longer than 2 seconds.
|
||||
|
||||
VMS: while editing a file found in complex, Vim will save file into the first
|
||||
directory of the path and not to the original location of the file.
|
||||
(Zoltan Arpadffy)
|
||||
|
||||
input() completion should not insert a backslash to escape a space in a file
|
||||
name?
|
||||
|
||||
getpos()/setpos() don't include curswant. getpos() could return a fifth
|
||||
element. setpos() could accept an optional fifth element.
|
||||
|
||||
Ruby completion is insecure. Can this be fixed?
|
||||
|
||||
":confirm w" does give a prompt when 'readonly' is set, but not when the file
|
||||
permissions are read-only. Both can be overruled by ":w!" thus it would be
|
||||
logical to get a prompt for both. (Michael Schaap)
|
||||
|
||||
When 'backupskip' is set from $TEMP special characters need to be escaped.
|
||||
(patch by Grembowietz, 2007 Feb 26, not quite right)
|
||||
Another problem is that file_pat_to_reg_pat() doesn't recognize "\\", so "\\("
|
||||
will be seen as a path separator plus "\(".
|
||||
|
||||
":python os.chdir('/tmp')" makes short buffer names invalid. (Xavier de Gaye)
|
||||
Check directory and call shorten_fnames()?
|
||||
|
||||
aucmd_prepbuf() should also use a window in another tab page.
|
||||
|
||||
Substituting an area with a line break with almost the same area does change
|
||||
the Visual area. Can this be fixed? (James Vega, 2006 Sept 15)
|
||||
|
||||
Windows installer could add a "open in new tab of existing Vim" menu entry.
|
||||
|
||||
:s/e/E/l not only lists but also shows line number. Is that right?
|
||||
(Yakov Lerner, 2006 Jul 27)
|
||||
|
||||
GUI: When combining fg en bg make sure they are not equal.
|
||||
|
||||
Use different pt_br dictionary for spell checking. (Jackson A. Aquino, 2006
|
||||
Jun 5)
|
||||
|
||||
Mac: Using gvim: netrw window disappears. (Nick Lo, 2006 Jun 21)
|
||||
|
||||
When 'bomb' is set or reset the file should be considered modified. (Tony
|
||||
Mechelynck) Handle like 'endofline'.
|
||||
|
||||
Add an option to specify the character to use when a double-width character is
|
||||
moved to the next line. Default '>', set to a space to blank it out. Check
|
||||
that char is single width when it's set (compare with 'listchars').
|
||||
|
||||
Update main.aap for installing on the Mac.
|
||||
|
||||
The generated vim.bat can avoid the loop for NT. (Carl Zmola, 2006 Sep 3)
|
||||
|
||||
Session file creation: 'autochdir' causes trouble. Keep it off until after
|
||||
loading all files.
|
||||
|
||||
C completion: doesn't work after aa[0]->, where aa is an array of structures.
|
||||
(W. de Hoog, 2006 Aug 12)
|
||||
|
||||
The spellfile plugin checks for a writable "spell" directory. A user may have
|
||||
a writable runtime directory without a "spell" directory, it could be created
|
||||
then.
|
||||
|
||||
These two abbreviations don't give the same result:
|
||||
let asdfasdf = "xyz\<Left>"
|
||||
cabbr XXX <C-R>=asdfasdf<CR>
|
||||
cabbr YYY xyz<Left>
|
||||
|
||||
Michael Dietrich: maximized gvim sometimes displays output of external command
|
||||
partly. (2006 Dec 7)
|
||||
|
||||
In FileChangedShell command it's no longer allowed to switch to another
|
||||
buffer. But the changed buffer may differ from the current buffer, how to
|
||||
reload it then?
|
||||
|
||||
New syntax files for fstab and resolv from Radu Dineiu, David Necas did
|
||||
previous version.
|
||||
|
||||
For Aap: include a config.arg.example file with hints how to use config.arg.
|
||||
|
||||
Linux distributions:
|
||||
- Suggest compiling xterm with --enable-tcap-query, so that nr of colors is
|
||||
known to Vim. 88 colors instead of 16 works better. See ":help
|
||||
xfree-xterm".
|
||||
- Suggest including bare "vi" and "vim" with X11, syntax, etc.
|
||||
|
||||
Completion menu: For a wrapping line, completing a long file name, only the
|
||||
start of the path is shown in the menu. Should move the menu to the right to
|
||||
show more text of the completions. Shorten the items that don't fit in the
|
||||
middle?
|
||||
|
||||
When running inside screen it's possible to kill the X server and restart it
|
||||
(using pty's the program can keep on running). Vim dies because it looses the
|
||||
connection to the X server. Can Vim simply quit using the X server instead of
|
||||
dying? Also relevant when running in a console.
|
||||
|
||||
Accessing file#var in a function should not need the g: prepended.
|
||||
|
||||
When ":cn" moves to an error in the same line the message isn't shortened.
|
||||
Only skip shortening for ":cc"?
|
||||
|
||||
Win32: The matchparen plugin doesn't update the match when scrolling with the
|
||||
mouse wheel. (Ilya Bobir, 2006 Jun 27)
|
||||
|
||||
Write "making vim work better" for the docs (mostly pointers): *nice*
|
||||
- sourcing $VIMRUNTIME/vimrc_example.vim
|
||||
- setting 'mouse' to "a"
|
||||
- getting colors in xterm
|
||||
- compiling Vim with X11, GUI, etc.
|
||||
|
||||
Problem with ":call" and dictionary function. Hari Krishna Dara, Charles
|
||||
Campbell 2006 Jul 06.
|
||||
|
||||
Syntax HL error caused by "containedin". (Peter Hodge, 2006 Oct 6)
|
||||
|
||||
GTK: When maximizing Vim the result is slightly smaller, the filler border is
|
||||
not there, and the "maximize" button is still there. Clicking it again does
|
||||
give a maximized window. (Darren Hiebert)
|
||||
Problem is that gui_mch_set_text_area_pos() is invoked to change the text area
|
||||
size, which causes the toplevel window to resize. When doing this while the
|
||||
size is already right the filler remains there.
|
||||
Detect using the maximize button (GdkWindowState bit
|
||||
GDK_WINDOW_STATE_MAXIMIZED) and set it again?
|
||||
|
||||
Another resizing problem when setting 'columns' and 'lines' to a very large
|
||||
number. (Tony Mechelynck, 2007 Feb 6)
|
||||
|
||||
Mutt files are not always recognized. Change pattern to include
|
||||
non-alphanumeric characters. (Gary Johnson, 2006 Jul 25)
|
||||
|
||||
Problem with using :redir in user command completion function? (Hari Krishna
|
||||
Dara, 2006 June 21)
|
||||
|
||||
After starting Vim, using '0 to jump somewhere in a file, ":sp" doesn't center
|
||||
the cursor line. It works OK after some other commands.
|
||||
|
||||
Screen redrawing when continuously updating the buffer and resizing the
|
||||
terminal. (Yakov Lerner, 2006 Sept 7)
|
||||
|
||||
Win32: Is it possible to have both postscript and Win32 printing?
|
||||
Does multi-byte printing with ":hardcopy" work? Add remark in documentation
|
||||
about this.
|
||||
|
||||
'thesaurus' doesn't work when 'infercase' is set. (Mohsin, 2006 May 30)
|
||||
|
||||
There should be something about spell checking in the user manual.
|
||||
|
||||
Check: Running Vim in a console and still having connect to the X server for
|
||||
copy/paste: is stopping the X server handled gracefully? Should catch the X
|
||||
error and stop using the connection to the server.
|
||||
|
||||
Problem with 'cdpath' on MS-Windows when a directory is equal to $HOME. (2006
|
||||
Jul 26, Gary Johnson)
|
||||
|
||||
In the Netbeans interface add a "vimeval" function, so that the other side can
|
||||
check the result of has("patch13").
|
||||
|
||||
":py" asks for an argument, ":py asd" then gives the error that ":py" isn't
|
||||
implemented. Should already happen for ":py".
|
||||
|
||||
Add command modifier that skips wildcard expansion, so that you don't need to
|
||||
put backslashes before special chars, only for white space.
|
||||
|
||||
Win32 GUI: confirm() with zero default should not have a choice selected.
|
||||
|
||||
Win32: When the GUI tab pages line is displayed Vim jumps from the secondary
|
||||
to the primary monitor. (Afton Lewis, 2007 Mar 9) Old resizing problem?
|
||||
|
||||
GTK GUI: When the completion popup menu is used scrolling another window by
|
||||
the scrollbar is OK, but using the scroll wheel it behaves line <Enter>.
|
||||
|
||||
"cit" used on <foo></foo> deletes <foo>. Should not delete anything and start
|
||||
insertion, like "ci'" does on "". (Michal Bozon)
|
||||
|
||||
Allow more than 3 ":match" items.
|
||||
|
||||
The magic clipboard format "VimClipboard2" appears in several places. Should
|
||||
be only one.
|
||||
|
||||
It's difficult to debug numbered functions (function in a Dictionary). Print
|
||||
the function name before resolving it to a number?
|
||||
let d = {}
|
||||
fun! d.foo()
|
||||
echo "here"
|
||||
endfun
|
||||
call d.foo(9)
|
||||
|
||||
Add a mark for the other end of the Visual area (VIsual pos). '< and '> are
|
||||
only set after Visual moded is ended.
|
||||
|
||||
Small problem displaying diff filler line when opening windows with a script.
|
||||
(David Luyer, 2007 Mar 1 ~/Mail/oldmail/mool/in.15872 )
|
||||
|
||||
When pattern for ":sort" is empty, use last search pattern. Allows trying out
|
||||
the pattern first. (Brian McKee)
|
||||
|
||||
Is it allowed that 'backupext' is empty? Problems when backup is in same dir
|
||||
as original file? If it's OK don't compare with 'patchmode'. (Thierry Closen)
|
||||
|
||||
Patch for supporting count before CR in quickfix window. (AOYAMA Shotaro, 2007
|
||||
Jan 1)
|
||||
|
||||
Patch for adding ":lscscope". (Navdeep Parhar, 2007 Apr 26; update Apr 28)
|
||||
|
||||
Patch for improving regexp speed by not freeing memory. (Alexei Alexandrov,
|
||||
2007 Feb 6)
|
||||
|
||||
xterm should be able to pass focus changes to Vim, so that Vim can check for
|
||||
buffers that changed. Perhaps in misc.c, function selectwindow().
|
||||
Xterm 224 supports it!
|
||||
|
||||
Omni completion takes the wrong structure for variable arguments. (Bill
|
||||
McCarthy, 2007 Feb 18)
|
||||
|
||||
When completing from another file that uses a different encoding completion
|
||||
text has the wrong encoding. E.g., when 'encoding' is utf-8 and file is
|
||||
latin1. Example from Gombault Damien, 2007 Mar 24.
|
||||
|
||||
Completing ":echohl" argument should include "None". (Ori Avtalion)
|
||||
|
||||
|
||||
Vim 7.2:
|
||||
- Search offset doesn't work for multibyte character. Patch from Yukihiro
|
||||
Nakadaira, 2006 Jul 18.
|
||||
Changes the offset from counting bytes to counting characters.
|
||||
- Rename the tutor files from tutor.gr.* to tutor.el.*. Greece vs Greek.
|
||||
Make all tutor files available in utf-8.
|
||||
- Remove ! for ":cgetfile" and ":lgetfile". (patch from Yegappan Lakshmanan,
|
||||
2007 Mar 9)
|
||||
- Add blowfish encryption. Openssl has an implementation. Also by Paul
|
||||
Kocher (LGPL), close to original. Mohsin also has some ideas.
|
||||
Take four bytes and turn them into unsigned to avoid byte-order problems.
|
||||
Need to buffer up to 7 bytes to align on 8 byte boundaries.
|
||||
- Rename doc/sql.vim doc/ft_sql.vim.
|
||||
- Change "command-line" to "[Command Line]" for the command line buffer
|
||||
name in ex_window().
|
||||
- Move including fcntl.h to vim.h, before O_NOFOLLOW, and remove it from all
|
||||
.c files.
|
||||
- ":{range}source": source the lines from the file.
|
||||
You can already yank lines and use :@" to execute them.
|
||||
Most of do_source() would not be used, need a new function.
|
||||
It's easy when not doing breakpoints or profiling.
|
||||
|
||||
|
||||
Patches:
|
||||
- Add 'cscopeignorecase' option. (Liang Wenzhi, 2006 Sept 3)
|
||||
- Argument for feedkeys() to prepend to typeahead (Yakov Lerner, 2006 Oct
|
||||
21)
|
||||
- Load intl.dll too, not only libintl.dll. (Mike Williams, 2006 May 9, docs
|
||||
patch May 10)
|
||||
- Extra argument to strtrans() to translate special keys to their name (Eric
|
||||
Arnold, 2006 May 22)
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
(Jakson A. Aquino, 2006 Jun 14)
|
||||
- Mac: indicate whether a buffer was modified. (Nicolas Weber, 2006 Jun 30)
|
||||
- Allow negative 'nrwidth' for left aligning. (Nathan Laredo, 2006 Aug 16)
|
||||
- ml_append_string(): efficiently append to an existing line. (Brad
|
||||
Beveridge, 2006 Aug 26) Use in some situations, e.g., when pasting a
|
||||
character at a time?
|
||||
- gettabvar() and settabvar() functions. (Yegappan Lakshmanan, 2006 Sep 8)
|
||||
- recognize hex numbers better. (Mark Manning, 2006 Sep 13)
|
||||
|
||||
|
||||
Awaiting updated patches:
|
||||
9 Mac unicode patch (Da Woon Jung, Eckehard Berns):
|
||||
@ -44,6 +511,8 @@ Awaiting updated patches:
|
||||
- With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work.
|
||||
(Alan Schmitt)
|
||||
- remove 'macatsui' option when this has been fixed.
|
||||
- when 'macatsui' is off should we always convert to "macroman" and ignore
|
||||
'termencoding'?
|
||||
9 HTML indenting can be slow. Caused by using searchpair(). Can search()
|
||||
be used instead?
|
||||
8 Win32: Add minidump generation. (George Reilly, 2006 Apr 24)
|
||||
@ -89,6 +558,8 @@ Awaiting updated patches:
|
||||
(2003 May 13)
|
||||
raisewin() raise gvim window (see HierAssist patch for
|
||||
Tcl implementation ~/vim/HierAssist/ )
|
||||
taglist() add argument to specify maximum number of matches.
|
||||
useful for interactive things or completion.
|
||||
7 Make globpath() also work with upwards search. (Brian Medley)
|
||||
7 Add patch from Benoit Cerrina to integrate Vim and Perl functions
|
||||
better. Now also works for Ruby (2001 Nov 10)
|
||||
@ -211,6 +682,8 @@ GTK+ GUI known bugs:
|
||||
Win32 GUI known bugs:
|
||||
- Win32: tearoff menu window should have a scrollbar when it's taller than
|
||||
the screen.
|
||||
8 non-ASCII font names don't work. Need to convert from 'encoding' and use
|
||||
the wide functions.
|
||||
8 On Windows 98 the unicows library is needed to support functions with UCS2
|
||||
file names. Can we load unicows.dll dynamically?
|
||||
8 When the primary monitor is below or right of the secondary monitor and
|
||||
@ -252,7 +725,6 @@ Win32 GUI known bugs:
|
||||
mouse position. Catch WM_MOUSEACTIVATE. (Luevelsmeyer)
|
||||
8 Win32: When mouse is hidden and in the toolbar, moving it won't make it
|
||||
appear. (Sami Salonen)
|
||||
8 Windows NT: writing to aux.* makes Vim hang. (Acevedo)
|
||||
8 Win32 GUI: With maximized window, ":set go-=r" doesn't use the space that
|
||||
comes available. (Poucet) It works OK on Win 98 but doesn't work on Win
|
||||
NT 4.0. Leaves a grey area where the scrollbar was. ":set go+=r" also
|
||||
@ -569,12 +1041,16 @@ Macintosh:
|
||||
8 Inputting Unicode characters does not work in the terminal. They appear
|
||||
to arrive as upper and lower bytes. (David Brown, 2004 April 17)
|
||||
8 Typing Unicode characters doesn't work at all in the GUI.
|
||||
8 inputdialog() doesn't resize when giving more text lines. (David Fishburn,
|
||||
2006 Sept 28)
|
||||
9 Problems in Carbon version for OS X: (Benji Fisher)
|
||||
- keyboard shortcuts in the menus get lost.
|
||||
8 The Vim/About menu doesn't work.
|
||||
8 ":gui" doesn't fork. Enabling the code in gui.c to fork causes a SEGV.
|
||||
8 Define vim_mkdir() for Macintosh.
|
||||
8 Define mch_writable() for Macintosh.
|
||||
8 Some file systems are case-sensitive, some are not. Turn
|
||||
CASE_INSENSITIVE_FILENAME into an option, at least for completion.
|
||||
9 When DiskLock is running, using a swap file causes a crash. Appears to be
|
||||
a problem with writing a file that starts with a dot. (Giacalone)
|
||||
9 On G3 Mac, OS version 8, control strip causes characters messed up when
|
||||
@ -587,6 +1063,10 @@ Macintosh:
|
||||
|
||||
|
||||
"Small" problems:
|
||||
- When using e_secure in do_one_cmd() mention the command being executed,
|
||||
otherwise it's not clear where it comes from.
|
||||
8 When disabling FEAT_CMDL_COMPL compilation fails. Would need to avoid
|
||||
using parse_compl_arg() in eval.c and uc_scan_attr().
|
||||
9 For Turkish vim_tolower() and vim_toupper() also need to use utf_
|
||||
functions for characters below 0x80. (Sertacyildiz)
|
||||
9 When the last edited file is a help file, using '0 in a new Vim doesn't
|
||||
@ -606,11 +1086,10 @@ Macintosh:
|
||||
8 When redirecting and using ":silent" the current column for displaying and
|
||||
redirection can be different. Use a separate variable to hold the column
|
||||
for redirection.
|
||||
7 There is no way to change directory and go back without changing the local
|
||||
and/or global directory. Add a way to find out if the current window uses
|
||||
a local directory. Add cdcmd() that returns ":cd" or ":lcd"?
|
||||
7 The messages for "vim --help" and "vim --version" don't use
|
||||
'termencoding'.
|
||||
- Could the hit-enter prompt be avoided when a message only overlaps the
|
||||
'showcmd' area? Clear that area when the next cmd is typed.
|
||||
8 When 'scrollbind' is set, a window won't scroll horizontally if the cursor
|
||||
line is too short. Add a word in 'scrollopt' to allow moving the cursor
|
||||
to longer line that is visible. A similar thing is done for the GUI when
|
||||
@ -629,6 +1108,7 @@ Macintosh:
|
||||
8 When doing Insert mode completion a mapping cannot recursively call
|
||||
edit(), because the completion information is global. Put everything in
|
||||
an allocated structure?
|
||||
6 Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
||||
8 Command line completion: buffers "foo.txt" and "../b/foo.txt", completing
|
||||
":buf foo<Tab>" doesn't find the second one. (George V. Reilly)
|
||||
7 Output for ":scriptnames" and ":breaklist" should shorten the file names:
|
||||
@ -650,9 +1130,6 @@ Macintosh:
|
||||
7 "[p" doesn't work in Visual mode. (David Brown)
|
||||
7 The Cygwin and MingW makefiles define "PC", but it's not used anywhere.
|
||||
Remove? (Dan Sharp)
|
||||
9 The argument <f-args> of a user command doesn't handle backslashes
|
||||
properly. "Cmd \ e" is one argument, "Cmd \\ e" still is one argument.
|
||||
"Cmd \ e" is two arguments, first one ending in space. (Kontra Gergely)
|
||||
9 User commands use the context of the script they were defined in. This
|
||||
causes a "s:var" argument to unexpectedly use a variable in the defining
|
||||
script, not the calling script. Add an argument to ":command":
|
||||
@ -684,6 +1161,8 @@ Macintosh:
|
||||
flag to to the command. Same for ":snomagic". (Johan Spetz)
|
||||
8 Using ":s" in a function changes the previous replacement string. Save
|
||||
"old_sub" in save_search_patterns()?
|
||||
8 Should allow multi-byte characters for the delimiter: ":s+a+b+" where "+"
|
||||
is a multi-byte character.
|
||||
8 When appending to a file and 'patchmode' isn't empty, a backup file is
|
||||
always written, even when the original file already exists.
|
||||
7 When using "daw" on the last word in a file and this is a single letter,
|
||||
@ -699,6 +1178,8 @@ Macintosh:
|
||||
'foldlevel' is set from 'foldlevelstart'.
|
||||
8 Also store the line number with the script ID and use it for ":verbose",
|
||||
so that "set nocompatible" is found when it changes other option values.
|
||||
When an option is set indirectly mention the command? E.g. when
|
||||
":diffsplit" sets 'foldmethod'.
|
||||
8 In the fileformat dialog, "Cancel" isn't translated. Add a global
|
||||
variable for this. (Eduardo Fernandez)
|
||||
9 When editing a file with 'readonly' set, there is no check for an existing
|
||||
@ -831,6 +1312,8 @@ Macintosh:
|
||||
8 Dragging the status line doesn't scroll but redraw.
|
||||
9 Evaluating 'statusline' in build_stl_str_hl() does not properly check for
|
||||
reaching the end of the available buffer.
|
||||
Patch to dynamically allocate the buffer for % items. (Eric Arnold, 2006
|
||||
May 14)
|
||||
8 When performing incremental search, should abort searching as soon as a
|
||||
character is typed.
|
||||
8 When the value of $MAKE contains a path, configure can't handle this.
|
||||
@ -890,6 +1373,7 @@ Problems that will (probably) not be solved:
|
||||
XtOpenDisplay() prints this directly, there is no way to avoid it.
|
||||
- X windows: Setting 'guifontset' to an illegal value sometimes crashes Vim.
|
||||
This is caused by a fault in a X library function, can't be solved in Vim.
|
||||
- Win32 tcl: has("tcl") hangs when the tcl84.dll is from cygwin.
|
||||
- Motif: When adding a menu item "Find this &Symbol", the "s" in "this" will
|
||||
be underlined, instead of in "Symbol". Motif doesn't let us specify which
|
||||
character gets the highlighting.
|
||||
@ -987,6 +1471,7 @@ Didn't make it into Vim 7.0:
|
||||
198 standard http://www.jcp.org/en/jsr/detail?id=198.
|
||||
Eclim does it: http://eclim.sourceforge.net/ (Eric Van Dewoestine)
|
||||
Plugin that uses a terminal emulator: http://vimplugin.sf.net
|
||||
And another one: http://www.satokar.com/viplugin/index.php
|
||||
- STICKY CURSOR: Add a way of scrolling that leaves the cursor where it is.
|
||||
Especially when using the scrollbar. Typing a cursor-movement command
|
||||
scrolls back to where the cursor is.
|
||||
@ -1003,6 +1488,8 @@ Didn't make it into Vim 7.0:
|
||||
|
||||
|
||||
Documentation:
|
||||
8 List of Vim runtime directories. dotvim.txt from Charles Campbell, 2007
|
||||
Feb 20.
|
||||
8 The GUI help should explain the Find and Find/Replace dialogs. Add a link
|
||||
to it from ":promptrepl" and ":promptfind".
|
||||
8 List of options should mention whether environment variables are expanded
|
||||
@ -1084,6 +1571,10 @@ User Friendlier:
|
||||
|
||||
Tab pages:
|
||||
9 GUI implementation for the tab pages line for other systems.
|
||||
7 GUI: Control over the appearance of the text in the labels (bold, color,
|
||||
font, etc.)
|
||||
9 Make it possible to drag a tab page label to another position with the
|
||||
mouse.
|
||||
8 Make GUI menu in tab pages line configurable. Like the popup menu.
|
||||
8 balloons for the tab page labels that are shortened to show the full path.
|
||||
8 :tabmove +N move tab page N pages forward
|
||||
@ -1095,15 +1586,27 @@ Tab pages:
|
||||
8 Add local options for each tab page? E.g., 'diffopt' could differ between
|
||||
tab pages.
|
||||
7 Add local highlighting for each tab page?
|
||||
7 Add local directory for tab pages? How would this interfere with
|
||||
window-local directories?
|
||||
|
||||
|
||||
Spell checking:
|
||||
- Support more regions? Caolan McNamara argues it's needed for es_XX.
|
||||
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=219777
|
||||
- Unicode defines another quote character: 0x2019. Use it as an equivalent
|
||||
of a single quote, thus use it as a word character like a quote and match
|
||||
with words, replacing the curly quote with a single quote.
|
||||
- Could filter é things for HTML before doing spell checking.
|
||||
Similarly for TeX.
|
||||
- The Hungarian spell file uses four extra characters in the FOL/UPP/LOW
|
||||
items than other spell files with the ISO-8859-2 encoding, that causes
|
||||
problem when changing 'spelllang'. There is no obvious way to fix this.
|
||||
- Considering Hunspell 1.1.4:
|
||||
What does MAXNGRAMSUGS do?
|
||||
Is COMPLEXPREFIXES necessary when we have flags for affixes?
|
||||
- There is no Finnish spell checking file. For openoffic Voikko is now
|
||||
used, which is based on Malaga: http://home.arcor.de/bjoern-beutel/malaga/
|
||||
(Teemu Likonen)
|
||||
8 ":mkspell" still takes much too long in Hungarian dictionary from
|
||||
hunspell. Only solution appears to be to postpone secondary suffixes.
|
||||
8 Handle postponed prefix with COMPOUNDPERMITFLAG or COMPOUNDFORBIDFLAG.
|
||||
@ -1190,7 +1693,11 @@ Diff mode:
|
||||
Folding:
|
||||
(commands still available: zI zJ zK zp zP zq zQ zV zy zY;
|
||||
secondary: zB zS zT zZ, z=)
|
||||
8 Vertical folds: looks like vertically split windows, but the cursor moves
|
||||
through the vertical separator, separator moves when scrolling.
|
||||
8 Add "z/" and "z?" for searching in not folded text only.
|
||||
9 Add search pattern item to only match in closed or open fold and/or fold
|
||||
with certain level. Allows doing ":g/pat/cmd" to work on closed folds.
|
||||
8 Add different highlighting for a fold line depending on the fold level.
|
||||
(Noel Henson)
|
||||
7 Use "++--", "+++--" for different levels instead of "+---" "+----".
|
||||
@ -1292,6 +1799,7 @@ Multi-byte characters:
|
||||
7 In "-- INSERT (lang) --" show the name of the keymap used instead of
|
||||
"lang". (Ilya Dogolazky)
|
||||
- Make 'langmap' accept multi-byte characters.
|
||||
Patch from Konstantin Korikov, 2006 Oct 15.
|
||||
- Make 'breakat' accept multi-byte characters. Problem: can't use a lookup
|
||||
table anymore (breakat_flags[]).
|
||||
Simplistic solution: when 'formatoptions' contains "m" also break a line
|
||||
@ -1317,8 +1825,8 @@ Printing:
|
||||
- Win32: when 'printfont' is empty use 'guifont'.
|
||||
- Unix: Use some dialog box to do the obvious settings (paper size, printer
|
||||
name, portrait/landscape, etc).
|
||||
- PostScript: only works for 7-bit ASCII and EBCDIC. Should support
|
||||
different 'encoding' values somehow.
|
||||
- PostScript: Only works for text that can be converted to an 8-bit
|
||||
character set. How to support Unicode fully?
|
||||
- Allow specifying the paper size, instead of using a standard size. Same
|
||||
units as for the margins.
|
||||
- Support right-to-left text?
|
||||
@ -1338,6 +1846,9 @@ Syntax highlighting:
|
||||
8 When editing a new file without a name and giving it a name (by writing
|
||||
it) and 'filetype' is not set, detect the filetype. Avoid doing it for
|
||||
":wq file".
|
||||
7 For "nextgroup" we have skipwhite, skipnl and skipempty. It would be
|
||||
really nice to be able to skip with a pattern. Or skip with a syntax
|
||||
group. (Nikolai Weibull, 2007 Feb 27)
|
||||
8 Make conversion to HTML faster (Write it in C or pre-compile the script).
|
||||
9 There is still a redraw bug somewhere. Probably because a cached state is
|
||||
used in a wrong way. I can't reproduce it...
|
||||
@ -1415,6 +1926,9 @@ Syntax highlighting:
|
||||
8 When using a regexp for "contains=", should delay matching with it until
|
||||
redrawing happens. Set a flag when a group is added, check this flag when
|
||||
highlighting starts.
|
||||
8 Some terminals can display colors like the GUI. Add some setting to use
|
||||
GUI colors for the terminal? With something to define the escape
|
||||
sequence.
|
||||
7 It's possible for an item to be transparent, so that the colors of an item
|
||||
lower on the stack is used. Also do this with highlighting, so that the
|
||||
user can set transparent highlighting? E.g. a number in a C comment would
|
||||
@ -1483,24 +1997,14 @@ Syntax highlighting:
|
||||
|
||||
|
||||
Built-in script language:
|
||||
9 Autoload: Add a Vim script in $VIMRUNTIME/tools that takes a file with a
|
||||
list of script names and a help file and produces a script that can be
|
||||
sourced to install the scripts in the user's directories.
|
||||
Use findfile(), so that only file names need to be given:
|
||||
script plugin/myscript.vim
|
||||
script autoload/mylib.vim
|
||||
script autoload/yourlib.vim
|
||||
helpfile doc/myscript.txt
|
||||
For the "helpfile" item ":helptags" is run.
|
||||
7 Execute a function with standard option values. No need to save and
|
||||
restore option values. Especially useful for new options. Problem: how
|
||||
to avoid a performance penalty (esp. for string options)?
|
||||
8 Add referring to key options with "&t_xx". Both for "echo &t_xx" and
|
||||
":let &t_xx =". Useful for making portable mappings.
|
||||
- Add "{range}source": execute lines from a buffer.
|
||||
Alternative: Allow range for ":exec", pass it on to the executed command.
|
||||
(Webb)
|
||||
You can already yank lines and use :@" to execute them.
|
||||
- Add ":let var ?= value", conditional assignment. Patch by Dave Eggum,
|
||||
2006 Dec 11.
|
||||
- range for ":exec", pass it on to the executed command. (Webb)
|
||||
7 ":include" command: just like ":source" but doesn't start a new scriptID?
|
||||
Will be tricky for the list of script names.
|
||||
8 Have a look at VSEL. Would it be useful to include? (Bigham)
|
||||
@ -1523,7 +2027,16 @@ Built-in script language:
|
||||
file belongs to a sourced script?
|
||||
7 Add argument to winwidth() to subtract the space taken by 'foldcolumn',
|
||||
signs and/or 'number'.
|
||||
6 Add ++ and -- operators? They only work on variables (lvals), how to
|
||||
implement this?
|
||||
8 Add functions:
|
||||
has(":command") Check if ":command" works. compare function
|
||||
with "ex_ni". E.g. for ":simalt".
|
||||
system() With a List argument. Bypasses the shell, use
|
||||
exec() directly. (Bob Hiestand)
|
||||
escape() Add argument to specify what to escape with.
|
||||
modestack() Instead of just the current mode return the
|
||||
stack of Insert / CTRL-O / :normal things.
|
||||
realname() Get user name (first, last, full)
|
||||
user_fullname() patch by Nikolai Weibull, Nov
|
||||
3 2002
|
||||
@ -1561,7 +2074,8 @@ Built-in script language:
|
||||
column and line number? col("'0") currently returns zero.
|
||||
8 argc() returns 0 when using "vim -t tag". How to detect that no file was
|
||||
specified in any way? To be able to jump to the last edited file.
|
||||
8 Pass the executable name to the Vim scripts in some way. As v:argv0?
|
||||
8 Pass the command line arguments to Vim scripts in some way. As v:args
|
||||
List? Or extra parameter to argv()?
|
||||
8 Add command arguments with three dashes, passed on to Vim scripts.
|
||||
7 Add optional arguments to user functions:
|
||||
:func myFunc(arg1, arg2, arg3 = "blah", arg4 = 17)
|
||||
@ -1571,6 +2085,7 @@ Built-in script language:
|
||||
8 The "= register should be writable, if followed by the name of a variable,
|
||||
option or environment variable.
|
||||
8 ":let &option" should list the value of the option.
|
||||
8 ":let Func().foo = value" should work, also when "foo" doesn't exist.
|
||||
7 Add synIDlist(), making the whole list of syntax items on the syntax stack
|
||||
available as a List.
|
||||
8 Add autocommand-event for when a variable is changed:
|
||||
@ -1606,6 +2121,9 @@ Robustness:
|
||||
Performance:
|
||||
7 For strings up to 3 bytes don't allocate memory, use v_list itself as a
|
||||
character array. Use VAR_SSTRING (short string).
|
||||
8 Instead of loading rgb.txt every time a color wasn't recognized load it
|
||||
once and keep it in memory. Move the code to a common place to avoid
|
||||
repeating it in various system files.
|
||||
8 Turn b_syn_ic and b_syn_containedin into b_syn_flags.
|
||||
9 Loading menu.vim still takes quite a bit of time. How to make it faster?
|
||||
8 in_id_list() takes much time for syntax highlighting. Cache the result?
|
||||
@ -1719,6 +2237,8 @@ Messages:
|
||||
- Delete message after new command has been entered and have waited for key.
|
||||
Perhaps after ten seconds?
|
||||
- Make message history available in "msg" variables: msg1, msg2, .. msg9.
|
||||
8 When reading from stdin allow suppressing the "reading from stdin"
|
||||
message.
|
||||
9 Check handling of overwriting of messages and delays:
|
||||
Very wrong: errors while redrawing cause endless loop.
|
||||
When switching to another file and screen scrolls because of the long
|
||||
@ -1840,6 +2360,9 @@ Tags:
|
||||
before the previous ":tag" command. (Webb)
|
||||
- When doing "[^I" or "[^D" add position to tag stack.
|
||||
- Add command to put current position to tag stack: ":tpush".
|
||||
- Add functions to save and restore the tag stack? Or a command to switch
|
||||
to another tag stack? So that you can do something else and come back to
|
||||
what you were working on.
|
||||
7 When using CTRL-] on someClass::someMethod, separate class from method and
|
||||
use ":ta class:someClass someMethod".
|
||||
Include C++ tags changes (Bertin). Change "class::func" tag into "func"
|
||||
@ -2000,6 +2523,8 @@ Autocommands:
|
||||
8 Autocommand for when modified files have been found, when getting input
|
||||
focus again (e.g., FileChangedFocus).
|
||||
Check when: getting focus, jumping to another buffer, ...
|
||||
7 Autocommand for when an option is changed. Match buffer name or option
|
||||
name?
|
||||
8 Autocommands should not change registers. And marks? And the jumplist?
|
||||
And anything else? Add a command to save and restore these things.
|
||||
8 Add autocommands, user functions and user commands to ":mkvimrc".
|
||||
@ -2029,6 +2554,7 @@ Autocommands:
|
||||
*Leave - Leaving a mode (in pair with the above *Enter)
|
||||
VimLeaveCheck - Before Vim decides to exit, so that it can be cancelled
|
||||
when exiting isn't a good idea.
|
||||
CursorHoldC - CursorHold while command-line editing
|
||||
WinMoved - when windows have been moved around, e.g, ":wincmd J"
|
||||
CmdUndefined - Like FuncUndefined but for user commands.
|
||||
SearchPost - After doing a search command (e.g. to do "M")
|
||||
@ -2053,7 +2579,10 @@ Autocommands:
|
||||
the position and number of inserted/deleted lines, so
|
||||
that marks can be updated. HierAssist has patch to add
|
||||
BufChangePre, BufChangePost and RevertBuf. (Shah)
|
||||
WinResized - When a window has been resized
|
||||
ViewChanged - triggered when the text scrolls and when the window size
|
||||
changes.
|
||||
WinResized - After a window has been resized
|
||||
WinClose - Just before closing a window
|
||||
- Write the file now and then ('autosave'):
|
||||
*'autosave'* *'as'* *'noautosave'* *'noas'*
|
||||
'autosave' 'aw' number (default 0)
|
||||
@ -2070,8 +2599,6 @@ Omni completion:
|
||||
Should work for Java (Eclipse does this), Python, Tcl, etc.
|
||||
Richard Emberson mentioned working on an interface to Java.
|
||||
- Check Readline for its completion interface.
|
||||
- Use ctags for other languages. Writing a file could trigger running
|
||||
ctags, merging the tags of the changed file.
|
||||
- Ideas from others:
|
||||
http://www.wholetomato.com/
|
||||
http://www.vim.org/scripts/script.php?script_id=747
|
||||
@ -2106,6 +2633,12 @@ Insert mode completion/expansion:
|
||||
8 Add option to set different behavior for Insert mode completion:
|
||||
- ignore/match case
|
||||
- different characters than 'iskeyword'
|
||||
8 Add option 'isexpand', containing characters when doing expansion (so that
|
||||
"." and "\" can be included, without changing 'iskeyword'). (Goldfarb)
|
||||
Also: 'istagword': characters used for CTRL-].
|
||||
When 'isexpand' or 'istagword' are empty, use 'iskeyword'.
|
||||
Alternative: Use a pattern so that start and end of a keyword can be
|
||||
defined, only allow dash in the middle, etc.
|
||||
8 Add a command to undo the completion, go back to the original text.
|
||||
7 Completion of an abbreviation: Can leave letters out, like what Instant
|
||||
text does: www.textware.com
|
||||
@ -2136,10 +2669,6 @@ Insert mode completion/expansion:
|
||||
- CTRL-X CTRL-F: Use 'path' to find completions.
|
||||
- CTRL-X CTRL-F: Option to use forward slashes on MS-Windows?
|
||||
- CTRL-X CTRL-F: Don't replace "$VIM" with the actual value. (Kelly)
|
||||
8 Add option 'isexpand', containing characters when doing expansion (so that
|
||||
"." and "\" can be included, without changing 'iskeyword'). (Goldfarb)
|
||||
Also: 'istagword': characters used for CTRL-].
|
||||
When 'isexpand' or 'istagword' are empty, use 'iskeyword'.
|
||||
- Allow listing all matches in some way (and picking one from the list).
|
||||
|
||||
|
||||
@ -2255,6 +2784,7 @@ Insert mode:
|
||||
|
||||
|
||||
'cindent', 'smartindent':
|
||||
8 Lisp indenting: "\\" confuses the indenter. (Dorai Sitaram, 2006 May 17)
|
||||
8 Java: Inside an anonymous class, after an "else" or "try" the indent is
|
||||
too small. (Vincent Bergbauer)
|
||||
Problem of using {} inside (), 'cindent' doesn't work then.
|
||||
@ -2265,6 +2795,11 @@ Insert mode:
|
||||
"asdf"
|
||||
}
|
||||
);
|
||||
6 Add 'cino' flag for this function argument layout: (Spencer Collyer)
|
||||
func( arg1
|
||||
, arg2
|
||||
, arg3
|
||||
);
|
||||
7 Add separate "(0" option into inside/outside a function (Zellner):
|
||||
func(
|
||||
int x) // indent like "(4"
|
||||
@ -2439,7 +2974,6 @@ Visual mode:
|
||||
6 In non-Block mode, "I" should insert the same text in front of each line,
|
||||
before the first non-blank, "gI" in column 1.
|
||||
6 In non-Block mode, "A" should append the same text after each line.
|
||||
6 ":'<,'>source" should read the selected lines and ":source" them.
|
||||
6 When in blockwise visual selection (CTRL-V), allow cursor to be placed
|
||||
right of the line. Could also allow cursor to be placed anywhere on a TAB
|
||||
or other special character.
|
||||
@ -2549,7 +3083,9 @@ Incsearch:
|
||||
Searching:
|
||||
8 Add "g/" and "gb" to search for a pattern in the Visually selected text?
|
||||
"g?" is already used for rot13.
|
||||
The vis.vim script has a ":S" command that does something like this.
|
||||
Can use "g/" in Normal mode, uses the '< to '> area.
|
||||
Use "&/" for searching the text in the Visual area?
|
||||
8 Add a mechanism for recursiveness: "\@(([^()]*\@g[^()]*)\)". \@g stands
|
||||
for "go recursive here" and \@( \) marks the recursive part.
|
||||
Perl does it this way:
|
||||
@ -2557,6 +3093,9 @@ Searching:
|
||||
Here $paren is evaluated when it's encountered. This is like a regexp
|
||||
inside a regexp. In the above terms it would be:
|
||||
\@((\([^()]\|\@g\)*)\)
|
||||
8 Show the progress every second. Could use the code that checks for CTRL-C
|
||||
to find out how much time has passed. Or use SIGALRM. Where to show the
|
||||
number?
|
||||
7 Support for approximate-regexps to find similar words (agrep
|
||||
http://www.tgries.de/agrep/ tre: http://laurikari.net/tre/index.html).
|
||||
8 Add an item for a big character range, so that one can search for a
|
||||
@ -2661,6 +3200,13 @@ Searching:
|
||||
|
||||
|
||||
Undo:
|
||||
8 Undo tree: visually show the tree somehow (Damian Conway)
|
||||
Show only the leaves, indicating how many changed from the branch and the
|
||||
timestamp?
|
||||
Put branch with most recent change on the left, older changes get more
|
||||
indent?
|
||||
8 Search for pattern in undo tree, showing when it happened and the text
|
||||
state, so that you can jump to it.
|
||||
- Persistent undo: store undo in a file.
|
||||
Use timestamps, so that a version a certain time ago can be found and info
|
||||
before some time/date can be flushed. 'undopersist' gives maximum time to
|
||||
@ -3033,8 +3579,13 @@ Various improvements:
|
||||
next <li>, ]< to next </li>, [< to previous </li>.
|
||||
8 Add ":rename" command: rename the file of the current buffer and rename
|
||||
the buffer. Buffer may be modified.
|
||||
7 Instead of filtering errors with a shell script it should be possible to
|
||||
do this with Vim script. A function that filters the raw text that comes
|
||||
from the 'makeprg'?
|
||||
- Add %b to 'errorformat': buffer number. (Yegappan Lakshmanan / Suresh
|
||||
Govindachar)
|
||||
7 Add a command that goes back to the position from before jumping to the
|
||||
first quickfix location. ":cbefore"?
|
||||
6 In the quickfix window statusline add the command used to get the list of
|
||||
errors, e.g. ":make foo", ":grep something *.c".
|
||||
6 Python interface: add vim.message() function. (Michal Vitecek, 2002 Nov 5)
|
||||
@ -3047,7 +3598,6 @@ Various improvements:
|
||||
to manipulate text without changing the window layout.
|
||||
8 Add a command to revert to the saved version of file; undo or redo until
|
||||
all changes are gone.
|
||||
7 Add a ":cpfile", go in the other direction as ":cnfile".
|
||||
6 "vim -q -" should read the list of errors from stdin. (Gautam Mudunuri)
|
||||
8 Add "--remote-fail": When contacting the server fails, exit Vim.
|
||||
Add "--remote-self": When contacting the server fails, do it in this Vim.
|
||||
@ -3068,7 +3618,6 @@ Various improvements:
|
||||
etc. Combinations of Alt, Ctrl and Shift are also possible. Recognize
|
||||
these to avoid inserting the raw byte sequence, handle like the key
|
||||
without modifier (unless mapped).
|
||||
8 Add ":breakdel *": delete all breakpoints.
|
||||
7 Support ":browse edit" in console, using explorer.vim?
|
||||
6 Add "gG": like what "gj" is to "j": go to the N'th window line.
|
||||
8 Add command like ":normal" that accepts <Key> notation like ":map".
|
||||
@ -3107,13 +3656,6 @@ Various improvements:
|
||||
7 Have a look at viH (Hellenic or Greek version of Vim). But a solution
|
||||
outside of Vim might be satisfactory (Haritsis).
|
||||
3 Make "2d%" work like "d%d%" instead of "d2%"?
|
||||
8 Make "more" prompt accept command characters, like "hit-enter" prompt?
|
||||
Or extend it with more commands, like "less": 'b' for back, 'j' for one
|
||||
line down, etc.
|
||||
8 For the "--more--" prompt, support the 'b'ack command for more commands.
|
||||
Possible implementation: Do it at a very low level, caching the lines that
|
||||
are on the screen (with highlight attributes). Avoids that changes have
|
||||
to be made for all functions that list something.
|
||||
7 "g CTRL-O" jumps back to last used buffer. Skip CTRL-O jumps in the same
|
||||
buffer. Make jumplist remember the last ten accessed buffers?
|
||||
- Keep a list of most recently used files for each window, use "[o" to go
|
||||
@ -3146,8 +3688,6 @@ Various improvements:
|
||||
of the files. Only check when an event occurs (e.g., character typed,
|
||||
mouse moved). Useful for non-GUI versions where keyboard focus isn't
|
||||
noticeable.
|
||||
9 When using ":w <fname>" it's possible that this file is loaded in another
|
||||
buffer. Give a warning right away, don't wait for a shell command.
|
||||
- Make 'smartcase' work even though 'ic' isn't set (Webb).
|
||||
7 When formatting text, allow to break the line at a number of characters.
|
||||
Use an option for this: 'breakchars'? Useful for formatting Fortran code.
|
||||
@ -3156,8 +3696,8 @@ Various improvements:
|
||||
paragraphs). Complements the '2' flag. Use '>' flag when larger indent
|
||||
starts a new paragraph, use '<' flag when smaller indent starts a new
|
||||
paragraph. Both start a new paragraph on any indent change.
|
||||
7 Add a way to define an item list with a pattern in 'formatoptions'. The
|
||||
'n' flag doesn't work for "6.3" or "6a.".
|
||||
8 The 'a' flag in 'formatoptions' is too dangerous. In some way only do
|
||||
auto-formatting in specific regions, e.g. defined by syntax highlighting.
|
||||
8 Allow using a trailing space to signal a paragraph that continues on the
|
||||
next line (MIME text/plain; format=flowed, RFC 2646). Can be used for
|
||||
continuous formatting. Could use 'autoformat' option, which specifies a
|
||||
@ -3358,8 +3898,6 @@ Various improvements:
|
||||
- Amiga: test for 'w' flag when reading a file.
|
||||
- :table command (Webb)
|
||||
- Add new operator: clear, make area white (replace with spaces): "g ".
|
||||
- Make it possible for a user to define a new operator. Implementation with
|
||||
internal scripting language or Perl?
|
||||
- Add command to ":read" a file at a certain column (blockwise read?).
|
||||
- Add sort of replace mode where case is taken from the old text (Goldfarb).
|
||||
- Allow multiple arguments for ":read", read all the files.
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_01.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_01.txt* For Vim version 7.1a. Last change: 2006 Oct 08
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -57,10 +57,10 @@ installation: |usr_90.txt|.
|
||||
*not-compatible*
|
||||
The manuals often assume you are using Vim with Vi-compatibility switched
|
||||
off. For most commands this doesn't matter, but sometimes it is important,
|
||||
e.g., for multi-level undo. An easy way to make sure you are using the right
|
||||
setup, copy the example vimrc file. By doing this inside Vim you don't have
|
||||
to check out where it is located. How to do this depends on the system you
|
||||
are using:
|
||||
e.g., for multi-level undo. An easy way to make sure you are using a nice
|
||||
setup is to copy the example vimrc file. By doing this inside Vim you don't
|
||||
have to check out where it is located. How to do this depends on the system
|
||||
you are using:
|
||||
|
||||
Unix: >
|
||||
:!cp -i $VIMRUNTIME/vimrc_example.vim ~/.vimrc
|
||||
@ -155,7 +155,7 @@ The Vim user manual and reference manual are Copyright (c) 1988-2003 by Bram
|
||||
Moolenaar. This material may be distributed only subject to the terms and
|
||||
conditions set forth in the Open Publication License, v1.0 or later. The
|
||||
latest version is presently available at:
|
||||
http://www.opencontent.org/opl.shtml
|
||||
http://www.opencontent.org/openpub/
|
||||
|
||||
People who contribute to the manuals must agree with the above copyright
|
||||
notice.
|
||||
@ -164,8 +164,8 @@ Parts of the user manual come from the book "Vi IMproved - Vim" by Steve
|
||||
Oualline (published by New Riders Publishing, ISBN: 0735710015). The Open
|
||||
Publication License applies to this book. Only selected parts are included
|
||||
and these have been modified (e.g., by removing the pictures, updating the
|
||||
text for Vim 6.0 and fixing mistakes). The omission of the |frombook| tag
|
||||
does not mean that the text does not come from the book.
|
||||
text for Vim 6.0 and later, fixing mistakes). The omission of the |frombook|
|
||||
tag does not mean that the text does not come from the book.
|
||||
|
||||
Many thanks to Steve Oualline and New Riders for creating this book and
|
||||
publishing it under the OPL! It has been a great help while writing the user
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_04.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_04.txt* For Vim version 7.1a. Last change: 2006 Jun 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -390,7 +390,7 @@ the clipboard in section |09.3| and here: |clipboard|.
|
||||
==============================================================================
|
||||
*04.8* Text objects
|
||||
|
||||
If the cursor is in the middle of a word and want to delete that word, you
|
||||
If the cursor is in the middle of a word and you want to delete that word, you
|
||||
need to move back to its start before you can do "dw". There is a simpler way
|
||||
to do this: "daw".
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_05.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_05.txt* For Vim version 7.1a. Last change: 2006 Jul 10
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -202,8 +202,8 @@ actually two parts here. "autocmd FileType text" is an autocommand. This
|
||||
defines that when the file type is set to "text" the following command is
|
||||
automatically executed. "setlocal textwidth=78" sets the 'textwidth' option
|
||||
to 78, but only locally in one file.
|
||||
>
|
||||
|
||||
*restore-cursor* >
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") > 0 && line("'\"") <= line("$") |
|
||||
\ exe "normal g`\"" |
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_06.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_06.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_07.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_07.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_11.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_11.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_12.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_12.txt* For Vim version 7.1a. Last change: 2006 Nov 18
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -38,8 +38,8 @@ match the start of a word: >
|
||||
|
||||
:%s/\<four/4/g
|
||||
|
||||
Obviously, this still goes wrong on "fourty". Use "\>" to match the end of a
|
||||
word: >
|
||||
Obviously, this still goes wrong on "fourteen". Use "\>" to match the end of
|
||||
a word: >
|
||||
|
||||
:%s/\<four\>/4/g
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_20.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_20.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_23.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_23.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_27.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_27.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_28.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_28.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_30.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_30.txt* For Vim version 7.1a. Last change: 2007 Apr 22
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -50,7 +50,7 @@ like this:
|
||||
2 returned ~
|
||||
"main.c" 11L, 111C ~
|
||||
(3 of 6): too many arguments to function 'do_sub' ~
|
||||
Hit ENTER or type command to continue ~
|
||||
Press ENTER or type command to continue ~
|
||||
|
||||
From this you can see that you have errors in the file "main.c". When you
|
||||
press <Enter>, Vim displays the file "main.c", with the cursor positioned on
|
||||
@ -148,7 +148,7 @@ More about these modifiers here: |filename-modifiers|.
|
||||
|
||||
OLD ERROR LISTS
|
||||
|
||||
Suppose you ":make" a program. There is an warning message in one file and an
|
||||
Suppose you ":make" a program. There is a warning message in one file and an
|
||||
error message in another. You fix the error and use ":make" again to check if
|
||||
it was really fixed. Now you want to look at the warning message. It doesn't
|
||||
show up in the last error list, since the file with the warning wasn't
|
||||
@ -242,7 +242,7 @@ form is: >
|
||||
This indents the current line. Like with all operators, there are three ways
|
||||
to use it. In Visual mode "=" indents the selected lines. A useful text
|
||||
object is "a{". This selects the current {} block. Thus, to re-indent the
|
||||
code code block the cursor is in: >
|
||||
code block the cursor is in: >
|
||||
|
||||
=a{
|
||||
|
||||
@ -315,7 +315,7 @@ In this file the output is:
|
||||
|
||||
filetype=help ~
|
||||
|
||||
This you would use "help" for {filetype}.
|
||||
Thus you would use "help" for {filetype}.
|
||||
For the {directory} part you need to use your runtime directory. Look at
|
||||
the output of this command: >
|
||||
|
||||
@ -339,7 +339,7 @@ How to do that is explained here: |indent-expression|.
|
||||
The most simple form of automatic indenting is with the 'autoindent' option.
|
||||
It uses the indent from the previous line. A bit smarter is the 'smartindent'
|
||||
option. This is useful for languages where no indent file is available.
|
||||
'smartindent'is not as smart as 'cindent', but smarter than 'autoindent'.
|
||||
'smartindent' is not as smart as 'cindent', but smarter than 'autoindent'.
|
||||
With 'smartindent' set, an extra level of indentation is added for each {
|
||||
and removed for each }. An extra level of indentation will also be added for
|
||||
any of the words in the 'cinwords' option. Lines that begin with # are
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_40.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*usr_40.txt* For Vim version 7.1a. Last change: 2006 Jun 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -605,8 +605,9 @@ like "doautocmd" except it executes on all the buffers.
|
||||
|
||||
USING NORMAL MODE COMMANDS
|
||||
|
||||
The commands executed by an autocommand are Command-line command. If you want
|
||||
to use a Normal mode command, the ":normal" command can be used. Example: >
|
||||
The commands executed by an autocommand are Command-line commands. If you
|
||||
want to use a Normal mode command, the ":normal" command can be used.
|
||||
Example: >
|
||||
|
||||
:autocmd BufReadPost *.log normal G
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.0. Last change: 2006 Apr 25
|
||||
*various.txt* For Vim version 7.1a. Last change: 2007 Jan 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -121,6 +121,12 @@ g8 Print the hex values of the bytes used in the
|
||||
:[range]# [count] [flags]
|
||||
synonym for :number.
|
||||
|
||||
*:#!*
|
||||
:#!{anything} Ignored, so that you can start a Vim script with: >
|
||||
#!/usr/bin/env vim -S
|
||||
echo "this is a Vim script"
|
||||
quit
|
||||
<
|
||||
*:z* *E144*
|
||||
:{range}z[+-^.=]{count} Display several lines of text surrounding the line
|
||||
specified with {range}, or around the current line
|
||||
@ -163,6 +169,7 @@ g8 Print the hex values of the bytes used in the
|
||||
it possible to execute Normal mode commands typed on
|
||||
the command-line. {commands} is executed like it is
|
||||
typed. For undo all commands are undone together.
|
||||
Execution stops when an error is encountered.
|
||||
If the [!] is given, mappings will not be used.
|
||||
{commands} should be a complete command. If
|
||||
{commands} does not finish a command, the last one
|
||||
@ -377,7 +384,7 @@ m *+tcl/dyn* Tcl interface |tcl-dynamic| |/dyn|
|
||||
N *+termresponse* support for |t_RV| and |v:termresponse|
|
||||
N *+textobjects* |text-objects| selection
|
||||
*+tgetent* non-Unix only: able to use external termcap
|
||||
N *+title* Setting the window title |'title'|
|
||||
N *+title* Setting the window 'title' and 'icon'
|
||||
N *+toolbar* |gui-toolbar|
|
||||
N *+user_commands* User-defined commands. |user-commands|
|
||||
N *+viminfo* |'viminfo'|
|
||||
@ -434,10 +441,14 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
after the register name can be omitted. {not in Vi}
|
||||
:redi[r] @{a-z}>> Append messages to register {a-z}. {not in Vi}
|
||||
|
||||
:redi[r] @*> Redirect messages to the clipboard. For backward
|
||||
compatibility, the ">" after the register name can be
|
||||
omitted. {not in Vi}
|
||||
:redi[r] @*>> Append messages to the clipboard. {not in Vi}
|
||||
:redi[r] @*>
|
||||
:redi[r] @+> Redirect messages to the selection or clipboard. For
|
||||
backward compatibility, the ">" after the register
|
||||
name can be omitted. See |quotestar| and |quoteplus|.
|
||||
{not in Vi}
|
||||
:redi[r] @*>>
|
||||
:redi[r] @+>> Append messages to the selection or clipboard.
|
||||
{not in Vi}
|
||||
|
||||
:redi[r] @"> Redirect messages to the unnamed register. For
|
||||
backward compatibility, the ">" after the register
|
||||
@ -447,6 +458,7 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
:redi[r] => {var} Redirect messages to a variable. If the variable
|
||||
doesn't exist, then it is created. If the variable
|
||||
exists, then it is initialized to an empty string.
|
||||
The variable will remain empty until redirection ends.
|
||||
Only string variables can be used. After the
|
||||
redirection starts, if the variable is removed or
|
||||
locked or the variable type is changed, then further
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
*workshop.txt* For Vim version 7.0. Last change: 2006 Apr 24
|
||||
*workshop.txt* For Vim version 7.1a. Last change: 2006 Apr 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
|
||||
@ -226,7 +226,7 @@ Stampa 3 linee (0x30 bytes esadecimali) alla fine di
|
||||
\fI% xxd \-s \-0x30 file
|
||||
.PP
|
||||
.br
|
||||
Stampa 120 bytes come immagine esadecimale continua con 40 bytes per linea.
|
||||
Stampa 120 bytes come immagine esadecimale continua con 20 bytes per linea.
|
||||
.br
|
||||
\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
|
||||
|
||||
|
||||
@ -231,7 +231,7 @@ xxd
|
||||
.PP
|
||||
.br
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 120 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD> 40 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||
<EFBFBD><EFBFBD> 20 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||
.PP
|
||||
\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
|
||||
.br
|
||||
|
||||
@ -123,7 +123,7 @@ added to file positions found in hexdump.
|
||||
start at
|
||||
.RI < seek >
|
||||
bytes abs. (or rel.) infile offset.
|
||||
\fI+ fRindicates that the seek is relative to the current stdin file position
|
||||
\fI+ \fRindicates that the seek is relative to the current stdin file position
|
||||
(meaningless when not reading from stdin). \fI\- \fRindicates that the seek
|
||||
should be that many characters from the end of the input (or if combined with
|
||||
\fI+\fR: before the current stdin file position).
|
||||
@ -172,17 +172,17 @@ The following examples may help to clarify (or further confuse!)...
|
||||
Rewind stdin before reading; needed because the `cat' has already read to the
|
||||
end of stdin.
|
||||
.br
|
||||
\fI% sh \-c "cat > plain_copy; xxd \-s 0 > hex_copy" < file
|
||||
\fI% sh \-c "cat > plain_copy; xxd \-s 0 > hex_copy" < file\fR
|
||||
.PP
|
||||
Hexdump from file position 0x480 (=1024+128) onwards.
|
||||
The `+' sign means "relative to the current position", thus the `128' adds to
|
||||
the 1k where dd left off.
|
||||
.br
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet" < file
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet" < file\fR
|
||||
.PP
|
||||
Hexdump from file position 0x100 ( = 1024\-768) on.
|
||||
.br
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +\-768 > hex_snippet" < file
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +\-768 > hex_snippet" < file\fR
|
||||
.PP
|
||||
However, this is a rare situation and the use of `+' is rarely needed.
|
||||
The author prefers to monitor the effect of xxd with strace(1) or truss(1), whenever \-s is used.
|
||||
@ -192,16 +192,16 @@ The author prefers to monitor the effect of xxd with strace(1) or truss(1), when
|
||||
Print everything but the first three lines (hex 0x30 bytes) of
|
||||
.BR file .
|
||||
.br
|
||||
\fI% xxd \-s 0x30 file
|
||||
\fI% xxd \-s 0x30 file\fR
|
||||
.PP
|
||||
.br
|
||||
Print 3 lines (hex 0x30 bytes) from the end of
|
||||
.BR file .
|
||||
.br
|
||||
\fI% xxd \-s \-0x30 file
|
||||
\fI% xxd \-s \-0x30 file\fR
|
||||
.PP
|
||||
.br
|
||||
Print 120 bytes as continuous hexdump with 40 octets per line.
|
||||
Print 120 bytes as continuous hexdump with 20 octets per line.
|
||||
.br
|
||||
\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
|
||||
.br
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2006 May 02
|
||||
" Last Change: 2007 Apr 26
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@ -88,6 +88,11 @@ au BufNewFile,BufRead *.wrm setf acedb
|
||||
|
||||
" Ada (83, 9X, 95)
|
||||
au BufNewFile,BufRead *.adb,*.ads,*.ada setf ada
|
||||
if has("vms")
|
||||
au BufNewFile,BufRead *.gpr,*.ada_m,*.adc setf ada
|
||||
else
|
||||
au BufNewFile,BufRead *.gpr setf ada
|
||||
endif
|
||||
|
||||
" AHDL
|
||||
au BufNewFile,BufRead *.tdf setf ahdl
|
||||
@ -194,6 +199,9 @@ au BufNewFile,BufRead *.mar setf vmasm
|
||||
" Atlas
|
||||
au BufNewFile,BufRead *.atl,*.as setf atlas
|
||||
|
||||
" Autoit v3
|
||||
au BufNewFile,BufRead *.au3 setf autoit
|
||||
|
||||
" Automake
|
||||
au BufNewFile,BufRead [mM]akefile.am,GNUmakefile.am setf automake
|
||||
|
||||
@ -225,6 +233,12 @@ endfun
|
||||
" Visual Basic Script (close to Visual Basic)
|
||||
au BufNewFile,BufRead *.vbs,*.dsm,*.ctl setf vb
|
||||
|
||||
" IBasic file (similar to QBasic)
|
||||
au BufNewFile,BufRead *.iba,*.ibi setf ibasic
|
||||
|
||||
" FreeBasic file (similar to QBasic)
|
||||
au BufNewFile,BufRead *.fb,*.bi setf freebasic
|
||||
|
||||
" Batch file for MSDOS.
|
||||
au BufNewFile,BufRead *.bat,*.sys setf dosbatch
|
||||
" *.cmd is close to a Batch file, but on OS/2 Rexx files also use *.cmd.
|
||||
@ -303,6 +317,9 @@ au BufNewFile,BufRead cfengine.conf setf cfengine
|
||||
" Comshare Dimension Definition Language
|
||||
au BufNewFile,BufRead *.cdl setf cdl
|
||||
|
||||
" Conary Recipe
|
||||
au BufNewFile,BufRead *.recipe setf conaryrecipe
|
||||
|
||||
" Controllable Regex Mutilator
|
||||
au BufNewFile,BufRead *.crm setf crm
|
||||
|
||||
@ -436,6 +453,10 @@ au BufNewFile,BufRead *.prg
|
||||
" Cmake
|
||||
au BufNewFile,BufRead CMakeLists.txt,*.cmake,*.cmake.in setf cmake
|
||||
|
||||
" Cmusrc
|
||||
au BufNewFile,BufRead ~/.cmus/{autosave,rc,command-history,*.theme} setf cmusrc
|
||||
au BufNewFile,BufRead */cmus/{rc,*.theme} setf cmusrc
|
||||
|
||||
" Cobol
|
||||
au BufNewFile,BufRead *.cbl,*.cob,*.lib setf cobol
|
||||
" cobol or zope form controller python script? (heuristic)
|
||||
@ -614,7 +635,10 @@ au BufNewFile,BufRead *.mas,*.master setf master
|
||||
au BufNewFile,BufRead *.fs,*.ft setf forth
|
||||
|
||||
" Fortran
|
||||
au BufNewFile,BufRead *.f,*.F,*.for,*.fpp,*.FPP,*.ftn,*.f77,*.F77,*.f90,*.F90,*.f95,*.F95 setf fortran
|
||||
if has("fname_case")
|
||||
au BufNewFile,BufRead *.F,*.FOR,*.FPP,*.FTN,*.F77,*.F90,*.F95 setf fortran
|
||||
endif
|
||||
au BufNewFile,BufRead *.f,*.for,*.fpp,*.ftn,*.f77,*.f90,*.f95 setf fortran
|
||||
|
||||
" FStab
|
||||
au BufNewFile,BufRead fstab,mtab setf fstab
|
||||
@ -660,6 +684,9 @@ au BufNewFile,BufRead /etc/group setf group
|
||||
" GTK RC
|
||||
au BufNewFile,BufRead .gtkrc,gtkrc setf gtkrc
|
||||
|
||||
" Hamster Classic | Playground files
|
||||
au BufNewFile,BufRead *.hsc,*.hsm setf hamster
|
||||
|
||||
" Haskell
|
||||
au BufNewFile,BufRead *.hs setf haskell
|
||||
au BufNewFile,BufRead *.lhs setf lhaskell
|
||||
@ -744,8 +771,11 @@ au BufNewFile,BufRead .indent.pro setf indent
|
||||
" Inform
|
||||
au BufNewFile,BufRead *.inf,*.INF setf inform
|
||||
|
||||
" Initng
|
||||
au BufNewFile,BufRead /etc/initng/**/*.i,*.ii setf initng
|
||||
|
||||
" Ipfilter
|
||||
au BufNewFile,BufRead ipf.conf,ipf.rules setf ipfilter
|
||||
au BufNewFile,BufRead ipf.conf,ipf6.conf,ipf.rules setf ipfilter
|
||||
|
||||
" Informix 4GL (source - canonical, include file, I4GL+M4 preproc.)
|
||||
au BufNewFile,BufRead *.4gl,*.4gh,*.m4gl setf fgl
|
||||
@ -771,8 +801,8 @@ au BufNewFile,BufRead *.java,*.jav setf java
|
||||
" JavaCC
|
||||
au BufNewFile,BufRead *.jj,*.jjt setf javacc
|
||||
|
||||
" JavaScript
|
||||
au BufNewFile,BufRead *.js,*.javascript setf javascript
|
||||
" JavaScript, ECMAScript
|
||||
au BufNewFile,BufRead *.js,*.javascript,*.es setf javascript
|
||||
|
||||
" Java Server Pages
|
||||
au BufNewFile,BufRead *.jsp setf jsp
|
||||
@ -876,7 +906,7 @@ au BufNewFile,BufRead *.m4
|
||||
" MaGic Point
|
||||
au BufNewFile,BufRead *.mgp setf mgp
|
||||
|
||||
" Mail (for Elm, trn, mutt, rn, slrn)
|
||||
" Mail (for Elm, trn, mutt, muttng, rn, slrn)
|
||||
au BufNewFile,BufRead snd.\d\+,.letter,.letter.\d\+,.followup,.article,.article.\d\+,pico.\d\+,mutt{ng,}-*-\w\+,mutt\w\{6\},ae\d\+.txt,/tmp/SLRN[0-9A-Z.]\+,*.eml setf mail
|
||||
|
||||
" Mail aliases
|
||||
@ -934,6 +964,9 @@ endfun
|
||||
" Maya Extension Language
|
||||
au BufNewFile,BufRead *.mel setf mel
|
||||
|
||||
" Messages
|
||||
au BufNewFile,BufRead /var/log/messages,/var/log/messages.*[0-9] setf messages
|
||||
|
||||
" Metafont
|
||||
au BufNewFile,BufRead *.mf setf mf
|
||||
|
||||
@ -1015,7 +1048,7 @@ au BufRead,BufNewFile *.mu setf mupad
|
||||
" Mush
|
||||
au BufNewFile,BufRead *.mush setf mush
|
||||
|
||||
" Mutt setup file
|
||||
" Mutt setup file (also for Muttng)
|
||||
au BufNewFile,BufRead Mutt{ng,}rc setf muttrc
|
||||
au BufNewFile,BufRead .mutt{ng,}rc*,*/.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc')
|
||||
|
||||
@ -1232,6 +1265,9 @@ au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
||||
" Oracle Pro*C/C++
|
||||
au BufNewFile,BufRead .pc setf proc
|
||||
|
||||
" Privoxy actions file
|
||||
au BufNewFile,BufRead *.action setf privoxy
|
||||
|
||||
" Procmail
|
||||
au BufNewFile,BufRead .procmail,.procmailrc setf procmail
|
||||
|
||||
@ -1371,31 +1407,31 @@ endif
|
||||
au BufNewFile,BufRead *.r,*.R call s:FTr()
|
||||
|
||||
fun! s:FTr()
|
||||
if getline(1) =~ '^REBOL'
|
||||
setf rebol
|
||||
else
|
||||
let n = 1
|
||||
let max = line("$")
|
||||
if max > 50
|
||||
let max = 50
|
||||
let max = line("$") > 50 ? 50 : line("$")
|
||||
|
||||
for n in range(1, max)
|
||||
" Rebol is easy to recognize, check for that first
|
||||
if getline(n) =~ '\<REBOL\>'
|
||||
setf rebol
|
||||
return
|
||||
endif
|
||||
while n < max
|
||||
" R has # comments
|
||||
if getline(n) =~ '^\s*#'
|
||||
setf r
|
||||
break
|
||||
endif
|
||||
" Rexx has /* comments */
|
||||
if getline(n) =~ '^\s*/\*'
|
||||
setf rexx
|
||||
break
|
||||
endif
|
||||
let n = n + 1
|
||||
endwhile
|
||||
if n >= max
|
||||
endfor
|
||||
|
||||
for n in range(1, max)
|
||||
" R has # comments
|
||||
if getline(n) =~ '^\s*#'
|
||||
setf r
|
||||
return
|
||||
endif
|
||||
" Rexx has /* comments */
|
||||
if getline(n) =~ '^\s*/\*'
|
||||
setf rexx
|
||||
return
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
|
||||
" Nothing recognized, assume Rexx
|
||||
setf rexx
|
||||
endfun
|
||||
|
||||
" Remind
|
||||
@ -1443,6 +1479,9 @@ au BufNewFile,BufRead *.sa setf sather
|
||||
" Scilab
|
||||
au BufNewFile,BufRead *.sci,*.sce setf scilab
|
||||
|
||||
" SD: Streaming Descriptors
|
||||
au BufNewFile,BufRead *.sd setf sd
|
||||
|
||||
" SDL
|
||||
au BufNewFile,BufRead *.sdl,*.pr setf sdl
|
||||
|
||||
@ -1922,6 +1961,9 @@ au BufNewFile,BufRead *.web
|
||||
" Windows Scripting Host and Windows Script Component
|
||||
au BufNewFile,BufRead *.ws[fc] setf wsh
|
||||
|
||||
" XHTML
|
||||
au BufNewFile,BufRead *.xhtml,*.xht setf xhtml
|
||||
|
||||
" X Pixmap (dynamically sets colors, use BufEnter to make it work better)
|
||||
au BufEnter *.xpm
|
||||
\ if getline(1) =~ "XPM2" |
|
||||
@ -1973,6 +2015,9 @@ au BufNewFile,BufRead *.csproj,*.csproj.user setf xml
|
||||
" Qt Linguist translation source and Qt User Interface Files are XML
|
||||
au BufNewFile,BufRead *.ts,*.ui setf xml
|
||||
|
||||
" TPM's are RDF-based descriptions of TeX packages (Nikolai Weibull)
|
||||
au BufNewFile,BufRead *.tpm setf xml
|
||||
|
||||
" Xdg menus
|
||||
au BufNewFile,BufRead /etc/xdg/menus/*.menu setf xml
|
||||
|
||||
@ -2052,6 +2097,9 @@ au StdinReadPost * if !did_filetype() | runtime! scripts.vim | endif
|
||||
au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk')
|
||||
au BufNewFile,BufRead *asterisk*/*voicemail.conf* call s:StarSetf('asteriskvm')
|
||||
|
||||
" Bazaar version control
|
||||
au BufNewFile,BufRead bzr_log.* setf bzr
|
||||
|
||||
" BIND zone
|
||||
au BufNewFile,BufRead */named/db.*,*/bind/db.* call s:StarSetf('bindzone')
|
||||
|
||||
@ -2073,6 +2121,7 @@ au BufNewFile,BufRead /etc/apt/sources.list.d/* call s:StarSetf('debsources')
|
||||
au BufNewFile,BufRead drac.* call s:StarSetf('dracula')
|
||||
|
||||
" Fvwm
|
||||
au BufNewFile,BufRead */.fvwm/* call s:StarSetf('fvwm')
|
||||
au BufNewFile,BufRead *fvwmrc*,*fvwm95*.hook
|
||||
\ let b:fvwm_version = 1 | call s:StarSetf('fvwm')
|
||||
au BufNewFile,BufRead *fvwm2rc*
|
||||
|
||||
14
runtime/ftplugin/fvwm.vim
Normal file
14
runtime/ftplugin/fvwm.vim
Normal file
@ -0,0 +1,14 @@
|
||||
" Created : Tue 09 May 2006 02:07:31 PM CDT
|
||||
" Modified : Tue 09 May 2006 02:07:31 PM CDT
|
||||
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
|
||||
" Description : ftplugin for fvwm config files
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
@ -8,6 +8,6 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_plugin = "setl fo< tw<"
|
||||
let b:undo_ftplugin = "setl fo< tw<"
|
||||
|
||||
setlocal formatoptions+=tcroql textwidth=78
|
||||
|
||||
13
runtime/ftplugin/htmldjango.vim
Normal file
13
runtime/ftplugin/htmldjango.vim
Normal file
@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Django HTML template
|
||||
" Maintainer: Dave Hodder <dmh@dmh.org.uk>
|
||||
" Last Change: 2007 Jan 25
|
||||
|
||||
" Only use this filetype plugin when no other was loaded.
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Use HTML and Django template ftplugins.
|
||||
runtime! ftplugin/html.vim
|
||||
runtime! ftplugin/django.vim
|
||||
@ -1,13 +1,38 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Javascript
|
||||
" Maintainer: Bram Moolenaar (for now)
|
||||
" Last Change: 2006 Jan 30
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2007 Feb 21
|
||||
" URL: http://gus.gscit.monash.edu.au/~djkea2/vim/ftplugin/javascript.vim
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
" Set 'formatoptions' to break comment lines but not other lines,
|
||||
" " and insert the comment leader when hitting <CR> or using "o".
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
" Set completion with CTRL-X CTRL-O to autoloaded function.
|
||||
if exists('&ofu')
|
||||
setlocal ofu=javascriptcomplete#CompleteJS
|
||||
setlocal omnifunc=javascriptcomplete#CompleteJS
|
||||
endif
|
||||
|
||||
" Set 'comments' to format dashed lists in comments.
|
||||
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
|
||||
|
||||
setlocal commentstring=//%s
|
||||
|
||||
" Change the :browse e filter to primarily show Java-related files.
|
||||
if has("gui_win32")
|
||||
let b:browsefilter="Javascript Files (*.js)\t*.js\n"
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl fo< ofu< com< cms<"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: Nam SungHyun <namsh@kldp.org>
|
||||
" Last Change: 2006 Mar 28
|
||||
" Last Change: 2006 Dec 04
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
" this script from your startup vimrc file.
|
||||
@ -119,9 +119,7 @@ func <SID>GetPage(...)
|
||||
if &filetype != "man"
|
||||
let thiswin = winnr()
|
||||
exe "norm! \<C-W>b"
|
||||
if winnr() == 1
|
||||
new
|
||||
else
|
||||
if winnr() > 1
|
||||
exe "norm! " . thiswin . "\<C-W>w"
|
||||
while 1
|
||||
if &filetype == "man"
|
||||
@ -129,11 +127,14 @@ func <SID>GetPage(...)
|
||||
endif
|
||||
exe "norm! \<C-W>w"
|
||||
if thiswin == winnr()
|
||||
new
|
||||
break
|
||||
endif
|
||||
endwhile
|
||||
endif
|
||||
if &filetype != "man"
|
||||
new
|
||||
setl nonu fdc=0
|
||||
endif
|
||||
endif
|
||||
silent exec "edit $HOME/".page.".".sect."~"
|
||||
" Avoid warning for editing the dummy file twice
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: php
|
||||
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
|
||||
" Last Changed: 2005 Sep 05
|
||||
" Last Changed: 2006 Jul 15
|
||||
" URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
@ -30,6 +30,9 @@ endif
|
||||
if exists("b:match_words")
|
||||
let s:match_words = b:match_words
|
||||
endif
|
||||
if exists("b:match_skip")
|
||||
unlet b:match_skip
|
||||
endif
|
||||
|
||||
" Change the :browse e filter to primarily show PHP-related files.
|
||||
if has("gui_win32")
|
||||
@ -41,12 +44,13 @@ endif
|
||||
setlocal include=\\\(require\\\|include\\\)\\\(_once\\\)\\\?
|
||||
setlocal iskeyword+=$
|
||||
if exists("loaded_matchit")
|
||||
let b:match_words = '<php?:?>,\<switch\>:\<endswitch\>,' .
|
||||
let b:match_words = '<?php:?>,\<switch\>:\<endswitch\>,' .
|
||||
\ '\<if\>:\<elseif\>:\<else\>:\<endif\>,' .
|
||||
\ '\<while\>:\<endwhile\>,' .
|
||||
\ '\<do\>:\<while\>,' .
|
||||
\ '\<for\>:\<endfor\>,' .
|
||||
\ '\<foreach\>:\<endforeach\>,' .
|
||||
\ '(:),[:],{:},' .
|
||||
\ s:match_words
|
||||
endif
|
||||
" ###
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Vim
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Feb 14
|
||||
" Last Change: 2006 Sep 26
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@ -48,6 +48,7 @@ if exists("loaded_matchit")
|
||||
let b:match_words =
|
||||
\ '\<fu\%[nction]\>:\<retu\%[rn]\>:\<endf\%[unction]\>,' .
|
||||
\ '\<wh\%[ile]\>:\<brea\%[k]\>:\<con\%[tinue]\>:\<endw\%[hile]\>,' .
|
||||
\ '\<for\>:\<brea\%[k]\>:\<con\%[tinue]\>:\<endfo\%[r]\>,' .
|
||||
\ '\<if\>:\<el\%[seif]\>:\<en\%[dif]\>,' .
|
||||
\ '\<try\>:\<cat\%[ch]\>:\<fina\%[lly]\>:\<endt\%[ry]\>,' .
|
||||
\ '\<aug\%[roup]\s\+\%(END\>\)\@!\S:\<aug\%[roup]\s\+END\>,' .
|
||||
|
||||
75
runtime/indent/bst.vim
Normal file
75
runtime/indent/bst.vim
Normal file
@ -0,0 +1,75 @@
|
||||
" Vim indent file
|
||||
" Language: bst
|
||||
" Author: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" $Id$
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal expandtab
|
||||
setlocal indentexpr=GetBstIndent(v:lnum)
|
||||
"setlocal smartindent
|
||||
setlocal cinkeys&
|
||||
setlocal cinkeys-=0#
|
||||
setlocal indentkeys&
|
||||
"setlocal indentkeys+=0%
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*GetBstIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
function! s:prevgood(lnum)
|
||||
" Find a non-blank line above the current line.
|
||||
" Skip over comments.
|
||||
let lnum = a:lnum
|
||||
while lnum > 0
|
||||
let lnum = prevnonblank(lnum - 1)
|
||||
if getline(lnum) !~ '^\s*%.*$'
|
||||
break
|
||||
endif
|
||||
endwhile
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
function! s:strip(lnum)
|
||||
let line = getline(a:lnum)
|
||||
let line = substitute(line,'"[^"]*"','""','g')
|
||||
let line = substitute(line,'%.*','','')
|
||||
let line = substitute(line,'^\s\+','','')
|
||||
return line
|
||||
endfunction
|
||||
|
||||
function! s:count(string,char)
|
||||
let str = substitute(a:string,'[^'.a:char.']','','g')
|
||||
return strlen(str)
|
||||
endfunction
|
||||
|
||||
function! GetBstIndent(lnum) abort
|
||||
if a:lnum == 1
|
||||
return 0
|
||||
endif
|
||||
let lnum = s:prevgood(a:lnum)
|
||||
if lnum <= 0
|
||||
return indent(a:lnum - 1)
|
||||
endif
|
||||
let line = s:strip(lnum)
|
||||
let cline = s:strip(a:lnum)
|
||||
if cline =~ '^}' && exists("b:current_syntax")
|
||||
call cursor(a:lnum,indent(a:lnum))
|
||||
if searchpair('{','','}','bW',"synIDattr(synID(line('.'),col('.'),1),'name') =~? 'comment\\|string'")
|
||||
if col('.')+1 == col('$')
|
||||
return indent('.')
|
||||
else
|
||||
return virtcol('.')-1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
let fakeline = substitute(line,'^}','','').matchstr(cline,'^}')
|
||||
let ind = indent(lnum)
|
||||
let ind = ind + &sw * s:count(line,'{')
|
||||
let ind = ind - &sw * s:count(fakeline,'}')
|
||||
return ind
|
||||
endfunction
|
||||
216
runtime/indent/cobol.vim
Normal file
216
runtime/indent/cobol.vim
Normal file
@ -0,0 +1,216 @@
|
||||
" Vim indent file
|
||||
" Language: cobol
|
||||
" Author: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" $Id$
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal expandtab
|
||||
setlocal indentexpr=GetCobolIndent(v:lnum)
|
||||
setlocal indentkeys&
|
||||
setlocal indentkeys+=0<*>,0/,0$,0=01,=~division,=~section,0=~end,0=~then,0=~else,0=~when,*<Return>,.
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*GetCobolIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:skip = 'getline(".") =~ "^.\\{6\\}[*/$-]\\|\"[^\"]*\""'
|
||||
|
||||
function! s:prevgood(lnum)
|
||||
" Find a non-blank line above the current line.
|
||||
" Skip over comments.
|
||||
let lnum = a:lnum
|
||||
while lnum > 0
|
||||
let lnum = prevnonblank(lnum - 1)
|
||||
let line = getline(lnum)
|
||||
if line !~? '^\s*[*/$-]' && line !~? '^.\{6\}[*/$CD-]'
|
||||
break
|
||||
endif
|
||||
endwhile
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
function! s:stripped(lnum)
|
||||
return substitute(strpart(getline(a:lnum),0,72),'^\s*','','')
|
||||
endfunction
|
||||
|
||||
function! s:optionalblock(lnum,ind,blocks,clauses)
|
||||
let ind = a:ind
|
||||
let clauses = '\c\<\%(\<NOT\s\+\)\@<!\%(NOT\s\+\)\=\%('.a:clauses.'\)'
|
||||
let begin = '\c-\@<!\<\%('.a:blocks.'\)\>'
|
||||
let beginfull = begin.'\ze.*\%(\n\%(\s*\%([*/$-].*\)\=\n\)*\)\=\s*\%('.clauses.'\)'
|
||||
let end = '\c\<end-\%('.a:blocks.'\)\>\|\%(\.\%( \|$\)\)\@='
|
||||
let cline = s:stripped(a:lnum)
|
||||
let line = s:stripped(s:prevgood(a:lnum))
|
||||
if cline =~? clauses "&& line !~? '^search\>'
|
||||
call cursor(a:lnum,1)
|
||||
let lastclause = searchpair(beginfull,clauses,end,'bWr',s:skip)
|
||||
if getline(lastclause) =~? clauses && s:stripped(lastclause) !~? '^'.begin
|
||||
let ind = indent(lastclause)
|
||||
elseif lastclause > 0
|
||||
let ind = indent(lastclause) + &sw
|
||||
"let ind = ind + &sw
|
||||
endif
|
||||
elseif line =~? clauses && cline !~? end
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
function! GetCobolIndent(lnum) abort
|
||||
let minshft = 6
|
||||
let ashft = minshft + 1
|
||||
let bshft = ashft + 4
|
||||
" (Obsolete) numbered lines
|
||||
if getline(a:lnum) =~? '^\s*\d\{6\}\%($\|[ */$CD-]\)'
|
||||
return 0
|
||||
endif
|
||||
let cline = s:stripped(a:lnum)
|
||||
" Comments, etc. must start in the 7th column
|
||||
if cline =~? '^[*/$-]'
|
||||
return minshft
|
||||
elseif cline =~# '^[CD]' && indent(a:lnum) == minshft
|
||||
return minshft
|
||||
endif
|
||||
" Divisions, sections, and file descriptions start in area A
|
||||
if cline =~? '\<\(DIVISION\|SECTION\)\%($\|\.\)' || cline =~? '^[FS]D\>'
|
||||
return ashft
|
||||
endif
|
||||
" Fields
|
||||
if cline =~? '^0*\(1\|77\)\>'
|
||||
return ashft
|
||||
endif
|
||||
if cline =~? '^\d\+\>'
|
||||
let cnum = matchstr(cline,'^\d\+\>')
|
||||
let default = 0
|
||||
let step = -1
|
||||
while step < 2
|
||||
let lnum = a:lnum
|
||||
while lnum > 0 && lnum < line('$') && lnum > a:lnum - 500 && lnum < a:lnum + 500
|
||||
let lnum = step > 0 ? nextnonblank(lnum + step) : prevnonblank(lnum + step)
|
||||
let line = getline(lnum)
|
||||
let lindent = indent(lnum)
|
||||
if line =~? '^\s*\d\+\>'
|
||||
let num = matchstr(line,'^\s*\zs\d\+\>')
|
||||
if 0+cnum == num
|
||||
return lindent
|
||||
elseif 0+cnum > num && default < lindent + &sw
|
||||
let default = lindent + &sw
|
||||
endif
|
||||
elseif lindent < bshft && lindent >= ashft
|
||||
break
|
||||
endif
|
||||
endwhile
|
||||
let step = step + 2
|
||||
endwhile
|
||||
return default ? default : bshft
|
||||
endif
|
||||
let lnum = s:prevgood(a:lnum)
|
||||
" Hit the start of the file, use "zero" indent.
|
||||
if lnum == 0
|
||||
return ashft
|
||||
endif
|
||||
" Initial spaces are ignored
|
||||
let line = s:stripped(lnum)
|
||||
let ind = indent(lnum)
|
||||
" Paragraphs. There may be some false positives.
|
||||
if cline =~? '^\(\a[A-Z0-9-]*[A-Z0-9]\|\d[A-Z0-9-]*\a\)\.' "\s*$'
|
||||
if cline !~? '^EXIT\s*\.' && line =~? '\.\s*$'
|
||||
return ashft
|
||||
endif
|
||||
endif
|
||||
" Paragraphs in the identification division.
|
||||
"if cline =~? '^\(PROGRAM-ID\|AUTHOR\|INSTALLATION\|' .
|
||||
"\ 'DATE-WRITTEN\|DATE-COMPILED\|SECURITY\)\>'
|
||||
"return ashft
|
||||
"endif
|
||||
if line =~? '\.$'
|
||||
" XXX
|
||||
return bshft
|
||||
endif
|
||||
if line =~? '^PERFORM\>'
|
||||
let perfline = substitute(line, '\c^PERFORM\s*', "", "")
|
||||
if perfline =~? '^\%(\k\+\s\+TIMES\)\=\s*$'
|
||||
let ind = ind + &sw
|
||||
elseif perfline =~? '^\%(WITH\s\+TEST\|VARYING\|UNTIL\)\>.*[^.]$'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
endif
|
||||
if line =~? '^\%(IF\|THEN\|ELSE\|READ\|EVALUATE\|SEARCH\|SELECT\)\>'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
let ind = s:optionalblock(a:lnum,ind,'ADD\|COMPUTE\|DIVIDE\|MULTIPLY\|SUBTRACT','ON\s\+SIZE\s\+ERROR')
|
||||
let ind = s:optionalblock(a:lnum,ind,'STRING\|UNSTRING\|ACCEPT\|DISPLAY\|CALL','ON\s\+OVERFLOW\|ON\s\+EXCEPTION')
|
||||
if cline !~? '^AT\s\+END\>' || line !~? '^SEARCH\>'
|
||||
let ind = s:optionalblock(a:lnum,ind,'DELETE\|REWRITE\|START\|WRITE\|READ','INVALID\s\+KEY\|AT\s\+END\|NO\s\+DATA\|AT\s\+END-OF-PAGE')
|
||||
endif
|
||||
if cline =~? '^WHEN\>'
|
||||
call cursor(a:lnum,1)
|
||||
" We also search for READ so that contained AT ENDs are skipped
|
||||
let lastclause = searchpair('\c-\@<!\<\%(SEARCH\|EVALUATE\|READ\)\>','\c\<\%(WHEN\|AT\s\+END\)\>','\c\<END-\%(SEARCH\|EVALUATE\|READ\)\>','bW',s:skip)
|
||||
let g:foo = s:stripped(lastclause)
|
||||
if s:stripped(lastclause) =~? '\c\<\%(WHEN\|AT\s\+END\)\>'
|
||||
"&& s:stripped(lastclause) !~? '^\%(SEARCH\|EVALUATE\|READ\)\>'
|
||||
let ind = indent(lastclause)
|
||||
elseif lastclause > 0
|
||||
let ind = indent(lastclause) + &sw
|
||||
endif
|
||||
elseif line =~? '^WHEN\>'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
"I'm not sure why I had this
|
||||
"if line =~? '^ELSE\>-\@!' && line !~? '\.$'
|
||||
"let ind = indent(s:prevgood(lnum))
|
||||
"endif
|
||||
if cline =~? '^\(END\)\>-\@!'
|
||||
" On lines with just END, 'guess' a simple shift left
|
||||
let ind = ind - &sw
|
||||
elseif cline =~? '^\(END-IF\|THEN\|ELSE\)\>-\@!'
|
||||
call cursor(a:lnum,indent(a:lnum))
|
||||
let match = searchpair('\c-\@<!\<IF\>','\c-\@<!\%(THEN\|ELSE\)\>','\c-\@<!\<END-IF\>\zs','bnW',s:skip)
|
||||
if match > 0
|
||||
let ind = indent(match)
|
||||
endif
|
||||
elseif cline =~? '^END-[A-Z]'
|
||||
let beginword = matchstr(cline,'\c\<END-\zs[A-Z0-9-]\+')
|
||||
let endword = 'END-'.beginword
|
||||
let first = 0
|
||||
let suffix = '.*\%(\n\%(\%(\s*\|.\{6\}\)[*/].*\n\)*\)\=\s*'
|
||||
if beginword =~? '^\%(ADD\|COMPUTE\|DIVIDE\|MULTIPLY\|SUBTRACT\)$'
|
||||
let beginword = beginword . suffix . '\<\%(NOT\s\+\)\=ON\s\+SIZE\s\+ERROR'
|
||||
let g:beginword = beginword
|
||||
let first = 1
|
||||
elseif beginword =~? '^\%(STRING\|UNSTRING\)$'
|
||||
let beginword = beginword . suffix . '\<\%(NOT\s\+\)\=ON\s\+OVERFLOW'
|
||||
let first = 1
|
||||
elseif beginword =~? '^\%(ACCEPT\|DISPLAY\)$'
|
||||
let beginword = beginword . suffix . '\<\%(NOT\s\+\)\=ON\s\+EXCEPTION'
|
||||
let first = 1
|
||||
elseif beginword ==? 'CALL'
|
||||
let beginword = beginword . suffix . '\<\%(NOT\s\+\)\=ON\s\+\%(EXCEPTION\|OVERFLOW\)'
|
||||
let first = 1
|
||||
elseif beginword =~? '^\%(DELETE\|REWRITE\|START\|READ\|WRITE\)$'
|
||||
let first = 1
|
||||
let beginword = beginword . suffix . '\<\%(NOT\s\+\)\=\(INVALID\s\+KEY'
|
||||
if beginword =~? '^READ'
|
||||
let first = 0
|
||||
let beginword = beginword . '\|AT\s\+END\|NO\s\+DATA'
|
||||
elseif beginword =~? '^WRITE'
|
||||
let beginword = beginword . '\|AT\s\+END-OF-PAGE'
|
||||
endif
|
||||
let beginword = beginword . '\)'
|
||||
endif
|
||||
call cursor(a:lnum,indent(a:lnum))
|
||||
let match = searchpair('\c-\@<!\<'.beginword.'\>','','\c\<'.endword.'\>\zs','bnW'.(first? 'r' : ''),s:skip)
|
||||
if match > 0
|
||||
let ind = indent(match)
|
||||
elseif cline =~? '^\(END-\(READ\|EVALUATE\|SEARCH\|PERFORM\)\)\>'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
endif
|
||||
return ind < bshft ? bshft : ind
|
||||
endfunction
|
||||
@ -2,7 +2,7 @@
|
||||
" Language: Fortran95 (and Fortran90, Fortran77, F and elf90)
|
||||
" Version: 0.37
|
||||
" URL: http://www.unb.ca/chem/ajit/indent/fortran.vim
|
||||
" Last Change: 2006 Apr. 22
|
||||
" Last Change: 2006 Nov 16
|
||||
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: Do :help fortran-indent from Vim
|
||||
|
||||
@ -72,7 +72,7 @@ function FortranGetIndent(lnum)
|
||||
let prevstat=substitute(prevline, '!.*$', '', '')
|
||||
|
||||
"Indent do loops only if they are all guaranteed to be of do/end do type
|
||||
if exists("b:fortran_do_enddo") || exists("fortran_do_enddo")
|
||||
if exists("b:fortran_do_enddo") || exists("g:fortran_do_enddo")
|
||||
if prevstat =~? '^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*do\>'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
|
||||
55
runtime/indent/hamster.vim
Normal file
55
runtime/indent/hamster.vim
Normal file
@ -0,0 +1,55 @@
|
||||
" Vim indent file
|
||||
" Language: Hamster Script
|
||||
" Version: 2.0.6.0
|
||||
" Last Change: Wed Nov 08 2006 12:02:42 PM
|
||||
" Maintainer: David Fishburn <fishburn@ianywhere.com>
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentkeys+==~if,=~else,=~endif,=~endfor,=~endwhile
|
||||
setlocal indentkeys+==~do,=~until,=~while,=~repeat,=~for,=~loop
|
||||
setlocal indentkeys+==~sub,=~endsub
|
||||
|
||||
" Define the appropriate indent function but only once
|
||||
setlocal indentexpr=HamGetFreeIndent()
|
||||
if exists("*HamGetFreeIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
function HamGetIndent(lnum)
|
||||
let ind = indent(a:lnum)
|
||||
let prevline=getline(a:lnum)
|
||||
|
||||
" Add a shiftwidth to statements following if, else, elseif,
|
||||
" case, select, default, do, until, while, for, start
|
||||
if prevline =~? '^\s*\<\(if\|else\%(if\)\?\|for\|repeat\|do\|while\|sub\)\>'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
|
||||
" Subtract a shiftwidth from else, elseif, end(if|while|for), until
|
||||
let line = getline(v:lnum)
|
||||
if line =~? '^\s*\(else\|elseif\|loop\|until\|end\%(if\|while\|for\|sub\)\)\>'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
function HamGetFreeIndent()
|
||||
" Find the previous non-blank line
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
" Use zero indent at the top of the file
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let ind=HamGetIndent(lnum)
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
" vim:sw=2 tw=80
|
||||
@ -109,7 +109,7 @@ menutrans &Keymap
|
||||
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ tag(&J)<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD> Tags <20>ļ<EFBFBD>(&T)
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD>\ Tags\ <20>ļ<EFBFBD>(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
@ -209,7 +209,7 @@ menutrans Min\ Widt&h<Tab>^W1\|
|
||||
menutrans &Undo <09><><EFBFBD><EFBFBD>(&U)
|
||||
menutrans Cu&t <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Copy <09><><EFBFBD><EFBFBD>(&C)
|
||||
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
|
||||
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
|
||||
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
|
||||
menutrans Select\ Blockwise ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
menutrans Select\ &Word ѡ<EFBFBD><EFBFBD>(&W)
|
||||
@ -233,7 +233,7 @@ if has("toolbar")
|
||||
tmenu ToolBar.Redo <09><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Cut <09><><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Find <09><><EFBFBD><EFBFBD>...
|
||||
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
" Menu Translations: Portugu<67>s
|
||||
" Maintainer: Jos<6F> de Paula <jose_de_paula@ig.com.br>
|
||||
" Last Change: 2003 Jun 12
|
||||
" Menu Translations: Portugu<67>s do Brasil
|
||||
" Maintainer: Jos<6F> de Paula <jose@infoviaweb.com>
|
||||
" Last Change: 2006-09-19 02:30:00-03:00
|
||||
"
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
@ -25,6 +25,7 @@ menutrans &Find\.\.\. &Procurar\.\.\.
|
||||
menutrans &Credits &Cr<EFBFBD>ditos
|
||||
menutrans O&rphans &<26>rf<EFBFBD>os
|
||||
menutrans Co&pying &Licen<EFBFBD>a
|
||||
menutrans &Sponsor/Register &Doar/Registrar
|
||||
menutrans &Version &Vers<EFBFBD>o
|
||||
menutrans &About &Sobre
|
||||
|
||||
@ -58,7 +59,8 @@ menutrans Find\ and\ Rep&lace\.\.\. Procurar\ e\ substit&uir\.\.\.
|
||||
menutrans Find\ and\ Rep&lace<Tab>:%s Procurar\ e\ substit&uir<Tab>:%s
|
||||
menutrans Find\ and\ Rep&lace Procurar\ e\ substit&uir
|
||||
menutrans Find\ and\ Rep&lace<Tab>:s Procurar\ e\ substituir<Tab>:s
|
||||
menutrans Settings\ &Window Op&<EFBFBD><EFBFBD>es
|
||||
menutrans Settings\ &Window &Op<EFBFBD><EFBFBD>es
|
||||
menutrans Startup\ &Settings &Inicializa<EFBFBD><EFBFBD>o
|
||||
|
||||
" Edit/Global Settings
|
||||
menutrans &Global\ Settings Op<EFBFBD><EFBFBD>es\ &Globais
|
||||
@ -117,7 +119,7 @@ menutrans default padr
|
||||
|
||||
menutrans Select\ Fo&nt\.\.\. Selecionar\ fo&nte\.\.\.
|
||||
|
||||
menutrans &Keymap Mapa\ de\ teclado
|
||||
menutrans &Keymap &Mapa\ de\ teclado
|
||||
menutrans None Nenhum
|
||||
|
||||
" Programming menu
|
||||
@ -125,6 +127,7 @@ menutrans &Tools &Ferramentas
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] &Pular\ para\ este\ tag<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T &Voltar<Tab>^T
|
||||
menutrans Build\ &Tags\ File &Construir\ Arquivo\ de\ tags
|
||||
menutrans &Spelling &Ortografia
|
||||
menutrans &Folding &Dobra
|
||||
menutrans &Make<Tab>:make &Make<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl &Lista\ de\ erros<Tab>:cl
|
||||
@ -134,10 +137,27 @@ menutrans &Previous\ Error<Tab>:cp &Erro\ anterior<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold Listar\ erros\ &antigos<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew Listar\ erros\ &novos<Tab>:cnew
|
||||
menutrans Error\ &Window &Janela\ de\ erros
|
||||
menutrans &Set\ Compiler Def&inir\ Compilador
|
||||
menutrans Se&T\ Compiler Def&inir\ Compilador
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd Converter\ para\ hexadecimal<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r Conver&ter\ de\ volta<Tab>:%!xxd\ -r
|
||||
|
||||
" Tools.Spelling menu
|
||||
menutrans &Spell Check On &Ativar Corre<EFBFBD><EFBFBD>o Ortogr<EFBFBD>fica
|
||||
menutrans &Spell Check Off &Desativar Corre<EFBFBD><EFBFBD>o Ortogr<EFBFBD>fica
|
||||
menutrans To &Next error<Tab>]s &Pr<EFBFBD>ximo Erro<Tab>]s
|
||||
menutrans To &Previous Error<Tab>[s Erro A&nterior<Tab>[s
|
||||
menutrans Suggest &Corrections<Tab>z= &Sugerir Corre<EFBFBD><EFBFBD>es<Tab>z=
|
||||
menutrans &Repeat correction<Tab>:spellrepall &Repetir Corre<EFBFBD><EFBFBD>o<Tab>:spellrepall
|
||||
|
||||
menutrans Set\ language\ to\ "en" Ingl<EFBFBD>s
|
||||
menutrans Set\ language\ to\ "en_au" Ingl<EFBFBD>s\ (en_au)
|
||||
menutrans Set\ language\ to\ "en_ca" Ingl<EFBFBD>s\ (en_ca)
|
||||
menutrans Set\ language\ to\ "en_gb" Ingl<EFBFBD>s\ (en_gb)
|
||||
menutrans Set\ language\ to\ "en_nz" Ingl<EFBFBD>s\ (en_nz)
|
||||
menutrans Set\ language\ to\ "en_us" Ingl<EFBFBD>s\ (en_us)
|
||||
|
||||
menutrans &Find\ More\ Languages &Buscar mais idiomas
|
||||
|
||||
" Tools.Fold Menu
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Ativar/Desativar\ dobras<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv &Ver\ linha\ do\ cursor<Tab>zv
|
||||
|
||||
294
runtime/lang/menu_sl_si.utf-8.vim
Normal file
294
runtime/lang/menu_sl_si.utf-8.vim
Normal file
@ -0,0 +1,294 @@
|
||||
" Menu Translations: Slovenian / Slovensko
|
||||
" Maintainer: Mojca Miklavec <mojca.miklavec.lists@gmail.com>
|
||||
" Originally By: Mojca Miklavec <mojca.miklavec.lists@gmail.com>
|
||||
" Last Change: Sat, 17 Jun 2006
|
||||
" vim:set foldmethod=marker tabstop=8:
|
||||
|
||||
" TODO: add/check all '&'s
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
finish
|
||||
endif
|
||||
let did_menu_trans = 1
|
||||
|
||||
scriptencoding utf-8
|
||||
|
||||
" {{{ FILE / DATOTEKA
|
||||
menutrans &File &Datoteka
|
||||
menutrans &Open\.\.\.<Tab>:e &Odpri\ \.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp Odpri\ de&ljeno\ \.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew Odpri\ v\ zavi&hku\ \.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew &Nova<Tab>:enew
|
||||
menutrans &Close<Tab>:close &Zapri<Tab>:close
|
||||
menutrans &Save<Tab>:w &Shrani<Tab>:w
|
||||
menutrans Save\ &As\.\.\.<Tab>:sav Shrani\ &kot\ \.\.\.<Tab>:sav
|
||||
menutrans &Print Na&tisni
|
||||
menutrans Sa&ve-Exit<Tab>:wqa Shrani\ in\ &končaj<Tab>:wqa
|
||||
menutrans E&xit<Tab>:qa &Izhod<Tab>:qa
|
||||
|
||||
if has("diff")
|
||||
menutrans Split\ &Diff\ with\.\.\. Primerjaj\ z\ (di&ff)\ \.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. &Popravi\ z\ (patch)\ \.\.\.
|
||||
endif
|
||||
" }}} FILE / DATOTEKA
|
||||
|
||||
" {{{ EDIT / UREDI
|
||||
menutrans &Edit &Uredi
|
||||
menutrans &Undo<Tab>u &Razveljavi<Tab>u
|
||||
menutrans &Redo<Tab>^R &Obnovi<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. Po&novi<Tab>\.
|
||||
menutrans Cu&t<Tab>"+x &Izreži<Tab>"+x
|
||||
menutrans &Copy<Tab>"+y &Kopiraj<Tab>"+y
|
||||
menutrans &Paste<Tab>"+gP &Prilepi<Tab>"+gP
|
||||
menutrans Put\ &Before<Tab>[p Vrini\ pred<Tab>[p
|
||||
menutrans Put\ &After<Tab>]p Vrini\ za<Tab>]p
|
||||
menutrans &Delete<Tab>x Iz&briši<Tab>x
|
||||
menutrans &Select\ all<Tab>ggVG Izberi\ vse<Tab>ggVG
|
||||
menutrans &Find\.\.\. Po&išči\ \.\.\.
|
||||
menutrans Find\ and\ Rep&lace\.\.\. Poišči\ in\ &zamenjaj\ \.\.\.
|
||||
|
||||
" [-- SETTINGS --]
|
||||
menutrans Settings\ &Window Nastavitve\ \.\.\.
|
||||
menutrans Startup\ &Settings Začetne\ nastavitve
|
||||
menutrans &Global\ Settings &Globalne\ nastavitve
|
||||
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Vključi/izključi\ poudarjanje\ iskanega\ niza<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! Vključi/izključi\ ločevanje\ velikih\ in\ malih\ črk<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm! Vključi/izključi\ kratek\ skok\ na\ pripadajoči\ oklepaj<Tab>:set\ sm!
|
||||
|
||||
menutrans &Context\ lines Št\.\ vidnih\ vrstic\ pred/za\ kurzorjem
|
||||
|
||||
menutrans &Virtual\ Edit Dovoli\ položaj\ kazalčka,\ kjer\ ni\ besedila
|
||||
menutrans Never Nikoli
|
||||
menutrans Block\ Selection Le\ med\ izbiranjem\ bloka
|
||||
menutrans Insert\ mode Le\ v\ načinu\ za\ pisanje
|
||||
menutrans Block\ and\ Insert Pri\ obojem
|
||||
menutrans Always Vedno
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Vključi/izključi\ način\ za\ pisanje<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! Vključi/izključi\ združljivost\ z\ Vi-jem<Tab>:set\ cp!
|
||||
|
||||
menutrans Search\ &Path\.\.\. Pot\ za\ iskanje\ \.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. Ta&g-datoteke\.\.\.
|
||||
|
||||
menutrans Toggle\ &Toolbar Pokaži/skrij\ Orodja
|
||||
menutrans Toggle\ &Bottom\ Scrollbar Pokaži/skrij\ spodnji\ drsnik
|
||||
menutrans Toggle\ &Left\ Scrollbar Pokaži/skrij\ levi\ drsnik
|
||||
menutrans Toggle\ &Right\ Scrollbar Pokaži/skrij\ desni\ drsnik
|
||||
|
||||
" Edit/File Settings
|
||||
menutrans F&ile\ Settings &Nastavitve\ datoteke
|
||||
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Pokaži/skrij\ številke\ vrstic<Tab>:set\ nu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! Pokaži/skrij\ nevidne\ znake<Tab>:set\ list! " space/tab
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! Vključi/izključi\ prelome\ vrstic<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! Vključi/izključi\ prelome\ vrstic\ med\ besedami<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! Vključi/izključi\ zamenjavo\ tabulatorjev\ s\ presledki<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! Vključi/izključi\ avtomatsko\ zamikanje\ vrstic<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! Vključi/izključi\ C-jevski\ način\ zamikanja\ vrstic<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
menutrans &Shiftwidth Širina\ zamika\ vrstic
|
||||
menutrans Soft\ &Tabstop Širina\ &tabulatorja
|
||||
menutrans Te&xt\ Width\.\.\. Širina\ besedila\ \.\.\.
|
||||
menutrans &File\ Format\.\.\. Format\ &datoteke\ \.\.\.
|
||||
menutrans C&olor\ Scheme &Barvna\ shema\ \.\.\.
|
||||
menutrans &Keymap &Keymap
|
||||
menutrans Select\ Fo&nt\.\.\. Pisava\ \.\.\.
|
||||
" }}} EDIT / UREDI
|
||||
|
||||
" {{{ TOOLS / ORODJA
|
||||
menutrans &Tools &Orodja
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] &Skoči\ k\ tej\ znački<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T Skoči\ Na&zaj<Tab>^T
|
||||
menutrans Build\ &Tags\ File Napravi\ datoteke\ z\ značkami\ (tag)
|
||||
if has("spell")
|
||||
menutrans &Spelling Črkovalnik
|
||||
menutrans &Spell\ Check\ On &Vključi
|
||||
menutrans Spell\ Check\ &Off &Izključi
|
||||
menutrans To\ &Next\ error<Tab>]s K\ &naslednji\ napaki<Tab>]s
|
||||
menutrans To\ &Previous\ error<Tab>[s K\ &prejšnji\ napaki<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= Predlagaj\ popravek<Tab>z=
|
||||
menutrans &Repeat\ correction<Tab>:spellrepall Po&novi\ popravke\ na\ vseh\ besedah<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" Angleški\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" Angleški\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" Angleški\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" Angleški\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" Angleški\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" Angleški\ "en_us"
|
||||
menutrans Set\ language\ to\ "sl" Slovenski\ "sl"
|
||||
menutrans Set\ language\ to\ "de" Nemški\ "de"
|
||||
menutrans Set\ language\ to\ Črkovalnik:\
|
||||
menutrans &Find\ More\ Languages &Ostali\ jeziki
|
||||
endif
|
||||
if has("folding")
|
||||
menutrans &Folding Zvijanje\ kode
|
||||
" open close folds
|
||||
menutrans &Enable/Disable\ folds<Tab>zi Omogoči/onemogoči\ zvijanje<Tab>zi " Omogoči/onemogoči\ zavihke
|
||||
menutrans &View\ Cursor\ Line<Tab>zv Pokaži\ vrstico\ s\ kazalčkom<Tab>zv " kjer je kazalec
|
||||
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Pokaži\ samo\ vrstico\ s\ kazalčkom<Tab>zMzx
|
||||
menutrans C&lose\ more\ folds<Tab>zm Zvij\ naslednji\ nivo<Tab>zm " Zapri\ več\ zavihkov
|
||||
menutrans &Close\ all\ folds<Tab>zM Zvij\ vso\ kodo<Tab>zM " Zapri\ vse\ zavihke
|
||||
menutrans O&pen\ more\ folds<Tab>zr Razvij\ en\ nivo<Tab>zr " Odpri\ več\ zavihkov
|
||||
menutrans &Open\ all\ folds<Tab>zR Razvij\ vso\ kodo<Tab>zR " Odpri\ vse\ zavihke
|
||||
" fold method
|
||||
menutrans Fold\ Met&hod Kriterij\ za\ zvijanje " Ustvarjanje\ zavihkov
|
||||
menutrans M&anual &Ročno
|
||||
menutrans I&ndent Glede\ na\ &poravnavo
|
||||
menutrans E&xpression Z\ &izrazi\ (foldexpr)
|
||||
menutrans S&yntax Glede\ na\ &sintakso
|
||||
menutrans &Diff Razlike\ (&diff)
|
||||
menutrans Ma&rker Z\ &markerji/označbami
|
||||
" create and delete folds
|
||||
" TODO accelerators
|
||||
menutrans Create\ &Fold<Tab>zf Ustvari\ zvitek<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd Izbriši\ zvitek<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD Izbriši\ vse\ zvitke<Tab>zD
|
||||
" moving around in folds
|
||||
menutrans Fold\ column\ &width Širina\ drevesa\ z\ zvitki
|
||||
endif " has folding
|
||||
|
||||
if has("diff")
|
||||
menutrans &Diff Razlike\ (&Diff)
|
||||
menutrans &Update &Posodobi<Tab>
|
||||
menutrans &Get\ Block &Sprejmi\ (spremeni\ to\ okno) " XXX: check if translation is OK
|
||||
menutrans &Put\ Block &Pošlji\ (spremeni\ drugo\ okno)
|
||||
endif
|
||||
|
||||
menutrans &Make<Tab>:make Napravi\ (&make)<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl Pokaži\ napake<Tab>:cl
|
||||
menutrans L&ist\ Messages<Tab>:cl! Pokaži\ sporočila<Tab>:cl!
|
||||
menutrans &Next\ Error<Tab>:cn K\ &naslednji\ napaki<Tab>:cn
|
||||
menutrans &Previous\ Error<Tab>:cp K\ &prejšnji\ napaki<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold K\ &starejšemu\ seznamu\ napak<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew K\ &novejšemu\ seznamu\ napak<Tab>:cnew
|
||||
|
||||
menutrans Error\ &Window Okno\ z\ napakami
|
||||
menutrans &Update<Tab>:cwin &Posodobi<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen &Odpri<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose &Zapri<Tab>:cclose
|
||||
|
||||
menutrans &Set\ Compiler Nastavi\ &prevajalnik
|
||||
menutrans Se&T\ Compiler Nastavi\ &prevajalnik " bug in original translation?
|
||||
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd Pretvori\ v\ HE&X<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r Pretvori\ nazaj<Tab>:%!xxd\ -r
|
||||
" }}} TOOLS / ORODJA
|
||||
|
||||
" {{{ SYNTAX / BARVANJE KODE
|
||||
menutrans &Syntax &Barvanje\ kode
|
||||
menutrans &Show\ filetypes\ in\ menu Podprte\ vrste\ datotek
|
||||
menutrans Set\ '&syntax'\ only Samo\ barvanje\ ('&syntax')
|
||||
menutrans Set\ '&filetype'\ too Tudi\ obnašanje\ ('&filetype')
|
||||
menutrans &Off &Izključeno
|
||||
menutrans &Manual &Ročno
|
||||
menutrans A&utomatic &Avtomatsko
|
||||
menutrans on/off\ for\ &This\ file Vključi/izključi\ za\ to\ datoteko
|
||||
menutrans Co&lor\ test Preizkus\ barv
|
||||
menutrans &Highlight\ test Preizkus\ barvanja\ kode
|
||||
menutrans &Convert\ to\ HTML Pretvori\ v\ &HTML
|
||||
" }}} SYNTAX / BARVANJE KODE
|
||||
|
||||
" {{{ BUFFERS / MEDPOMNILNIK
|
||||
menutrans &Buffers &Medpomnilnik " XXX: ni najbolje: okno bi bolj pristajalo, ampak okno je že
|
||||
menutrans &Refresh\ menu &Osveži
|
||||
menutrans Delete &Briši
|
||||
menutrans &Alternate &Menjaj
|
||||
menutrans &Next &Naslednji
|
||||
menutrans &Previous &Prejšnji
|
||||
menutrans [No\ File] [Brez\ datoteke]
|
||||
" }}} BUFFERS / MEDPOMNILNIK
|
||||
|
||||
" {{{ WINDOW / OKNO
|
||||
menutrans &Window &Okno
|
||||
menutrans &New<Tab>^Wn &Novo<Tab>^Wn
|
||||
menutrans S&plit<Tab>^Ws Razdeli<Tab>^Ws
|
||||
menutrans Split\ &Vertically<Tab>^Wv Razdeli\ navpično<Tab>^Ws
|
||||
menutrans Split\ File\ E&xplorer Razdeli:\ Vsebina\ mape
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ Razdeli\ v\ #<Tab>^W^^
|
||||
menutrans &Close<Tab>^Wc &Zapri<Tab>^Wc
|
||||
menutrans Close\ &Other(s)<Tab>^Wo Zapri\ &ostala<Tab>^Wo
|
||||
menutrans Move\ &To Premakni
|
||||
menutrans &Top<Tab>^WK &Gor<Tab>^WK
|
||||
menutrans &Bottom<Tab>^WJ &Dol<Tab>^WJ
|
||||
menutrans &Left\ side<Tab>^WH &Levo<Tab>^WH
|
||||
menutrans &Right\ side<Tab>^WL &Desno<Tab>^WL
|
||||
menutrans Rotate\ &Up<Tab>^WR Zavrti\ navzgor<Tab>^WR
|
||||
menutrans Rotate\ &Down<Tab>^Wr Zavrti\ navzdol<Tab>^Wr
|
||||
menutrans &Equal\ Size<Tab>^W= &Enaka\ velikost<Tab>^W=
|
||||
menutrans &Max\ Height<Tab>^W_ Najvišje<Tab>^W_
|
||||
menutrans M&in\ Height<Tab>^W1_ Najnižje<Tab>^W1_
|
||||
menutrans Max\ &Width<Tab>^W\| Najširše<Tab>^W\|
|
||||
menutrans Min\ Widt&h<Tab>^W1\| Najožje<Tab>^W1\|
|
||||
" }}} WINDOW / OKNO
|
||||
|
||||
" {{{ HELP / POMOČ
|
||||
menutrans &Help &Pomoč
|
||||
menutrans &Overview<Tab><F1> Hitri\ pregled<Tab><F1>
|
||||
menutrans &User\ Manual P&riročnik
|
||||
menutrans &How-to\ links &How-to\ kazalo
|
||||
menutrans &Find\.\.\. Po&išči\ \.\.\. " conflicts with Edit.Find
|
||||
menutrans &Credits &Avtorji
|
||||
menutrans Co&pying &Licenca
|
||||
menutrans &Sponsor/Register Registracija\ in\ &donacije
|
||||
menutrans O&rphans &Sirotam
|
||||
menutrans &Version &Verzija
|
||||
menutrans &About &O\ programu
|
||||
" }}} HELP / POMOČ
|
||||
|
||||
" {{{ POPUP
|
||||
menutrans &Undo &Razveljavi
|
||||
menutrans Cu&t &Izreži
|
||||
menutrans &Copy &Kopieraj
|
||||
menutrans &Paste &Prilepi
|
||||
menutrans &Delete &Zbriši
|
||||
menutrans Select\ Blockwise Izbiraj\ po\ blokih
|
||||
menutrans Select\ &Word Izberi\ &besedo
|
||||
menutrans Select\ &Sentence Izberi\ &stavek
|
||||
menutrans Select\ Pa&ragraph Izberi\ &odstavek
|
||||
menutrans Select\ &Line Izberi\ vrs&tico
|
||||
menutrans Select\ &Block Izberi\ b&lok
|
||||
menutrans &Select\ All<Tab>ggVG Izberi\ &vse<Tab>ggVG
|
||||
" }}} POPUP
|
||||
|
||||
" {{{ TOOLBAR
|
||||
if has("toolbar")
|
||||
if exists("*Do_toolbar_tmenu")
|
||||
delfun Do_toolbar_tmenu
|
||||
endif
|
||||
fun Do_toolbar_tmenu()
|
||||
tmenu ToolBar.Open Odpri datoteko
|
||||
tmenu ToolBar.Save Shrani datoteko
|
||||
tmenu ToolBar.SaveAll Shrani vse datoteke
|
||||
tmenu ToolBar.Print Natisni
|
||||
tmenu ToolBar.Undo Razveljavi
|
||||
tmenu ToolBar.Redo Obnovi
|
||||
tmenu ToolBar.Cut Izreži
|
||||
tmenu ToolBar.Copy Kopiraj
|
||||
tmenu ToolBar.Paste Prilepi
|
||||
tmenu ToolBar.Find Najdi ...
|
||||
tmenu ToolBar.FindNext Najdi naslednje
|
||||
tmenu ToolBar.FindPrev Najdi prejšnje
|
||||
tmenu ToolBar.Replace Najdi in zamenjaj ...
|
||||
tmenu ToolBar.LoadSesn Naloži sejo
|
||||
tmenu ToolBar.SaveSesn Shrani trenutno sejo
|
||||
tmenu ToolBar.RunScript Izberi Vim skripto za izvajanje
|
||||
tmenu ToolBar.Make Napravi trenutni projekt (:make)
|
||||
tmenu ToolBar.RunCtags Napravi značke v trenutnem direktoriju (!ctags -R.)
|
||||
tmenu ToolBar.TagJump Skoči k znački pod kurzorjem
|
||||
tmenu ToolBar.Help Pomoč za Vim
|
||||
tmenu ToolBar.FindHelp Išči v pomoči za Vim
|
||||
endfun
|
||||
endif
|
||||
" }}} TOOLBAR
|
||||
|
||||
" {{{ DIALOG TEXTS
|
||||
let g:menutrans_no_file = "[Brez datoteke]"
|
||||
let g:menutrans_help_dialog = "Vnesite ukaz ali besedo, za katero želite pomoč:\n\nUporabite predpono i_ za ukaze v načinu za pisanje (npr.: i_CTRL-X)\nUporabite predpono c_ za ukaze v ukazni vrstici (command-line) (npr.: c_<Del>)\nUporabite predpono ' za imena opcij (npr.: 'shiftwidth')"
|
||||
let g:menutrans_path_dialog = "Vnesite poti za iskanje datotek.\nImena direktorijev ločite z vejico."
|
||||
let g:menutrans_tags_dialog = "Vnesite imena datotek z značkami ('tag').\nImana ločite z vejicami."
|
||||
let g:menutrans_textwidth_dialog = "Vnesite novo širino besedila (ali 0 za izklop formatiranja): "
|
||||
let g:menutrans_fileformat_dialog = "Izberite format datoteke"
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\n&Prekliči"
|
||||
" }}}
|
||||
@ -10,7 +10,10 @@ if exists("did_menu_trans")
|
||||
endif
|
||||
let did_menu_trans = 1
|
||||
|
||||
scriptencoding gb2312
|
||||
" This causes trouble for a broken iconv (symptom: last character is always
|
||||
" ??). Without this it works fine anyway, because gbk/cp936 is a superset of
|
||||
" gb2312. (suggested by Edward L. Fox)
|
||||
" scriptencoding gb2312
|
||||
|
||||
" Help menu
|
||||
menutrans &Help <09><><EFBFBD><EFBFBD>(&H)
|
||||
@ -109,7 +112,7 @@ menutrans &Keymap
|
||||
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ tag(&J)<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD> Tags <20>ļ<EFBFBD>(&T)
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD>\ Tags\ <20>ļ<EFBFBD>(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
@ -209,7 +212,7 @@ menutrans Min\ Widt&h<Tab>^W1\|
|
||||
menutrans &Undo <09><><EFBFBD><EFBFBD>(&U)
|
||||
menutrans Cu&t <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Copy <09><><EFBFBD><EFBFBD>(&C)
|
||||
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
|
||||
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
|
||||
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
|
||||
menutrans Select\ Blockwise ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
menutrans Select\ &Word ѡ<EFBFBD><EFBFBD>(&W)
|
||||
@ -233,7 +236,7 @@ if has("toolbar")
|
||||
tmenu ToolBar.Redo <09><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Cut <09><><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Find <09><><EFBFBD><EFBFBD>...
|
||||
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
" Vim script to work like "less"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2006 May 07
|
||||
" Last Change: 2006 Dec 05
|
||||
|
||||
" Avoid loading this file twice, allow the user to define his own script.
|
||||
if exists("loaded_less")
|
||||
@ -168,7 +168,7 @@ fun! s:Forward()
|
||||
else
|
||||
noremap <script> N Hg0Nzt<SID>L
|
||||
endif
|
||||
cnoremap <script> <CR> <CR>:cunmap <lt>CR><CR>zt<SID>L
|
||||
cnoremap <silent> <script> <CR> <CR>:cunmap <lt>CR><CR>zt<SID>L
|
||||
endfun
|
||||
|
||||
fun! s:Backward()
|
||||
@ -179,7 +179,7 @@ fun! s:Backward()
|
||||
noremap <script> n Hg0nzt<SID>L
|
||||
endif
|
||||
noremap <script> N H$Nzt<SID>L
|
||||
cnoremap <script> <CR> <CR>:cunmap <lt>CR><CR>zt<SID>L
|
||||
cnoremap <silent> <script> <CR> <CR>:cunmap <lt>CR><CR>zt<SID>L
|
||||
endfun
|
||||
|
||||
call s:Forward()
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" matchit.vim: (global plugin) Extended "%" matching
|
||||
" Last Change: Sun Feb 26 10:00 AM 2006 EST
|
||||
" Last Change: Mon May 15 10:00 PM 2006 EDT
|
||||
" Maintainer: Benji Fisher PhD <benji@member.AMS.org>
|
||||
" Version: 1.10, for Vim 6.3
|
||||
" Version: 1.11, for Vim 6.3+
|
||||
" URL: http://www.vim.org/script.php?script_id=39
|
||||
|
||||
" Documentation:
|
||||
@ -15,7 +15,7 @@
|
||||
" Support for many languages by Johannes Zellner
|
||||
" Suggestions for improvement, bug reports, and support for additional
|
||||
" languages by Jordi-Albert Batalla, Neil Bird, Servatius Brandt, Mark
|
||||
" Collett, Stephen Wall, Dany St-Amant, and Johannes Zellner.
|
||||
" Collett, Stephen Wall, Dany St-Amant, Yuheng Xie, and Johannes Zellner.
|
||||
|
||||
" Debugging:
|
||||
" If you'd like to try the built-in debugging commands...
|
||||
@ -172,9 +172,10 @@ function! s:Match_wrapper(word, forward, mode) range
|
||||
else " Find the match that ends on or after the cursor and set curcol.
|
||||
let regexp = s:Wholematch(matchline, s:all, startcol-1)
|
||||
let curcol = match(matchline, regexp)
|
||||
let suf = strlen(matchline) - matchend(matchline, regexp)
|
||||
let prefix = (curcol ? '^.\{' . curcol . '}\%(' : '^\%(')
|
||||
let suffix = (suf ? '\).\{' . suf . '}$' : '\)$')
|
||||
let endcol = matchend(matchline, regexp)
|
||||
let suf = strlen(matchline) - endcol
|
||||
let prefix = (curcol ? '^.*\%' . (curcol + 1) . 'c\%(' : '^\%(')
|
||||
let suffix = (suf ? '\)\%' . (endcol + 1) . 'c.*$' : '\)$')
|
||||
" If the match comes from the defaults, bail out.
|
||||
if matchline !~ prefix .
|
||||
\ substitute(s:pat, s:notslash.'\zs[,:]\+', '\\|', 'g') . suffix
|
||||
@ -262,10 +263,11 @@ function! s:Match_wrapper(word, forward, mode) range
|
||||
normal! H
|
||||
let restore_cursor = "normal!" . line(".") . "Gzt" . restore_cursor
|
||||
execute restore_cursor
|
||||
normal! 0
|
||||
if curcol
|
||||
execute "normal!" . curcol . "l"
|
||||
endif
|
||||
call cursor(0, curcol + 1)
|
||||
" normal! 0
|
||||
" if curcol
|
||||
" execute "normal!" . curcol . "l"
|
||||
" endif
|
||||
if skip =~ 'synID' && !(has("syntax") && exists("g:syntax_on"))
|
||||
let skip = "0"
|
||||
else
|
||||
@ -415,9 +417,9 @@ endfun
|
||||
" let match = matchstr(getline("."), regexp)
|
||||
fun! s:Wholematch(string, pat, start)
|
||||
let group = '\%(' . a:pat . '\)'
|
||||
let prefix = (a:start ? '\(^.\{,' . a:start . '}\)\zs' : '^')
|
||||
let prefix = (a:start ? '\(^.*\%<' . (a:start + 2) . 'c\)\zs' : '^')
|
||||
let len = strlen(a:string)
|
||||
let suffix = (a:start+1 < len ? '\(.\{,'.(len-a:start-1).'}$\)\@=' : '$')
|
||||
let suffix = (a:start+1 < len ? '\(\%>'.(a:start+1).'c.*$\)\@=' : '$')
|
||||
if a:string !~ prefix . group . suffix
|
||||
let prefix = ''
|
||||
endif
|
||||
|
||||
38
runtime/plugin/getscriptPlugin.vim
Normal file
38
runtime/plugin/getscriptPlugin.vim
Normal file
@ -0,0 +1,38 @@
|
||||
" ---------------------------------------------------------------------
|
||||
" getscriptPlugin.vim
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Jul 18, 2006
|
||||
" Installing: :help glvs-install
|
||||
" Usage: :help glvs
|
||||
"
|
||||
" GetLatestVimScripts: 642 1 :AutoInstall: GetLatestVimScripts.vim
|
||||
"
|
||||
" (Rom 15:11 WEB) Again, "Praise the Lord, all you Gentiles! Let
|
||||
" all the peoples praise Him."
|
||||
" ---------------------------------------------------------------------
|
||||
" Initialization: {{{1
|
||||
" if you're sourcing this file, surely you can't be
|
||||
" expecting vim to be in its vi-compatible mode
|
||||
if &cp || exists("g:loaded_getscriptPlugin")
|
||||
if &verbose
|
||||
echo "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
||||
endif
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscriptPlugin = 1
|
||||
let s:keepfo = &fo
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Public Interface: {{{1
|
||||
com! -nargs=0 GetLatestVimScripts call getscript#GetLatestVimScripts()
|
||||
com! -nargs=0 GetScripts call getscript#GetLatestVimScripts()
|
||||
silent! com -nargs=0 GLVS call getscript#GetLatestVimScripts()
|
||||
|
||||
" Restore Options: {{{1
|
||||
let &fo = s:keepfo
|
||||
let &cpo= s:keepcpo
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" vim: ts=8 sts=2 fdm=marker nowrap
|
||||
@ -1,4 +1,19 @@
|
||||
# Aap recipe for Portuguese Vim spell files.
|
||||
#
|
||||
# Based on a shell script by Leonardo Fontenelle.
|
||||
# His remarks:
|
||||
#
|
||||
# Makes a Vim pt dictionary from OpenOffice.org's pt_BR and pt_PT.
|
||||
#
|
||||
# AFAIK, will have to update the script every time a new dictionary is
|
||||
# released for pt_BR. I asked the maintainer to update OOo's FTP site,
|
||||
# but it didn't happen yet. As for the pt_PT dictionary, they won't be
|
||||
# in OOo's FTP site for some time, because the Portuguese OOo project
|
||||
# decided to adapt the pt_BR dictionary, which is much more extensive.
|
||||
# I picked the Natura project unofficial dictionary, because it has been
|
||||
# developed by a team with linguists, and for a longer time. At least the
|
||||
# pt_PT dictionary has a "latest" file to make our lives easier.
|
||||
|
||||
|
||||
# Use a freshly compiled Vim if it exists.
|
||||
@if os.path.exists('../../../src/vim'):
|
||||
@ -10,15 +25,31 @@ SPELLDIR = ..
|
||||
FILES = pt_PT.aff pt_PT.dic
|
||||
pt_BR.aff pt_BR.dic
|
||||
|
||||
#
|
||||
# Fetching the pt_PT files from the Natura project.
|
||||
#
|
||||
PT_DIR = http://natura.di.uminho.pt/download/sources/Dictionaries/myspell
|
||||
PT_FNAME = myspell.pt-latest.zip
|
||||
:attr {fetch = $PT_DIR/%file%} $PT_FNAME
|
||||
|
||||
#
|
||||
# Fetching the pt_BR files from BrOffice.org (Brazilian OOo) 2.1. Should be
|
||||
# updated really soon.
|
||||
#
|
||||
BR_DIR = http://www.deso-se.com.br/downloads/download.php?arquivo=pt_BR-2700g
|
||||
BR_FNAME = pt_BR-2700g.zip
|
||||
|
||||
:attr {fetch = $BR_DIR} $BR_FNAME
|
||||
|
||||
all: $SPELLDIR/pt.latin1.spl $SPELLDIR/pt.utf-8.spl \
|
||||
../README_pt.txt
|
||||
|
||||
$SPELLDIR/pt.latin1.spl : $FILES
|
||||
:sys env LANG=pt_PT.ISO8859-1
|
||||
:sys env LANG=pt_PT.ISO8859-1 LC_ALL=pt_PT.ISO8859-1
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/pt pt_PT pt_BR" -c q
|
||||
|
||||
$SPELLDIR/pt.utf-8.spl : $FILES
|
||||
:sys env LANG=pt_PT.UTF-8
|
||||
:sys env LANG=pt_PT.UTF-8 LC_ALL=pt_PT.UTF-8
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/pt pt_PT pt_BR" -c q
|
||||
|
||||
../README_pt.txt: README_pt_PT.txt README_pt_BR.txt
|
||||
@ -26,23 +57,21 @@ $SPELLDIR/pt.utf-8.spl : $FILES
|
||||
:cat README_pt_PT.txt | :eval re.sub('\r', '', stdin) >>$target
|
||||
:print =================================================== >>$target
|
||||
:print pt_BR: >>$target
|
||||
:cat README_pt_BR.txt | :eval re.sub('\r', '', stdin) >>$target
|
||||
|
||||
#
|
||||
# Fetching the files from OpenOffice.org.
|
||||
#
|
||||
OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
|
||||
:attr {fetch = $OODIR/%file%} pt_PT.zip pt_BR.zip
|
||||
:print Information is in Leia-me.pdf, see $BR_DIR >>$target
|
||||
:cat README_pt_BR.txt >>$target
|
||||
|
||||
# The files don't depend on the .zip file so that we can delete it.
|
||||
# Only download the zip file if the targets don't exist.
|
||||
pt_PT.aff pt_PT.dic: {buildcheck=}
|
||||
:assertpkg unzip patch
|
||||
:fetch pt_PT.zip
|
||||
:sys $UNZIP pt_PT.zip
|
||||
:delete pt_PT.zip
|
||||
:sys $VIM pt_PT.dic -e -c "set ff=unix" -c update -c q
|
||||
:sys $VIM README_pt_PT.txt -e -c "set ff=unix" -c update -c q
|
||||
:fetch $PT_FNAME
|
||||
:sys $UNZIP $PT_FNAME
|
||||
:delete $PT_FNAME
|
||||
:move myspell.pt-*/pt_PT.dic .
|
||||
:move myspell.pt-*/pt_PT.aff .
|
||||
:move myspell.pt-*/README_pt_PT.txt .
|
||||
:move myspell.pt-*/COPYING COPYING_pt_PT.txt
|
||||
:deldir myspell.pt-*
|
||||
@if not os.path.exists('pt_PT.orig.aff'):
|
||||
:copy pt_PT.aff pt_PT.orig.aff
|
||||
@if not os.path.exists('pt_PT.orig.dic'):
|
||||
@ -52,12 +81,22 @@ pt_PT.aff pt_PT.dic: {buildcheck=}
|
||||
|
||||
pt_BR.aff pt_BR.dic: {buildcheck=}
|
||||
:assertpkg unzip patch
|
||||
:fetch pt_BR.zip
|
||||
:sys $UNZIP pt_BR.zip
|
||||
:delete pt_BR.zip
|
||||
:sys $VIM pt_BR.aff -e -c "set ff=unix" -c update -c q
|
||||
:sys $VIM pt_BR.dic -e -c "set ff=unix" -c update -c q
|
||||
:sys $VIM README_pt_BR.txt -e -c "set ff=unix" -c update -c q
|
||||
:fetch $BR_FNAME
|
||||
:sys $UNZIP $BR_FNAME
|
||||
:delete $BR_FNAME
|
||||
:move Leia-me.pdf Leia-me_pt_BR.pdf
|
||||
|
||||
# 1. pt_BR.dic contains a cp1252-specific character.
|
||||
# Changing it to its latin1 equivalent.
|
||||
# 2. Vim seems to ignore the dots from the word list.
|
||||
# Removing words with dot to avoid misbehaviour.
|
||||
:sys $VIM pt_BR.dic -e -c "set ff=unix" -c "%s/\%x92/'/g" -c "/\./d" -c update -c q
|
||||
|
||||
# Removing /* ... */ header to avoid warnings. Write it to the README file, it
|
||||
# contains the copyright notice.
|
||||
:sys $VIM pt_BR.aff -e -c "set ff=unix" -c "/\/\*/,/\*\//w README_pt_BR.txt" -c "/\/\*/,/\*\//+1d" -c update -c q
|
||||
|
||||
#:sys $VIM README_pt_BR.txt -e -c "set ff=unix" -c update -c q
|
||||
@if not os.path.exists('pt_BR.orig.aff'):
|
||||
:copy pt_BR.aff pt_BR.orig.aff
|
||||
@if not os.path.exists('pt_BR.orig.dic'):
|
||||
@ -79,10 +118,11 @@ diff:
|
||||
|
||||
# Check for updated OpenOffice spell files. When there are changes the
|
||||
# ".new.aff" and ".new.dic" files are left behind for manual inspection.
|
||||
# TO BE IMPLEMENTED
|
||||
|
||||
check: check-us check-au
|
||||
check: check-pt check-br
|
||||
|
||||
check-us:
|
||||
check-pt:
|
||||
:assertpkg unzip diff
|
||||
:fetch pt_PT.zip
|
||||
:mkdir tmp
|
||||
@ -101,7 +141,7 @@ check-us:
|
||||
:delete {r}{f}{q} tmp
|
||||
:delete pt_PT.zip
|
||||
|
||||
check-au:
|
||||
check-br:
|
||||
:assertpkg unzip diff
|
||||
:fetch pt_BR.zip
|
||||
:mkdir tmp
|
||||
|
||||
@ -1,46 +1,12 @@
|
||||
*** pt_BR.orig.aff Wed Aug 31 20:05:18 2005
|
||||
--- pt_BR.aff Wed Aug 31 20:05:18 2005
|
||||
*** pt_BR.orig.aff Mon Apr 16 15:38:54 2007
|
||||
--- pt_BR.aff Mon Apr 16 15:49:01 2007
|
||||
***************
|
||||
*** 3,4 ****
|
||||
--- 3,22 ----
|
||||
--- 3,9 ----
|
||||
|
||||
+ FOL <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ LOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ UPP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+
|
||||
+ SOFOFROM abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ<59><5A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ SOFOTO ebctefghejklnnepkrstevvkesebctefghejklnnepkrstevvkeseeeeeeeceeeeeeeedneeeeeeeeeeepseeeeeeeeceeeeeeeedneeeeeeeeeeep?
|
||||
+
|
||||
+ MAP 9
|
||||
+ MAP a<><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP e<><65><EFBFBD><EFBFBD>
|
||||
+ MAP i<><69><EFBFBD><EFBFBD>
|
||||
+ MAP o<><6F><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP u<><75><EFBFBD><EFBFBD>
|
||||
+ MAP n<>
|
||||
+ MAP c<>
|
||||
+ MAP y<><79>
|
||||
+ MAP s<>
|
||||
+
|
||||
# Plural apenas
|
||||
***************
|
||||
*** 526,534 ****
|
||||
SFX I ar <20>s dar
|
||||
! SFX I iar eia [^]iar
|
||||
! SFX I iar eiam [^]iar
|
||||
! SFX I iar eias [^]iar
|
||||
! SFX I iar eie [^]iar
|
||||
! SFX I iar eiem [^]iar
|
||||
! SFX I iar eies [^]iar
|
||||
! SFX I iar eio [^]iar
|
||||
SFX I oiar <20>ia oiar
|
||||
--- 544,552 ----
|
||||
SFX I ar <20>s dar
|
||||
! SFX I iar eia [^o]iar
|
||||
! SFX I iar eiam [^o]iar
|
||||
! SFX I iar eias [^o]iar
|
||||
! SFX I iar eie [^o]iar
|
||||
! SFX I iar eiem [^o]iar
|
||||
! SFX I iar eies [^o]iar
|
||||
! SFX I iar eio [^o]iar
|
||||
SFX I oiar <20>ia oiar
|
||||
+ MIDWORD '
|
||||
|
||||
|
||||
@ -1,287 +1,367 @@
|
||||
" Vim syntax file
|
||||
" Language: Ada (95)
|
||||
" Maintainer: David A. Wheeler <dwheeler@dwheeler.com>
|
||||
" URL: http://www.dwheeler.com/vim
|
||||
" Last Change: 2001-11-02
|
||||
"----------------------------------------------------------------------------
|
||||
" Description: Vim Ada syntax file
|
||||
" Language: Ada (2005)
|
||||
" $Id$
|
||||
" Copyright: Copyright (C) 2006 Martin Krischik
|
||||
" Maintainer: Martin Krischik
|
||||
" David A. Wheeler <dwheeler@dwheeler.com>
|
||||
" Simon Bradley <simon.bradley@pitechnology.com>
|
||||
" Contributors: Preben Randhol.
|
||||
" $Author$
|
||||
" $Date$
|
||||
" Version: 4.2
|
||||
" $Revision$
|
||||
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/syntax/ada.vim $
|
||||
" http://www.dwheeler.com/vim
|
||||
" History: 24.05.2006 MK Unified Headers
|
||||
" 26.05.2006 MK ' should not be in iskeyword.
|
||||
" 16.07.2006 MK Ada-Mode as vim-ball
|
||||
" 02.10.2006 MK Better folding.
|
||||
" 15.10.2006 MK Bram's suggestion for runtime integration
|
||||
" 05.11.2006 MK Spell check for comments and strings only
|
||||
" 05.11.2006 MK Bram suggested to save on spaces
|
||||
" Help Page: help ft-ada-syntax
|
||||
"------------------------------------------------------------------------------
|
||||
" The formal spec of Ada 2005 (ARM) is the "Ada 2005 Reference Manual".
|
||||
" For more Ada 2005 info, see http://www.gnuada.org and http://www.adapower.com.
|
||||
"
|
||||
" This vim syntax file works on vim 7.0 only and makes use of most of Voim 7.0
|
||||
" advanced features.
|
||||
"------------------------------------------------------------------------------
|
||||
|
||||
" Former Maintainer: Simon Bradley <simon.bradley@pitechnology.com>
|
||||
" (was <sib93@aber.ac.uk>)
|
||||
" Other contributors: Preben Randhol.
|
||||
" The formal spec of Ada95 (ARM) is the "Ada95 Reference Manual".
|
||||
" For more Ada95 info, see http://www.gnuada.org and http://www.adapower.com.
|
||||
|
||||
" This vim syntax file works on vim 5.6, 5.7, 5.8 and 6.x.
|
||||
" It implements Bram Moolenaar's April 25, 2001 recommendations to make
|
||||
" the syntax file maximally portable across different versions of vim.
|
||||
" If vim 6.0+ is available,
|
||||
" this syntax file takes advantage of the vim 6.0 advanced pattern-matching
|
||||
" functions to avoid highlighting uninteresting leading spaces in
|
||||
" some expressions containing "with" and "use".
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
if exists("b:current_syntax") || version < 700
|
||||
finish
|
||||
endif
|
||||
|
||||
" Ada is entirely case-insensitive.
|
||||
syn case ignore
|
||||
let b:current_syntax = "ada"
|
||||
|
||||
" We don't need to look backwards to highlight correctly;
|
||||
" this speeds things up greatly.
|
||||
syn sync minlines=1 maxlines=1
|
||||
" Section: Ada is entirely case-insensitive. {{{1
|
||||
"
|
||||
syntax case ignore
|
||||
setlocal nosmartcase
|
||||
setlocal ignorecase
|
||||
|
||||
" Highlighting commands. There are 69 reserved words in total in Ada95.
|
||||
" Some keywords are used in more than one way. For example:
|
||||
" Section: Highlighting commands {{{1
|
||||
"
|
||||
" There are 72 reserved words in total in Ada2005. Some keywords are
|
||||
" used in more than one way. For example:
|
||||
" 1. "end" is a general keyword, but "end if" ends a Conditional.
|
||||
" 2. "then" is a conditional, but "and then" is an operator.
|
||||
"
|
||||
for b:Item in g:ada#Keywords
|
||||
" Standard Exceptions (including I/O).
|
||||
" We'll highlight the standard exceptions, similar to vim's Python mode.
|
||||
" It's possible to redefine the standard exceptions as something else,
|
||||
" but doing so is very bad practice, so simply highlighting them makes sense.
|
||||
if b:Item['kind'] == "x"
|
||||
execute "syntax keyword adaException " . b:Item['word']
|
||||
endif
|
||||
if b:Item['kind'] == "a"
|
||||
execute 'syntax match adaAttribute "\V' . b:Item['word'] . '"'
|
||||
endif
|
||||
" We don't normally highlight types in package Standard
|
||||
" (Integer, Character, Float, etc.). I don't think it looks good
|
||||
" with the other type keywords, and many Ada programs define
|
||||
" so many of their own types that it looks inconsistent.
|
||||
" However, if you want this highlighting, turn on "ada_standard_types".
|
||||
" For package Standard's definition, see ARM section A.1.
|
||||
if b:Item['kind'] == "t" && exists ("g:ada_standard_types")
|
||||
execute "syntax keyword adaBuiltinType " . b:Item['word']
|
||||
endif
|
||||
endfor
|
||||
|
||||
" Section: others {{{1
|
||||
"
|
||||
syntax keyword adaLabel others
|
||||
|
||||
" Standard Exceptions (including I/O).
|
||||
" We'll highlight the standard exceptions, similar to vim's Python mode.
|
||||
" It's possible to redefine the standard exceptions as something else,
|
||||
" but doing so is very bad practice, so simply highlighting them makes sense.
|
||||
syn keyword adaException Constraint_Error Program_Error Storage_Error
|
||||
syn keyword adaException Tasking_Error
|
||||
syn keyword adaException Status_Error Mode_Error Name_Error Use_Error
|
||||
syn keyword adaException Device_Error End_Error Data_Error Layout_Error
|
||||
syn keyword adaException Length_Error Pattern_Error Index_Error
|
||||
syn keyword adaException Translation_Error
|
||||
syn keyword adaException Time_Error Argument_Error
|
||||
syn keyword adaException Tag_Error
|
||||
syn keyword adaException Picture_Error
|
||||
" Interfaces
|
||||
syn keyword adaException Terminator_Error Conversion_Error
|
||||
syn keyword adaException Pointer_Error Dereference_Error Update_Error
|
||||
" This isn't in the Ada spec, but a GNAT extension.
|
||||
syn keyword adaException Assert_Failure
|
||||
" We don't list ALL exceptions defined in particular compilers (e.g., GNAT),
|
||||
" because it's quite reasonable to define those phrases as non-exceptions.
|
||||
" Section: Operatoren {{{1
|
||||
"
|
||||
syntax keyword adaOperator abs mod not rem xor
|
||||
syntax match adaOperator "\<and\>"
|
||||
syntax match adaOperator "\<and\s\+then\>"
|
||||
syntax match adaOperator "\<or\>"
|
||||
syntax match adaOperator "\<or\s\+else\>"
|
||||
syntax match adaOperator "[-+*/<>&]"
|
||||
syntax keyword adaOperator **
|
||||
syntax match adaOperator "[/<>]="
|
||||
syntax keyword adaOperator =>
|
||||
syntax match adaOperator "\.\."
|
||||
syntax match adaOperator "="
|
||||
|
||||
" Section: <> {{{1
|
||||
"
|
||||
" Handle the box, <>, specially:
|
||||
"
|
||||
syntax keyword adaSpecial <>
|
||||
|
||||
" We don't normally highlight types in package Standard
|
||||
" (Integer, Character, Float, etc.). I don't think it looks good
|
||||
" with the other type keywords, and many Ada programs define
|
||||
" so many of their own types that it looks inconsistent.
|
||||
" However, if you want this highlighting, turn on "ada_standard_types".
|
||||
" For package Standard's definition, see ARM section A.1.
|
||||
|
||||
if exists("ada_standard_types")
|
||||
syn keyword adaBuiltinType Boolean Integer Natural Positive Float
|
||||
syn keyword adaBuiltinType Character Wide_Character
|
||||
syn keyword adaBuiltinType String Wide_String
|
||||
syn keyword adaBuiltinType Duration
|
||||
" These aren't listed in ARM section A.1's code, but they're noted as
|
||||
" options in ARM sections 3.5.4 and 3.5.7:
|
||||
syn keyword adaBuiltinType Short_Integer Short_Short_Integer
|
||||
syn keyword adaBuiltinType Long_Integer Long_Long_Integer
|
||||
syn keyword adaBuiltinType Short_Float Short_Short_Float
|
||||
syn keyword adaBuiltinType Long_Float Long_Long_Float
|
||||
" Section: rainbow color {{{1
|
||||
"
|
||||
if exists("g:ada_rainbow_color")
|
||||
syntax match adaSpecial "[:;.,]"
|
||||
runtime plugin/Rainbow_Parenthsis.vim
|
||||
else
|
||||
syntax match adaSpecial "[:;().,]"
|
||||
endif
|
||||
|
||||
" There are MANY other predefined types; they've not been added, because
|
||||
" determining when they're a type requires context in general.
|
||||
" One potential addition would be Unbounded_String.
|
||||
|
||||
|
||||
syn keyword adaLabel others
|
||||
|
||||
syn keyword adaOperator abs mod not rem xor
|
||||
syn match adaOperator "\<and\>"
|
||||
syn match adaOperator "\<and\s\+then\>"
|
||||
syn match adaOperator "\<or\>"
|
||||
syn match adaOperator "\<or\s\+else\>"
|
||||
syn match adaOperator "[-+*/<>&]"
|
||||
syn keyword adaOperator **
|
||||
syn match adaOperator "[/<>]="
|
||||
syn keyword adaOperator =>
|
||||
syn match adaOperator "\.\."
|
||||
syn match adaOperator "="
|
||||
|
||||
" Section: := {{{1
|
||||
"
|
||||
" We won't map "adaAssignment" by default, but we need to map ":=" to
|
||||
" something or the "=" inside it will be mislabelled as an operator.
|
||||
" Note that in Ada, assignment (:=) is not considered an operator.
|
||||
syn match adaAssignment ":="
|
||||
"
|
||||
syntax match adaAssignment ":="
|
||||
|
||||
" Handle the box, <>, specially:
|
||||
syn keyword adaSpecial <>
|
||||
" Section: Numbers, including floating point, exponents, and alternate bases. {{{1
|
||||
"
|
||||
syntax match adaNumber "\<\d[0-9_]*\(\.\d[0-9_]*\)\=\([Ee][+-]\=\d[0-9_]*\)\=\>"
|
||||
syntax match adaNumber "\<\d\d\=#\x[0-9A-Fa-f_]*\(\.\x[0-9A-Fa-f_]*\)\=#\([Ee][+-]\=\d[0-9_]*\)\="
|
||||
|
||||
" Numbers, including floating point, exponents, and alternate bases.
|
||||
syn match adaNumber "\<\d[0-9_]*\(\.\d[0-9_]*\)\=\([Ee][+-]\=\d[0-9_]*\)\=\>"
|
||||
syn match adaNumber "\<\d\d\=#\x[0-9A-Fa-f_]*\(\.\x[0-9A-Fa-f_]*\)\=#\([Ee][+-]\=\d[0-9_]*\)\="
|
||||
" Section: Identify leading numeric signs {{{1
|
||||
"
|
||||
" In "A-5" the "-" is an operator, " but in "A:=-5" the "-" is a sign. This
|
||||
" handles "A3+-5" (etc.) correctly. " This assumes that if you put a
|
||||
" don't put a space after +/- when it's used " as an operator, you won't
|
||||
" put a space before it either -- which is true " in code I've seen.
|
||||
"
|
||||
syntax match adaSign "[[:space:]<>=(,|:;&*/+-][+-]\d"lc=1,hs=s+1,he=e-1,me=e-1
|
||||
|
||||
" Identify leading numeric signs. In "A-5" the "-" is an operator,
|
||||
" but in "A:=-5" the "-" is a sign. This handles "A3+-5" (etc.) correctly.
|
||||
" This assumes that if you put a don't put a space after +/- when it's used
|
||||
" as an operator, you won't put a space before it either -- which is true
|
||||
" in code I've seen.
|
||||
syn match adaSign "[[:space:]<>=(,|:;&*/+-][+-]\d"lc=1,hs=s+1,he=e-1,me=e-1
|
||||
|
||||
" Labels for the goto statement.
|
||||
syn region adaLabel start="<<" end=">>"
|
||||
" Section: Labels for the goto statement. {{{1
|
||||
"
|
||||
syntax region adaLabel start="<<" end=">>"
|
||||
|
||||
" Section: Boolean Constants {{{1
|
||||
" Boolean Constants.
|
||||
syn keyword adaBoolean true false
|
||||
syntax keyword adaBoolean true false
|
||||
|
||||
" Section: Warn C/C++ {{{1
|
||||
"
|
||||
" Warn people who try to use C/C++ notation erroneously:
|
||||
syn match adaError "//"
|
||||
syn match adaError "/\*"
|
||||
syn match adaError "=="
|
||||
"
|
||||
syntax match adaError "//"
|
||||
syntax match adaError "/\*"
|
||||
syntax match adaError "=="
|
||||
|
||||
|
||||
if exists("ada_space_errors")
|
||||
if !exists("ada_no_trail_space_error")
|
||||
syn match adaSpaceError excludenl "\s\+$"
|
||||
endif
|
||||
if !exists("ada_no_tab_space_error")
|
||||
syn match adaSpaceError " \+\t"me=e-1
|
||||
endif
|
||||
" Section: Space Errors {{{1
|
||||
"
|
||||
if exists("g:ada_space_errors")
|
||||
if !exists("g:ada_no_trail_space_error")
|
||||
syntax match adaSpaceError excludenl "\s\+$"
|
||||
endif
|
||||
if !exists("g:ada_no_tab_space_error")
|
||||
syntax match adaSpaceError " \+\t"me=e-1
|
||||
endif
|
||||
if !exists("g:ada_all_tab_usage")
|
||||
syntax match adaSpecial "\t"
|
||||
endif
|
||||
endif
|
||||
|
||||
" Section: end {{{1
|
||||
" Unless special ("end loop", "end if", etc.), "end" marks the end of a
|
||||
" begin, package, task etc. Assiging it to adaEnd.
|
||||
syn match adaEnd "\<end\>"
|
||||
syntax match adaEnd "\<end\>"
|
||||
|
||||
syn keyword adaPreproc pragma
|
||||
syntax keyword adaPreproc pragma
|
||||
|
||||
syn keyword adaRepeat exit for loop reverse while
|
||||
syn match adaRepeat "\<end\s\+loop\>"
|
||||
syntax keyword adaRepeat exit for loop reverse while
|
||||
syntax match adaRepeat "\<end\s\+loop\>"
|
||||
|
||||
syn keyword adaStatement accept delay goto raise requeue return
|
||||
syn keyword adaStatement terminate
|
||||
syn match adaStatement "\<abort\>"
|
||||
syntax keyword adaStatement accept delay goto raise requeue return
|
||||
syntax keyword adaStatement terminate
|
||||
syntax match adaStatement "\<abort\>"
|
||||
|
||||
" Handle Ada's record keywords.
|
||||
" Section: Handle Ada's record keywords. {{{1
|
||||
"
|
||||
" 'record' usually starts a structure, but "with null record;" does not,
|
||||
" and 'end record;' ends a structure. The ordering here is critical -
|
||||
" 'record;' matches a "with null record", so make it a keyword (this can
|
||||
" match when the 'with' or 'null' is on a previous line).
|
||||
" We see the "end" in "end record" before the word record, so we match that
|
||||
" pattern as adaStructure (and it won't match the "record;" pattern).
|
||||
syn match adaStructure "\<record\>"
|
||||
syn match adaStructure "\<end\s\+record\>"
|
||||
syn match adaKeyword "\<record;"me=e-1
|
||||
"
|
||||
syntax match adaStructure "\<record\>" contains=adaRecord
|
||||
syntax match adaStructure "\<end\s\+record\>" contains=adaRecord
|
||||
syntax match adaKeyword "\<record;"me=e-1
|
||||
|
||||
syn keyword adaStorageClass abstract access aliased array at constant delta
|
||||
syn keyword adaStorageClass digits limited of private range tagged
|
||||
syn keyword adaTypedef subtype type
|
||||
" Section: type classes {{{1
|
||||
"
|
||||
syntax keyword adaStorageClass abstract access aliased array at constant delta
|
||||
syntax keyword adaStorageClass digits limited of private range tagged
|
||||
syntax keyword adaStorageClass interface synchronized
|
||||
syntax keyword adaTypedef subtype type
|
||||
|
||||
" Conditionals. "abort" after "then" is a conditional of its own.
|
||||
syn match adaConditional "\<then\>"
|
||||
syn match adaConditional "\<then\s\+abort\>"
|
||||
syn match adaConditional "\<else\>"
|
||||
syn match adaConditional "\<end\s\+if\>"
|
||||
syn match adaConditional "\<end\s\+case\>"
|
||||
syn match adaConditional "\<end\s\+select\>"
|
||||
syn keyword adaConditional if case select
|
||||
syn keyword adaConditional elsif when
|
||||
" Section: Conditionals {{{1
|
||||
"
|
||||
" "abort" after "then" is a conditional of its own.
|
||||
"
|
||||
syntax match adaConditional "\<then\>"
|
||||
syntax match adaConditional "\<then\s\+abort\>"
|
||||
syntax match adaConditional "\<else\>"
|
||||
syntax match adaConditional "\<end\s\+if\>"
|
||||
syntax match adaConditional "\<end\s\+case\>"
|
||||
syntax match adaConditional "\<end\s\+select\>"
|
||||
syntax keyword adaConditional if case select
|
||||
syntax keyword adaConditional elsif when
|
||||
|
||||
syn keyword adaKeyword all do exception in is new null out
|
||||
syn keyword adaKeyword separate until
|
||||
" Section: other keywords {{{1
|
||||
syntax match adaKeyword "\<is\>" contains=adaRecord
|
||||
syntax keyword adaKeyword all do exception in new null out
|
||||
syntax keyword adaKeyword separate until overriding
|
||||
|
||||
" Section: begin keywords {{{1
|
||||
"
|
||||
" These keywords begin various constructs, and you _might_ want to
|
||||
" highlight them differently.
|
||||
syn keyword adaBegin begin body declare entry function generic
|
||||
syn keyword adaBegin package procedure protected renames task
|
||||
"
|
||||
syntax keyword adaBegin begin body declare entry generic
|
||||
syntax keyword adaBegin protected renames task
|
||||
|
||||
syntax match adaBegin "\<function\>" contains=adaFunction
|
||||
syntax match adaBegin "\<procedure\>" contains=adaProcedure
|
||||
syntax match adaBegin "\<package\>" contains=adaPackage
|
||||
|
||||
if exists("ada_with_gnat_project_files")
|
||||
syntax keyword adaBegin project
|
||||
endif
|
||||
|
||||
" Section: with, use {{{1
|
||||
"
|
||||
if exists("ada_withuse_ordinary")
|
||||
" Don't be fancy. Display "with" and "use" as ordinary keywords in all cases.
|
||||
syn keyword adaKeyword with use
|
||||
" Don't be fancy. Display "with" and "use" as ordinary keywords in all cases.
|
||||
syntax keyword adaKeyword with use
|
||||
else
|
||||
" Highlight "with" and "use" clauses like C's "#include" when they're used
|
||||
" to reference other compilation units; otherwise they're ordinary keywords.
|
||||
" If we have vim 6.0 or later, we'll use its advanced pattern-matching
|
||||
" capabilities so that we won't match leading spaces.
|
||||
syn match adaKeyword "\<with\>"
|
||||
syn match adaKeyword "\<use\>"
|
||||
if version < 600
|
||||
syn match adaBeginWith "^\s*\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
|
||||
syn match adaSemiWith ";\s*\(\(with\(\s\+type\)\=\)\|\(use\)\)\>"lc=1 contains=adaInc
|
||||
else
|
||||
syn match adaBeginWith "^\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
|
||||
syn match adaSemiWith ";\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
|
||||
endif
|
||||
syn match adaInc "\<with\>" contained contains=NONE
|
||||
syn match adaInc "\<with\s\+type\>" contained contains=NONE
|
||||
syn match adaInc "\<use\>" contained contains=NONE
|
||||
" Recognize "with null record" as a keyword (even the "record").
|
||||
syn match adaKeyword "\<with\s\+null\s\+record\>"
|
||||
" Consider generic formal parameters of subprograms and packages as keywords.
|
||||
if version < 600
|
||||
syn match adaKeyword ";\s*with\s\+\(function\|procedure\|package\)\>"
|
||||
syn match adaKeyword "^\s*with\s\+\(function\|procedure\|package\)\>"
|
||||
else
|
||||
syn match adaKeyword ";\s*\zswith\s\+\(function\|procedure\|package\)\>"
|
||||
syn match adaKeyword "^\s*\zswith\s\+\(function\|procedure\|package\)\>"
|
||||
endif
|
||||
" Highlight "with" and "use" clauses like C's "#include" when they're used
|
||||
" to reference other compilation units; otherwise they're ordinary keywords.
|
||||
" If we have vim 6.0 or later, we'll use its advanced pattern-matching
|
||||
" capabilities so that we won't match leading spaces.
|
||||
syntax match adaKeyword "\<with\>"
|
||||
syntax match adaKeyword "\<use\>"
|
||||
syntax match adaBeginWith "^\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
|
||||
syntax match adaSemiWith ";\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
|
||||
syntax match adaInc "\<with\>" contained contains=NONE
|
||||
syntax match adaInc "\<with\s\+type\>" contained contains=NONE
|
||||
syntax match adaInc "\<use\>" contained contains=NONE
|
||||
" Recognize "with null record" as a keyword (even the "record").
|
||||
syntax match adaKeyword "\<with\s\+null\s\+record\>"
|
||||
" Consider generic formal parameters of subprograms and packages as keywords.
|
||||
syntax match adaKeyword ";\s*\zswith\s\+\(function\|procedure\|package\)\>"
|
||||
syntax match adaKeyword "^\s*\zswith\s\+\(function\|procedure\|package\)\>"
|
||||
endif
|
||||
|
||||
" Section: String and character constants. {{{1
|
||||
"
|
||||
syntax region adaString contains=@Spell start=+"+ skip=+""+ end=+"+
|
||||
syntax match adaCharacter "'.'"
|
||||
|
||||
" String and character constants.
|
||||
syn region adaString start=+"+ skip=+""+ end=+"+
|
||||
syn match adaCharacter "'.'"
|
||||
" Section: Todo (only highlighted in comments) {{{1
|
||||
"
|
||||
syntax keyword adaTodo contained TODO FIXME XXX NOTE
|
||||
|
||||
" Todo (only highlighted in comments)
|
||||
syn keyword adaTodo contained TODO FIXME XXX
|
||||
" Section: Comments. {{{1
|
||||
"
|
||||
syntax region adaComment
|
||||
\ oneline
|
||||
\ contains=adaTodo,adaLineError,@Spell
|
||||
\ start="--"
|
||||
\ end="$"
|
||||
|
||||
" Comments.
|
||||
syn region adaComment oneline contains=adaTodo start="--" end="$"
|
||||
" Section: line errors {{{1
|
||||
"
|
||||
" Note: Line errors have become quite slow with Vim 7.0
|
||||
"
|
||||
if exists("g:ada_line_errors")
|
||||
syntax match adaLineError "\(^.\{79}\)\@<=." contains=ALL containedin=ALL
|
||||
endif
|
||||
|
||||
" Section: syntax folding {{{1
|
||||
"
|
||||
" Syntax folding is very tricky - for now I still suggest to use
|
||||
" indent folding
|
||||
"
|
||||
if exists("g:ada_folding") && g:ada_folding[0] == 's'
|
||||
if stridx (g:ada_folding, 'p') >= 0
|
||||
syntax region adaPackage
|
||||
\ start="\(\<package\s\+body\>\|\<package\>\)\s*\z(\k*\)"
|
||||
\ end="end\s\+\z1\s*;"
|
||||
\ keepend extend transparent fold contains=ALL
|
||||
endif
|
||||
if stridx (g:ada_folding, 'f') >= 0
|
||||
syntax region adaProcedure
|
||||
\ start="\<procedure\>\s*\z(\k*\)"
|
||||
\ end="\<end\>\s\+\z1\s*;"
|
||||
\ keepend extend transparent fold contains=ALL
|
||||
syntax region adaFunction
|
||||
\ start="\<procedure\>\s*\z(\k*\)"
|
||||
\ end="end\s\+\z1\s*;"
|
||||
\ keepend extend transparent fold contains=ALL
|
||||
endif
|
||||
if stridx (g:ada_folding, 'f') >= 0
|
||||
syntax region adaRecord
|
||||
\ start="\<is\s\+record\>"
|
||||
\ end="\<end\s\+record\>"
|
||||
\ keepend extend transparent fold contains=ALL
|
||||
endif
|
||||
endif
|
||||
|
||||
" Section: The default methods for highlighting. Can be overridden later. {{{1
|
||||
"
|
||||
highlight def link adaCharacter Character
|
||||
highlight def link adaComment Comment
|
||||
highlight def link adaConditional Conditional
|
||||
highlight def link adaKeyword Keyword
|
||||
highlight def link adaLabel Label
|
||||
highlight def link adaNumber Number
|
||||
highlight def link adaSign Number
|
||||
highlight def link adaOperator Operator
|
||||
highlight def link adaPreproc PreProc
|
||||
highlight def link adaRepeat Repeat
|
||||
highlight def link adaSpecial Special
|
||||
highlight def link adaStatement Statement
|
||||
highlight def link adaString String
|
||||
highlight def link adaStructure Structure
|
||||
highlight def link adaTodo Todo
|
||||
highlight def link adaType Type
|
||||
highlight def link adaTypedef Typedef
|
||||
highlight def link adaStorageClass StorageClass
|
||||
highlight def link adaBoolean Boolean
|
||||
highlight def link adaException Exception
|
||||
highlight def link adaAttribute Tag
|
||||
highlight def link adaInc Include
|
||||
highlight def link adaError Error
|
||||
highlight def link adaSpaceError Error
|
||||
highlight def link adaLineError Error
|
||||
highlight def link adaBuiltinType Type
|
||||
highlight def link adaAssignment Special
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_ada_syn_inits")
|
||||
if version < 508
|
||||
let did_ada_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" The default methods for highlighting. Can be overridden later.
|
||||
HiLink adaCharacter Character
|
||||
HiLink adaComment Comment
|
||||
HiLink adaConditional Conditional
|
||||
HiLink adaKeyword Keyword
|
||||
HiLink adaLabel Label
|
||||
HiLink adaNumber Number
|
||||
HiLink adaSign Number
|
||||
HiLink adaOperator Operator
|
||||
HiLink adaPreproc PreProc
|
||||
HiLink adaRepeat Repeat
|
||||
HiLink adaSpecial Special
|
||||
HiLink adaStatement Statement
|
||||
HiLink adaString String
|
||||
HiLink adaStructure Structure
|
||||
HiLink adaTodo Todo
|
||||
HiLink adaType Type
|
||||
HiLink adaTypedef Typedef
|
||||
HiLink adaStorageClass StorageClass
|
||||
HiLink adaBoolean Boolean
|
||||
HiLink adaException Exception
|
||||
HiLink adaInc Include
|
||||
HiLink adaError Error
|
||||
HiLink adaSpaceError Error
|
||||
HiLink adaBuiltinType Type
|
||||
|
||||
if exists("ada_begin_preproc")
|
||||
" Subsection: Begin, End {{{2
|
||||
"
|
||||
if exists ("ada_begin_preproc")
|
||||
" This is the old default display:
|
||||
HiLink adaBegin PreProc
|
||||
HiLink adaEnd PreProc
|
||||
else
|
||||
highlight def link adaBegin PreProc
|
||||
highlight def link adaEnd PreProc
|
||||
else
|
||||
" This is the new default display:
|
||||
HiLink adaBegin Keyword
|
||||
HiLink adaEnd Keyword
|
||||
endif
|
||||
|
||||
delcommand HiLink
|
||||
highlight def link adaBegin Keyword
|
||||
highlight def link adaEnd Keyword
|
||||
endif
|
||||
|
||||
let b:current_syntax = "ada"
|
||||
|
||||
" vim: ts=8
|
||||
" Section: formatoptions {{{1
|
||||
"
|
||||
setlocal formatoptions+=ron
|
||||
|
||||
" Section: sync {{{1
|
||||
"
|
||||
" We don't need to look backwards to highlight correctly;
|
||||
" this speeds things up greatly.
|
||||
syntax sync minlines=1 maxlines=1
|
||||
|
||||
finish " 1}}}
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
" Copyright (C) 2006 Martin Krischik
|
||||
"
|
||||
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
|
||||
"------------------------------------------------------------------------------
|
||||
"vim: textwidth=78 nowrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
|
||||
"vim: foldmethod=marker
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
" Vim syntax file
|
||||
" Language: BibTeX Bibliography Style
|
||||
" Maintainer: Tim Pope <vim@rebelongto.us>
|
||||
" Last Change: 2006 Apr 27
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" Filenames: *.bst
|
||||
" $Id$
|
||||
|
||||
@ -23,7 +22,11 @@ delcommand SetIsk
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn region bstString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=bstField,bstType
|
||||
syn match bstString +"[^"]*\%("\|$\)+ contains=bstField,bstType,bstError
|
||||
" Highlight the last character of an unclosed string, but only when the cursor
|
||||
" is not beyond it (i.e., it is still being edited). Imperfect.
|
||||
syn match bstError '[^"]\%#\@!$' contained
|
||||
|
||||
syn match bstNumber "#-\=\d\+\>"
|
||||
syn keyword bstNumber entry.max$ global.max$
|
||||
syn match bstComment "%.*"
|
||||
@ -77,6 +80,7 @@ if version >= 508 || !exists("did_bst_syn_inits")
|
||||
HiLink bstNumber Number
|
||||
HiLink bstType Type
|
||||
HiLink bstIdentifier Identifier
|
||||
HiLink bstError Error
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
|
||||
@ -1,9 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: COBOL
|
||||
" Maintainers: Davyd Ondrejko <vondraco@columbus.rr.com>
|
||||
" Language: COBOL
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" (formerly Davyd Ondrejko <vondraco@columbus.rr.com>)
|
||||
" (formerly Sitaram Chamarty <sitaram@diac.com> and
|
||||
" James Mitchell <james_mitchell@acm.org>)
|
||||
" Last change: 2001 Sep 02
|
||||
" $Id$
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@ -22,77 +23,97 @@ endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn match cobolKeys "^\a\{1,6\}" contains=cobolReserved
|
||||
syn cluster cobolStart contains=cobolAreaA,cobolAreaB,cobolComment,cobolCompiler
|
||||
syn cluster cobolAreaA contains=cobolParagraph,cobolSection,cobolDivision
|
||||
"syn cluster cobolAreaB contains=
|
||||
syn cluster cobolAreaAB contains=cobolLine
|
||||
syn cluster cobolLine contains=cobolReserved
|
||||
syn match cobolMarker "^\%( \{,5\}[^ ]\)\@=.\{,6}" nextgroup=@cobolStart
|
||||
syn match cobolSpace "^ \{6\}" nextgroup=@cobolStart
|
||||
syn match cobolAreaA " \{1,4\}" contained nextgroup=@cobolAreaA,@cobolAreaAB
|
||||
syn match cobolAreaB " \{5,\}\|- *" contained nextgroup=@cobolAreaB,@cobolAreaAB
|
||||
syn match cobolComment "[/*C].*$" contained
|
||||
syn match cobolCompiler "$.*$" contained
|
||||
syn match cobolLine ".*$" contained contains=cobolReserved,@cobolLine
|
||||
|
||||
syn match cobolDivision "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+DIVISION\."he=e-1 contained contains=cobolDivisionName
|
||||
syn keyword cobolDivisionName contained IDENTIFICATION ENVIRONMENT DATA PROCEDURE
|
||||
syn match cobolSection "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+SECTION\."he=e-1 contained contains=cobolSectionName
|
||||
syn keyword cobolSectionName contained CONFIGURATION INPUT-OUTPUT FILE WORKING-STORAGE LOCAL-STORAGE LINKAGE
|
||||
syn match cobolParagraph "\a[A-Z0-9-]*[A-Z0-9]\.\|\d[A-Z0-9-]*[A-Z]\."he=e-1 contained contains=cobolParagraphName
|
||||
syn keyword cobolParagraphName contained PROGRAM-ID SOURCE-COMPUTER OBJECT-COMPUTER SPECIAL-NAMES FILE-CONTROL I-O-CONTROL
|
||||
|
||||
|
||||
"syn match cobolKeys "^\a\{1,6\}" contains=cobolReserved
|
||||
syn keyword cobolReserved contained ACCEPT ACCESS ADD ADDRESS ADVANCING AFTER ALPHABET ALPHABETIC
|
||||
syn keyword cobolReserved contained ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED ALS
|
||||
syn keyword cobolReserved contained ALTERNATE AND ANY ARE AREA AREAS ASCENDING ASSIGN AT AUTHOR BEFORE BINARY
|
||||
syn keyword cobolReserved contained BLANK BLOCK BOTTOM BY CANCEL CBLL CD CF CH CHARACTER CHARACTERS CLASS
|
||||
syn keyword cobolReserved contained CLOCK-UNITS CLOSE COBOL CODE CODE-SET COLLATING COLUMN COMMA COMMON
|
||||
syn keyword cobolReserved contained COMMUNICATIONS COMPUTATIONAL COMPUTE CONFIGURATION CONTENT CONTINUE
|
||||
syn keyword cobolReserved contained CONTROL CONVERTING CORR CORRESPONDING COUNT CURRENCY DATA DATE DATE-COMPILED
|
||||
syn keyword cobolReserved contained COMMUNICATIONS COMPUTATIONAL COMPUTE CONTENT CONTINUE
|
||||
syn keyword cobolReserved contained CONTROL CONVERTING CORR CORRESPONDING COUNT CURRENCY DATE DATE-COMPILED
|
||||
syn keyword cobolReserved contained DATE-WRITTEN DAY DAY-OF-WEEK DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE
|
||||
syn keyword cobolReserved contained DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING DECIMAL-POINT
|
||||
syn keyword cobolReserved contained DELARATIVES DELETE DELIMITED DELIMITER DEPENDING DESCENDING DESTINATION
|
||||
syn keyword cobolReserved contained DETAIL DISABLE DISPLAY DIVIDE DIVISION DOWN DUPLICATES DYNAMIC EGI ELSE EMI
|
||||
syn keyword cobolReserved contained ENABLE END-ADD END-COMPUTE END-DELETE END-DIVIDE END-EVALUATE END-IF
|
||||
syn keyword cobolReserved contained END-MULTIPLY END-OF-PAGE END-PERFORM END-READ END-RECEIVE END-RETURN
|
||||
syn keyword cobolReserved contained END-MULTIPLY END-OF-PAGE END-READ END-RECEIVE END-RETURN
|
||||
syn keyword cobolReserved contained END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT END-UNSTRING
|
||||
syn keyword cobolReserved contained END-WRITE ENVIRONMENT EQUAL ERROR ESI EVALUATE EVERY EXCEPTION EXIT
|
||||
syn keyword cobolReserved contained EXTEND EXTERNAL FALSE FD FILE FILE-CONTROL FILLER FINAL FIRST FOOTING FOR FROM
|
||||
syn keyword cobolReserved contained END-WRITE EQUAL ERROR ESI EVALUATE EVERY EXCEPTION EXIT
|
||||
syn keyword cobolReserved contained EXTEND EXTERNAL FALSE FD FILLER FINAL FIRST FOOTING FOR FROM
|
||||
syn keyword cobolReserved contained GENERATE GIVING GLOBAL GREATER GROUP HEADING HIGH-VALUE HIGH-VALUES I-O
|
||||
syn keyword cobolReserved contained I-O-CONTROL IDENTIFICATION IN INDEX INDEXED INDICATE INITIAL INITIALIZE
|
||||
syn keyword cobolReserved contained INITIATE INPUT INPUT-OUTPUT INSPECT INSTALLATION INTO IS JUST
|
||||
syn keyword cobolReserved contained IN INDEX INDEXED INDICATE INITIAL INITIALIZE
|
||||
syn keyword cobolReserved contained INITIATE INPUT INSPECT INSTALLATION INTO IS JUST
|
||||
syn keyword cobolReserved contained JUSTIFIED KEY LABEL LAST LEADING LEFT LENGTH LOCK MEMORY
|
||||
syn keyword cobolReserved contained MERGE MESSAGE MODE MODULES MOVE MULTIPLE MULTIPLY NATIVE NEGATIVE NEXT NO NOT
|
||||
syn keyword cobolReserved contained NUMBER NUMERIC NUMERIC-EDITED OBJECT-COMPUTER OCCURS OF OFF OMITTED ON OPEN
|
||||
syn keyword cobolReserved contained NUMBER NUMERIC NUMERIC-EDITED OCCURS OF OFF OMITTED ON OPEN
|
||||
syn keyword cobolReserved contained OPTIONAL OR ORDER ORGANIZATION OTHER OUTPUT OVERFLOW PACKED-DECIMAL PADDING
|
||||
syn keyword cobolReserved contained PAGE PAGE-COUNTER PERFORM PF PH PIC PICTURE PLUS POINTER POSITION POSITIVE
|
||||
syn keyword cobolReserved contained PRINTING PROCEDURE PROCEDURES PROCEDD PROGRAM PROGRAM-ID PURGE QUEUE QUOTES
|
||||
syn keyword cobolReserved contained PRINTING PROCEDURES PROCEDD PROGRAM PURGE QUEUE QUOTES
|
||||
syn keyword cobolReserved contained RANDOM RD READ RECEIVE RECORD RECORDS REDEFINES REEL REFERENCE REFERENCES
|
||||
syn keyword cobolReserved contained RELATIVE RELEASE REMAINDER REMOVAL REPLACE REPLACING REPORT REPORTING
|
||||
syn keyword cobolReserved contained REPORTS RERUN RESERVE RESET RETURN RETURNING REVERSED REWIND REWRITE RF RH
|
||||
syn keyword cobolReserved contained RIGHT ROUNDED RUN SAME SD SEARCH SECTION SECURITY SEGMENT SEGMENT-LIMITED
|
||||
syn keyword cobolReserved contained SELECT SEND SENTENCE SEPARATE SEQUENCE SEQUENTIAL SET SIGN SIZE SORT
|
||||
syn keyword cobolReserved contained SORT-MERGE SOURCE SOURCE-COMPUTER SPECIAL-NAMES STANDARD
|
||||
syn keyword cobolReserved contained SORT-MERGE SOURCE STANDARD
|
||||
syn keyword cobolReserved contained STANDARD-1 STANDARD-2 START STATUS STOP STRING SUB-QUEUE-1 SUB-QUEUE-2
|
||||
syn keyword cobolReserved contained SUB-QUEUE-3 SUBTRACT SUM SUPPRESS SYMBOLIC SYNC SYNCHRONIZED TABLE TALLYING
|
||||
syn keyword cobolReserved contained TAPE TERMINAL TERMINATE TEST TEXT THAN THEN THROUGH THRU TIME TIMES TO TOP
|
||||
syn keyword cobolReserved contained TRAILING TRUE TYPE UNIT UNSTRING UNTIL UP UPON USAGE USE USING VALUE VALUES
|
||||
syn keyword cobolReserved contained VARYING WHEN WITH WORDS WORKING-STORAGE WRITE
|
||||
syn keyword cobolReserved contained VARYING WHEN WITH WORDS WRITE
|
||||
syn match cobolReserved contained "\<CONTAINS\>"
|
||||
syn match cobolReserved contained "\<\(IF\|INVALID\|END\|EOP\)\>"
|
||||
syn match cobolReserved contained "\<ALL\>"
|
||||
|
||||
syn cluster cobolLine add=cobolConstant,cobolNumber,cobolPic
|
||||
syn keyword cobolConstant SPACE SPACES NULL ZERO ZEROES ZEROS LOW-VALUE LOW-VALUES
|
||||
|
||||
syn match cobolMarker "^.\{6\}"
|
||||
syn match cobolBadLine "^.\{6\}[^ D\-*$/].*"hs=s+6
|
||||
|
||||
" If comment mark somehow gets into column past Column 7.
|
||||
syn match cobolBadLine "^.\{6\}\s\+\*.*"
|
||||
|
||||
syn match cobolNumber "\<-\=\d*\.\=\d\+\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolPic "\<S*9\+\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolPic "\<$*\.\=9\+\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolPic "\<Z*\.\=9\+\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolPic "\<V9\+\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolPic "\<9\+V\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolPic "\<-\+[Z9]\+\>" contains=cobolMarker,cobolComment
|
||||
syn match cobolTodo "todo" contained
|
||||
syn match cobolComment "^.\{6\}\*.*"hs=s+6 contains=cobolTodo,cobolMarker
|
||||
syn match cobolComment "^.\{6\}/.*"hs=s+6 contains=cobolTodo,cobolMarker
|
||||
syn match cobolComment "^.\{6\}C.*"hs=s+6 contains=cobolTodo,cobolMarker
|
||||
syn match cobolCompiler "^.\{6\}$.*"hs=s+6
|
||||
syn match cobolNumber "\<-\=\d*\.\=\d\+\>" contained
|
||||
syn match cobolPic "\<S*9\+\>" contained
|
||||
syn match cobolPic "\<$*\.\=9\+\>" contained
|
||||
syn match cobolPic "\<Z*\.\=9\+\>" contained
|
||||
syn match cobolPic "\<V9\+\>" contained
|
||||
syn match cobolPic "\<9\+V\>" contained
|
||||
syn match cobolPic "\<-\+[Z9]\+\>" contained
|
||||
syn match cobolTodo "todo" contained containedin=cobolComment
|
||||
|
||||
" For MicroFocus or other inline comments, include this line.
|
||||
" syn region cobolComment start="*>" end="$" contains=cobolTodo,cobolMarker
|
||||
|
||||
syn match cobolBadLine "[^ D\*$/-].*" contained
|
||||
" If comment mark somehow gets into column past Column 7.
|
||||
syn match cobolBadLine "\s\+\*.*" contained
|
||||
syn cluster cobolStart add=cobolBadLine
|
||||
|
||||
|
||||
syn keyword cobolGoTo GO GOTO
|
||||
syn keyword cobolCopy COPY
|
||||
|
||||
" cobolBAD: things that are BAD NEWS!
|
||||
syn keyword cobolBAD ALTER ENTER RENAMES
|
||||
|
||||
syn cluster cobolLine add=cobolGoTo,cobolCopy,cobolBAD,cobolWatch,cobolEXECs
|
||||
|
||||
" cobolWatch: things that are important when trying to understand a program
|
||||
syn keyword cobolWatch OCCURS DEPENDING VARYING BINARY COMP REDEFINES
|
||||
syn keyword cobolWatch REPLACING RUN
|
||||
@ -101,39 +122,38 @@ syn match cobolWatch "COMP-[123456XN]"
|
||||
syn keyword cobolEXECs EXEC END-EXEC
|
||||
|
||||
|
||||
syn match cobolDecl "^.\{6} \{1,4}\(0\=1\|77\|78\) "hs=s+7,he=e-1 contains=cobolMarker
|
||||
syn match cobolDecl "^.\{6} \+[1-4]\d "hs=s+7,he=e-1 contains=cobolMarker
|
||||
syn match cobolDecl "^.\{6} \+0\=[2-9] "hs=s+7,he=e-1 contains=cobolMarker
|
||||
syn match cobolDecl "^.\{6} \+66 "hs=s+7,he=e-1 contains=cobolMarker
|
||||
syn cluster cobolAreaA add=cobolDeclA
|
||||
syn cluster cobolAreaAB add=cobolDecl
|
||||
syn match cobolDeclA "\(0\=1\|77\|78\) " contained nextgroup=cobolLine
|
||||
syn match cobolDecl "[1-4]\d " contained nextgroup=cobolLine
|
||||
syn match cobolDecl "0\=[2-9] " contained nextgroup=cobolLine
|
||||
syn match cobolDecl "66 " contained nextgroup=cobolLine
|
||||
|
||||
syn match cobolWatch "^.\{6} \+88 "hs=s+7,he=e-1 contains=cobolMarker
|
||||
syn match cobolWatch "88 " contained nextgroup=cobolLine
|
||||
|
||||
syn match cobolBadID "\k\+-\($\|[^-A-Z0-9]\)"
|
||||
"syn match cobolBadID "\k\+-\($\|[^-A-Z0-9]\)" contained
|
||||
|
||||
syn keyword cobolCALLs CALL CANCEL GOBACK PERFORM INVOKE
|
||||
syn cluster cobolLine add=cobolCALLs,cobolString,cobolCondFlow
|
||||
syn keyword cobolCALLs CALL END-CALL CANCEL GOBACK PERFORM END-PERFORM INVOKE
|
||||
syn match cobolCALLs "EXIT \+PROGRAM"
|
||||
syn match cobolExtras /\<VALUE \+\d\+\./hs=s+6,he=e-1
|
||||
|
||||
syn match cobolString /"[^"]*\("\|$\)/
|
||||
syn match cobolString /'[^']*\('\|$\)/
|
||||
|
||||
syn region cobolLine start="^.\{6} " end="$" contains=ALL
|
||||
"syn region cobolLine start="^.\{6}[ D-]" end="$" contains=ALL
|
||||
syn match cobolIndicator "\%7c[D-]" contained
|
||||
|
||||
if exists("cobol_legacy_code")
|
||||
syn region cobolCondFlow contains=ALLBUT,cobolLine start="\<\(IF\|INVALID\|END\|EOP\)\>" skip=/\('\|"\)[^"]\{-}\("\|'\|$\)/ end="\." keepend
|
||||
endif
|
||||
|
||||
if ! exists("cobol_legacy_code")
|
||||
" catch junk in columns 1-6 for modern code
|
||||
syn match cobolBAD "^ \{0,5\}[^ ].*"
|
||||
syn region cobolCondFlow contains=ALLBUT,cobolLine start="\<\(IF\|INVALID\|END\|EOP\)\>" skip=/\('\|"\)[^"]\{-}\("\|'\|$\)/ end="\." keepend
|
||||
endif
|
||||
|
||||
" many legacy sources have junk in columns 1-6: must be before others
|
||||
" Stuff after column 72 is in error - must be after all other "match" entries
|
||||
if exists("cobol_legacy_code")
|
||||
syn match cobolBadLine "^.\{6}[^*/].\{66,\}"
|
||||
syn match cobolBadLine "\%73c.*" containedin=ALLBUT,cobolComment
|
||||
else
|
||||
syn match cobolBadLine "^.\{6}.\{67,\}"
|
||||
syn match cobolBadLine "\%73c.*" containedin=ALL
|
||||
endif
|
||||
|
||||
" Define the default highlighting.
|
||||
@ -150,7 +170,11 @@ if version >= 508 || !exists("did_cobol_syntax_inits")
|
||||
HiLink cobolBAD Error
|
||||
HiLink cobolBadID Error
|
||||
HiLink cobolBadLine Error
|
||||
HiLink cobolMarker Comment
|
||||
if exists("g:cobol_legacy_code")
|
||||
HiLink cobolMarker Comment
|
||||
else
|
||||
HiLink cobolMarker Error
|
||||
endif
|
||||
HiLink cobolCALLs Function
|
||||
HiLink cobolComment Comment
|
||||
HiLink cobolKeys Comment
|
||||
@ -158,6 +182,7 @@ if version >= 508 || !exists("did_cobol_syntax_inits")
|
||||
HiLink cobolCompiler PreProc
|
||||
HiLink cobolCondFlow Special
|
||||
HiLink cobolCopy PreProc
|
||||
HiLink cobolDeclA cobolDecl
|
||||
HiLink cobolDecl Type
|
||||
HiLink cobolExtras Special
|
||||
HiLink cobolGoTo Special
|
||||
@ -165,9 +190,16 @@ if version >= 508 || !exists("did_cobol_syntax_inits")
|
||||
HiLink cobolNumber Constant
|
||||
HiLink cobolPic Constant
|
||||
HiLink cobolReserved Statement
|
||||
HiLink cobolDivision Label
|
||||
HiLink cobolSection Label
|
||||
HiLink cobolParagraph Label
|
||||
HiLink cobolDivisionName Keyword
|
||||
HiLink cobolSectionName Keyword
|
||||
HiLink cobolParagraphName Keyword
|
||||
HiLink cobolString Constant
|
||||
HiLink cobolTodo Todo
|
||||
HiLink cobolWatch Special
|
||||
HiLink cobolIndicator Special
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
@ -1,8 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: Configuration File (ini file) for MSDOS/MS Windows
|
||||
" Maintainer: Sean M. McKee <mckee@misslink.net>
|
||||
" Last Change: 2001 May 09
|
||||
" Version Info: @(#)dosini.vim 1.6 97/12/15 08:54:12
|
||||
" Version Info: @(#)dosini.vim 1.6 97/12/15 08:54:12
|
||||
" Author: Sean M. McKee <mckee@misslink.net>
|
||||
" Maintainer: Nima Talebi <nima@it.net.au>
|
||||
" Last Change: Mon, 26 Jun 2006 22:07:28 +1000
|
||||
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@ -16,7 +18,7 @@ endif
|
||||
syn case ignore
|
||||
|
||||
syn match dosiniLabel "^.\{-}="
|
||||
syn region dosiniHeader start="\[" end="\]"
|
||||
syn region dosiniHeader start="^\[" end="\]"
|
||||
syn match dosiniComment "^;.*$"
|
||||
|
||||
" Define the default highlighting.
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
" DoxyGen syntax hilighting extension for c/c++/idl/java
|
||||
" Language: doxygen on top of c, cpp, idl, java
|
||||
" Maintainer: Michael Geddes <michaelrgeddes@optushome.com.au>
|
||||
" Maintainer: Michael Geddes <vimmer@frog.wheelycreek.net>
|
||||
" Author: Michael Geddes
|
||||
" Last Change: 12 December 2005
|
||||
" Version: 1.15
|
||||
" Last Change: April 2007
|
||||
" Version: 1.20
|
||||
"
|
||||
" Copyright 2004 Michael Geddes
|
||||
" Copyright 2004-2006 Michael Geddes
|
||||
" Please feel free to use, modify & distribute all or part of this script,
|
||||
" providing this copyright message remains.
|
||||
" I would appreciate being acknowledged in any derived scripts, and would
|
||||
@ -13,26 +13,27 @@
|
||||
|
||||
" NOTE: Comments welcome!
|
||||
"
|
||||
" There are two variables that control the syntax hilighting produced by this
|
||||
" There are two variables that control the syntax highlighting produced by this
|
||||
" script:
|
||||
" doxygen_enhanced_colour - Use the (non-standard) original colours designed for this hilighting.
|
||||
" doxygen_enhanced_colour - Use the (non-standard) original colours designed
|
||||
" for this highlighting.
|
||||
" doxygen_my_rendering - Disable the HTML bold/italic/underline rendering.
|
||||
"
|
||||
" A brief description without '.' or '!' will cause the end comment
|
||||
" character to be marked as an error. You can define the colour of this using
|
||||
" the highlight doxygenErrorComment.
|
||||
" A \link without an \endlink will cause an error hilight on the end-comment.
|
||||
" A \link without an \endlink will cause an error highlight on the end-comment.
|
||||
" This is defined by doxygenLinkError
|
||||
"
|
||||
" The variable g:doxygen_codeword_font can be set to the guifont for marking \c
|
||||
" words - a 'typewriter' like font normally. Spaces must be escaped. It can
|
||||
" also be set to any hilight attribute. Alternatively, a hilight for doxygenCodeWord
|
||||
" also be set to any highlight attribute. Alternatively, a highlight for doxygenCodeWord
|
||||
" can be used to override it.
|
||||
"
|
||||
" By default, hilighting is done assumng you have the JAVADOC_AUTOBRIEF
|
||||
" setting tunred on in your Doxygen configuration. If you don't, you
|
||||
" By default, highlighting is done assumng you have the JAVADOC_AUTOBRIEF
|
||||
" setting turned on in your Doxygen configuration. If you don't, you
|
||||
" can set the variable g:doxygen_javadoc_autobrief to 0 to have the
|
||||
" hilighting more accurately reflect the way Doxygen will interpret your
|
||||
" highlighting more accurately reflect the way Doxygen will interpret your
|
||||
" comments.
|
||||
"
|
||||
" Special thanks to: Wu Yongwei, Toby Allsopp
|
||||
@ -55,13 +56,13 @@ try
|
||||
"
|
||||
|
||||
" C/C++ Style line comments
|
||||
syn region doxygenComment start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contains=doxygenSyncStart,doxygenStart,doxygenTODO keepend
|
||||
syn region doxygenCommentL start=+//[/!]<\@!+me=e-1 end=+$+ contains=doxygenStartL keepend skipwhite skipnl nextgroup=doxygenComment2
|
||||
syn region doxygenCommentL start=+//[/!]<+me=e-2 end=+$+ contains=doxygenStartL keepend skipwhite skipnl
|
||||
syn region doxygenCommentL start=+//@\ze[{}]+ end=+$+ contains=doxygenGroupDefine,doxygenGroupDefineSpecial
|
||||
syn region doxygenComment start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contains=doxygenSyncStart,doxygenStart,doxygenTODO keepend fold
|
||||
syn region doxygenCommentL start=+//[/!]<\@!+me=e-1 end=+$+ contains=doxygenStartL keepend skipwhite skipnl nextgroup=doxygenComment2 fold
|
||||
syn region doxygenCommentL start=+//[/!]<+me=e-2 end=+$+ contains=doxygenStartL keepend skipwhite skipnl fold
|
||||
syn region doxygenCommentL start=+//@\ze[{}]+ end=+$+ contains=doxygenGroupDefine,doxygenGroupDefineSpecial fold
|
||||
|
||||
" Single line brief followed by multiline comment.
|
||||
syn region doxygenComment2 start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contained contains=doxygenSyncStart2,doxygenStart2,doxygenTODO keepend
|
||||
syn region doxygenComment2 start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contained contains=doxygenSyncStart2,doxygenStart2,doxygenTODO keepend fold
|
||||
" This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.
|
||||
syn match doxygenSyncStart2 +[^*/]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenStartSpecial,doxygenSkipComment,doxygenStartSkip2 skipwhite skipnl
|
||||
|
||||
@ -70,46 +71,56 @@ try
|
||||
syn match doxygenStartSkip2 +^\s*\*$+ contained nextgroup=doxygenBody,doxygenStartSpecial,,doxygenStartSkip skipwhite skipnl
|
||||
syn match doxygenStart2 +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenStartSpecial,doxygenStartSkip2 skipwhite skipnl
|
||||
|
||||
|
||||
" Match the Starting pattern (effectively creating the start of a BNF)
|
||||
if !exists('g:doxygen_javadoc_autobrief') || g:doxygen_javadoc_autobrief
|
||||
syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
|
||||
syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenBriefL,doxygenSpecial skipwhite
|
||||
" Match the first sentence as a brief comment
|
||||
if ! exists('g:doxygen_end_punctuation')
|
||||
let g:doxygen_end_punctuation='[.]'
|
||||
endif
|
||||
|
||||
exe 'syn region doxygenBrief contained start=+[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]+ start=+\(^\s*\)\@<!\*/\@!+ start=+\<\k+ skip=+'.doxygen_end_punctuation.'\S\@=+ end=+'.doxygen_end_punctuation.'+ end=+\(\s*\(\n\s*\*\=\s*\)[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\@=+ contains=doxygenSmallSpecial,doxygenContinueComment,doxygenBriefEndComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell skipnl nextgroup=doxygenBody'
|
||||
|
||||
syn match doxygenBriefEndComment +\*/+ contained
|
||||
|
||||
exe 'syn region doxygenBriefL start=+@\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@]+ start=+\<+ skip=+'.doxygen_end_punctuation.'\S+ end=+'.doxygen_end_punctuation.'\|$+ contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell keepend'
|
||||
syn match doxygenPrevL +<+ contained nextgroup=doxygenBriefL,doxygenSpecial skipwhite
|
||||
else
|
||||
syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
|
||||
syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenLine,doxygenSpecial skipwhite
|
||||
syn region doxygenLine start=+@\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@<]+ start=+\<+ end='$' contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell keepend
|
||||
syn match doxygenPrevL +<+ contained nextgroup=doxygenLine,doxygenSpecial skipwhite
|
||||
|
||||
endif
|
||||
syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenBriefL,doxygenSpecial skipwhite
|
||||
|
||||
" This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.
|
||||
syn match doxygenSyncStart +\ze[^*/]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
|
||||
|
||||
" Match the first sentence as a brief comment
|
||||
if ! exists('g:doxygen_end_punctuation')
|
||||
let g:doxygen_end_punctuation='[.]'
|
||||
endif
|
||||
exe 'syn region doxygenBrief contained start=+[\\@]\([pcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]+ start=+\(^\s*\)\@<!\*/\@!+ start=+\<\k+ skip=+'.doxygen_end_punctuation.'\S+ end=+'.doxygen_end_punctuation.'+ end=+\(\s*\(\n\s*\*\=\s*\)[@\\]\([pcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\@=+ contains=doxygenSmallSpecial,doxygenContinueComment,doxygenBriefEndComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenOtherLink,doxygenHyperLink,doxygenHashLink skipnl nextgroup=doxygenBody'
|
||||
|
||||
syn match doxygenBriefEndComment +\*/+ contained
|
||||
|
||||
exe 'syn region doxygenBriefL start=+@\k\@!\|[\\@]\([pcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@]+ start=+\<+ skip=+'.doxygen_end_punctuation.'\S+ end=+'.doxygen_end_punctuation.'\|$+ contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup keepend'
|
||||
|
||||
syn region doxygenBriefLine contained start=+\<\k+ end=+\(\n\s*\*\=\s*\([@\\]\([pcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ contains=doxygenContinueComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenOtherLink,doxygenHyperLink,doxygenHashLink skipwhite keepend
|
||||
syn region doxygenBriefLine contained start=+\<\k+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ contains=doxygenContinueComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink skipwhite keepend
|
||||
|
||||
" Match a '<' for applying a comment to the previous element.
|
||||
syn match doxygenPrev +<+ contained nextgroup=doxygenBrief,doxygenSpecial,doxygenStartSkip skipwhite
|
||||
syn match doxygenPrevL +<+ contained nextgroup=doxygenBriefL,doxygenSpecial skipwhite
|
||||
syn match doxygenPrev +<+ contained nextgroup=doxygenBrief,doxygenBody,doxygenSpecial,doxygenStartSkip skipwhite
|
||||
|
||||
" These are anti-doxygen comments. If there are more than two asterisks or 3 '/'s
|
||||
if exists("c_comment_strings")
|
||||
" These are anti-Doxygen comments. If there are more than two asterisks or 3 '/'s
|
||||
" then turn the comments back into normal C comments.
|
||||
syn region cComment start="/\*\*\*" end="\*/" contains=@cCommentGroup,cCommentString,cCharacter,cNumbersCom,cSpaceError
|
||||
syn region cCommentL start="////" skip="\\$" end="$" contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError
|
||||
else
|
||||
syn region cComment start="/\*\*\*" end="\*/" contains=@cCommentGroup,cSpaceError
|
||||
syn region cCommentL start="////" skip="\\$" end="$" contains=@cCommentGroup,cSpaceError
|
||||
endif
|
||||
|
||||
" Special commands at the start of the area: starting with '@' or '\'
|
||||
syn region doxygenStartSpecial contained start=+[@\\]\([pcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!+ end=+$+ end=+\*/+me=s-1,he=s-1 contains=doxygenSpecial nextgroup=doxygenSkipComment skipnl keepend
|
||||
syn region doxygenStartSpecial contained start=+[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!+ end=+$+ end=+\*/+me=s-1,he=s-1 contains=doxygenSpecial nextgroup=doxygenSkipComment skipnl keepend
|
||||
syn match doxygenSkipComment contained +^\s*\*/\@!+ nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenPage skipwhite
|
||||
|
||||
"syn region doxygenBodyBit contained start=+$+
|
||||
|
||||
" The main body of a doxygen comment.
|
||||
syn region doxygenBody contained start=+.\|$+ matchgroup=doxygenEndComment end=+\*/+re=e-2,me=e-2 contains=doxygenContinueComment,doxygenTODO,doxygenSpecial,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup
|
||||
syn region doxygenBody contained start=+\(/\*[*!]\)\@<!<\|[^<]\|$+ matchgroup=doxygenEndComment end=+\*/+re=e-2,me=e-2 contains=doxygenContinueComment,doxygenTODO,doxygenSpecial,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell
|
||||
|
||||
" These allow the skipping of comment continuation '*' characters.
|
||||
syn match doxygenContinueComment contained +^\s*\*/\@!\s*+
|
||||
@ -133,7 +144,7 @@ try
|
||||
"
|
||||
" syn match doxygenBriefLine contained
|
||||
syn match doxygenBriefSpecial contained +[@\\]+ nextgroup=doxygenBriefWord skipwhite
|
||||
syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ end=+\(\n\s*\*\=\s*\([@\\]\([pcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained
|
||||
syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained
|
||||
|
||||
|
||||
" Create the single word matching special identifiers.
|
||||
@ -142,7 +153,7 @@ try
|
||||
|
||||
let mx='[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\\[\\<>&.]@\|[.,][0-9a-zA-Z_]\@=\|::\|([^)]*)\|&[0-9a-zA-Z]\{2,7};\)\+'
|
||||
exe 'syn region doxygenSpecial'.a:name.'Word contained start=+'.a:kword.'+ end=+\(\_s\+'.mx.'\)\@<=[-a-zA-Z_0-9+*/^%|~!=&\\]\@!+ skipwhite contains=doxygenContinueComment,doxygen'.a:name.'Word'
|
||||
exe 'syn match doxygen'.a:name.'Word contained "\_s\@<='.mx.'" contains=doxygenHtmlSpecial keepend'
|
||||
exe 'syn match doxygen'.a:name.'Word contained "\_s\@<='.mx.'" contains=doxygenHtmlSpecial,@Spell keepend'
|
||||
endfun
|
||||
call s:DxyCreateSmallSpecial('p', 'Code')
|
||||
call s:DxyCreateSmallSpecial('c', 'Code')
|
||||
@ -153,10 +164,10 @@ try
|
||||
call s:DxyCreateSmallSpecial('ref', 'Ref')
|
||||
delfun s:DxyCreateSmallSpecial
|
||||
|
||||
syn match doxygenSmallSpecial contained +[@\\]\(\<[pcbea]\>\|\<em\>\|\<ref\>\|\<link\>\|f\$\|[$\\&<>#]\)\@=+ nextgroup=doxygenOtherLink,doxygenHyperLink,doxygenHashLink,doxygenFormula,doxygenSymbol,doxygenSpecial.*Word
|
||||
syn match doxygenSmallSpecial contained +[@\\]\(\<[npcbea]\>\|\<em\>\|\<ref\>\|\<link\>\|f\$\|[$\\&<>#]\)\@=+ nextgroup=doxygenOtherLink,doxygenHyperLink,doxygenHashLink,doxygenFormula,doxygenSymbol,doxygenSpecial.*Word
|
||||
|
||||
" Now for special characters
|
||||
syn match doxygenSpecial contained +[@\\]\(\<[pcbea]\>\|\<em\>\|\<ref\|\<link\>\>\|\<f\$\|[$\\&<>#]\)\@!+ nextgroup=doxygenParam,doxygenRetval,doxygenBriefWord,doxygenBold,doxygenBOther,doxygenOther,doxygenOtherTODO,doxygenOtherWARN,doxygenOtherBUG,doxygenPage,doxygenGroupDefine,doxygenCodeRegion,doxygenVerbatimRegion,doxygenDotRegion
|
||||
syn match doxygenSpecial contained +[@\\]\(\<[npcbea]\>\|\<em\>\|\<ref\|\<link\>\>\|\<f\$\|[$\\&<>#]\)\@!+ nextgroup=doxygenParam,doxygenRetval,doxygenBriefWord,doxygenBold,doxygenBOther,doxygenOther,doxygenOtherTODO,doxygenOtherWARN,doxygenOtherBUG,doxygenPage,doxygenGroupDefine,doxygenCodeRegion,doxygenVerbatimRegion,doxygenDotRegion
|
||||
" doxygenOtherLink,doxygenSymbol,doxygenFormula,doxygenErrorSpecial,doxygenSpecial.*Word
|
||||
"
|
||||
syn match doxygenGroupDefine contained +@\@<=[{}]+
|
||||
@ -164,8 +175,8 @@ try
|
||||
|
||||
syn match doxygenErrorSpecial contained +\s+
|
||||
|
||||
" Match Parmaters and retvals (hilighting the first word as special).
|
||||
syn match doxygenParamDirection contained +\[\(\<in\>\|\<out\>\|,\)\+\]+ nextgroup=doxygenParamName skipwhite
|
||||
" Match parameters and retvals (highlighting the first word as special).
|
||||
syn match doxygenParamDirection contained "\v\[(\s*in>((]\s*\[|\s*,\s*)out>)=|out>((]\s*\[|\s*,\s*)in>)=)\]" nextgroup=doxygenParamName skipwhite
|
||||
syn keyword doxygenParam contained param nextgroup=doxygenParamName,doxygenParamDirection skipwhite
|
||||
syn match doxygenParamName contained +[A-Za-z0-9_:]\++ nextgroup=doxygenSpecialMultilineDesc skipwhite
|
||||
syn keyword doxygenRetval contained retval throw exception nextgroup=doxygenParamName skipwhite
|
||||
@ -179,10 +190,10 @@ try
|
||||
\ xmlonly endxmlonly
|
||||
\ nextgroup=doxygenSpecialOnelineDesc
|
||||
|
||||
syn region doxygenCodeRegion contained matchgroup=doxygenOther start=+\<code\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endcode\>+ contains=doxygenCodeRegionSpecial,doxygenContinueComment,doxygenErrorComment
|
||||
syn region doxygenCodeRegion contained matchgroup=doxygenOther start=+\<code\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endcode\>+ contains=doxygenCodeRegionSpecial,doxygenContinueComment,doxygenErrorComment,@NoSpell
|
||||
syn match doxygenCodeRegionSpecial contained +[\\@]\(endcode\>\)\@=+
|
||||
|
||||
syn region doxygenVerbatimRegion contained matchgroup=doxygenOther start=+\<verbatim\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endverbatim\>+ contains=doxygenVerbatimRegionSpecial,doxygenContinueComment,doxygenErrorComment
|
||||
syn region doxygenVerbatimRegion contained matchgroup=doxygenOther start=+\<verbatim\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endverbatim\>+ contains=doxygenVerbatimRegionSpecial,doxygenContinueComment,doxygenErrorComment,@NoSpell
|
||||
syn match doxygenVerbatimRegionSpecial contained +[\\@]\(endverbatim\>\)\@=+
|
||||
|
||||
if exists('b:current_syntax')
|
||||
@ -199,7 +210,7 @@ try
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
syn region doxygenDotRegion contained matchgroup=doxygenOther start=+\<dot\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<enddot\>+ contains=doxygenDotRegionSpecial,doxygenErrorComment,doxygenContinueComment,@Dotx
|
||||
syn region doxygenDotRegion contained matchgroup=doxygenOther start=+\<dot\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<enddot\>+ contains=doxygenDotRegionSpecial,doxygenErrorComment,doxygenContinueComment,@NoSpell,@Dotx
|
||||
syn match doxygenDotRegionSpecial contained +[\\@]\(enddot\>\)\@=+
|
||||
|
||||
" Match single line identifiers.
|
||||
@ -210,13 +221,13 @@ try
|
||||
syn keyword doxygenOther contained par nextgroup=doxygenHeaderLine
|
||||
syn region doxygenHeaderLine start=+.+ end=+^+ contained skipwhite nextgroup=doxygenSpecialMultilineDesc
|
||||
|
||||
syn keyword doxygenOther contained arg author date deprecated li return see invariant note post pre remarks since test nextgroup=doxygenSpecialMultilineDesc
|
||||
syn keyword doxygenOther contained arg author date deprecated li return returns see invariant note post pre remarks since test nextgroup=doxygenSpecialMultilineDesc
|
||||
syn keyword doxygenOtherTODO contained todo attention nextgroup=doxygenSpecialMultilineDesc
|
||||
syn keyword doxygenOtherWARN contained warning nextgroup=doxygenSpecialMultilineDesc
|
||||
syn keyword doxygenOtherBUG contained bug nextgroup=doxygenSpecialMultilineDesc
|
||||
|
||||
" Handle \link, \endlink, hilighting the link-to and the link text bits separately.
|
||||
syn region doxygenOtherLink matchgroup=doxygenOther start=+link+ end=+[\@]\@<=endlink\>+ contained contains=doxygenLinkWord,doxygenContinueComment,doxygenLinkError,doxygenEndlinkSpecial
|
||||
" Handle \link, \endlink, highlighting the link-to and the link text bits separately.
|
||||
syn region doxygenOtherLink matchgroup=doxygenOther start=+\<link\>+ end=+[\@]\@<=endlink\>+ contained contains=doxygenLinkWord,doxygenContinueComment,doxygenLinkError,doxygenEndlinkSpecial
|
||||
syn match doxygenEndlinkSpecial contained +[\\@]\zeendlink\>+
|
||||
|
||||
syn match doxygenLinkWord "[_a-zA-Z:#()][_a-z0-9A-Z:#()]*\>" contained skipnl nextgroup=doxygenLinkRest,doxygenContinueLinkComment
|
||||
@ -232,12 +243,12 @@ try
|
||||
syn match doxygenPage "[\\@]page\>"me=s+1 contained skipwhite nextgroup=doxygenPagePage
|
||||
syn keyword doxygenPagePage page contained skipwhite nextgroup=doxygenPageIdent
|
||||
syn region doxygenPageDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend skipwhite skipnl nextgroup=doxygenBody
|
||||
syn match doxygenPageIdent "\<[a-zA-Z0-9]\+\>" contained nextgroup=doxygenPageDesc
|
||||
syn match doxygenPageIdent "\<[a-zA-Z_0-9]\+\>" contained nextgroup=doxygenPageDesc
|
||||
|
||||
" Handle section
|
||||
syn keyword doxygenOther defgroup section subsection subsubsection weakgroup contained skipwhite nextgroup=doxygenSpecialIdent
|
||||
syn region doxygenSpecialSectionDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend skipwhite skipnl nextgroup=doxygenContinueComment
|
||||
syn match doxygenSpecialIdent "\<[a-zA-Z0-9]\+\>" contained nextgroup=doxygenSpecialSectionDesc
|
||||
syn match doxygenSpecialIdent "\<[a-zA-Z_0-9]\+\>" contained nextgroup=doxygenSpecialSectionDesc
|
||||
|
||||
" Does the one-line description for the one-line type identifiers.
|
||||
syn region doxygenSpecialTypeOnelineDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend
|
||||
@ -246,7 +257,7 @@ try
|
||||
" Handle the multiline description for the multiline type identifiers.
|
||||
" Continue until an 'empty' line (can contain a '*' continuation) or until the
|
||||
" next whole-line @ command \ command.
|
||||
syn region doxygenSpecialMultilineDesc start=+.\++ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([pcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contained contains=doxygenSpecialContinueComment,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup skipwhite keepend
|
||||
syn region doxygenSpecialMultilineDesc start=+.\++ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contained contains=doxygenSpecialContinueComment,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell skipwhite keepend
|
||||
syn match doxygenSpecialContinueComment contained +^\s*\*/\@!\s*+ nextgroup=doxygenSpecial skipwhite
|
||||
|
||||
" Handle special cases 'bold' and 'group'
|
||||
@ -257,7 +268,7 @@ try
|
||||
syn keyword doxygenGroupName contained +\k\++ nextgroup=doxygenSpecialOnelineDesc skipwhite
|
||||
|
||||
" Handle special symbol identifiers @$, @\, @$ etc
|
||||
syn match doxygenSymbol contained +[$\\&<>#]+
|
||||
syn match doxygenSymbol contained +[$\\&<>#n]+
|
||||
|
||||
" Simplistic handling of formula regions
|
||||
syn region doxygenFormula contained matchgroup=doxygenFormulaEnds start=+f\$+ end=+[@\\]f\$+ contains=doxygenFormulaSpecial,doxygenFormulaOperator
|
||||
@ -289,37 +300,37 @@ try
|
||||
syn region doxygenHtmlLink contained start=+<[aA]\>\s*\(\n\s*\*\s*\)\=\(\(name\|href\)=\("[^"]*"\|'[^']*'\)\)\=\s*>+ end=+</[aA]>+me=e-4 contains=@doxygenHtmlTop
|
||||
hi link doxygenHtmlLink Underlined
|
||||
|
||||
syn region doxygenHtmlBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderline,doxygenHtmlBoldItalic
|
||||
syn region doxygenHtmlBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderline,doxygenHtmlBoldItalic
|
||||
syn region doxygenHtmlBoldUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderlineItalic
|
||||
syn region doxygenHtmlBoldItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldItalicUnderline
|
||||
syn region doxygenHtmlBoldItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,doxygenHtmlBoldItalicUnderline
|
||||
syn region doxygenHtmlBoldUnderlineItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlBoldUnderlineItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlBoldItalicUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderlineItalic
|
||||
syn region doxygenHtmlBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderline,doxygenHtmlBoldItalic,@Spell
|
||||
syn region doxygenHtmlBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderline,doxygenHtmlBoldItalic,@Spell
|
||||
syn region doxygenHtmlBoldUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderlineItalic,@Spell
|
||||
syn region doxygenHtmlBoldItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldItalicUnderline,@Spell
|
||||
syn region doxygenHtmlBoldItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,doxygenHtmlBoldItalicUnderline,@Spell
|
||||
syn region doxygenHtmlBoldUnderlineItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlBoldUnderlineItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlBoldItalicUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderlineItalic,@Spell
|
||||
|
||||
syn region doxygenHtmlUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBold,doxygenHtmlUnderlineItalic
|
||||
syn region doxygenHtmlUnderlineBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBoldItalic
|
||||
syn region doxygenHtmlUnderlineBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBoldItalic
|
||||
syn region doxygenHtmlUnderlineItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,htmUnderlineItalicBold
|
||||
syn region doxygenHtmlUnderlineItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,htmUnderlineItalicBold
|
||||
syn region doxygenHtmlUnderlineItalicBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlUnderlineItalicBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlUnderlineBoldItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlUnderlineBoldItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBold,doxygenHtmlUnderlineItalic,@Spell
|
||||
syn region doxygenHtmlUnderlineBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBoldItalic,@Spell
|
||||
syn region doxygenHtmlUnderlineBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBoldItalic,@Spell
|
||||
syn region doxygenHtmlUnderlineItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,htmUnderlineItalicBold,@Spell
|
||||
syn region doxygenHtmlUnderlineItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,htmUnderlineItalicBold,@Spell
|
||||
syn region doxygenHtmlUnderlineItalicBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlUnderlineItalicBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlUnderlineBoldItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlUnderlineBoldItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,@Spell
|
||||
|
||||
syn region doxygenHtmlItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicBold,doxygenHtmlItalicUnderline
|
||||
syn region doxygenHtmlItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlItalicBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicBoldUnderline
|
||||
syn region doxygenHtmlItalicBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlItalicBoldUnderline
|
||||
syn region doxygenHtmlItalicBoldUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlItalicUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicUnderlineBold
|
||||
syn region doxygenHtmlItalicUnderlineBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlItalicUnderlineBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicBold,doxygenHtmlItalicUnderline,@Spell
|
||||
syn region doxygenHtmlItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlItalicBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicBoldUnderline,@Spell
|
||||
syn region doxygenHtmlItalicBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlItalicBoldUnderline,@Spell
|
||||
syn region doxygenHtmlItalicBoldUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlItalicUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicUnderlineBold,@Spell
|
||||
syn region doxygenHtmlItalicUnderlineBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,@Spell
|
||||
syn region doxygenHtmlItalicUnderlineBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,@Spell
|
||||
|
||||
syn region doxygenHtmlCode contained start="\c<code\>" end="\c</code>"me=e-7 contains=@doxygenHtmlTop
|
||||
syn region doxygenHtmlCode contained start="\c<code\>" end="\c</code>"me=e-7 contains=@doxygenHtmlTop,@NoSpell
|
||||
|
||||
" Prevent the doxygen contained matches from leaking into the c groups.
|
||||
" Prevent the doxygen contained matches from leaking into the c/rc groups.
|
||||
syn cluster cParenGroup add=doxygen.*
|
||||
syn cluster cParenGroup remove=doxygenComment,doxygenCommentL
|
||||
syn cluster cPreProcGroup add=doxygen.*
|
||||
@ -389,10 +400,16 @@ try
|
||||
endif
|
||||
|
||||
elseif has('gui_win32') || has('gui_win16') || has('gui_win95')
|
||||
if &guifont == ''
|
||||
let font='font=Lucida_Console:h10'
|
||||
|
||||
if exists('g:doxygen_use_bitsream_vera') && g:doxygen_use_bitsream_vera
|
||||
let font_base='Bitstream_Vera_Sans_Mono'
|
||||
else
|
||||
let font='font='.substitute(&guifont, '^[^:]*', 'Lucida_Console','')
|
||||
let font_base='Lucida_Console'
|
||||
endif
|
||||
if &guifont == ''
|
||||
let font='font='.font_base.':h10'
|
||||
else
|
||||
let font='font='.matchstr(substitute(&guifont, '^[^:]*', font_base,''),'[^,]*')
|
||||
endif
|
||||
elseif has('gui_athena') || has('gui_gtk') || &guifont=~'^\(-[^-]\+\)\{14}'
|
||||
if &guifont == ''
|
||||
@ -458,6 +475,7 @@ try
|
||||
|
||||
|
||||
SynLink doxygenBody Comment
|
||||
SynLink doxygenLine doxygenBody
|
||||
SynLink doxygenTODO Todo
|
||||
SynLink doxygenOtherTODO Todo
|
||||
SynLink doxygenOtherWARN Todo
|
||||
@ -473,6 +491,7 @@ try
|
||||
SynLink doxygenEndlinkSpecial doxygenSpecial
|
||||
SynLink doxygenCodeRegionSpecial doxygenSpecial
|
||||
SynLink doxygenVerbatimRegionSpecial doxygenSpecial
|
||||
SynLink doxygenDotRegionSpecial doxygenSpecial
|
||||
SynLink doxygenGroupDefine doxygenParam
|
||||
|
||||
SynLink doxygenSpecialMultilineDesc doxygenSpecialOnelineDesc
|
||||
|
||||
252
runtime/syntax/freebasic.vim
Normal file
252
runtime/syntax/freebasic.vim
Normal file
@ -0,0 +1,252 @@
|
||||
" Vim syntax file
|
||||
" Language: FreeBasic
|
||||
" Maintainer: Mark Manning <markem@airmail.net>
|
||||
" Updated: 10/22/2006
|
||||
"
|
||||
" Description:
|
||||
"
|
||||
" Based originally on the work done by Allan Kelly <Allan.Kelly@ed.ac.uk>
|
||||
" Updated by Mark Manning <markem@airmail.net>
|
||||
" Applied FreeBasic support to the already excellent support
|
||||
" for standard basic syntax (like QB).
|
||||
"
|
||||
" First version based on Micro$soft QBASIC circa
|
||||
" 1989, as documented in 'Learn BASIC Now' by
|
||||
" Halvorson&Rygmyr. Microsoft Press 1989. This syntax file
|
||||
" not a complete implementation yet. Send suggestions to
|
||||
" the maintainer.
|
||||
"
|
||||
" Quit when a (custom) syntax file was already loaded (Taken from c.vim)
|
||||
"
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
"
|
||||
" Be sure to turn on the "case ignore" since current versions
|
||||
" of freebasic support both upper as well as lowercase
|
||||
" letters. - MEM 10/1/2006
|
||||
"
|
||||
syn case ignore
|
||||
"
|
||||
" This list of keywords is taken directly from the FreeBasic
|
||||
" user's guide as presented by the FreeBasic online site.
|
||||
"
|
||||
syn keyword freebasicArrays ERASE LBOUND REDIM PRESERVE UBOUND
|
||||
|
||||
syn keyword freebasicBitManipulation BIT BITRESET BITSET HIBYTE HIWORD LOBYTE LOWORD SHL SHR
|
||||
|
||||
syn keyword freebasicCompilerSwitches DEFBYTE DEFDBL DEFINT DEFLNG DEFLNGINT DEFSHORT DEFSNG DEFSTR
|
||||
syn keyword freebasicCompilerSwitches DEFUBYTE DEFUINT DEFULNGINT DEFUSHORT
|
||||
syn match freebasicCompilerSwitches "\<option\s+\(BASE\|BYVAL\|DYNAMIC\|ESCAPE\|EXPLICIT\|NOKEYWORD\)\>"
|
||||
syn match freebasicCompilerSwitches "\<option\s+\(PRIVATE\|STATIC\)\>"
|
||||
|
||||
syn region freebasicConditional start="\son\s+" skip=".*" end="gosub"
|
||||
syn region freebasicConditional start="\son\s+" skip=".*" end="goto"
|
||||
syn match freebasicConditional "\<select\s+case\>"
|
||||
syn keyword freebasicConditional if iif then case else elseif with
|
||||
|
||||
syn match freebasicConsole "\<open\s+\(CONS\|ERR\|PIPE\|SCRN\)\>"
|
||||
syn keyword freebasicConsole BEEP CLS CSRLIN LOCATE PRINT POS SPC TAB VIEW WIDTH
|
||||
|
||||
syn keyword freebasicDataTypes BYTE AS DIM CONST DOUBLE ENUM INTEGER LONG LONGINT SHARED SHORT STRING
|
||||
syn keyword freebasicDataTypes SINGLE TYPE UBYTE UINTEGER ULONGINT UNION UNSIGNED USHORT WSTRING ZSTRING
|
||||
|
||||
syn keyword freebasicDateTime DATE DATEADD DATEDIFF DATEPART DATESERIAL DATEVALUE DAY HOUR MINUTE
|
||||
syn keyword freebasicDateTime MONTH MONTHNAME NOW SECOND SETDATE SETTIME TIME TIMESERIAL TIMEVALUE
|
||||
syn keyword freebasicDateTime TIMER YEAR WEEKDAY WEEKDAYNAME
|
||||
|
||||
syn keyword freebasicDebug ASSERT STOP
|
||||
|
||||
syn keyword freebasicErrorHandling ERR ERL ERROR LOCAL RESUME
|
||||
syn match freebasicErrorHandling "\<resume\s+next\>"
|
||||
syn match freebasicErrorHandling "\<on\s+error\>"
|
||||
|
||||
syn match freebasicFiles "\<get\s+#\>"
|
||||
syn match freebasicFiles "\<input\s+#\>"
|
||||
syn match freebasicFiles "\<line\s+input\s+#\>"
|
||||
syn match freebasicFiles "\<put\s+#\>"
|
||||
syn keyword freebasicFiles ACCESS APPEND BINARY BLOAD BSAVE CLOSE EOF FREEFILE INPUT LOC
|
||||
syn keyword freebasicFiles LOCK LOF OPEN OUTPUT RANDOM RESET SEEK UNLOCK WRITE
|
||||
|
||||
syn keyword freebasicFunctions ALIAS ANY BYREF BYVAL CALL CDECL CONSTRUCTOR DESTRUCTOR
|
||||
syn keyword freebasicFunctions DECLARE FUNCTION LIB OVERLOAD PASCAL STATIC SUB STDCALL
|
||||
syn keyword freebasicFunctions VA_ARG VA_FIRST VA_NEXT
|
||||
|
||||
syn match freebasicGraphics "\<palette\s+get\>"
|
||||
syn keyword freebasicGraphics ALPHA CIRCLE CLS COLOR CUSTOM DRAW FLIP GET
|
||||
syn keyword freebasicGraphics IMAGECREATE IMAGEDESTROY LINE PAINT PALETTE PCOPY PMAP POINT
|
||||
syn keyword freebasicGraphics PRESET PSET PUT RGB RGBA SCREEN SCREENCOPY SCREENINFO SCREENLIST
|
||||
syn keyword freebasicGraphics SCREENLOCK SCREENPTR SCREENRES SCREENSET SCREENSYNC SCREENUNLOCK
|
||||
syn keyword freebasicGraphics TRANS USING VIEW WINDOW
|
||||
|
||||
syn match freebasicHardware "\<open\s+com\>"
|
||||
syn keyword freebasicHardware INP OUT WAIT LPT LPOS LPRINT
|
||||
|
||||
syn keyword freebasicLogical AND EQV IMP OR NOT XOR
|
||||
|
||||
syn keyword freebasicMath ABS ACOS ASIN ATAN2 ATN COS EXP FIX INT LOG MOD RANDOMIZE
|
||||
syn keyword freebasicMath RND SGN SIN SQR TAN
|
||||
|
||||
syn keyword freebasicMemory ALLOCATE CALLOCATE CLEAR DEALLOCATE FIELD FRE PEEK POKE REALLOCATE
|
||||
|
||||
syn keyword freebasicMisc ASM DATA LET TO READ RESTORE SIZEOF SWAP OFFSETOF
|
||||
|
||||
syn keyword freebasicModularizing CHAIN COMMON EXPORT EXTERN DYLIBFREE DYLIBLOAD DYLIBSYMBOL
|
||||
syn keyword freebasicModularizing PRIVATE PUBLIC
|
||||
|
||||
syn keyword freebasicMultithreading MUTEXCREATE MUTEXDESTROY MUTEXLOCK MUTEXUNLOCK THREADCREATE THREADWAIT
|
||||
|
||||
syn keyword freebasicShell CHDIR DIR COMMAND ENVIRON EXEC EXEPATH KILL NAME MKDIR RMDIR RUN
|
||||
|
||||
syn keyword freebasicEnviron SHELL SYSTEM WINDOWTITLE POINTERS
|
||||
|
||||
syn keyword freebasicLoops FOR LOOP WHILE WEND DO CONTINUE STEP UNTIL next
|
||||
|
||||
syn match freebasicInclude "\<#\s*\(inclib\|include\)\>"
|
||||
syn match freebasicInclude "\<\$\s*include\>"
|
||||
|
||||
syn keyword freebasicPointer PROCPTR PTR SADD STRPTR VARPTR
|
||||
|
||||
syn keyword freebasicPredefined __DATE__ __FB_DOS__ __FB_LINUX__ __FB_MAIN__ __FB_MIN_VERSION__
|
||||
syn keyword freebasicPredefined __FB_SIGNATURE__ __FB_VERSION__ __FB_WIN32__ __FB_VER_MAJOR__
|
||||
syn keyword freebasicPredefined __FB_VER_MINOR__ __FB_VER_PATCH__ __FILE__ __FUNCTION__
|
||||
syn keyword freebasicPredefined __LINE__ __TIME__
|
||||
|
||||
syn match freebasicPreProcessor "\<^#\s*\(define\|undef\)\>"
|
||||
syn match freebasicPreProcessor "\<^#\s*\(ifdef\|ifndef\|else\|elseif\|endif\|if\)\>"
|
||||
syn match freebasicPreProcessor "\<#\s*error\>"
|
||||
syn match freebasicPreProcessor "\<#\s*\(print\|dynamic\|static\)\>"
|
||||
syn keyword freebasicPreProcessor DEFINED ONCE
|
||||
|
||||
syn keyword freebasicProgramFlow END EXIT GOSUB GOTO
|
||||
syn keyword freebasicProgramFlow IS RETURN SCOPE SLEEP
|
||||
|
||||
syn keyword freebasicString INSTR LCASE LEFT LEN LSET LTRIM MID RIGHT RSET RTRIM
|
||||
syn keyword freebasicString SPACE STRING TRIM UCASE ASC BIN CHR CVD CVI CVL CVLONGINT
|
||||
syn keyword freebasicString CVS CVSHORT FORMAT HEX MKD MKI MKL MKLONGINT MKS MKSHORT
|
||||
syn keyword freebasicString OCT STR VAL VALLNG VALINT VALUINT VALULNG
|
||||
|
||||
syn keyword freebasicTypeCasting CAST CBYTE CDBL CINT CLNG CLNGINT CPTR CSHORT CSIGN CSNG
|
||||
syn keyword freebasicTypeCasting CUBYTE CUINT CULNGINT CUNSG CURDIR CUSHORT
|
||||
|
||||
syn match freebasicUserInput "\<line\s+input\>"
|
||||
syn keyword freebasicUserInput GETJOYSTICK GETKEY GETMOUSE INKEY INPUT MULTIKEY SETMOUSE
|
||||
"
|
||||
" Do the Basic variables names first. This is because it
|
||||
" is the most inclusive of the tests. Later on we change
|
||||
" this so the identifiers are split up into the various
|
||||
" types of identifiers like functions, basic commands and
|
||||
" such. MEM 9/9/2006
|
||||
"
|
||||
syn match freebasicIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>"
|
||||
syn match freebasicGenericFunction "\<[a-zA-Z_][a-zA-Z0-9_]*\>\s*("me=e-1,he=e-1
|
||||
"
|
||||
" Function list
|
||||
"
|
||||
syn keyword freebasicTodo contained TODO
|
||||
"
|
||||
" Catch errors caused by wrong parenthesis
|
||||
"
|
||||
syn region freebasicParen transparent start='(' end=')' contains=ALLBUT,@freebasicParenGroup
|
||||
syn match freebasicParenError ")"
|
||||
syn match freebasicInParen contained "[{}]"
|
||||
syn cluster freebasicParenGroup contains=freebasicParenError,freebasicSpecial,freebasicTodo,freebasicUserCont,freebasicUserLabel,freebasicBitField
|
||||
"
|
||||
" Integer number, or floating point number without a dot and with "f".
|
||||
"
|
||||
syn region freebasicHex start="&h" end="\W"
|
||||
syn region freebasicHexError start="&h\x*[g-zG-Z]" end="\W"
|
||||
syn match freebasicInteger "\<\d\+\(u\=l\=\|lu\|f\)\>"
|
||||
"
|
||||
" Floating point number, with dot, optional exponent
|
||||
"
|
||||
syn match freebasicFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
|
||||
"
|
||||
" Floating point number, starting with a dot, optional exponent
|
||||
"
|
||||
syn match freebasicFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
|
||||
"
|
||||
" Floating point number, without dot, with exponent
|
||||
"
|
||||
syn match freebasicFloat "\<\d\+e[-+]\=\d\+[fl]\=\>"
|
||||
"
|
||||
" Hex number
|
||||
"
|
||||
syn case match
|
||||
syn match freebasicOctal "\<0\o*\>"
|
||||
syn match freebasicOctalError "\<0\o*[89]"
|
||||
"
|
||||
" String and Character contstants
|
||||
"
|
||||
syn region freebasicString start='"' end='"' contains=freebasicSpecial,freebasicTodo
|
||||
syn region freebasicString start="'" end="'" contains=freebasicSpecial,freebasicTodo
|
||||
"
|
||||
" Comments
|
||||
"
|
||||
syn match freebasicSpecial contained "\\."
|
||||
syn region freebasicComment start="^rem" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
syn region freebasicComment start=":\s*rem" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
syn region freebasicComment start="\s*'" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
syn region freebasicComment start="^'" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
"
|
||||
" Now do the comments and labels
|
||||
"
|
||||
syn match freebasicLabel "^\d"
|
||||
syn match freebasicLabel "\<^\w+:\>"
|
||||
syn region freebasicLineNumber start="^\d" end="\s"
|
||||
"
|
||||
" Create the clusters
|
||||
"
|
||||
syn cluster freebasicNumber contains=freebasicHex,freebasicOctal,freebasicInteger,freebasicFloat
|
||||
syn cluster freebasicError contains=freebasicHexError,freebasicOctalError
|
||||
"
|
||||
" Used with OPEN statement
|
||||
"
|
||||
syn match freebasicFilenumber "#\d\+"
|
||||
syn match freebasicMathOperator "[\+\-\=\|\*\/\>\<\%\()[\]]" contains=freebasicParen
|
||||
"
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
"
|
||||
hi def link freebasicArrays StorageClass
|
||||
hi def link freebasicBitManipulation Operator
|
||||
hi def link freebasicCompilerSwitches PreCondit
|
||||
hi def link freebasicConsole Special
|
||||
hi def link freebasicDataTypes Type
|
||||
hi def link freebasicDateTime Type
|
||||
hi def link freebasicDebug Special
|
||||
hi def link freebasicErrorHandling Special
|
||||
hi def link freebasicFiles Special
|
||||
hi def link freebasicFunctions Function
|
||||
hi def link freebasicGraphics Function
|
||||
hi def link freebasicHardware Special
|
||||
hi def link freebasicLogical Conditional
|
||||
hi def link freebasicMath Function
|
||||
hi def link freebasicMemory Function
|
||||
hi def link freebasicMisc Special
|
||||
hi def link freebasicModularizing Special
|
||||
hi def link freebasicMultithreading Special
|
||||
hi def link freebasicShell Special
|
||||
hi def link freebasicEnviron Special
|
||||
hi def link freebasicPointer Special
|
||||
hi def link freebasicPredefined PreProc
|
||||
hi def link freebasicPreProcessor PreProc
|
||||
hi def link freebasicProgramFlow Statement
|
||||
hi def link freebasicString String
|
||||
hi def link freebasicTypeCasting Type
|
||||
hi def link freebasicUserInput Statement
|
||||
hi def link freebasicComment Comment
|
||||
hi def link freebasicConditional Conditional
|
||||
hi def link freebasicError Error
|
||||
hi def link freebasicIdentifier Identifier
|
||||
hi def link freebasicInclude Include
|
||||
hi def link freebasicGenericFunction Function
|
||||
hi def link freebasicLabel Label
|
||||
hi def link freebasicLineNumber Label
|
||||
hi def link freebasicMathOperator Operator
|
||||
hi def link freebasicNumber Number
|
||||
hi def link freebasicSpecial Special
|
||||
hi def link freebasicTodo Todo
|
||||
|
||||
let b:current_syntax = "freebasic"
|
||||
|
||||
" vim: ts=8
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim help file
|
||||
" Maintainer: Bram Moolenaar (Bram@vim.org)
|
||||
" Last Change: 2006 Apr 13
|
||||
" Last Change: 2006 May 13
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
" Language: HTML
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/html.vim
|
||||
" Last Change: 2006 April 13
|
||||
" Last Change: 2006 Jun 19
|
||||
|
||||
" Please check :help html.vim for some comments and a description of the options
|
||||
|
||||
@ -24,6 +24,7 @@ else
|
||||
command! -nargs=+ HtmlHiLink hi def link <args>
|
||||
endif
|
||||
|
||||
syntax spell toplevel
|
||||
|
||||
syn case ignore
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Django HTML template
|
||||
" Maintainer: Dave Hodder <dmh@dmh.org.uk>
|
||||
" Last Change: 2006 Mar 06
|
||||
" Last Change: 2007 Jan 26
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@ -24,7 +24,11 @@ else
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
syntax cluster htmlPreproc add=djangoPlaceHolder
|
||||
syntax cluster htmlString add=djangoPlaceHolder
|
||||
syn cluster djangoBlocks add=djangoTagBlock,djangoVarBlock,djangoComment,djangoComBlock
|
||||
|
||||
syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFilter,djangoArgument,djangoTagError display containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument,djangoVarError display containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoComment start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" contains=djangoTodo containedin=ALLBUT,@djangoBlocks
|
||||
syn region djangoComBlock start="{#" end="#}" contains=djangoTodo containedin=ALLBUT,@djangoBlocks
|
||||
|
||||
let b:current_syntax = "htmldjango"
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Lisp
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Oct 12, 2005
|
||||
" Version: 17a
|
||||
" Last Change: Apr 12, 2007
|
||||
" Version: 19
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
"
|
||||
" Thanks to F Xavier Noria for a list of 978 Common Lisp symbols
|
||||
@ -34,6 +34,8 @@ else
|
||||
syn cluster lispListCluster contains=@lispBaseListCluster,lispString
|
||||
endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Lists: {{{1
|
||||
syn match lispSymbol contained ![^()'`,"; \t]\+!
|
||||
@ -436,7 +438,7 @@ syn keyword lispVar *gensym-counter* *print-miser-width* *trace-output*
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Strings: {{{1
|
||||
syn region lispString start=+"+ skip=+\\\\\|\\"+ end=+"+
|
||||
syn region lispString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
|
||||
if exists("g:lisp_instring")
|
||||
syn region lispInString keepend matchgroup=Delimiter start=+"(+rs=s+1 skip=+|.\{-}|+ matchgroup=Delimiter end=+)"+ contains=@lispBaseListCluster,lispInStringString
|
||||
syn region lispInStringString start=+\\"+ skip=+\\\\+ end=+\\"+ contained
|
||||
@ -454,14 +456,15 @@ syn keyword lispDecl do* flet multiple-value-bind
|
||||
" Numbers: supporting integers and floating point numbers {{{1
|
||||
syn match lispNumber "-\=\(\.\d\+\|\d\+\(\.\d*\)\=\)\(e[-+]\=\d\+\)\="
|
||||
|
||||
syn match lispSpecial "\*[a-zA-Z_][a-zA-Z_0-9-]*\*"
|
||||
syn match lispSpecial "\*\w[a-z_0-9-]*\*"
|
||||
syn match lispSpecial !#|[^()'`,"; \t]\+|#!
|
||||
syn match lispSpecial !#x[0-9a-fA-F]\+!
|
||||
syn match lispSpecial !#o[0-7]\+!
|
||||
syn match lispSpecial !#x\x\+!
|
||||
syn match lispSpecial !#o\o\+!
|
||||
syn match lispSpecial !#b[01]\+!
|
||||
syn match lispSpecial !#\\[ -\~]!
|
||||
syn match lispSpecial !#\\[ -}\~]!
|
||||
syn match lispSpecial !#[':][^()'`,"; \t]\+!
|
||||
syn match lispSpecial !#([^()'`,"; \t]\+)!
|
||||
syn match lispSpecial !#\\\%(Space\|Newline\|Tab\|Page\|Rubout\|Linefeed\|Return\|Backspace\)!
|
||||
|
||||
syn match lispConcat "\s\.\s"
|
||||
syn match lispParenError ")"
|
||||
@ -471,9 +474,7 @@ syn match lispParenError ")"
|
||||
syn cluster lispCommentGroup contains=lispTodo,@Spell
|
||||
syn match lispComment ";.*$" contains=@lispCommentGroup
|
||||
syn region lispCommentRegion start="#|" end="|#" contains=lispCommentRegion,@lispCommentGroup
|
||||
syn case ignore
|
||||
syn keyword lispTodo contained combak combak: todo todo:
|
||||
syn case match
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Synchronization: {{{1
|
||||
|
||||
@ -22,13 +22,15 @@ syn cluster mailQuoteExps contains=mailQuoteExp1,mailQuoteExp2,mailQuoteExp3,mai
|
||||
syn case match
|
||||
" For "From " matching case is required. The "From " is not matched in quoted
|
||||
" emails
|
||||
syn region mailHeader contains=@mailHeaderFields,@NoSpell start="^From " skip="^\s" end="\v^[-A-Za-z0-9]*([^-A-Za-z0-9:]|$)"me=s-1
|
||||
" According to RFC 2822 any printable ASCII character can appear in a field
|
||||
" name, except ':'.
|
||||
syn region mailHeader contains=@mailHeaderFields,@NoSpell start="^From " skip="^\s" end="\v^[!-9;-~]*([^!-~]|$)"me=s-1
|
||||
syn match mailHeaderKey contained contains=mailEmail,@NoSpell "^From\s.*$"
|
||||
|
||||
syn case ignore
|
||||
" Nothing else depends on case. Headers in properly quoted (with "> " or ">")
|
||||
" emails are matched
|
||||
syn region mailHeader keepend contains=@mailHeaderFields,@mailQuoteExps,@NoSpell start="^\z(\(> \?\)*\)\v(newsgroups|from|((in-)?reply-)?to|b?cc|subject|return-path|received|date|replied):" skip="^\z1\s" end="\v^\z1[-a-z0-9]*([^-a-z0-9:]|$)"me=s-1 end="\v^\z1@!"me=s-1 end="\v^\z1(\> ?)+"me=s-1
|
||||
syn region mailHeader keepend contains=@mailHeaderFields,@mailQuoteExps,@NoSpell start="^\z(\(> \?\)*\)\v(newsgroups|from|((in-)?reply-)?to|b?cc|subject|return-path|received|date|replied):" skip="^\z1\s" end="\v^\z1[!-9;-~]*([^!-~]|$)"me=s-1 end="\v^\z1@!"me=s-1 end="\v^\z1(\> ?)+"me=s-1
|
||||
|
||||
syn region mailHeaderKey contained contains=mailHeaderEmail,mailEmail,@mailQuoteExps,@NoSpell start="\v(^(\> ?)*)@<=(to|b?cc):" skip=",$" end="$"
|
||||
syn match mailHeaderKey contained contains=mailHeaderEmail,mailEmail,@NoSpell "\v(^(\> ?)*)@<=(from|reply-to):.*$"
|
||||
|
||||
59
runtime/syntax/messages.vim
Normal file
59
runtime/syntax/messages.vim
Normal file
@ -0,0 +1,59 @@
|
||||
" Vim syntax file
|
||||
" Language: /var/log/messages file
|
||||
" Maintainer: Yakov Lerner <iler.ml@gmail.com>
|
||||
" Latest Revision: 2006-06-19
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn match messagesBegin display '^' nextgroup=messagesDate
|
||||
|
||||
syn match messagesDate contained display '\a\a\a [ 0-9]\d *'
|
||||
\ nextgroup=messagesHour
|
||||
|
||||
syn match messagesHour contained display '\d\d:\d\d:\d\d\s*'
|
||||
\ nextgroup=messagesHost
|
||||
|
||||
syn match messagesHost contained display '\S*\s*'
|
||||
\ nextgroup=messagesLabel
|
||||
|
||||
syn match messagesLabel contained display '\s*[^:]*:\s*'
|
||||
\ nextgroup=messagesText contains=messagesKernel,messagesPID
|
||||
|
||||
syn match messagesPID contained display '\[\zs\d\+\ze\]'
|
||||
|
||||
syn match messagesKernel contained display 'kernel:'
|
||||
|
||||
|
||||
syn match messagesIP '\d\+\.\d\+\.\d\+\.\d\+'
|
||||
|
||||
syn match messagesURL '\w\+://\S\+'
|
||||
|
||||
syn match messagesText contained display '.*'
|
||||
\ contains=messagesNumber,messagesIP,messagesURL,messagesError
|
||||
|
||||
syn match messagesNumber contained '0x[0-9a-fA-F]*\|\[<[0-9a-f]\+>\]\|\<\d[0-9a-fA-F]*'
|
||||
|
||||
syn match messagesError contained '\c.*\<\(FATAL\|ERROR\|ERRORS\|FAILED\|FAILURE\).*'
|
||||
|
||||
|
||||
hi def link messagesDate Constant
|
||||
hi def link messagesHour Type
|
||||
hi def link messagesHost Identifier
|
||||
hi def link messagesLabel Operator
|
||||
hi def link messagesPID Constant
|
||||
hi def link messagesKernel Special
|
||||
hi def link messagesError ErrorMsg
|
||||
hi def link messagesIP Constant
|
||||
hi def link messagesURL Underlined
|
||||
hi def link messagesText Normal
|
||||
hi def link messagesNumber Number
|
||||
|
||||
let b:current_syntax = "messages"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@ -1,129 +1,254 @@
|
||||
" Created : Wed 26 Apr 2006 01:20:53 AM CDT
|
||||
" Modified : Thu 27 Apr 2006 02:29:25 PM CDT
|
||||
" Modified : Mon 20 Nov 2006 12:14:16 AM PST
|
||||
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
|
||||
" Description : Syntax file for mrxvtrc
|
||||
" Description : Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up)
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Define options.
|
||||
let s:boolOpts = '(highlightTabOnBell|syncTabTitle|hideTabbar|autohideTabbar|bottomTabbar|hideButtons|syncTabIcon|veryBoldFont|maximized|fullscreen|reverseVideo|loginShell|jumpScroll|scrollBar|scrollbarRight|scrollbarFloating|scrollTtyOutputInhibit|scrollTtyKeypress|scrollWithBuffer|transparent|transparentForce|transparentScrollbar|transparentMenubar|transparentTabbar|tabUsePixmap|utmpInhibit|visualBell|mapAlert|meta8|mouseWheelScrollPage|multibyte_cursor|tripleclickwords|showMenu|xft|xftNomFont|xftSlowOutput|xftAntialias|xftHinting|xftAutoHint|xftGlobalAdvance|tabShell|cmdAllTabs|cmdInitTabs|protectSecondary|thai|borderLess|overrideRedirect|holdExit|broadcast|smartResize|smoothResize|pointerBlank|cursorBlink|noSysConfig|disableMacros|linuxHomeEndKey|sessionMgt)'
|
||||
|
||||
let s:colorOpts = '(vt\d+.(foreground|background)|background|foreground|ufBackground|textShadow|i?tab(Foreground|Background)|color([0-9]|1[0-5]|BD|UL|RV)|(scroll|trough|highlight|cursor|pointer|border|tint)Color|cursorColor2)'
|
||||
|
||||
let s:numOpts = '(vt\d+.saveLines|maxTabWidth|minVisibleTabs|saveLines|scrollbarThickness|xftmSize|xftSize|desktop|externalBorder|internalBorder|lineSpace|pointerBlankDelay|cursorBlinkInterval|initTermNumber|shading|backgroundFade|bgRefreshInterval|fading|opacity|opacityDegree|xftPSize)'
|
||||
|
||||
let s:strOpts = '(vt\d+\.(tabTitle|command)|tabTitle|termName|title|clientName|iconName|bellCommand|holdExitText|backspaceKey|deleteKey|printPipe|cutChars|answerbackString|smClientID|geometry|confFileSave|path|boldFont|m?font[1-5]?|xftFont|xftmFont|xftPFont|inputMethod|greektoggle_key|menu|menubarPixmap|vt\d+\.Pixmap|Pixmap|scrollbarPixmap|tabbarPixmap|appIcon|multichar_encoding)'
|
||||
|
||||
syn case match
|
||||
|
||||
syn match mrxvtrcComment contains=@Spell '^\s*!.*$'
|
||||
syn match mrxvtrcComment '\v^\s*!\s*\w+[.*]\w+.*:.*'
|
||||
" Errors
|
||||
syn match mrxvtrcError contained '\v\S+'
|
||||
|
||||
" Comments
|
||||
syn match mrxvtrcComment contains=@Spell '^\s*[!#].*$'
|
||||
syn match mrxvtrcComment '\v^\s*[#!]\s*\w+[.*]\w+.*:.*'
|
||||
|
||||
"
|
||||
" Generic options (string / color / number / boolean)
|
||||
" Options.
|
||||
"
|
||||
syn match mrxvtrcOptErr '\v^\s*\w+[.*]?.{-}(:|$)'
|
||||
exec 'syn match mrxvtrcBoolOpts nextgroup=mrxvtrcBoolVal,mrxvtrcValErr'
|
||||
\ '"\v^\w+[.*]'.s:boolOpts.':\s*"'
|
||||
exec 'syn match mrxvtrcNumOpts nextgroup=mrxvtrcNumVal,mrxvtrcValErr'
|
||||
\ '"\v^\w+[.*]'.s:numOpts.':\s*"'
|
||||
exec 'syn match mrxvtrcColorOpts nextgroup=mrxvtrcColorVal'
|
||||
\ '"\v^\w+[.*]'.s:colorOpts.':\s*"'
|
||||
exec 'syn match mrxvtrcStrOpts nextgroup=mrxvtrcStrVal,mrxvtrcValErr'
|
||||
\ '"\v^\w+[.*]'.s:strOpts.':\s*"'
|
||||
syn match mrxvtrcClass '\v^\s*\w+[.*]'
|
||||
\ nextgroup=mrxvtrcOptions,mrxvtrcProfile,@mrxvtrcPOpts,mrxvtrcError
|
||||
|
||||
" Boolean options
|
||||
syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
|
||||
\ highlightTabOnBell syncTabTitle hideTabbar
|
||||
\ autohideTabbar bottomTabbar hideButtons
|
||||
\ syncTabIcon veryBoldFont maximized
|
||||
\ fullscreen reverseVideo loginShell
|
||||
\ jumpScroll scrollBar scrollbarRight
|
||||
\ scrollbarFloating scrollTtyOutputInhibit
|
||||
\ scrollTtyKeypress scrollWithBuffer
|
||||
\ transparentForce transparentScrollbar
|
||||
\ transparentMenubar transparentTabbar
|
||||
\ tabUsePixmap utmpInhibit visualBell mapAlert
|
||||
\ meta8 mouseWheelScrollPage multibyte_cursor
|
||||
\ tripleclickwords showMenu xft xftNomFont
|
||||
\ xftSlowOutput xftAntialias xftHinting
|
||||
\ xftAutoHint xftGlobalAdvance cmdAllTabs
|
||||
\ protectSecondary thai borderLess
|
||||
\ overrideRedirect broadcast
|
||||
\ smartResize smoothResize pointerBlank
|
||||
\ cursorBlink noSysConfig disableMacros
|
||||
\ linuxHomeEndKey sessionMgt
|
||||
syn match mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
|
||||
\ '\v<transparent>'
|
||||
syn match mrxvtrcBColon contained skipwhite
|
||||
\ nextgroup=mrxvtrcBoolVal,mrxvtrcError ':'
|
||||
syn case ignore
|
||||
|
||||
syn match mrxvtrcValErr contained '\v.+$'
|
||||
syn keyword mrxvtrcBoolVal contained 0 1 yes no on off true false
|
||||
syn match mrxvtrcStrVal contained '\v.+$'
|
||||
syn match mrxvtrcColorVal contained '\v#[0-9a-f]{6}\s*$'
|
||||
syn match mrxvtrcNumVal contained '\v[+-]?(0[0-7]+|\d+|0x[0-9a-f]+)$'
|
||||
|
||||
syn keyword mrxvtrcBoolVal contained skipwhite nextgroup=mrxvtrcError
|
||||
\ 0 1 yes no on off true false
|
||||
syn case match
|
||||
|
||||
"
|
||||
" Options with special values
|
||||
"
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcSBstyle,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]scrollbarStyle:\s*'
|
||||
syn keyword mrxvtrcSBstyle contained plain xterm rxvt next sgi
|
||||
" Color options
|
||||
syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError
|
||||
\ ufBackground textShadow tabForeground
|
||||
\ itabForeground tabBackground itabBackground
|
||||
\ scrollColor troughColor highlightColor
|
||||
\ cursorColor cursorColor2 pointerColor
|
||||
\ borderColor tintColor
|
||||
syn match mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError
|
||||
\ '\v<color([0-9]|1[0-5]|BD|UL|RV)>'
|
||||
syn match mrxvtrcCColon contained skipwhite
|
||||
\ nextgroup=mrxvtrcColorVal ':'
|
||||
syn match mrxvtrcColorVal contained skipwhite nextgroup=mrxvtrcError
|
||||
\ '\v#[0-9a-fA-F]{6}'
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcSBalign,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]scrollbarAlign:\s*'
|
||||
syn keyword mrxvtrcSBalign contained top bottom
|
||||
" Numeric options
|
||||
syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcNColon,mrxvtrcError
|
||||
\ maxTabWidth minVisibleTabs
|
||||
\ scrollbarThickness xftmSize xftSize desktop
|
||||
\ externalBorder internalBorder lineSpace
|
||||
\ pointerBlankDelay cursorBlinkInterval
|
||||
\ shading backgroundFade bgRefreshInterval
|
||||
\ fading focusDelay opacity opacityDegree
|
||||
\ xftPSize
|
||||
syn match mrxvtrcNColon contained skipwhite
|
||||
\ nextgroup=mrxvtrcNumVal,mrxvtrcError ':'
|
||||
syn match mrxvtrcNumVal contained skipwhite nextgroup=mrxvtrcError
|
||||
\ '\v[+-]?<(0[0-7]+|\d+|0x[0-9a-f]+)>'
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcTSmode,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]textShadowMode:\s*'
|
||||
syn keyword mrxvtrcTSmode contained
|
||||
" String options
|
||||
syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError
|
||||
\ tabTitle termName title clientName iconName
|
||||
\ bellCommand backspaceKey deleteKey
|
||||
\ printPipe cutChars answerbackString
|
||||
\ smClientID geometry path boldFont xftFont
|
||||
\ xftmFont xftPFont inputMethod
|
||||
\ greektoggle_key menu menubarPixmap
|
||||
\ scrollbarPixmap tabbarPixmap appIcon
|
||||
\ multichar_encoding initProfileList
|
||||
\ winTitleFormat
|
||||
syn match mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError
|
||||
\ '\v<m?font[1-5]?>'
|
||||
syn match mrxvtrcSColon contained skipwhite nextgroup=mrxvtrcStrVal ':'
|
||||
syn match mrxvtrcStrVal contained '\v\S.*'
|
||||
|
||||
" Profile options
|
||||
syn cluster mrxvtrcPOpts contains=mrxvtrcPSOpts,mrxvtrcPCOpts,mrxvtrcPNOpts
|
||||
syn match mrxvtrcProfile contained nextgroup=@mrxvtrcPOpts,mrxvtrcError
|
||||
\ '\vprofile\d+\.'
|
||||
syn keyword mrxvtrcPSOpts contained nextgroup=mrxvtrcSColon,mrxvtrcError
|
||||
\ tabTitle command holdExitText holdExitTitle
|
||||
\ Pixmap workingDirectory titleFormat
|
||||
syn keyword mrxvtrcPCOpts contained nextgroup=mrxvtrcCColon,mrxvtrcError
|
||||
\ background foreground
|
||||
syn keyword mrxvtrcPNOpts contained nextgroup=mrxvtrcNColon,mrxvtrcError
|
||||
\ holdExit saveLines
|
||||
|
||||
" scrollbarStyle
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcSBstyle,mrxvtrcError
|
||||
\ '\v<scrollbarStyle:'
|
||||
syn keyword mrxvtrcSBstyle contained skipwhite nextgroup=mrxvtrcError
|
||||
\ plain xterm rxvt next sgi
|
||||
|
||||
" scrollbarAlign
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcSBalign,mrxvtrcError
|
||||
\ '\v<scrollbarAlign:'
|
||||
syn keyword mrxvtrcSBalign contained skipwhite nextgroup=mrxvtrcError
|
||||
\ top bottom
|
||||
|
||||
" textShadowMode
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcTSmode,mrxvtrcError
|
||||
\ '\v<textShadowMode:'
|
||||
syn keyword mrxvtrcTSmode contained skipwhite nextgroup=mrxvtrcError
|
||||
\ none top bottom left right topleft topright
|
||||
\ botleft botright
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcGrkKbd,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]greek_keyboard:\s*'
|
||||
syn keyword mrxvtrcGrkKbd contained iso ibm
|
||||
" greek_keyboard
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcGrkKbd,mrxvtrcError
|
||||
\ '\v<greek_keyboard:'
|
||||
syn keyword mrxvtrcGrkKbd contained skipwhite nextgroup=mrxvtrcError
|
||||
\ iso ibm
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcXftWt,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]xftWeight:\s*'
|
||||
syn keyword mrxvtrcXftWt contained light medium bold
|
||||
" xftWeight
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcXftWt,mrxvtrcError
|
||||
\ '\v<(xftWeight|xftBoldWeight):'
|
||||
syn keyword mrxvtrcXftWt contained skipwhite nextgroup=mrxvtrcError
|
||||
\ light medium demibold bold black
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcXftSl,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]xftSlant:\s*'
|
||||
syn keyword mrxvtrcXftSl contained roman italic oblique
|
||||
" xftSlant
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcXftSl,mrxvtrcError
|
||||
\ '\v<xftSlant:'
|
||||
syn keyword mrxvtrcXftSl contained skipwhite nextgroup=mrxvtrcError
|
||||
\ roman italic oblique
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcXftWd,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]xftWidth:\s*'
|
||||
syn keyword mrxvtrcXftWd contained
|
||||
" xftWidth
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcXftWd,mrxvtrcError
|
||||
\ '\v<xftWidth:'
|
||||
syn keyword mrxvtrcXftWd contained skipwhite nextgroup=mrxvtrcError
|
||||
\ ultracondensed ultraexpanded
|
||||
\ condensed expanded normal
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcXftHt,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]xftRGBA:\s*'
|
||||
syn keyword mrxvtrcXftHt contained rgb bgr vrgb vbgr none
|
||||
" xftRGBA
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcXftHt,mrxvtrcError
|
||||
\ '\v<xftRGBA:'
|
||||
syn keyword mrxvtrcXftHt contained skipwhite nextgroup=mrxvtrcError
|
||||
\ rgb bgr vrgb vbgr none
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcPedit,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]preeditType:\s*'
|
||||
syn keyword mrxvtrcPedit contained OverTheSpot OffTheSpot Root
|
||||
" preeditType
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcPedit,mrxvtrcError
|
||||
\ '\v<preeditType:'
|
||||
syn keyword mrxvtrcPedit contained skipwhite nextgroup=mrxvtrcError
|
||||
\ OverTheSpot OffTheSpot Root
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcMod,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]modifier:\s*'
|
||||
syn keyword mrxvtrcMod contained
|
||||
" modifier
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcMod,mrxvtrcError
|
||||
\ '\v<modifier:'
|
||||
syn keyword mrxvtrcMod contained skipwhite nextgroup=mrxvtrcError
|
||||
\ alt meta hyper super mod1 mod2 mod3 mod4 mod5
|
||||
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcSelSty,mrxvtrcValErr
|
||||
\ '\v^\w+[.*]selectStyle:\s*'
|
||||
syn keyword mrxvtrcSelSty contained old oldword
|
||||
" selectStyle
|
||||
syn match mrxvtrcOptions contained skipwhite
|
||||
\ nextgroup=mrxvtrcSelSty,mrxvtrcError
|
||||
\ '\v<selectStyle:'
|
||||
syn keyword mrxvtrcSelSty contained skipwhite nextgroup=mrxvtrcError
|
||||
\ old oldword
|
||||
|
||||
|
||||
"
|
||||
" Macros
|
||||
"
|
||||
syn match mrxvtrcOptions nextgroup=mrxvtrcMacro,mrxvtrcValErr
|
||||
\ '\v\c^\w+[.*]macro.(primary\+)?((ctrl|alt|meta|shift)\+)*\w+:\s*'
|
||||
syn keyword mrxvtrcMacro contained nextgroup=mrxvtrcMacroArg
|
||||
\ Dummy Esc Str NewTab Close GotoTab MoveTab
|
||||
\ Scroll Copy Paste ToggleSubwin ResizeFont
|
||||
\ ToggleVeryBold ToggleTransparency
|
||||
\ ToggleBroadcast ToggleHold SetTitle
|
||||
\ PrintScreen SaveConfig ToggleMacros
|
||||
syn match mrxvtrcMacroArg contained '.\+$'
|
||||
syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcKey,mrxvtrcError
|
||||
\ macro
|
||||
syn case ignore
|
||||
syn match mrxvtrcKey contained skipwhite
|
||||
\ nextgroup=mrxvtrcMacro,mrxvtrcError
|
||||
\ '\v\.((primary|add|ctrl|alt|meta|shift)\+)*\w+:'
|
||||
syn case match
|
||||
|
||||
" Macros without arguments
|
||||
syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcError
|
||||
\ Dummy Copy Paste ToggleVeryBold
|
||||
\ ToggleTransparency ToggleBroadcast
|
||||
\ ToggleHold SetTitle ToggleMacros
|
||||
\ ToggleFullscreen
|
||||
|
||||
unlet s:strOpts s:boolOpts s:colorOpts s:numOpts
|
||||
" Macros with a string argument
|
||||
syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcStrVal
|
||||
\ Esc Str Exec Scroll PrintScreen SaveConfig
|
||||
|
||||
" Macros with a numeric argument
|
||||
syn keyword mrxvtrcMacro contained skipwhite
|
||||
\ nextgroup=mrxvtrcNumVal,mrxvtrcError
|
||||
\ Close GotoTab MoveTab ResizeFont
|
||||
|
||||
" NewTab macro
|
||||
syn keyword mrxvtrcMacro contained skipwhite
|
||||
\ nextgroup=mrxvtrcTitle,mrxvtrcShell,mrxvtrcCmd
|
||||
\ NewTab
|
||||
syn region mrxvtrcTitle contained oneline skipwhite
|
||||
\ nextgroup=mrxvtrcShell,mrxvtrcCmd
|
||||
\ start='"' end='"'
|
||||
syn match mrxvtrcShell contained nextgroup=mrxvtrcCmd '!'
|
||||
syn match mrxvtrcCmd contained '\v[^!" \t].*'
|
||||
|
||||
" ToggleSubwin macro
|
||||
syn keyword mrxvtrcMacro contained skipwhite
|
||||
\ nextgroup=mrxvtrcSubwin,mrxvtrcError
|
||||
\ ToggleSubwin
|
||||
syn match mrxvtrcSubwin contained skipwhite nextgroup=mrxvtrcError
|
||||
\ '\v[-+]?[bmst]>'
|
||||
|
||||
"
|
||||
" Highlighting groups
|
||||
"
|
||||
hi def link mrxvtrcError Error
|
||||
hi def link mrxvtrcComment Comment
|
||||
|
||||
hi def link mrxvtrcBoolOpts Statement
|
||||
hi def link mrxvtrcColorOpts mrxvtrcBoolOpts
|
||||
hi def link mrxvtrcNumOpts mrxvtrcBoolOpts
|
||||
hi def link mrxvtrcStrOpts mrxvtrcBoolOpts
|
||||
hi def link mrxvtrcOptions mrxvtrcBoolOpts
|
||||
hi def link mrxvtrcClass Statement
|
||||
hi def link mrxvtrcOptions mrxvtrcClass
|
||||
hi def link mrxvtrcBColon mrxvtrcClass
|
||||
hi def link mrxvtrcCColon mrxvtrcClass
|
||||
hi def link mrxvtrcNColon mrxvtrcClass
|
||||
hi def link mrxvtrcSColon mrxvtrcClass
|
||||
hi def link mrxvtrcProfile mrxvtrcClass
|
||||
hi def link mrxvtrcPSOpts mrxvtrcClass
|
||||
hi def link mrxvtrcPCOpts mrxvtrcClass
|
||||
hi def link mrxvtrcPNOpts mrxvtrcClass
|
||||
|
||||
hi def link mrxvtrcBoolVal Boolean
|
||||
hi def link mrxvtrcStrVal String
|
||||
@ -143,9 +268,10 @@ hi def link mrxvtrcMod mrxvtrcStrVal
|
||||
hi def link mrxvtrcSelSty mrxvtrcStrVal
|
||||
|
||||
hi def link mrxvtrcMacro Identifier
|
||||
hi def link mrxvtrcMacroArg String
|
||||
|
||||
hi def link mrxvtrcOptErr Error
|
||||
hi def link mrxvtrcValErr Error
|
||||
hi def link mrxvtrcKey mrxvtrcClass
|
||||
hi def link mrxvtrcTitle mrxvtrcStrVal
|
||||
hi def link mrxvtrcShell Special
|
||||
hi def link mrxvtrcCmd PreProc
|
||||
hi def link mrxvtrcSubwin mrxvtrcStrVal
|
||||
|
||||
let b:current_syntax = "mrxvtrc"
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Perl POD format
|
||||
" Maintainer: Scott Bigham <dsb@killerbunnies.org>
|
||||
" Last Change: 2005 Jul 05
|
||||
" Last Change: 2007 Jan 21
|
||||
|
||||
" To add embedded POD documentation highlighting to your syntax file, add
|
||||
" the commands:
|
||||
@ -53,6 +53,7 @@ syn match podSpecial "[$@%]\I\i*\(::\I\i*\)*\>" contains=@NoSpell
|
||||
|
||||
" Special formatting sequences
|
||||
syn region podFormat start="[IBSCLFX]<[^<]"me=e-1 end=">" oneline contains=podFormat,@NoSpell
|
||||
syn region podFormat start="[IBSCLFX]<<\s" end="\s>>" oneline contains=podFormat,@NoSpell
|
||||
syn match podFormat "Z<>"
|
||||
syn match podFormat "E<\(\d\+\|\I\i*\)>" contains=podEscape,podEscape2,@NoSpell
|
||||
syn match podEscape "\I\i*>"me=e-1 contained contains=@NoSpell
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Python
|
||||
" Maintainer: Neil Schemenauer <nas@python.ca>
|
||||
" Updated: 2002-10-18
|
||||
" Updated: 2006-10-15
|
||||
" Added Python 2.4 features 2006 May 4 (Dmitry Vasiliev)
|
||||
"
|
||||
" Options to control Python syntax highlighting:
|
||||
@ -40,7 +40,7 @@ endif
|
||||
syn keyword pythonStatement break continue del
|
||||
syn keyword pythonStatement except exec finally
|
||||
syn keyword pythonStatement pass print raise
|
||||
syn keyword pythonStatement return try
|
||||
syn keyword pythonStatement return try with
|
||||
syn keyword pythonStatement global assert
|
||||
syn keyword pythonStatement lambda yield
|
||||
syn keyword pythonStatement def class nextgroup=pythonFunction skipwhite
|
||||
@ -50,21 +50,21 @@ syn keyword pythonConditional if elif else
|
||||
syn keyword pythonOperator and in is not or
|
||||
" AS will be a keyword in Python 3
|
||||
syn keyword pythonPreCondit import from as
|
||||
syn match pythonComment "#.*$" contains=pythonTodo
|
||||
syn match pythonComment "#.*$" contains=pythonTodo,@Spell
|
||||
syn keyword pythonTodo TODO FIXME XXX contained
|
||||
|
||||
" Decorators (new in Python 2.4)
|
||||
syn match pythonDecorator "@" display nextgroup=pythonFunction skipwhite
|
||||
|
||||
" strings
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\='+ end=+'+ skip=+\\\\\|\\'+ contains=pythonEscape
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\="+ end=+"+ skip=+\\\\\|\\"+ contains=pythonEscape
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\="""+ end=+"""+ contains=pythonEscape
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\='''+ end=+'''+ contains=pythonEscape
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'+ end=+'+ skip=+\\\\\|\\'+
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"+ end=+"+ skip=+\\\\\|\\"+
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"""+ end=+"""+
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'''+ end=+'''+
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\='+ end=+'+ skip=+\\\\\|\\'+ contains=pythonEscape,@Spell
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\="+ end=+"+ skip=+\\\\\|\\"+ contains=pythonEscape,@Spell
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\="""+ end=+"""+ contains=pythonEscape,@Spell
|
||||
syn region pythonString matchgroup=Normal start=+[uU]\='''+ end=+'''+ contains=pythonEscape,@Spell
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'+ end=+'+ skip=+\\\\\|\\'+ contains=@Spell
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"+ end=+"+ skip=+\\\\\|\\"+ contains=@Spell
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"""+ end=+"""+ contains=@Spell
|
||||
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'''+ end=+'''+ contains=@Spell
|
||||
syn match pythonEscape +\\[abfnrtv'"\\]+ contained
|
||||
syn match pythonEscape "\\\o\{1,3}" contained
|
||||
syn match pythonEscape "\\x\x\{2}" contained
|
||||
|
||||
@ -1,10 +1,11 @@
|
||||
" Vim syntax file
|
||||
" Language: TCL/TK
|
||||
" Maintainer: Dean Copsey <copsey@cs.ucdavis.edu>
|
||||
" Maintainer: Brett Cannon <brett@python.org>
|
||||
" (previously Dean Copsey <copsey@cs.ucdavis.edu>)
|
||||
" (previously Matt Neumann <mattneu@purpleturtle.com>)
|
||||
" (previously Allan Kelly <allan@fruitloaf.co.uk>)
|
||||
" Original: Robin Becker <robin@jessikat.demon.co.uk>
|
||||
" Last Change: 2004 May 16
|
||||
" Last Change: 2006 Nov 17
|
||||
"
|
||||
" Keywords TODO: format clock click anchor
|
||||
|
||||
@ -17,9 +18,16 @@ elseif exists("b:current_syntax")
|
||||
endif
|
||||
|
||||
" A bunch of useful keywords
|
||||
syn keyword tclStatement proc global return lindex
|
||||
syn keyword tclStatement llength lappend lreplace lrange list concat incr
|
||||
syn keyword tclStatement upvar set
|
||||
syn keyword tclStatement tell socket subst open eof pwd glob list exec pid
|
||||
syn keyword tclStatement auto_load_index time unknown eval lrange fblocked
|
||||
syn keyword tclStatement lsearch auto_import gets lappend proc variable llength
|
||||
syn keyword tclStatement auto_execok return linsert error catch clock info
|
||||
syn keyword tclStatement split array fconfigure concat join lreplace source
|
||||
syn keyword tclStatement fcopy global auto_qualify update close cd auto_load
|
||||
syn keyword tclStatement file append format read package set binary namespace
|
||||
syn keyword tclStatement scan trace seek flush after vwait uplevel lset rename
|
||||
syn keyword tclStatement fileevent regexp upvar unset encoding expr load regsub
|
||||
syn keyword tclStatement interp exit puts incr lindex lsort tclLog string
|
||||
syn keyword tclLabel case default
|
||||
syn keyword tclConditional if then else elseif switch
|
||||
syn keyword tclRepeat while for foreach break continue
|
||||
|
||||
@ -1,118 +1,194 @@
|
||||
" Vim syntax file
|
||||
" Language: Z shell (zsh)
|
||||
" Maintainer: Felix von Leitner <leitner@math.fu-berlin.de>
|
||||
" Heavily based on sh.vim by Lennart Schultz
|
||||
" Last Change: 2003 May 11
|
||||
" Language: Zsh shell script
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-08-06
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" String and Character contstants
|
||||
" Highlight special characters (those which have a backslash) differently
|
||||
syn match zshSpecial "\\\d\d\d\|\\[abcfnrtv\\']"
|
||||
syn region zshSinglequote start=+'+ skip=+\\'+ end=+'+
|
||||
" A bunch of useful zsh keywords
|
||||
" syn keyword zshFunction function
|
||||
syn keyword zshStatement bg break cd chdir continue echo eval exec
|
||||
syn keyword zshStatement exit export fg getopts hash jobs kill
|
||||
syn keyword zshStatement pwd read readonly return set zshift function
|
||||
syn keyword zshStatement stop suspend test times trap type ulimit
|
||||
syn keyword zshStatement umask unset wait setopt compctl source
|
||||
syn keyword zshStatement whence disown shift which unhash unalias
|
||||
syn keyword zshStatement alias functions unfunction getln disable
|
||||
syn keyword zshStatement vared getopt enable unsetopt autoload
|
||||
syn keyword zshStatement bindkey pushln command limit unlimit fc
|
||||
syn keyword zshStatement print builtin noglob sched r time
|
||||
syn keyword zshStatement typeset declare local integer
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn keyword zshConditional if else esac case then elif fi in
|
||||
syn keyword zshRepeat while for do done
|
||||
setlocal iskeyword=@,48-57,_,-
|
||||
|
||||
" Following is worth to notice: command substitution, file redirection and functions (so these features turns red)
|
||||
syn match zshFunctionName "\h\w*\s*()"
|
||||
syn region zshCommandSub start=+`+ skip=+\\`+ end=+`+
|
||||
" contains=ALLBUT,zshFunction
|
||||
syn match zshRedir "\d\=\(<\|<<\|>\|>>\)\(|\|&\d\)\="
|
||||
syn keyword zshTodo contained TODO FIXME XXX NOTE
|
||||
|
||||
syn keyword zshTodo contained TODO
|
||||
syn region zshComment display oneline start='\%(^\|\s\)#' end='$'
|
||||
\ contains=zshTodo,@Spell
|
||||
|
||||
syn keyword zshShellVariables USER LOGNAME HOME PATH CDPATH SHELL
|
||||
syn keyword zshShellVariables LC_TYPE LC_MESSAGE MAIL MAILCHECK
|
||||
syn keyword zshShellVariables PS1 PS2 IFS EGID EUID ERRNO GID UID
|
||||
syn keyword zshShellVariables HOST LINENO MACHTYPE OLDPWD OPTARG
|
||||
syn keyword zshShellVariables OPTIND OSTYPE PPID PWD RANDOM SECONDS
|
||||
syn keyword zshShellVariables SHLVL TTY signals TTYIDLE USERNAME
|
||||
syn keyword zshShellVariables VENDOR ZSH_NAME ZSH_VERSION ARGV0
|
||||
syn keyword zshShellVariables BAUD COLUMNS cdpath DIRSTACKSIZE
|
||||
syn keyword zshShellVariables FCEDIT fignore fpath histchars HISTCHARS
|
||||
syn keyword zshShellVariables HISTFILE HISTSIZE KEYTIMEOUT LANG
|
||||
syn keyword zshShellVariables LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES
|
||||
syn keyword zshShellVariables LC_TIME LINES LISTMAX LOGCHECK mailpath
|
||||
syn keyword zshShellVariables MAILPATH MANPATH manpath module_path
|
||||
syn keyword zshShellVariables MODULE_PATH NULLCMD path POSTEDIT
|
||||
syn keyword zshShellVariables PS3 PS4 PROMPT PROMPT2 PROMPT3 PROMPT4
|
||||
syn keyword zshShellVariables psvar PSVAR prompt READNULLCMD
|
||||
syn keyword zshShellVariables REPORTTIME RPROMPT RPS1 SAVEHIST
|
||||
syn keyword zshShellVariables SPROMPT STTY TIMEFMT TMOUT TMPPREFIX
|
||||
syn keyword zshShellVariables watch WATCH WATCHFMT WORDCHARS ZDOTDIR
|
||||
syn match zshSpecialShellVar "\$[-#@*$?!0-9]"
|
||||
syn keyword zshSetVariables ignoreeof noclobber
|
||||
syn region zshDerefOpr start="\${" end="}" contains=zshShellVariables
|
||||
syn match zshDerefIdentifier "\$[a-zA-Z_][a-zA-Z0-9_]*\>"
|
||||
syn match zshOperator "[][}{&;|)(]"
|
||||
syn match zshPreProc '^\%1l#\%(!\|compdef\|autoload\).*$'
|
||||
|
||||
syn match zshQuoted '\\.'
|
||||
syn region zshString matchgroup=zshStringDelimiter start=+"+ end=+"+
|
||||
\ contains=zshQuoted,@zshDerefs,@zshSubst
|
||||
syn region zshString matchgroup=zshStringDelimiter start=+'+ end=+'+
|
||||
" XXX: This should probably be more precise, but Zsh seems a bit confused about it itself
|
||||
syn region zshPOSIXString matchgroup=zshStringDelimiter start=+\$'+
|
||||
\ end=+'+ contains=zshQuoted
|
||||
syn match zshJobSpec '%\(\d\+\|?\=\w\+\|[%+-]\)'
|
||||
|
||||
syn keyword zshPrecommand noglob nocorrect exec command builtin - time
|
||||
|
||||
syn match zshNumber "-\=\<\d\+\>"
|
||||
syn match zshComment "#.*$" contains=zshNumber,zshTodo
|
||||
syn keyword zshDelimiter do done
|
||||
|
||||
syn keyword zshConditional if then elif else fi case in esac select
|
||||
|
||||
syn match zshTestOpr "-\<[oeaznlg][tfqet]\=\>\|!\==\|-\<[b-gkLprsStuwjxOG]\>"
|
||||
"syn region zshTest start="\[" skip="\\$" end="\]" contains=zshString,zshTestOpr,zshDerefIdentifier,zshDerefOpr
|
||||
syn region zshString start=+"+ skip=+\\"+ end=+"+ contains=zshSpecial,zshOperator,zshDerefIdentifier,zshDerefOpr,zshSpecialShellVar,zshSinglequote,zshCommandSub
|
||||
syn keyword zshRepeat for while until repeat foreach
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_zsh_syntax_inits")
|
||||
if version < 508
|
||||
let did_zsh_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
syn keyword zshException always
|
||||
|
||||
HiLink zshSinglequote zshString
|
||||
HiLink zshConditional zshStatement
|
||||
HiLink zshRepeat zshStatement
|
||||
HiLink zshFunctionName zshFunction
|
||||
HiLink zshCommandSub zshOperator
|
||||
HiLink zshRedir zshOperator
|
||||
HiLink zshSetVariables zshShellVariables
|
||||
HiLink zshSpecialShellVar zshShellVariables
|
||||
HiLink zshTestOpr zshOperator
|
||||
HiLink zshDerefOpr zshSpecial
|
||||
HiLink zshDerefIdentifier zshShellVariables
|
||||
HiLink zshOperator Operator
|
||||
HiLink zshStatement Statement
|
||||
HiLink zshNumber Number
|
||||
HiLink zshString String
|
||||
HiLink zshComment Comment
|
||||
HiLink zshSpecial Special
|
||||
HiLink zshTodo Todo
|
||||
HiLink zshShellVariables Special
|
||||
" hi zshOperator term=underline ctermfg=6 guifg=Purple gui=bold
|
||||
" hi zshShellVariables term=underline ctermfg=2 guifg=SeaGreen gui=bold
|
||||
" hi zshFunction term=bold ctermbg=1 guifg=Red
|
||||
syn keyword zshKeyword function nextgroup=zshKSHFunction skipwhite
|
||||
|
||||
delcommand HiLink
|
||||
syn match zshKSHFunction contained '\k\+'
|
||||
syn match zshFunction '^\s*\k\+\ze\s*()'
|
||||
|
||||
syn match zshOperator '||\|&&\|;\|&!\='
|
||||
|
||||
syn match zshRedir '\d\=\(<\|<>\|<<<\|<&\s*[0-9p-]\=\)'
|
||||
syn match zshRedir '\d\=\(>\|>>\|>&\s*[0-9p-]\=\|&>\|>>&\|&>>\)[|!]\='
|
||||
syn match zshRedir '|&\='
|
||||
|
||||
syn region zshHereDoc matchgroup=zshRedir start='<<\s*\z(\S*\)'
|
||||
\ end='^\z1\>' contains=@zshSubst
|
||||
syn region zshHereDoc matchgroup=zshRedir start='<<-\s*\z(\S*\)'
|
||||
\ end='^\s*\z1\>' contains=@zshSubst
|
||||
syn region zshHereDoc matchgroup=zshRedir
|
||||
\ start=+<<\s*\(["']\)\z(\S*\)\1+ end='^\z1\>'
|
||||
syn region zshHereDoc matchgroup=zshRedir
|
||||
\ start=+<<-\s*\(["']\)\z(\S*\)\1+
|
||||
\ end='^\s*\z1\>'
|
||||
|
||||
syn match zshVariable '\<\h\w*\ze+\=='
|
||||
" XXX: how safe is this?
|
||||
syn region zshVariable oneline
|
||||
\ start='\$\@<!\<\h\w*\[' end='\]\ze+\=='
|
||||
\ contains=@zshSubst
|
||||
|
||||
syn cluster zshDerefs contains=zshShortDeref,zshLongDeref,zshDeref
|
||||
|
||||
if !exists("g:zsh_syntax_variables")
|
||||
let s:zsh_syntax_variables = 'all'
|
||||
else
|
||||
let s:zsh_syntax_variables = g:zsh_syntax_variables
|
||||
endif
|
||||
|
||||
if s:zsh_syntax_variables =~ 'short\|all'
|
||||
syn match zshShortDeref '\$[!#$*@?_-]\w\@!'
|
||||
syn match zshShortDeref '\$[=^~]*[#+]*\d\+\>'
|
||||
endif
|
||||
|
||||
if s:zsh_syntax_variables =~ 'long\|all'
|
||||
syn match zshLongDeref '\$\%(ARGC\|argv\|status\|pipestatus\|CPUTYPE\|EGID\|EUID\|ERRNO\|GID\|HOST\|LINENO\|LOGNAME\)'
|
||||
syn match zshLongDeref '\$\%(MACHTYPE\|OLDPWD OPTARG\|OPTIND\|OSTYPE\|PPID\|PWD\|RANDOM\|SECONDS\|SHLVL\|signals\)'
|
||||
syn match zshLongDeref '\$\%(TRY_BLOCK_ERROR\|TTY\|TTYIDLE\|UID\|USERNAME\|VENDOR\|ZSH_NAME\|ZSH_VERSION\|REPLY\|reply\|TERM\)'
|
||||
endif
|
||||
|
||||
if s:zsh_syntax_variables =~ 'all'
|
||||
syn match zshDeref '\$[=^~]*[#+]*\h\w*\>'
|
||||
else
|
||||
syn match zshDeref transparent '\$[=^~]*[#+]*\h\w*\>'
|
||||
endif
|
||||
|
||||
syn match zshCommands '\%(^\|\s\)[.:]\ze\s'
|
||||
syn keyword zshCommands alias autoload bg bindkey break bye cap cd
|
||||
\ chdir clone comparguments compcall compctl
|
||||
\ compdescribe compfiles compgroups compquote
|
||||
\ comptags comptry compvalues continue dirs
|
||||
\ disable disown echo echotc echoti emulate
|
||||
\ enable eval exec exit export false fc fg
|
||||
\ functions getcap getln getopts hash history
|
||||
\ jobs kill let limit log logout popd print
|
||||
\ printf pushd pushln pwd r read readonly
|
||||
\ rehash return sched set setcap setopt shift
|
||||
\ source stat suspend test times trap true
|
||||
\ ttyctl type ulimit umask unalias unfunction
|
||||
\ unhash unlimit unset unsetopt vared wait
|
||||
\ whence where which zcompile zformat zftp zle
|
||||
\ zmodload zparseopts zprof zpty zregexparse
|
||||
\ zsocket zstyle ztcp
|
||||
|
||||
syn keyword zshTypes float integer local typeset declare
|
||||
|
||||
" XXX: this may be too much
|
||||
" syn match zshSwitches '\s\zs--\=[a-zA-Z0-9-]\+'
|
||||
|
||||
syn match zshNumber '[+-]\=\<\d\+\>'
|
||||
syn match zshNumber '[+-]\=\<0x\x\+\>'
|
||||
syn match zshNumber '[+-]\=\<0\o\+\>'
|
||||
syn match zshNumber '[+-]\=\d\+#[-+]\=\w\+\>'
|
||||
syn match zshNumber '[+-]\=\d\+\.\d\+\>'
|
||||
|
||||
syn cluster zshSubst contains=zshSubst,zshOldSubst,zshMathSubst
|
||||
syn region zshSubst matchgroup=zshSubstDelim transparent
|
||||
\ start='\$(' skip='\\)' end=')' contains=TOP
|
||||
syn region zshParentheses transparent start='(' skip='\\)' end=')'
|
||||
syn region zshMathSubst matchgroup=zshSubstDelim transparent
|
||||
\ start='\$((' skip='\\)'
|
||||
\ matchgroup=zshSubstDelim end='))'
|
||||
\ contains=zshParentheses,@zshSubst,zshNumber,
|
||||
\ @zshDerefs,zshString
|
||||
syn region zshBrackets contained transparent start='{' skip='\\}'
|
||||
\ end='}'
|
||||
syn region zshSubst matchgroup=zshSubstDelim start='\${' skip='\\}'
|
||||
\ end='}' contains=@zshSubst,zshBrackets,zshQuoted
|
||||
syn region zshOldSubst matchgroup=zshSubstDelim start=+`+ skip=+\\`+
|
||||
\ end=+`+ contains=TOP,zshOldSubst
|
||||
|
||||
hi def link zshTodo Todo
|
||||
hi def link zshComment Comment
|
||||
hi def link zshPreProc PreProc
|
||||
hi def link zshQuoted SpecialChar
|
||||
hi def link zshString String
|
||||
hi def link zshStringDelimiter zshString
|
||||
hi def link zshPOSIXString zshString
|
||||
hi def link zshJobSpec Special
|
||||
hi def link zshPrecommand Special
|
||||
hi def link zshDelimiter Keyword
|
||||
hi def link zshConditional Conditional
|
||||
hi def link zshException Exception
|
||||
hi def link zshRepeat Repeat
|
||||
hi def link zshKeyword Keyword
|
||||
hi def link zshFunction None
|
||||
hi def link zshKSHFunction zshFunction
|
||||
hi def link zshHereDoc String
|
||||
if 0
|
||||
hi def link zshOperator Operator
|
||||
else
|
||||
hi def link zshOperator None
|
||||
endif
|
||||
if 1
|
||||
hi def link zshRedir Operator
|
||||
else
|
||||
hi def link zshRedir None
|
||||
endif
|
||||
hi def link zshVariable None
|
||||
hi def link zshDereferencing PreProc
|
||||
if s:zsh_syntax_variables =~ 'short\|all'
|
||||
hi def link zshShortDeref zshDereferencing
|
||||
else
|
||||
hi def link zshShortDeref None
|
||||
endif
|
||||
if s:zsh_syntax_variables =~ 'long\|all'
|
||||
hi def link zshLongDeref zshDereferencing
|
||||
else
|
||||
hi def link zshLongDeref None
|
||||
endif
|
||||
if s:zsh_syntax_variables =~ 'all'
|
||||
hi def link zshDeref zshDereferencing
|
||||
else
|
||||
hi def link zshDeref None
|
||||
endif
|
||||
hi def link zshCommands Keyword
|
||||
hi def link zshTypes Type
|
||||
hi def link zshSwitches Special
|
||||
hi def link zshNumber Number
|
||||
hi def link zshSubst PreProc
|
||||
hi def link zshMathSubst zshSubst
|
||||
hi def link zshOldSubst zshSubst
|
||||
hi def link zshSubstDelim zshSubst
|
||||
|
||||
let b:current_syntax = "zsh"
|
||||
|
||||
" vim: ts=8
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -557,7 +557,7 @@
|
||||
|
||||
** <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> :#,# w <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> **
|
||||
|
||||
1. <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> :!dir <20> :!ls <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>
|
||||
1. <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> :!dir <20> :!ls <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> TEST.
|
||||
|
||||
2. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@ -646,7 +646,7 @@
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 6.2: <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
** <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> a <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ԣ <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. **
|
||||
** <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> a <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. **
|
||||
|
||||
1. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> ---> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> $ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
|
||||
@ -87,7 +87,7 @@
|
||||
|
||||
---> The ccow jumpedd ovverr thhe mooon.
|
||||
|
||||
5. <20>騘 <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>夘<EFBFBD> <20>੫<EFBFBD>, <20><><EFBFBD><EFBFBD>夜<EFBFBD><EFBFBD> <20><><EFBFBD> <20><EFBFBD><E19F9E> 1.4.
|
||||
5. <20>騘 <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>夘<EFBFBD> <20>੫<EFBFBD>, <20><><EFBFBD><EFBFBD>夫<EFBFBD> <20><><EFBFBD> <20><EFBFBD><E19F9E> 1.4.
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⮜<EFBFBD><E2AE9C> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>㚞<EFBFBD><E39A9E>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㩫<EFBFBD> <20><> <20><><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>眫<EFBFBD>, <20><><EFBFBD><EFBFBD>夜<EFBFBD><E5A49C> <20><> <20><> <20><>㩞.
|
||||
@ -124,7 +124,7 @@
|
||||
2. <20><><EFBFBD> <20><> <20><><EFBFBD>嫜 <20><><EFBFBD><EFBFBD> Vim (<28><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %) <20><>ᯫ<EFBFBD>: vim <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <ENTER>
|
||||
|
||||
3. <20><><EFBFBD> <20><> <20><><EFBFBD>嫜 <20><>ᯫ<EFBFBD>: <ESC> :q! <ENTER> <20><><EFBFBD> <20><>樨<EFBFBD><E6A8A8><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
<20> <20><>ᯫ<EFBFBD>: <ESC> :wq <ENTER> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>㡜<EFBFBD><E3A19C><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
<20> <20><>ᯫ<EFBFBD>: <ESC> :wq <ENTER> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>㡜<EFBFBD><E3A19C><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
|
||||
4. <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>ᯜ<EFBFBD><E1AF9C> ⤘<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㨘 <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᩫ<EFBFBD><E1A9AB><EFBFBD> <20><><EFBFBD>㩫<EFBFBD>: x
|
||||
@ -157,7 +157,7 @@
|
||||
---> There are a some words fun that don't belong paper in this sentence.
|
||||
|
||||
5. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᙜ<EFBFBD><E1999C> <20><> <20>㣘<EFBFBD><E3A398> 3 <20><><EFBFBD> 4 <20>⮨<EFBFBD> <20> <20><>櫘<EFBFBD><E6AB98> <20><> <20>夘<EFBFBD> <20>੫<EFBFBD> <20><><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD>夫<EFBFBD> <20><><EFBFBD> <20><EFBFBD><E19F9E> 2.2.
|
||||
<20><><EFBFBD><EFBFBD>夜<EFBFBD><EFBFBD> <20><><EFBFBD> <20><EFBFBD><E19F9E> 2.2.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<20><EFBFBD><E19F9E> 2.2: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@ -277,6 +277,7 @@
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<09><EFBFBD><E19F9E> 3.1: <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
** <20><><EFBFBD>㩫<EFBFBD> p <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㩜<EFBFBD><E3A99C> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. **
|
||||
|
||||
1. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>婫<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>髞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ᛘ<EFBFBD>.
|
||||
@ -304,7 +305,7 @@
|
||||
** <20><><EFBFBD>㩫<EFBFBD> r <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㨘 <20><><EFBFBD> <20><> <20><><EFBFBD>ᥜ<EFBFBD><E1A59C> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>夘<EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. **
|
||||
|
||||
1. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>婫<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>髞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>飜<EFBFBD><EFBFBD> <20><> --->.
|
||||
1. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>婫<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>髞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⤞ <20><> --->.
|
||||
|
||||
2. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>婫<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⫩<> 驫<> <20><> <20>夘<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>髦 <20>៦<EFBFBD>.
|
||||
|
||||
@ -603,7 +604,7 @@
|
||||
1. :!<21><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><E0AB9C><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>㩠<EFBFBD><E3A9A0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚣<EFBFBD><E59AA3><EFBFBD> <20>夘<EFBFBD> (MS-DOS):
|
||||
:!dir - <20><><EFBFBD>ᤠ<EFBFBD><E1A4A0> <20>婫<EFBFBD><E5A9AB> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>暦<EFBFBD>.
|
||||
:!dir - <20><><EFBFBD>ᤠ<EFBFBD><E1A4A0> <20>婫<EFBFBD><E5A9AB> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>暦<EFBFBD>.
|
||||
:!del <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD>᭜<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
|
||||
2. :w <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>᭜<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> Vim <20><><EFBFBD> <20>婡<EFBFBD> <20><> 椦<><E6A4A6> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
@ -645,7 +646,7 @@
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
<20><EFBFBD><E19F9E> 6.2: <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
** <20><><EFBFBD>㩫<EFBFBD> a <20><><EFBFBD> <20><> <20><><EFBFBD>᚜<EFBFBD><E19A9C> <20><>壜<EFBFBD><E5A39C> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. **
|
||||
** <20><><EFBFBD>㩫<EFBFBD> a <20><><EFBFBD> <20><> <20><><EFBFBD>᚜<EFBFBD><E19A9C> <20><>壜<EFBFBD><E5A39C> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. **
|
||||
|
||||
1. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>婫<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>⢦<EFBFBD> <20><><EFBFBD> <20><>髞<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⤞ <20><> ---> <20><><EFBFBD>餫<EFBFBD><E9A4AB> $ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᩫ<EFBFBD><E1A9AB><EFBFBD>.
|
||||
@ -660,7 +661,7 @@
|
||||
|
||||
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>驫<EFBFBD> <20>騘 <20><><EFBFBD> <20><>髞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD>驫<EFBFBD> <20><>婞<EFBFBD> 櫠 <20> <20><><EFBFBD><EFBFBD><EFBFBD>㡞 <20>夘<EFBFBD>
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 因<> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ᩫ<EFBFBD><E1A9AB><EFBFBD> <20><><EFBFBD><EFBFBD>⤦<EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD>ᩫ<EFBFBD><E1A9AB><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
<20><><EFBFBD> <20><> <20>⩞ <20><><EFBFBD> <20><><EFBFBD>᚜<EFBFBD><E19A9C><EFBFBD> <20><> <20><>壜<EFBFBD><E5A39C>.
|
||||
<20><><EFBFBD> <20><> <20>⩞ <20><><EFBFBD> <20><><EFBFBD>᚜<EFBFBD><E19A9C><EFBFBD> <20><> <20><>壜<EFBFBD><E5A39C>.
|
||||
|
||||
---> This line will allow you to practice
|
||||
---> This line will allow you to practice appending text to the end of a line.
|
||||
@ -812,4 +813,3 @@
|
||||
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> Vim <20><><EFBFBD> <20><><EFBFBD> Bram Moolenaar.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
1008
runtime/tutor/tutor.sk.utf-8
Normal file
1008
runtime/tutor/tutor.sk.utf-8
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
" An example for a vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2002 Sep 19
|
||||
" Last change: 2006 Nov 16
|
||||
"
|
||||
" To use it, copy it to
|
||||
" for Unix and OS/2: ~/.vimrc
|
||||
@ -37,9 +37,8 @@ set incsearch " do incremental searching
|
||||
" Don't use Ex mode, use Q for formatting
|
||||
map Q gq
|
||||
|
||||
" This is an alternative that also works in block mode, but the deleted
|
||||
" text is lost and it only works for putting the current register.
|
||||
"vnoremap p "_dp
|
||||
" In many terminal emulators the mouse works just fine, thus enable it.
|
||||
set mouse=a
|
||||
|
||||
" Switch syntax highlighting on, when the terminal has colors
|
||||
" Also switch on highlighting the last used search pattern.
|
||||
@ -69,7 +68,7 @@ if has("autocmd")
|
||||
" (happens when dropping a file on gvim).
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") > 0 && line("'\"") <= line("$") |
|
||||
\ exe "normal g`\"" |
|
||||
\ exe "normal! g`\"" |
|
||||
\ endif
|
||||
|
||||
augroup END
|
||||
@ -79,3 +78,8 @@ else
|
||||
set autoindent " always set autoindenting on
|
||||
|
||||
endif " has("autocmd")
|
||||
|
||||
" Convenient command to see the difference between the current buffer and the
|
||||
" file it was loaded from, thus the changes you made.
|
||||
command DiffOrig vert new | set bt=nofile | r # | 0d_ | diffthis
|
||||
\ | wincmd p | diffthis
|
||||
|
||||
Reference in New Issue
Block a user