0
0
mirror of https://github.com/vim/vim.git synced 2025-10-13 06:54:15 -04:00

Updated runtime files. Add logcheck filetype plugin. (James Vega)

This commit is contained in:
Bram Moolenaar
2010-07-29 22:33:18 +02:00
parent 1587a1e37d
commit 40af4e3903
6 changed files with 161 additions and 66 deletions

View File

@@ -1,14 +1,34 @@
" Vim completion script
" Language: All languages, uses existing syntax highlighting rules
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Version: 5.0
" Last Change: 2010 Jan 31
" Version: 7.0
" Last Change: 2010 Jul 29
" Usage: For detailed help, ":help ft-syntax-omni"
" History
"
" Version 7.0
" Updated syntaxcomplete#OmniSyntaxList()
" - Looking up the syntax groups defined from a syntax file
" looked for only 1 format of {filetype}GroupName, but some
" syntax writers use this format as well:
" {b:current_syntax}GroupName
" OmniSyntaxList() will now check for both if the first
" method does not find a match.
"
" Version 6.0
" Added syntaxcomplete#OmniSyntaxList()
" - Allows other plugins to use this for their own
" purposes.
" - It will return a List of all syntax items for the
" syntax group name passed in.
" - XPTemplate for SQL will use this function via the
" sqlcomplete plugin to populate a Choose box.
"
" Version 5.0
" When processing a list of syntax groups, the final group
" was missed in function SyntaxCSyntaxGroupItems.
" Updated SyntaxCSyntaxGroupItems()
" - When processing a list of syntax groups, the final group
" was missed in function SyntaxCSyntaxGroupItems.
"
" Set completion with CTRL-X CTRL-O to autoloaded function.
" This check is in place in case this script is
@@ -24,7 +44,7 @@ endif
if exists('g:loaded_syntax_completion')
finish
endif
let g:loaded_syntax_completion = 40
let g:loaded_syntax_completion = 70
" Set ignorecase to the ftplugin standard
" This is the default setting, but if you define a buffer local
@@ -128,7 +148,30 @@ function! syntaxcomplete#Complete(findstart, base)
return compl_list
endfunc
function! OmniSyntaxList()
function! syntaxcomplete#OmniSyntaxList(...)
if a:0 > 0
let parms = []
if 3 == type(a:1)
let parms = a:1
elseif 1 == type(a:1)
let parms = split(a:1, ',')
endif
return OmniSyntaxList( parms )
else
return OmniSyntaxList()
endif
endfunc
function! OmniSyntaxList(...)
let list_parms = []
if a:0 > 0
if 3 == type(a:1)
let list_parms = a:1
elseif 1 == type(a:1)
let list_parms = split(a:1, ',')
endif
endif
" Default to returning a dictionary, if use_dictionary is set to 0
" a list will be returned.
" let use_dictionary = 1
@@ -157,6 +200,26 @@ function! OmniSyntaxList()
endif
let saveL = @l
let filetype = substitute(&filetype, '\.', '_', 'g')
if empty(list_parms)
" Default the include group to include the requested syntax group
let syntax_group_include_{filetype} = ''
" Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_include_'.filetype)
let syntax_group_include_{filetype} =
\ substitute( g:omni_syntax_group_include_{filetype},'\s\+','','g')
let list_parms = split(g:omni_syntax_group_include_{filetype}, ',')
if syntax_group_include_{filetype} =~ '\w'
let syntax_group_include_{filetype} =
\ substitute( syntax_group_include_{filetype},
\ '\s*,\s*', '\\|', 'g'
\ )
endif
endif
else
" A specific list was provided, use it
endif
" Loop through all the syntax groupnames, and build a
" syntax file which contains these names. This can
@@ -164,9 +227,13 @@ function! OmniSyntaxList()
" have a plugin defined.
" This ASSUMES the syntax groupname BEGINS with the name
" of the filetype. From my casual viewing of the vim7\syntax
" directory.
" directory this is true for almost all syntax definitions.
" As an example, the SQL syntax groups have this pattern:
" sqlType
" sqlOperators
" sqlKeyword ...
redir @l
silent! exec 'syntax list '
silent! exec 'syntax list '.join(list_parms)
redir END
let syntax_full = "\n".@l
@@ -181,31 +248,23 @@ function! OmniSyntaxList()
let filetype = substitute(&filetype, '\.', '_', 'g')
" Default the include group to include the requested syntax group
let syntax_group_include_{filetype} = ''
" Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_include_'.filetype)
let syntax_group_include_{filetype} =
\ substitute( g:omni_syntax_group_include_{filetype},'\s\+','','g')
if syntax_group_include_{filetype} =~ '\w'
let syntax_group_include_{filetype} =
\ substitute( syntax_group_include_{filetype},
\ '\s*,\s*', '\\|', 'g'
\ )
endif
endif
" Default the exclude group to nothing
let syntax_group_exclude_{filetype} = ''
" Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_exclude_'.filetype)
let syntax_group_exclude_{filetype} =
\ substitute( g:omni_syntax_group_exclude_{filetype},'\s\+','','g')
if syntax_group_exclude_{filetype} =~ '\w'
let list_exclude_groups = []
if a:0 > 0
" Do nothing since we have specific a specific list of groups
else
" Default the exclude group to nothing
let syntax_group_exclude_{filetype} = ''
" Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_exclude_'.filetype)
let syntax_group_exclude_{filetype} =
\ substitute( syntax_group_exclude_{filetype},
\ '\s*,\s*', '\\|', 'g'
\ )
\ substitute( g:omni_syntax_group_exclude_{filetype},'\s\+','','g')
let list_exclude_groups = split(g:omni_syntax_group_exclude_{filetype}, ',')
if syntax_group_exclude_{filetype} =~ '\w'
let syntax_group_exclude_{filetype} =
\ substitute( syntax_group_exclude_{filetype},
\ '\s*,\s*', '\\|', 'g'
\ )
endif
endif
endif
@@ -230,47 +289,51 @@ function! OmniSyntaxList()
let index = 0
let index = match(syntax_full, next_group_regex, index)
if index == -1 && exists('b:current_syntax') && ft_part_name != b:current_syntax
" There appears to be two standards when writing syntax files.
" Either items begin as:
" syn keyword {filetype}Keyword values ...
" let b:current_syntax = "sql"
" let b:current_syntax = "sqlanywhere"
" Or
" syn keyword {syntax_filename}Keyword values ...
" let b:current_syntax = "mysql"
" So, we will make the format of finding the syntax group names
" a bit more flexible and look for both if the first fails to
" find a match.
let next_group_regex = '\n' .
\ '\zs'.b:current_syntax.'\w\+\ze'.
\ '\s\+xxx\s\+'
let index = 0
let index = match(syntax_full, next_group_regex, index)
endif
while index > -1
let group_name = matchstr( syntax_full, '\w\+', index )
let get_syn_list = 1
" if syntax_group_include_{&filetype} == ''
" if syntax_group_exclude_{&filetype} != ''
" if '\<'.syntax_group_exclude_{&filetype}.'\>' =~ '\<'.group_name.'\>'
for exclude_group_name in list_exclude_groups
if '\<'.exclude_group_name.'\>' =~ '\<'.group_name.'\>'
let get_syn_list = 0
endif
endfor
" This code is no longer needed in version 6.0 since we have
" augmented the syntax list command to only retrieve the syntax
" groups we are interested in.
"
" if get_syn_list == 1
" if syntax_group_include_{filetype} != ''
" if '\<'.syntax_group_include_{filetype}.'\>' !~ '\<'.group_name.'\>'
" let get_syn_list = 0
" endif
" endif
" else
" if '\<'.syntax_group_include_{&filetype}.'\>' !~ '\<'.group_name.'\>'
" let get_syn_list = 0
" endif
" endif
if syntax_group_exclude_{filetype} != ''
if '\<'.syntax_group_exclude_{filetype}.'\>' =~ '\<'.group_name.'\>'
let get_syn_list = 0
endif
endif
if get_syn_list == 1
if syntax_group_include_{filetype} != ''
if '\<'.syntax_group_include_{filetype}.'\>' !~ '\<'.group_name.'\>'
let get_syn_list = 0
endif
endif
endif
if get_syn_list == 1
" Pass in the full syntax listing, plus the group name we
" are interested in.
let extra_syn_list = s:SyntaxCSyntaxGroupItems(group_name, syntax_full)
" if !empty(extra_syn_list)
" for elem in extra_syn_list
" let item = {'word':elem, 'kind':'t', 'info':group_name}
" let compl_list += [item]
" endfor
" endif
let syn_list = syn_list . extra_syn_list . "\n"
endif

View File

@@ -1,4 +1,4 @@
*change.txt* For Vim version 7.3c. Last change: 2010 Mar 23
*change.txt* For Vim version 7.3c. Last change: 2010 Jul 29
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1245,7 +1245,8 @@ gq{motion} Format the lines that {motion} moves over.
:nnoremap Q gq
gqgq *gqgq* *gqq*
gqq Format the current line. {not in Vi}
gqq Format the current line. With a count format that
many lines. {not in Vi}
*v_gq*
{Visual}gq Format the highlighted text. (for {Visual} see

View File

@@ -1,4 +1,4 @@
*helphelp.txt* For Vim version 7.3c. Last change: 2008 Jul 21
*helphelp.txt* For Vim version 7.3c. Last change: 2010 Jul 29
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -60,11 +60,20 @@ Help on help files *helphelp*
If there are several matches, you can have them listed
by hitting CTRL-D. Example: >
:help cont<Ctrl-D>
< To use a regexp |pattern|, first do ":help" and then
< Instead of typing ":help CTRL-V" to search for help
for CTRL-V you can type: >
:help ^V
< This also works together with other characters, for
example to find help for CTRL-V in Insert mode: >
:help i^V
<
To use a regexp |pattern|, first do ":help" and then
use ":tag {pattern}" in the help window. The
":tnext" command can then be used to jump to other
matches, "tselect" to list matches and choose one. >
:help index| :tse z.
< When there is no argument you will see matches for
"help", to avoid listing all possible matches (that
would be very slow).

View File

@@ -44,6 +44,8 @@ ftplugin/mupad.vim should not source AppendMatchGroup.vim, it should use an
autoload function.
Same for indent/GenericIndent.vim
Uninspected issues on http://scan.coverity.com/rung2.html
Before release 7.3:
- Rename vim73 branch to default (hints: Xavier de Gaye, 2010 May 23)

View File

@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2010 Jul 26
" Last Change: 2010 Jul 29
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -2403,6 +2403,9 @@ au! BufNewFile,BufRead *jarg*
" Kconfig
au BufNewFile,BufRead Kconfig.* call s:StarSetf('kconfig')
" Logcheck
au BufNewFile,BufRead /etc/logcheck/*.d*/* call s:StarSetf('logcheck')
" Makefile
au BufNewFile,BufRead [mM]akefile* call s:StarSetf('make')

View File

@@ -0,0 +1,17 @@
" Vim filetype plugin file
" Language: Logcheck
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Last Change: 2010 Jul 29
" License: GNU GPL, version 2.0
" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/logcheck.vim
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl fo<"
" Do not hard-wrap non-comment lines since each line is a self-contained
" regular expression
setlocal formatoptions-=t