mirror of
https://github.com/vim/vim
synced 2025-07-16 01:01:58 +00:00
updated for version 7.2a
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
" Vim completion script
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2006 May 08
|
||||
" Last Change: 2007 Aug 30
|
||||
|
||||
|
||||
" This function is used for the 'omnifunc' option.
|
||||
@ -119,6 +119,27 @@ function! ccomplete#Complete(findstart, base)
|
||||
" TODO: join previous line if it makes sense
|
||||
let line = getline('.')
|
||||
let col = col('.')
|
||||
if stridx(strpart(line, 0, col), ';') != -1
|
||||
" Handle multiple declarations on the same line.
|
||||
let col2 = col - 1
|
||||
while line[col2] != ';'
|
||||
let col2 -= 1
|
||||
endwhile
|
||||
let line = strpart(line, col2 + 1)
|
||||
let col -= col2
|
||||
endif
|
||||
if stridx(strpart(line, 0, col), ',') != -1
|
||||
" Handle multiple declarations on the same line in a function
|
||||
" declaration.
|
||||
let col2 = col - 1
|
||||
while line[col2] != ','
|
||||
let col2 -= 1
|
||||
endwhile
|
||||
if strpart(line, col2 + 1, col - col2 - 1) =~ ' *[^ ][^ ]* *[^ ]'
|
||||
let line = strpart(line, col2 + 1)
|
||||
let col -= col2
|
||||
endif
|
||||
endif
|
||||
if len(items) == 1
|
||||
" Completing one word and it's a local variable: May add '[', '.' or
|
||||
" '->'.
|
||||
@ -140,7 +161,7 @@ function! ccomplete#Complete(findstart, base)
|
||||
let res = [{'match': match, 'tagline' : '', 'kind' : kind, 'info' : line}]
|
||||
else
|
||||
" Completing "var.", "var.something", etc.
|
||||
let res = s:Nextitem(strpart(line, 0, col), items[1:], 0, 1)
|
||||
let res = s:Nextitem(strpart(line, 0, col), items[-1], 0, 1)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
" Vim script to download a missing spell file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2007 May 08
|
||||
" Last Change: 2008 May 29
|
||||
|
||||
if !exists('g:spellfile_URL')
|
||||
let g:spellfile_URL = 'ftp://ftp.vim.org/pub/vim/runtime/spell'
|
||||
@ -106,7 +106,12 @@ function! spellfile#LoadFile(lang)
|
||||
endfor
|
||||
let dirchoice = confirm(msg, dirchoices) - 2
|
||||
if dirchoice >= 0
|
||||
exe "write " . escape(dirlist[dirchoice], ' ') . '/' . fname
|
||||
if exists('*fnameescape')
|
||||
let dirname = fnameescape(dirlist[dirchoice])
|
||||
else
|
||||
let dirname = escape(dirlist[dirchoice], ' ')
|
||||
endif
|
||||
exe "write " . dirname . '/' . fname
|
||||
|
||||
" Also download the .sug file, if the user wants to.
|
||||
let msg = "Do you want me to try getting the .sug file?\n"
|
||||
@ -119,7 +124,7 @@ function! spellfile#LoadFile(lang)
|
||||
call spellfile#Nread(fname)
|
||||
if getline(2) =~ 'VIMsug'
|
||||
1d
|
||||
exe "write " . escape(dirlist[dirchoice], ' ') . '/' . fname
|
||||
exe "write " . dirname . '/' . fname
|
||||
set nomod
|
||||
else
|
||||
echo 'Sorry, downloading failed'
|
||||
|
@ -1,8 +1,8 @@
|
||||
" Vim OMNI completion script for SQL
|
||||
" Language: SQL
|
||||
" Maintainer: David Fishburn <fishburn@ianywhere.com>
|
||||
" Version: 5.0
|
||||
" Last Change: Mon Jun 05 2006 3:30:04 PM
|
||||
" Version: 6.0
|
||||
" Last Change: Thu 03 Apr 2008 10:37:54 PM Eastern Daylight Time
|
||||
" Usage: For detailed help
|
||||
" ":help sql.txt"
|
||||
" or ":help ft-sql-omni"
|
||||
@ -106,7 +106,7 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
let begindot = 1
|
||||
endif
|
||||
while start > 0
|
||||
if line[start - 1] =~ '\w'
|
||||
if line[start - 1] =~ '\(\w\|\s\+\)'
|
||||
let start -= 1
|
||||
elseif line[start - 1] =~ '\.' &&
|
||||
\ compl_type =~ 'column\|table\|view\|procedure'
|
||||
@ -178,11 +178,10 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
|
||||
" Allow the user to override the dbext plugin to specify whether
|
||||
" the owner/creator should be included in the list
|
||||
let saved_dbext_show_owner = 1
|
||||
if exists('g:dbext_default_dict_show_owner')
|
||||
let saved_dbext_show_owner = g:dbext_default_dict_show_owner
|
||||
if g:loaded_dbext >= 300
|
||||
let saveSetting = DB_listOption('dict_show_owner')
|
||||
exec 'DBSetOption dict_show_owner='.(g:omni_sql_include_owner==1?'1':'0')
|
||||
endif
|
||||
let g:dbext_default_dict_show_owner = g:omni_sql_include_owner
|
||||
|
||||
let compl_type_uc = substitute(compl_type, '\w\+', '\u&', '')
|
||||
if s:sql_file_{compl_type} == ""
|
||||
@ -192,18 +191,12 @@ function! sqlcomplete#Complete(findstart, base)
|
||||
if s:sql_file_{compl_type} != ""
|
||||
if filereadable(s:sql_file_{compl_type})
|
||||
let compl_list = readfile(s:sql_file_{compl_type})
|
||||
" let dic_list = readfile(s:sql_file_{compl_type})
|
||||
" if !empty(dic_list)
|
||||
" for elem in dic_list
|
||||
" let kind = (compl_type=='table'?'m':(compl_type=='procedure'?'f':'v'))
|
||||
" let item = {'word':elem, 'menu':elem, 'kind':kind, 'info':compl_type}
|
||||
" let compl_list += [item]
|
||||
" endfor
|
||||
" endif
|
||||
endif
|
||||
endif
|
||||
|
||||
let g:dbext_default_dict_show_owner = saved_dbext_show_owner
|
||||
if g:loaded_dbext > 300
|
||||
exec 'DBSetOption dict_show_owner='.saveSetting
|
||||
endif
|
||||
elseif compl_type =~? 'column'
|
||||
|
||||
" This type of completion relies upon the dbext.vim plugin
|
||||
@ -450,8 +443,8 @@ function! s:SQLCCheck4dbext()
|
||||
" Leave time for the user to read the error message
|
||||
:sleep 2
|
||||
return -1
|
||||
elseif g:loaded_dbext < 300
|
||||
let msg = "The dbext plugin must be at least version 3.00 " .
|
||||
elseif g:loaded_dbext < 600
|
||||
let msg = "The dbext plugin must be at least version 5.30 " .
|
||||
\ " for dynamic SQL completion"
|
||||
call s:SQLCErrorMsg(msg)
|
||||
" Leave time for the user to read the error message
|
||||
@ -514,34 +507,42 @@ endfunction
|
||||
function! s:SQLCGetObjectOwner(object)
|
||||
" The owner regex matches a word at the start of the string which is
|
||||
" followed by a dot, but doesn't include the dot in the result.
|
||||
" ^ - from beginning of line
|
||||
" "\? - ignore any quotes
|
||||
" \zs - start the match now
|
||||
" \w\+ - get owner name
|
||||
" \ze - end the match
|
||||
" "\? - ignore any quotes
|
||||
" \. - must by followed by a .
|
||||
let owner = matchstr( a:object, '^"\?\zs\w\+\ze"\?\.' )
|
||||
" ^ - from beginning of line
|
||||
" \("\|\[\)\? - ignore any quotes
|
||||
" \zs - start the match now
|
||||
" .\{-} - get owner name
|
||||
" \ze - end the match
|
||||
" \("\|\[\)\? - ignore any quotes
|
||||
" \. - must by followed by a .
|
||||
" let owner = matchstr( a:object, '^\s*\zs.*\ze\.' )
|
||||
let owner = matchstr( a:object, '^\("\|\[\)\?\zs\.\{-}\ze\("\|\]\)\?\.' )
|
||||
return owner
|
||||
endfunction
|
||||
|
||||
function! s:SQLCGetColumns(table_name, list_type)
|
||||
" Check if the table name was provided as part of the column name
|
||||
let table_name = matchstr(a:table_name, '^[a-zA-Z0-9_]\+\ze\.\?')
|
||||
let table_name = matchstr(a:table_name, '^["\[\]a-zA-Z0-9_ ]\+\ze\.\?')
|
||||
let table_cols = []
|
||||
let table_alias = ''
|
||||
let move_to_top = 1
|
||||
|
||||
let table_name = substitute(table_name, '\s*\(.\{-}\)\s*$', '\1', 'g')
|
||||
|
||||
" If the table name was given as:
|
||||
" where c.
|
||||
let table_name = substitute(table_name, '^\c\(WHERE\|AND\|OR\)\s\+', '', '')
|
||||
if g:loaded_dbext >= 300
|
||||
let saveSettingAlias = DB_listOption('use_tbl_alias')
|
||||
exec 'DBSetOption use_tbl_alias=n'
|
||||
endif
|
||||
|
||||
let table_name_stripped = substitute(table_name, '["\[\]]*', '', 'g')
|
||||
|
||||
" Check if we have already cached the column list for this table
|
||||
" by its name
|
||||
let list_idx = index(s:tbl_name, table_name, 0, &ignorecase)
|
||||
let list_idx = index(s:tbl_name, table_name_stripped, 0, &ignorecase)
|
||||
if list_idx > -1
|
||||
let table_cols = split(s:tbl_cols[list_idx])
|
||||
let table_cols = split(s:tbl_cols[list_idx], '\n')
|
||||
else
|
||||
" Check if we have already cached the column list for this table
|
||||
" by its alias, assuming the table_name provided was actually
|
||||
@ -549,11 +550,11 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
" select *
|
||||
" from area a
|
||||
" where a.
|
||||
let list_idx = index(s:tbl_alias, table_name, 0, &ignorecase)
|
||||
let list_idx = index(s:tbl_alias, table_name_stripped, 0, &ignorecase)
|
||||
if list_idx > -1
|
||||
let table_alias = table_name
|
||||
let table_alias = table_name_stripped
|
||||
let table_name = s:tbl_name[list_idx]
|
||||
let table_cols = split(s:tbl_cols[list_idx])
|
||||
let table_cols = split(s:tbl_cols[list_idx], '\n')
|
||||
endif
|
||||
endif
|
||||
|
||||
@ -609,8 +610,8 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
" '.*' - Exclude the rest of the line in the match
|
||||
let table_name_new = matchstr(@y,
|
||||
\ 'from.\{-}'.
|
||||
\ '\zs\(\(\<\w\+\>\)\.\)\?'.
|
||||
\ '\<\w\+\>\ze'.
|
||||
\ '\zs\(\("\|\[\)\?.\{-}\("\|\]\)\.\)\?'.
|
||||
\ '\("\|\[\)\?.\{-}\("\|\]\)\ze'.
|
||||
\ '\s\+\%(as\s\+\)\?\<'.
|
||||
\ matchstr(table_name, '.\{-}\ze\.\?$').
|
||||
\ '\>'.
|
||||
@ -618,6 +619,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
\ '\(\<where\>\|$\)'.
|
||||
\ '.*'
|
||||
\ )
|
||||
|
||||
if table_name_new != ''
|
||||
let table_alias = table_name
|
||||
let table_name = table_name_new
|
||||
@ -668,7 +670,7 @@ function! s:SQLCGetColumns(table_name, list_type)
|
||||
let s:tbl_name = add( s:tbl_name, table_name )
|
||||
let s:tbl_alias = add( s:tbl_alias, table_alias )
|
||||
let s:tbl_cols = add( s:tbl_cols, table_cols_str )
|
||||
let table_cols = split(table_cols_str)
|
||||
let table_cols = split(table_cols_str, '\n')
|
||||
endif
|
||||
|
||||
endif
|
||||
|
@ -1,21 +1,21 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Sep 29, 2006
|
||||
" Version: 11
|
||||
" Date: Jun 12, 2008
|
||||
" Version: 16
|
||||
" 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>
|
||||
"
|
||||
" Copyright: Copyright (C) 2005 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2008 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
" tarPlugin.vim is provided *as is* and comes with no warranty
|
||||
" of any kind, either expressed or implied. By using this
|
||||
" plugin, you agree that in no event will the copyright
|
||||
" holder be liable for any damages resulting from the use
|
||||
" of this software.
|
||||
" tar.vim and tarPlugin.vim are provided *as is* and comes
|
||||
" with no warranty of any kind, either expressed or implied.
|
||||
" By using this plugin, you agree that in no event will the
|
||||
" copyright holder be liable for any damages resulting from
|
||||
" the use of this software.
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Load Once: {{{1
|
||||
@ -24,8 +24,11 @@ set cpo&vim
|
||||
if &cp || exists("g:loaded_tar") || v:version < 700
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v11"
|
||||
let g:loaded_tar= "v16"
|
||||
"call Decho("loading autoload/tar.vim")
|
||||
if v:version < 701 || (v:version == 701 && !has("patch299"))
|
||||
echoerr "(autoload/tar.vim) need vim v7.1 with patchlevel 299"
|
||||
endif
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Default Settings: {{{1
|
||||
@ -41,14 +44,35 @@ endif
|
||||
if !exists("g:tar_writeoptions")
|
||||
let g:tar_writeoptions= "uf"
|
||||
endif
|
||||
if !exists("g:tar_shq")
|
||||
if has("unix")
|
||||
let g:tar_shq= "'"
|
||||
|
||||
if !exists("g:netrw_cygwin")
|
||||
if has("win32") || has("win95") || has("win64") || has("win16")
|
||||
if &shell =~ '\%(\<bash\>\|\<zsh\>\)\%(\.exe\)\=$'
|
||||
let g:netrw_cygwin= 1
|
||||
else
|
||||
let g:netrw_cygwin= 0
|
||||
endif
|
||||
else
|
||||
let g:tar_shq= '"'
|
||||
let g:netrw_cygwin= 0
|
||||
endif
|
||||
endif
|
||||
|
||||
" set up shell quoting character
|
||||
if !exists("g:tar_shq")
|
||||
if exists("&shq") && &shq != ""
|
||||
let g:tar_shq= &shq
|
||||
elseif has("win32") || has("win95") || has("win64") || has("win16")
|
||||
if exists("g:netrw_cygwin") && g:netrw_cygwin
|
||||
let g:tar_shq= "'"
|
||||
else
|
||||
let g:tar_shq= '"'
|
||||
endif
|
||||
else
|
||||
let g:tar_shq= "'"
|
||||
endif
|
||||
" call Decho("g:tar_shq<".g:tar_shq.">")
|
||||
endif
|
||||
|
||||
" ----------------
|
||||
" Functions: {{{1
|
||||
" ----------------
|
||||
@ -95,27 +119,32 @@ fun! tar#Browse(tarfile)
|
||||
|
||||
" give header
|
||||
" call Decho("printing header")
|
||||
exe "$put ='".'\"'." tar.vim version ".g:loaded_tar."'"
|
||||
exe "$put ='".'\"'." Browsing tarfile ".a:tarfile."'"
|
||||
exe "$put ='".'\"'." Select a file with cursor and press ENTER"."'"
|
||||
let lastline= line("$")
|
||||
call setline(lastline+1,'" tar.vim version '.g:loaded_tar)
|
||||
call setline(lastline+2,'" Browsing tarfile '.a:tarfile)
|
||||
call setline(lastline+3,'" Select a file with cursor and press ENTER')
|
||||
$put =''
|
||||
0d
|
||||
$
|
||||
|
||||
let tarfile= a:tarfile
|
||||
if has("win32") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".tarfile),'\n$','','e')
|
||||
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
|
||||
endif
|
||||
let curlast= line("$")
|
||||
if tarfile =~# '\.\(gz\|tgz\)$'
|
||||
" 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." - "
|
||||
" call Decho("1: exe silent r! gzip -d -c ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "silent r! gzip -d -c -- ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.lrp'
|
||||
" call Decho("2: exe silent r! cat -- ".s:Escape(tarfile)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "silent r! cat -- ".s:Escape(tarfile)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.bz2$'
|
||||
" 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." - "
|
||||
" call Decho("3: exe silent r! bzip2 -d -c ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
else
|
||||
" 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
|
||||
" call Decho("4: exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile))
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile)
|
||||
endif
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
@ -166,13 +195,15 @@ fun! s:TarBrowseSelect()
|
||||
let curfile= expand("%")
|
||||
if has("win32") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".tarfile),'\n$','','e')
|
||||
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
|
||||
endif
|
||||
|
||||
new
|
||||
wincmd _
|
||||
if !exists("g:tar_nomax") || g:tar_nomax == 0
|
||||
wincmd _
|
||||
endif
|
||||
let s:tblfile_{winnr()}= curfile
|
||||
call tar#Read("tarfile:".tarfile.':'.fname,1)
|
||||
call tar#Read("tarfile:".tarfile.'::'.fname,1)
|
||||
filetype detect
|
||||
|
||||
let &report= repkeep
|
||||
@ -185,27 +216,50 @@ fun! tar#Read(fname,mode)
|
||||
" call Dfunc("tar#Read(fname<".a:fname.">,mode=".a:mode.")")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
let tarfile = substitute(a:fname,'tarfile:\(.\{-}\):.*$','\1','')
|
||||
let fname = substitute(a:fname,'tarfile:.\{-}:\(.*\)$','\1','')
|
||||
let tarfile = substitute(a:fname,'tarfile:\(.\{-}\)::.*$','\1','')
|
||||
let fname = substitute(a:fname,'tarfile:.\{-}::\(.*\)$','\1','')
|
||||
if has("win32") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".tarfile),'\n$','','e')
|
||||
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
|
||||
endif
|
||||
" call Decho("tarfile<".tarfile.">")
|
||||
" call Decho("fname<".fname.">")
|
||||
|
||||
if tarfile =~# '\.\(gz\|tgz\)$'
|
||||
" 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 ".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."'"
|
||||
if fname =~ '\.gz$' && executable("zcat")
|
||||
let decmp= "|zcat"
|
||||
let doro = 1
|
||||
elseif fname =~ '\.bz2$' && executable("bzcat")
|
||||
let decmp= "|bzcat"
|
||||
let doro = 1
|
||||
else
|
||||
" 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
|
||||
let decmp=""
|
||||
let doro = 0
|
||||
if fname =~ '\.gz$\|\.bz2$\|\.Z$\|\.zip$'
|
||||
setlocal bin
|
||||
endif
|
||||
endif
|
||||
|
||||
if tarfile =~# '\.\(gz\|tgz\)$'
|
||||
" call Decho("5: exe silent r! gzip -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd.' -'.g:tar_readoptions.' - '.s:Escape(fname))
|
||||
exe "silent r! gzip -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
|
||||
elseif tarfile =~# '\.lrp$'
|
||||
" call Decho("6: exe silent r! cat ".s:Escape(tarfile)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp)
|
||||
exe "silent r! cat -- ".s:Escape(tarfile)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
|
||||
elseif tarfile =~# '\.bz2$'
|
||||
" call Decho("7: exe silent r! bzip2 -d -c ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp)
|
||||
exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
|
||||
else
|
||||
" call Decho("8: exe silent r! ".g:tar_cmd." -".g:tar_readoptions." -- ".s:Escape(tarfile)." ".s:Escape(fname))
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname).decmp
|
||||
endif
|
||||
|
||||
if doro
|
||||
" because the reverse process of compressing changed files back into the tarball is not currently supported
|
||||
setlocal ro
|
||||
endif
|
||||
|
||||
let w:tarfile= a:fname
|
||||
exe "file tarfile:".fname
|
||||
exe "file tarfile::".fname
|
||||
|
||||
" cleanup
|
||||
0d
|
||||
@ -251,7 +305,7 @@ fun! tar#Write(fname)
|
||||
|
||||
" attempt to change to the indicated directory
|
||||
try
|
||||
exe "cd ".escape(tmpdir,' \')
|
||||
exe "cd ".fnameescape(tmpdir)
|
||||
catch /^Vim\%((\a\+)\)\=:E344/
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
|
||||
@ -270,24 +324,26 @@ fun! tar#Write(fname)
|
||||
cd _ZIPVIM_
|
||||
" call Decho("current directory now: ".getcwd())
|
||||
|
||||
let tarfile = substitute(w:tarfile,'tarfile:\(.\{-}\):.*$','\1','')
|
||||
let fname = substitute(w:tarfile,'tarfile:.\{-}:\(.*\)$','\1','')
|
||||
let tarfile = substitute(w:tarfile,'tarfile:\(.\{-}\)::.*$','\1','')
|
||||
let fname = substitute(w:tarfile,'tarfile:.\{-}::\(.*\)$','\1','')
|
||||
|
||||
" handle compressed archives
|
||||
if tarfile =~# '\.gz'
|
||||
call system("gzip -d ".tarfile)
|
||||
call system("gzip -d -- ".tarfile)
|
||||
let tarfile = substitute(tarfile,'\.gz','','e')
|
||||
let compress= "gzip '".tarfile."'"
|
||||
let compress= "gzip ".s:Escape(tarfile)
|
||||
elseif tarfile =~# '\.tgz'
|
||||
call system("gzip -d ".tarfile)
|
||||
call system("gzip -d -- ".s:Escape(tarfile))
|
||||
let tarfile = substitute(tarfile,'\.tgz','.tar','e')
|
||||
let compress= "gzip '".tarfile."'"
|
||||
let compress= "gzip -- ".s:Escape(tarfile)
|
||||
let tgz = 1
|
||||
elseif tarfile =~# '\.bz2'
|
||||
call system("bzip2 -d ".tarfile)
|
||||
call system("bzip2 -d -- ".s:Escape(tarfile))
|
||||
let tarfile = substitute(tarfile,'\.bz2','','e')
|
||||
let compress= "bzip2 '".tarfile."'"
|
||||
let compress= "bzip2 -- ".s:Escape(tarfile)
|
||||
endif
|
||||
" call Decho("tarfile<".tarfile.">")
|
||||
" call Decho("compress<".compress.">")
|
||||
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
@ -309,26 +365,26 @@ fun! tar#Write(fname)
|
||||
endif
|
||||
" call Decho("tarfile<".tarfile."> fname<".fname.">")
|
||||
|
||||
exe "w! ".fname
|
||||
exe "w! ".fnameescape(fname)
|
||||
if executable("cygpath")
|
||||
let tarfile = substitute(system("cygpath ".tarfile),'\n','','e')
|
||||
let tarfile = substitute(system("cygpath ".s:Escape(tarfile)),'\n','','e')
|
||||
endif
|
||||
|
||||
" delete old file from tarfile
|
||||
" call Decho("tar --delete -f '".tarfile."' '".fname."'")
|
||||
call system("tar --delete -f '".tarfile."' '".fname."'")
|
||||
" call Decho("system(tar --delete -f ".s:Escape(tarfile)." -- ".s:Escape(fname).")")
|
||||
call system("tar --delete -f ".s:Escape(tarfile)." -- ".s:Escape(fname))
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".fnameescape(tarfile)." with ".fnameescape(fname) | echohl None
|
||||
" 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."'")
|
||||
" call Decho("tar -".g:tar_writeoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname))
|
||||
call system("tar -".g:tar_writeoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname))
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".tarfile." with ".fname | echohl None
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".fnameescape(tarfile)." with ".fnameescape(fname) | echohl None
|
||||
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
elseif exists("compress")
|
||||
" call Decho("call system(".compress.")")
|
||||
@ -372,19 +428,31 @@ endfun
|
||||
fun! s:Rmdir(fname)
|
||||
" call Dfunc("Rmdir(fname<".a:fname.">)")
|
||||
if has("unix")
|
||||
call system("/bin/rm -rf ".a:fname)
|
||||
call system("/bin/rm -rf -- ".s:Escape(a:fname))
|
||||
elseif has("win32") || has("win95") || has("win64") || has("win16")
|
||||
if &shell =~? "sh$"
|
||||
call system("/bin/rm -rf ".a:fname)
|
||||
call system("/bin/rm -rf -- ".s:Escape(a:fname))
|
||||
else
|
||||
call system("del /S ".a:fname)
|
||||
call system("del /S ".s:Escape(a:fname))
|
||||
endif
|
||||
endif
|
||||
" call Dret("Rmdir")
|
||||
endfun
|
||||
|
||||
" ------------------------------------------------------------------------
|
||||
" ---------------------------------------------------------------------
|
||||
" s:Escape: {{{2
|
||||
fun s:Escape(name)
|
||||
" shellescape() was added by patch 7.0.111
|
||||
if exists("*shellescape")
|
||||
let qnameq= shellescape(a:name)
|
||||
else
|
||||
let qnameq= g:tar_shq . a:name . g:tar_shq
|
||||
endif
|
||||
return qnameq
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines And Restoration: {{{1
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
" vim:ts=8 fdm=marker
|
||||
" vim:ts=8 fdm=marker
|
||||
|
@ -381,4 +381,3 @@ let g:xmldata_html32 = {
|
||||
\ 'param': ['/>', ''],
|
||||
\ }
|
||||
\ }
|
||||
" vim:ft=vim:ff=unix
|
||||
|
@ -408,4 +408,3 @@ let g:xmldata_html401s = {
|
||||
\ 'param': ['/>', ''],
|
||||
\ }
|
||||
\ }
|
||||
" vim:ft=vim:ff=unix
|
||||
|
@ -408,4 +408,3 @@ let g:xmldata_xhtml10s = {
|
||||
\ 'param': ['/>', ''],
|
||||
\ }
|
||||
\ }
|
||||
" vim:ft=vim:ff=unix
|
||||
|
@ -458,4 +458,3 @@ let g:xmldata_xhtml10t = {
|
||||
\ 'param': ['/>', ''],
|
||||
\ }
|
||||
\ }
|
||||
" vim:ft=vim:ff=unix
|
||||
|
@ -32,4 +32,4 @@ CompilerSet errorformat=\%W\ %\\+%\\d%\\+)\ Failure:,
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 ff=unix:
|
||||
" vim: nowrap sw=2 sts=2 ts=8:
|
||||
|
@ -1,4 +1,4 @@
|
||||
*farsi.txt* For Vim version 7.1. Last change: 2005 Mar 29
|
||||
*farsi.txt* For Vim version 7.2a. Last change: 2005 Mar 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
|
||||
|
@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 7.1. Last change: 2007 May 10
|
||||
*filetype.txt* For Vim version 7.2a. Last change: 2008 Jun 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -122,7 +122,7 @@ The file types are also used for syntax highlighting. If the ":syntax on"
|
||||
command is used, the file type detection is installed too. There is no need
|
||||
to do ":filetype on" after ":syntax on".
|
||||
|
||||
To disable one of the file types, add a line in the your filetype file, see
|
||||
To disable one of the file types, add a line in your filetype file, see
|
||||
|remove-filetype|.
|
||||
|
||||
*filetype-detect*
|
||||
@ -502,6 +502,13 @@ For further discussion of fortran_have_tabs and the method used for the
|
||||
detection of source format see |ft-fortran-syntax|.
|
||||
|
||||
|
||||
GIT COMMIT *ft-gitcommit-plugin*
|
||||
|
||||
One command, :DiffGitCached, is provided to show a diff of the current commit
|
||||
in the preview window. It is equivalent to calling "git diff --cached" plus
|
||||
any arguments given to the command.
|
||||
|
||||
|
||||
MAIL *ft-mail-plugin*
|
||||
|
||||
Options:
|
||||
@ -546,6 +553,20 @@ CTRL-] Jump to the manual page for the word under the cursor.
|
||||
CTRL-T Jump back to the previous manual page.
|
||||
|
||||
|
||||
PDF *ft-pdf-plugin*
|
||||
|
||||
Two maps, <C-]> and <C-T>, are provided to simulate a tag stack for navigating
|
||||
the PDF. The following are treated as tags:
|
||||
|
||||
- The byte offset after "startxref" to the xref table
|
||||
- The byte offset after the /Prev key in the trailer to an earlier xref table
|
||||
- A line of the form "0123456789 00000 n" in the xref table
|
||||
- An object reference like "1 0 R" anywhere in the PDF
|
||||
|
||||
These maps can be disabled with >
|
||||
:let g:no_pdf_maps = 1
|
||||
<
|
||||
|
||||
RPM SPEC *ft-spec-plugin*
|
||||
|
||||
Since the text for this plugin is rather long it has been put in a separate
|
||||
@ -555,7 +576,7 @@ file: |pi_spec.txt|.
|
||||
SQL *ft-sql*
|
||||
|
||||
Since the text for this plugin is rather long it has been put in a separate
|
||||
file: |sql.txt|.
|
||||
file: |ft_sql.txt|.
|
||||
|
||||
|
||||
TEX *ft-tex-plugin*
|
||||
|
515
runtime/doc/ft_ada.txt
Normal file
515
runtime/doc/ft_ada.txt
Normal file
@ -0,0 +1,515 @@
|
||||
*ft_ada.txt* For Vim version 7.2a. Last change: 2008 Jun 21
|
||||
|
||||
|
||||
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 information (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 information 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 its own multi-language code parser. The parser is quite
|
||||
fast, produces a lot of extra information (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 (unusable) 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_) information 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
|
@ -1,4 +1,4 @@
|
||||
*howto.txt* For Vim version 7.1. Last change: 2006 Apr 02
|
||||
*howto.txt* For Vim version 7.2a. Last change: 2006 Apr 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 7.1. Last change: 2007 May 07
|
||||
*intro.txt* For Vim version 7.2a. Last change: 2008 Jun 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -120,27 +120,13 @@ NOTE:
|
||||
|
||||
*subscribe-maillist*
|
||||
If you want to join, send a message to
|
||||
<vim-help@vim.org>
|
||||
<vim-subscribe@vim.org>
|
||||
Make sure that your "From:" address is correct. Then the list server will
|
||||
give you help on how to subscribe.
|
||||
|
||||
You can retrieve old messages from the maillist software, and an index of
|
||||
messages. Ask vim-help for instructions.
|
||||
|
||||
Archives are kept at: *maillist-archive*
|
||||
http://groups.yahoo.com/group/vim
|
||||
http://groups.yahoo.com/group/vimdev
|
||||
http://groups.yahoo.com/group/vimannounce
|
||||
http://groups.yahoo.com/group/vim-multibyte
|
||||
http://groups.yahoo.com/group/vim-mac
|
||||
|
||||
|
||||
Additional maillists:
|
||||
|
||||
<vim-fr@club.voila.fr> *french-maillist*
|
||||
Vim list in the French language. Subscribe by sending a message to
|
||||
<vim-fr-subscribe@club.voila.fr>
|
||||
Or go to http://groups.yahoo.com/group/vim-fr.
|
||||
*maillist-archive*
|
||||
For more information and archives look on the Vim maillist page:
|
||||
http://www.vim.org/maillist.php
|
||||
|
||||
|
||||
Bug reports: *bugs* *bug-reports* *bugreport.vim*
|
||||
@ -220,6 +206,7 @@ Vim would never have become what it is now, without the help of these people!
|
||||
Eric Fischer Mac port, 'cindent', and other improvements
|
||||
Benji Fisher Answering lots of user questions
|
||||
Bill Foster Athena GUI port
|
||||
Google Lets me work on Vim one day a week
|
||||
Loic Grenie xvim (ideas for multi windows version)
|
||||
Sven Guckes Vim promotor and previous WWW page maintainer
|
||||
Darren Hiebert Exuberant ctags
|
||||
@ -231,7 +218,7 @@ Vim would never have become what it is now, without the help of these people!
|
||||
Steve Kirkendall Elvis
|
||||
Roger Knobbe original port to Windows NT
|
||||
Sergey Laskavy Vim's help from Moscow
|
||||
Felix von Leitner Maintainer of Vim Mailing Lists
|
||||
Felix von Leitner Previous maintainer of Vim Mailing Lists
|
||||
David Leonard Port of Python extensions to Unix
|
||||
Avner Lottem Edit in right-to-left windows
|
||||
Flemming Madsen X11 client-server, various features and patches
|
||||
@ -241,6 +228,8 @@ Vim would never have become what it is now, without the help of these people!
|
||||
Sung-Hyun Nam Work on multi-byte versions
|
||||
Vince Negri Win32 GUI and generic console enhancements
|
||||
Steve Oualline Author of the first Vim book |frombook|
|
||||
Dominique Pelle figuring out valgrind reports and fixes
|
||||
A.Politz Many bug reports and some fixes
|
||||
George V. Reilly Win32 port, Win32 GUI start-off
|
||||
Stephen Riehm bug collector
|
||||
Stefan Roemer various patches and help to users
|
||||
@ -560,7 +549,7 @@ Ex mode Like Command-line mode, but after entering a command
|
||||
you remain in Ex mode. Very limited editing of the
|
||||
command line. |Ex-mode|
|
||||
|
||||
There are five ADDITIONAL modes. These are variants of the BASIC modes:
|
||||
There are six ADDITIONAL modes. These are variants of the BASIC modes:
|
||||
|
||||
*Operator-pending* *Operator-pending-mode*
|
||||
Operator-pending mode This is like Normal mode, but after an operator
|
||||
@ -574,6 +563,12 @@ Replace mode Replace mode is a special case of Insert mode. You
|
||||
If the 'showmode' option is on "-- REPLACE --" is
|
||||
shown at the bottom of the window.
|
||||
|
||||
Virtual Replace mode Virtual Replace mode is similar to Replace mode, but
|
||||
instead of file characters you are replacing screen
|
||||
real estate. See |Virtual-Replace-mode|.
|
||||
If the 'showmode' option is on "-- VREPLACE --" is
|
||||
shown at the bottom of the window.
|
||||
|
||||
Insert Normal mode Entered when CTRL-O given in Insert mode. This is
|
||||
like Normal mode, but after executing one command Vim
|
||||
returns to Insert mode.
|
||||
@ -608,7 +603,7 @@ CTRL-O in Insert mode you get a beep but you are still in Insert mode, type
|
||||
TO mode ~
|
||||
Normal Visual Select Insert Replace Cmd-line Ex ~
|
||||
FROM mode ~
|
||||
Normal v V ^V *4 *1 R : / ? ! Q
|
||||
Normal v V ^V *4 *1 R gR : / ? ! Q
|
||||
Visual *2 ^G c C -- : --
|
||||
Select *5 ^O ^G *6 -- -- --
|
||||
Insert <Esc> -- -- <Insert> -- --
|
||||
|
@ -1,4 +1,4 @@
|
||||
*os_amiga.txt* For Vim version 7.1. Last change: 2005 Mar 29
|
||||
*os_amiga.txt* For Vim version 7.2a. Last change: 2005 Mar 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
@ -1,4 +1,4 @@
|
||||
*os_dos.txt* For Vim version 7.1. Last change: 2006 Mar 30
|
||||
*os_dos.txt* For Vim version 7.2a. Last change: 2006 Mar 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 7.1. Last change: 2007 Apr 22
|
||||
*os_win32.txt* For Vim version 7.2a. Last change: 2008 May 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@ -306,7 +306,7 @@ A. When using :! to run an external command, you can run it with "start": >
|
||||
:!start winfile.exe<CR>
|
||||
< Using "start" stops Vim switching to another screen, opening a new console,
|
||||
or waiting for the program to complete; it indicates that you are running a
|
||||
program that does not effect the files you are editing. Programs begun
|
||||
program that does not affect the files you are editing. Programs begun
|
||||
with :!start do not get passed Vim's open file handles, which means they do
|
||||
not have to be closed before Vim.
|
||||
To avoid this special treatment, use ":! start".
|
||||
|
@ -1,4 +1,4 @@
|
||||
*pi_spec.txt* For Vim version 7.1. Last change: 2006 Apr 24
|
||||
*pi_spec.txt* For Vim version 7.2a. Last change: 2006 Apr 24
|
||||
|
||||
by Gustavo Niemeyer ~
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 7.1. Last change: 2007 May 10
|
||||
*quickfix.txt* For Vim version 7.2a. Last change: 2008 Mar 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -141,8 +141,11 @@ command with 'l'.
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
*:cq* *:cquit*
|
||||
:cq[uit] Quit Vim with an error code, so that the compiler
|
||||
:cq[uit][!] Quit Vim with an error code, so that the compiler
|
||||
will not compile the same file again.
|
||||
WARNING: All changes in files are lost! Also when the
|
||||
[!] is not used. It works like ":qall!" |:qall|,
|
||||
except that Vim returns a non-zero exit code.
|
||||
|
||||
*:cf* *:cfile*
|
||||
:cf[ile][!] [errorfile] Read the error file and jump to the first error.
|
||||
@ -159,12 +162,12 @@ command with 'l'.
|
||||
the location list.
|
||||
|
||||
|
||||
:cg[etfile][!] [errorfile] *:cg* *:cgetfile*
|
||||
:cg[etfile] [errorfile] *:cg* *:cgetfile*
|
||||
Read the error file. Just like ":cfile" but don't
|
||||
jump to the first error.
|
||||
|
||||
|
||||
:lg[etfile][!] [errorfile] *:lg* *:lgetfile*
|
||||
:lg[etfile] [errorfile] *:lg* *:lgetfile*
|
||||
Same as ":cgetfile", except the location list for the
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
@ -229,15 +232,15 @@ command with 'l'.
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
*:cgete* *:cgetexpr*
|
||||
:cgete[xpr][!] {expr} Create a quickfix list using the result of {expr}.
|
||||
:cgete[xpr] {expr} Create a quickfix list using the result of {expr}.
|
||||
Just like ":cexpr", but don't jump to the first error.
|
||||
|
||||
*:lgete* *:lgetexpr*
|
||||
:lgete[xpr][!] {expr} Same as ":cgetexpr", except the location list for the
|
||||
:lgete[xpr] {expr} Same as ":cgetexpr", except the location list for the
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
*:cad* *:caddexpr*
|
||||
:cad[dexpr][!] {expr} Evaluate {expr} and add the resulting lines to the
|
||||
:cad[dexpr] {expr} Evaluate {expr} and add the resulting lines to the
|
||||
current quickfix list. If a quickfix list is not
|
||||
present, then a new list is created. The current
|
||||
cursor position will not be changed. See |:cexpr| for
|
||||
@ -246,7 +249,7 @@ command with 'l'.
|
||||
:g/mypattern/caddexpr expand("%") . ":" . line(".") . ":" . getline(".")
|
||||
<
|
||||
*:lad* *:laddexpr*
|
||||
:lad[dexpr][!] {expr} Same as ":caddexpr", except the location list for the
|
||||
:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
*:cl* *:clist*
|
||||
@ -280,6 +283,21 @@ If vim is built with |+autocmd| support, two autocommands are available for
|
||||
running commands before and after a quickfix command (':make', ':grep' and so
|
||||
on) is executed. See |QuickFixCmdPre| and |QuickFixCmdPost| for details.
|
||||
|
||||
*QuickFixCmdPost-example*
|
||||
When 'encoding' differs from the locale, the error messages may have a
|
||||
different encoding from what Vim is using. To convert the messages you can
|
||||
use this code: >
|
||||
function QfMakeConv()
|
||||
let qflist = getqflist()
|
||||
for i in qflist
|
||||
let i.text = iconv(i.text, "cp936", "utf-8")
|
||||
endfor
|
||||
call setqflist(qflist)
|
||||
endfunction
|
||||
|
||||
au QuickfixCmdPost make call QfMakeConv()
|
||||
|
||||
|
||||
=============================================================================
|
||||
2. The error window *quickfix-window*
|
||||
|
||||
@ -434,6 +452,7 @@ lists, use ":cnewer 99" first.
|
||||
5. The errorfile is read using 'errorformat'.
|
||||
6. If vim was built with |+autocmd|, all relevant
|
||||
|QuickFixCmdPost| autocommands are executed.
|
||||
See example below.
|
||||
7. If [!] is not given the first error is jumped to.
|
||||
8. The errorfile is deleted.
|
||||
9. You can now move through the errors with commands
|
||||
@ -481,6 +500,25 @@ the screen and saved in a file the same time. Depending on the shell used
|
||||
If 'shellpipe' is empty, the {errorfile} part will be omitted. This is useful
|
||||
for compilers that write to an errorfile themselves (e.g., Manx's Amiga C).
|
||||
|
||||
|
||||
Using QuickFixCmdPost to fix the encoding ~
|
||||
|
||||
It may be that 'encoding' is set to an encoding that differs from the messages
|
||||
your build program produces. This example shows how to fix this after Vim has
|
||||
read the error messages: >
|
||||
|
||||
function QfMakeConv()
|
||||
let qflist = getqflist()
|
||||
for i in qflist
|
||||
let i.text = iconv(i.text, "cp936", "utf-8")
|
||||
endfor
|
||||
call setqflist(qflist)
|
||||
endfunction
|
||||
|
||||
au QuickfixCmdPost make call QfMakeConv()
|
||||
|
||||
(Example by Faque Cheng)
|
||||
|
||||
==============================================================================
|
||||
5. Using :vimgrep and :grep *grep* *lid*
|
||||
|
||||
@ -751,6 +789,18 @@ work, because Vim is then running in the same process as the compiler and
|
||||
stdin (standard input) will not be interactive.
|
||||
|
||||
|
||||
PERL *quickfix-perl* *compiler-perl*
|
||||
|
||||
The Perl compiler plugin doesn't actually compile, but invokes Perl's internal
|
||||
syntax checking feature and parses the output for possible errors so you can
|
||||
correct them in quick-fix mode.
|
||||
|
||||
Warnings are forced regardless of "no warnings" or "$^W = 0" within the file
|
||||
being checked. To disable this set g:perl_compiler_force_warnings to a zero
|
||||
value. For example: >
|
||||
let g:perl_compiler_force_warnings = 0
|
||||
|
||||
|
||||
PYUNIT COMPILER *compiler-pyunit*
|
||||
|
||||
This is not actually a compiler, but a unit testing framework for the
|
||||
@ -1379,7 +1429,8 @@ by Vim.
|
||||
*errorformat-Perl*
|
||||
In $VIMRUNTIME/tools you can find the efm_perl.pl script, which filters Perl
|
||||
error messages into a format that quickfix mode will understand. See the
|
||||
start of the file about how to use it.
|
||||
start of the file about how to use it. (This script is deprecated, see
|
||||
|compiler-perl|.)
|
||||
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*remote.txt* For Vim version 7.1. Last change: 2006 Apr 30
|
||||
*remote.txt* For Vim version 7.2a. Last change: 2008 May 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -64,7 +64,10 @@ The following command line arguments are available:
|
||||
server {name} instead of the default (see
|
||||
below).
|
||||
*--remote-send*
|
||||
--remote-send {keys} Send {keys} to server and exit.
|
||||
--remote-send {keys} Send {keys} to server and exit. The {keys}
|
||||
are not mapped. Special key names are
|
||||
recognized, e.g., "<CR>" results in a CR
|
||||
character.
|
||||
*--remote-expr*
|
||||
--remote-expr {expr} Evaluate {expr} in server and print the result
|
||||
on stdout.
|
||||
|
@ -1,4 +1,4 @@
|
||||
*scroll.txt* For Vim version 7.1. Last change: 2006 Aug 27
|
||||
*scroll.txt* For Vim version 7.2a. Last change: 2006 Aug 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.1. Last change: 2007 May 11
|
||||
*syntax.txt* For Vim version 7.2a. Last change: 2008 Jun 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -103,7 +103,7 @@ To put this into a mapping, you can use: >
|
||||
\ endif <CR>
|
||||
[using the |<>| notation, type this literally]
|
||||
|
||||
Details
|
||||
Details:
|
||||
The ":syntax" commands are implemented by sourcing a file. To see exactly how
|
||||
this works, look in the file:
|
||||
command file ~
|
||||
@ -531,12 +531,12 @@ one of the first five lines in the file.
|
||||
|
||||
The syntax type can always be overruled for a specific buffer by setting the
|
||||
b:asmsyntax variable: >
|
||||
:let b:asmsyntax=nasm
|
||||
:let b:asmsyntax = "nasm"
|
||||
|
||||
If b:asmsyntax is not set, either automatically or by hand, then the value of
|
||||
the global variable asmsyntax is used. This can be seen as a default assembly
|
||||
language: >
|
||||
:let asmsyntax=nasm
|
||||
:let asmsyntax = "nasm"
|
||||
|
||||
As a last resort, if nothing is defined, the "asm" syntax is used.
|
||||
|
||||
@ -613,7 +613,7 @@ C *c.vim* *ft-c-syntax*
|
||||
|
||||
A few things in C highlighting are optional. To enable them assign any value
|
||||
to the respective variable. Example: >
|
||||
:let c_comment_strings=1
|
||||
:let c_comment_strings = 1
|
||||
To disable them use ":unlet". Example: >
|
||||
:unlet c_comment_strings
|
||||
|
||||
@ -626,6 +626,8 @@ c_no_tab_space_error ... but no spaces before a <Tab>
|
||||
c_no_bracket_error don't highlight {}; inside [] as errors
|
||||
c_no_curly_error don't highlight {}; inside [] and () as errors;
|
||||
except { and } in first column
|
||||
c_curly_error highlight a missing }; this forces syncing from the
|
||||
start of the file, can be slow
|
||||
c_no_ansi don't do standard ANSI types and constants
|
||||
c_ansi_typedefs ... but do standard ANSI types
|
||||
c_ansi_constants ... but do standard ANSI constants
|
||||
@ -674,7 +676,6 @@ highlighting for cErrInParen and cErrInBracket.
|
||||
If you want to use folding in your C files, you can add these lines in a file
|
||||
an the "after" directory in 'runtimepath'. For Unix this would be
|
||||
~/.vim/after/syntax/c.vim. >
|
||||
syn region myFold start="{" end="}" transparent fold
|
||||
syn sync fromstart
|
||||
set foldmethod=syntax
|
||||
|
||||
@ -1475,11 +1476,10 @@ which are used for the statement itself, special characters used in debug
|
||||
strings, strings, boolean constants and types (this, super) respectively. I
|
||||
have opted to chose another background for those statements.
|
||||
|
||||
In order to help you to write code that can be easily ported between
|
||||
Java and C++, all C++ keywords are marked as error in a Java program.
|
||||
However, if you use them regularly, you may want to define the following
|
||||
variable in your .vimrc file: >
|
||||
:let java_allow_cpp_keywords=1
|
||||
In order to help you write code that can be easily ported between Java and
|
||||
C++, all C++ keywords can be marked as an error in a Java program. To
|
||||
have this add this line in your .vimrc file: >
|
||||
:let java_allow_cpp_keywords = 0
|
||||
|
||||
Javadoc is a program that takes special comments out of Java program files and
|
||||
creates HTML pages. The standard configuration will highlight this HTML code
|
||||
@ -2402,7 +2402,7 @@ vimrc file: >
|
||||
|
||||
SH *sh.vim* *ft-sh-syntax* *ft-bash-syntax* *ft-ksh-syntax*
|
||||
|
||||
This covers the "normal" Unix (Borne) sh, bash and the Korn shell.
|
||||
This covers the "normal" Unix (Bourne) sh, bash and the Korn shell.
|
||||
|
||||
Vim attempts to determine which shell type is in use by specifying that
|
||||
various filenames are of specific types: >
|
||||
@ -2425,23 +2425,30 @@ variables in your <.vimrc>:
|
||||
let g:is_posix = 1
|
||||
< bash: >
|
||||
let g:is_bash = 1
|
||||
< sh: (default) Borne shell >
|
||||
< sh: (default) Bourne shell >
|
||||
let g:is_sh = 1
|
||||
|
||||
If there's no "#! ..." line, and the user hasn't availed himself/herself of a
|
||||
default sh.vim syntax setting as just shown, then syntax/sh.vim will assume
|
||||
the Borne shell syntax. No need to quote RFCs or market penetration
|
||||
statistics in error reports, please -- just select the default version of
|
||||
the sh your system uses in your <.vimrc>.
|
||||
the Bourne shell syntax. No need to quote RFCs or market penetration
|
||||
statistics in error reports, please -- just select the default version of the
|
||||
sh your system uses in your <.vimrc>.
|
||||
|
||||
If, in your <.vimrc>, you set >
|
||||
let g:sh_fold_enabled= 1
|
||||
The syntax/sh.vim file provides several levels of syntax-based folding: >
|
||||
|
||||
let g:sh_fold_enabled= 0 (default, no syntax folding)
|
||||
let g:sh_fold_enabled= 1 (enable function folding)
|
||||
let g:sh_fold_enabled= 2 (enable heredoc folding)
|
||||
let g:sh_fold_enabled= 4 (enable if/do/for folding)
|
||||
>
|
||||
then various syntax items (HereDocuments and function bodies) become
|
||||
syntax-foldable (see |:syn-fold|).
|
||||
syntax-foldable (see |:syn-fold|). You also may add these together
|
||||
to get multiple types of folding: >
|
||||
|
||||
If you notice highlighting errors while scrolling backwards, which are fixed
|
||||
when redrawing with CTRL-L, try setting the "sh_minlines" internal variable
|
||||
let g:sh_fold_enabled= 3 (enables function and heredoc folding)
|
||||
|
||||
If you notice highlighting errors while scrolling backwards which are fixed
|
||||
when one redraws with CTRL-L, try setting the "sh_minlines" internal variable
|
||||
to a larger number. Example: >
|
||||
|
||||
let sh_minlines = 500
|
||||
@ -2504,7 +2511,7 @@ scripts. You can change Vim's default from Oracle to any of the current SQL
|
||||
supported types. You can also easily alter the SQL dialect being used on a
|
||||
buffer by buffer basis.
|
||||
|
||||
For more detailed instructions see |sql.txt|.
|
||||
For more detailed instructions see |ft_sql.txt|.
|
||||
|
||||
|
||||
TCSH *tcsh.vim* *ft-tcsh-syntax*
|
||||
@ -2531,7 +2538,7 @@ number is that redrawing can become slow.
|
||||
|
||||
TEX *tex.vim* *ft-tex-syntax*
|
||||
|
||||
*tex-folding*
|
||||
*tex-folding*
|
||||
Want Syntax Folding? ~
|
||||
|
||||
As of version 28 of <syntax/tex.vim>, syntax-based folding of parts, chapters,
|
||||
@ -2541,7 +2548,15 @@ in your <.vimrc>, and :set fdm=syntax. I suggest doing the latter via a
|
||||
modeline at the end of your LaTeX file: >
|
||||
% vim: fdm=syntax
|
||||
<
|
||||
*tex-runon*
|
||||
*tex-nospell*
|
||||
Don't Want Spell Checking In Comments? ~
|
||||
|
||||
Some folks like to include things like source code in comments and so would
|
||||
prefer that spell checking be disabled in comments in LaTeX files. To do
|
||||
this, put the following in your <.vimrc>: >
|
||||
let g:tex_comment_nospell= 1
|
||||
<
|
||||
*tex-runon*
|
||||
Run-on Comments/Math? ~
|
||||
|
||||
The <syntax/tex.vim> highlighting supports TeX, LaTeX, and some AmsTeX. The
|
||||
@ -2554,7 +2569,7 @@ special "TeX comment" has been provided >
|
||||
which will forcibly terminate the highlighting of either a texZone or a
|
||||
texMathZone.
|
||||
|
||||
*tex-slow*
|
||||
*tex-slow*
|
||||
Slow Syntax Highlighting? ~
|
||||
|
||||
If you have a slow computer, you may wish to reduce the values for >
|
||||
@ -2564,8 +2579,8 @@ 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? ~
|
||||
*tex-morecommands* *tex-package*
|
||||
Want To Highlight More Commands? ~
|
||||
|
||||
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
|
||||
@ -2574,7 +2589,7 @@ 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*
|
||||
*tex-error*
|
||||
Excessive Error Highlighting? ~
|
||||
|
||||
The <tex.vim> supports lexical error checking of various sorts. Thus,
|
||||
@ -2584,7 +2599,7 @@ you may put in your <.vimrc> the following statement: >
|
||||
let tex_no_error=1
|
||||
and all error checking by <syntax/tex.vim> will be suppressed.
|
||||
|
||||
*tex-math*
|
||||
*tex-math*
|
||||
Need a new Math Group? ~
|
||||
|
||||
If you want to include a new math group in your LaTeX, the following
|
||||
@ -2599,7 +2614,7 @@ and then to the call to it in .vim/after/syntax/tex.vim.
|
||||
The "starform" variable, if true, implies that your new math group
|
||||
has a starred form (ie. eqnarray*).
|
||||
|
||||
*tex-style*
|
||||
*tex-style*
|
||||
Starting a New Style? ~
|
||||
|
||||
One may use "\makeatletter" in *.tex files, thereby making the use of "@" in
|
||||
@ -2624,36 +2639,56 @@ set "tf_minlines" to the value you desire. Example: >
|
||||
:let tf_minlines = your choice
|
||||
|
||||
|
||||
VIM *vim.vim* *ft-vim-syntax*
|
||||
VIM *vim.vim* *ft-vim-syntax*
|
||||
*g:vimsyn_minlines* *g:vimsyn_maxlines*
|
||||
There is a tradeoff between more accurate syntax highlighting versus screen
|
||||
updating speed. To improve accuracy, you may wish to increase the
|
||||
g:vimsyn_minlines variable. The g:vimsyn_maxlines variable may be used to
|
||||
improve screen updating rates (see |:syn-sync| for more on this). >
|
||||
|
||||
There is a tradeoff between more accurate syntax highlighting versus
|
||||
screen updating speed. To improve accuracy, you may wish to increase
|
||||
the g:vim_minlines variable. The g:vim_maxlines variable may be used
|
||||
to improve screen updating rates (see |:syn-sync| for more on this).
|
||||
g:vimsyn_minlines : used to set synchronization minlines
|
||||
g:vimsyn_maxlines : used to set synchronization maxlines
|
||||
<
|
||||
(g:vim_minlines and g:vim_maxlines are deprecated variants of
|
||||
these two options)
|
||||
|
||||
g:vim_minlines : used to set synchronization minlines
|
||||
g:vim_maxlines : used to set synchronization maxlines
|
||||
*g:vimsyn_embed*
|
||||
The g:vimsyn_embed option allows users to select what, if any, types of
|
||||
embedded script highlighting they wish to have. >
|
||||
|
||||
The g:vimembedscript option allows for somewhat faster loading of syntax
|
||||
highlighting for vim scripts at the expense of supporting syntax highlighting
|
||||
for external scripting languages (currently perl, python, ruby, and tcl).
|
||||
g:vimsyn_embed == 0 : don't embed any scripts
|
||||
g:vimsyn_embed =~ 'm' : embed mzscheme (but only if vim supports it)
|
||||
g:vimsyn_embed =~ 'p' : embed perl (but only if vim supports it)
|
||||
g:vimsyn_embed =~ 'P' : embed python (but only if vim supports it)
|
||||
g:vimsyn_embed =~ 'r' : embed ruby (but only if vim supports it)
|
||||
g:vimsyn_embed =~ 't' : embed tcl (but only if vim supports it)
|
||||
<
|
||||
By default, g:vimsyn_embed is "mpPr"; ie. syntax/vim.vim will support
|
||||
highlighting mzscheme, perl, python, and ruby by default. Vim's has("tcl")
|
||||
test appears to hang vim when tcl is not truly available. Thus, by default,
|
||||
tcl is not supported for embedding (but those of you who like tcl embedded in
|
||||
their vim syntax highlighting can simply include it in the g:vimembedscript
|
||||
option).
|
||||
*g:vimsyn_folding*
|
||||
|
||||
g:vimembedscript == 1 (default) <vim.vim> will allow highlighting
|
||||
g:vimembedscript doesn't exist of supported embedded scripting
|
||||
languages: perl, python, ruby and
|
||||
tcl.
|
||||
Some folding is now supported with syntax/vim.vim: >
|
||||
|
||||
g:vimembedscript == 0 Syntax highlighting for embedded
|
||||
scripting languages will not be
|
||||
loaded.
|
||||
g:vimsyn_folding == 0 or doesn't exist: no syntax-based folding
|
||||
g:vimsyn_folding =~ 'a' : augroups
|
||||
g:vimsyn_folding =~ 'f' : fold functions
|
||||
g:vimsyn_folding =~ 'm' : fold mzscheme script
|
||||
g:vimsyn_folding =~ 'p' : fold perl script
|
||||
g:vimsyn_folding =~ 'P' : fold python script
|
||||
g:vimsyn_folding =~ 'r' : fold ruby script
|
||||
g:vimsyn_folding =~ 't' : fold tcl script
|
||||
|
||||
*g:vimsyn_noerror*
|
||||
Not all error highlighting that syntax/vim.vim does may be correct; VimL is a
|
||||
difficult language to highlight correctly. A way to suppress error
|
||||
highlighting is to put: >
|
||||
highlighting is to put the following line in your |vimrc|: >
|
||||
|
||||
let g:vimsyntax_noerror = 1
|
||||
|
||||
in your |vimrc|.
|
||||
let g:vimsyn_noerror = 1
|
||||
<
|
||||
|
||||
|
||||
XF86CONFIG *xf86conf.vim* *ft-xf86conf-syntax*
|
||||
@ -3158,7 +3193,7 @@ line break.
|
||||
|
||||
fold *:syn-fold*
|
||||
|
||||
The "fold" argument makes the fold level increased by one for this item.
|
||||
The "fold" argument makes the fold level increase by one for this item.
|
||||
Example: >
|
||||
:syn region myFold start="{" end="}" transparent fold
|
||||
:syn sync fromstart
|
||||
@ -3320,7 +3355,7 @@ use another character that is not used in the pattern. Examples: >
|
||||
:syntax region String start=+"+ end=+"+ skip=+\\"+
|
||||
|
||||
See |pattern| for the explanation of what a pattern is. Syntax patterns are
|
||||
always interpreted like the 'magic' options is set, no matter what the actual
|
||||
always interpreted like the 'magic' option is set, no matter what the actual
|
||||
value of 'magic' is. And the patterns are interpreted like the 'l' flag is
|
||||
not included in 'cpoptions'. This was done to make syntax files portable and
|
||||
independent of 'compatible' and 'magic' settings.
|
||||
@ -3379,6 +3414,8 @@ Notes:
|
||||
- The highlighted area will never be outside of the matched text.
|
||||
- A negative offset for an end pattern may not always work, because the end
|
||||
pattern may be detected when the highlighting should already have stopped.
|
||||
- Until Vim 7.2 the offsets were counted in bytes instead of characters. This
|
||||
didn't work well for multi-byte characters.
|
||||
- The start of a match cannot be in a line other than where the pattern
|
||||
matched. This doesn't work: "a\nb"ms=e. You can make the highlighting
|
||||
start in another line, this does work: "a\nb"hs=e.
|
||||
@ -3500,9 +3537,9 @@ single name.
|
||||
remove={group-name}..
|
||||
The specified groups are removed from the cluster.
|
||||
|
||||
A cluster so defined may be referred to in a contains=.., nextgroup=.., add=..
|
||||
or remove=.. list with a "@" prefix. You can also use this notation to
|
||||
implicitly declare a cluster before specifying its contents.
|
||||
A cluster so defined may be referred to in a contains=.., containedin=..,
|
||||
nextgroup=.., add=.. or remove=.. list with a "@" prefix. You can also use
|
||||
this notation to implicitly declare a cluster before specifying its contents.
|
||||
|
||||
Example: >
|
||||
:syntax match Thing "# [^#]\+ #" contains=@ThingMembers
|
||||
@ -4194,7 +4231,7 @@ WildMenu current match in 'wildmenu' completion
|
||||
The 'statusline' syntax allows the use of 9 different highlights in the
|
||||
statusline and ruler (via 'rulerformat'). The names are User1 to User9.
|
||||
|
||||
For the GUI you can use these groups to set the colors for the menu,
|
||||
For the GUI you can use the following groups to set the colors for the menu,
|
||||
scrollbars and tooltips. They don't have defaults. This doesn't work for the
|
||||
Win32 GUI. Only three highlight arguments have any effect here: font, guibg,
|
||||
and guifg.
|
||||
|
@ -1,4 +1,4 @@
|
||||
*tagsrch.txt* For Vim version 7.1. Last change: 2006 Apr 24
|
||||
*tagsrch.txt* For Vim version 7.2a. Last change: 2006 Apr 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.1. Last change: 2007 May 12
|
||||
*todo.txt* For Vim version 7.2a. Last change: 2008 Jun 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -30,50 +30,125 @@ 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)
|
||||
Have a look at patch for utf-8 line breaking. (Yongwei Wu, 2008 Mar 1, Mar 23)
|
||||
|
||||
Insert mode completion: CTRL-N and CTRL-P work differently and they both don't
|
||||
work as expected. (Bernhard Walle, 2007 Feb 27)
|
||||
Drawing popup menu isn't quite right when there are double-wide characters.
|
||||
Yukihiro Nakadaira is working on a solution (2008 Jun 22). Use mb_fix_col().
|
||||
|
||||
When 'rightleft' is set the completion menu is positioned wrong. (Baha-Eddine
|
||||
MOKADEM)
|
||||
When reallocating cmdline xp_pattern becomes invalid. Move expand_T xpc into
|
||||
ccline? (Dominique Pelle)
|
||||
|
||||
glob() doesn't work correctly with single quotes and 'shell' set to /bin/sh.
|
||||
(Adri Verhoef, Charles Campbell 2007 Mar 26)
|
||||
Wildmenu not deleted: "gvim -u NONE", ":set nocp wildmenu cmdheight=3
|
||||
laststatus=2", CTRL-D CTRL-H CTRL-H CTRL-H. (A.Politz, 2008 April 1)
|
||||
Works OK with Vim in an xterm.
|
||||
|
||||
Splitting quickfix window messes up window layout. (Marius Gedminas, 2007 Apr
|
||||
25)
|
||||
Fix for matchparen HL doesn't work. beep.
|
||||
|
||||
Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520
|
||||
(Martin Stubenschrott)
|
||||
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .
|
||||
Crash with dragn-n-drop of file combined with netrw (Marius Gedminas, 2008 Jun
|
||||
11) I can't reproduce it.
|
||||
|
||||
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.
|
||||
Win32: associating a type with Vim doesn't take care of space after a
|
||||
backslash? (Robert Vibrant, 2008 Jun 5)
|
||||
|
||||
":let &g:tw = 44" sets the local option value. (Cyril Slobin, 2008 Apr 25)
|
||||
|
||||
After using <Tab> for command line completion after ":ta blah" and getting E33
|
||||
(no tags file), further editing the command to e.g., ":echo 'blah'", the
|
||||
command is not executed.
|
||||
|
||||
When 'bomb' is changed the window title is updated to show/hide a "+", but the
|
||||
tab page label isn't. (Patrick Texier, 2008 Jun 24)
|
||||
|
||||
Despite adding save_subexpr() this still doesn't work properly:
|
||||
Regexp: matchlist('12a4aaa', '^\(.\{-}\)\(\%5c\@<=a\+\)\(.\+\)\?')
|
||||
Returns ['12a4', 'aaa', '4aaa'], should be ['12a4', 'aaa', '']
|
||||
Backreference not cleared when retrying after \@<= fails?
|
||||
(Brett Stahlman, 2008 March 8)
|
||||
|
||||
Win32: remote editing fails when the current directory name contains "[".
|
||||
(Ivan Tishchenko, Liu Yubao) Suggested patch by Chris Lubinski: Avoid
|
||||
escaping characters where the backslash is not removed later. Asked Chris for
|
||||
an alternate solution, also for src/ex_getln.c.
|
||||
|
||||
When adding path to 'tags' with a wildcard, it appears only a first match is
|
||||
used. (Erik Falor, 2008 April 18) Or is it that a wildcard in the file name
|
||||
is not supported, only in the path?
|
||||
|
||||
The str2special() function doesn't handle multi-byte characters properly.
|
||||
Patch from Vladimir Vichniakov, 2007 Apr 24.
|
||||
Should clean up the whole function. Also allow modifiers like <S-Char-32>?
|
||||
find_special_key() also has this problem.
|
||||
|
||||
Problem with 'langmap' parsing. (James Vega, 2008 Jan 27)
|
||||
Problem with 'langmap' being used on the rhs of a mapping. (Nikolai Weibull,
|
||||
2008 May 14)
|
||||
|
||||
Problem with CTRL-F. (Charles Campbell, 2008 March 21)
|
||||
Only happens with "gvim -geometry "160x26+4+27" -u NONE -U NONE prop.c".
|
||||
'lines' is 54. (2008 March 27)
|
||||
|
||||
Unexpectedly inserting a double quote. (Anton Woellert, 2008 Mar 23)
|
||||
Works OK when 'cmdheight' is 2.
|
||||
|
||||
The utf class table is missing some entries:
|
||||
0x2212, minus sign
|
||||
0x2217, star
|
||||
0x2500, bar
|
||||
0x26ab, circle
|
||||
|
||||
Visual line mode doesn't highlight properly when 'showbreak' is used and the
|
||||
line doesn't fit. (Dasn, 2008 May 1)
|
||||
|
||||
GUI: In Normal mode can't yank the modeless selection. Make "gy" do this?
|
||||
Works like CTRL-Y in Command line mode.
|
||||
|
||||
Mac: patch for mouse wheel scroll under Leopard. (Eckehard Berns, 2007 Dec 7)
|
||||
|
||||
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)
|
||||
Mac: Patch for configure: remove arch from ruby link args. (Knezevic, 2008
|
||||
Mar 5) Alternative: Kazuki Sakamoto, Mar 7.
|
||||
|
||||
When 'virtualedit' is set a "p" of a block just past the end of the line
|
||||
inserts before the cursor. (Engelke)
|
||||
":emenu" works with the translated menu name. Should also work with the
|
||||
untranslated name. Would need to store both the English and the translated
|
||||
name. Patch by Bjorn Winckler, 2008 Mar 30.
|
||||
|
||||
C't: On utf-8 system, editing file with umlaut through Gnome results in URL
|
||||
with %nn%nn, which is taken as two characters instead of one.
|
||||
Try to reproduce at work.
|
||||
|
||||
Patch for redo register. (Ben Schmidt, 2007 Oct 19)
|
||||
Await response to question to make the register writable.
|
||||
|
||||
Problem with 'ts' set to 9 and 'showbreak' to ">>>". (Matthew Winn, 2007 Oct
|
||||
1)
|
||||
|
||||
"vim -O aa aa" gives only one window. (Zdenek Sekera, 2008 Apr 16)
|
||||
|
||||
Including NFA regexp code:
|
||||
Use "\%#= to set the engine: 0 = automatic, 1 = backtracking, 2 = new.
|
||||
Useful in tests.
|
||||
Performance tests:
|
||||
- ~/vim/test/veryslow.js (file from Daniel Fetchinson)
|
||||
- ~/vim/test/slowsearch
|
||||
- ~/vim/test/rgb.vim
|
||||
- search for a.*e*exn in the vim executable. Go to last line to use
|
||||
'hlsearch'.
|
||||
|
||||
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)
|
||||
Syntax highlighting wrong for transparent region. (Doug Kearns, 2007 Feb 26)
|
||||
Bug in using a transparent syntax region. (Hanlen in vim-dev maillist, 2007
|
||||
Jul 31)
|
||||
|
||||
C syntax: {} inside () causes following {} to be highlighted as error.
|
||||
(Michalis Giannakidis, 2006 Jun 1)
|
||||
|
||||
When 'diffopt' has "context:0" a single deleted line causes two folds to merge
|
||||
and mess up syncing. (Austin Jennings, 2008 Jan 31)
|
||||
|
||||
Gnome improvements: Edward Catmur, 2007 Jan 7
|
||||
Also use Save/Discard for other GUIs
|
||||
|
||||
@ -82,53 +157,62 @@ 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)
|
||||
Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520
|
||||
by Vissale Neang. (Martin Stubenschrott)
|
||||
Asked Vissale to make the scripts more friendly for the Vim distribution.
|
||||
New version received 2008 Jan 6.
|
||||
|
||||
Cheng Fang made javacomplete. (2007 Aug 11)
|
||||
Asked about latest version: 0.77.1 is on www.vim.org.
|
||||
|
||||
More AmigaOS4 patches. (Peter Bengtsson, Nov 9)
|
||||
|
||||
Add v:searchforward variable. Patch by Yakov Lerner, 2006 Nov 18.
|
||||
globpath() doesn't work as expected. The example shows using 'path', but the
|
||||
"**8" form and upwards search are not supported.
|
||||
|
||||
Redraw problem in loop. (Yakov Lerner, 2006 Sep 7)
|
||||
Error when cancelling completion menu and auto-formatting. (Tim Weber, 2008
|
||||
Apr 17)
|
||||
|
||||
Problem with compound words? (Bert, 2008 May 6)
|
||||
No warning for when flags are defined after they are used in an affix.
|
||||
|
||||
With Visual selection, "r" and then CTRL-C Visual mode is stopped but the
|
||||
highlighting is not removed.
|
||||
|
||||
Screen redrawing when continuously updating the buffer and resizing the
|
||||
terminal. (Yakov Lerner, 2006 Sept 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.
|
||||
Autoconf problem: when checking for iconv library we may add -L/usr/local/lib,
|
||||
but when compiling further tests -liconv is added without the -L argument,
|
||||
that may fail (e.g., sizeof(int)). (Blaine, 2007 Aug 21)
|
||||
|
||||
When opening quickfix window, disable spell checking?
|
||||
|
||||
Popup menu redraw: Instead of first redrawing the text and then drawing the
|
||||
popup menu over it, first draw the new popup menu, remember its position and
|
||||
size and then redraw the text, skipping the characters under the popup menu.
|
||||
This should avoid flicker. Other solution by A.Politz, 2007 Aug 22.
|
||||
|
||||
Spell checking: Add a way to specify punctuation characters. Add the
|
||||
superscript numbers by default: 0x2070, 0xb9, 0xb2, 0xb3, 0x2074 - 0x2079.
|
||||
|
||||
Windows 98: pasting from the clipboard with text from another application has
|
||||
a trailing NUL. (Joachim Hofmann) Perhaps the length specified for CF_TEXT
|
||||
isn't right?
|
||||
|
||||
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
|
||||
When the file name has parenthesis, e.g., "foo (bar).txt", ":!ls '%'" has the
|
||||
parenthesis escaped but not the space. That's inconsistent. Either escape
|
||||
neither or both. No escaping might be best, because it doesn't depend on
|
||||
particularities of the shell. (Zvi Har'El, 2007 Nov 10) (Teemu Likonen, 2008
|
||||
Jun 3)
|
||||
However, for backwards compatibility escaping might be necessary. Check if
|
||||
the user put quotes around the expanded item?
|
||||
|
||||
Color for cUserLabel should differ from case label, so that a mistake in a
|
||||
switch list is noticed:
|
||||
@ -138,18 +222,27 @@ switch list is noticed:
|
||||
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.
|
||||
|
||||
Netbeans problem. Use "nc -l 127.0.0.1 55555" for the server, then run gvim
|
||||
with "gvim -nb:localhost:55555:foo". From nc do: '1:editFile!0 "foo"'. Then
|
||||
go to Insert mode and add a few lines. Then backspacing every other time
|
||||
moves the cursor instead of deleting. (Chris Kaiser, 2007 Sep 25)
|
||||
|
||||
Redraw problem when appending digraph causes line to wrap. (James Vega, 2007
|
||||
Sep 18)
|
||||
|
||||
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.
|
||||
Update 2007 May 22 for Vim 7.1
|
||||
|
||||
Win32: Patch for convert_filterW(). (Taro Muraoka, 2007 Mar 2)
|
||||
|
||||
Win32: Patch for cscope external command. (Mike Williams, 2007 Aug 7)
|
||||
|
||||
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
|
||||
@ -166,12 +259,14 @@ 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)
|
||||
Patch by Alex Dobrynin, 2007 Jun 3. Also fixes other scroll wheel problems.
|
||||
|
||||
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)
|
||||
Win32: using "gvim --remote-tab-silent fname" sometimes gives an empty screen
|
||||
with the more prompt. Caused by setting the guitablabel? (Thomas Michael
|
||||
Engelke, 2007 Dec 20 - 2008 Jan 17)
|
||||
|
||||
Win64: diff.exe crashes on Win64. (Julianne Bailey, 2006 Dec 12)
|
||||
Build another diff.exe somehow?
|
||||
@ -179,48 +274,46 @@ 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.
|
||||
Win32: patch for fullscreen mode. (Liushaolin, 2008 April 17)
|
||||
|
||||
Pressing the 'pastetoggle' key doesn't update the statusline. (Jan Christoph
|
||||
Ebersbach, 2008 Feb 1)
|
||||
|
||||
Menu item that does "xxd -r" doesn't work when 'fileencoding' is utf-16.
|
||||
Check for this and use iconv? (Edward L. Fox, 2007 Sep 12)
|
||||
Does the conversion in the other direction work when 'filenecodings' is set
|
||||
properly?
|
||||
|
||||
Cursor displayed in the wrong position when using 'numberwidth'. (James Vega,
|
||||
2007 Jun 21)
|
||||
|
||||
When $VAR contains a backslash expand('$VAR') removes it. (Teemu Likonen, 2008
|
||||
Jun 18)
|
||||
|
||||
If the variable "g:x#y#z" exists completion after ":echo g:x#" doesn't work.
|
||||
|
||||
F1 - F4 in an xterm produce a different escape sequence when used with a
|
||||
modifier key. Need to catch three different sequences. Use K_ZF1, like
|
||||
K_ZHOME? (Dickey, 2007 Dec 2)
|
||||
|
||||
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.
|
||||
|
||||
Patch to use xterm mouse codes for screen. (Micah Cowan, 2007 May 8)
|
||||
When using --remote-silent and the file name matches 'wildignore' get an E479
|
||||
error. without --remoete-silent it works fine. (Ben Fritz, 2008 Jun 20)
|
||||
|
||||
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.
|
||||
|
||||
@ -232,26 +325,24 @@ character, don't offer "ignore" and "add to word list".
|
||||
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.
|
||||
|
||||
Changing 'guifont' in the console causes an uneccessary redraw.
|
||||
|
||||
"vim -C" often has 'nocompatible', because it's set in some startup script.
|
||||
Set 'compatible' after startup is done? Patch by James Vega, 2008 Feb 7.
|
||||
|
||||
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)
|
||||
|
||||
VMS: VFC files are in some cases truncated during reading (Zoltan Arpadffy)
|
||||
|
||||
input() completion should not insert a backslash to escape a space in a file
|
||||
name?
|
||||
|
||||
@ -260,10 +351,6 @@ 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 "\\("
|
||||
@ -278,9 +365,10 @@ 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)
|
||||
Gvimext: patch to add "Edit with single Vim &tabbed" menu entry.
|
||||
Just have two choices, always using one Vim and selecting between using an
|
||||
argument list or opening each file in a separate tab.
|
||||
(Erik Falor, 2008 May 21)
|
||||
|
||||
GUI: When combining fg en bg make sure they are not equal.
|
||||
|
||||
@ -289,22 +377,27 @@ 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)
|
||||
When showing a diff between a non-existant file and an existing one, with the
|
||||
cursor in the empty buffer, the other buffer only shows the last line. Change
|
||||
the "insert" into a change from one line to many? (Yakov Lerner, 2008 May 27)
|
||||
|
||||
Add autocommand for when a tabpage is being closed. Also for when a tab page
|
||||
has been created.
|
||||
|
||||
Using ":make" blocks Vim. Allow running one make in the background (if the
|
||||
shell supports it), catch errors in a file and update the error list on the
|
||||
fly. A bit like "!make > file&" and repeating ":cf file". ":bgmake",
|
||||
background make. ":bgcancel" interrupts it.
|
||||
A.Politz may work on this.
|
||||
|
||||
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
|
||||
@ -327,6 +420,13 @@ previous version.
|
||||
|
||||
For Aap: include a config.arg.example file with hints how to use config.arg.
|
||||
|
||||
Command line completion when 'cmdheight' is maximum and 'wildmenu' is set,
|
||||
only one buffer line displayed, causes display errors.
|
||||
|
||||
Completing with 'wildmenu' and using <Up> and <Down> to move through directory
|
||||
tree stops unexpectedly when using ":cd " and entering a directory that
|
||||
doesn't contain other directories.
|
||||
|
||||
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
|
||||
@ -348,9 +448,6 @@ 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"
|
||||
@ -362,6 +459,15 @@ Campbell 2006 Jul 06.
|
||||
|
||||
Syntax HL error caused by "containedin". (Peter Hodge, 2006 Oct 6)
|
||||
|
||||
":help s/~" jumps to *s/\~*, while ":help s/\~" doesn't find anything. (Tim
|
||||
Chase)
|
||||
|
||||
A custom completion function in a ":command" cannot be a Funcref. (Andy
|
||||
Wokula, 2007 Aug 25)
|
||||
|
||||
Problem with using :redir in user command completion function? (Hari Krishna
|
||||
Dara, 2006 June 21)
|
||||
|
||||
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)
|
||||
@ -374,21 +480,20 @@ 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)
|
||||
|
||||
Problem with using :redir in user command completion function? (Hari Krishna
|
||||
Dara, 2006 June 21)
|
||||
GTK: when using the -geom argument with an offset from the right edge and the
|
||||
size is smaller than the default, the Vim window is not positioned properly.
|
||||
|
||||
GTK: when editing a directory with the netrw plugin in a terminal and doing
|
||||
":gui" Vim hangs in obtaining the selection. Workaround patch 7.1.209 is a
|
||||
hack (timeout after 3 seconds). Why don't we get the selection here?
|
||||
|
||||
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
|
||||
@ -401,28 +506,22 @@ 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.
|
||||
GTK: when the Tab pages bar appears or disappears while the window is
|
||||
maximized the window is no longer maximized. Patch that has some idea but
|
||||
doesn't work from Geoffrey Antos, 2008 May 5.
|
||||
|
||||
The magic clipboard format "VimClipboard2" appears in several places. Should
|
||||
be only one.
|
||||
|
||||
"vim -C" often has 'nocompatible', because it's set somewhere in a startup
|
||||
script. Do "set compatible" after startup?
|
||||
|
||||
It's difficult to debug numbered functions (function in a Dictionary). Print
|
||||
the function name before resolving it to a number?
|
||||
let d = {}
|
||||
@ -433,62 +532,76 @@ the function name before resolving it to a number?
|
||||
|
||||
Add a mark for the other end of the Visual area (VIsual pos). '< and '> are
|
||||
only set after Visual moded is ended.
|
||||
Also add a variable for the Visual mode. So that this mode and '< '> can be
|
||||
used to set what "gv" selects. (Ben Schmidt)
|
||||
|
||||
Win32: When running ":make" and 'encoding' differs from the system locale, the
|
||||
output should be converted. Esp. when 'encoding' is "utf-8". (Yongwei Wu)
|
||||
Should we use 'termencoding' for this?
|
||||
|
||||
Win32, NTFS: When editing an specific infostream directly and 'backupcopy' is
|
||||
"auto" should detect this situation and work like 'backupcopy' is "yes". File
|
||||
name is something like "c:\path\foo.txt:bar", includes a colon. (Alex
|
||||
Jakushev, 2008 Feb 1)
|
||||
|
||||
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 adding ":lscscope". (Navdeep Parhar, 2007 Apr 26; update 2008 Apr
|
||||
23)
|
||||
|
||||
Patch for improving regexp speed by not freeing memory. (Alexei Alexandrov,
|
||||
2007 Feb 6)
|
||||
":mkview" isn't called with the right buffer argument. Happens when using
|
||||
tabs and the autocommand "autocmd BufWinLeave * mkview". (James Vega, 2007
|
||||
Jun 18)
|
||||
|
||||
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)
|
||||
Is it possible to use "foo#var" instead of "g:foo#var" inside a function?
|
||||
|
||||
Syntax HL: When using "nextgroup" and the group has an empty match, there is
|
||||
no search at that position for another match. (Lukas Mai, 2008 April 11)
|
||||
|
||||
Spell menu: When using the Popup menu to select a replacement word,
|
||||
":spellrepeat" doesn't work. SpellReplace() uses setline(). Can it use "z="
|
||||
somehow? Or use a new function.
|
||||
|
||||
In gvim the backspace key produces a backspace character, but on Linux the
|
||||
VERASE key is Delete. Set VERASE to Backspace? (patch by Stephane Chazelas,
|
||||
2007 Oct 16)
|
||||
|
||||
TermResponse autocommand isn't always triggered when using vimdiff. (Aron
|
||||
Griffis, 2007 Sep 19)
|
||||
|
||||
Patch for supporting #rrggbb in color terminals. (Matt Wozniski)
|
||||
|
||||
Create a gvimtutor.1 file and change Makefiles to install it.
|
||||
|
||||
|
||||
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)
|
||||
Vim 7.3:
|
||||
- Add patch for 'relativenumber' option? Markus Heidelberg, 2008 Feb 21
|
||||
- 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:
|
||||
More patches:
|
||||
- Add 'cscopeignorecase' option. (Liang Wenzhi, 2006 Sept 3)
|
||||
- Argument for feedkeys() to prepend to typeahead (Yakov Lerner, 2006 Oct
|
||||
21)
|
||||
@ -503,7 +616,8 @@ Patches:
|
||||
- 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)
|
||||
- gettabvar() and settabvar() functions. (Yegappan Lakshmanan, 2007 Sep 13,
|
||||
2008 Jun 12)
|
||||
- recognize hex numbers better. (Mark Manning, 2006 Sep 13)
|
||||
|
||||
|
||||
@ -520,7 +634,7 @@ Awaiting updated patches:
|
||||
- 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?
|
||||
be used instead? A.Politz is looking into a solution.
|
||||
8 Win32: Add minidump generation. (George Reilly, 2006 Apr 24)
|
||||
8 Add ":n" to fnamemodify(): normalize path, remove "../" when possible.
|
||||
Aric Blumer has a patch for this. He will update the patch for 6.3.
|
||||
@ -528,8 +642,7 @@ Awaiting updated patches:
|
||||
Update 2004 Sep 6.
|
||||
How does this work? Missing comments.
|
||||
- Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav
|
||||
Smilauer, 2004 Sep 13, fix Oct 31)
|
||||
Asked for improvements 2004 Dec 20.
|
||||
Smilauer, 2004 Sep 13, fix Oct 31, update 2007 May 30)
|
||||
8 Add a few more command names to the menus. Patch from Jiri Brezina
|
||||
(28 feb 2002). Will mess the translations...
|
||||
7 ATTENTION dialog choices are more logical when "Delete it' appears
|
||||
@ -566,7 +679,9 @@ Awaiting updated patches:
|
||||
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)
|
||||
col('^') column of first non-white character.
|
||||
Can use "len(substitute(getline('.'), '\S.*', '', ''))
|
||||
+ 1", but that's ugly.
|
||||
7 Add patch from Benoit Cerrina to integrate Vim and Perl functions
|
||||
better. Now also works for Ruby (2001 Nov 10)
|
||||
- Patch from Herculano de Lima Einloft Neto for better formatting of the
|
||||
@ -727,8 +842,6 @@ Win32 GUI known bugs:
|
||||
console, go back to Vim and click "reload" in the dialog for the changed
|
||||
file: Window moves with the cursor!
|
||||
Put focus event in input buffer and let generic Vim code handle it?
|
||||
8 When activating the Vim window with mouse click, don't move cursor to
|
||||
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 Win32 GUI: With maximized window, ":set go-=r" doesn't use the space that
|
||||
@ -1069,10 +1182,10 @@ Macintosh:
|
||||
|
||||
|
||||
"Small" problems:
|
||||
- Can't disable terminal flow control, to enable the use of CTRL-S and
|
||||
CTRL-Q. Add an option for it?
|
||||
- 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
|
||||
@ -1133,7 +1246,6 @@ Macintosh:
|
||||
delay should not be interpreted as a keycode. (Hans Ginzel)
|
||||
7 ":botright 1 new" twice causes all window heights to be changed. Make the
|
||||
bottom window only bigger as much as needed.
|
||||
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 User commands use the context of the script they were defined in. This
|
||||
@ -1144,9 +1256,6 @@ Macintosh:
|
||||
8 The Japanese message translations for MS-Windows are called ja.sjis.po,
|
||||
but they use encoding cp932. Rename the file and check that it still
|
||||
works.
|
||||
9 When a syntax region does not use "keepend" and a contained item does use
|
||||
"extend", this makes the outer region stop at the end of the contained
|
||||
region. (Lutz Eymers) Another example Nov 14 2002.
|
||||
8 A very long message in confirm() can't be quit. Make this possible with
|
||||
CTRL-C.
|
||||
7 clip_x11_own_selection() uses CurrentTime, that is not allowed. VNC X
|
||||
@ -1163,8 +1272,6 @@ Macintosh:
|
||||
9 When "$" is in 'cpoptions' and folding is active, a "C" command changes
|
||||
the folds and resets w_lines_valid. The display updating doesn't work
|
||||
then. (Pritesh Mistry)
|
||||
8 ":s!from!to!" works, but ":smagic!from!to!" doesn't. It sees the "!" as a
|
||||
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 "+"
|
||||
@ -1176,8 +1283,6 @@ Macintosh:
|
||||
9 When getting focus while writing a large file, could warn for this file
|
||||
being changed outside of Vim. Avoid checking this while the file is being
|
||||
written.
|
||||
9 The "Error detected while processing modelines" message should have an
|
||||
error number.
|
||||
7 The message in bt_dontwrite_msg() could be clearer.
|
||||
8 The script ID that is stored with an option and displayed with ":verbose
|
||||
set" isn't reset when the option is set internally. For example when
|
||||
@ -1517,6 +1622,7 @@ Documentation:
|
||||
look at the help for 'winaltkeys'.
|
||||
7 Add a help.vim plugin that maps <Tab> to jump to the next tag in || and
|
||||
<C-Tab> (and <S-Tab>) to the previous tag.
|
||||
Patch by Balazs Kezes, 2007 Dec 30. Remark from A. Politz.
|
||||
- Check text editor compendium for vi and Vim remarks.
|
||||
|
||||
|
||||
@ -1610,6 +1716,8 @@ Spell checking:
|
||||
- Considering Hunspell 1.1.4:
|
||||
What does MAXNGRAMSUGS do?
|
||||
Is COMPLEXPREFIXES necessary when we have flags for affixes?
|
||||
- Support spelling words in CamelCase as if they were two separate words.
|
||||
Requires some option to enable it. (Timothy Knox)
|
||||
- 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)
|
||||
@ -1675,6 +1783,8 @@ Spell checking:
|
||||
http://spellchecker.mozdev.org/source.html
|
||||
http://whiteboard.openoffice.org/source/browse/whiteboard/lingucomponent/source/spellcheck/myspell/
|
||||
author: Kevin Hendricks <kevin.hendricks@sympatico.ca>
|
||||
8 It is currently not possible to mark "can not" as rare, because "can" and
|
||||
"not" are good words. Find a way to let "rare" overrule "good"?
|
||||
8 Make "en-rare" spell file? Ask Charles Campbell.
|
||||
8 The English dictionaries for different regions are not consistent in their
|
||||
use of words with a dash.
|
||||
@ -1686,6 +1796,8 @@ Spell checking:
|
||||
|
||||
|
||||
Diff mode:
|
||||
9 Instead invoking an external diff program, use builtin code. One can be
|
||||
found here: http://www.ioplex.com/~miallen/libmba/dl/src/diff.c
|
||||
8 Use diff mode to show the changes made in a buffer (compared to the file).
|
||||
Use an unnamed buffer, like doing:
|
||||
new | set bt=nofile | r # | 0d_ | diffthis | wincmd p | diffthis
|
||||
@ -1767,6 +1879,9 @@ Multi-byte characters:
|
||||
More generic solution: support a filter (e.g., by calling a function).
|
||||
8 When a file was converted from 'fileencoding' to 'encoding', a tag search
|
||||
should also do this on the search pattern. (Andrzej M. Ostruszka)
|
||||
8 When filtering changes the encoding 'fileencoding' may not work. E.g.,
|
||||
when using xxd and 'fileencoding' is "utf-16". Add an option to set a
|
||||
different fileencoding for filter output?
|
||||
7 When converting a file fails, mention which byte could not be converted,
|
||||
so that the user can fix the problem.
|
||||
8 Add configure option to be able to disable using the iconv library. (Udo
|
||||
@ -1775,7 +1890,14 @@ Multi-byte characters:
|
||||
8 Should add test for using various commands with multi-byte characters.
|
||||
8 'infercase' doesn't work with multi-byte characters.
|
||||
8 toupper() function doesn't handle byte count changes.
|
||||
7 When searching, should order of composing characters be ignored?
|
||||
7 Searching and composing characters:
|
||||
When searching, should order of composing characters be ignored?
|
||||
Add special item to match with a composing character, zero-width, so that
|
||||
one can replace a base character and keep the composing characters.
|
||||
Add a special item to match with a composing character, so that composing
|
||||
characters can be manipulated.
|
||||
Add a modifier to ignore composing characters, only compare base
|
||||
characters. Useful for Hebrew (Ron Aaron)
|
||||
8 Should implement 'delcombine' for command line editing.
|
||||
8 Detect overlong UTF-8 sequences and handle them like illegal bytes.
|
||||
8 ":s/x/\u\1/" doesn't work, making uppercase isn't done for multi-byte
|
||||
@ -2003,6 +2125,8 @@ Syntax highlighting:
|
||||
|
||||
|
||||
Built-in script language:
|
||||
8 Make the filename and line number available to script functions, so that
|
||||
they can give useful debugging info. The whole call stack would be ideal.
|
||||
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)?
|
||||
@ -2067,6 +2191,8 @@ Built-in script language:
|
||||
shorten(fname) shorten a file name, like home_replace()
|
||||
perl(cmd) call Perl and return string
|
||||
inputrl() like input() but right-to-left
|
||||
typed() return the characters typed and consumed (to
|
||||
find out what happened)
|
||||
virtualmode() add argument to obtain whether "$" was used in
|
||||
Visual block mode.
|
||||
getacp() Win32: get codepage (Glenn Maynard)
|
||||
@ -2250,8 +2376,6 @@ Messages:
|
||||
When switching to another file and screen scrolls because of the long
|
||||
message and return must be typed, don't scroll the screen back before
|
||||
redrawing.
|
||||
7 Add an option, which is a regexp, that disables warning messages which
|
||||
match that regexp (Tsirkin).
|
||||
8 When address range is wrong you only get "Invalid range". Be a bit more
|
||||
specific: Negative, beyond last line, reverse range? Include the text.
|
||||
8 Make it possible to ignore errors for a moment ('errorignore'?). Another
|
||||
@ -2661,6 +2785,8 @@ Insert mode completion/expansion:
|
||||
Requires remembering a number of insertions.
|
||||
8 Add 'f' flag to 'complete': Expand file names.
|
||||
Also apply 'complete' to whole line completion.
|
||||
- Add a flag to 'complete' to only scan local header files, not system
|
||||
header files. (Andri Moell)
|
||||
- Make it possible to search include files in several places. Use the
|
||||
'path' option? Can this be done with the dictionary completion (use
|
||||
wildcards in the file name)?
|
||||
@ -2720,11 +2846,14 @@ Command line editing:
|
||||
|
||||
|
||||
Command line completion:
|
||||
8 Completing ":r ~br" should find matching user names.
|
||||
8 Change expand_interactively into a flag that is passed as an argument.
|
||||
8 With command line completion after '%' and '#', expand current/alternate
|
||||
file name, so it can be edited. Also with modifiers, such as "%:h".
|
||||
8 When completing command names, either sort them on the long name, or list
|
||||
them with the optional part inside [].
|
||||
8 Add an option to ignore case when doing interactive completion. So that
|
||||
":e file<Tab>" also lists "Filelist" (sorted after matching case matches).
|
||||
7 Completion of ":map x ": fill in the current mapping, so that it can be
|
||||
edited. (Sven Guckes)
|
||||
- For 'wildmenu': Simplify "../bar" when possible.
|
||||
@ -2769,6 +2898,9 @@ Insert mode:
|
||||
Perhaps it can be allowed a single time, to be able to do
|
||||
"<C-O>10axyz<Esc>". Nesting this further is confusing.
|
||||
":map <F2> 5aabc<Esc>" works only once from Insert mode.
|
||||
8 When using CTRL-G CTRL-O do like CTRL-\ CTRL-O, but when returning with
|
||||
the cursor in the same position and the text didn't change continue the
|
||||
same change, so that "." repeats the whole insert.
|
||||
7 Use CTRL-G <count> to repeat what follows. Useful for inserting a
|
||||
character multiple times or repeating CTRL-Y.
|
||||
7 Use 'matchpairs' for 'showmatch': When inserting a character check if it
|
||||
@ -2790,7 +2922,14 @@ Insert mode:
|
||||
|
||||
|
||||
'cindent', 'smartindent':
|
||||
9 ") :" confuses continuation line: (Colin Bennett, 2007 Dec 14)
|
||||
cout << "a"
|
||||
<< ") :"
|
||||
<< "y";
|
||||
8 Lisp indenting: "\\" confuses the indenter. (Dorai Sitaram, 2006 May 17)
|
||||
8 Why are continuation lines outside of a {} block not indented? E.g.:
|
||||
long_type foo =
|
||||
value;
|
||||
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.
|
||||
@ -2893,6 +3032,7 @@ Virtual edit:
|
||||
|
||||
|
||||
Text objects:
|
||||
8 Add text object for fold, so that it can be yanked when it's open.
|
||||
8 Add test script for text object commands "aw", "iW", etc.
|
||||
8 Add text object for part of a CamelHumpedWord and under_scored_word.
|
||||
(Scott Graham) "ac" and "au"?
|
||||
@ -2903,7 +3043,8 @@ Text objects:
|
||||
8 Add text object for any kind of parens, also multi-byte ones.
|
||||
7 Add text object for current search pattern: "a/" and "i/". Makes it
|
||||
possible to turn text highlighted for 'hlsearch' into a Visual area.
|
||||
8 Add a way to make an ":omap" for a user-defined text object.
|
||||
8 Add a way to make an ":omap" for a user-defined text object. Requires
|
||||
changing the starting position in oap->start.
|
||||
8 Add "gp" and "gP" commands: insert text and make sure there is a single
|
||||
space before it, unless at the start of the line, and after it, unless at
|
||||
the end of the line or before a ".".
|
||||
@ -2990,6 +3131,7 @@ More advanced repeating commands:
|
||||
- Add "." command for visual mode: redo last visual command (e.g. ":fmt").
|
||||
7 Repeating "d:{cmd}" with "." doesn't work. (Benji Fisher) Somehow remember
|
||||
the command line so that it can be repeated?
|
||||
- Add "gn": repeat last movement command. Including count.
|
||||
- Add "." command after operator: repeat last command of same operator. E.g.
|
||||
"c." will repeat last change, also when "x" used since then (Webb).
|
||||
"y." will repeat last yank.
|
||||
@ -3136,24 +3278,29 @@ Searching:
|
||||
"\d".
|
||||
7 Add a way to specify characters in <C-M> or <Key> form. Could be
|
||||
\%<C-M>.
|
||||
8 Flags that apply to the whole pattern.
|
||||
This works for all places where a regexp is used.
|
||||
Add "\q" to not store this pattern as the last search pattern?
|
||||
8 Add an argument after ":s/pat/str/" for a range of matches. For example,
|
||||
":s/pat/str/#3-4" to replace only the third and fourth "pat" in a line.
|
||||
8 When 'iskeyword' is changed the matches from 'hlsearch' may change. (Benji
|
||||
Fisher) redraw if some options are set while 'hlsearch' is set?
|
||||
8 Add an option not to use 'hlsearch' highlighting for ":s" and ":g"
|
||||
commands. (Kahn) It would work like ":noh" is used after that command.
|
||||
Also: An extra flag to do this once, and a flag to keep the existing
|
||||
search pattern.
|
||||
- Make 'hlsearch' a local/global option, so that it can be disabled in some
|
||||
of the windows.
|
||||
- Add \%h{group-name}; to search for a specific highlight group.
|
||||
Add \%s{syntax-group}; to search for a specific syntax group.
|
||||
- Support Perl regexp. Use PCRE (Perl Compatible RE) package. (Shade)
|
||||
Or translate the pattern to a Vim one.
|
||||
Don't switch on with an option for typed commands/mappings/functions, it's
|
||||
too confusing. Use "\@@" in the pattern, to avoid incompatibilities.
|
||||
7 Add POSIX regexp, like Nvi, with 'extended' option? It's like very-magic.
|
||||
8 Add a way to access the last substitute text, what is used for ":s//~/".
|
||||
Can't use the ~ register, it's already used for drag & drop.
|
||||
- Remember flags for backreferenced items, so that "*" can be used after it.
|
||||
Check with "\(\S\)\1\{3}". (Hemmerling)
|
||||
8 Flags that apply to the whole pattern.
|
||||
This works for all places where a regexp is used.
|
||||
Add "\q" to not store this pattern as the last search pattern?
|
||||
- Add flags to search command (also for ":s"?):
|
||||
i ignore case
|
||||
I use case
|
||||
@ -3206,11 +3353,18 @@ Searching:
|
||||
|
||||
|
||||
Undo:
|
||||
9 After undo/redo, in the message show whether the buffer is modified or
|
||||
not.
|
||||
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 See ":e" as a change operation, find the changes and add them to the
|
||||
undo info. Also be able to undo the "Reload file" choice for when a file
|
||||
was changed outside of Vim.
|
||||
Would require doing a diff between the buffer text and the file and
|
||||
storing the differences.
|
||||
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.
|
||||
@ -3218,8 +3372,6 @@ Undo:
|
||||
before some time/date can be flushed. 'undopersist' gives maximum time to
|
||||
keep undo: "3h", "1d", "2w", "1y", etc. For the file use dot and
|
||||
extension: ".filename.un~" (like swapfile but "un~" instead of "swp").
|
||||
8 See ":e" as a change operation, find the changes and add them to the
|
||||
undo info. Needed for when an external tool changes the file.
|
||||
- Make it possible to undo all the commands from a mapping, including a
|
||||
trailing unfinished command, e.g. for ":map K iX^[r".
|
||||
- When accidentally hitting "R" instead of Ctrl-R, further Ctrl-R is not
|
||||
@ -3318,6 +3470,7 @@ Viminfo:
|
||||
name. (Schild)
|
||||
8 Keep the last used directory of the file browser (File/Open menu).
|
||||
8 Remember the last used register for "@@".
|
||||
8 Remember the redo buffer, so that "." works after restarting.
|
||||
8 Remember a list of last accessed files. To be used in the
|
||||
"File.Open Recent" menu. Default is to remember 10 files or so.
|
||||
Also remember which files have been read and written. How to display
|
||||
@ -3336,6 +3489,11 @@ Modelines:
|
||||
8 Before trying to execute a modeline, check that it looks like one (valid
|
||||
option names). If it's very wrong, silently ignore it.
|
||||
Ignore a line that starts with "Subject: ".
|
||||
- Add an option to whitelist options that are allowed in a modeline. This
|
||||
would allow careful users to use modelines, e.g., only allowing
|
||||
'shiftwidth'.
|
||||
- Add an option to let modelines only set local options, not global ones
|
||||
such as 'encoding'.
|
||||
- When an option value is coming from a modeline, do not carry it over to
|
||||
another edited file? Would need to remember the value from before the
|
||||
modeline setting.
|
||||
@ -3417,6 +3575,7 @@ Multiple Windows:
|
||||
|
||||
|
||||
Marks:
|
||||
8 Add ten marks for last changed files: ':0, ':1, etc. One mark per file.
|
||||
8 When cursor is first moved because of scrolling, set a mark at this
|
||||
position. (Rimon Barr) Use '-.
|
||||
8 Add a command to jump to a mark and make the motion inclusive. g'm and g`m?
|
||||
@ -3520,7 +3679,6 @@ Mouse support:
|
||||
8 Add 'mouse' flag, which sets a behavior like Visual mode, but automatic
|
||||
yanking at the button-up event. Or like Select mode, but typing gets you
|
||||
out of Select mode, instead of replacing the text. (Bhaskar)
|
||||
7 Checkout sysmouse() for FreeBSD console mouse support.
|
||||
- Implement mouse support for the Amiga console.
|
||||
- Using right mouse button to extend a blockwise selection should attach to
|
||||
the nearest corner of the rectangle (four possible corners).
|
||||
@ -3575,6 +3733,8 @@ Debug mode:
|
||||
|
||||
|
||||
Various improvements:
|
||||
8 ":sign unplace * file={filename}" should work. Also: ":sign unplace *
|
||||
buffer={bufnr}". So one can remove all signs for one file/buffer.
|
||||
7 Add plugins for formatting? Should be able to make a choice depending on
|
||||
the language of a file (English/Korean/Japanese/etc.).
|
||||
Setting the 'langformat' option to "chinese" would load the
|
||||
@ -3582,6 +3742,7 @@ Various improvements:
|
||||
The plugin would set 'formatexpr' and define the function being called.
|
||||
Edward L. Fox explains how it should be done for most Asian languages.
|
||||
(2005 Nov 24)
|
||||
Alternative: patch for utf-8 line breaking. (Yongwei Wu, 2008 Feb 23)
|
||||
7 [t to move to previous xml/html tag (like "vatov"), ]t to move to next
|
||||
("vatv").
|
||||
7 [< to move to previous xml/html tag, e.g., previous <li>. ]< to move to
|
||||
@ -3601,6 +3762,8 @@ Various improvements:
|
||||
7 Support using ":vert" with User commands. Add expandable items <vert>.
|
||||
Do the same for ":browse" and ":confirm"?
|
||||
For ":silent" and ":debug" apply to the whole user command.
|
||||
More general: need a way to access command modifiers in a user command.
|
||||
Assign them to a v: variable?
|
||||
7 Allow a window not to have a statusline. Makes it possible to use a
|
||||
window as a buffer-tab selection.
|
||||
7 Add an invisible buffer which can be edited. For use in scripts that want
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_04.txt* For Vim version 7.1. Last change: 2006 Jun 21
|
||||
*usr_04.txt* For Vim version 7.2a. Last change: 2006 Jun 21
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_05.txt* For Vim version 7.1. Last change: 2007 May 11
|
||||
*usr_05.txt* For Vim version 7.2a. Last change: 2007 May 11
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_06.txt* For Vim version 7.1. Last change: 2006 Apr 24
|
||||
*usr_06.txt* For Vim version 7.2a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_07.txt* For Vim version 7.1. Last change: 2006 Apr 24
|
||||
*usr_07.txt* For Vim version 7.2a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_12.txt* For Vim version 7.1. Last change: 2007 May 11
|
||||
*usr_12.txt* For Vim version 7.2a. Last change: 2007 May 11
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_20.txt* For Vim version 7.1. Last change: 2006 Apr 24
|
||||
*usr_20.txt* For Vim version 7.2a. Last change: 2006 Apr 24
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*usr_30.txt* For Vim version 7.1. Last change: 2007 Apr 22
|
||||
*usr_30.txt* For Vim version 7.2a. Last change: 2007 Nov 10
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -200,14 +200,14 @@ Then have Vim read this file with: >
|
||||
Jumping to errors will work like with the ":make" command.
|
||||
|
||||
==============================================================================
|
||||
*30.2* Indenting C files
|
||||
*30.2* Indenting C style text
|
||||
|
||||
A program is much easier to understand when the lines have been properly
|
||||
indented. Vim offers various ways to make this less work.
|
||||
For C programs set the 'cindent' option. Vim knows a lot about C programs
|
||||
and will try very hard to automatically set the indent for you. Set the
|
||||
'shiftwidth' option to the amount of spaces you want for a deeper level. Four
|
||||
spaces will work fine. One ":set" command will do it: >
|
||||
indented. Vim offers various ways to make this less work. For C or C style
|
||||
programs like Java or C++, set the 'cindent' option. Vim knows a lot about C
|
||||
programs and will try very hard to automatically set the indent for you. Set
|
||||
the 'shiftwidth' option to the amount of spaces you want for a deeper level.
|
||||
Four spaces will work fine. One ":set" command will do it: >
|
||||
|
||||
:set cindent shiftwidth=4
|
||||
|
||||
@ -451,7 +451,7 @@ in your text. The second time, Vim takes out the 4 spaces and puts in a <Tab>
|
||||
(thus taking you to column 8). Thus Vim uses as many <Tab>s as possible, and
|
||||
then fills up with spaces.
|
||||
When backspacing it works the other way around. A <BS> will always delete
|
||||
the amount specified with 'softtabstop'. Then <Tabs> are used as many as
|
||||
the amount specified with 'softtabstop'. Then <Tab>s are used as many as
|
||||
possible and spaces to fill the gap.
|
||||
The following shows what happens pressing <Tab> a few times, and then using
|
||||
<BS>. A "." stands for a space and "------->" for a <Tab>.
|
||||
|
@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.1. Last change: 2008 Jan 11
|
||||
*various.txt* For Vim version 7.2a. Last change: 2008 Jun 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -123,7 +123,7 @@ g8 Print the hex values of the bytes used in the
|
||||
|
||||
*:#!*
|
||||
:#!{anything} Ignored, so that you can start a Vim script with: >
|
||||
#!/usr/bin/env vim -S
|
||||
#!vim -S
|
||||
echo "this is a Vim script"
|
||||
quit
|
||||
<
|
||||
@ -226,7 +226,8 @@ g8 Print the hex values of the bytes used in the
|
||||
":!echo ! \! \\!" executes "echo ls ! \!".
|
||||
After the command has been executed, the timestamp of
|
||||
the current file is checked |timestamp|.
|
||||
There cannot be a '|' in {cmd}, see |:bar|.
|
||||
A '|' in {cmd} is passed to the shell, you cannot use
|
||||
it to append a Vim command. See |:bar|.
|
||||
A newline character ends {cmd}, what follows is
|
||||
interpreted as a following ":" command. However, if
|
||||
there is a backslash before the newline it is removed
|
||||
@ -315,6 +316,7 @@ N *+find_in_path* include file searches: |[I|, |:isearch|,
|
||||
N *+folding* |folding|
|
||||
*+footer* |gui-footer|
|
||||
*+fork* Unix only: |fork| shell commands
|
||||
*+float* Floating point support
|
||||
N *+gettext* message translations |multi-lang|
|
||||
*+GUI_Athena* Unix only: Athena |GUI|
|
||||
*+GUI_neXtaw* Unix only: neXtaw |GUI|
|
||||
@ -343,6 +345,7 @@ B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
|
||||
N *+mouse_gpm* Unix only: Linux console mouse handling |gpm-mouse|
|
||||
B *+mouse_netterm* Unix only: netterm mouse handling |netterm-mouse|
|
||||
N *+mouse_pterm* QNX only: pterm mouse handling |qnx-terminal|
|
||||
N *+mouse_sysmouse* Unix only: *BSD console mouse handling |sysmouse|
|
||||
N *+mouse_xterm* Unix only: xterm mouse handling |xterm-mouse|
|
||||
B *+multi_byte* Korean and other languages |multibyte|
|
||||
*+multi_byte_ime* Win32 input method for multibyte chars |multibyte-ime|
|
||||
@ -362,7 +365,8 @@ H *+profile* |:profile| command
|
||||
m *+python* Python interface |python|
|
||||
m *+python/dyn* Python interface |python-dynamic| |/dyn|
|
||||
N *+quickfix* |:make| and |quickfix| commands
|
||||
N *+reltime* |reltime()| function
|
||||
N *+reltime* |reltime()| function, 'hlsearch'/'incsearch' timeout,
|
||||
'redrawtime' option
|
||||
B *+rightleft* Right to left typing |'rightleft'|
|
||||
m *+ruby* Ruby interface |ruby|
|
||||
m *+ruby/dyn* Ruby interface |ruby-dynamic| |/dyn|
|
||||
@ -435,10 +439,11 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
:redi[r] >> {file} Redirect messages to file {file}. Append if {file}
|
||||
already exists. {not in Vi}
|
||||
|
||||
:redi[r] @{a-zA-Z}
|
||||
:redi[r] @{a-zA-Z}> Redirect messages to register {a-z}. Append to the
|
||||
contents of the register if its name is given
|
||||
uppercase {A-Z}. For backward compatibility, the ">"
|
||||
after the register name can be omitted. {not in Vi}
|
||||
uppercase {A-Z}. The ">" after the register name is
|
||||
optional. {not in Vi}
|
||||
:redi[r] @{a-z}>> Append messages to register {a-z}. {not in Vi}
|
||||
|
||||
:redi[r] @*>
|
||||
@ -674,10 +679,14 @@ g CTRL-A Only when Vim was compiled with MEM_PROFILING defined
|
||||
:helpgrep uganda\c
|
||||
< Example for searching in French help: >
|
||||
:helpgrep backspace@fr
|
||||
< Cannot be followed by another command, everything is
|
||||
< The pattern does not support line breaks, it must
|
||||
match within one line. You can use |:grep| instead,
|
||||
but then you need to get the list of help files in a
|
||||
complicated way.
|
||||
Cannot be followed by another command, everything is
|
||||
used as part of the pattern. But you can use
|
||||
|:execute| when needed.
|
||||
Compressed help files will not be searched (Debian
|
||||
Compressed help files will not be searched (Fedora
|
||||
compresses the help files).
|
||||
{not in Vi}
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -143,7 +143,7 @@ Place le curseur sur la ligne "num" dans le premier fichier.
|
||||
Si "num" est omis, le curseur sera plac<61> sur la derni<6E>re ligne.
|
||||
.TP
|
||||
+/{motif}
|
||||
Place le curseur sur la premi<6D>re occurence de {motif} dans le premier fichier.
|
||||
Place le curseur sur la premi<6D>re occurrence de {motif} dans le premier fichier.
|
||||
Voir ":help search\-pattern" pour conna<6E>tre les motifs de recherches
|
||||
disponibles.
|
||||
.TP
|
||||
@ -258,7 +258,7 @@ est
|
||||
quitte.
|
||||
.TP
|
||||
\-h
|
||||
Donne une aide succinte sur les arguments et les options de la ligne de
|
||||
Donne une aide succincte sur les arguments et les options de la ligne de
|
||||
commande. Apr<70>s cela,
|
||||
.B Vim
|
||||
quitte.
|
||||
@ -269,7 +269,7 @@ Si
|
||||
a <20>t<EFBFBD> compil<69> avec le support de la fonctionnalit<69> RIGHTLEFT pour l'<27>dition de
|
||||
fichiers de droite <20> gauche et les claviers h<>breu, cette option lance
|
||||
.B Vim
|
||||
en mode Hebreu, c.-<2D>-d. avec les options 'hkmap' et 'rightleft' activ<69>es.
|
||||
en mode H<EFBFBD>breu, c.-<2D>-d. avec les options 'hkmap' et 'rightleft' activ<69>es.
|
||||
Sinon, un message d'erreur est <20>mis et
|
||||
.B Vim
|
||||
quitte.
|
||||
@ -295,7 +295,7 @@ d'
|
||||
.TP
|
||||
\-M
|
||||
N'autorise aucune modification. les options 'modifiable' et 'write' sont
|
||||
desactiv<EFBFBD>es, de sorte que les changements ne sont pas autoris<69>s et que les
|
||||
d<EFBFBD>sactiv<EFBFBD>es, de sorte que les changements ne sont pas autoris<69>s et que les
|
||||
fichiers ne peuvent pas <20>tre <20>crits. Note : ces options peuvent <20>tre activ<69>es
|
||||
pour autoriser les modifications.
|
||||
.TP
|
||||
|
@ -143,7 +143,7 @@ Place le curseur sur la ligne "num" dans le premier fichier.
|
||||
Si "num" est omis, le curseur sera placé sur la dernière ligne.
|
||||
.TP
|
||||
+/{motif}
|
||||
Place le curseur sur la première occurence de {motif} dans le premier fichier.
|
||||
Place le curseur sur la première occurrence de {motif} dans le premier fichier.
|
||||
Voir ":help search\-pattern" pour connaître les motifs de recherches
|
||||
disponibles.
|
||||
.TP
|
||||
@ -258,7 +258,7 @@ est émis et
|
||||
quitte.
|
||||
.TP
|
||||
\-h
|
||||
Donne une aide succinte sur les arguments et les options de la ligne de
|
||||
Donne une aide succincte sur les arguments et les options de la ligne de
|
||||
commande. Après cela,
|
||||
.B Vim
|
||||
quitte.
|
||||
@ -269,7 +269,7 @@ Si
|
||||
a été compilé avec le support de la fonctionnalité RIGHTLEFT pour l'édition de
|
||||
fichiers de droite à gauche et les claviers hébreu, cette option lance
|
||||
.B Vim
|
||||
en mode Hebreu, c.-à-d. avec les options 'hkmap' et 'rightleft' activées.
|
||||
en mode Hébreu, c.-à-d. avec les options 'hkmap' et 'rightleft' activées.
|
||||
Sinon, un message d'erreur est émis et
|
||||
.B Vim
|
||||
quitte.
|
||||
@ -295,7 +295,7 @@ d'écrire le fichier.
|
||||
.TP
|
||||
\-M
|
||||
N'autorise aucune modification. les options 'modifiable' et 'write' sont
|
||||
desactivées, de sorte que les changements ne sont pas autorisés et que les
|
||||
désactivées, de sorte que les changements ne sont pas autorisés et que les
|
||||
fichiers ne peuvent pas être écrits. Note : ces options peuvent être activées
|
||||
pour autoriser les modifications.
|
||||
.TP
|
||||
|
@ -1,4 +1,4 @@
|
||||
*workshop.txt* For Vim version 7.1. Last change: 2006 Apr 24
|
||||
*workshop.txt* For Vim version 7.2a. Last change: 2006 Apr 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
|
18
runtime/ftplugin/cdrdaoconf.vim
Normal file
18
runtime/ftplugin/cdrdaoconf.vim
Normal file
@ -0,0 +1,18 @@
|
||||
" Vim filetype plugin file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2007-09-18
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
70
runtime/ftplugin/debcontrol.vim
Normal file
70
runtime/ftplugin/debcontrol.vim
Normal file
@ -0,0 +1,70 @@
|
||||
" Vim filetype plugin file (GUI menu and folding)
|
||||
" Language: Debian control files
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainer: Pierre Habouzit <madcoder@debian.org>
|
||||
" Last Change: 2008-03-08
|
||||
" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/debcontrol.vim;hb=debian
|
||||
|
||||
" Do these settings once per buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin=1
|
||||
|
||||
" {{{1 Local settings (do on every load)
|
||||
if exists("g:debcontrol_fold_enable")
|
||||
setlocal foldmethod=expr
|
||||
setlocal foldexpr=DebControlFold(v:lnum)
|
||||
setlocal foldtext=DebControlFoldText()
|
||||
endif
|
||||
setlocal textwidth=0
|
||||
|
||||
" Clean unloading
|
||||
let b:undo_ftplugin = "setlocal tw< foldmethod< foldexpr< foldtext<"
|
||||
|
||||
" }}}1
|
||||
|
||||
" {{{1 folding
|
||||
|
||||
function! s:getField(f, lnum)
|
||||
let line = getline(a:lnum)
|
||||
let fwdsteps = 0
|
||||
while line !~ '^'.a:f.':'
|
||||
let fwdsteps += 1
|
||||
let line = getline(a:lnum + fwdsteps)
|
||||
if line == ''
|
||||
return 'unknown'
|
||||
endif
|
||||
endwhile
|
||||
return substitute(line, '^'.a:f.': *', '', '')
|
||||
endfunction
|
||||
|
||||
function! DebControlFoldText()
|
||||
if v:folddashes == '-' " debcontrol entry fold
|
||||
let type = substitute(getline(v:foldstart), ':.*', '', '')
|
||||
if type == 'Source'
|
||||
let ftext = substitute(foldtext(), ' *Source: *', ' ', '')
|
||||
return ftext . ' -- ' . s:getField('Maintainer', v:foldstart) . ' '
|
||||
endif
|
||||
let arch = s:getField('Architecture', v:foldstart)
|
||||
let ftext = substitute(foldtext(), ' *Package: *', ' [' . arch . '] ', '')
|
||||
return ftext . ': ' . s:getField('Description', v:foldstart) . ' '
|
||||
endif
|
||||
return foldtext()
|
||||
endfunction
|
||||
|
||||
function! DebControlFold(l)
|
||||
|
||||
" This is for not merging blank lines around folds to them
|
||||
if getline(a:l) =~ '^Source:'
|
||||
return '>1'
|
||||
endif
|
||||
|
||||
if getline(a:l) =~ '^Package:'
|
||||
return '>1'
|
||||
endif
|
||||
|
||||
return '='
|
||||
endfunction
|
||||
|
||||
" }}}1
|
13
runtime/ftplugin/dosini.vim
Normal file
13
runtime/ftplugin/dosini.vim
Normal file
@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Configuration File (ini file) for MSDOS/MS Windows
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2007-08-23
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:; commentstring=;\ %s formatoptions-=t formatoptions+=croql
|
15
runtime/ftplugin/gitconfig.vim
Normal file
15
runtime/ftplugin/gitconfig.vim
Normal file
@ -0,0 +1,15 @@
|
||||
" Vim filetype plugin
|
||||
" Language: git config file
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" Last Change: 2007 Dec 16
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
setlocal comments=:#,:; commentstring=;\ %s
|
||||
|
||||
let b:undo_ftplugin = "setl fo< com< cms<"
|
41
runtime/ftplugin/gitrebase.vim
Normal file
41
runtime/ftplugin/gitrebase.vim
Normal file
@ -0,0 +1,41 @@
|
||||
" Vim filetype plugin
|
||||
" Language: git rebase --interactive
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" Last Change: 2008 Apr 16
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/git.vim
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t
|
||||
if !exists("b:undo_ftplugin")
|
||||
let b:undo_ftplugin = ""
|
||||
endif
|
||||
let b:undo_ftplugin = b:undo_ftplugin."|setl com< cms< fo<"
|
||||
|
||||
function! s:choose(word)
|
||||
s/^\(\w\+\>\)\=\(\s*\)\ze\x\{4,40\}\>/\=(strlen(submatch(1)) == 1 ? a:word[0] : a:word) . substitute(submatch(2),'^$',' ','')/e
|
||||
endfunction
|
||||
|
||||
function! s:cycle()
|
||||
call s:choose(get({'s':'edit','p':'squash'},getline('.')[0],'pick'))
|
||||
endfunction
|
||||
|
||||
command! -buffer -bar Pick :call s:choose('pick')
|
||||
command! -buffer -bar Squash :call s:choose('squash')
|
||||
command! -buffer -bar Edit :call s:choose('edit')
|
||||
command! -buffer -bar Cycle :call s:cycle()
|
||||
" The above are more useful when they are mapped; for example:
|
||||
"nnoremap <buffer> <silent> S :Cycle<CR>
|
||||
|
||||
if exists("g:no_plugin_maps") || exists("g:no_gitrebase_maps")
|
||||
finish
|
||||
endif
|
||||
|
||||
nnoremap <buffer> <expr> K col('.') < 7 && expand('<Lt>cword>') =~ '\X' && getline('.') =~ '^\w\+\s\+\x\+\>' ? 'wK' : 'K'
|
||||
|
||||
let b:undo_ftplugin = b:undo_ftplugin . "|nunmap <buffer> K"
|
@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: C-shell (tcsh)
|
||||
" Maintainer: Gautam Iyer <gautam@math.uchicago.edu>
|
||||
" Last Modified: Wed 04 Feb 2004 04:36:07 PM CST
|
||||
" Last Modified: Sat 16 Jun 2007 04:27:45 PM PDT
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@ -11,7 +11,7 @@ endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=TcshGetIndent()
|
||||
setlocal indentkeys+=e,0=end,0=endsw,*<return> indentkeys-=0{,0},0),:,0#
|
||||
setlocal indentkeys+=e,0=end,0=endsw indentkeys-=0{,0},0),:,0#
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*TcshGetIndent")
|
||||
|
72
runtime/indent/tf.vim
Normal file
72
runtime/indent/tf.vim
Normal file
@ -0,0 +1,72 @@
|
||||
" Vim indent file
|
||||
" Language: tf (TinyFugue)
|
||||
" Maintainer: Christian J. Robinson <infynity@onewest.net>
|
||||
" URL: http://www.infynity.spodzone.com/vim/indent/tf.vim
|
||||
" Last Change: 2002 May 29
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=GetTFIndent()
|
||||
setlocal indentkeys-=0{,0} indentkeys-=0# indentkeys-=:
|
||||
setlocal indentkeys+==/endif,=/then,=/else,=/done,0;
|
||||
|
||||
" Only define the function once:
|
||||
if exists("*GetTFIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
function GetTFIndent()
|
||||
" Find a non-blank line above the current line:
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
" No indent for the start of the file:
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let ind = indent(lnum)
|
||||
let line = getline(lnum)
|
||||
|
||||
" No indentation if the previous line didn't end with "\":
|
||||
" (Could be annoying, but it lets you know if you made a mistake.)
|
||||
if line !~ '\\$'
|
||||
return 0
|
||||
endif
|
||||
|
||||
if line =~ '\(/def.*\\\|/for.*\(%;\s*\)\@\<!\\\)$'
|
||||
let ind = ind + &sw
|
||||
elseif line =~ '\(/if\|/else\|/then\)'
|
||||
if line !~ '/endif'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
elseif line =~ '/while'
|
||||
if line !~ '/done'
|
||||
let ind = ind + &sw
|
||||
endif
|
||||
endif
|
||||
|
||||
let line = getline(v:lnum)
|
||||
|
||||
if line =~ '\(/else\|/endif\|/then\)'
|
||||
if line !~ '/if'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
elseif line =~ '/done'
|
||||
if line !~ '/while'
|
||||
let ind = ind - &sw
|
||||
endif
|
||||
endif
|
||||
|
||||
" Comments at the beginning of a line:
|
||||
if line =~ '^\s*;'
|
||||
let ind = 0
|
||||
endif
|
||||
|
||||
|
||||
return ind
|
||||
|
||||
endfunction
|
16
runtime/keymap/croatian.vim
Normal file
16
runtime/keymap/croatian.vim
Normal file
@ -0,0 +1,16 @@
|
||||
let s:encoding = &enc
|
||||
if s:encoding == 'latin1'
|
||||
if has("unix")
|
||||
let s:encoding = 'iso-8859-2'
|
||||
else
|
||||
let s:encoding = 'cp1250'
|
||||
endif
|
||||
endif
|
||||
|
||||
if s:encoding == 'utf-8'
|
||||
source <sfile>:p:h/croatian_utf-8.vim
|
||||
elseif s:encoding == 'cp1250'
|
||||
source <sfile>:p:h/croatian_cp1250.vim
|
||||
else
|
||||
source <sfile>:p:h/croatian_iso-8859-2.vim
|
||||
endif
|
65
runtime/keymap/croatian_cp1250.vim
Normal file
65
runtime/keymap/croatian_cp1250.vim
Normal file
@ -0,0 +1,65 @@
|
||||
" Vim Keymap file for Croatian characters, classical variant, cp1250 encoding
|
||||
"
|
||||
" Maintainer: Paul B. Mahol <onemda@gmail.com>
|
||||
" Last Changed: 2007 Oct 15
|
||||
|
||||
scriptencoding cp1250
|
||||
|
||||
let b:keymap_name = "croatian-cp1250"
|
||||
" Uncomment line below if you prefer short name
|
||||
"let b:keymap_name = "hr-cp1250"
|
||||
|
||||
loadkeymap
|
||||
z y
|
||||
Z Y
|
||||
y z
|
||||
Y Z
|
||||
[ <09>
|
||||
{ <09>
|
||||
] <09>
|
||||
} <09>
|
||||
; <09>
|
||||
: <09>
|
||||
' <09>
|
||||
" <09>
|
||||
\ <09>
|
||||
| <09>
|
||||
/ -
|
||||
? _
|
||||
> :
|
||||
< ;
|
||||
<EFBFBD> <
|
||||
<EFBFBD> >
|
||||
<EFBFBD> {
|
||||
<EFBFBD> }
|
||||
<EFBFBD> [
|
||||
<EFBFBD> ]
|
||||
<EFBFBD> \
|
||||
<EFBFBD> |
|
||||
= +
|
||||
+ *
|
||||
- '
|
||||
_ ?
|
||||
@ "
|
||||
^ &
|
||||
& /
|
||||
* (
|
||||
( )
|
||||
) =
|
||||
<EFBFBD> ~
|
||||
<EFBFBD> @
|
||||
<EFBFBD> ^
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> `
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
||||
<EFBFBD> <09>
|
@ -1,7 +1,7 @@
|
||||
" Menu translations for Catalan
|
||||
"
|
||||
" Maintainer: Ernest Adrogu<67> <eadrogue@gmx.net>
|
||||
" Last Change: 18 Jan 2004
|
||||
" Last Change: 6 Jun 2008
|
||||
"
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
@ -16,7 +16,6 @@ if &enc != "cp1252" && &enc != "iso-8859-15"
|
||||
scriptencoding latin1
|
||||
endif
|
||||
|
||||
|
||||
" men<65> Ajuda
|
||||
menutrans &Help &Ajuda
|
||||
menutrans &Overview<Tab><F1> &Introducci<EFBFBD><Tab><F1>
|
||||
@ -25,17 +24,18 @@ menutrans &How-to\ links Com\ &fer\.\.\.?
|
||||
menutrans &Find\.\.\. &Cerca\.\.\.
|
||||
menutrans &Credits &Autors
|
||||
menutrans Co&pying Con&dicions
|
||||
menutrans &Sponsor/Register &Patrocini/Registre
|
||||
menutrans O&rphans &Orfes
|
||||
menutrans &Version &Versi<EFBFBD>
|
||||
menutrans &About &Quant\ a\.\.\.
|
||||
" text del di<64>leg Ajuda/Cerca...
|
||||
let g:menutrans_help_dialog = "Introdu<64>u el terme sobre el qual necessiteu ajuda.\n\nUseu el prefix i_ per ordres d'entrada (p.ex.: i_CTRL-X)\nUseu el prefix c_ per ordres de la l<>nia d'ordres (p.ex.: c_<Del>)\nUseu el prefix ' per noms d'opcions (p.ex.: 'shiftwidth')"
|
||||
|
||||
|
||||
" men<65> Fitxer
|
||||
menutrans &File &Fitxer
|
||||
menutrans &Open\.\.\.<Tab>:e &Obre\.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp Obre\ en\ una\ &finestra\ nova\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew Obre\ pestanya\.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew &Nou<Tab>:enew
|
||||
menutrans &Close<Tab>:close &Tanca<Tab>:close
|
||||
menutrans &Save<Tab>:w &Desa<Tab>:w
|
||||
@ -46,7 +46,6 @@ menutrans &Print &Imprimeix
|
||||
menutrans Sa&ve-Exit<Tab>:wqa Desa\ i\ s&urt<Tab>:wqa
|
||||
menutrans E&xit<Tab>:qa &Surt<Tab>:qa
|
||||
|
||||
|
||||
" men<65> Edita
|
||||
menutrans &Edit &Edita
|
||||
menutrans &Undo<Tab>u &Desf<EFBFBD>s<Tab>u
|
||||
@ -58,14 +57,15 @@ menutrans &Paste<Tab>"+gP Engan&xa<Tab>"+gP
|
||||
menutrans Put\ &Before<Tab>[p Posa\ &abans<Tab>[p
|
||||
menutrans Put\ &After<Tab>]p P&osa\ despr<EFBFBD>s<Tab>]p
|
||||
menutrans &Delete<Tab>x Suprimeix<Tab>x
|
||||
menutrans &Select\ all<Tab>ggVG &Selecciona-ho\ tot<Tab>ggVG
|
||||
menutrans &Select\ All<Tab>ggVG &Selecciona-ho\ tot<Tab>ggVG
|
||||
menutrans &Find\.\.\. &Cerca\.\.\.
|
||||
menutrans &Find<Tab>/ &Cerca<Tab>/
|
||||
menutrans Find\ and\ Rep&lace Cerca\ i\ s&ubstitueix
|
||||
menutrans Find\ and\ Rep&lace\.\.\. Cerca\ i\ s&ubstitueix\.\.\.
|
||||
menutrans Find\ and\ Rep&lace<Tab>:%s Cerca\ i\ s&ubstitueix<Tab>:%s
|
||||
menutrans Find\ and\ Rep&lace<Tab>:s Cerca\ i\ s&ubstitueix<Tab>:s
|
||||
menutrans Settings\ &Window &Finestra\ d'opcions
|
||||
menutrans Settings\ &Window Fin&estra\ d'opcions
|
||||
menutrans Startup\ &Settings Opcions\ i&nicials
|
||||
menutrans &Global\ Settings Opcions\ &globals
|
||||
" submen<65> Edita/Opcions Globals
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Ressalt\ de\ &patrons<Tab>:set\ hls!
|
||||
@ -100,7 +100,7 @@ menutrans F&ile\ Settings Opcions\ del\ f&itxer
|
||||
menutrans Soft\ &Tabstop Amplada\ de\ &tabulaci<EFBFBD>
|
||||
menutrans Te&xt\ Width\.\.\. &Amplada\ del\ text\.\.\.
|
||||
menutrans &File\ Format\.\.\. &Format\ del\ fitxer\.\.\.
|
||||
menutrans Select\ Fo&nt\.\.\. Tipus\ de\ &lletra\.\.\.
|
||||
menutrans Select\ Fo&nt\.\.\. &Fosa\.\.\.
|
||||
menutrans C&olor\ Scheme Es&quema\ de\ colors
|
||||
" submen<65> Edita/Esquema de colors
|
||||
menutrans blue blau
|
||||
@ -144,6 +144,25 @@ menutrans &Tools Ei&nes
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] &Salta\ a\ aquesta\ etiqueta<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T Salta\ en&rere<Tab>^T
|
||||
menutrans Build\ &Tags\ File Crea\ un\ fitxer\ d'eti&quetes
|
||||
menutrans &Spelling &Ortografia
|
||||
" submen<65> Eines/Ortografia
|
||||
menutrans &Spell\ Check\ On Activa\ la\ &revisi<EFBFBD>\ ortogr<EFBFBD>fica
|
||||
menutrans Spell\ Check\ &Off &Desactiva\ la\ revisi<EFBFBD>\ ortogr<EFBFBD>fica
|
||||
menutrans To\ &Next\ error<Tab>]s Error\ &seg<EFBFBD>ent<tab>]s
|
||||
menutrans To\ &Previous\ error<Tab>[s Error\ &anterior<tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= Su&ggeriments<Tab>z=
|
||||
menutrans &Repeat\ correction<Tab>:spellrepall Re&peteix\ la\ correcci<EFBFBD><Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" Selecciona\ l'idioma\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" Selecciona\ l'idioma\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" Selecciona\ l'idioma\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" Selecciona\ l'idioma\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" Selecciona\ l'idioma\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" Selecciona\ l'idioma\ "en_us"
|
||||
menutrans Set\ language\ to\ "ca" Selecciona\ l'idioma\ "ca"
|
||||
menutrans Set\ language\ to\ "es" Selecciona\ l'idioma\ "es"
|
||||
menutrans Set\ language\ to\ "fr" Selecciona\ l'idioma\ "fr"
|
||||
menutrans Set\ language\ to\ "it" Selecciona\ l'idioma\ "it"
|
||||
menutrans &Find\ More\ Languages &Cerca\ altres\ idiomes
|
||||
menutrans &Folding &Plecs
|
||||
" submen<65> Eines/Plecs
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Habilita/Deshabilita\ els\ plecs<Tab>zi
|
||||
@ -183,6 +202,7 @@ menutrans Error\ &Window F&inestra\ d'errors
|
||||
menutrans &Open<Tab>:copen &Obre<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose &Tanca<Tab>:cclose
|
||||
menutrans &Set\ Compiler &Compilador
|
||||
menutrans &SeT\ Compiler &Compilador
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd Converteix\ a\ &HEX<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r Torna\ al\ format\ &original<Tab>:%!xxd\ -r
|
||||
|
||||
|
3
runtime/lang/menu_fi.latin1.vim
Normal file
3
runtime/lang/menu_fi.latin1.vim
Normal file
@ -0,0 +1,3 @@
|
||||
" Menu Translations: Finnish for latin 1 encoding
|
||||
|
||||
source <sfile>:p:h/menu_fi_fi.latin1.vim
|
473
runtime/lang/menu_fi_fi.latin1.vim
Normal file
473
runtime/lang/menu_fi_fi.latin1.vim
Normal file
@ -0,0 +1,473 @@
|
||||
" Menu Translations: Finnish
|
||||
" Maintainer: Flammie Pirinen <flammie@iki.fi>
|
||||
" Last Change: 2007 Sep 04
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
finish
|
||||
endif
|
||||
let did_menu_trans = 1
|
||||
|
||||
" Translations should be in latin1, if it requires latin9 or even unicode,
|
||||
" change this:
|
||||
if &enc != "cp1252" && &enc != "iso-8859-15" && &enc != "iso-8859-1"
|
||||
scriptencoding latin1
|
||||
endif
|
||||
|
||||
" Accels: TMYSPIO
|
||||
menutrans &File &Tiedosto
|
||||
" Accels: AJTUSNIDPOE
|
||||
menutrans &Open\.\.\.<Tab>:e &Avaa\.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp Avaa\ &jaettuna\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew Avaa\ &tabissa\.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew &Uusi<Tab>:enew
|
||||
menutrans &Close<Tab>:close &Sulje<Tab>:close
|
||||
" -SEP1-
|
||||
menutrans &Save<Tab>:w Talle&nna<Tab>:w
|
||||
menutrans Save\ &As\.\.\.<Tab>:sav Tallenna\ n&imell<EFBFBD>\.\.\.<Tab>:sav
|
||||
" -SEP2-
|
||||
menutrans Split\ &Diff\ with\.\.\. Jaa\ &diffill<EFBFBD>\.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. Jaa\ &patchilla\.\.\.
|
||||
" -SEP3-
|
||||
menutrans &Print Tul&osta
|
||||
" -SEP4-
|
||||
menutrans Sa&ve-Exit<Tab>:wqa Tall&enna\ ja\ lopeta<Tab>:wqa
|
||||
menutrans E&xit<Tab>:qa &Lopeta<Tab>:qa
|
||||
|
||||
|
||||
menutrans &Edit &Muokkaa
|
||||
" Accels: KPTLOIEJSAHRUYKVNF
|
||||
menutrans &Undo<Tab>u &Kumoa<Tab>u
|
||||
menutrans &Redo<Tab>^R &Palauta<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. &Toista<Tab>\.
|
||||
" -SEP1-
|
||||
menutrans Cu&t<Tab>"+x &Leikkaa<Tab>"+x
|
||||
menutrans &Copy<Tab>"+y K&opioi<Tab>"+y
|
||||
menutrans &Paste<Tab>"+gP L&iit<69><Tab>"+gP
|
||||
menutrans Put\ &Before<Tab>[p Lis<EFBFBD><EFBFBD>\ &ennen<Tab>[p
|
||||
menutrans Put\ &After<Tab>]p Lis<EFBFBD><EFBFBD>\ &j<EFBFBD>lkeen<Tab>]p
|
||||
menutrans &Delete<Tab>x Poi&sta<Tab>x
|
||||
menutrans &Select\ All<Tab>ggVG V&alitse\ kaikki<Tab>ggVG
|
||||
" -SEP2-
|
||||
menutrans &Find\.\.\. &Hae\.\.\.
|
||||
menutrans Find\ and\ Rep&lace\.\.\. Hae\ ja\ ko&rvaa\.\.\.
|
||||
menutrans &Find<Tab>/ &Hae<Tab>/
|
||||
menutrans Find\ and\ Rep&lace<Tab>:%s Hae\ ja\ ko&rvaa<Tab>:%s
|
||||
menutrans Find\ and\ Rep&lace<Tab>:s Hae\ ja\ ko&rvaa<Tab>:s
|
||||
" -SEP3-
|
||||
menutrans Settings\ &Window Aset&usikkuna
|
||||
menutrans Startup\ &Settings &K<EFBFBD>ynnistysasetukset
|
||||
menutrans &Global\ Settings &Yleiset\ asetukset
|
||||
" Submenu:
|
||||
" Accels: KOSHVYIATLEPR
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! &Korostus<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &Ohita\ kirjaintaso<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm! &Suljekorostus<Tab>:set\ sm!
|
||||
|
||||
menutrans &Context\ lines &Huomioitavat\ kontekstirivit
|
||||
" Subsubmenu:
|
||||
" Accels: ELSOA
|
||||
menutrans &Virtual\ Edit &Virtuaalimuokkaus
|
||||
menutrans Never &Ei koskaan
|
||||
menutrans Block\ Selection &Lohkovalinta
|
||||
menutrans Insert\ mode &Sy<EFBFBD>tt<EFBFBD>tila
|
||||
menutrans Block\ and\ Insert L&ohkosy<EFBFBD>tt<EFBFBD>tila
|
||||
menutrans Always &Aina
|
||||
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! S&y<EFBFBD>tt<EFBFBD>tila<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! V&i-tila<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. H&akupolku\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. &T<EFBFBD>gitiedostot\.\.\.
|
||||
" -SEP1-
|
||||
menutrans Toggle\ &Toolbar Ty<EFBFBD>ka&lupalkki
|
||||
menutrans Toggle\ &Bottom\ Scrollbar Vaakavi&erityspalkki
|
||||
menutrans Toggle\ &Left\ Scrollbar Vasen\ &pystyvierityspalkki
|
||||
menutrans Toggle\ &Right\ Scrollbar Oikea\ pystyvie&rityspalkki
|
||||
|
||||
let g:menutrans_path_dialog = "Anna tiedostojen hakupolku.\nErota hakemistot pilkuin."
|
||||
let g:menutrans_tags_dialog = "Anna t<>gitiedostojen nimet.\nErota tidostot pilkuin."
|
||||
|
||||
menutrans F&ile\ Settings Tiedostoasetu&kset
|
||||
" Submenu:
|
||||
" Accels: NLRSTACIBEM
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Rivi&numerointi<Tab>:set\ nu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! &Listaustila<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! &Rivitys<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! &Sanoittainen rivitys<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! Muuta\ &tabit\ v<EFBFBD>leiksi<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! &Automaattinen\ sisennys<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! &C-kielen\ sisennys<Tab>:set\ cin!
|
||||
" -SEP2-
|
||||
menutrans &Shiftwidth S&isennysleveys
|
||||
menutrans Soft\ &Tabstop N<EFBFBD>enn<EFBFBD>ista&bulointi
|
||||
menutrans Te&xt\ Width\.\.\. Tekstinl&eveys\.\.\.
|
||||
menutrans &File\ Format\.\.\. Tiedosto&muoto\.\.\.
|
||||
|
||||
let g:menutrans_textwidth_dialog = "Anna uusi tekstin leveys\n(0 poistaa k<>yt<79>st<73>)"
|
||||
let g:menutrans_fileformat_dialog = "Anaa tiedoston kirjoitusmuoto."
|
||||
let g:menutrans_fileformat_choices = " &Unix \n &Dos \n &Mac \n &Peru "
|
||||
|
||||
menutrans C&olor\ Scheme &V<EFBFBD>riteema
|
||||
menutrans &Keymap &N<EFBFBD>pp<EFBFBD>inkartta
|
||||
menutrans None Ei mik<EFBFBD><EFBFBD>n
|
||||
menutrans Select\ Fo&nt\.\.\. Valitse\ &fontti\.\.\.
|
||||
|
||||
|
||||
menutrans &Tools T&y<EFBFBD>kalut
|
||||
" Accels: ___OTDM__
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] Siirry\ t<EFBFBD>giin<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T Siirry\ takaisin<Tab>^T
|
||||
menutrans Build\ &Tags\ File Luo\ t<EFBFBD>gitiedosto
|
||||
|
||||
" -SEP1-
|
||||
menutrans &Spelling &Oikeinkirjoitus
|
||||
" Submenu:
|
||||
" Accels: OSEKT
|
||||
menutrans &Spell\ Check\ On &Oikaisuluku\ p<EFBFBD><EFBFBD>lle
|
||||
menutrans Spell\ Check\ &Off &Oikaisuluku\ pois\ p<EFBFBD><EFBFBD>lt<EFBFBD>
|
||||
menutrans To\ &Next\ error<Tab>]s &Seuraavaan\ virheeseen<Tab>]s
|
||||
menutrans To\ &Previous\ error<Tab>[s &Edelliseen\ virheeseen<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= Ehdota\ &korjausta<Tab>z=
|
||||
menutrans &Repeat\ correction<Tab>:spellrepall &Toista\ korjaus<Tab>:spellrepall
|
||||
|
||||
menutrans Set\ language\ to\ "en" Aseta\ kieleksi\ en
|
||||
menutrans Set\ language\ to\ "en_au" Aseta\ kieleksi\ en_au
|
||||
menutrans Set\ language\ to\ "en_ca" Aseta\ kieleksi\ en_ca
|
||||
menutrans Set\ language\ to\ "en_gb" Aseta\ kieleksi\ en_gb
|
||||
menutrans Set\ language\ to\ "en_nz" Aseta\ kieleksi\ en_nz
|
||||
menutrans Set\ language\ to\ "en_us" Aseta\ kieleksi\ en_us
|
||||
|
||||
menutrans &Find\ More\ Languages Hae\ lis<EFBFBD><EFBFBD>\ kieli<EFBFBD>
|
||||
|
||||
|
||||
|
||||
menutrans &Folding &Taitokset
|
||||
" Accels: TNVSAPEOKL
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Taitokset<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv &N<EFBFBD>yt<EFBFBD>\ kursorin\ rivi<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx N<EFBFBD>yt<EFBFBD>\ &vain\ kursorin\ rivi<Tab>zMzx
|
||||
menutrans C&lose\ more\ folds<Tab>zm &Sulje\ lis<EFBFBD><EFBFBD>\ taitoksia<Tab>zm
|
||||
menutrans &Close\ all\ folds<Tab>zM &Sulje\ kaikki\ taitokset<Tab>zM
|
||||
menutrans O&pen\ more\ folds<Tab>zr &Avaa\ lis<EFBFBD><EFBFBD>\ taitoksia<Tab>zr
|
||||
menutrans &Open\ all\ folds<Tab>zR &Avaa\ kaikki\ taitokset<Tab>zR
|
||||
" -SEP1-
|
||||
menutrans Fold\ Met&hod Taitteluta&pa
|
||||
" Submenu:
|
||||
" Accels: MILSDM
|
||||
menutrans M&anual &Manuaalinen
|
||||
menutrans I&ndent S&isennys
|
||||
menutrans E&xpression I&lmaus
|
||||
menutrans S&yntax &Syntaksi
|
||||
menutrans &Diff &Diff
|
||||
menutrans Ma&rker &Merkit
|
||||
|
||||
menutrans Create\ &Fold<Tab>zf T&ee\ taitos<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd P&oista\ taitos<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD Poista\ &kaikki\ taitokset<Tab>zD
|
||||
" -SEP2-
|
||||
menutrans Fold\ col&umn\ width Taitossarakkeen\ &leveys
|
||||
|
||||
menutrans &Diff &Diffit
|
||||
" Submenu:
|
||||
" Accels: PHL
|
||||
menutrans &Update &P<EFBFBD>ivit<EFBFBD>
|
||||
menutrans &Get\ Block &Hae\ lohko
|
||||
menutrans &Put\ Block &Lis<EFBFBD><EFBFBD>\ lohko
|
||||
|
||||
" -SEP2-
|
||||
menutrans &Make<Tab>:make &Make<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl Virheluettelo<Tab>:cl
|
||||
menutrans L&ist\ Messages<Tab>:cl! Virheviestit<Tab>:cl!
|
||||
menutrans &Next\ Error<Tab>:cn Seuraava\ virhe<Tab>:cn
|
||||
menutrans &Previous\ Error<Tab>:cp Edellinen\ virhe<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold Edellinen\ lista<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew Seuraava\ lista<Tab>:cnew
|
||||
|
||||
menutrans Error\ &Window Virheikkuna
|
||||
" Submenu:
|
||||
" Accels: PAS
|
||||
menutrans &Update<Tab>:cwin &P<EFBFBD>ivit<EFBFBD><Tab>:cwin
|
||||
menutrans &Open<Tab>:copen &Avaa<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose &Sulje<Tab>:cclose
|
||||
|
||||
menutrans Se&T\ Compiler Ase&ta\ k<EFBFBD><EFBFBD>nt<EFBFBD>j<EFBFBD>
|
||||
" -SEP3-
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd Muunna\ heksoiksi<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r Muunna\ takaisin<Tab>:%!xxd\ -r
|
||||
|
||||
|
||||
menutrans &Syntax &Syntaksi
|
||||
" Accels: NSFPMAT
|
||||
menutrans &Show\ filetypes\ in\ menu &N<EFBFBD>yt<EFBFBD>\ tiedostotyypit\ valikossa
|
||||
" -SEP1-
|
||||
menutrans Set\ '&syntax'\ only Aseta\ vain\ &syntax
|
||||
menutrans Set\ '&filetype'\ too Aseta\ my<EFBFBD>s\ &filetype
|
||||
menutrans &Off &Pois\ p<EFBFBD><EFBFBD>lt<EFBFBD>
|
||||
" -SEP3-
|
||||
menutrans Co&lor\ test Testaa\ v<EFBFBD>rit
|
||||
menutrans &Highlight\ test Testaa\ korostukset
|
||||
menutrans &Convert\ to\ HTML Muunna\ HTML:ksi
|
||||
" -SEP2-
|
||||
menutrans &Off &Pois\ p<EFBFBD><EFBFBD>lt<EFBFBD>
|
||||
menutrans &Manual &Manuaalinen
|
||||
menutrans A&utomatic &Automaattinen
|
||||
menutrans on/off\ for\ &This\ file Kytke\ &t<EFBFBD>lle\ tiedostolle
|
||||
|
||||
" The Start Of The Syntax Menu
|
||||
menutrans ABC\ music\ notation ABC\ (notation\ musicale)
|
||||
menutrans AceDB\ model Mod<EFBFBD>le\ AceDB
|
||||
menutrans Apache\ config Config\.\ Apache
|
||||
menutrans Apache-style\ config Config\.\ style\ Apache
|
||||
menutrans ASP\ with\ VBScript ASP\ avec\ VBScript
|
||||
menutrans ASP\ with\ Perl ASP\ avec\ Perl
|
||||
menutrans Assembly Assembleur
|
||||
menutrans BC\ calculator Calculateur\ BC
|
||||
menutrans BDF\ font Fonte\ BDF
|
||||
menutrans BIND\ config Config\.\ BIND
|
||||
menutrans BIND\ zone Zone\ BIND
|
||||
menutrans Cascading\ Style\ Sheets Feuilles\ de\ style\ en\ cascade
|
||||
menutrans Cfg\ Config\ file Fichier\ de\ config\.\ \.cfg
|
||||
menutrans Cheetah\ template Patron\ Cheetah
|
||||
menutrans commit\ file Fichier\ commit
|
||||
menutrans Generic\ Config\ file Fichier\ de\ config\.\ g<EFBFBD>n<EFBFBD>rique
|
||||
menutrans Digital\ Command\ Lang DCL
|
||||
menutrans DNS/BIND\ zone Zone\ BIND/DNS
|
||||
menutrans Dylan\ interface Interface
|
||||
menutrans Dylan\ lid LID
|
||||
menutrans Elm\ filter\ rules R<EFBFBD>gles\ de\ filtrage\ Elm
|
||||
menutrans ERicsson\ LANGuage Erlang\ (langage\ Ericsson)
|
||||
menutrans Essbase\ script Script\ Essbase
|
||||
menutrans Eterm\ config Config\.\ Eterm
|
||||
menutrans Exim\ conf Config\.\ Exim
|
||||
menutrans Fvwm\ configuration Config\.\ Fvwm
|
||||
menutrans Fvwm2\ configuration Config\.\ Fvwm2
|
||||
menutrans Fvwm2\ configuration\ with\ M4 Config\.\ Fvwm2\ avec\ M4
|
||||
menutrans GDB\ command\ file Fichier\ de\ commandes\ GDB
|
||||
menutrans HTML\ with\ M4 HTML\ avec\ M4
|
||||
menutrans Cheetah\ HTML\ template Patron\ Cheetah\ pour\ HTML
|
||||
menutrans IDL\Generic\ IDL IDL\IDL\ g<EFBFBD>n<EFBFBD>rique
|
||||
menutrans IDL\Microsoft\ IDL IDL\IDL\ Microsoft
|
||||
menutrans Indent\ profile Profil\ Indent
|
||||
menutrans Inno\ setup Config\.\ Inno
|
||||
menutrans InstallShield\ script Script\ InstallShield
|
||||
menutrans KDE\ script Script\ KDE
|
||||
menutrans LFTP\ config Config\.\ LFTP
|
||||
menutrans LifeLines\ script Script\ LifeLines
|
||||
menutrans Lynx\ Style Style\ Lynx
|
||||
menutrans Lynx\ config Config\.\ Lynx
|
||||
menutrans Man\ page Page\ Man
|
||||
menutrans MEL\ (for\ Maya) MEL\ (pour\ Maya)
|
||||
menutrans 4DOS\ \.bat\ file Fichier\ \.bat\ 4DOS
|
||||
menutrans \.bat\/\.cmd\ file Fichier\ \.bat\ /\ \.cmd
|
||||
menutrans \.ini\ file Fichier\ \.ini
|
||||
menutrans Module\ Definition D<EFBFBD>finition\ de\ module
|
||||
menutrans Registry Extrait\ du\ registre
|
||||
menutrans Resource\ file Fichier\ de\ ressources
|
||||
menutrans Novell\ NCF\ batch Batch\ Novell\ NCF
|
||||
menutrans NSIS\ script Script\ NSIS
|
||||
menutrans Oracle\ config Config\.\ Oracle
|
||||
menutrans Palm\ resource\ compiler Compil\.\ de\ resources\ Palm
|
||||
menutrans PHP\ 3-4 PHP\ 3\ et\ 4
|
||||
menutrans Postfix\ main\ config Config\.\ Postfix
|
||||
menutrans Povray\ scene\ descr Sc<EFBFBD>ne\ Povray
|
||||
menutrans Povray\ configuration Config\.\ Povray
|
||||
menutrans Purify\ log Log\ Purify
|
||||
menutrans Readline\ config Config\.\ Readline
|
||||
menutrans RCS\ log\ output Log\ RCS
|
||||
menutrans RCS\ file Fichier\ RCS
|
||||
menutrans RockLinux\ package\ desc\. Desc\.\ pkg\.\ RockLinux
|
||||
menutrans Samba\ config Config\.\ Samba
|
||||
menutrans SGML\ catalog Catalogue\ SGML
|
||||
menutrans SGML\ DTD DTD\ SGML
|
||||
menutrans SGML\ Declaration D<EFBFBD>claration\ SGML
|
||||
menutrans Shell\ script Script\ shell
|
||||
menutrans sh\ and\ ksh sh\ et\ ksh
|
||||
menutrans Sinda\ compare Comparaison\ Sinda
|
||||
menutrans Sinda\ input Entr<EFBFBD>e\ Sinda
|
||||
menutrans Sinda\ output Sortie\ Sinda
|
||||
menutrans SKILL\ for\ Diva SKILL\ pour\ Diva
|
||||
menutrans Smarty\ Templates Patrons\ Smarty
|
||||
menutrans SNNS\ network R<EFBFBD>seau\ SNNS
|
||||
menutrans SNNS\ pattern Motif\ SNNS
|
||||
menutrans SNNS\ result R<EFBFBD>sultat\ SNNS
|
||||
menutrans Snort\ Configuration Config\.\ Snort
|
||||
menutrans Squid\ config Config\.\ Squid
|
||||
menutrans Subversion\ commit Commit\ Subversion
|
||||
menutrans TAK\ compare Comparaison\ TAK
|
||||
menutrans TAK\ input Entr<EFBFBD>e\ TAK
|
||||
menutrans TAK\ output Sortie\ TAK
|
||||
menutrans TeX\ configuration Config\.\ TeX
|
||||
menutrans TF\ mud\ client TF\ (client\ MUD)
|
||||
menutrans Tidy\ configuration Config\.\ Tidy
|
||||
menutrans Trasys\ input Entr<EFBFBD>e\ Trasys
|
||||
menutrans Command\ Line Ligne\ de\ commande
|
||||
menutrans Geometry G<EFBFBD>om<EFBFBD>trie
|
||||
menutrans Optics Optiques
|
||||
menutrans Vim\ help\ file Fichier\ d'aide\ Vim
|
||||
menutrans Vim\ script Script\ Vim
|
||||
menutrans Viminfo\ file Fichier\ Viminfo
|
||||
menutrans Virata\ config Config\.\ Virata
|
||||
menutrans Wget\ config Config\.\ wget
|
||||
menutrans Whitespace\ (add) Espaces\ et\ tabulations
|
||||
menutrans WildPackets\ EtherPeek\ Decoder D<EFBFBD>codeur\ WildPackets\ EtherPeek
|
||||
menutrans X\ resources Resources\ X
|
||||
menutrans XXD\ hex\ dump Sortie\ hexa\.\ de\ xxd
|
||||
menutrans XFree86\ Config Config\.\ XFree86
|
||||
|
||||
menutrans &Buffers &Puskurit
|
||||
" Accels: VPASE
|
||||
menutrans Dummy Dummy
|
||||
menutrans &Refresh\ menu P<EFBFBD>ivit<EFBFBD>\ &valikko
|
||||
menutrans &Delete &Poista
|
||||
menutrans &Alternate V&aihda
|
||||
menutrans &Next &Seuraava
|
||||
menutrans &Previous &Edellinen
|
||||
" -SEP-
|
||||
" (Alphabet menus)
|
||||
menutrans &others &muut
|
||||
let g:menutrans_no_file = "[Ei tiedostoja]"
|
||||
|
||||
|
||||
menutrans &Window &Ikkuna
|
||||
" Accels: UJPTSMIYAKOL
|
||||
menutrans &New<Tab>^Wn &Uusi\ ikkuna<Tab>^Wn
|
||||
menutrans S&plit<Tab>^Ws &Jaa<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ &Jaa\ #<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv Jaa\ &pystysuunnassa<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer Jaa\ &tiedostonhallinnalle
|
||||
" -SEP1-
|
||||
menutrans &Close<Tab>^Wc &Sulje<Tab>^Wc
|
||||
menutrans Close\ &Other(s)<Tab>^Wo Sulje\ &muut<Tab>^Wo
|
||||
" -SEP2-
|
||||
menutrans Move\ &To S&iirr<EFBFBD>
|
||||
" Submenu:
|
||||
" Accels: YAOV
|
||||
menutrans &Top<Tab>^WK &Yl<EFBFBD>s<Tab>^WK
|
||||
menutrans &Bottom<Tab>^WJ &Alas<Tab>^WJ
|
||||
menutrans &Left\ side<Tab>^WH &Oikealle<Tab>^WH
|
||||
menutrans &Right\ side<Tab>^WL &Vasemmalle<Tab>^WL
|
||||
|
||||
menutrans Rotate\ &Up<Tab>^WR Vaihda\ &ylemm<EFBFBD>s<Tab>^WR
|
||||
menutrans Rotate\ &Down<Tab>^Wr Vaihda\ &alemmas<Tab>^Wr
|
||||
" -SEP3-
|
||||
menutrans &Equal\ Size<Tab>^W= Saman\ &kokoisiksi<Tab>^W=
|
||||
menutrans &Max\ Height<Tab>^W_ Enimm<EFBFBD>isk&orkeuteen<Tab>^W_
|
||||
menutrans M&in\ Height<Tab>^W1_ V<EFBFBD>himm<EFBFBD>isk&orkeuteen<Tab>^W1_
|
||||
menutrans Max\ &Width<Tab>^W\| Enimm<EFBFBD>is&leveyteen<Tab>^W\|
|
||||
menutrans Min\ Widt&h<Tab>^W1\| V<EFBFBD>himm<EFBFBD>is&leveyteen<Tab>^W1\|
|
||||
|
||||
" (Plugin menus here)
|
||||
menutrans Plugin Liit<EFBFBD>nn<EFBFBD>iset
|
||||
|
||||
menutrans &Help &Ohje
|
||||
" Accels: YKUHTLROVI
|
||||
menutrans &Overview<Tab><F1> &Yleiskatsaus<Tab><F1>
|
||||
menutrans &User\ Manual &K<EFBFBD>ytt<EFBFBD>ohje
|
||||
menutrans &How-to\ links K&UINKA-linkkej<EFBFBD>
|
||||
menutrans &Find\.\.\. &Hae\.\.\.
|
||||
" -sep1-
|
||||
menutrans &Credits &Tekij<EFBFBD>t
|
||||
menutrans Co&pying &Lisenssi
|
||||
menutrans &Sponsor/Register Sponsoroi/&Rekister<EFBFBD>i
|
||||
menutrans O&rphans &Orvoista
|
||||
" -sep2-
|
||||
menutrans &Version &Versio
|
||||
menutrans &About T&ietoja
|
||||
|
||||
let g:menutrans_help_dialog = "Anna komento tai sana, jota haetaan ohjeesta.\n\nAloita i_:ll<6C> sy<73>tt<74>tilan komentoja varten (esim. i_CTRL-X)\nAloita c_:ll<6C> komentorivi<76> varten (esim. c_<Del>)\nKirjoita asetukset puolilainausmerkkeijin (esim. 'shiftwidth')"
|
||||
|
||||
|
||||
" PopUp
|
||||
|
||||
menutrans &Undo &Kumoa
|
||||
" -SEP1-
|
||||
menutrans Cu&t &Leikkaa
|
||||
menutrans &Copy &Kopioi
|
||||
menutrans &Paste L&iit<EFBFBD>
|
||||
" &Buffers.&Delete overwrites this one
|
||||
menutrans &Delete &Poista
|
||||
" -SEP2-
|
||||
menutrans Select\ Blockwise Valitse\ lohkoittain
|
||||
menutrans Select\ &Word Valitse\ &sana
|
||||
menutrans Select\ &Line Valitse\ &rivi
|
||||
menutrans Select\ &Block Valitse\ &lohko
|
||||
menutrans Select\ &All Valitse\ &kaikki
|
||||
|
||||
|
||||
" ToolBar
|
||||
|
||||
menutrans Open Avaa
|
||||
menutrans Save Tallenna
|
||||
menutrans SaveAll TallennaKaikki
|
||||
menutrans Print Tulosta
|
||||
" -sep1-
|
||||
menutrans Undo Kumoa
|
||||
menutrans Redo Palauta
|
||||
" -sep2-
|
||||
menutrans Cut Leikkaa
|
||||
menutrans Copy Kopioi
|
||||
menutrans Paste Liit<EFBFBD>
|
||||
" -sep3-
|
||||
menutrans Find Etsi
|
||||
menutrans FindNext EtsiSeur
|
||||
menutrans FindPrev EtsiEd
|
||||
menutrans Replace Korvaa
|
||||
" -sep4-
|
||||
menutrans New Uusi
|
||||
menutrans WinSplit JaaIkk
|
||||
menutrans WinMax IkkMax
|
||||
menutrans WinMin IkkMin
|
||||
menutrans WinVSplit JaaIkkV
|
||||
menutrans WinMaxWidth IkkMaxLev
|
||||
menutrans WinMinWidth IkkMinLev
|
||||
menutrans WinClose SuljeIkk
|
||||
" -sep5-
|
||||
menutrans LoadSesn AvaaSess
|
||||
menutrans SaveSesn TallSess
|
||||
menutrans RunScript AjaSkripti
|
||||
" -sep6-
|
||||
menutrans Make Make
|
||||
menutrans RunCtags AjaCTags
|
||||
menutrans TagJump TagHypp
|
||||
" -sep7-
|
||||
menutrans Help Ohje
|
||||
menutrans FindHelp OhjeHaku
|
||||
|
||||
fun! Do_toolbar_tmenu()
|
||||
let did_toolbar_tmenu = 1
|
||||
tmenu ToolBar.Open Avaa tiedosto
|
||||
tmenu ToolBar.Save Tallenna nykyinen tiedosto
|
||||
tmenu ToolBar.SaveAll Tallenna kaikki tiedostot
|
||||
tmenu ToolBar.Print Tulosta
|
||||
tmenu ToolBar.Undo Kumoa
|
||||
tmenu ToolBar.Redo Palauta
|
||||
tmenu ToolBar.Cut Leikkaa
|
||||
tmenu ToolBar.Copy Kopioi
|
||||
tmenu ToolBar.Paste Liit<EFBFBD>
|
||||
if !has("gui_athena")
|
||||
tmenu ToolBar.Find Hae
|
||||
tmenu ToolBar.FindNext Hae seuraava
|
||||
tmenu ToolBar.FindPrev Hae edellinen
|
||||
tmenu ToolBar.Replace Korvaa
|
||||
endif
|
||||
if 0 " disabled; These are in the Windows menu
|
||||
tmenu ToolBar.New Uusi ikkuna
|
||||
tmenu ToolBar.WinSplit Jaa ikkuna
|
||||
tmenu ToolBar.WinMax Maximiser fen<EFBFBD>tre
|
||||
tmenu ToolBar.WinMin Minimiser fen<EFBFBD>tre
|
||||
tmenu ToolBar.WinVSplit Fractionner verticalement
|
||||
tmenu ToolBar.WinMaxWidth Maximiser largeur fen<EFBFBD>tre
|
||||
tmenu ToolBar.WinMinWidth Minimiser largeur fen<EFBFBD>tre
|
||||
tmenu ToolBar.WinClose Fermer fen<EFBFBD>tre
|
||||
endif
|
||||
tmenu ToolBar.LoadSesn Avaa sessio
|
||||
tmenu ToolBar.SaveSesn Tallenna nykyinen sessio
|
||||
tmenu ToolBar.RunScript Lataa vim-skripti
|
||||
tmenu ToolBar.Make Suorita make
|
||||
tmenu ToolBar.RunCtags Suorita CTags
|
||||
tmenu ToolBar.TagJump Hypp<EFBFBD><EFBFBD> t<EFBFBD>giin
|
||||
tmenu ToolBar.Help Vimin ohje
|
||||
tmenu ToolBar.FindHelp Etsi ohjeesta
|
||||
endfun
|
||||
|
||||
" vim: set fileencoding=latin1
|
@ -1,7 +1,7 @@
|
||||
" ---------------------------------------------------------------------
|
||||
" getscriptPlugin.vim
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Jul 18, 2006
|
||||
" Date: Jan 07, 2008
|
||||
" Installing: :help glvs-install
|
||||
" Usage: :help glvs
|
||||
"
|
||||
@ -19,8 +19,7 @@ if &cp || exists("g:loaded_getscriptPlugin")
|
||||
endif
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscriptPlugin = 1
|
||||
let s:keepfo = &fo
|
||||
let g:loaded_getscriptPlugin = "v30"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@ -30,9 +29,10 @@ 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
|
||||
unlet s:keepcpo
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" vim: ts=8 sts=2 fdm=marker nowrap
|
||||
|
@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_tarPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tarPlugin = 1
|
||||
let g:loaded_tarPlugin = "v16"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@ -22,20 +22,21 @@ set cpo&vim
|
||||
" Public Interface: {{{1
|
||||
augroup tar
|
||||
au!
|
||||
au BufReadCmd tarfile:* call tar#Read(expand("<amatch>"), 1)
|
||||
au FileReadCmd tarfile:* call tar#Read(expand("<amatch>"), 0)
|
||||
au BufWriteCmd tarfile:* call tar#Write(expand("<amatch>"))
|
||||
au FileWriteCmd tarfile:* call tar#Write(expand("<amatch>"))
|
||||
au BufReadCmd tarfile::* call tar#Read(expand("<amatch>"), 1)
|
||||
au FileReadCmd tarfile::* call tar#Read(expand("<amatch>"), 0)
|
||||
au BufWriteCmd tarfile::* call tar#Write(expand("<amatch>"))
|
||||
au FileWriteCmd tarfile::* call tar#Write(expand("<amatch>"))
|
||||
|
||||
if has("unix")
|
||||
au BufReadCmd tarfile:*/* call tar#Read(expand("<amatch>"), 1)
|
||||
au FileReadCmd tarfile:*/* call tar#Read(expand("<amatch>"), 0)
|
||||
au BufWriteCmd tarfile:*/* call tar#Write(expand("<amatch>"))
|
||||
au FileWriteCmd tarfile:*/* call tar#Write(expand("<amatch>"))
|
||||
au BufReadCmd tarfile::*/* call tar#Read(expand("<amatch>"), 1)
|
||||
au FileReadCmd tarfile::*/* call tar#Read(expand("<amatch>"), 0)
|
||||
au BufWriteCmd tarfile::*/* call tar#Write(expand("<amatch>"))
|
||||
au FileWriteCmd tarfile::*/* call tar#Write(expand("<amatch>"))
|
||||
endif
|
||||
|
||||
au BufReadCmd *.tar call tar#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.tar.gz call tar#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.tar call tar#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.lrp call tar#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.tar.bz2 call tar#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.tar.Z call tar#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.tgz call tar#Browse(expand("<amatch>"))
|
||||
|
@ -1,122 +1,176 @@
|
||||
*** fr_FR.orig.aff Sun Oct 2 12:36:49 2005
|
||||
--- fr_FR.aff Sun Oct 2 12:36:49 2005
|
||||
*** fr_FR.orig.aff Wed Feb 13 14:53:22 2008
|
||||
--- fr_FR.aff Wed Feb 13 15:03:20 2008
|
||||
***************
|
||||
*** 3,4 ****
|
||||
--- 3,21 ----
|
||||
*** 3,19 ****
|
||||
|
||||
+ 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>
|
||||
+
|
||||
+ MIDWORD '
|
||||
+
|
||||
+ MAP 9
|
||||
+ MAP a<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP e<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP i<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP o<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP u<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP n<EFBFBD>
|
||||
+ MAP c<>
|
||||
! MAP 12
|
||||
! MAP a<EFBFBD><EFBFBD><EFBFBD>
|
||||
! MAP e<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
! MAP i<><69>y
|
||||
! MAP o<><6F>
|
||||
! MAP u<><75><EFBFBD>
|
||||
MAP c<EFBFBD>
|
||||
- MAP A<EFBFBD><EFBFBD><EFBFBD>
|
||||
- MAP E<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
- MAP I<EFBFBD><EFBFBD>Y
|
||||
- MAP O<EFBFBD><EFBFBD>
|
||||
- MAP U<EFBFBD><EFBFBD><EFBFBD>
|
||||
MAP C<EFBFBD>
|
||||
|
||||
! REP 44
|
||||
REP f ph
|
||||
--- 3,31 ----
|
||||
|
||||
! 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>
|
||||
!
|
||||
! MIDWORD '-
|
||||
!
|
||||
! MAP 17
|
||||
! MAP a<><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
! MAP A<><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
! MAP e<><65><EFBFBD><EFBFBD>
|
||||
! MAP E<><45><EFBFBD><EFBFBD>
|
||||
! MAP i<><69><EFBFBD><EFBFBD>
|
||||
! MAP I<><49><EFBFBD><EFBFBD>
|
||||
! MAP o<><6F><EFBFBD><EFBFBD><EFBFBD>
|
||||
! MAP O<><4F><EFBFBD><EFBFBD><EFBFBD>
|
||||
! MAP u<><75><EFBFBD><EFBFBD>
|
||||
! MAP U<><55><EFBFBD><EFBFBD>
|
||||
! MAP n<>
|
||||
! MAP N<>
|
||||
MAP c<>
|
||||
MAP C<>
|
||||
+ MAP y<><79>
|
||||
+ MAP Y<><59>
|
||||
+ MAP s<>
|
||||
+
|
||||
PFX A Y 10
|
||||
|
||||
!
|
||||
! REP 24
|
||||
REP f ph
|
||||
***************
|
||||
*** 692,694 ****
|
||||
|
||||
!
|
||||
!
|
||||
--- 709,800 ----
|
||||
|
||||
! # sound folding from Aspell
|
||||
! # Copyright (C) 2000 R<>mi Vanicat, distributed under LGPL
|
||||
! # version francais 0.000000001
|
||||
!
|
||||
! #EMME ~ AME
|
||||
! SAL AIX$ E
|
||||
! SAL AI E
|
||||
! SAL AN(AEUIO)- AM
|
||||
! SAL AN A
|
||||
! SAL AMM AM
|
||||
! SAL AM(AEUIO)- AM
|
||||
! SAL AM A
|
||||
! SAL AUD$ O
|
||||
! SAL AUX$ O
|
||||
! SAL AU O
|
||||
! SAL A A
|
||||
! SAL <20> A
|
||||
! SAL <20> A
|
||||
! SAL BB P
|
||||
! SAL B P
|
||||
! SAL <20> S
|
||||
! SAL C(EI)- S
|
||||
! SAL CU(EI)- K
|
||||
! SAL CC(EI)- X
|
||||
! SAL CC K
|
||||
! SAL CH CH
|
||||
! SAL C K
|
||||
! SAL DD T
|
||||
! SAL D T
|
||||
! SAL EMMENTAL EMATAL
|
||||
! SAL EMMENTHAL EMATAL
|
||||
! SAL EM(AEIOU)- EM
|
||||
! SAL EM A
|
||||
! SAL ET$ E
|
||||
! SAL EUX$ E
|
||||
! SAL EU E
|
||||
! SAL EN(AEUIO)- EM
|
||||
! SAL EN A
|
||||
! SAL ER$ E
|
||||
! SAL EO O
|
||||
! SAL EAUX$ O
|
||||
! SAL EAU O
|
||||
! SAL E E
|
||||
! SAL <20> E
|
||||
! SAL <20> E
|
||||
! SAL <EFBFBD> E
|
||||
! SAL F F
|
||||
! SAL G(EIY)- J
|
||||
! SAL GU(EIY)- G
|
||||
! SAL G G
|
||||
! SAL H _
|
||||
! SAL I I
|
||||
! SAL <EFBFBD> I
|
||||
! SAL J J
|
||||
! SAL KS X
|
||||
! SAL K K
|
||||
! SAL LL L
|
||||
! SAL L L
|
||||
! SAL MM M
|
||||
! SAL M M
|
||||
! SAL NN M
|
||||
! SAL N M
|
||||
! SAL OEU E
|
||||
! SAL OUX$ U
|
||||
! SAL OU U
|
||||
! SAL O<EFBFBD> U
|
||||
! SAL O O
|
||||
! SAL <EFBFBD> O
|
||||
! SAL PP P
|
||||
! SAL PH F
|
||||
! SAL P P
|
||||
! SAL QU K
|
||||
! SAL Q K
|
||||
! SAL RIX$ RI
|
||||
! SAL RR R
|
||||
! SAL R R
|
||||
! SAL S$ _
|
||||
! SAL SS S
|
||||
! SAL S S
|
||||
! SAL TT T
|
||||
! SAL T T
|
||||
! SAL U U
|
||||
! SAL <EFBFBD> U
|
||||
! SAL <EFBFBD> U
|
||||
! SAL V V
|
||||
! SAL W W
|
||||
! SAL X X
|
||||
! SAL Y(AEOU)- IL
|
||||
! SAL Y I
|
||||
! SAL ZZ S
|
||||
! SAL Z S
|
||||
*** 22,45 ****
|
||||
REP qu c
|
||||
- REP bb b
|
||||
- REP b bb
|
||||
- REP cc c
|
||||
- REP c cc
|
||||
- REP ff f
|
||||
- REP f ff
|
||||
- REP ll l
|
||||
- REP l ll
|
||||
- REP mm m
|
||||
- REP m mm
|
||||
- REP nn n
|
||||
- REP n nn
|
||||
- REP pp p
|
||||
- REP p pp
|
||||
- REP rr r
|
||||
- REP r rr
|
||||
- REP ss s
|
||||
- REP s ss
|
||||
REP ss c
|
||||
REP c ss
|
||||
- REP tt t
|
||||
- REP t tt
|
||||
REP <20> oe
|
||||
--- 34,37 ----
|
||||
***************
|
||||
*** 687 ****
|
||||
--- 679,773 ----
|
||||
SFX q ssait raient ssait
|
||||
+
|
||||
+
|
||||
+ # sound folding from Aspell
|
||||
+ # Copyright (C) 2000 R<>mi Vanicat, distributed under LGPL
|
||||
+ # version francais 0.000000001
|
||||
+
|
||||
+ #EMME ~ AME
|
||||
+
|
||||
+ SAL AIX$ E
|
||||
+ SAL AI E
|
||||
+ SAL AN(AEUIO)- AM
|
||||
+ SAL AN A
|
||||
+ SAL AMM AM
|
||||
+ SAL AM(AEUIO)- AM
|
||||
+ SAL AM A
|
||||
+ SAL AUD$ O
|
||||
+ SAL AUX$ O
|
||||
+ SAL AU O
|
||||
+ SAL A A
|
||||
+ SAL <20> A
|
||||
+ SAL <20> A
|
||||
+ SAL BB P
|
||||
+ SAL B P
|
||||
+ SAL <EFBFBD> S
|
||||
+ SAL C(EI)- S
|
||||
+ SAL CU(EI)- K
|
||||
+ SAL CC(EI)- X
|
||||
+ SAL CC K
|
||||
+ SAL CH CH
|
||||
+ SAL C K
|
||||
+ SAL DD T
|
||||
+ SAL D T
|
||||
+ SAL EMMENTAL EMATAL
|
||||
+ SAL EMMENTHAL EMATAL
|
||||
+ SAL EM(AEIOU)- EM
|
||||
+ SAL EM A
|
||||
+ SAL ET$ E
|
||||
+ SAL EUX$ E
|
||||
+ SAL EU E
|
||||
+ SAL EN(AEUIO)- EM
|
||||
+ SAL EN A
|
||||
+ SAL ER$ E
|
||||
+ SAL EO O
|
||||
+ SAL EAUX$ O
|
||||
+ SAL EAU O
|
||||
+ SAL E E
|
||||
+ SAL <EFBFBD> E
|
||||
+ SAL <EFBFBD> E
|
||||
+ SAL <EFBFBD> E
|
||||
+ SAL F F
|
||||
+ SAL G(EIY)- J
|
||||
+ SAL GU(EIY)- G
|
||||
+ SAL G G
|
||||
+ SAL H _
|
||||
+ SAL I I
|
||||
+ SAL <EFBFBD> I
|
||||
+ SAL J J
|
||||
+ SAL KS X
|
||||
+ SAL K K
|
||||
+ SAL LL L
|
||||
+ SAL L L
|
||||
+ SAL MM M
|
||||
+ SAL M M
|
||||
+ SAL NN M
|
||||
+ SAL N M
|
||||
+ SAL OEU E
|
||||
+ SAL OUX$ U
|
||||
+ SAL OU U
|
||||
+ SAL O<> U
|
||||
+ SAL O O
|
||||
+ SAL <20> O
|
||||
+ SAL PP P
|
||||
+ SAL PH F
|
||||
+ SAL P P
|
||||
+ SAL QU K
|
||||
+ SAL Q K
|
||||
+ SAL RIX$ RI
|
||||
+ SAL RR R
|
||||
+ SAL R R
|
||||
+ SAL S$ _
|
||||
+ SAL SS S
|
||||
+ SAL S S
|
||||
+ SAL TT T
|
||||
+ SAL T T
|
||||
+ SAL U U
|
||||
+ SAL <20> U
|
||||
+ SAL <20> U
|
||||
+ SAL V V
|
||||
+ SAL W W
|
||||
+ SAL X X
|
||||
+ SAL Y(AEOU)- IL
|
||||
+ SAL Y I
|
||||
+ SAL ZZ S
|
||||
+ SAL Z S
|
||||
|
@ -1,12 +1,34 @@
|
||||
*** pt_BR.orig.aff Mon Apr 16 15:38:54 2007
|
||||
--- pt_BR.aff Mon Apr 16 15:49:01 2007
|
||||
*** pt_BR.orig.aff 2008-02-21 19:41:04.000000000 -0300
|
||||
--- pt_BR.aff 2008-02-24 11:08:15.000000000 -0300
|
||||
***************
|
||||
*** 3,4 ****
|
||||
--- 3,9 ----
|
||||
*** 1,3 ****
|
||||
SET ISO8859-1
|
||||
! TRY <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>esianrtolcdugmphbyfvkwjqxz
|
||||
|
||||
--- 1,3 ----
|
||||
SET ISO8859-1
|
||||
!
|
||||
|
||||
***************
|
||||
*** 13,14 ****
|
||||
--- 13,32 ----
|
||||
|
||||
+ NAME Brazilian Portuguese
|
||||
+ VERSION 20080221V
|
||||
+ HOME http://www.broffice.org/verortografico
|
||||
+ AUTHOR Raimundo Santos Moura
|
||||
+ EMAIL raimundomoura AT openoffice DOT org
|
||||
+ AUTHOR Leonardo Ferreira Fontenelle
|
||||
+ EMAIL leo DOT fontenelle AT gmail DOT org
|
||||
+ COPYRIGHT LGPL
|
||||
+
|
||||
+
|
||||
+ 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>
|
||||
+
|
||||
+
|
||||
+ MIDWORD '-.
|
||||
|
||||
+
|
||||
+
|
||||
MAP 6
|
||||
|
139
runtime/syntax/cdrdaoconf.vim
Normal file
139
runtime/syntax/cdrdaoconf.vim
Normal file
@ -0,0 +1,139 @@
|
||||
" Vim syntax file
|
||||
" Language: cdrdao(1) configuration file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2007-09-02
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn keyword cdrdaoconfTodo
|
||||
\ TODO FIXME XXX NOTE
|
||||
|
||||
syn match cdrdaoconfBegin
|
||||
\ display
|
||||
\ nextgroup=@cdrdaoconfKeyword,cdrdaoconfComment
|
||||
\ '^'
|
||||
|
||||
syn cluster cdrdaoconfKeyword
|
||||
\ contains=cdrdaoconfIntegerKeyword,
|
||||
\ cdrdaoconfDriverKeyword,
|
||||
\ cdrdaoconfDeviceKeyword,
|
||||
\ cdrdaoconfPathKeyword
|
||||
|
||||
syn keyword cdrdaoconfIntegerKeyword
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfIntegerDelimiter
|
||||
\ write_speed
|
||||
\ write_buffers
|
||||
\ user_capacity
|
||||
\ full_burn
|
||||
\ read_speed
|
||||
\ cddb_timeout
|
||||
|
||||
syn keyword cdrdaoconfIntegerKeyword
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfParanoiaModeDelimiter
|
||||
\ read_paranoia_mode
|
||||
|
||||
syn keyword cdrdaoconfDriverKeyword
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfDriverDelimiter
|
||||
\ write_driver
|
||||
\ read_driver
|
||||
|
||||
syn keyword cdrdaoconfDeviceKeyword
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfDeviceDelimiter
|
||||
\ write_device
|
||||
\ read_device
|
||||
|
||||
syn keyword cdrdaoconfPathKeyword
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfPathDelimiter
|
||||
\ cddb_directory
|
||||
\ tmp_file_dir
|
||||
|
||||
syn match cdrdaoconfIntegerDelimiter
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfInteger
|
||||
\ skipwhite
|
||||
\ ':'
|
||||
|
||||
syn match cdrdaoconfParanoiaModeDelimiter
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfParanoiaMode
|
||||
\ skipwhite
|
||||
\ ':'
|
||||
|
||||
syn match cdrdaoconfDriverDelimiter
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfDriver
|
||||
\ skipwhite
|
||||
\ ':'
|
||||
|
||||
syn match cdrdaoconfDeviceDelimiter
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfDevice
|
||||
\ skipwhite
|
||||
\ ':'
|
||||
|
||||
syn match cdrdaoconfPathDelimiter
|
||||
\ contained
|
||||
\ nextgroup=cdrdaoconfPath
|
||||
\ skipwhite
|
||||
\ ':'
|
||||
|
||||
syn match cdrdaoconfInteger
|
||||
\ contained
|
||||
\ '\<\d\+\>'
|
||||
|
||||
syn match cdrdaoParanoiaMode
|
||||
\ contained
|
||||
\ '[0123]'
|
||||
|
||||
syn match cdrdaoconfDriver
|
||||
\ contained
|
||||
\ '\<\(cdd2600\|generic-mmc\%(-raw\)\=\|plextor\%(-scan\)\|ricoh-mp6200\|sony-cdu9\%(20\|48\)\|taiyo-yuden\|teac-cdr55\|toshiba\|yamaha-cdr10x\)\>'
|
||||
|
||||
syn region cdrdaoconfDevice
|
||||
\ contained
|
||||
\ matchgroup=cdrdaoconfDevice
|
||||
\ start=+"+
|
||||
\ end=+"+
|
||||
|
||||
syn region cdrdaoconfPath
|
||||
\ contained
|
||||
\ matchgroup=cdrdaoconfPath
|
||||
\ start=+"+
|
||||
\ end=+"+
|
||||
|
||||
syn match cdrdaoconfComment
|
||||
\ contains=cdrdaoconfTodo,@Spell
|
||||
\ '^.*#.*$'
|
||||
|
||||
hi def link cdrdaoconfTodo Todo
|
||||
hi def link cdrdaoconfComment Comment
|
||||
hi def link cdrdaoconfKeyword Keyword
|
||||
hi def link cdrdaoconfIntegerKeyword cdrdaoconfKeyword
|
||||
hi def link cdrdaoconfDriverKeyword cdrdaoconfKeyword
|
||||
hi def link cdrdaoconfDeviceKeyword cdrdaoconfKeyword
|
||||
hi def link cdrdaoconfPathKeyword cdrdaoconfKeyword
|
||||
hi def link cdrdaoconfDelimiter Delimiter
|
||||
hi def link cdrdaoconfIntegerDelimiter cdrdaoconfDelimiter
|
||||
hi def link cdrdaoconfDriverDelimiter cdrdaoconfDelimiter
|
||||
hi def link cdrdaoconfDeviceDelimiter cdrdaoconfDelimiter
|
||||
hi def link cdrdaoconfPathDelimiter cdrdaoconfDelimiter
|
||||
hi def link cdrdaoconfInteger Number
|
||||
hi def link cdrdaoconfParanoiaMode Number
|
||||
hi def link cdrdaoconfDriver Identifier
|
||||
hi def link cdrdaoconfDevice cdrdaoconfPath
|
||||
hi def link cdrdaoconfPath String
|
||||
|
||||
let b:current_syntax = "cdrdaoconf"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
@ -49,7 +49,7 @@ syn region cmakeArguments start=/\s*(/ end=/)/
|
||||
syn keyword cmakeDeprecated ABSTRACT_FILES BUILD_NAME SOURCE_FILES SOURCE_FILES_REMOVE VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WRAP_EXCLUDE_FILES
|
||||
\ nextgroup=cmakeArgument
|
||||
syn keyword cmakeStatement
|
||||
\ ADD_CUSTOM_COMMAND ADD_CUSTOM_TARGET ADD_DEFINITIONS ADD_DEPENDENCIES ADD_EXECUTABLE ADD_LIBRARY ADD_SUBDIRECTORY ADD_TEST AUX_SOURCE_DIRECTORY BUILD_COMMAND BUILD_NAME CMAKE_MINIMUM_REQUIRED CONFIGURE_FILE CREATE_TEST_SOURCELIST ELSE ENABLE_LANGUAGE ENABLE_TESTING ENDFOREACH ENDIF ENDWHILE EXEC_PROGRAM EXECUTE_PROCESS EXPORT_LIBRARY_DEPENDENCIES FILE FIND_FILE FIND_LIBRARY FIND_PACKAGE FIND_PATH FIND_PROGRAM FLTK_WRAP_UI FOREACH GET_CMAKE_PROPERTY GET_DIRECTORY_PROPERTY GET_FILENAME_COMPONENT GET_SOURCE_FILE_PROPERTY GET_TARGET_PROPERTY GET_TEST_PROPERTY IF INCLUDE INCLUDE_DIRECTORIES INCLUDE_EXTERNAL_MSPROJECT INCLUDE_REGULAR_EXPRESSION INSTALL INSTALL_FILES INSTALL_PROGRAMS INSTALL_TARGETS LINK_DIRECTORIES LINK_LIBRARIES LIST LOAD_CACHE LOAD_COMMAND MACRO MAKE_DIRECTORY MARK_AS_ADVANCED MATH MESSAGE OPTION OUTPUT_REQUIRED_FILES PROJECT QT_WRAP_CPP QT_WRAP_UI REMOVE REMOVE_DEFINITIONS SEPARATE_ARGUMENTS SET SET_DIRECTORY_PROPERTIES SET_SOURCE_FILES_PROPERTIES SET_TARGET_PROPERTIES SET_TESTS_PROPERTIES SITE_NAME SOURCE_GROUP STRING SUBDIR_DEPENDS SUBDIRS TARGET_LINK_LIBRARIES TRY_COMPILE TRY_RUN USE_MANGLED_MESA UTILITY_SOURCE VARIABLE_REQUIRES VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WHILE WRITE_FILE ENDMACRO
|
||||
\ ADD_CUSTOM_COMMAND ADD_CUSTOM_TARGET ADD_DEFINITIONS ADD_DEPENDENCIES ADD_EXECUTABLE ADD_LIBRARY ADD_SUBDIRECTORY ADD_TEST AUX_SOURCE_DIRECTORY BUILD_COMMAND BUILD_NAME CMAKE_MINIMUM_REQUIRED CONFIGURE_FILE CREATE_TEST_SOURCELIST ELSE ELSEIF ENABLE_LANGUAGE ENABLE_TESTING ENDFOREACH ENDIF ENDWHILE EXEC_PROGRAM EXECUTE_PROCESS EXPORT_LIBRARY_DEPENDENCIES FILE FIND_FILE FIND_LIBRARY FIND_PACKAGE FIND_PATH FIND_PROGRAM FLTK_WRAP_UI FOREACH GET_CMAKE_PROPERTY GET_DIRECTORY_PROPERTY GET_FILENAME_COMPONENT GET_SOURCE_FILE_PROPERTY GET_TARGET_PROPERTY GET_TEST_PROPERTY IF INCLUDE INCLUDE_DIRECTORIES INCLUDE_EXTERNAL_MSPROJECT INCLUDE_REGULAR_EXPRESSION INSTALL INSTALL_FILES INSTALL_PROGRAMS INSTALL_TARGETS LINK_DIRECTORIES LINK_LIBRARIES LIST LOAD_CACHE LOAD_COMMAND MACRO MAKE_DIRECTORY MARK_AS_ADVANCED MATH MESSAGE OPTION OUTPUT_REQUIRED_FILES PROJECT QT_WRAP_CPP QT_WRAP_UI REMOVE REMOVE_DEFINITIONS SEPARATE_ARGUMENTS SET SET_DIRECTORY_PROPERTIES SET_SOURCE_FILES_PROPERTIES SET_TARGET_PROPERTIES SET_TESTS_PROPERTIES SITE_NAME SOURCE_GROUP STRING SUBDIR_DEPENDS SUBDIRS TARGET_LINK_LIBRARIES TRY_COMPILE TRY_RUN USE_MANGLED_MESA UTILITY_SOURCE VARIABLE_REQUIRES VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WHILE WRITE_FILE ENDMACRO
|
||||
\ nextgroup=cmakeArgumnts
|
||||
|
||||
"syn match cmakeMacro /^\s*[A-Z_]\+/ nextgroup=cmakeArgumnts
|
||||
|
33
runtime/syntax/coco.vim
Normal file
33
runtime/syntax/coco.vim
Normal file
@ -0,0 +1,33 @@
|
||||
" Vim syntax file
|
||||
" Language: Coco/R
|
||||
" Maintainer: Ashish Shukla <wahjava@gmail.com>
|
||||
" Last Change: 2007 Aug 10
|
||||
" Remark: Coco/R syntax partially implemented.
|
||||
" License: Vim license
|
||||
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn keyword cocoKeywords ANY CHARACTERS COMMENTS COMPILER CONTEXT END FROM IF IGNORE IGNORECASE NESTED PRAGMAS PRODUCTIONS SYNC TO TOKENS WEAK
|
||||
syn match cocoUnilineComment #//.*$#
|
||||
syn match cocoIdentifier /[[:alpha:]][[:alnum:]]*/
|
||||
syn region cocoMultilineComment start=#/[*]# end=#[*]/#
|
||||
syn region cocoString start=/"/ skip=/\\"\|\\\\/ end=/"/
|
||||
syn region cocoCharacter start=/'/ skip=/\\'\|\\\\/ end=/'/
|
||||
syn match cocoOperator /+\||\|\.\.\|-\|(\|)\|{\|}\|\[\|\]\|=\|<\|>/
|
||||
syn region cocoProductionCode start=/([.]/ end=/[.])/
|
||||
syn match cocoPragma /[$][[:alnum:]]*/
|
||||
|
||||
hi def link cocoKeywords Keyword
|
||||
hi def link cocoUnilineComment Comment
|
||||
hi def link cocoMultilineComment Comment
|
||||
hi def link cocoIdentifier Identifier
|
||||
hi def link cocoString String
|
||||
hi def link cocoCharacter Character
|
||||
hi def link cocoOperator Operator
|
||||
hi def link cocoProductionCode Statement
|
||||
hi def link cocoPragma Special
|
||||
|
@ -2,7 +2,7 @@
|
||||
" Language: Cascading Style Sheets
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/css.vim
|
||||
" Last Change: 2006 Jun 19
|
||||
" Last Change: 2007 Nov 06
|
||||
" CSS2 by Nikolai Weibull
|
||||
" Full CSS2, HTML4 support by Yeti
|
||||
|
||||
@ -194,7 +194,7 @@ syn match cssSpecialCharQQ +\\"+ contained
|
||||
syn match cssSpecialCharQ +\\'+ contained
|
||||
syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ
|
||||
syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ
|
||||
syn match cssClassName "\.[A-Za-z][A-Za-z0-9-]\+"
|
||||
syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
|
||||
|
||||
if main_syntax == "css"
|
||||
syn sync minlines=10
|
||||
|
@ -3,8 +3,8 @@
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
|
||||
" Wichert Akkerman <wakkerma@debian.org>
|
||||
" Last Change: $LastChangedDate: 2006-04-16 21:50:31 -0400 (Sun, 16 Apr 2006) $
|
||||
" URL: http://svn.debian.org/wsvn/pkg-vim/trunk/runtime/syntax/debcontrol.vim?op=file&rev=0&sc=0
|
||||
" Last Change: 2008-02-23
|
||||
" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/debcontrol.vim;hb=debian
|
||||
|
||||
" Comments are very welcome - but please make sure that you are commenting on
|
||||
" the latest version of this file.
|
||||
@ -17,6 +17,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Should match case except for the keys of each field
|
||||
syn case match
|
||||
|
||||
" Everything that is not explicitly matched by the rules below
|
||||
syn match debcontrolElse "^.*$"
|
||||
|
||||
@ -25,28 +28,47 @@ syn match debControlComma ", *"
|
||||
syn match debControlSpace " "
|
||||
|
||||
" Define some common expressions we can use later on
|
||||
syn match debcontrolArchitecture contained "\(all\|any\|alpha\|amd64\|arm\(eb\)\=\|hppa\|i386\|ia64\|m32r\|m68k\|mipsel\|mips\|powerpc\|ppc64\|s390\|sheb\|sh\|sparc64\|sparc\|hurd-i386\|kfreebsd-\(i386\|gnu\)\|knetbsd-i386\|netbsd-\(alpha\|i386\)\)"
|
||||
syn match debcontrolName contained "[a-z][a-z0-9+-]*"
|
||||
syn match debcontrolArchitecture contained "\(all\|any\|alpha\|amd64\|arm\(e[bl]\)\=\|hppa\|i386\|ia64\|m32r\|m68k\|mipsel\|mips\|powerpc\|ppc64\|s390x\=\|sh[34]\(eb\)\=\|sh\|sparc64\|sparc\|hurd-i386\|kfreebsd-\(i386\|gnu\)\|knetbsd-i386\|netbsd-\(alpha\|i386\)\)"
|
||||
syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+"
|
||||
syn match debcontrolPriority contained "\(extra\|important\|optional\|required\|standard\)"
|
||||
syn match debcontrolSection contained "\(\(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\)/\)\=\(admin\|base\|comm\|devel\|doc\|editors\|electronics\|embedded\|games\|gnome\|graphics\|hamradio\|interpreters\|kde\|libs\|libdevel\|mail\|math\|misc\|net\|news\|oldlibs\|otherosfs\|perl\|python\|science\|shells\|sound\|text\|tex\|utils\|web\|x11\|debian-installer\)"
|
||||
syn match debcontrolSection contained "\(\(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\|restricted\|universe\|multiverse\)/\)\=\(admin\|base\|comm\|devel\|doc\|editors\|electronics\|embedded\|games\|gnome\|graphics\|hamradio\|interpreters\|kde\|libs\|libdevel\|mail\|math\|misc\|net\|news\|oldlibs\|otherosfs\|perl\|python\|science\|shells\|sound\|text\|tex\|utils\|web\|x11\|debian-installer\)"
|
||||
syn match debcontrolPackageType contained "u\?deb"
|
||||
syn match debcontrolVariable contained "\${.\{-}}"
|
||||
|
||||
" A URL (using the domain name definitions from RFC 1034 and 1738), right now
|
||||
" only enforce protocol and some sanity on the server/path part;
|
||||
syn match debcontrolHTTPUrl contained "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
|
||||
syn match debcontrolVcsSvn contained "\vsvn%(\+ssh)?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
|
||||
syn match debcontrolVcsCvs contained "\v%(\-d *)?:pserver:[^@]+\@[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?:/[^[:space:]]*%( [^[:space:]]+)?$"
|
||||
syn match debcontrolVcsGit contained "\vgit://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
|
||||
|
||||
" An email address
|
||||
syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
|
||||
syn match debcontrolEmail "<.\{-}>"
|
||||
|
||||
" #-Comments
|
||||
syn match debcontrolComment "^#.*$"
|
||||
|
||||
syn case ignore
|
||||
|
||||
" List of all legal keys
|
||||
syn match debcontrolKey contained "^\(Source\|Package\|Section\|Priority\|Maintainer\|Uploaders\|Build-Depends\|Build-Conflicts\|Build-Depends-Indep\|Build-Conflicts-Indep\|Standards-Version\|Pre-Depends\|Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Essential\|Architecture\|Description\|Bugs\|Origin\|Enhances\): *"
|
||||
syn match debcontrolKey contained "^\(Source\|Package\|Section\|Priority\|Maintainer\|Uploaders\|Build-Depends\|Build-Conflicts\|Build-Depends-Indep\|Build-Conflicts-Indep\|Standards-Version\|Pre-Depends\|Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Essential\|Architecture\|Description\|Bugs\|Origin\|Enhances\|Homepage\|\(XS-\)\=Vcs-\(Browser\|Arch\|Bzr\|Cvs\|Darcs\|Git\|Hg\|Mtn\|Svn\)\|XC-Package-Type\): *"
|
||||
|
||||
" Fields for which we do strict syntax checking
|
||||
syn region debcontrolStrictField start="^Architecture" end="$" contains=debcontrolKey,debcontrolArchitecture,debcontrolSpace oneline
|
||||
syn region debcontrolStrictField start="^\(Package\|Source\)" end="$" contains=debcontrolKey,debcontrolName oneline
|
||||
syn region debcontrolStrictField start="^Priority" end="$" contains=debcontrolKey,debcontrolPriority oneline
|
||||
syn region debcontrolStrictField start="^Section" end="$" contains=debcontrolKey,debcontrolSection oneline
|
||||
syn region debcontrolStrictField start="^XC-Package-Type" end="$" contains=debcontrolKey,debcontrolPackageType oneline
|
||||
syn region debcontrolStrictField start="^Homepage" end="$" contains=debcontrolKey,debcontrolHTTPUrl oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\)" end="$" contains=debcontrolKey,debcontrolHTTPUrl oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-Svn" end="$" contains=debcontrolKey,debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-Cvs" end="$" contains=debcontrolKey,debcontrolVcsCvs oneline keepend
|
||||
syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-Git" end="$" contains=debcontrolKey,debcontrolVcsGit oneline keepend
|
||||
|
||||
" Catch-all for the other legal fields
|
||||
syn region debcontrolField start="^\(Maintainer\|Build-Depends\|Build-Conflicts\|Build-Depends-Indep\|Build-Conflicts-Indep\|Standards-Version\|Pre-Depends\|Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Essential\|Bugs\|Origin\|Enhances\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
|
||||
syn region debcontrolMultiField start="^\(Uploaders\|Description\):" skip="^ " end="^$"me=s-1 end="^[^ ]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable
|
||||
syn region debcontrolField start="^\(Maintainer\|Standards-Version\|Essential\|Bugs\|Origin\|X\(S\|B\)-Python-Version\|XSBC-Original-Maintainer\|\(XS-\)\?Vcs-Mtn\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
|
||||
syn region debcontrolMultiField start="^\(Build-\(Conflicts\|Depends\)\(-Indep\)\=\|\(Pre-\)\=Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Enhances\|Uploaders\|Description\):" skip="^ " end="^$"me=s-1 end="^[^ ]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable
|
||||
|
||||
" Associate our matches and regions with pretty colours
|
||||
if version >= 508 || !exists("did_debcontrol_syn_inits")
|
||||
@ -65,8 +87,14 @@ if version >= 508 || !exists("did_debcontrol_syn_inits")
|
||||
HiLink debcontrolName Normal
|
||||
HiLink debcontrolPriority Normal
|
||||
HiLink debcontrolSection Normal
|
||||
HiLink debcontrolPackageType Normal
|
||||
HiLink debcontrolVariable Identifier
|
||||
HiLink debcontrolEmail Identifier
|
||||
HiLink debcontrolVcsSvn Identifier
|
||||
HiLink debcontrolVcsCvs Identifier
|
||||
HiLink debcontrolVcsGit Identifier
|
||||
HiLink debcontrolHTTPUrl Identifier
|
||||
HiLink debcontrolComment Comment
|
||||
HiLink debcontrolElse Special
|
||||
|
||||
delcommand HiLink
|
||||
|
289
runtime/syntax/denyhosts.vim
Normal file
289
runtime/syntax/denyhosts.vim
Normal file
@ -0,0 +1,289 @@
|
||||
" Vim syntax file
|
||||
" Language: denyhosts configuration file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2007-06-25
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn keyword denyhostsTodo
|
||||
\ contained
|
||||
\ TODO
|
||||
\ FIXME
|
||||
\ XXX
|
||||
\ NOTE
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn match denyhostsComment
|
||||
\ contained
|
||||
\ display
|
||||
\ '#.*'
|
||||
\ contains=denyhostsTodo,
|
||||
\ @Spell
|
||||
|
||||
syn match denyhostsBegin
|
||||
\ display
|
||||
\ '^'
|
||||
\ nextgroup=@denyhostsSetting,
|
||||
\ denyhostsComment
|
||||
\ skipwhite
|
||||
|
||||
syn cluster denyhostsSetting
|
||||
\ contains=denyhostsStringSetting,
|
||||
\ denyhostsBooleanSetting,
|
||||
\ denyhostsPathSetting,
|
||||
\ denyhostsNumericSetting,
|
||||
\ denyhostsTimespecSetting,
|
||||
\ denyhostsFormatSetting,
|
||||
\ denyhostsRegexSetting
|
||||
|
||||
syn keyword denyhostsStringSetting
|
||||
\ contained
|
||||
\ ADMIN_EMAIL
|
||||
\ SMTP_HOST
|
||||
\ SMTP_USERNAME
|
||||
\ SMTP_PASSWORD
|
||||
\ SMTP_FROM
|
||||
\ SMTP_SUBJECT
|
||||
\ BLOCK_SERVICE
|
||||
\ nextgroup=denyhostsStringDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostsBooleanSetting
|
||||
\ contained
|
||||
\ SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS
|
||||
\ HOSTNAME_LOOKUP
|
||||
\ SYSLOG_REPORT
|
||||
\ RESET_ON_SUCCESS
|
||||
\ SYNC_UPLOAD
|
||||
\ SYNC_DOWNLOAD
|
||||
\ ALLOWED_HOSTS_HOSTNAME_LOOKUP
|
||||
\ nextgroup=denyhostsBooleanDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostsPathSetting
|
||||
\ contained
|
||||
\ DAEMON_LOG
|
||||
\ PLUGIN_DENY
|
||||
\ PLUGIN_PURGE
|
||||
\ SECURE_LOG
|
||||
\ LOCK_FILE
|
||||
\ HOSTS_DENY
|
||||
\ WORK_DIR
|
||||
\ nextgroup=denyhostsPathDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostsNumericSetting
|
||||
\ contained
|
||||
\ SYNC_DOWNLOAD_THRESHOLD
|
||||
\ SMTP_PORT
|
||||
\ PURGE_THRESHOLD
|
||||
\ DENY_THRESHOLD_INVALID
|
||||
\ DENY_THRESHOLD_VALID
|
||||
\ DENY_THRESHOLD_ROOT
|
||||
\ DENY_THRESHOLD_RESTRICTED
|
||||
\ nextgroup=denyhostsNumericDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostsTimespecSetting
|
||||
\ contained
|
||||
\ DAEMON_SLEEP
|
||||
\ DAEMON_PURGE
|
||||
\ AGE_RESET_INVALID
|
||||
\ AGE_RESET_VALID
|
||||
\ AGE_RESET_ROOT
|
||||
\ AGE_RESET_RESTRICTED
|
||||
\ SYNC_INTERVAL
|
||||
\ SYNC_DOWNLOAD_RESILIENCY
|
||||
\ PURGE_DENY
|
||||
\ nextgroup=denyhostsTimespecDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostsFormatSetting
|
||||
\ contained
|
||||
\ DAEMON_LOG_TIME_FORMAT
|
||||
\ DAEMON_LOG_MESSAGE_FORMAT
|
||||
\ SMTP_DATE_FORMAT
|
||||
\ nextgroup=denyhostsFormatDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostsRegexSetting
|
||||
\ contained
|
||||
\ SSHD_FORMAT_REGEX
|
||||
\ FAILED_ENTRY_REGEX
|
||||
\ FAILED_ENTRY_REGEX2
|
||||
\ FAILED_ENTRY_REGEX3
|
||||
\ FAILED_ENTRY_REGEX4
|
||||
\ FAILED_ENTRY_REGEX5
|
||||
\ FAILED_ENTRY_REGEX6
|
||||
\ FAILED_ENTRY_REGEX7
|
||||
\ USERDEF_FAILED_ENTRY_REGEX
|
||||
\ SUCCESSFUL_ENTRY_REGEX
|
||||
\ nextgroup=denyhostsRegexDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn keyword denyhostURLSetting
|
||||
\ contained
|
||||
\ SYNC_SERVER
|
||||
\ nextgroup=denyhostsURLDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsStringDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsString
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsBooleanDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=@denyhostsBoolean
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsPathDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsPath
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsNumericDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsNumber
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsTimespecDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsTimespec
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsFormatDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsFormat
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsRegexDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsRegex
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsURLDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:=]'
|
||||
\ nextgroup=denyhostsURL
|
||||
\ skipwhite
|
||||
|
||||
syn match denyhostsString
|
||||
\ contained
|
||||
\ display
|
||||
\ '.\+'
|
||||
|
||||
syn cluster denyhostsBoolean
|
||||
\ contains=denyhostsBooleanTrue,
|
||||
\ denyhostsBooleanFalse
|
||||
|
||||
syn match denyhostsBooleanFalse
|
||||
\ contained
|
||||
\ display
|
||||
\ '.\+'
|
||||
|
||||
syn match denyhostsBooleanTrue
|
||||
\ contained
|
||||
\ display
|
||||
\ '\s*\%(1\|t\%(rue\)\=\|y\%(es\)\=\)\>\s*$'
|
||||
|
||||
syn match denyhostsPath
|
||||
\ contained
|
||||
\ display
|
||||
\ '.\+'
|
||||
|
||||
syn match denyhostsNumber
|
||||
\ contained
|
||||
\ display
|
||||
\ '\d\+\>'
|
||||
|
||||
syn match denyhostsTimespec
|
||||
\ contained
|
||||
\ display
|
||||
\ '\d\+[mhdwy]\>'
|
||||
|
||||
syn match denyhostsFormat
|
||||
\ contained
|
||||
\ display
|
||||
\ '.\+'
|
||||
\ contains=denyhostsFormattingExpandos
|
||||
|
||||
syn match denyhostsFormattingExpandos
|
||||
\ contained
|
||||
\ display
|
||||
\ '%.'
|
||||
|
||||
syn match denyhostsRegex
|
||||
\ contained
|
||||
\ display
|
||||
\ '.\+'
|
||||
|
||||
" TODO: Perhaps come up with a better regex here? There should really be a
|
||||
" library for these kinds of generic regexes, that is, URLs, mail addresses, …
|
||||
syn match denyhostsURL
|
||||
\ contained
|
||||
\ display
|
||||
\ '.\+'
|
||||
|
||||
hi def link denyhostsTodo Todo
|
||||
hi def link denyhostsComment Comment
|
||||
hi def link denyhostsSetting Keyword
|
||||
hi def link denyhostsStringSetting denyhostsSetting
|
||||
hi def link denyhostsBooleanSetting denyhostsSetting
|
||||
hi def link denyhostsPathSetting denyhostsSetting
|
||||
hi def link denyhostsNumericSetting denyhostsSetting
|
||||
hi def link denyhostsTimespecSetting denyhostsSetting
|
||||
hi def link denyhostsFormatSetting denyhostsSetting
|
||||
hi def link denyhostsRegexSetting denyhostsSetting
|
||||
hi def link denyhostURLSetting denyhostsSetting
|
||||
hi def link denyhostsDelimiter Normal
|
||||
hi def link denyhostsStringDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsBooleanDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsPathDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsNumericDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsTimespecDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsFormatDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsRegexDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsURLDelimiter denyhostsDelimiter
|
||||
hi def link denyhostsString String
|
||||
if exists('g:syntax_booleans_simple') || exists('b:syntax_booleans_simple')
|
||||
hi def link denyhostsBoolean Boolean
|
||||
hi def link denyhostsBooleanFalse denyhostsBoolean
|
||||
hi def link denyhostsBooleanTrue denyhostsBoolean
|
||||
else
|
||||
hi def denyhostsBooleanTrue term=bold ctermfg=Green guifg=Green
|
||||
hi def denyhostsBooleanFalse ctermfg=Red guifg=Red
|
||||
endif
|
||||
hi def link denyhostsPath String
|
||||
hi def link denyhostsNumber Number
|
||||
hi def link denyhostsTimespec Number
|
||||
hi def link denyhostsFormat String
|
||||
hi def link denyhostsFormattingExpandos Special
|
||||
hi def link denyhostsRegex String
|
||||
hi def link denyhostsURL String
|
||||
|
||||
let b:current_syntax = "denyhosts"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
67
runtime/syntax/git.vim
Normal file
67
runtime/syntax/git.vim
Normal file
@ -0,0 +1,67 @@
|
||||
" Vim syntax file
|
||||
" Language: generic git output
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" Last Change: 2008 Mar 21
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn case match
|
||||
syn sync minlines=50
|
||||
|
||||
syn include @gitDiff syntax/diff.vim
|
||||
|
||||
syn region gitHead start=/\%^/ end=/^$/
|
||||
syn region gitHead start=/\%(^commit \x\{40\}$\)\@=/ end=/^$/
|
||||
|
||||
" For git reflog and git show ...^{tree}, avoid sync issues
|
||||
syn match gitHead /^\d\{6\} \%(\w\{4} \)\=\x\{40\}\%( [0-3]\)\=\t.*/
|
||||
syn match gitHead /^\x\{40\} \x\{40}\t.*/
|
||||
|
||||
syn region gitDiff start=/^\%(diff --git \)\@=/ end=/^\%(diff --git \|$\)\@=/ contains=@gitDiff fold
|
||||
syn region gitDiff start=/^\%(@@ -\)\@=/ end=/^\%(diff --git \|$\)\@=/ contains=@gitDiff
|
||||
|
||||
syn match gitKeyword /^\%(object\|type\|tag\|commit\|tree\|parent\|encoding\)\>/ contained containedin=gitHead nextgroup=gitHash,gitType skipwhite
|
||||
syn match gitKeyword /^\%(tag\>\|ref:\)/ contained containedin=gitHead nextgroup=gitReference skipwhite
|
||||
syn match gitKeyword /^Merge:/ contained containedin=gitHead nextgroup=gitHashAbbrev skipwhite
|
||||
syn match gitMode /^\d\{6\}/ contained containedin=gitHead nextgroup=gitType,gitHash skipwhite
|
||||
syn match gitIdentityKeyword /^\%(author\|committer\|tagger\)\>/ contained containedin=gitHead nextgroup=gitIdentity skipwhite
|
||||
syn match gitIdentityHeader /^\%(Author\|Commit\|Tagger\):/ contained containedin=gitHead nextgroup=gitIdentity skipwhite
|
||||
syn match gitDateHeader /^\%(AuthorDate\|CommitDate\|Date\):/ contained containedin=gitHead nextgroup=gitDate skipwhite
|
||||
syn match gitIdentity /\S.\{-\} <[^>]*>/ contained nextgroup=gitDate skipwhite
|
||||
syn region gitEmail matchgroup=gitEmailDelimiter start=/</ end=/>/ keepend oneline contained containedin=gitIdentity
|
||||
|
||||
syn match gitReflogHeader /^Reflog:/ contained containedin=gitHead nextgroup=gitReflogMiddle skipwhite
|
||||
syn match gitReflogHeader /^Reflog message:/ contained containedin=gitHead skipwhite
|
||||
syn match gitReflogMiddle /\S\+@{\d\+} (/he=e-2 nextgroup=gitIdentity
|
||||
|
||||
syn match gitDate /\<\u\l\l \u\l\l \d\=\d \d\d:\d\d:\d\d \d\d\d\d [+-]\d\d\d\d/ contained
|
||||
syn match gitDate /-\=\d\+ [+-]\d\d\d\d\>/ contained
|
||||
syn match gitDate /\<\d\+ \l\+ ago\>/ contained
|
||||
syn match gitType /\<\%(tag\|commit\|tree\|blob\)\>/ contained nextgroup=gitHash skipwhite
|
||||
syn match gitStage /\<\d\t\@=/ contained
|
||||
syn match gitReference /\S\+\S\@!/ contained
|
||||
syn match gitHash /\<\x\{40\}\>/ contained nextgroup=gitIdentity,gitStage skipwhite
|
||||
syn match gitHash /^\<\x\{40\}\>/ containedin=gitHead contained nextgroup=gitHash skipwhite
|
||||
syn match gitHashAbbrev /\<\x\{4,39\}\.\.\./he=e-3 contained nextgroup=gitHashAbbrev skipwhite
|
||||
syn match gitHashAbbrev /\<\x\{40\}\>/ contained nextgroup=gitHashAbbrev skipwhite
|
||||
|
||||
hi def link gitDateHeader gitIdentityHeader
|
||||
hi def link gitIdentityHeader gitIdentityKeyword
|
||||
hi def link gitIdentityKeyword Label
|
||||
hi def link gitReflogHeader gitKeyword
|
||||
hi def link gitKeyword Keyword
|
||||
hi def link gitIdentity String
|
||||
hi def link gitEmailDelimiter Delimiter
|
||||
hi def link gitEmail Special
|
||||
hi def link gitDate Number
|
||||
hi def link gitMode Number
|
||||
hi def link gitHashAbbrev gitHash
|
||||
hi def link gitHash Identifier
|
||||
hi def link gitReflogMiddle gitReference
|
||||
hi def link gitReference Function
|
||||
hi def link gitStage gitType
|
||||
hi def link gitType Type
|
||||
|
||||
let b:current_syntax = "git"
|
65
runtime/syntax/gitcommit.vim
Normal file
65
runtime/syntax/gitcommit.vim
Normal file
@ -0,0 +1,65 @@
|
||||
" Vim syntax file
|
||||
" Language: git commit file
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" Filenames: *.git/COMMIT_EDITMSG
|
||||
" Last Change: 2008 Apr 09
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn case match
|
||||
syn sync minlines=50
|
||||
|
||||
if has("spell")
|
||||
syn spell toplevel
|
||||
endif
|
||||
|
||||
syn include @gitcommitDiff syntax/diff.vim
|
||||
syn region gitcommitDiff start=/\%(^diff --git \)\@=/ end=/^$\|^#\@=/ contains=@gitcommitDiff
|
||||
|
||||
syn match gitcommitFirstLine "\%^[^#].*" nextgroup=gitcommitBlank skipnl
|
||||
syn match gitcommitSummary "^.\{0,50\}" contained containedin=gitcommitFirstLine nextgroup=gitcommitOverflow contains=@Spell
|
||||
syn match gitcommitOverflow ".*" contained contains=@Spell
|
||||
syn match gitcommitBlank "^[^#].*" contained contains=@Spell
|
||||
syn match gitcommitComment "^#.*"
|
||||
syn region gitcommitHead start=/^# / end=/^#$/ contained transparent
|
||||
syn match gitcommitOnBranch "\%(^# \)\@<=On branch" contained containedin=gitcommitComment nextgroup=gitcommitBranch skipwhite
|
||||
syn match gitcommitBranch "\S\+" contained
|
||||
syn match gitcommitHeader "\%(^# \)\@<=.*:$" contained containedin=gitcommitComment
|
||||
|
||||
syn region gitcommitUntracked start=/^# Untracked files:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitUntrackedFile fold
|
||||
syn match gitcommitUntrackedFile "\t\@<=.*" contained
|
||||
|
||||
syn region gitcommitDiscarded start=/^# Changed but not updated:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitDiscardedType fold
|
||||
syn region gitcommitSelected start=/^# Changes to be committed:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitSelectedType fold
|
||||
|
||||
syn match gitcommitDiscardedType "\t\@<=[a-z][a-z ]*[a-z]: "he=e-2 contained containedin=gitcommitComment nextgroup=gitcommitDiscardedFile skipwhite
|
||||
syn match gitcommitSelectedType "\t\@<=[a-z][a-z ]*[a-z]: "he=e-2 contained containedin=gitcommitComment nextgroup=gitcommitSelectedFile skipwhite
|
||||
syn match gitcommitDiscardedFile ".\{-\}\%($\| -> \)\@=" contained nextgroup=gitcommitDiscardedArrow
|
||||
syn match gitcommitSelectedFile ".\{-\}\%($\| -> \)\@=" contained nextgroup=gitcommitSelectedArrow
|
||||
syn match gitcommitDiscardedArrow " -> " contained nextgroup=gitcommitDiscardedFile
|
||||
syn match gitcommitSelectedArrow " -> " contained nextgroup=gitcommitSelectedFile
|
||||
|
||||
hi def link gitcommitSummary Keyword
|
||||
hi def link gitcommitComment Comment
|
||||
hi def link gitcommitUntracked gitcommitComment
|
||||
hi def link gitcommitDiscarded gitcommitComment
|
||||
hi def link gitcommitSelected gitcommitComment
|
||||
hi def link gitcommitOnBranch Comment
|
||||
hi def link gitcommitBranch Special
|
||||
hi def link gitcommitDiscardedType gitcommitType
|
||||
hi def link gitcommitSelectedType gitcommitType
|
||||
hi def link gitcommitType Type
|
||||
hi def link gitcommitHeader PreProc
|
||||
hi def link gitcommitUntrackedFile gitcommitFile
|
||||
hi def link gitcommitDiscardedFile gitcommitFile
|
||||
hi def link gitcommitSelectedFile gitcommitFile
|
||||
hi def link gitcommitFile Constant
|
||||
hi def link gitcommitDiscardedArrow gitcommitArrow
|
||||
hi def link gitcommitSelectedArrow gitcommitArrow
|
||||
hi def link gitcommitArrow gitcommitComment
|
||||
"hi def link gitcommitOverflow Error
|
||||
hi def link gitcommitBlank Error
|
||||
|
||||
let b:current_syntax = "gitcommit"
|
147
runtime/syntax/hostconf.vim
Normal file
147
runtime/syntax/hostconf.vim
Normal file
@ -0,0 +1,147 @@
|
||||
" Vim syntax file
|
||||
" Language: host.conf(5) configuration file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2007-06-25
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn keyword hostconfTodo
|
||||
\ contained
|
||||
\ TODO
|
||||
\ FIXME
|
||||
\ XXX
|
||||
\ NOTE
|
||||
|
||||
syn match hostconfComment
|
||||
\ display
|
||||
\ contained
|
||||
\ '\s*#.*'
|
||||
\ contains=hostconfTodo,
|
||||
\ @Spell
|
||||
|
||||
syn match hostconfBegin
|
||||
\ display
|
||||
\ '^'
|
||||
\ nextgroup=hostconfComment,hostconfKeyword
|
||||
\ skipwhite
|
||||
|
||||
syn keyword hostconfKeyword
|
||||
\ contained
|
||||
\ order
|
||||
\ nextgroup=hostconfLookupOrder
|
||||
\ skipwhite
|
||||
|
||||
let s:orders = ['bind', 'hosts', 'nis']
|
||||
|
||||
function s:permute_suffixes(list)
|
||||
if empty(a:list)
|
||||
return []
|
||||
elseif len(a:list) == 1
|
||||
return a:list[0]
|
||||
else
|
||||
let i = 0
|
||||
let n = len(a:list)
|
||||
let sub_permutations = []
|
||||
while i < n
|
||||
let list_copy = copy(a:list)
|
||||
let removed = list_copy[i]
|
||||
call remove(list_copy, i)
|
||||
call add(sub_permutations, [removed, s:permute_suffixes(list_copy)])
|
||||
let i += 1
|
||||
endwhile
|
||||
return sub_permutations
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function s:generate_suffix_groups(list_of_order_of_orders, context, trailing_context)
|
||||
for order_of_orders in a:list_of_order_of_orders
|
||||
let order = order_of_orders[0]
|
||||
let trailing_context = a:trailing_context . toupper(order[0]) . order[1:]
|
||||
let nextgroup = 'hostconfLookupOrder' . trailing_context
|
||||
let nextgroup_delimiter = nextgroup . 'Delimiter'
|
||||
let group = 'hostconfLookupOrder' . a:context
|
||||
execute 'syn keyword' group 'contained' order 'nextgroup=' . nextgroup_delimiter 'skipwhite'
|
||||
execute 'syn match' nextgroup_delimiter 'contained display "," nextgroup=' . nextgroup 'skipwhite'
|
||||
if a:context != ""
|
||||
execute 'hi def link' group 'hostconfLookupOrder'
|
||||
endif
|
||||
execute 'hi def link' nextgroup_delimiter 'hostconfLookupOrderDelimiter'
|
||||
let context = trailing_context
|
||||
if type(order_of_orders[1]) == type([])
|
||||
call s:generate_suffix_groups(order_of_orders[1], context, trailing_context)
|
||||
else
|
||||
execute 'syn keyword hostconfLookupOrder' . context 'contained' order_of_orders[-1]
|
||||
execute 'hi def link hostconfLookupOrder' . context 'hostconfLookupOrder'
|
||||
endif
|
||||
endfor
|
||||
endfunction
|
||||
|
||||
call s:generate_suffix_groups(s:permute_suffixes(s:orders), "", "")
|
||||
|
||||
delfunction s:generate_suffix_groups
|
||||
delfunction s:permute_suffixes
|
||||
|
||||
syn keyword hostconfKeyword
|
||||
\ contained
|
||||
\ trim
|
||||
\ nextgroup=hostconfDomain
|
||||
\ skipwhite
|
||||
|
||||
syn match hostconfDomain
|
||||
\ contained
|
||||
\ '\.[^:;,[:space:]]\+'
|
||||
\ nextgroup=hostconfDomainDelimiter
|
||||
\ skipwhite
|
||||
|
||||
syn match hostconfDomainDelimiter
|
||||
\ contained
|
||||
\ display
|
||||
\ '[:;,]'
|
||||
\ nextgroup=hostconfDomain
|
||||
\ skipwhite
|
||||
|
||||
syn keyword hostconfKeyword
|
||||
\ contained
|
||||
\ multi
|
||||
\ nospoof
|
||||
\ spoofalert
|
||||
\ reorder
|
||||
\ nextgroup=hostconfBoolean
|
||||
\ skipwhite
|
||||
|
||||
syn keyword hostconfBoolean
|
||||
\ contained
|
||||
\ on
|
||||
\ off
|
||||
|
||||
syn keyword hostconfKeyword
|
||||
\ contained
|
||||
\ spoof
|
||||
\ nextgroup=hostconfSpoofValue
|
||||
\ skipwhite
|
||||
|
||||
syn keyword hostconfSpoofValue
|
||||
\ contained
|
||||
\ off
|
||||
\ nowarn
|
||||
\ warn
|
||||
|
||||
hi def link hostconfTodo Todo
|
||||
hi def link hostconfComment Comment
|
||||
hi def link hostconfKeyword Keyword
|
||||
hi def link hostconfLookupOrder Identifier
|
||||
hi def link hostconfLookupOrderDelimiter Delimiter
|
||||
hi def link hostconfDomain String
|
||||
hi def link hostconfDomainDelimiter Delimiter
|
||||
hi def link hostconfBoolean Boolean
|
||||
hi def link hostconfSpoofValue hostconfBoolean
|
||||
|
||||
let b:current_syntax = "hostconf"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
File diff suppressed because it is too large
Load Diff
272
runtime/syntax/lsl.vim
Normal file
272
runtime/syntax/lsl.vim
Normal file
@ -0,0 +1,272 @@
|
||||
" Vim syntax file
|
||||
" Language: Linden Scripting Language
|
||||
" Maintainer: Timo Frenay <timo@frenay.net>
|
||||
" Last Change: 2008 Mar 29
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Initializations
|
||||
syn case match
|
||||
|
||||
" Keywords
|
||||
syn keyword lslKeyword default do else for if jump return state while
|
||||
|
||||
" Types
|
||||
syn keyword lslType float integer key list quaternion rotation string vector
|
||||
|
||||
" Labels
|
||||
syn match lslLabel +@\h\w*+ display
|
||||
|
||||
" Constants
|
||||
syn keyword lslConstant
|
||||
\ ACTIVE AGENT AGENT_ALWAYS_RUN AGENT_ATTACHMENTS AGENT_AWAY AGENT_BUSY
|
||||
\ AGENT_CROUCHING AGENT_FLYING AGENT_IN_AIR AGENT_MOUSELOOK AGENT_ON_OBJECT
|
||||
\ AGENT_SCRIPTED AGENT_SITTING AGENT_TYPING AGENT_WALKING ALL_SIDES ANIM_ON
|
||||
\ ATTACH_BACK ATTACH_BELLY ATTACH_CHEST ATTACH_CHIN ATTACH_HEAD
|
||||
\ ATTACH_HUD_BOTTOM ATTACH_HUD_BOTTOM_LEFT ATTACH_HUD_BOTTOM_RIGHT
|
||||
\ ATTACH_HUD_CENTER_1 ATTACH_HUD_CENTER_2 ATTACH_HUD_TOP_CENTER
|
||||
\ ATTACH_HUD_TOP_LEFT ATTACH_HUD_TOP_RIGHT ATTACH_LEAR ATTACH_LEYE ATTACH_LFOOT
|
||||
\ ATTACH_LHAND ATTACH_LHIP ATTACH_LLARM ATTACH_LLLEG ATTACH_LPEC
|
||||
\ ATTACH_LSHOULDER ATTACH_LUARM ATTACH_LULEG ATTACH_MOUTH ATTACH_NOSE
|
||||
\ ATTACH_PELVIS ATTACH_REAR ATTACH_REYE ATTACH_RFOOT ATTACH_RHAND ATTACH_RHIP
|
||||
\ ATTACH_RLARM ATTACH_RLLEG ATTACH_RPEC ATTACH_RSHOULDER ATTACH_RUARM
|
||||
\ ATTACH_RULEG CAMERA_ACTIVE CAMERA_BEHINDNESS_ANGLE CAMERA_BEHINDNESS_LAG
|
||||
\ CAMERA_DISTANCE CAMERA_FOCUS CAMERA_FOCUS_LAG CAMERA_FOCUS_LOCKED
|
||||
\ CAMERA_FOCUS_OFFSET CAMERA_FOCUS_THRESHOLD CAMERA_PITCH CAMERA_POSITION
|
||||
\ CAMERA_POSITION_LAG CAMERA_POSITION_LOCKED CAMERA_POSITION_THRESHOLD
|
||||
\ CHANGED_ALLOWED_DROP CHANGED_COLOR CHANGED_INVENTORY CHANGED_LINK
|
||||
\ CHANGED_OWNER CHANGED_REGION CHANGED_SCALE CHANGED_SHAPE CHANGED_TELEPORT
|
||||
\ CHANGED_TEXTURE CLICK_ACTION_BUY CLICK_ACTION_NONE CLICK_ACTION_OPEN
|
||||
\ CLICK_ACTION_OPEN_MEDIA CLICK_ACTION_PAY CLICK_ACTION_PLAY CLICK_ACTION_SIT
|
||||
\ CLICK_ACTION_TOUCH CONTROL_BACK CONTROL_DOWN CONTROL_FWD CONTROL_LBUTTON
|
||||
\ CONTROL_LEFT CONTROL_ML_LBUTTON CONTROL_RIGHT CONTROL_ROT_LEFT
|
||||
\ CONTROL_ROT_RIGHT CONTROL_UP DATA_BORN DATA_NAME DATA_ONLINE DATA_PAYINFO
|
||||
\ DATA_RATING DATA_SIM_POS DATA_SIM_RATING DATA_SIM_STATUS DEBUG_CHANNEL
|
||||
\ DEG_TO_RAD EOF FALSE HTTP_BODY_MAXLENGTH HTTP_BODY_TRUNCATED HTTP_METHOD
|
||||
\ HTTP_MIMETYPE HTTP_VERIFY_CERT INVENTORY_ALL INVENTORY_ANIMATION
|
||||
\ INVENTORY_BODYPART INVENTORY_CLOTHING INVENTORY_GESTURE INVENTORY_LANDMARK
|
||||
\ INVENTORY_NONE INVENTORY_NOTECARD INVENTORY_OBJECT INVENTORY_SCRIPT
|
||||
\ INVENTORY_SOUND INVENTORY_TEXTURE LAND_LARGE_BRUSH LAND_LEVEL LAND_LOWER
|
||||
\ LAND_MEDIUM_BRUSH LAND_NOISE LAND_RAISE LAND_REVERT LAND_SMALL_BRUSH
|
||||
\ LAND_SMOOTH LINK_ALL_CHILDREN LINK_ALL_OTHERS LINK_ROOT LINK_SET LINK_THIS
|
||||
\ LIST_STAT_GEOMETRIC_MEAN LIST_STAT_MAX LIST_STAT_MEAN LIST_STAT_MEDIAN
|
||||
\ LIST_STAT_MIN LIST_STAT_NUM_COUNT LIST_STAT_RANGE LIST_STAT_STD_DEV
|
||||
\ LIST_STAT_SUM LIST_STAT_SUM_SQUARES LOOP MASK_BASE MASK_EVERYONE MASK_GROUP
|
||||
\ MASK_NEXT MASK_OWNER NULL_KEY OBJECT_CREATOR OBJECT_DESC OBJECT_GROUP
|
||||
\ OBJECT_NAME OBJECT_OWNER OBJECT_POS OBJECT_ROT OBJECT_UNKNOWN_DETAIL
|
||||
\ OBJECT_VELOCITY PARCEL_COUNT_GROUP PARCEL_COUNT_OTHER PARCEL_COUNT_OWNER
|
||||
\ PARCEL_COUNT_SELECTED PARCEL_COUNT_TEMP PARCEL_COUNT_TOTAL PARCEL_DETAILS_AREA
|
||||
\ PARCEL_DETAILS_DESC PARCEL_DETAILS_GROUP PARCEL_DETAILS_NAME
|
||||
\ PARCEL_DETAILS_OWNER PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY
|
||||
\ PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS PARCEL_FLAG_ALLOW_CREATE_OBJECTS
|
||||
\ PARCEL_FLAG_ALLOW_DAMAGE PARCEL_FLAG_ALLOW_FLY
|
||||
\ PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY PARCEL_FLAG_ALLOW_GROUP_SCRIPTS
|
||||
\ PARCEL_FLAG_ALLOW_LANDMARK PARCEL_FLAG_ALLOW_SCRIPTS
|
||||
\ PARCEL_FLAG_ALLOW_TERRAFORM PARCEL_FLAG_LOCAL_SOUND_ONLY
|
||||
\ PARCEL_FLAG_RESTRICT_PUSHOBJECT PARCEL_FLAG_USE_ACCESS_GROUP
|
||||
\ PARCEL_FLAG_USE_ACCESS_LIST PARCEL_FLAG_USE_BAN_LIST
|
||||
\ PARCEL_FLAG_USE_LAND_PASS_LIST PARCEL_MEDIA_COMMAND_AGENT
|
||||
\ PARCEL_MEDIA_COMMAND_AUTO_ALIGN PARCEL_MEDIA_COMMAND_DESC
|
||||
\ PARCEL_MEDIA_COMMAND_LOOP PARCEL_MEDIA_COMMAND_LOOP_SET
|
||||
\ PARCEL_MEDIA_COMMAND_PAUSE PARCEL_MEDIA_COMMAND_PLAY PARCEL_MEDIA_COMMAND_SIZE
|
||||
\ PARCEL_MEDIA_COMMAND_STOP PARCEL_MEDIA_COMMAND_TEXTURE
|
||||
\ PARCEL_MEDIA_COMMAND_TIME PARCEL_MEDIA_COMMAND_TYPE
|
||||
\ PARCEL_MEDIA_COMMAND_UNLOAD PARCEL_MEDIA_COMMAND_URL PASSIVE
|
||||
\ PAYMENT_INFO_ON_FILE PAYMENT_INFO_USED PAY_DEFAULT PAY_HIDE PERM_ALL PERM_COPY
|
||||
\ PERM_MODIFY PERM_MOVE PERM_TRANSFER PERMISSION_ATTACH PERMISSION_CHANGE_LINKS
|
||||
\ PERMISSION_CONTROL_CAMERA PERMISSION_DEBIT PERMISSION_TAKE_CONTROLS
|
||||
\ PERMISSION_TRACK_CAMERA PERMISSION_TRIGGER_ANIMATION PI PI_BY_TWO PING_PONG
|
||||
\ PRIM_BUMP_BARK PRIM_BUMP_BLOBS PRIM_BUMP_BRICKS PRIM_BUMP_BRIGHT
|
||||
\ PRIM_BUMP_CHECKER PRIM_BUMP_CONCRETE PRIM_BUMP_DARK PRIM_BUMP_DISKS
|
||||
\ PRIM_BUMP_GRAVEL PRIM_BUMP_LARGETILE PRIM_BUMP_NONE PRIM_BUMP_SHINY
|
||||
\ PRIM_BUMP_SIDING PRIM_BUMP_STONE PRIM_BUMP_STUCCO PRIM_BUMP_SUCTION
|
||||
\ PRIM_BUMP_TILE PRIM_BUMP_WEAVE PRIM_BUMP_WOOD PRIM_CAST_SHADOWS PRIM_COLOR
|
||||
\ PRIM_FLEXIBLE PRIM_FULLBRIGHT PRIM_HOLE_CIRCLE PRIM_HOLE_DEFAULT
|
||||
\ PRIM_HOLE_SQUARE PRIM_HOLE_TRIANGLE PRIM_MATERIAL PRIM_MATERIAL_FLESH
|
||||
\ PRIM_MATERIAL_GLASS PRIM_MATERIAL_LIGHT PRIM_MATERIAL_METAL
|
||||
\ PRIM_MATERIAL_PLASTIC PRIM_MATERIAL_RUBBER PRIM_MATERIAL_STONE
|
||||
\ PRIM_MATERIAL_WOOD PRIM_PHANTOM PRIM_PHYSICS PRIM_POINT_LIGHT PRIM_POSITION
|
||||
\ PRIM_ROTATION PRIM_SCULPT_TYPE_CYLINDER PRIM_SCULPT_TYPE_PLANE
|
||||
\ PRIM_SCULPT_TYPE_SPHERE PRIM_SCULPT_TYPE_TORUS PRIM_SHINY_HIGH PRIM_SHINY_LOW
|
||||
\ PRIM_SHINY_MEDIUM PRIM_SHINY_NONE PRIM_SIZE PRIM_TEMP_ON_REZ PRIM_TEXGEN
|
||||
\ PRIM_TEXGEN_DEFAULT PRIM_TEXGEN_PLANAR PRIM_TEXTURE PRIM_TYPE PRIM_TYPE_BOX
|
||||
\ PRIM_TYPE_BOX PRIM_TYPE_CYLINDER PRIM_TYPE_CYLINDER PRIM_TYPE_LEGACY
|
||||
\ PRIM_TYPE_PRISM PRIM_TYPE_PRISM PRIM_TYPE_RING PRIM_TYPE_SCULPT
|
||||
\ PRIM_TYPE_SPHERE PRIM_TYPE_SPHERE PRIM_TYPE_TORUS PRIM_TYPE_TORUS
|
||||
\ PRIM_TYPE_TUBE PRIM_TYPE_TUBE PSYS_PART_BEAM_MASK PSYS_PART_BOUNCE_MASK
|
||||
\ PSYS_PART_DEAD_MASK PSYS_PART_EMISSIVE_MASK PSYS_PART_END_ALPHA
|
||||
\ PSYS_PART_END_COLOR PSYS_PART_END_SCALE PSYS_PART_FLAGS
|
||||
\ PSYS_PART_FOLLOW_SRC_MASK PSYS_PART_FOLLOW_VELOCITY_MASK
|
||||
\ PSYS_PART_INTERP_COLOR_MASK PSYS_PART_INTERP_SCALE_MASK PSYS_PART_MAX_AGE
|
||||
\ PSYS_PART_RANDOM_ACCEL_MASK PSYS_PART_RANDOM_VEL_MASK PSYS_PART_START_ALPHA
|
||||
\ PSYS_PART_START_COLOR PSYS_PART_START_SCALE PSYS_PART_TARGET_LINEAR_MASK
|
||||
\ PSYS_PART_TARGET_POS_MASK PSYS_PART_TRAIL_MASK PSYS_PART_WIND_MASK
|
||||
\ PSYS_SRC_ACCEL PSYS_SRC_ANGLE_BEGIN PSYS_SRC_ANGLE_END
|
||||
\ PSYS_SRC_BURST_PART_COUNT PSYS_SRC_BURST_RADIUS PSYS_SRC_BURST_RATE
|
||||
\ PSYS_SRC_BURST_SPEED_MAX PSYS_SRC_BURST_SPEED_MIN PSYS_SRC_INNERANGLE
|
||||
\ PSYS_SRC_MAX_AGE PSYS_SRC_OMEGA PSYS_SRC_OUTERANGLE PSYS_SRC_PATTERN
|
||||
\ PSYS_SRC_PATTERN_ANGLE PSYS_SRC_PATTERN_ANGLE_CONE
|
||||
\ PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY PSYS_SRC_PATTERN_DROP
|
||||
\ PSYS_SRC_PATTERN_EXPLODE PSYS_SRC_TARGET_KEY PSYS_SRC_TEXTURE PUBLIC_CHANNEL
|
||||
\ RAD_TO_DEG REGION_FLAG_ALLOW_DAMAGE REGION_FLAG_ALLOW_DIRECT_TELEPORT
|
||||
\ REGION_FLAG_BLOCK_FLY REGION_FLAG_BLOCK_TERRAFORM
|
||||
\ REGION_FLAG_DISABLE_COLLISIONS REGION_FLAG_DISABLE_PHYSICS
|
||||
\ REGION_FLAG_FIXED_SUN REGION_FLAG_RESTRICT_PUSHOBJECT REGION_FLAG_SANDBOX
|
||||
\ REMOTE_DATA_CHANNEL REMOTE_DATA_REPLY REMOTE_DATA_REQUEST REVERSE ROTATE SCALE
|
||||
\ SCRIPTED SMOOTH SQRT2 STATUS_BLOCK_GRAB STATUS_CAST_SHADOWS STATUS_DIE_AT_EDGE
|
||||
\ STATUS_PHANTOM STATUS_PHYSICS STATUS_RETURN_AT_EDGE STATUS_ROTATE_X
|
||||
\ STATUS_ROTATE_Y STATUS_ROTATE_Z STATUS_SANDBOX STRING_TRIM STRING_TRIM_HEAD
|
||||
\ STRING_TRIM_TAIL TRUE TWO_PI TYPE_FLOAT TYPE_INTEGER TYPE_INVALID TYPE_KEY
|
||||
\ TYPE_ROTATION TYPE_STRING TYPE_VECTOR VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY
|
||||
\ VEHICLE_ANGULAR_DEFLECTION_TIMESCALE VEHICLE_ANGULAR_FRICTION_TIMESCALE
|
||||
\ VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE VEHICLE_ANGULAR_MOTOR_DIRECTION
|
||||
\ VEHICLE_ANGULAR_MOTOR_TIMESCALE VEHICLE_BANKING_EFFICIENCY VEHICLE_BANKING_MIX
|
||||
\ VEHICLE_BANKING_TIMESCALE VEHICLE_BUOYANCY VEHICLE_FLAG_CAMERA_DECOUPLED
|
||||
\ VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT VEHICLE_FLAG_HOVER_TERRAIN_ONLY
|
||||
\ VEHICLE_FLAG_HOVER_UP_ONLY VEHICLE_FLAG_HOVER_WATER_ONLY
|
||||
\ VEHICLE_FLAG_LIMIT_MOTOR_UP VEHICLE_FLAG_LIMIT_ROLL_ONLY
|
||||
\ VEHICLE_FLAG_MOUSELOOK_BANK VEHICLE_FLAG_MOUSELOOK_STEER
|
||||
\ VEHICLE_FLAG_NO_DEFLECTION_UP VEHICLE_HOVER_EFFICIENCY VEHICLE_HOVER_HEIGHT
|
||||
\ VEHICLE_HOVER_TIMESCALE VEHICLE_LINEAR_DEFLECTION_EFFICIENCY
|
||||
\ VEHICLE_LINEAR_DEFLECTION_TIMESCALE VEHICLE_LINEAR_FRICTION_TIMESCALE
|
||||
\ VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE VEHICLE_LINEAR_MOTOR_TIMESCALE
|
||||
\ VEHICLE_LINEAR_MOTOR_DIRECTION VEHICLE_LINEAR_MOTOR_OFFSET
|
||||
\ VEHICLE_REFERENCE_FRAME VEHICLE_TYPE_AIRPLANE VEHICLE_TYPE_BALLOON
|
||||
\ VEHICLE_TYPE_BOAT VEHICLE_TYPE_CAR VEHICLE_TYPE_NONE VEHICLE_TYPE_SLED
|
||||
\ VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY VEHICLE_VERTICAL_ATTRACTION_TIMESCALE
|
||||
\ ZERO_ROTATION ZERO_VECTOR
|
||||
|
||||
" Events
|
||||
syn keyword lslEvent
|
||||
\ attach at_rot_target at_target changed collision collision_end collision_start
|
||||
\ control dataserver email http_response land_collision land_collision_end
|
||||
\ land_collision_start link_message listen money moving_end moving_start
|
||||
\ not_at_rot_target no_sensor object_rez on_rez remote_data run_time_permissions
|
||||
\ sensor state_entry state_exit timer touch touch_end touch_start not_at_target
|
||||
|
||||
" Functions
|
||||
syn keyword lslFunction
|
||||
\ llAbs llAcos llAddToLandBanList llAddToLandPassList llAdjustSoundVolume
|
||||
\ llAllowInventoryDrop llAngleBetween llApplyImpulse llApplyRotationalImpulse
|
||||
\ llAsin llAtan2 llAttachToAvatar llAvatarOnSitTarget llAxes2Rot llAxisAngle2Rot
|
||||
\ llBase64ToInteger llBase64ToString llBreakAllLinks llBreakLink llCSV2List
|
||||
\ llCeil llClearCameraParams llCloseRemoteDataChannel llCloud llCollisionFilter
|
||||
\ llCollisionSound llCollisionSprite llCos llCreateLink llDeleteSubList
|
||||
\ llDeleteSubString llDetachFromAvatar llDetectedGrab llDetectedGroup
|
||||
\ llDetectedKey llDetectedLinkNumber llDetectedName llDetectedOwner
|
||||
\ llDetectedPos llDetectedRot llDetectedType llDetectedVel llDialog llDie
|
||||
\ llDumpList2String llEdgeOfWorld llEjectFromLand llEmail llEscapeURL
|
||||
\ llEuler2Rot llFabs llFloor llForceMouselook llFrand llGetAccel llGetAgentInfo
|
||||
\ llGetAgentSize llGetAlpha llGetAndResetTime llGetAnimation llGetAnimationList
|
||||
\ llGetAttached llGetBoundingBox llGetCameraPos llGetCameraRot llGetCenterOfMass
|
||||
\ llGetColor llGetCreator llGetDate llGetEnergy llGetForce llGetFreeMemory
|
||||
\ llGetGMTclock llGetGeometricCenter llGetInventoryCreator llGetInventoryKey
|
||||
\ llGetInventoryName llGetInventoryNumber llGetInventoryPermMask
|
||||
\ llGetInventoryType llGetKey llGetLandOwnerAt llGetLinkKey llGetLinkName
|
||||
\ llGetLinkNumber llGetListEntryType llGetListLength llGetLocalPos llGetLocalRot
|
||||
\ llGetMass llGetNextEmail llGetNotecardLine llGetNumberOfNotecardLines
|
||||
\ llGetNumberOfPrims llGetNumberOfSides llGetObjectDesc llGetObjectDetails
|
||||
\ llGetObjectMass llGetObjectName llGetObjectPermMask llGetObjectPrimCount
|
||||
\ llGetOmega llGetOwner llGetOwnerKey llGetParcelDetails llGetParcelFlags
|
||||
\ llGetParcelMaxPrims llGetParcelPrimCount llGetParcelPrimOwners
|
||||
\ llGetPermissions llGetPermissionsKey llGetPos llGetPrimitiveParams
|
||||
\ llGetRegionCorner llGetRegionFPS llGetRegionFlags llGetRegionName
|
||||
\ llGetRegionTimeDilation llGetRootPosition llGetRootRotation llGetRot
|
||||
\ llGetScale llGetScriptName llGetScriptState llGetSimulatorHostname
|
||||
\ llGetStartParameter llGetStatus llGetSubString llGetSunDirection llGetTexture
|
||||
\ llGetTextureOffset llGetTextureRot llGetTextureScale llGetTime llGetTimeOfDay
|
||||
\ llGetTimestamp llGetTorque llGetUnixTime llGetVel llGetWallclock
|
||||
\ llGiveInventory llGiveInventoryList llGiveMoney llGodLikeRezObject llGround
|
||||
\ llGroundContour llGroundNormal llGroundRepel llGroundSlope llHTTPRequest
|
||||
\ llInsertString llInstantMessage llIntegerToBase64 llKey2Name llList2CSV
|
||||
\ llList2Float llList2Integer llList2Key llList2List llList2ListStrided
|
||||
\ llList2Rot llList2String llList2Vector llListFindList llListInsertList
|
||||
\ llListRandomize llListReplaceList llListSort llListStatistics llListen
|
||||
\ llListenControl llListenRemove llLoadURL llLog llLog10 llLookAt llLoopSound
|
||||
\ llLoopSoundMaster llLoopSoundSlave llMD5String llMakeExplosion llMakeFire
|
||||
\ llMakeFountain llMakeSmoke llMapDestination llMessageLinked llMinEventDelay
|
||||
\ llModPow llModifyLand llMoveToTarget llOffsetTexture llOpenRemoteDataChannel
|
||||
\ llOverMyLand llOwnerSay llParcelMediaCommandList llParcelMediaQuery
|
||||
\ llParseString2List llParseStringKeepNulls llParticleSystem llPassCollisions
|
||||
\ llPassTouches llPlaySound llPlaySoundSlave llPointAt llPow llPreloadSound
|
||||
\ llPushObject llRefreshPrimURL llRegionSay llReleaseCamera llReleaseControls
|
||||
\ llRemoteDataReply llRemoteDataSetRegion llRemoteLoadScript
|
||||
\ llRemoteLoadScriptPin llRemoveFromLandBanList llRemoveFromLandPassList
|
||||
\ llRemoveInventory llRemoveVehicleFlags llRequestAgentData
|
||||
\ llRequestInventoryData llRequestPermissions llRequestSimulatorData
|
||||
\ llResetLandBanList llResetLandPassList llResetOtherScript llResetScript
|
||||
\ llResetTime llRezAtRoot llRezObject llRot2Angle llRot2Axis llRot2Euler
|
||||
\ llRot2Fwd llRot2Left llRot2Up llRotBetween llRotLookAt llRotTarget
|
||||
\ llRotTargetRemove llRotateTexture llRound llSameGroup llSay llScaleTexture
|
||||
\ llScriptDanger llSendRemoteData llSensor llSensorRemove llSensorRepeat
|
||||
\ llSetAlpha llSetBuoyancy llSetCameraAtOffset llSetCameraEyeOffset
|
||||
\ llSetCameraParams llSetClickAction llSetColor llSetDamage llSetForce
|
||||
\ llSetForceAndTorque llSetHoverHeight llSetInventoryPermMask llSetLinkAlpha
|
||||
\ llSetLinkColor llSetLinkPrimitiveParams llSetLinkTexture llSetLocalRot
|
||||
\ llSetObjectDesc llSetObjectName llSetObjectPermMask llSetParcelMusicURL
|
||||
\ llSetPayPrice llSetPos llSetPrimURL llSetPrimitiveParams
|
||||
\ llSetRemoteScriptAccessPin llSetRot llSetScale llSetScriptState llSetSitText
|
||||
\ llSetSoundQueueing llSetSoundRadius llSetStatus llSetText llSetTexture
|
||||
\ llSetTextureAnim llSetTimerEvent llSetTorque llSetTouchText llSetVehicleFlags
|
||||
\ llSetVehicleFloatParam llSetVehicleRotationParam llSetVehicleType
|
||||
\ llSetVehicleVectorParam llShout llSin llSitTarget llSleep llSound
|
||||
\ llSoundPreload llSqrt llStartAnimation llStopAnimation llStopHover
|
||||
\ llStopLookAt llStopMoveToTarget llStopPointAt llStopSound llStringLength
|
||||
\ llStringToBase64 llStringTrim llSubStringIndex llTakeCamera llTakeControls
|
||||
\ llTan llTarget llTargetOmega llTargetRemove llTeleportAgentHome llToLower
|
||||
\ llToUpper llTriggerSound llTriggerSoundLimited llUnSit llUnescapeURL llVecDist
|
||||
\ llVecMag llVecNorm llVolumeDetect llWater llWhisper llWind llXorBase64Strings
|
||||
\ llXorBase64StringsCorrect
|
||||
|
||||
" Operators
|
||||
syn match lslOperator +[-!%&*+/<=>^|~]+ display
|
||||
|
||||
" Numbers
|
||||
syn match lslNumber +-\=\%(\<\d\+\|\%(\<\d\+\)\=\.\d\+\)\%([Ee][-+]\=\d\+\)\=\>\|\<0x\x\+\>+ display
|
||||
|
||||
" Vectors and rotations
|
||||
syn match lslVectorRot +<[-\t +.0-9A-Za-z_]\+\%(,[-\t +.0-9A-Za-z_]\+\)\{2,3}>+ contains=lslNumber display
|
||||
|
||||
" Vector and rotation properties
|
||||
syn match lslProperty +\.\@<=[sxyz]\>+ display
|
||||
|
||||
" Strings
|
||||
syn region lslString start=+"+ skip=+\\.+ end=+"+ contains=lslSpecialChar,@Spell
|
||||
syn match lslSpecialChar +\\.+ contained display
|
||||
|
||||
" Keys
|
||||
syn match lslKey +"\x\{8}-\x\{4}-\x\{4}-\x\{4}-\x\{12}"+ display
|
||||
|
||||
" Parentheses, braces and brackets
|
||||
syn match lslBlock +[][(){}]+ display
|
||||
|
||||
" Typecast operators
|
||||
syn match lslTypecast +(\%(float\|integer\|key\|list\|quaternion\|rotation\|string\|vector\))+ contains=lslType display
|
||||
|
||||
" Comments
|
||||
syn match lslComment +//.*+ contains=@Spell
|
||||
|
||||
" Define the default highlighting.
|
||||
hi def link lslKeyword Keyword
|
||||
hi def link lslType Type
|
||||
hi def link lslLabel Label
|
||||
hi def link lslConstant Constant
|
||||
hi def link lslEvent PreProc
|
||||
hi def link lslFunction Function
|
||||
hi def link lslOperator Operator
|
||||
hi def link lslNumber Number
|
||||
hi def link lslVectorRot Special
|
||||
hi def link lslProperty Identifier
|
||||
hi def link lslString String
|
||||
hi def link lslSpecialChar SpecialChar
|
||||
hi def link lslKey Special
|
||||
hi def link lslBlock Special
|
||||
hi def link lslTypecast Operator
|
||||
hi def link lslComment Comment
|
||||
|
||||
let b:current_syntax = "lsl"
|
||||
|
||||
" vim: ts=8
|
@ -1,13 +1,13 @@
|
||||
" Vim syntax file
|
||||
" Language: modules.conf(5) configuration file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-04-19
|
||||
" Latest Revision: 2007-06-17
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
setlocal iskeyword=@,48-57,-
|
||||
setlocal iskeyword+=-
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
@ -1,5 +1,5 @@
|
||||
" Created : Wed 26 Apr 2006 01:20:53 AM CDT
|
||||
" Modified : Mon 20 Nov 2006 12:14:16 AM PST
|
||||
" Modified : Mon 27 Aug 2007 12:10:37 PM PDT
|
||||
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
|
||||
" Description : Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up)
|
||||
|
||||
@ -31,19 +31,19 @@ syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
|
||||
\ fullscreen reverseVideo loginShell
|
||||
\ jumpScroll scrollBar scrollbarRight
|
||||
\ scrollbarFloating scrollTtyOutputInhibit
|
||||
\ scrollTtyKeypress scrollWithBuffer
|
||||
\ transparentForce transparentScrollbar
|
||||
\ transparentMenubar transparentTabbar
|
||||
\ tabUsePixmap utmpInhibit visualBell mapAlert
|
||||
\ meta8 mouseWheelScrollPage multibyte_cursor
|
||||
\ scrollTtyKeypress 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
|
||||
\ overrideRedirect broadcast smartResize
|
||||
\ pointerBlank cursorBlink noSysConfig
|
||||
\ disableMacros linuxHomeEndKey sessionMgt
|
||||
\ boldColors smoothResize useFifo veryBright
|
||||
syn match mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
|
||||
\ '\v<transparent>'
|
||||
syn match mrxvtrcBColon contained skipwhite
|
||||
@ -74,8 +74,7 @@ syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcNColon,mrxvtrcError
|
||||
\ externalBorder internalBorder lineSpace
|
||||
\ pointerBlankDelay cursorBlinkInterval
|
||||
\ shading backgroundFade bgRefreshInterval
|
||||
\ fading focusDelay opacity opacityDegree
|
||||
\ xftPSize
|
||||
\ fading opacity opacityDegree xftPSize
|
||||
syn match mrxvtrcNColon contained skipwhite
|
||||
\ nextgroup=mrxvtrcNumVal,mrxvtrcError ':'
|
||||
syn match mrxvtrcNumVal contained skipwhite nextgroup=mrxvtrcError
|
||||
@ -91,7 +90,6 @@ syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError
|
||||
\ 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 ':'
|
||||
@ -104,6 +102,7 @@ syn match mrxvtrcProfile contained nextgroup=@mrxvtrcPOpts,mrxvtrcError
|
||||
syn keyword mrxvtrcPSOpts contained nextgroup=mrxvtrcSColon,mrxvtrcError
|
||||
\ tabTitle command holdExitText holdExitTitle
|
||||
\ Pixmap workingDirectory titleFormat
|
||||
\ winTitleFormat
|
||||
syn keyword mrxvtrcPCOpts contained nextgroup=mrxvtrcCColon,mrxvtrcError
|
||||
\ background foreground
|
||||
syn keyword mrxvtrcPNOpts contained nextgroup=mrxvtrcNColon,mrxvtrcError
|
||||
@ -205,7 +204,7 @@ syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcError
|
||||
\ Dummy Copy Paste ToggleVeryBold
|
||||
\ ToggleTransparency ToggleBroadcast
|
||||
\ ToggleHold SetTitle ToggleMacros
|
||||
\ ToggleFullscreen
|
||||
\ ToggleFullscreen Raise
|
||||
|
||||
" Macros with a string argument
|
||||
syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcStrVal
|
||||
@ -214,7 +213,7 @@ syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcStrVal
|
||||
" Macros with a numeric argument
|
||||
syn keyword mrxvtrcMacro contained skipwhite
|
||||
\ nextgroup=mrxvtrcNumVal,mrxvtrcError
|
||||
\ Close GotoTab MoveTab ResizeFont
|
||||
\ Close GotoTab MoveTab ResizeFont UseFifo
|
||||
|
||||
" NewTab macro
|
||||
syn keyword mrxvtrcMacro contained skipwhite
|
||||
|
@ -1,10 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: mysql
|
||||
" Maintainer: Kenneth J. Pronovici <pronovic@ieee.org>
|
||||
" Last Change: $Date$
|
||||
" Last Change: $LastChangedDate: 2007-12-19 10:59:39 -0600 (Wed, 19 Dec 2007) $
|
||||
" Filenames: *.mysql
|
||||
" URL: ftp://cedar-solutions.com/software/mysql.vim
|
||||
" Note: The definitions below are taken from the mysql user manual as of April 2002, for version 3.23
|
||||
" URL: ftp://cedar-solutions.com/software/mysql.vim
|
||||
" Note: The definitions below are taken from the mysql user manual as of April 2002, for version 3.23
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@ -18,56 +18,56 @@ endif
|
||||
syn case ignore
|
||||
|
||||
" General keywords which don't fall into other categories
|
||||
syn keyword mysqlKeyword action add after aggregate all alter as asc auto_increment avg avg_row_length
|
||||
syn keyword mysqlKeyword both by
|
||||
syn keyword mysqlKeyword cascade change character check checksum column columns comment constraint create cross
|
||||
syn keyword mysqlKeyword current_date current_time current_timestamp
|
||||
syn keyword mysqlKeyword data database databases day day_hour day_minute day_second
|
||||
syn keyword mysqlKeyword default delayed delay_key_write delete desc describe distinct distinctrow drop
|
||||
syn keyword mysqlKeyword enclosed escape escaped explain
|
||||
syn keyword mysqlKeyword fields file first flush for foreign from full function
|
||||
syn keyword mysqlKeyword global grant grants group
|
||||
syn keyword mysqlKeyword having heap high_priority hosts hour hour_minute hour_second
|
||||
syn keyword mysqlKeyword identified ignore index infile inner insert insert_id into isam
|
||||
syn keyword mysqlKeyword join
|
||||
syn keyword mysqlKeyword key keys kill last_insert_id leading left limit lines load local lock logs long
|
||||
syn keyword mysqlKeyword low_priority
|
||||
syn keyword mysqlKeyword match max_rows middleint min_rows minute minute_second modify month myisam
|
||||
syn keyword mysqlKeyword natural no
|
||||
syn keyword mysqlKeyword on optimize option optionally order outer outfile
|
||||
syn keyword mysqlKeyword pack_keys partial password primary privileges procedure process processlist
|
||||
syn keyword mysqlKeyword read references reload rename replace restrict returns revoke row rows
|
||||
syn keyword mysqlKeyword second select show shutdown soname sql_big_result sql_big_selects sql_big_tables sql_log_off
|
||||
syn keyword mysqlKeyword sql_log_update sql_low_priority_updates sql_select_limit sql_small_result sql_warnings starting
|
||||
syn keyword mysqlKeyword status straight_join string
|
||||
syn keyword mysqlKeyword table tables temporary terminated to trailing type
|
||||
syn keyword mysqlKeyword unique unlock unsigned update usage use using
|
||||
syn keyword mysqlKeyword values varbinary variables varying
|
||||
syn keyword mysqlKeyword where with write
|
||||
syn keyword mysqlKeyword year_month
|
||||
syn keyword mysqlKeyword zerofill
|
||||
syn keyword mysqlKeyword action add after aggregate all alter as asc auto_increment avg avg_row_length
|
||||
syn keyword mysqlKeyword both by
|
||||
syn keyword mysqlKeyword cascade change character check checksum column columns comment constraint create cross
|
||||
syn keyword mysqlKeyword current_date current_time current_timestamp
|
||||
syn keyword mysqlKeyword data database databases day day_hour day_minute day_second
|
||||
syn keyword mysqlKeyword default delayed delay_key_write delete desc describe distinct distinctrow drop
|
||||
syn keyword mysqlKeyword enclosed escape escaped explain
|
||||
syn keyword mysqlKeyword fields file first flush for foreign from full function
|
||||
syn keyword mysqlKeyword global grant grants group
|
||||
syn keyword mysqlKeyword having heap high_priority hosts hour hour_minute hour_second
|
||||
syn keyword mysqlKeyword identified ignore index infile inner insert insert_id into isam
|
||||
syn keyword mysqlKeyword join
|
||||
syn keyword mysqlKeyword key keys kill last_insert_id leading left limit lines load local lock logs long
|
||||
syn keyword mysqlKeyword low_priority
|
||||
syn keyword mysqlKeyword match max_rows middleint min_rows minute minute_second modify month myisam
|
||||
syn keyword mysqlKeyword natural no
|
||||
syn keyword mysqlKeyword on optimize option optionally order outer outfile
|
||||
syn keyword mysqlKeyword pack_keys partial password primary privileges procedure process processlist
|
||||
syn keyword mysqlKeyword read references reload rename replace restrict returns revoke row rows
|
||||
syn keyword mysqlKeyword second select show shutdown soname sql_big_result sql_big_selects sql_big_tables sql_log_off
|
||||
syn keyword mysqlKeyword sql_log_update sql_low_priority_updates sql_select_limit sql_small_result sql_warnings starting
|
||||
syn keyword mysqlKeyword status straight_join string
|
||||
syn keyword mysqlKeyword table tables temporary terminated to trailing type
|
||||
syn keyword mysqlKeyword unique unlock unsigned update usage use using
|
||||
syn keyword mysqlKeyword values varbinary variables varying
|
||||
syn keyword mysqlKeyword where with write
|
||||
syn keyword mysqlKeyword year_month
|
||||
syn keyword mysqlKeyword zerofill
|
||||
|
||||
" Special values
|
||||
syn keyword mysqlSpecial false null true
|
||||
syn keyword mysqlSpecial false null true
|
||||
|
||||
" Strings (single- and double-quote)
|
||||
syn region mysqlString start=+"+ skip=+\\\\\|\\"+ end=+"+
|
||||
syn region mysqlString start=+'+ skip=+\\\\\|\\'+ end=+'+
|
||||
syn region mysqlString start=+"+ skip=+\\\\\|\\"+ end=+"+
|
||||
syn region mysqlString start=+'+ skip=+\\\\\|\\'+ end=+'+
|
||||
|
||||
" Numbers and hexidecimal values
|
||||
syn match mysqlNumber "-\=\<[0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*\.[0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*e[+-]\=[0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*\.[0-9]*e[+-]\=[0-9]*\>"
|
||||
syn match mysqlNumber "\<0x[abcdefABCDEF0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*\.[0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*e[+-]\=[0-9]*\>"
|
||||
syn match mysqlNumber "-\=\<[0-9]*\.[0-9]*e[+-]\=[0-9]*\>"
|
||||
syn match mysqlNumber "\<0x[abcdefABCDEF0-9]*\>"
|
||||
|
||||
" User variables
|
||||
syn match mysqlVariable "@\a*[A-Za-z0-9]*[._]*[A-Za-z0-9]*"
|
||||
syn match mysqlVariable "@\a*[A-Za-z0-9]*[._]*[A-Za-z0-9]*"
|
||||
|
||||
" Comments (c-style, mysql-style and modified sql-style)
|
||||
syn region mysqlComment start="/\*" end="\*/"
|
||||
syn match mysqlComment "#.*"
|
||||
syn match mysqlComment "-- .*"
|
||||
syn region mysqlComment start="/\*" end="\*/"
|
||||
syn match mysqlComment "#.*"
|
||||
syn match mysqlComment "--\_s.*"
|
||||
syn sync ccomment mysqlComment
|
||||
|
||||
" Column types
|
||||
@ -84,189 +84,189 @@ syn sync ccomment mysqlComment
|
||||
" The second problem is that some of these keywords are included in
|
||||
" function names. For instance, year() is part of the name of the
|
||||
" dayofyear() function, and the dec keyword (no parenthesis) is part of
|
||||
" the name of the decode() function.
|
||||
" the name of the decode() function.
|
||||
|
||||
syn keyword mysqlType tinyint smallint mediumint int integer bigint
|
||||
syn keyword mysqlType date datetime time bit bool
|
||||
syn keyword mysqlType tinytext mediumtext longtext text
|
||||
syn keyword mysqlType tinyblob mediumblob longblob blob
|
||||
syn region mysqlType start="float\W" end="."me=s-1
|
||||
syn region mysqlType start="float$" end="."me=s-1
|
||||
syn region mysqlType start="float(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="double\W" end="."me=s-1
|
||||
syn region mysqlType start="double$" end="."me=s-1
|
||||
syn region mysqlType start="double(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="double precision\W" end="."me=s-1
|
||||
syn region mysqlType start="double precision$" end="."me=s-1
|
||||
syn region mysqlType start="double precision(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="real\W" end="."me=s-1
|
||||
syn region mysqlType start="real$" end="."me=s-1
|
||||
syn region mysqlType start="real(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="numeric(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="dec\W" end="."me=s-1
|
||||
syn region mysqlType start="dec$" end="."me=s-1
|
||||
syn region mysqlType start="dec(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="decimal\W" end="."me=s-1
|
||||
syn region mysqlType start="decimal$" end="."me=s-1
|
||||
syn region mysqlType start="decimal(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="\Wtimestamp\W" end="."me=s-1
|
||||
syn region mysqlType start="\Wtimestamp$" end="."me=s-1
|
||||
syn region mysqlType start="\Wtimestamp(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="^timestamp\W" end="."me=s-1
|
||||
syn region mysqlType start="^timestamp$" end="."me=s-1
|
||||
syn region mysqlType start="^timestamp(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="\Wyear(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="^year(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="char(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="varchar(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="enum(" end=")" contains=mysqlString,mysqlVariable
|
||||
syn region mysqlType start="\Wset(" end=")" contains=mysqlString,mysqlVariable
|
||||
syn region mysqlType start="^set(" end=")" contains=mysqlString,mysqlVariable
|
||||
syn keyword mysqlType tinyint smallint mediumint int integer bigint
|
||||
syn keyword mysqlType date datetime time bit bool
|
||||
syn keyword mysqlType tinytext mediumtext longtext text
|
||||
syn keyword mysqlType tinyblob mediumblob longblob blob
|
||||
syn region mysqlType start="float\W" end="."me=s-1
|
||||
syn region mysqlType start="float$" end="."me=s-1
|
||||
syn region mysqlType start="float(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="double\W" end="."me=s-1
|
||||
syn region mysqlType start="double$" end="."me=s-1
|
||||
syn region mysqlType start="double(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="double precision\W" end="."me=s-1
|
||||
syn region mysqlType start="double precision$" end="."me=s-1
|
||||
syn region mysqlType start="double precision(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="real\W" end="."me=s-1
|
||||
syn region mysqlType start="real$" end="."me=s-1
|
||||
syn region mysqlType start="real(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="numeric(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="dec\W" end="."me=s-1
|
||||
syn region mysqlType start="dec$" end="."me=s-1
|
||||
syn region mysqlType start="dec(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="decimal\W" end="."me=s-1
|
||||
syn region mysqlType start="decimal$" end="."me=s-1
|
||||
syn region mysqlType start="decimal(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="\Wtimestamp\W" end="."me=s-1
|
||||
syn region mysqlType start="\Wtimestamp$" end="."me=s-1
|
||||
syn region mysqlType start="\Wtimestamp(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="^timestamp\W" end="."me=s-1
|
||||
syn region mysqlType start="^timestamp$" end="."me=s-1
|
||||
syn region mysqlType start="^timestamp(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="\Wyear(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="^year(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="char(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="varchar(" end=")" contains=mysqlNumber,mysqlVariable
|
||||
syn region mysqlType start="enum(" end=")" contains=mysqlString,mysqlVariable
|
||||
syn region mysqlType start="\Wset(" end=")" contains=mysqlString,mysqlVariable
|
||||
syn region mysqlType start="^set(" end=")" contains=mysqlString,mysqlVariable
|
||||
|
||||
" Logical, string and numeric operators
|
||||
syn keyword mysqlOperator between not and or is in like regexp rlike binary exists
|
||||
syn region mysqlOperator start="isnull(" end=")" contains=ALL
|
||||
syn region mysqlOperator start="coalesce(" end=")" contains=ALL
|
||||
syn region mysqlOperator start="interval(" end=")" contains=ALL
|
||||
syn keyword mysqlOperator between not and or is in like regexp rlike binary exists
|
||||
syn region mysqlOperator start="isnull(" end=")" contains=ALL
|
||||
syn region mysqlOperator start="coalesce(" end=")" contains=ALL
|
||||
syn region mysqlOperator start="interval(" end=")" contains=ALL
|
||||
|
||||
" Control flow functions
|
||||
syn keyword mysqlFlow case when then else end
|
||||
syn region mysqlFlow start="ifnull(" end=")" contains=ALL
|
||||
syn region mysqlFlow start="nullif(" end=")" contains=ALL
|
||||
syn region mysqlFlow start="if(" end=")" contains=ALL
|
||||
syn keyword mysqlFlow case when then else end
|
||||
syn region mysqlFlow start="ifnull(" end=")" contains=ALL
|
||||
syn region mysqlFlow start="nullif(" end=")" contains=ALL
|
||||
syn region mysqlFlow start="if(" end=")" contains=ALL
|
||||
|
||||
" General Functions
|
||||
"
|
||||
" I'm leery of just defining keywords for functions, since according to the MySQL manual:
|
||||
"
|
||||
" Function names do not clash with table or column names. For example, ABS is a
|
||||
" valid column name. The only restriction is that for a function call, no spaces
|
||||
" are allowed between the function name and the `(' that follows it.
|
||||
" Function names do not clash with table or column names. For example, ABS is a
|
||||
" valid column name. The only restriction is that for a function call, no spaces
|
||||
" are allowed between the function name and the `(' that follows it.
|
||||
"
|
||||
" This means that if I want to highlight function names properly, I have to use a
|
||||
" region to define them, not just a keyword. This will probably cause the syntax file
|
||||
" This means that if I want to highlight function names properly, I have to use a
|
||||
" region to define them, not just a keyword. This will probably cause the syntax file
|
||||
" to load more slowly, but at least it will be 'correct'.
|
||||
|
||||
syn region mysqlFunction start="abs(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="acos(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="adddate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ascii(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="asin(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="atan(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="atan2(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="benchmark(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bin(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bit_and(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bit_count(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bit_or(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ceiling(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="character_length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="char_length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="concat(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="concat_ws(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="connection_id(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="conv(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="cos(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="cot(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="count(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="curdate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="curtime(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="date_add(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="date_format(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="date_sub(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayname(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayofmonth(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayofweek(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayofyear(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="decode(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="degrees(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="elt(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="encode(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="encrypt(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="exp(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="export_set(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="extract(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="field(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="find_in_set(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="floor(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="format(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="from_days(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="from_unixtime(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="get_lock(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="greatest(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="group_unique_users(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="hex(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="inet_aton(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="inet_ntoa(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="instr(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="lcase(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="least(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="load_file(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="locate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="log(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="log10(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="lower(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="lpad(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ltrim(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="make_set(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="master_pos_wait(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="max(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="md5(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="mid(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="min(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="mod(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="monthname(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="now(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="oct(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="octet_length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ord(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="period_add(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="period_diff(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="pi(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="position(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="pow(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="power(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="quarter(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="radians(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="rand(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="release_lock(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="repeat(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="reverse(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="round(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="rpad(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="rtrim(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sec_to_time(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="session_user(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sign(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sin(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="soundex(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="space(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sqrt(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="std(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="stddev(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="strcmp(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="subdate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="substring(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="substring_index(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="subtime(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sum(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sysdate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="system_user(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="tan(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="time_format(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="time_to_sec(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="to_days(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="trim(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ucase(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="unique_users(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="unix_timestamp(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="upper(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="user(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="version(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="week(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="weekday(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="yearweek(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="abs(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="acos(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="adddate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ascii(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="asin(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="atan(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="atan2(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="benchmark(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bin(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bit_and(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bit_count(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="bit_or(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ceiling(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="character_length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="char_length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="concat(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="concat_ws(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="connection_id(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="conv(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="cos(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="cot(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="count(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="curdate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="curtime(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="date_add(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="date_format(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="date_sub(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayname(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayofmonth(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayofweek(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="dayofyear(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="decode(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="degrees(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="elt(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="encode(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="encrypt(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="exp(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="export_set(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="extract(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="field(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="find_in_set(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="floor(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="format(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="from_days(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="from_unixtime(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="get_lock(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="greatest(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="group_unique_users(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="hex(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="inet_aton(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="inet_ntoa(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="instr(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="lcase(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="least(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="load_file(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="locate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="log(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="log10(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="lower(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="lpad(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ltrim(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="make_set(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="master_pos_wait(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="max(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="md5(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="mid(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="min(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="mod(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="monthname(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="now(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="oct(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="octet_length(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ord(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="period_add(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="period_diff(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="pi(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="position(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="pow(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="power(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="quarter(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="radians(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="rand(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="release_lock(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="repeat(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="reverse(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="round(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="rpad(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="rtrim(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sec_to_time(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="session_user(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sign(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sin(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="soundex(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="space(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sqrt(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="std(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="stddev(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="strcmp(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="subdate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="substring(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="substring_index(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="subtime(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sum(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="sysdate(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="system_user(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="tan(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="time_format(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="time_to_sec(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="to_days(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="trim(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="ucase(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="unique_users(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="unix_timestamp(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="upper(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="user(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="version(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="week(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="weekday(" end=")" contains=ALL
|
||||
syn region mysqlFunction start="yearweek(" end=")" contains=ALL
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
@ -279,16 +279,16 @@ if version >= 508 || !exists("did_mysql_syn_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink mysqlKeyword Statement
|
||||
HiLink mysqlSpecial Special
|
||||
HiLink mysqlString String
|
||||
HiLink mysqlNumber Number
|
||||
HiLink mysqlVariable Identifier
|
||||
HiLink mysqlComment Comment
|
||||
HiLink mysqlType Type
|
||||
HiLink mysqlOperator Statement
|
||||
HiLink mysqlFlow Statement
|
||||
HiLink mysqlFunction Function
|
||||
HiLink mysqlKeyword Statement
|
||||
HiLink mysqlSpecial Special
|
||||
HiLink mysqlString String
|
||||
HiLink mysqlNumber Number
|
||||
HiLink mysqlVariable Identifier
|
||||
HiLink mysqlComment Comment
|
||||
HiLink mysqlType Type
|
||||
HiLink mysqlOperator Statement
|
||||
HiLink mysqlFlow Statement
|
||||
HiLink mysqlFunction Function
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
@ -1,244 +1,6 @@
|
||||
" Vim syntax file
|
||||
" Language: phtml PHP 2.0
|
||||
" Maintainer: Lutz Eymers <ixtab@polzin.com>
|
||||
" URL: http://www.isp.de/data/phtml.vim
|
||||
" Email: Subject: send syntax_vim.tgz
|
||||
" Last change: 2003 May 11
|
||||
"
|
||||
" Options phtml_sql_query = 1 for SQL syntax highligthing inside strings
|
||||
" phtml_minlines = x to sync at least x lines backwards
|
||||
" PHTML used to be the filetype for PHP 2.0. Now everything is PHP.
|
||||
|
||||
" 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")
|
||||
runtime! syntax/php.vim
|
||||
endif
|
||||
|
||||
if !exists("main_syntax")
|
||||
let main_syntax = 'phtml'
|
||||
endif
|
||||
|
||||
if version < 600
|
||||
so <sfile>:p:h/html.vim
|
||||
else
|
||||
runtime! syntax/html.vim
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
syn cluster htmlPreproc add=phtmlRegionInsideHtmlTags
|
||||
|
||||
if exists( "phtml_sql_query")
|
||||
if phtml_sql_query == 1
|
||||
syn include @phtmlSql <sfile>:p:h/sql.vim
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
endif
|
||||
syn cluster phtmlSql remove=sqlString,sqlComment
|
||||
|
||||
syn case match
|
||||
|
||||
" Env Variables
|
||||
syn keyword phtmlEnvVar SERVER_SOFTWARE SERVER_NAME SERVER_URL GATEWAY_INTERFACE contained
|
||||
syn keyword phtmlEnvVar SERVER_PROTOCOL SERVER_PORT REQUEST_METHOD PATH_INFO contained
|
||||
syn keyword phtmlEnvVar PATH_TRANSLATED SCRIPT_NAME QUERY_STRING REMOTE_HOST contained
|
||||
syn keyword phtmlEnvVar REMOTE_ADDR AUTH_TYPE REMOTE_USER CONTEN_TYPE contained
|
||||
syn keyword phtmlEnvVar CONTENT_LENGTH HTTPS HTTPS_KEYSIZE HTTPS_SECRETKEYSIZE contained
|
||||
syn keyword phtmlEnvVar HTTP_ACCECT HTTP_USER_AGENT HTTP_IF_MODIFIED_SINCE contained
|
||||
syn keyword phtmlEnvVar HTTP_FROM HTTP_REFERER contained
|
||||
syn keyword phtmlEnvVar PHP_SELF contained
|
||||
|
||||
syn case ignore
|
||||
|
||||
" Internal Variables
|
||||
syn keyword phtmlIntVar phperrmsg php_self contained
|
||||
|
||||
" Comment
|
||||
syn region phtmlComment start="/\*" end="\*/" contained contains=phtmlTodo
|
||||
|
||||
" Function names
|
||||
syn keyword phtmlFunctions Abs Ada_Close Ada_Connect Ada_Exec Ada_FetchRow contained
|
||||
syn keyword phtmlFunctions Ada_FieldName Ada_FieldNum Ada_FieldType contained
|
||||
syn keyword phtmlFunctions Ada_FreeResult Ada_NumFields Ada_NumRows Ada_Result contained
|
||||
syn keyword phtmlFunctions Ada_ResultAll AddSlashes ASort BinDec Ceil ChDir contained
|
||||
syn keyword phtmlFunctions AdaGrp ChMod ChOwn Chop Chr ClearStack ClearStatCache contained
|
||||
syn keyword phtmlFunctions closeDir CloseLog Cos Count Crypt Date dbList contained
|
||||
syn keyword phtmlFunctions dbmClose dbmDelete dbmExists dbmFetch dbmFirstKey contained
|
||||
syn keyword phtmlFunctions dbmInsert dbmNextKey dbmOpen dbmReplace DecBin DecHex contained
|
||||
syn keyword phtmlFunctions DecOct doubleval Echo End ereg eregi ereg_replace contained
|
||||
syn keyword phtmlFunctions eregi_replace EscapeShellCmd Eval Exec Exit Exp contained
|
||||
syn keyword phtmlFunctions fclose feof fgets fgetss File fileAtime fileCtime contained
|
||||
syn keyword phtmlFunctions fileGroup fileInode fileMtime fileOwner filePerms contained
|
||||
syn keyword phtmlFunctions fileSize fileType Floor Flush fopen fputs FPassThru contained
|
||||
syn keyword phtmlFunctions fseek fsockopen ftell getAccDir GetEnv getHostByName contained
|
||||
syn keyword phtmlFunctions getHostByAddr GetImageSize getLastAcess contained
|
||||
syn keyword phtmlFunctions getLastbrowser getLastEmail getLastHost getLastMod contained
|
||||
syn keyword phtmlFunctions getLastref getLogDir getMyInode getMyPid getMyUid contained
|
||||
syn keyword phtmlFunctions getRandMax getStartLogging getToday getTotal GetType contained
|
||||
syn keyword phtmlFunctions gmDate Header HexDec HtmlSpecialChars ImageArc contained
|
||||
syn keyword phtmlFunctions ImageChar ImageCharUp IamgeColorAllocate contained
|
||||
syn keyword phtmlFunctions ImageColorTransparent ImageCopyResized ImageCreate contained
|
||||
syn keyword phtmlFunctions ImageCreateFromGif ImageDestroy ImageFill contained
|
||||
syn keyword phtmlFunctions ImageFilledPolygon ImageFilledRectangle contained
|
||||
syn keyword phtmlFunctions ImageFillToBorder ImageGif ImageInterlace ImageLine contained
|
||||
syn keyword phtmlFunctions ImagePolygon ImageRectangle ImageSetPixel contained
|
||||
syn keyword phtmlFunctions ImageString ImageStringUp ImageSX ImageSY Include contained
|
||||
syn keyword phtmlFunctions InitSyslog intval IsSet Key Link LinkInfo Log Log10 contained
|
||||
syn keyword phtmlFunctions LosAs Mail Max Md5 mi_Close mi_Connect mi_DBname contained
|
||||
syn keyword phtmlFunctions mi_Exec mi_FieldName mi_FieldNum mi_NumFields contained
|
||||
syn keyword phtmlFunctions mi_NumRows mi_Result Microtime Min MkDir MkTime msql contained
|
||||
syn keyword phtmlFunctions msql_connect msql_CreateDB msql_dbName msql_DropDB contained
|
||||
syn keyword phtmlFunctions msqlFieldFlags msql_FieldLen msql_FieldName contained
|
||||
syn keyword phtmlFunctions msql_FieldType msql_FreeResult msql_ListDBs contained
|
||||
syn keyword phtmlFunctions msql_Listfields msql_ListTables msql_NumFields contained
|
||||
syn keyword phtmlFunctions msql_NumRows msql_RegCase msql_Result msql_TableName contained
|
||||
syn keyword phtmlFunctions mysql mysql_affected_rows mysql_close mysql_connect contained
|
||||
syn keyword phtmlFunctions mysql_CreateDB mysql_dbName mysqlDropDB contained
|
||||
syn keyword phtmlFunctions mysql_FieldFlags mysql_FieldLen mysql_FieldName contained
|
||||
syn keyword phtmlFunctions mysql_FieldType mysql_FreeResult mysql_insert_id contained
|
||||
syn keyword phtmlFunctions mysql_listDBs mysql_Listfields mysql_ListTables contained
|
||||
syn keyword phtmlFunctions mysql_NumFields mysql_NumRows mysql_Result contained
|
||||
syn keyword phtmlFunctions mysql_TableName Next OctDec openDir OpenLog contained
|
||||
syn keyword phtmlFunctions Ora_Bind Ora_Close Ora_Commit Ora_CommitOff contained
|
||||
syn keyword phtmlFunctions Ora_CommitOn Ora_Exec Ora_Fetch Ora_GetColumn contained
|
||||
syn keyword phtmlFunctions Ora_Logoff Ora_Logon Ora_Parse Ora_Rollback Ord contained
|
||||
syn keyword phtmlFunctions Parse_str PassThru pclose pg_Close pg_Connect contained
|
||||
syn keyword phtmlFunctions pg_DBname pg_ErrorMessage pg_Exec pg_FieldName contained
|
||||
syn keyword phtmlFunctions pg_FieldPrtLen pg_FieldNum pg_FieldSize contained
|
||||
syn keyword phtmlFunctions pg_FieldType pg_FreeResult pg_GetLastOid pg_Host contained
|
||||
syn keyword phtmlFunctions pg_NumFields pg_NumRows pg_Options pg_Port contained
|
||||
syn keyword phtmlFunctions pg_Result pg_tty phpInfo phpVersion popen pos pow contained
|
||||
syn keyword phtmlFunctions Prev PutEnv QuoteMeta Rand readDir ReadFile ReadLink contained
|
||||
syn keyword phtmlFunctions reg_Match reg_replace reg_Search Rename Reset return contained
|
||||
syn keyword phtmlFunctions rewind rewindDir RmDir rSort SetCookie SetErrorReporting contained
|
||||
syn keyword phtmlFunctions SetLogging SetShowInfo SetType shl shr Sin Sleep contained
|
||||
syn keyword phtmlFunctions Solid_Close Solid_Connect Solid_Exec Solid_FetchRow contained
|
||||
syn keyword phtmlFunctions Solid_FieldName Solid_FieldNum Solid_FreeResult contained
|
||||
syn keyword phtmlFunctions Solid_NumFields Solid_NumRows Solid_Result Sort contained
|
||||
syn keyword phtmlFunctions Spundtex Sprintf Sqrt Srand strchr strtr contained
|
||||
syn keyword phtmlFunctions StripSlashes strlen strchr strstr strtok strtolower contained
|
||||
syn keyword phtmlFunctions strtoupper strval substr sybSQL_CheckConnect contained
|
||||
syn keyword phtmlFunctions sybSQL_DBUSE sybSQL_Connect sybSQL_Exit contained
|
||||
syn keyword phtmlFunctions sybSQL_Fieldname sybSQL_GetField sybSQL_IsRow contained
|
||||
syn keyword phtmlFunctions sybSQL_NextRow sybSQL_NumFields sybSQL_NumRows contained
|
||||
syn keyword phtmlFunctions sybSQL_Query sybSQL_Result sybSQL_Result sybSQL_Seek contained
|
||||
syn keyword phtmlFunctions Symlink syslog System Tan TempNam Time Umask UniqId contained
|
||||
syn keyword phtmlFunctions Unlink Unset UrlDecode UrlEncode USleep Virtual contained
|
||||
syn keyword phtmlFunctions SecureVar contained
|
||||
|
||||
" Conditional
|
||||
syn keyword phtmlConditional if else elseif endif switch endswitch contained
|
||||
|
||||
" Repeat
|
||||
syn keyword phtmlRepeat while endwhile contained
|
||||
|
||||
" Repeat
|
||||
syn keyword phtmlLabel case default contained
|
||||
|
||||
" Statement
|
||||
syn keyword phtmlStatement break return continue exit contained
|
||||
|
||||
" Operator
|
||||
syn match phtmlOperator "[-=+%^&|*!]" contained
|
||||
syn match phtmlOperator "[-+*/%^&|]=" contained
|
||||
syn match phtmlOperator "/[^*]"me=e-1 contained
|
||||
syn match phtmlOperator "\$" contained
|
||||
syn match phtmlRelation "&&" contained
|
||||
syn match phtmlRelation "||" contained
|
||||
syn match phtmlRelation "[!=<>]=" contained
|
||||
syn match phtmlRelation "[<>]" contained
|
||||
|
||||
" Identifier
|
||||
syn match phtmlIdentifier "$\h\w*" contained contains=phtmlEnvVar,phtmlIntVar,phtmlOperator
|
||||
|
||||
|
||||
" Include
|
||||
syn keyword phtmlInclude include contained
|
||||
|
||||
" Definesag
|
||||
syn keyword phtmlDefine Function contained
|
||||
|
||||
" String
|
||||
syn region phtmlString keepend matchgroup=None start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=phtmlIdentifier,phtmlSpecialChar,@phtmlSql contained
|
||||
|
||||
" Number
|
||||
syn match phtmlNumber "-\=\<\d\+\>" contained
|
||||
|
||||
" Float
|
||||
syn match phtmlFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" contained
|
||||
|
||||
" SpecialChar
|
||||
syn match phtmlSpecialChar "\\[abcfnrtyv\\]" contained
|
||||
syn match phtmlSpecialChar "\\\d\{3}" contained contains=phtmlOctalError
|
||||
syn match phtmlSpecialChar "\\x[0-9a-fA-F]\{2}" contained
|
||||
|
||||
syn match phtmlOctalError "[89]" contained
|
||||
|
||||
|
||||
syn match phtmlParentError "[)}\]]" contained
|
||||
|
||||
" Todo
|
||||
syn keyword phtmlTodo TODO Todo todo contained
|
||||
|
||||
" Parents
|
||||
syn cluster phtmlInside contains=phtmlComment,phtmlFunctions,phtmlIdentifier,phtmlConditional,phtmlRepeat,phtmlLabel,phtmlStatement,phtmlOperator,phtmlRelation,phtmlString,phtmlNumber,phtmlFloat,phtmlSpecialChar,phtmlParent,phtmlParentError,phtmlInclude
|
||||
|
||||
syn cluster phtmlTop contains=@phtmlInside,phtmlInclude,phtmlDefine,phtmlParentError,phtmlTodo
|
||||
syn region phtmlParent matchgroup=Delimiter start="(" end=")" contained contains=@phtmlInside
|
||||
syn region phtmlParent matchgroup=Delimiter start="{" end="}" contained contains=@phtmlInside
|
||||
syn region phtmlParent matchgroup=Delimiter start="\[" end="\]" contained contains=@phtmlInside
|
||||
|
||||
syn region phtmlRegion keepend matchgroup=Delimiter start="<?" skip=+(.*>.*)\|".\{-}>.\{-}"\|/\*.\{-}>.\{-}\*/+ end=">" contains=@phtmlTop
|
||||
syn region phtmlRegionInsideHtmlTags keepend matchgroup=Delimiter start="<?" skip=+(.*>.*)\|/\*.\{-}>.\{-}\*/+ end=">" contains=@phtmlTop contained
|
||||
|
||||
" sync
|
||||
if exists("phtml_minlines")
|
||||
exec "syn sync minlines=" . phtml_minlines
|
||||
else
|
||||
syn sync minlines=100
|
||||
endif
|
||||
|
||||
" 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_phtml_syn_inits")
|
||||
if version < 508
|
||||
let did_phtml_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink phtmlComment Comment
|
||||
HiLink phtmlString String
|
||||
HiLink phtmlNumber Number
|
||||
HiLink phtmlFloat Float
|
||||
HiLink phtmlIdentifier Identifier
|
||||
HiLink phtmlIntVar Identifier
|
||||
HiLink phtmlEnvVar Identifier
|
||||
HiLink phtmlFunctions Function
|
||||
HiLink phtmlRepeat Repeat
|
||||
HiLink phtmlConditional Conditional
|
||||
HiLink phtmlLabel Label
|
||||
HiLink phtmlStatement Statement
|
||||
HiLink phtmlType Type
|
||||
HiLink phtmlInclude Include
|
||||
HiLink phtmlDefine Define
|
||||
HiLink phtmlSpecialChar SpecialChar
|
||||
HiLink phtmlParentError Error
|
||||
HiLink phtmlOctalError Error
|
||||
HiLink phtmlTodo Todo
|
||||
HiLink phtmlOperator Operator
|
||||
HiLink phtmlRelation Operator
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "phtml"
|
||||
|
||||
if main_syntax == 'phtml'
|
||||
unlet main_syntax
|
||||
endif
|
||||
|
||||
" vim: ts=8
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Quake[1-3] configuration file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-04-19
|
||||
" Latest Revision: 2007-06-17
|
||||
" quake_is_quake1 - the syntax is to be used for quake1 configs
|
||||
" quake_is_quake2 - the syntax is to be used for quake2 configs
|
||||
" quake_is_quake3 - the syntax is to be used for quake3 configs
|
||||
@ -14,7 +14,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal iskeyword=@,48-57,+,-,_
|
||||
setlocal iskeyword+=-,+
|
||||
|
||||
syn keyword quakeTodo contained TODO FIXME XXX NOTE
|
||||
|
||||
|
@ -4,6 +4,7 @@
|
||||
" Last Change: 2005 Dez 9, added some <http://www.ooRexx.org>-coloring,
|
||||
" line comments, do *over*, messages, directives,
|
||||
" highlighting classes, methods, routines and requires
|
||||
" 2007 Oct 17, added support for new ooRexx 3.2 features
|
||||
" Rony G. Flatscher <rony.flatscher@wu-wien.ac.at>
|
||||
"
|
||||
" URL: http://www.geulig.de/vim/rexx.vim
|
||||
@ -27,122 +28,194 @@ setlocal iskeyword+=!
|
||||
setlocal iskeyword+=?
|
||||
|
||||
" ---rgf, position important: must be before comments etc. !
|
||||
syn match rexxOperator "[-=|\/\\\+\*\[\],;<>&\~]"
|
||||
|
||||
syn match rexxIdentifier "\<[a-zA-Z\!\?_]\([a-zA-Z0-9._?!]\)*\>"
|
||||
syn match rexxEnvironmentSymbol "\<\.\+\([a-zA-Z0-9._?!]\)*\>"
|
||||
syn match rexxOperator "[=|\/\\\+\*\[\],;:<>&\~%\-]"
|
||||
|
||||
" rgf syn match rexxIdentifier "\<[a-zA-Z\!\?_]\([a-zA-Z0-9._?!]\)*\>"
|
||||
syn match rexxIdentifier "\<\K\k*\>"
|
||||
syn match rexxEnvironmentSymbol "\<\.\k\+\>"
|
||||
|
||||
" A Keyword is the first symbol in a clause. A clause begins at the start
|
||||
" of a line or after a semicolon. THEN, ELSE, OTHERWISE, and colons are always
|
||||
" followed by an implied semicolon.
|
||||
syn match rexxClause "\(^\|;\|:\|then \|else \|otherwise \)\s*\w\+" contains=ALLBUT,rexxParse2,rexxRaise2
|
||||
|
||||
syn match rexxClause "\(^\|;\|:\|then \|else \|when \|otherwise \)\s*\S*" contains=ALLBUT,rexxParse2,rexxRaise2,rexxForward2
|
||||
|
||||
" Considered keywords when used together in a phrase and begin a clause
|
||||
syn match rexxParse "\<parse\s*\(\(upper\|lower\|caseless\)\s*\)\=\(arg\|linein\|pull\|source\|var\|\<value\>\|version\)\>"
|
||||
syn match rexxParse2 "\<with\>" contained containedin=rexxParse
|
||||
|
||||
syn match rexxParse "\<parse\s*\(\(upper\|lower\|caseless\)\s*\)\?\(arg\|linein\|pull\|source\|var\|\<value\>\|version\)\>" containedin=rexxClause contains=rexxParse2
|
||||
syn match rexxParse2 "\<with\>" containedin=rexxParse
|
||||
|
||||
syn match rexxKeyword contained "\<numeric \(digits\|form \(scientific\|engineering\|value\)\|fuzz\)\>"
|
||||
syn match rexxKeyword contained "\<\(address\|trace\)\( value\)\=\>"
|
||||
syn match rexxKeyword contained "\<procedure\(\s*expose\)\=\>"
|
||||
syn match rexxKeyword contained "\<do\>\(\s*forever\)\=\>"
|
||||
syn match rexxKeyword contained "\<use\>\s*\<arg\>"
|
||||
syn match rexxKeyword contained "\<\(address\|trace\)\( value\)\?\>"
|
||||
syn match rexxKeyword contained "\<procedure\(\s*expose\)\?\>"
|
||||
|
||||
syn match rexxKeyword contained "\<\(do\|loop\)\>\(\s\+label\s\+\k*\)\?\(\s\+forever\)\?\>"
|
||||
syn match rexxKeyword contained "\<use\>\s*\(strict\s*\)\?\<arg\>"
|
||||
|
||||
" Another keyword phrase, separated to aid highlighting in rexxFunction
|
||||
syn match rexxKeyword contained "\<signal\(\s*\(on\|off\)\s*\(any\|error\|failure\|halt\|lostdigits\|nomethod\|nostring\|notready\|novalue\|syntax\|user\s*\k*\)\(\s\+name\)\=\)\=\>"
|
||||
syn match rexxKeyword2 contained "\<call\(\s*\(on\|off\)\s*\(any\|error\|failure\|halt\|notready\|user\s*\k*\)\(\s\+name\)\=\)\=\>"
|
||||
syn match rexxRegularCallSignal contained "\<\(call\|signal\)\s\(\s*on\>\|\s*off\>\)\@!\(\k\+\ze\|\ze(\)\(\s*\|;\|$\|(\)"
|
||||
syn region rexxLabel contained start="\<\(call\|signal\)\>\s*\zs\(\k*\|(\)" end="\ze\(\s*\|;\|$\|(\)" containedin=rexxRegularCallSignal
|
||||
|
||||
syn match rexxExceptionHandling contained "\<\(call\|signal\)\>\s\+\<\(on\|off\)\>.*\(;\|$\)"
|
||||
|
||||
" hilite label given after keyword "name"
|
||||
syn match rexxLabel "name\s\+\zs\k\+\ze" containedin=rexxExceptionHandling
|
||||
" hilite condition name (serves as label)
|
||||
syn match rexxLabel "\<\(call\|signal\)\>\s\+\<\(on\|off\)\>\s*\zs\k\+\ze\s*\(;\|$\)" containedin=rexxExceptionHandling
|
||||
" user exception handling, hilite user defined name
|
||||
syn region rexxLabel contained start="user\s\+\zs\k" end="\ze\(\s\|;\|$\)" containedin=rexxExceptionHandling
|
||||
|
||||
" Considered keywords when they begin a clause
|
||||
syn match rexxKeyword contained "\<\(arg\|do\|drop\|end\|exit\|expose\|forward\|if\|interpret\|iterate\|leave\|nop\)\>"
|
||||
syn match rexxKeyword contained "\<\(options\|pull\|push\|queue\|raise\|reply\|return\|say\|select\|trace\)\>"
|
||||
syn match rexxKeywordStatements "\<\(arg\|catch\|do\|drop\|end\|exit\|expose\|finally\|forward\|if\|interpret\|iterate\|leave\|loop\|nop\)\>"
|
||||
syn match rexxKeywordStatements "\<\(options\|pull\|push\|queue\|raise\|reply\|return\|say\|select\|trace\)\>"
|
||||
|
||||
" Conditional keywords starting a new statement
|
||||
syn match rexxConditional "\<\(then\|else\|when\|otherwise\)\(\s*\|;\|\_$\|\)\>" contains=rexxKeywordStatements
|
||||
|
||||
" Conditional phrases
|
||||
syn match rexxConditional "\(^\s*\| \)\(to\|by\|for\|until\|while\|then\|when\|otherwise\|else\|over\)\( \|\s*$\)"
|
||||
syn match rexxConditional contained "\<\(to\|by\|for\|until\|while\|then\|when\|otherwise\|else\|over\)\>"
|
||||
syn match rexxLoopKeywords "\<\(to\|by\|for\|until\|while\|over\)\>" containedin=doLoopSelectLabelRegion
|
||||
|
||||
" must be after Conditional phrases!
|
||||
syn match rexxKeyword ".*\<\(then\|else\)\s*\<do\>"
|
||||
syn match doLoopSelectLabelRegion "\<\(do\|loop\|select\)\>\s\+\(label\s\+\)\?\(\s\+\k\+\s\+\zs\<over\>\)\?\k*\(\s\+forever\)\?\(\s\|;\|$\)"
|
||||
|
||||
" color label's name
|
||||
syn match rexxLabel2 "\<\(do\|loop\|select\)\>\s\+label\s\+\zs\k*\ze" containedin=doLoopSelectLabelRegion
|
||||
|
||||
" make sure control variable is normal
|
||||
syn match rexxControlVariable "\<\(do\|loop\)\>\(\s\+label\s\+\k*\)\?\s\+\zs.*\ze\s\+\<over\>" containedin=doLoopSelectLabelRegion
|
||||
|
||||
" make sure control variable assignment is normal
|
||||
syn match rexxStartValueAssignment "\<\(do\|loop\)\>\(\s\+label\s\+\k*\)\?\s\+\zs.*\ze\(=.*\)\?\s\+\<to\>" containedin=doLoopSelectLabelRegion
|
||||
|
||||
" highlight label name
|
||||
syn match endIterateLeaveLabelRegion "\<\(end\|leave\|iterate\)\>\(\s\+\K\k*\)" contains=rexxLabel2
|
||||
syn match rexxLabel2 "\<\(end\|leave\|iterate\)\>\s\+\zs\k*\ze" containedin=endIterateLeaveLabelRegion
|
||||
|
||||
" Guard statement
|
||||
syn match rexxGuard "\(^\|;\|:\)\s*\<guard\>\s\+\<\(on\|off\)\>"
|
||||
|
||||
" Trace statement
|
||||
syn match rexxTrace "\(^\|;\|:\)\s*\<trace\>\s\+\<\K\k*\>"
|
||||
|
||||
" Raise statement
|
||||
syn match rexxRaise "\(^\|;\|:\)\s\+\<raise\>\s*\<\(propagate\|error\|failure\|syntax\|user\)\>\="
|
||||
syn match rexxRaise2 "\<\(additional\|array\|description\|exit\|return\)\>" contained containedin=rexxRaise
|
||||
syn match rexxRaise "\(^\|;\|:\)\s\+\<raise\>\s*\<\(propagate\|error\|failure\|syntax\|user\)\>\?" contains=rexxRaise2
|
||||
syn match rexxRaise2 "\<\(additional\|array\|description\|exit\|propagate\|return\)\>" containedin=rexxRaise
|
||||
|
||||
" Forward statement keywords
|
||||
syn match rexxForward "\(^\|;\|:\)\<forward\>\s*"
|
||||
syn match rexxForward2 "\<\(arguments\|array\|continue\|message\|class\|to\)\>" contained containedin=rexxForward
|
||||
" Forward statement
|
||||
syn match rexxForward "\(^\|;\|:\)\<forward\>\s*" contains=rexxForward2
|
||||
syn match rexxForward2 "\<\(arguments\|array\|continue\|message\|class\|to\)\>" contained
|
||||
|
||||
" Functions/Procedures
|
||||
syn match rexxFunction "\<\w*\(/\*\s*\*/\)*("me=e-1 contains=rexxComment,rexxConditional,rexxKeyword,rexxIdentifier
|
||||
syn match rexxFunction "\<\<[a-zA-Z\!\?_]\([a-zA-Z0-9._?!]\)*\>("me=e-1
|
||||
syn match rexxFunction "\<call\s\+\k\+\>" contains=rexxKeyword2
|
||||
syn match rexxFunction "\<\<[a-zA-Z\!\?_]\k*\>("me=e-1
|
||||
syn match rexxFunction "[()]"
|
||||
|
||||
" String constants
|
||||
syn region rexxString start=+"+ skip=+""+ end=+"\(x\|b\)\=+ oneline
|
||||
syn region rexxString start=+'+ skip=+''+ end=+'\(x\|b\)\=+ oneline
|
||||
syn region rexxString start=+"+ skip=+""+ end=+"\(x\|b\)\?+ oneline
|
||||
syn region rexxString start=+'+ skip=+''+ end=+'\(x\|b\)\?+ oneline
|
||||
|
||||
" Catch errors caused by wrong parenthesis
|
||||
syn region rexxParen transparent start='(' end=')' contains=ALLBUT,rexxParenError,rexxTodo,rexxLabel,rexxKeyword
|
||||
" Catch errors caused by wrong parenthesis
|
||||
syn match rexxParenError ")"
|
||||
syn match rexxInParen "[\\[\\]{}]"
|
||||
|
||||
" Comments
|
||||
syn region rexxComment start="/\*" end="\*/" contains=rexxTodo,rexxComment
|
||||
syn match rexxCommentError "\*/"
|
||||
syn match rexxLineComment /--.*/
|
||||
syn region rexxComment start="/\*" end="\*/" contains=rexxTodo,rexxComment
|
||||
syn match rexxCommentError "\*/"
|
||||
syn region rexxLineComment start="--" end="\_$" oneline
|
||||
|
||||
" Highlight User Labels
|
||||
" check for labels between comments, labels stated in a statement in the middle of a line
|
||||
syn match rexxLabel "\(\_^\|;\)\s*\(\/\*.*\*\/\)*\s*\k\+\s*\(\/\*.*\*\/\)*\s*:"me=e-1 contains=rexxTodo,rexxComment
|
||||
|
||||
syn keyword rexxTodo contained TODO FIXME XXX
|
||||
|
||||
|
||||
" ooRexx messages
|
||||
syn region rexxMessageOperator start="\(\~\|\~\~\)" end="\(\S\|\s\)"me=e-1
|
||||
syn match rexxMessage "\(\~\|\~\~\)\s*\<\.*[a-zA-Z]\([a-zA-Z0-9._?!]\)*\>" contains=rexxMessageOperator
|
||||
|
||||
" Highlight User Labels
|
||||
syn match rexxLabel "^\s*\k*\s*:"me=e-1
|
||||
|
||||
" line continuations, take care of (line-)comments after it
|
||||
syn match rexxLineContinue ",\ze\s*\(--.*\|\/\*.*\)*$"
|
||||
|
||||
" the following is necessary, otherwise three consecutive dashes will cause it to highlight the first one
|
||||
syn match rexxLineContinue "-\ze\(\s+--.*\|\s*\/\*.*\)*$"
|
||||
syn match rexxLineContinue "-\ze-\@!\s*\(--.*\|\s*\/\*.*\)\?$"
|
||||
|
||||
" Special Variables
|
||||
syn keyword rexxSpecialVariable sigl rc result self super
|
||||
syn keyword rexxSpecialVariable .environment .error .input .local .methods .output .rs .stderr .stdin .stdout .stdque
|
||||
|
||||
" Constants
|
||||
syn keyword rexxConst .true .false .nil
|
||||
syn keyword rexxConst .true .false .nil .endOfLine .line
|
||||
|
||||
" ooRexx builtin classes, first define dot to be o.k. in keywords
|
||||
syn keyword rexxBuiltinClass .object .class .method .message
|
||||
syn keyword rexxBuiltinClass .monitor .alarm
|
||||
syn keyword rexxBuiltinClass .stem .stream .string
|
||||
syn keyword rexxBuiltinClass .mutablebuffer
|
||||
syn keyword rexxBuiltinClass .array .list .queue .directory .table .set
|
||||
syn keyword rexxBuiltinClass .relation .bag .supplier .regularExpressions
|
||||
syn match rexxNumber "\(-\|+\)\?\s*\zs\<\(\d\+\.\?\|\d*\.\d\+\(E\(+\|-\)\d\{2,2}\)\?\)\?\>"
|
||||
|
||||
" ooRexx builtin classes (as of version 3.2.0, fall 2007), first define dot to be o.k. in keywords
|
||||
syn keyword rexxBuiltinClass .Alarm .ArgUtil .Array .Bag .CaselessColumnComparator
|
||||
syn keyword rexxBuiltinClass .CaselessComparator .CaselessDescendingComparator .CircularQueue
|
||||
syn keyword rexxBuiltinClass .Class .Collection .ColumnComparator .Comparable .Comparator
|
||||
syn keyword rexxBuiltinClass .DateTime .DescendingComparator .Directory .InputOutputStream
|
||||
syn keyword rexxBuiltinClass .InputStream .InvertingComparator .List .MapCollection
|
||||
syn keyword rexxBuiltinClass .Message .Method .Monitor .MutableBuffer .Object
|
||||
syn keyword rexxBuiltinClass .OrderedCollection .OutputStream .Properties .Queue
|
||||
syn keyword rexxBuiltinClass .Relation .RexxQueue .Set .SetCollection .Stem .Stream
|
||||
syn keyword rexxBuiltinClass .StreamSupplier .String .Supplier .Table .TimeSpan
|
||||
|
||||
" Windows-only classes
|
||||
syn keyword rexxBuiltinClass .OLEObject .MenuObject .WindowsClipboard .WindowsEventLog
|
||||
syn keyword rexxBuiltinClass .WindowsManager .WindowObject .WindowsProgramManager
|
||||
syn keyword rexxBuiltinClass .AdvancedControls .AnimatedButton .BaseDialog .ButtonControl
|
||||
syn keyword rexxBuiltinClass .CategoryDialog .CheckBox .CheckList .ComboBox .DialogControl
|
||||
syn keyword rexxBuiltinClass .DialogExtensions .DlgArea .DlgAreaU .DynamicDialog
|
||||
syn keyword rexxBuiltinClass .EditControl .InputBox .IntegerBox .ListBox .ListChoice
|
||||
syn keyword rexxBuiltinClass .ListControl .MenuObject .MessageExtensions .MultiInputBox
|
||||
syn keyword rexxBuiltinClass .MultiListChoice .PasswordBox .PlainBaseDialog .PlainUserDialog
|
||||
syn keyword rexxBuiltinClass .ProgressBar .ProgressIndicator .PropertySheet .RadioButton
|
||||
syn keyword rexxBuiltinClass .RcDialog .ResDialog .ScrollBar .SingleSelection .SliderControl
|
||||
syn keyword rexxBuiltinClass .StateIndicator .StaticControl .TabControl .TimedMessage
|
||||
syn keyword rexxBuiltinClass .TreeControl .UserDialog .VirtualKeyCodes .WindowBase
|
||||
syn keyword rexxBuiltinClass .WindowExtensions .WindowObject .WindowsClassesBase .WindowsClipboard
|
||||
syn keyword rexxBuiltinClass .WindowsEventLog .WindowsManager .WindowsProgramManager .WindowsRegistry
|
||||
|
||||
" ooRexx directives, ---rgf location important, otherwise directives in top of file not matched!
|
||||
syn region rexxClassDirective start="::\s*class\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxMethodDirective start="::\s*method\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxRequiresDirective start="::\s*requires\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxRoutineDirective start="::\s*routine\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxAttributeDirective start="::\s*attribute\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
|
||||
" ooRexx directives, ---rgf location important, otherwise directives in top of
|
||||
" file not matched!
|
||||
syn region rexxClass start="::\s*class\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxMethod start="::\s*method\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxRequires start="::\s*requires\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxRoutine start="::\s*routine\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
|
||||
syn region rexxDirective start="\(^\|;\)\s*::\s*\w\+" end="\($\|;\)" contains=rexxString,rexxComment,rexxLineComment,rexxClassDirective,rexxMethodDirective,rexxRoutineDirective,rexxRequiresDirective,rexxAttributeDirective keepend
|
||||
|
||||
syn region rexxDirective start="\(^\|;\)\s*::\s*\w\+" end="\($\|;\)" contains=rexxString,rexxComment,rexxLineComment,rexxClass,rexxMethod,rexxRoutine,rexxRequires keepend
|
||||
syn region rexxVariable start="\zs\<\(\.\)\@!\K\k\+\>\ze\s*\(=\|,\|)\|%\|\]\|\\\||\|&\|+=\|-=\|<\|>\)" end="\(\_$\|.\)"me=e-1
|
||||
syn match rexxVariable "\(=\|,\|)\|%\|\]\|\\\||\|&\|+=\|-=\|<\|>\)\s*\zs\K\k*\ze"
|
||||
|
||||
" rgf, 2007-07-22: unfortunately, the entire region is colored (not only the
|
||||
" patterns), hence useless (vim 7.0)! (syntax-docs hint that that should work)
|
||||
" attempt: just colorize the parenthesis in matching colors, keep content
|
||||
" transparent to keep the formatting already done to it!
|
||||
" syn region par1 matchgroup=par1 start="(" matchgroup=par1 end=")" transparent contains=par2
|
||||
" syn region par2 matchgroup=par2 start="(" matchgroup=par2 end=")" transparent contains=par3 contained
|
||||
" syn region par3 matchgroup=par3 start="(" matchgroup=par3 end=")" transparent contains=par4 contained
|
||||
" syn region par4 matchgroup=par4 start="(" matchgroup=par4 end=")" transparent contains=par5 contained
|
||||
" syn region par5 matchgroup=par5 start="(" matchgroup=par5 end=")" transparent contains=par1 contained
|
||||
|
||||
" this will colorize the entire region, removing any colorizing already done!
|
||||
" syn region par1 matchgroup=par1 start="(" end=")" contains=par2
|
||||
" syn region par2 matchgroup=par2 start="(" end=")" contains=par3 contained
|
||||
" syn region par3 matchgroup=par3 start="(" end=")" contains=par4 contained
|
||||
" syn region par4 matchgroup=par4 start="(" end=")" contains=par5 contained
|
||||
" syn region par5 matchgroup=par5 start="(" end=")" contains=par1 contained
|
||||
|
||||
if !exists("rexx_minlines")
|
||||
" let rexx_minlines = 10
|
||||
let rexx_minlines = 500
|
||||
endif
|
||||
exec "syn sync ccomment rexxComment minlines=" . rexx_minlines
|
||||
hi par1 ctermfg=red guifg=red
|
||||
hi par2 ctermfg=blue guifg=blue
|
||||
hi par3 ctermfg=darkgreen guifg=darkgreen
|
||||
hi par4 ctermfg=darkyellow guifg=darkyellow
|
||||
hi par5 ctermfg=darkgrey guifg=darkgrey
|
||||
|
||||
" line continuation (trailing comma or single dash)
|
||||
syn sync linecont "\(,\|-\ze-\@!\)\ze\s*\(--.*\|\/\*.*\)*$"
|
||||
|
||||
" if !exists("rexx_minlines")
|
||||
" let rexx_minlines = 500
|
||||
" endif
|
||||
" exec "syn sync ccomment rexxComment minlines=" . rexx_minlines
|
||||
|
||||
" always scan from start, PCs are powerful enough for that in 2007 !
|
||||
exec "syn sync fromstart"
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
@ -155,6 +228,20 @@ if version >= 508 || !exists("did_rexx_syn_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" make binary and hex strings stand out
|
||||
hi rexxStringConstant term=bold,underline ctermfg=5 cterm=bold guifg=darkMagenta gui=bold
|
||||
|
||||
HiLink rexxLabel2 Function
|
||||
HiLink doLoopSelectLabelRegion rexxKeyword
|
||||
HiLink endIterateLeaveLabelRegion rexxKeyword
|
||||
HiLink rexxLoopKeywords rexxKeyword " Todo
|
||||
|
||||
HiLink rexxNumber Normal
|
||||
" HiLink rexxIdentifier DiffChange
|
||||
|
||||
HiLink rexxRegularCallSignal Statement
|
||||
HiLink rexxExceptionHandling Statement
|
||||
|
||||
HiLink rexxLabel Function
|
||||
HiLink rexxCharacter Character
|
||||
HiLink rexxParenError rexxError
|
||||
@ -162,7 +249,8 @@ if version >= 508 || !exists("did_rexx_syn_inits")
|
||||
HiLink rexxCommentError rexxError
|
||||
HiLink rexxError Error
|
||||
HiLink rexxKeyword Statement
|
||||
HiLink rexxKeyword2 rexxKeyword
|
||||
HiLink rexxKeywordStatements Statement
|
||||
|
||||
HiLink rexxFunction Function
|
||||
HiLink rexxString String
|
||||
HiLink rexxComment Comment
|
||||
@ -172,15 +260,16 @@ if version >= 508 || !exists("did_rexx_syn_inits")
|
||||
|
||||
HiLink rexxOperator Operator
|
||||
HiLink rexxMessageOperator rexxOperator
|
||||
HiLink rexxLineComment RexxComment
|
||||
HiLink rexxLineComment Comment
|
||||
|
||||
HiLink rexxLineContinue WildMenu
|
||||
|
||||
HiLink rexxDirective rexxKeyword
|
||||
HiLink rexxClass Type
|
||||
HiLink rexxMethod rexxFunction
|
||||
HiLink rexxRequires Include
|
||||
HiLink rexxRoutine rexxFunction
|
||||
HiLink rexxClassDirective Type
|
||||
HiLink rexxMethodDirective rexxFunction
|
||||
HiLink rexxAttributeDirective rexxFunction
|
||||
HiLink rexxRequiresDirective Include
|
||||
HiLink rexxRoutineDirective rexxFunction
|
||||
|
||||
HiLink rexxConst Constant
|
||||
HiLink rexxTypeSpecifier Type
|
||||
@ -192,6 +281,9 @@ if version >= 508 || !exists("did_rexx_syn_inits")
|
||||
HiLink rexxParse rexxKeyword
|
||||
HiLink rexxParse2 rexxParse
|
||||
|
||||
HiLink rexxGuard rexxKeyword
|
||||
HiLink rexxTrace rexxKeyword
|
||||
|
||||
HiLink rexxRaise rexxKeyword
|
||||
HiLink rexxRaise2 rexxRaise
|
||||
|
||||
|
@ -2,8 +2,12 @@
|
||||
" Language: SNOBOL4
|
||||
" Maintainer: Rafal Sulejman <rms@poczta.onet.pl>
|
||||
" Site: http://rms.republika.pl/vim/syntax/snobol4.vim
|
||||
" Last change: 2006 may 1
|
||||
" Last change: 2006 may 10
|
||||
" Changes:
|
||||
" - strict snobol4 mode (set snobol4_strict_mode to activate)
|
||||
" - incorrect HL of dots in strings corrected
|
||||
" - incorrect HL of dot-variables in parens corrected
|
||||
" - one character labels weren't displayed correctly.
|
||||
" - nonexistent Snobol4 keywords displayed as errors.
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
@ -15,40 +19,54 @@ elseif exists("b:current_syntax")
|
||||
endif
|
||||
|
||||
syntax case ignore
|
||||
" Vanilla Snobol4 keywords
|
||||
syn keyword snobol4Keyword any apply arb arbno arg array
|
||||
syn keyword snobol4Keyword break
|
||||
syn keyword snobol4Keyword char clear code collect convert copy
|
||||
syn keyword snobol4Keyword data datatype date define detach differ dump dupl
|
||||
syn keyword snobol4Keyword endfile eq eval
|
||||
syn keyword snobol4Keyword field
|
||||
syn keyword snobol4Keyword ge gt ident
|
||||
syn keyword snobol4Keyword input integer item
|
||||
syn keyword snobol4Keyword le len lgt local lpad lt
|
||||
syn keyword snobol4Keyword ne notany
|
||||
syn keyword snobol4Keyword opsyn output
|
||||
syn keyword snobol4Keyword pos prototype
|
||||
syn keyword snobol4Keyword remdr replace rpad rpos rtab
|
||||
syn keyword snobol4Keyword size span stoptr
|
||||
syn keyword snobol4Keyword tab table time trace trim terminal
|
||||
syn keyword snobol4Keyword unload
|
||||
syn keyword snobol4Keyword value
|
||||
" Spitbol keywords
|
||||
" CSNOBOL keywords
|
||||
syn keyword snobol4Keyword sset
|
||||
|
||||
syn region snobol4String matchgroup=Quote start=+"+ skip=+\\"+ end=+"+
|
||||
syn region snobol4String matchgroup=Quote start=+'+ skip=+\\'+ end=+'+
|
||||
syn match snobol4Statement "^-[^ ][^ ]*"
|
||||
syn match snobol4Comment "^\*.*$"
|
||||
syn match snobol4Comment ";\*.*$"
|
||||
syn match snobol4Constant "[^a-z]\.[a-z][a-z0-9\-]*"
|
||||
syn region snobol4Goto start=":[sf]\{0,1}(" end=")\|$\|;" contains=ALLBUT,snobol4ParenError
|
||||
" Snobol4 keywords
|
||||
syn keyword snobol4Keyword any apply arb arbno arg array
|
||||
syn keyword snobol4Keyword break
|
||||
syn keyword snobol4Keyword char clear code collect convert copy
|
||||
syn keyword snobol4Keyword data datatype date define detach differ dump dupl
|
||||
syn keyword snobol4Keyword endfile eq eval
|
||||
syn keyword snobol4Keyword field
|
||||
syn keyword snobol4Keyword ge gt ident
|
||||
syn keyword snobol4Keyword input integer item
|
||||
syn keyword snobol4Keyword le len lgt local lpad lt
|
||||
syn keyword snobol4Keyword ne notany
|
||||
syn keyword snobol4Keyword opsyn output
|
||||
syn keyword snobol4Keyword pos prototype
|
||||
syn keyword snobol4Keyword remdr replace rpad rpos rtab rewind
|
||||
syn keyword snobol4Keyword size span stoptr
|
||||
syn keyword snobol4Keyword tab table time trace trim terminal
|
||||
syn keyword snobol4Keyword unload
|
||||
syn keyword snobol4Keyword value
|
||||
|
||||
" CSNOBOL keywords
|
||||
syn keyword snobol4ExtKeyword breakx
|
||||
syn keyword snobol4ExtKeyword char chop
|
||||
syn keyword snobol4ExtKeyword date delete
|
||||
syn keyword snobol4ExtKeyword exp
|
||||
syn keyword snobol4ExtKeyword freeze function
|
||||
syn keyword snobol4ExtKeyword host
|
||||
syn keyword snobol4ExtKeyword io_findunit
|
||||
syn keyword snobol4ExtKeyword label lpad leq lge lle llt lne log
|
||||
syn keyword snobol4ExtKeyword ord
|
||||
syn keyword snobol4ExtKeyword reverse rpad rsort rename
|
||||
syn keyword snobol4ExtKeyword serv_listen sset set sort sqrt substr
|
||||
syn keyword snobol4ExtKeyword thaw
|
||||
syn keyword snobol4ExtKeyword vdiffer
|
||||
|
||||
syn region snobol4String matchgroup=Quote start=+"+ end=+"+
|
||||
syn region snobol4String matchgroup=Quote start=+'+ end=+'+
|
||||
syn match snobol4BogusStatement "^-[^ ][^ ]*"
|
||||
syn match snobol4Statement "^-\(include\|copy\|module\|line\|plusopts\|case\|error\|noerrors\|list\|unlist\|execute\|noexecute\|copy\)"
|
||||
syn match snobol4Constant /"[^a-z"']\.[a-z][a-z0-9\-]*"/hs=s+1
|
||||
syn region snobol4Goto start=":[sf]\{0,1}(" end=")\|$\|;" contains=ALLBUT,snobol4ParenError
|
||||
syn match snobol4Number "\<\d*\(\.\d\d*\)*\>"
|
||||
syn match snobol4BogusSysVar "&\w\{1,}"
|
||||
syn match snobol4BogusSysVar "&\w\{1,}"
|
||||
syn match snobol4SysVar "&\(abort\|alphabet\|anchor\|arb\|bal\|case\|code\|dump\|errlimit\|errtext\|errtype\|fail\|fence\|fnclevel\|ftrace\|fullscan\|input\|lastno\|lcase\|maxlngth\|output\|parm\|rem\|rtntype\|stcount\|stfcount\|stlimit\|stno\|succeed\|trace\|trim\|ucase\)"
|
||||
syn match snobol4Label "^[^-\.\+ \t]\S\{1,}"
|
||||
"
|
||||
syn match snobol4ExtSysVar "&\(gtrace\|line\|file\|lastline\|lastfile\)"
|
||||
syn match snobol4Label "\(^\|;\)[^-\.\+ \t\*\.]\{1,}[^ \t\*\;]*"
|
||||
syn match snobol4Comment "\(^\|;\)\([\*\|!;#].*$\)"
|
||||
|
||||
" Parens matching
|
||||
syn cluster snobol4ParenGroup contains=snobol4ParenError
|
||||
syn region snobol4Paren transparent start='(' end=')' contains=ALLBUT,@snobol4ParenGroup,snobol4ErrInBracket
|
||||
@ -58,8 +76,7 @@ syn region snobol4Bracket transparent start='\[\|<:' end=']\|:>' conta
|
||||
syn match snobol4ErrInBracket display contained "[){}]\|<%\|%>"
|
||||
|
||||
" optional shell shebang line
|
||||
syn match snobol4Comment "^\#\!.*$"
|
||||
|
||||
" syn match snobol4Comment "^\#\!.*$"
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
@ -80,19 +97,26 @@ if version >= 508 || !exists("did_snobol4_syntax_inits")
|
||||
HiLink snobol4Number Number
|
||||
HiLink snobol4Error Error
|
||||
HiLink snobol4Statement PreProc
|
||||
HiLink snobol4BogusStatement snobol4Error
|
||||
HiLink snobol4String String
|
||||
HiLink snobol4Comment Comment
|
||||
HiLink snobol4Special Special
|
||||
HiLink snobol4Todo Todo
|
||||
HiLink snobol4Keyword Statement
|
||||
HiLink snobol4Function Statement
|
||||
HiLink snobol4Keyword Keyword
|
||||
HiLink snobol4Function Function
|
||||
HiLink snobol4MathsOperator Operator
|
||||
HiLink snobol4ParenError snobol4Error
|
||||
HiLink snobol4ErrInParen snobol4Error
|
||||
HiLink snobol4ErrInBracket snobol4Error
|
||||
HiLink snobol4SysVar Keyword
|
||||
HiLink snobol4BogusSysVar snobol4Error
|
||||
if exists("snobol4_strict_mode")
|
||||
HiLink snobol4ExtSysVar WarningMsg
|
||||
HiLink snobol4ExtKeyword WarningMsg
|
||||
else
|
||||
HiLink snobol4ExtSysVar snobol4SysVar
|
||||
HiLink snobol4ExtKeyword snobol4Keyword
|
||||
endif
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
@ -36,4 +36,4 @@ endif
|
||||
" Source the appropriate file
|
||||
exec 'runtime syntax/'.filename.'.vim'
|
||||
|
||||
" vim:sw=4:ff=unix:
|
||||
" vim:sw=4:
|
||||
|
@ -1,14 +1,17 @@
|
||||
" Vim syntax file
|
||||
" Language: Yacc
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Feb 22, 2006
|
||||
" Version: 4
|
||||
" Maintainer: Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Jan 09, 2008
|
||||
" Version: 5
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
"
|
||||
" Option:
|
||||
" Options: {{{1
|
||||
" g:yacc_uses_cpp : if this variable exists, then C++ is loaded rather than C
|
||||
" g:yacc_minlines : see :help :he syn-sync-minlines -- default 50
|
||||
" g:yacc_maxlines : see :help :he syn-sync-maxlines -- default 200
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" ---------------------------------------------------------------------
|
||||
" For version 5.x: Clear all syntax items {{{1
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
@ -16,7 +19,8 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Read the C syntax to start with
|
||||
" ---------------------------------------------------------------------
|
||||
" Read the C syntax to start with {{{1
|
||||
if version >= 600
|
||||
if exists("g:yacc_uses_cpp")
|
||||
runtime! syntax/cpp.vim
|
||||
@ -29,11 +33,13 @@ else
|
||||
so <sfile>:p:h/c.vim
|
||||
endif
|
||||
|
||||
" Clusters
|
||||
" ---------------------------------------------------------------------
|
||||
" Clusters {{{1
|
||||
syn cluster yaccActionGroup contains=yaccDelim,cInParen,cTodo,cIncluded,yaccDelim,yaccCurlyError,yaccUnionCurly,yaccUnion,cUserLabel,cOctalZero,cCppOut2,cCppSkip,cErrInBracket,cErrInParen,cOctalError,cCommentStartError,cParenError
|
||||
syn cluster yaccUnionGroup contains=yaccKey,cComment,yaccCurly,cType,cStructure,cStorageClass,yaccUnionCurly
|
||||
|
||||
" Yacc stuff
|
||||
" ---------------------------------------------------------------------
|
||||
" Yacc stuff {{{1
|
||||
syn match yaccDelim "^\s*[:|;]"
|
||||
syn match yaccOper "@\d\+"
|
||||
|
||||
@ -49,17 +55,32 @@ syn match yaccBrkt contained "[<>]"
|
||||
syn match yaccType "<[a-zA-Z_][a-zA-Z0-9_]*>" contains=yaccBrkt
|
||||
syn match yaccDefinition "^[A-Za-z][A-Za-z0-9_]*\_s*:"
|
||||
|
||||
" special Yacc separators
|
||||
" ---------------------------------------------------------------------
|
||||
" special Yacc separators {{{1
|
||||
syn match yaccSectionSep "^[ \t]*%%"
|
||||
syn match yaccSep "^[ \t]*%{"
|
||||
syn match yaccSep "^[ \t]*%}"
|
||||
|
||||
" I'd really like to highlight just the outer {}. Any suggestions???
|
||||
" ---------------------------------------------------------------------
|
||||
" I'd really like to highlight just the outer {}. Any suggestions??? {{{1
|
||||
syn match yaccCurlyError "[{}]"
|
||||
syn region yaccAction matchgroup=yaccCurly start="{" end="}" contains=ALLBUT,@yaccActionGroup
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Yacc synchronization: {{{1
|
||||
if exists("g:yacc_maxlines")
|
||||
exe "syn sync maxlines=".g:yacc_maxlines
|
||||
else
|
||||
syn sync maxlines=200
|
||||
endif
|
||||
if exists("g:yacc_minlines")
|
||||
exe "syn sync minlines=".g:yacc_minlines
|
||||
else
|
||||
syn sync minlines=50
|
||||
endif
|
||||
|
||||
" Define the default highlighting.
|
||||
" ---------------------------------------------------------------------
|
||||
" Define the default highlighting. {{{1
|
||||
" 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_yacc_syn_inits")
|
||||
@ -70,13 +91,13 @@ if version >= 508 || !exists("did_yacc_syn_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" Internal yacc highlighting links
|
||||
" Internal yacc highlighting links {{{2
|
||||
HiLink yaccBrkt yaccStmt
|
||||
HiLink yaccKey yaccStmt
|
||||
HiLink yaccOper yaccStmt
|
||||
HiLink yaccUnionStart yaccKey
|
||||
|
||||
" External yacc highlighting links
|
||||
" External yacc highlighting links {{{2
|
||||
HiLink yaccCurly Delimiter
|
||||
HiLink yaccCurlyError Error
|
||||
HiLink yaccDefinition Function
|
||||
@ -87,12 +108,13 @@ if version >= 508 || !exists("did_yacc_syn_inits")
|
||||
HiLink yaccStmt Statement
|
||||
HiLink yaccType Type
|
||||
|
||||
" since Bram doesn't like my Delimiter :|
|
||||
" since Bram doesn't like my Delimiter :| {{{2
|
||||
HiLink Delimiter Type
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "yacc"
|
||||
|
||||
" vim: ts=15
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim: ts=15 fdm=marker
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Zsh shell script
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-08-06
|
||||
" Latest Revision: 2007-06-17
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@ -10,7 +10,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal iskeyword=@,48-57,_,-
|
||||
setlocal iskeyword+=-
|
||||
|
||||
syn keyword zshTodo contained TODO FIXME XXX NOTE
|
||||
|
||||
|
23
runtime/tutor/Contents
Normal file
23
runtime/tutor/Contents
Normal file
@ -0,0 +1,23 @@
|
||||
Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful
|
||||
for editing programs and other plain ASCII text. Full Vi
|
||||
compatibility and includes all Ex commands. Extra features
|
||||
above Vi: Multilevel undo, multiple windows, syntax
|
||||
highlighting, command line history, folding, improved command
|
||||
line editing, command typeahead display, command to display
|
||||
yank buffers, possibility to edit binary files, file name
|
||||
stack, support for Manx QuickFix and other compiler's error
|
||||
messages, shows current file name in window title, on-line
|
||||
help, rectangular cut/paste, etc., etc., etc...
|
||||
|
||||
Version 7.2a. Also runs under UNIX, MSDOS and other systems.
|
||||
vim72art.tgz contains the documentation and syntax files.
|
||||
vim72abin.tgz contains the binaries.
|
||||
vim72asrc.tgz contains the sources.
|
||||
Author: Bram Moolenaar et al.
|
||||
|
||||
|
||||
Xxd Hex dumper and reader. Can be used to view files as hex, edit
|
||||
them and write them back. Can also be used to patch files.
|
||||
|
||||
Version 1.8 (1997 May 22)
|
||||
Author: Juergen Weigert
|
@ -1,24 +0,0 @@
|
||||
<EFBFBD><EFBFBD> Tutor <20>夘<EFBFBD> <20><><EFBFBD> "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <20><><EFBFBD><EFBFBD>㚞<EFBFBD><E39A9E> <20><><EFBFBD> <20>⦬<EFBFBD> <20><>㩫<EFBFBD><E3A9AB> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᡫ<EFBFBD> Vim.
|
||||
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>櫜<EFBFBD><E6AB9C><EFBFBD> <20>⦠ <20><>㩫<EFBFBD><E3A9AB> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>驦<EFBFBD><E9A9A6> <20><> <20><><EFBFBD>櫜<EFBFBD><E6AB9C> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD> 騘. <20><> <20><><EFBFBD><EFBFBD>⢜<EFBFBD><E2A29C><EFBFBD> <20>夘<EFBFBD> 櫠 <20><><EFBFBD><EFBFBD><EFBFBD>嫜 <20><> <20>ᤜ<EFBFBD><E1A49C> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嘪 <20><><EFBFBD><EFBFBD>⤦<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>餫<EFBFBD><E9A4AB> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>ᡫ<EFBFBD> Vim.
|
||||
|
||||
<EFBFBD><EFBFBD> Tutor <20>夘<EFBFBD> ⤘ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⮜<EFBFBD> <20><> <20><><EFBFBD>㣘<EFBFBD><E3A398> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嫜 <20><> <20><><EFBFBD><EFBFBD><EFBFBD>⩜<EFBFBD><E2A99C> <20><><EFBFBD><EFBFBD> "vim tutor" <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㩜<EFBFBD><E3A99C> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>圪 <20><><EFBFBD> <20><><EFBFBD>㣘<EFBFBD><E3A398>. <20><> <20><><EFBFBD>㣘<EFBFBD><E3A398> <20><> <20><><EFBFBD> <20><>礜 <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㩜<EFBFBD><E3A99C>
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>.
|
||||
|
||||
<EFBFBD><EFBFBD> <20>穫<EFBFBD><E7A9AB><EFBFBD> Unix <20><><EFBFBD><EFBFBD><EFBFBD>嫜 <20><>婞<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㩜<EFBFBD><E3A99C> <20><> <20><>暨<EFBFBD><E69AA8><EFBFBD><EFBFBD> "vimtutor".
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㩜<EFBFBD> <20><>高 ⤘ <20><>殜<EFBFBD><E6AE9C><EFBFBD> <20><><EFBFBD>嚨<EFBFBD><E59AA8><EFBFBD> <20><><EFBFBD> tutor.
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>櫜<EFBFBD><E6AB9C> <20><><EFBFBD><EFBFBD>ਞ<EFBFBD>⤘ <20><><EFBFBD>㣘<EFBFBD><E3A398> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>嫞<EFBFBD><E5AB9E> <20><>椦. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>驫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><> <20>⢘<EFBFBD><E2A298> <20><><EFBFBD> <20><><EFBFBD>墜<EFBFBD><E5A29C>
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㧦<EFBFBD><E3A7A6> <20><><EFBFBD><EFBFBD><EFBFBD>驜<EFBFBD><E9A99C> <20>ᤜ<EFBFBD><E1A49C>.
|
||||
|
||||
Bob Ware, Colorado School of Mines, Golden, Co 80401, USA
|
||||
(303) 273-3987
|
||||
bware@mines.colorado.edu bware@slate.mines.colorado.edu bware@mines.bitnet
|
||||
|
||||
[<5B><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㟞<EFBFBD><E39F9E> <20><><EFBFBD> <20><><EFBFBD> Vim <20><><EFBFBD> <20><><EFBFBD> Bram Moolenaar]
|
@ -1,24 +0,0 @@
|
||||
<EFBFBD><EFBFBD> Tutor <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim.
|
||||
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>. <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim.
|
||||
|
||||
<EFBFBD><EFBFBD> Tutor <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> "vim tutor" <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>.
|
||||
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Unix <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "vimtutor".
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> tutor.
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
|
||||
Bob Ware, Colorado School of Mines, Golden, Co 80401, USA
|
||||
(303) 273-3987
|
||||
bware@mines.colorado.edu bware@slate.mines.colorado.edu bware@mines.bitnet
|
||||
|
||||
[<5B><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> Vim <20><><EFBFBD> <20><><EFBFBD> Bram Moolenaar]
|
11
runtime/tutor/README_amisrc.txt
Normal file
11
runtime/tutor/README_amisrc.txt
Normal file
@ -0,0 +1,11 @@
|
||||
README_amisrc.txt for version 7.2a of Vim: Vi IMproved.
|
||||
|
||||
See "README.txt" for general information about Vim.
|
||||
See "README_ami.txt" for installation instructions for the Amiga.
|
||||
These files are in the runtime archive (vim60rt.tgz).
|
||||
|
||||
|
||||
The Amiga source archive contains the files needed to compile Vim on the
|
||||
Amiga.
|
||||
|
||||
See "src/INSTALLami.txt" for instructions on how to compile Vim on the Amiga.
|
BIN
runtime/tutor/README_amisrc.txt.info
Executable file
BIN
runtime/tutor/README_amisrc.txt.info
Executable file
Binary file not shown.
58
runtime/tutor/README_os2.txt
Normal file
58
runtime/tutor/README_os2.txt
Normal file
@ -0,0 +1,58 @@
|
||||
README_os2.txt for version 7.2a of Vim: Vi IMproved.
|
||||
|
||||
This file explains the installation of Vim on OS/2 systems.
|
||||
See "README.txt" for general information about Vim.
|
||||
|
||||
|
||||
NOTE: You will need two archives:
|
||||
vim71rt.zip contains the runtime files (same as for the PC version)
|
||||
vim71os2.zip contains the OS/2 executables
|
||||
|
||||
1. Go to the directory where you want to put the Vim files. Examples:
|
||||
cd C:\
|
||||
cd D:\editors
|
||||
|
||||
2. Unpack the zip archives. This will create a new directory "vim/vim71",
|
||||
in which all the distributed Vim files are placed. Since the directory
|
||||
name includes the version number, it is unlikely that you overwrite
|
||||
existing files.
|
||||
Examples:
|
||||
pkunzip -d vim71os2.zip
|
||||
unzip vim71os2.zip
|
||||
|
||||
After you unpacked the files, you can still move the whole directory tree
|
||||
to another location.
|
||||
|
||||
3. Add the directory where vim.exe is to your path. The simplest is to add a
|
||||
line to your autoexec.bat. Examples:
|
||||
set path=%path%;C:\vim\vim71
|
||||
set path=%path%;D:\editors\vim\vim71
|
||||
|
||||
That's it!
|
||||
|
||||
|
||||
Extra remarks:
|
||||
|
||||
- To avoid confusion between distributed files of different versions and your
|
||||
own modified vim scripts, it is recommended to use this directory layout:
|
||||
("C:\vim" is used here as the root, replace with the path you use)
|
||||
Your own files:
|
||||
C:\vim\_vimrc Your personal vimrc.
|
||||
C:\vim\_viminfo Dynamic info for 'viminfo'.
|
||||
C:\vim\... Other files you made.
|
||||
Distributed files:
|
||||
C:\vim\vim71\vim.exe The Vim version 7.1 executable.
|
||||
C:\vim\vim71\doc\*.txt The version 7.1 documentation files.
|
||||
C:\vim\vim71\bugreport.vim A Vim version 7.1 script.
|
||||
C:\vim\vim71\... Other version 7.1 distributed files.
|
||||
In this case the $VIM environment variable would be set like this:
|
||||
set VIM=C:\vim
|
||||
|
||||
- You can put your Vim executable anywhere else. If the executable is not
|
||||
with the other distributed Vim files, you should set $VIM. The simplest is
|
||||
to add a line to your autoexec.bat. Examples:
|
||||
set VIM=c:\vim
|
||||
set VIM=d:\editors\vim
|
||||
|
||||
For further information, type this inside Vim:
|
||||
:help os2
|
10
runtime/tutor/README_src.txt
Normal file
10
runtime/tutor/README_src.txt
Normal file
@ -0,0 +1,10 @@
|
||||
README_src.txt for version 7.2a of Vim: Vi IMproved.
|
||||
|
||||
The source archive contains the files needed to compile Vim on Unix systems.
|
||||
It is packed for Unix systems (NL line separator). It is also used for other
|
||||
systems in combination with the extra archive (vim-7.0-extra.tar.gz, in the
|
||||
"extra" directory of ftp.vim.org).
|
||||
|
||||
For more information, see the README.txt file that comes with the runtime
|
||||
archive (vim-7.0-rt.tar.gz). To be able to run Vim you MUST get the runtime
|
||||
archive too!
|
48
runtime/tutor/README_vms.txt
Normal file
48
runtime/tutor/README_vms.txt
Normal file
@ -0,0 +1,48 @@
|
||||
README_vms.txt for version 7.2a of Vim: Vi IMproved.
|
||||
|
||||
This file explains the installation of Vim on VMS systems.
|
||||
See "README.txt" in the runtime archive for information about Vim.
|
||||
|
||||
|
||||
Most information can be found in the on-line documentation. Use ":help vms"
|
||||
inside Vim. Or get the runtime files and read runtime/doc/os_vms.txt to find
|
||||
out how to install and configure Vim with runtime files etc.
|
||||
|
||||
To compile Vim yourself you need three archives:
|
||||
vim-X.X-rt.tar.gz runtime files
|
||||
vim-X.X-src.tar.gz source files
|
||||
vim-X.X-extra.tar.gz extra source files
|
||||
|
||||
Compilation is recommended, in order to make sure that the correct
|
||||
libraries are used for your specific system. Read about compiling in
|
||||
src/INSTALLvms.txt.
|
||||
|
||||
To use the binary version, you need one of these archives:
|
||||
|
||||
vim-XX-exe-ia64-gui.zip IA64 GUI/Motif executables
|
||||
vim-XX-exe-ia64-gtk.zip IA64 GUI/GTK executables
|
||||
vim-XX-exe-ia64-term.zip IA64 console executables
|
||||
vim-XX-exe-axp-gui.zip Alpha GUI/Motif executables
|
||||
vim-XX-exe-axp-gtk.zip Alpha GUI/GTK executables
|
||||
vim-XX-exe-axp-term.zip Alpha console executables
|
||||
vim-XX-exe-vax-gui.zip VAX GUI executables
|
||||
vim-XX-exe-vax-term.zip VAX console executables
|
||||
|
||||
and of course
|
||||
vim-XX-runtime.zip runtime files
|
||||
|
||||
The binary archives contain: vim.exe, ctags.exe, xxd.exe files,
|
||||
but there are also prepared "deploy ready" archives:
|
||||
|
||||
vim-XX-ia64.zip GUI and console executables with runtime and
|
||||
help files for IA64 systems
|
||||
vim-XX-axp.zip GUI and console executables with runtime and
|
||||
help files for Alpha systems
|
||||
vim-XX-vax.zip GUI and console executables with runtime and
|
||||
help files for VAX systems
|
||||
|
||||
GTK builds need LIBGTK library installed.
|
||||
|
||||
These executables and up to date patches for OpenVMS system are downloadable
|
||||
from http://www.polarhome.com/vim/ or ftp://ftp.polarhome.com/pub/vim/
|
||||
|
15
runtime/tutor/README_w32s.txt
Normal file
15
runtime/tutor/README_w32s.txt
Normal file
@ -0,0 +1,15 @@
|
||||
README_w32s.txt for version 7.2a of Vim: Vi IMproved.
|
||||
|
||||
This archive contains the gvim.exe that was specifically compiled for use in
|
||||
the Win32s subsystem in MS-Windows 3.1 and 3.11.
|
||||
|
||||
Also see the README_bindos.txt, README_dos.txt and README.txt files.
|
||||
|
||||
Be careful not to overwrite the Win32s gvim.exe with the another gvim.exe when
|
||||
unpacking another binary archive! Check the output of ":version":
|
||||
Win32s - "MS-Windows 16/32 bit GUI version"
|
||||
Win32 - "MS-Windows 32 bit GUI version"
|
||||
Win32 with OLE - "MS-Windows 32 bit GUI version with OLE support"
|
||||
|
||||
For further information, type this inside Vim:
|
||||
:help win32s
|
BIN
runtime/tutor/Vim.info
Executable file
BIN
runtime/tutor/Vim.info
Executable file
Binary file not shown.
BIN
runtime/tutor/Xxd.info
Executable file
BIN
runtime/tutor/Xxd.info
Executable file
Binary file not shown.
6
runtime/tutor/configure
vendored
Executable file
6
runtime/tutor/configure
vendored
Executable file
@ -0,0 +1,6 @@
|
||||
#! /bin/sh
|
||||
|
||||
# This is just a stub for the Unix configure script, to provide support for
|
||||
# doing "./configure" in the top Vim directory.
|
||||
|
||||
cd src && exec ./configure "$@"
|
BIN
runtime/tutor/csdpmi4b.zip
Executable file
BIN
runtime/tutor/csdpmi4b.zip
Executable file
Binary file not shown.
88
runtime/tutor/runtime/bugreport.vim
Normal file
88
runtime/tutor/runtime/bugreport.vim
Normal file
@ -0,0 +1,88 @@
|
||||
:" Use this script to create the file "bugreport.txt", which contains
|
||||
:" information about the environment of a possible bug in Vim.
|
||||
:"
|
||||
:" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
:" Last change: 2005 Jun 12
|
||||
:"
|
||||
:" To use inside Vim:
|
||||
:" :so $VIMRUNTIME/bugreport.vim
|
||||
:" Or, from the command line:
|
||||
:" vim -s $VIMRUNTIME/bugreport.vim
|
||||
:"
|
||||
:" The "if 1" lines are to avoid error messages when expression evaluation is
|
||||
:" not compiled in.
|
||||
:"
|
||||
:if 1
|
||||
: let more_save = &more
|
||||
:endif
|
||||
:set nomore
|
||||
:if has("unix")
|
||||
: !echo "uname -a" >bugreport.txt
|
||||
: !uname -a >>bugreport.txt
|
||||
:endif
|
||||
:redir >>bugreport.txt
|
||||
:version
|
||||
:if 1
|
||||
: func <SID>CheckDir(n)
|
||||
: if isdirectory(a:n)
|
||||
: echo 'directory "' . a:n . '" exists'
|
||||
: else
|
||||
: echo 'directory "' . a:n . '" does NOT exist'
|
||||
: endif
|
||||
: endfun
|
||||
: func <SID>CheckFile(n)
|
||||
: if filereadable(a:n)
|
||||
: echo '"' . a:n . '" is readable'
|
||||
: else
|
||||
: echo '"' . a:n . '" is NOT readable'
|
||||
: endif
|
||||
: endfun
|
||||
: echo "--- Directories and Files ---"
|
||||
: echo '$VIM = "' . $VIM . '"'
|
||||
: call <SID>CheckDir($VIM)
|
||||
: echo '$VIMRUNTIME = "' . $VIMRUNTIME . '"'
|
||||
: call <SID>CheckDir($VIMRUNTIME)
|
||||
: call <SID>CheckFile(&helpfile)
|
||||
: call <SID>CheckFile(fnamemodify(&helpfile, ":h") . "/tags")
|
||||
: call <SID>CheckFile($VIMRUNTIME . "/menu.vim")
|
||||
: call <SID>CheckFile($VIMRUNTIME . "/filetype.vim")
|
||||
: call <SID>CheckFile($VIMRUNTIME . "/syntax/synload.vim")
|
||||
: delfun <SID>CheckDir
|
||||
: delfun <SID>CheckFile
|
||||
: echo "--- Scripts sourced ---"
|
||||
: scriptnames
|
||||
:endif
|
||||
:set all
|
||||
:set termcap
|
||||
:if has("autocmd")
|
||||
: au
|
||||
:endif
|
||||
:if 1
|
||||
: echo "--- Normal/Visual mode mappings ---"
|
||||
:endif
|
||||
:map
|
||||
:if 1
|
||||
: echo "--- Insert/Command-line mode mappings ---"
|
||||
:endif
|
||||
:map!
|
||||
:if 1
|
||||
: echo "--- Abbreviations ---"
|
||||
:endif
|
||||
:ab
|
||||
:if 1
|
||||
: echo "--- Highlighting ---"
|
||||
:endif
|
||||
:highlight
|
||||
:if 1
|
||||
: echo "--- Variables ---"
|
||||
:endif
|
||||
:if 1
|
||||
: let
|
||||
:endif
|
||||
:redir END
|
||||
:set more&
|
||||
:if 1
|
||||
: let &more = more_save
|
||||
: unlet more_save
|
||||
:endif
|
||||
:e bugreport.txt
|
BIN
runtime/tutor/runtime/hi22-action-make.png
Normal file
BIN
runtime/tutor/runtime/hi22-action-make.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 425 B |
11
runtime/tutor/runtime/indoff.vim
Normal file
11
runtime/tutor/runtime/indoff.vim
Normal file
@ -0,0 +1,11 @@
|
||||
" Vim support file to switch off loading indent files for file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2001 Jun 11
|
||||
|
||||
if exists("did_indent_on")
|
||||
unlet did_indent_on
|
||||
endif
|
||||
|
||||
" Remove all autocommands in the filetypeindent group
|
||||
silent! au! filetypeindent *
|
106
runtime/tutor/runtime/mswin.vim
Normal file
106
runtime/tutor/runtime/mswin.vim
Normal file
@ -0,0 +1,106 @@
|
||||
" Set options and add mapping such that Vim behaves a lot like MS-Windows
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2006 Apr 02
|
||||
|
||||
" bail out if this isn't wanted (mrsvim.vim uses this).
|
||||
if exists("g:skip_loading_mswin") && g:skip_loading_mswin
|
||||
finish
|
||||
endif
|
||||
|
||||
" set the 'cpoptions' to its Vim default
|
||||
if 1 " only do this when compiled with expression evaluation
|
||||
let s:save_cpo = &cpoptions
|
||||
endif
|
||||
set cpo&vim
|
||||
|
||||
" set 'selection', 'selectmode', 'mousemodel' and 'keymodel' for MS-Windows
|
||||
behave mswin
|
||||
|
||||
" backspace and cursor keys wrap to previous/next line
|
||||
set backspace=indent,eol,start whichwrap+=<,>,[,]
|
||||
|
||||
" backspace in Visual mode deletes selection
|
||||
vnoremap <BS> d
|
||||
|
||||
" CTRL-X and SHIFT-Del are Cut
|
||||
vnoremap <C-X> "+x
|
||||
vnoremap <S-Del> "+x
|
||||
|
||||
" CTRL-C and CTRL-Insert are Copy
|
||||
vnoremap <C-C> "+y
|
||||
vnoremap <C-Insert> "+y
|
||||
|
||||
" CTRL-V and SHIFT-Insert are Paste
|
||||
map <C-V> "+gP
|
||||
map <S-Insert> "+gP
|
||||
|
||||
cmap <C-V> <C-R>+
|
||||
cmap <S-Insert> <C-R>+
|
||||
|
||||
" Pasting blockwise and linewise selections is not possible in Insert and
|
||||
" Visual mode without the +virtualedit feature. They are pasted as if they
|
||||
" were characterwise instead.
|
||||
" Uses the paste.vim autoload script.
|
||||
|
||||
exe 'inoremap <script> <C-V>' paste#paste_cmd['i']
|
||||
exe 'vnoremap <script> <C-V>' paste#paste_cmd['v']
|
||||
|
||||
imap <S-Insert> <C-V>
|
||||
vmap <S-Insert> <C-V>
|
||||
|
||||
" Use CTRL-Q to do what CTRL-V used to do
|
||||
noremap <C-Q> <C-V>
|
||||
|
||||
" Use CTRL-S for saving, also in Insert mode
|
||||
noremap <C-S> :update<CR>
|
||||
vnoremap <C-S> <C-C>:update<CR>
|
||||
inoremap <C-S> <C-O>:update<CR>
|
||||
|
||||
" For CTRL-V to work autoselect must be off.
|
||||
" On Unix we have two selections, autoselect can be used.
|
||||
if !has("unix")
|
||||
set guioptions-=a
|
||||
endif
|
||||
|
||||
" CTRL-Z is Undo; not in cmdline though
|
||||
noremap <C-Z> u
|
||||
inoremap <C-Z> <C-O>u
|
||||
|
||||
" CTRL-Y is Redo (although not repeat); not in cmdline though
|
||||
noremap <C-Y> <C-R>
|
||||
inoremap <C-Y> <C-O><C-R>
|
||||
|
||||
" Alt-Space is System menu
|
||||
if has("gui")
|
||||
noremap <M-Space> :simalt ~<CR>
|
||||
inoremap <M-Space> <C-O>:simalt ~<CR>
|
||||
cnoremap <M-Space> <C-C>:simalt ~<CR>
|
||||
endif
|
||||
|
||||
" CTRL-A is Select all
|
||||
noremap <C-A> gggH<C-O>G
|
||||
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
|
||||
cnoremap <C-A> <C-C>gggH<C-O>G
|
||||
onoremap <C-A> <C-C>gggH<C-O>G
|
||||
snoremap <C-A> <C-C>gggH<C-O>G
|
||||
xnoremap <C-A> <C-C>ggVG
|
||||
|
||||
" CTRL-Tab is Next window
|
||||
noremap <C-Tab> <C-W>w
|
||||
inoremap <C-Tab> <C-O><C-W>w
|
||||
cnoremap <C-Tab> <C-C><C-W>w
|
||||
onoremap <C-Tab> <C-C><C-W>w
|
||||
|
||||
" CTRL-F4 is Close window
|
||||
noremap <C-F4> <C-W>c
|
||||
inoremap <C-F4> <C-O><C-W>c
|
||||
cnoremap <C-F4> <C-C><C-W>c
|
||||
onoremap <C-F4> <C-C><C-W>c
|
||||
|
||||
" restore 'cpoptions'
|
||||
set cpo&
|
||||
if 1
|
||||
let &cpoptions = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
endif
|
135
runtime/tutor/runtime/termcap
Normal file
135
runtime/tutor/runtime/termcap
Normal file
@ -0,0 +1,135 @@
|
||||
#
|
||||
# Demonstration of a termcap file (for the Amiga and Archimedes)
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last change: 1999 Feb 02
|
||||
#
|
||||
sx|ansi|any ansi terminal with pessimistic assumptions:\
|
||||
:co#80:li#24:cl=50\E[;H\E[2J:bs:am:cm=\E[%i%d;%dH:\
|
||||
:nd=\E[C:up=\E[A:ce=\E[K:ho=\E[H:pt:
|
||||
|
||||
Mu|sun|Sun Microsystems Workstation console:\
|
||||
:am:bs:km:mi:ms:pt:li#34:co#80:cl=^L:cm=\E[%i%d;%dH:\
|
||||
:ce=\E[K:cd=\E[J:\
|
||||
:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:rs=\E[s:\
|
||||
:md=\E[1m:mr=\E[7m:me=\E[m:\
|
||||
:al=\E[L:dl=\E[M:im=:ei=:ic=\E[@:dc=\E[P:\
|
||||
:AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP:\
|
||||
:up=\E[A:nd=\E[C:ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:\
|
||||
:k1=\E[224z:k2=\E[225z:k3=\E[226z:k4=\E[227z:k5=\E[228z:\
|
||||
:k6=\E[229z:k7=\E[230z:k8=\E[231z:k9=\E[232z:
|
||||
|
||||
M-|sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character:\
|
||||
:ic@:im@:ei@:tc=sun:
|
||||
Mu|sun-s|Sun Microsystems Workstation window with status line:\
|
||||
:hs:ts=\E]l:fs=\E\\:ds=\E]l\E\\:tc=sun:
|
||||
Mu|sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs:\
|
||||
:hs:ts=\E]l:fs=\E\\:ds=\E]l\E\\:tc=sun-e:
|
||||
M0|sun-48|Sun 48-line window:\
|
||||
:li#48:co#80:tc=sun:
|
||||
M1|sun-34|Sun 34-line window:\
|
||||
:li#34:co#80:tc=sun:
|
||||
M2|sun-24|Sun 24-line window:\
|
||||
:li#24:co#80:tc=sun:
|
||||
M3|sun-17|Sun 17-line window:\
|
||||
:li#17:co#80:tc=sun:
|
||||
|
||||
v9|925a|tvi925a|TeleVideo Model 925:\
|
||||
:al=\EE:am:bs:bt=\EI:bw:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :co#80:dc=\EW:\
|
||||
:dl=\ER:do=^V:ei=:ic=\EQ:if=/usr/share/lib/tabset/std:im=:kb=^H:kd=^V:\
|
||||
:kh=^^:kl=^H:kn#12:kr=^L:ku=^K:li#24:nd=^L:pt:se=\EG0:sg#1:so=\EG4:\
|
||||
:ue=\EG0:ug#1:ul:up=^K:us=\EG8:is=\El\
|
||||
:vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\
|
||||
:ve=\E.4:vs=\E.2:
|
||||
|
||||
d0|vt100|vt100-am|vt100am|dec vt100:\
|
||||
:do=^J:co#80:li#24:cl=50\E[;H\E[2J:sf=5\ED:\
|
||||
:le=^H:bs:am:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\
|
||||
:ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\
|
||||
:md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:is=\E[1;24r\E[24;1H:\
|
||||
:rf=/usr/share/lib/tabset/vt100:\
|
||||
:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\
|
||||
:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\
|
||||
:ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=5\EM:vt#3:xn:\
|
||||
:sc=\E7:rc=\E8:cs=\E[%i%d;%dr:
|
||||
|
||||
# Amiga termcap by Bram Moolenaar
|
||||
AA|amiga|Amiga ANSI:\
|
||||
:co#80:li#25:am:do=\E[B:ce=\E[K:cd=\E[J:\
|
||||
:cl=\014:ku=\233A:kd=\233B:kl=\233D:kr=\233C:kb=^H:\
|
||||
:#4=\233 A:%i=\233 @:%1=\233?~:\
|
||||
:k1=\2330~:k2=\2331~:k3=\2332~:k4=\2333~:k5=\2334~:\
|
||||
:k6=\2335~:k7=\2336~:k8=\2337~:k9=\2338~:k;=\2339~:\
|
||||
:F1=\23310~:F2=\23311~:F3=\23312~:F4=\23313~:F5=\23314~:\
|
||||
:F6=\23315~:F7=\23316~:F8=\23317~:F9=\23318~:FA=\23319~:\
|
||||
:al=\E[L:AL=\E[%dL:dl=\E[M:DL=\E[%dM:le=^H:cm=\E[%i%d;%dH:\
|
||||
:nd=\E[C:RI=\E[%dC:up=\E[A:\
|
||||
:ce=\E[K:ho=\E[H:dc=\E[P:ic=\E[@:vi=\E[0 p:ve=\E[1 p:\
|
||||
:so=\E[2m:se=\E[m:us=\E[4m:ue=\E[m:mr=\E[7m:mb=\E[7;2m:me=\E[m:
|
||||
|
||||
# Acorn VDU
|
||||
# For non-green text, change the ^B in the :cl= line to
|
||||
# your favourite control code.
|
||||
a0|acorn0|Acorn VDU Driver Mode 0:\
|
||||
:cl=^V\200^S^A^B\200\200\200:\
|
||||
:is=^C^F^D^O^V\200^S^A^B\200\200\200:\
|
||||
:tc=acorn_generic
|
||||
|
||||
ag|acorn_generic|Acorn Generic VDU driver:\
|
||||
:li#32:\
|
||||
:co#80:\
|
||||
:am:\
|
||||
:bs:\
|
||||
:bw:\
|
||||
:bl=^G:\
|
||||
:ce=^W^H^E^F\200\200\200\200\200\200:\
|
||||
:cl=^L:\
|
||||
:cm=^_%r%.%.:\
|
||||
:ho=^^:\
|
||||
:le=\010:\
|
||||
:cr=\015:\
|
||||
:me=^W^Q^E\200\200\200\200\200\200\200:\
|
||||
:mr=^W^Q^E\200\200\200\200\200\200\200:\
|
||||
:sb=^W^G^A^B\200\200\200\200\200\200:\
|
||||
:se=^W^Q^E\200\200\200\200\200\200\200:\
|
||||
:sf=^W^G^A^C\200\200\200\200\200\200:\
|
||||
:so=^W^Q^E\200\200\200\200\200\200\200:\
|
||||
:sr=^W^G^A^B\200\200\200\200\200\200:\
|
||||
:up=^K:\
|
||||
:vb=^R^C^G^Y^D\200\200\200\200^Ye\200^E\200^D^Ye\200\200\200\200:\
|
||||
:vi=^W^A\200\200\200\200\200\200\200\200:\
|
||||
:ve=^W^A^A\200\200\200\200\200\200\200:\
|
||||
:ku=\317:\
|
||||
:kd=\316:\
|
||||
:kl=\314:\
|
||||
:kr=\315:\
|
||||
:kP=\337:\
|
||||
:kN=\336:\
|
||||
:kh=\036:\
|
||||
:kH=\313:\
|
||||
:su=\337:\
|
||||
:sd=\336:\
|
||||
:#4=\334:\
|
||||
:%i=\335:\
|
||||
:k1=\301:\
|
||||
:k2=\302:\
|
||||
:k3=\303:\
|
||||
:k4=\304:\
|
||||
:k5=\305:\
|
||||
:k6=\306:\
|
||||
:k7=\307:\
|
||||
:k8=\310:\
|
||||
:k9=\311:\
|
||||
:F1=\321:\
|
||||
:F2=\322:\
|
||||
:F3=\323:\
|
||||
:F4=\324:\
|
||||
:F5=\325:\
|
||||
:F6=\326:\
|
||||
:F7=\327:\
|
||||
:F8=\330:\
|
||||
:F9=\331
|
||||
|
||||
#
|
||||
# END OF TERMCAP
|
||||
#
|
27
runtime/tutor/runtime/vim16x16.xpm
Normal file
27
runtime/tutor/runtime/vim16x16.xpm
Normal file
@ -0,0 +1,27 @@
|
||||
/* XPM */
|
||||
static char * vim16x16[] = {
|
||||
"16 16 8 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #000080",
|
||||
"@ c #008000",
|
||||
"# c #00FF00",
|
||||
"$ c #808080",
|
||||
"% c #C0C0C0",
|
||||
"& c #FFFFFF",
|
||||
" .....#. .... ",
|
||||
" .&&&&&.@.&&&&. ",
|
||||
" .%%%%%$..%%%%$.",
|
||||
" .%%%$.@.&%%$. ",
|
||||
" .%%%$..&%%$. ",
|
||||
" .%%%$.&%%$.. ",
|
||||
" #.%%%$&%%$.@@. ",
|
||||
"#@.%%%&%%$.@@@@.",
|
||||
".@.%%%%%..@@@@+ ",
|
||||
" ..%%%%.%...@. ",
|
||||
" .%%%%...%%.%. ",
|
||||
" .%%%.%%.%%%%%.",
|
||||
" .%%$..%.%.%.%.",
|
||||
" .%$.@.%.%.%.%.",
|
||||
" .. .%%.%.%.%.",
|
||||
" .. . . . "};
|
BIN
runtime/tutor/runtime/vimlogo.cdr
Normal file
BIN
runtime/tutor/runtime/vimlogo.cdr
Normal file
Binary file not shown.
BIN
runtime/tutor/runtime/vimlogo.gif
Normal file
BIN
runtime/tutor/runtime/vimlogo.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
BIN
runtime/tutor/runtime/vimlogo.pdf
Normal file
BIN
runtime/tutor/runtime/vimlogo.pdf
Normal file
Binary file not shown.
@ -1,807 +0,0 @@
|
||||
===============================================================================
|
||||
= B e n v i n g u t s a l t u t o r d e l V I M - Versi<73> 1.5 =
|
||||
===============================================================================
|
||||
|
||||
El Vim <20>s un editor molt potent que t<> moltes ordres, masses com per
|
||||
explicar-les totes un tutor com aquest. Aquest tutor est<73> dissenyat
|
||||
per descriure les ordres b<>siques que us permetin fer servir el Vim com
|
||||
a editor de prop<6F>sit general.
|
||||
|
||||
El temps aproximat de seguir el tutor complet <20>s d'uns 25 o 30 minuts
|
||||
depenent de quant temps dediqueu a experimentar.
|
||||
|
||||
Feu una c<>pia d'aquest fitxer per practicar-hi (si heu comen<65>at amb el
|
||||
programa vimtutor aix<69> que esteu llegint ja <20>s una c<>pia).
|
||||
|
||||
<20>s important recordar que aquest tutor est<73> pensat per ensenyar
|
||||
practicant. <20>s a dir, que haureu d'executar les ordres si les voleu
|
||||
aprendre. Si nom<6F>s llegiu el text el m<>s probable <20>s que les oblideu.
|
||||
|
||||
Ara assegureu-vos que la tecla de bloqueig de maj<61>scules no est<73>
|
||||
activada i premeu la tecla j per moure el cursor avall, fins que
|
||||
la lli<6C><69> 1.1 ocupi completament la pantalla.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 1.1: MOURE EL CURSOR
|
||||
|
||||
|
||||
** Per moure el cursor premeu les tecles h,j,k,l tal com est<73> indicat. **
|
||||
^
|
||||
k Pista: La h <20>s a l'esquerra i mou el cursor cap a l'esquerra.
|
||||
< h l > La l <20>s a la dreta i mou el cursor cap a la dreta.
|
||||
j La j sembla una fletxa cap avall.
|
||||
v
|
||||
1. Moveu el cursor per la pantalla fins que us sentiu confortables.
|
||||
|
||||
2. Mantingueu premuda la tecla avall (j) una estona.
|
||||
---> Ara sabeu com moure-us fins a la pr<70>xima lli<6C><69>.
|
||||
|
||||
3. Usant la tecla avall, aneu a la lli<6C><69> 1.2.
|
||||
|
||||
Nota: Si no esteu segurs de la tecla que heu premut, premeu <ESC> per tornar
|
||||
al mode Normal. Llavors torneu a teclejar l'ordre que vol<6F>eu.
|
||||
|
||||
Nota: Les tecles de moviment del cursor (fletxes) tamb<6D> funcionen. Per<65> usant
|
||||
hjkl anireu m<>s r<>pid, quan us hi h<>giu acostumant.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 1.2: ENTRAR I SORTIR DEL VIM
|
||||
|
||||
|
||||
!! NOTA: Abans de seguir els passos seg<65>ents llegiu *tota* la lli<6C><69>!!
|
||||
|
||||
1. Premeu <ESC> (per estar segurs que esteu en el mode Normal).
|
||||
|
||||
2. Teclegeu: :q! <ENTRAR>.
|
||||
|
||||
---> Amb aix<69> sortireu de l'editor SENSE desar els canvis que h<>giu pogut
|
||||
fer. Si voleu desar els canvis teclegeu:
|
||||
:wq <ENTRAR>
|
||||
|
||||
3. Quan vegeu l'introductor de la shell escriviu l'ordre amb la qual heu
|
||||
arribat a aquest tutor. Podria ser: vimtutor <ENTRAR>
|
||||
O b<>: vim tutor <ENTRAR>
|
||||
|
||||
---> 'vim' <20>s l'editor vim, i 'tutor' <20>s el fitxer que voleu editar.
|
||||
|
||||
4. Si heu memoritzat les ordres, feu els passos anteriors, de l'1 al 3,
|
||||
per sortir i tornar a entrar a l'editor. Llavors moveu el cursor avall
|
||||
fins la lli<6C><69> 1.3.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 1.3: EDITAR TEXT - ESBORRAR
|
||||
|
||||
|
||||
** En mode Normal premeu x per esborrar el car<61>cter de sota el cursor. **
|
||||
|
||||
1. Moveu el cursor fins la l<>nia que hi ha m<>s avall marcada amb --->.
|
||||
|
||||
2. Poseu el cursor a sobre el car<61>cter que cal esborrar, per corregir els
|
||||
errors.
|
||||
|
||||
3. Premeu la tecla x per esborrar el car<61>cter.
|
||||
|
||||
4. Repetiu els passos 2 i 3 fins que la frase sigui correcta.
|
||||
|
||||
---> Unna vaaca vva salttar sobbree la llluna.
|
||||
|
||||
5. Ara que la l<>nia <20>s correcta, aneu a la lli<6C><69> 1.4.
|
||||
|
||||
NOTA: Mentre aneu fent no tracteu de memoritzar, practiqueu i prou.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 1.4: EDITAR TEXT - INSERIR
|
||||
|
||||
|
||||
** En mode Normal premeu i per inserir text. **
|
||||
|
||||
1. Moveu el cursor avall fins la primera l<>nia marcada amb --->.
|
||||
|
||||
2. Per fer la primera l<>nia igual que la segona poseu el cursor sobre el
|
||||
primer car<61>cter POSTERIOR al text que s'ha d'inserir.
|
||||
|
||||
3. Premeu la tecla i i escriviu el text que falta.
|
||||
|
||||
4. Quan h<>giu acabat premeu <ESC> per tornar al mode Normal. Repetiu
|
||||
els passos 2, 3 i 4 per corregir la frase.
|
||||
|
||||
---> Falten carctrs en aquesta .
|
||||
---> Falten alguns car<61>cters en aquesta l<>nia.
|
||||
|
||||
5. Quan us trobeu c<>modes inserint text aneu al sumari de baix.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 1 SUMARI
|
||||
|
||||
|
||||
1. El cursor es mou amb les fletxes o b<> amb les tecles hjkl.
|
||||
h (esquerra) j (avall) k (amunt) l (dreta)
|
||||
|
||||
2. Per entrar al Vim (des de la shell) escriviu: vim FITXER <ENTRAR>
|
||||
|
||||
3. Per sortir teclegeu: <ESC> :q! <ENTRAR> per descartar els canvis.
|
||||
O B<> teclegeu: <ESC> :wq <ENTRAR> per desar els canvis.
|
||||
|
||||
4. Per esborrar el car<61>cter de sota el cursor en el mode Normal premeu: x
|
||||
|
||||
5. Per inserir text on hi ha el cursor, en mode Normal, premeu:
|
||||
i escriviu el text <ESC>
|
||||
|
||||
NOTA: La tecla <ESC> us portar<61> al mode Normal o cancel<65>lar<61> una ordre
|
||||
que estigui a mitges.
|
||||
|
||||
Ara continueu amb la lli<6C><69> 2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 2.1: ORDRES PER ESBORRAR
|
||||
|
||||
|
||||
** Teclegeu dw per esborrar fins al final d'una paraula. **
|
||||
|
||||
1. Premeu <ESC> per estar segurs que esteu en mode normal.
|
||||
|
||||
2. Moveu el cursor avall fins la l<>nia marcada amb --->.
|
||||
|
||||
3. Moveu el cursor fins el principi de la paraula que s'ha d'esborrar.
|
||||
|
||||
4. Teclegeu dw per fer desapar<61>ixer la paraula.
|
||||
|
||||
NOTA: Les lletres dw apareixeran a la l<>nia de baix de la pantalla mentre
|
||||
les aneu escrivint. Si us equivoqueu premeu <ESC> i torneu a comen<65>ar.
|
||||
|
||||
---> Hi han algunes paraules divertit que no pertanyen paper a aquesta frase.
|
||||
|
||||
5. Repetiu el passos 3 i 4 fins que la frase sigui correcta i continueu a
|
||||
la lli<6C><69> 2.2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 2.2: M<>S ORDRES PER ESBORRAR
|
||||
|
||||
|
||||
** Escriviu d$ per esborrar fins al final de la l<>nia. **
|
||||
|
||||
1. Premeu <ESC> per estar segurs que esteu en el mode Normal.
|
||||
|
||||
2. Moveu el cursor avall fins a la l<>nia marcada amb --->.
|
||||
|
||||
3. Moveu el cursor fins el final de la l<>nia correcta
|
||||
(DESPR<50>S del primer . ).
|
||||
|
||||
4. Teclegeu d$ per esborrar fins al final de la l<>nia.
|
||||
|
||||
---> Alg<6C> ha escrit el final d'aquesta l<>nia dos cops. l<>nia dos cops.
|
||||
|
||||
5. Aneu a la lli<6C><69> 2.3 per entendre qu<71> est<73> passant.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 2.3: SOBRE ORDRES I OBJECTES
|
||||
|
||||
|
||||
El format de l'ordre d'esborrar d <20>s el seg<65>ent:
|
||||
|
||||
[nombre] d objecte O B<> d [nombre] objecte
|
||||
On:
|
||||
nombre - <20>s el nombre de cops que s'ha d'executar (opcional, omissi<73>=1).
|
||||
d - <20>s l'ordre per esborrar.
|
||||
objecte - <20>s la cosa amb la qual operar (llista a baix).
|
||||
|
||||
Una petita llista d'objectes:
|
||||
w - des del cursor fins al final de la paraula, incloent-hi l'espai.
|
||||
e - des del cursor fins al final de la paraula, SENSE incloure l'espai.
|
||||
$ - des del cursor fins al final de la l<>nia.
|
||||
|
||||
NOTA: Per als aventurers: si teclegeu nom<6F>s l'objecte, en el mode Normal,
|
||||
sense cap ordre, el cursor es mour<75> tal com est<73> especificat a la
|
||||
llista d'objectes.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 2.4: UNA EXCEPCI<43> A 'ORDRE-OBJECTE'
|
||||
|
||||
|
||||
** Teclegeu dd esborrar tota la l<>nia. **
|
||||
|
||||
Com que molt sovint s'han d'eliminar l<>nies senceres els dissenyadors del
|
||||
Vi van creure que seria m<>s f<>cil teclejar dd per esborrar tota la l<>nia.
|
||||
|
||||
1. Moveu el cursor a la segona l<>nia de la frase de baix.
|
||||
2. Teclegeu dd per esborrar la l<>nia.
|
||||
3. Ara aneu a la quarta l<>nia.
|
||||
4. Teclegeu 2dd per esborrar dues l<>nies (recordeu nombre-ordre-objecte).
|
||||
|
||||
1) Les roses s<>n vermelles,
|
||||
2) El fang <20>s divertit,
|
||||
3) Les violetes s<>n blaves,
|
||||
4) Tinc un cotxe,
|
||||
5) Els rellotges diuen l'hora,
|
||||
6) El sucre <20>s dol<6F>,
|
||||
7) Igual que tu.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 2.5: L'ORDRE DESFER
|
||||
|
||||
|
||||
** Premeu u per desfer els <20>ltims canvis, U per arreglar tota la l<>nia. **
|
||||
|
||||
1. Moveu el cursor sobre el primer error de l<>nia de baix marcada amb --->
|
||||
2. Premeu x per esborrar el car<61>cter no desitjat.
|
||||
3. Ara premeu u per desfer l'<27>ltima ordre executada.
|
||||
4. Aquest cop corregiu tots els errors de la l<>nia amb l'ordre x.
|
||||
5. Ara premeu U per restablir la l<>nia al seu estat original.
|
||||
6. Ara premeu u uns quants cops per desfer U i les ordres anteriors.
|
||||
7. Ara premeu CONTROL-R (les dues tecles al mateix temps) uns quants cops
|
||||
per refer les ordres.
|
||||
|
||||
---> Correegiu els errors d'aqquesta l<>nia i dessfeu-los aamb desfer.
|
||||
|
||||
8. Aquestes ordres s<>n molt <20>tils. Ara aneu al sumari de la lli<6C><69> 2.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 2 SUMARI
|
||||
|
||||
|
||||
1. Per esborrar del cursor al final de la paraula teclegeu: dw
|
||||
|
||||
2. Per esborrar del cursor al final de la l<>nia teclegeu: d$
|
||||
|
||||
3. Per esborrar una l<>nia sencera teclegeu: dd
|
||||
|
||||
4. El format de qualsevol ordre del mode Normal <20>s:
|
||||
|
||||
[nombre] ordre objecte O B<> ordre [nombre] objecte
|
||||
on:
|
||||
nombre - <20>s quants cops repetir l'ordre
|
||||
ordre - <20>s qu<71> fer, com ara d per esborrar
|
||||
objecte - <20>s amb qu<71> s'ha d'actuar, com ara w (paraula),
|
||||
$ (fins a final de l<>nia), etc.
|
||||
|
||||
5. Per desfer les accions anteriors premeu: u
|
||||
Per desfer tots el canvis en una l<>nia premeu: U
|
||||
Per desfer l'ordre desfer premeu: CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 3.1: L'ORDRE 'POSAR'
|
||||
|
||||
|
||||
** Premeu p per posar l'<27>ltima cosa que heu esborrat despr<70>s del cursor. **
|
||||
|
||||
|
||||
1. Moveu el cursor a la primera l<>nia de llista de baix.
|
||||
|
||||
2. Teclegeu dd per esborrar la l<>nia i desar-la a la mem<65>ria.
|
||||
|
||||
3. Moveu el cursor a la l<>nia ANTERIOR on hauria d'anar.
|
||||
|
||||
4. En mode Normal, premeu p per inserir la l<>nia.
|
||||
|
||||
5. Repetiu els passos 2, 3 i 4 per ordenar les l<>nies correctament.
|
||||
|
||||
d) Pots aprendre tu?
|
||||
b) Les violetes s<>n blaves,
|
||||
c) L'intel<65>lig<69>ncia s'apr<70>n,
|
||||
a) Les roses s<>n vermelles,
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 3.2: L'ORDRE SUBSTITUIR
|
||||
|
||||
|
||||
** Premeu r i un car<61>cter per substituir el car<61>cter de sota el cursor. **
|
||||
|
||||
1. Moveu el cursor a la primera l<>nia de sota marcada amb --->.
|
||||
|
||||
2. Moveu el cursor a sobre del primer car<61>cter equivocat.
|
||||
|
||||
3. Premeu r i tot seguit el car<61>cter correcte per corregir l'error.
|
||||
|
||||
4. Repetiu els passos 2 i 3 fins que la l<>nia sigui correcta.
|
||||
|
||||
---> Quen van escroure aquerta l<>nia, algh va apretar tikles equivocades!
|
||||
---> Quan van escriure aquesta l<>nia, alg<6C> va apretar tecles equivocades!
|
||||
|
||||
5. Ara continueu a la lli<6C><69> 3.2.
|
||||
|
||||
NOTA: Recordeu que heu de practicar, no memoritzar.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 3.3: L'ORDRE CANVIAR
|
||||
|
||||
|
||||
** Per canviar una part o tota la paraula, escriviu cw . **
|
||||
|
||||
1. Moveu el cursor a la primera l<>nia de sota marcada amb --->.
|
||||
|
||||
2. Poseu el cursor sobre la u de 'lughc'.
|
||||
|
||||
3. Teclegeu cw i corregiu la paraula (en aquest cas escriviu '<27>nia'.)
|
||||
|
||||
4. Premeu <ESC> i aneu al seg<65>ent error.
|
||||
|
||||
5. Repetiu els passos 3 i 4 fins que les dues frases siguin iguals.
|
||||
|
||||
---> Aquesta lughc t<> algunes paradskl que s'han de cdddf.
|
||||
---> Aquesta l<>nia t<> algunes paraules que s'han de canviar.
|
||||
|
||||
Noteu que cw no nom<6F>s canvia la paraula, tamb<6D> us posa en mode d'inserci<63>.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 3.4: M<>S CANVIS AMB c
|
||||
|
||||
|
||||
** L'ordre canviar s'usa amb els mateixos objectes que l'ordre esborrar. **
|
||||
|
||||
1. L'ordre canviar funciona igual que la d'esborrar. El format <20>s:
|
||||
|
||||
[nombre] c objecte O B<> c [nombre] objecte
|
||||
|
||||
2. Els objectes s<>n els mateixos, com w (paraula), $ (final de l<>nia), etc.
|
||||
|
||||
3. Moveu el cursor fins la primera l<>nia marcada amb --->.
|
||||
|
||||
4. Avanceu fins al primer error.
|
||||
|
||||
5. Premeu c$ per fer la l<>nia igual que la segona i premeu <ESC>.
|
||||
|
||||
---> El final d'aquesta l<>nia necessita canvis per ser igual que la segona.
|
||||
---> El final d'aquesta l<>nia s'ha de corregir amb l'ordre c$.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 3 SUMARI
|
||||
|
||||
|
||||
1. Per tornar a posar el text que s'ha esborrat, premeu p . Aix<69> posa el
|
||||
text esborrat DESPR<50>S del cursor (si heu esborrat una l<>nia anir<69> a
|
||||
parar a la l<>nia SEG<45>ENT d'on hi ha el cursor).
|
||||
|
||||
2. Per substituir el car<61>cter de sota el cursor, premeu r i tot seguit
|
||||
el car<61>cter que ha de reempla<6C>ar l'original.
|
||||
|
||||
3. L'ordre canviar permet canviar l'objecte especificat des del cursor
|
||||
fins el final de l'objecte. Per exemple, cw canvia el que hi ha des
|
||||
del cursor fins al final de la paraula, i c$ fins al final de l<>nia.
|
||||
|
||||
4. El format de l'ordre canviar <20>s:
|
||||
|
||||
[nombre] c objecte O B<> c [nombre] objecte
|
||||
|
||||
Ara aneu a la pr<70>xima lli<6C><69>.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 4.1: SITUACI<43> I ESTAT DEL FITXER
|
||||
|
||||
|
||||
** Premeu CTRL-g per veure la situaci<63> dins del fitxer i el seu estat.
|
||||
Premeu SHIFT-G per anar a una l<>nia determinada. **
|
||||
|
||||
Nota: No proveu res fins que h<>giu llegit TOTA la lli<6C><69>!!
|
||||
|
||||
1. Mantingueu premuda la tecla Control i premeu g . A la part de baix de
|
||||
la p<>gina apareixer<65> un l<>nia amb el nom del fitxer i la l<>nia en la
|
||||
qual us trobeu. Recordeu el n<>mero de la l<>nia pel Pas 3.
|
||||
|
||||
2. Premeu Shift-G per anar al final de tot del fitxer.
|
||||
|
||||
3. Teclegeu el n<>mero de la l<>nia on <20>reu i despr<70>s premeu Shift-G. Aix<69>
|
||||
us tornar<61> a la l<>nia on <20>reu quan heu premut per primer cop Ctrl-g.
|
||||
(Quan teclegeu el n<>mero NO es veur<75> a la pantalla.)
|
||||
|
||||
4. Ara executeu els passos de l'1 al 3.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 4.2: L'ORDRE CERCAR
|
||||
|
||||
|
||||
** Premeu / seguit de la frase que vulgueu cercar. **
|
||||
|
||||
1. En el mode Normal premeu el car<61>cter / . Noteu que el cursor apareix
|
||||
a la part de baix de la pantalla igual que amb l'ordre : .
|
||||
|
||||
2. Ara escriviu 'errroor' <ENTRAR>. Aquesta <20>s la paraula que voleu
|
||||
cercar.
|
||||
|
||||
3. Per tornar a cercar la mateixa frase, premeu n .
|
||||
Per cercar la mateixa frase en direcci<63> contraria, premeu Shift-N .
|
||||
|
||||
4. Si voleu cercar una frase en direcci<63> ascendent, useu l'ordre ? en
|
||||
lloc de /.
|
||||
|
||||
---> "errroor" no <20>s com s'escriu error; errroor <20>s un error.
|
||||
|
||||
Note: Quan la cerca arribi al final del fitxer continuar<61> a l'inici.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 4.3: CERCA DE PAR<41>NTESIS
|
||||
|
||||
|
||||
** Premeu % per cercar el ),], o } corresponent. **
|
||||
|
||||
1. Poseu el cursor en qualsevol (, [, o { de la l<>nia marcada amb --->.
|
||||
|
||||
2. Ara premeu el car<61>cter % .
|
||||
|
||||
3. El cursor hauria d'anar a la clau o par<61>ntesis corresponent.
|
||||
|
||||
4. Premeu % per tornar el cursor al primer par<61>ntesi.
|
||||
|
||||
---> Aix<69> ( <20>s una l<>nia amb car<61>cters (, [ ] i { } de prova. ))
|
||||
|
||||
Nota: Aix<69> <20>s molt <20>til per trobar errors en programes inform<72>tics!
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 4.4: UNA MANERA DE CANVIAR ERRORS
|
||||
|
||||
|
||||
** Escriviu :s/vell/nou/g per substituir 'vell' per 'nou'. **
|
||||
|
||||
1. Moveu el cursor a la l<>nia de sota marcada amb --->.
|
||||
|
||||
2. Escriviu :s/laa/la <ENTRAR> . Aquesta ordre nom<6F>s canvia la primera
|
||||
coincid<69>ncia que es trobi a la l<>nia.
|
||||
|
||||
3. Ara escriviu :s/laa/la/g per fer una substituci<63> global. Aix<69>
|
||||
canviar<61> totes les coincid<69>ncies que es trobin a la l<>nia.
|
||||
|
||||
---> laa millor <20>poca per veure laa flor <20>s laa primavera.
|
||||
|
||||
4. Per canviar totes les coincid<69>ncies d'una cadena entre dues l<>nies,
|
||||
escriviu :#,#s/vell/nou/g on #,# s<>n els nombres de les l<>nies.
|
||||
Escriviu :%s/vell/nou/g per substituir la cadena a tot el fitxer.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 4 SUMARI
|
||||
|
||||
|
||||
1. Ctrl-g mostra la posici<63> dins del fitxer i l'estat del mateix.
|
||||
Shift-G us porta al final del fitxer. Un n<>mero seguit de Shift-G
|
||||
us porta a la l<>nia corresponent.
|
||||
|
||||
2. L'ordre / seguida d'una frase cerca la frase ENDAVANT.
|
||||
L'ordre ? seguida d'una frase cerca la frase ENDARRERE.
|
||||
Despr<70>s d'una cerca premeu n per trobar la pr<70>xima coincid<69>ncia en
|
||||
la mateixa direcci<63>, o Shift-N per cercar en la direcci<63> contr<74>ria.
|
||||
|
||||
3. L'ordre % quan el cursor <20>s a sobre un (,),[,],{, o } troba la
|
||||
parella corresponent.
|
||||
|
||||
4. Per substituir el primer 'vell' per 'nou' en una l<>nia :s/vell/nou
|
||||
Per substituir tots els 'vell' per 'nou' en una l<>nia :s/vell/nou/g
|
||||
Per substituir frases entre les l<>nies # i # :#,#s/vell/nou/g
|
||||
Per substituir totes les coincid<69>ncies en el fitxer :%s/vell/nou/g
|
||||
Per demanar confirmaci<63> cada cop afegiu 'c' :%s/vell/nou/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 5.1: COM EXECUTAR UNA ORDRE EXTERNA
|
||||
|
||||
|
||||
** Teclegeu :! seguit d'una ordre externa per executar-la. **
|
||||
|
||||
1. Premeu el familiar : per col<6F>locar el cursor a la part de baix de
|
||||
la pantalla. Aix<69> us permet entrar una ordre.
|
||||
|
||||
2. Ara teclegeu el car<61>cter ! (signe d'exclamaci<63>). Aix<69> us permet
|
||||
executar qualsevol ordre de la shell.
|
||||
|
||||
3. Com a exemple escriviu ls i tot seguit premeu <ENTRAR>. Aix<69> us
|
||||
mostrar<61> el contingut del directori, tal com si estigu<67>ssiu a la
|
||||
l<>nia d'ordres. Feu servir :!dir si ls no funciona.
|
||||
|
||||
Nota: D'aquesta manera es pot executar qualsevol ordre externa.
|
||||
|
||||
Nota: Totes les ordres : s'han d'acabar amb la tecla <ENTRAR>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 5.2: M<>S SOBRE L'ESCRIPTURA DE FITXERS
|
||||
|
||||
|
||||
** Per desar els canvis fets, escriviu :w FITXER. ***
|
||||
|
||||
1. Escriviu :!dir o b<> :!ls per obtenir un llistat del directori.
|
||||
Ja sabeu que heu de pr<70>mer <ENTRAR> despr<70>s d'aix<69>.
|
||||
|
||||
2. Trieu un nom de fitxer que no existeixi, com ara PROVA.
|
||||
|
||||
3. Ara feu: :w PROVA (on PROVA <20>s el nom que heu triat.)
|
||||
|
||||
4. Aix<69> desa tot el fitxer amb el nom de PROVA. Per comprovar-ho
|
||||
escriviu :!dir per veure el contingut del directori.
|
||||
|
||||
Note: Si sortiu del Vim i entreu una altra vegada amb el fitxer PROVA, el
|
||||
fitxer ser<65> una c<>pia exacta del tutor que heu desat.
|
||||
|
||||
5. Ara esborreu el fitxer teclejant (MS-DOS): :!del PROVA
|
||||
o b<> (Unix): :!rm PROVA
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 5.3: UNA ORDRE SELECTIVA PER DESAR
|
||||
|
||||
|
||||
** Per desar una part del fitxer, escriviu :#,# w FITXER **
|
||||
|
||||
1. Un altre cop, feu :!dir o :!ls per obtenir un llistat del directori
|
||||
i trieu un nom de fitxer adequat com ara PROVA.
|
||||
|
||||
2. Moveu el cursor a dalt de tot de la p<>gina i premeu Ctrl-g per
|
||||
saber el n<>mero de la l<>nia. RECORDEU AQUEST N<>MERO!
|
||||
|
||||
3. Ara aneu a baix de tot de la p<>gina i torneu a pr<70>mer Ctrl-g.
|
||||
RECORDEU AQUEST N<>MERO TAMB<4D>!
|
||||
|
||||
4. Per desar NOM<4F>S una secci<63> en un fitxer, escriviu :#,# w PROVA on
|
||||
#,# s<>n els dos n<>meros que heu recordat (dalt,baix) i PROVA el nom
|
||||
del fitxer.
|
||||
|
||||
5. Mireu que el fitxer nou hi sigui amb :!dir per<65> no l'esborreu.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 5.4: OBTENIR I AJUNTAR FITXERS
|
||||
|
||||
|
||||
** Per inserir el contingut d'un fitxer, feu :r FITXER **
|
||||
|
||||
1. Assegureu-vos, amb l'ordre :!dir , que el fitxer PROVA encara hi <20>s.
|
||||
|
||||
2. Poseu el cursor a dalt de tot d'aquesta p<>gina.
|
||||
|
||||
NOTA: Despr<70>s d'executar el Pas 3 veureu la lli<6C><69> 5.3. Aleshores moveu-vos
|
||||
cap avall fins a aquesta lli<6C><69> un altre cop.
|
||||
|
||||
3. Ara obtingueu el fitxer PROVA amb l'ordre :r PROVA on PROVA <20>s el
|
||||
nom del fitxer.
|
||||
|
||||
NOTA: El fitxer que obtingueu es posa en el lloc on hi hagi el cursor.
|
||||
|
||||
4. Per comprovar que s'ha obtingut el fitxer tireu enrere i mireu com
|
||||
ara hi han dues c<>pies de la lli<6C><69> 5.3: l'original i la del fitxer.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 5 SUMARI
|
||||
|
||||
|
||||
1. :!ordre executa una ordre externa.
|
||||
|
||||
Alguns exemples <20>tils s<>n:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - mostra un llistat del directori
|
||||
:!del FITXER :!rm FITXER - esborra el fitxer FITXER
|
||||
|
||||
2. :w FITXER escriu el fitxer editat al disc dur, amb el nom FITXER.
|
||||
|
||||
3. :#,#w FITXER desa les l<>nies de # a # en el fitxer FITXER.
|
||||
|
||||
4. :r FITXER llegeix el fitxer FITXER del disc dur i l'insereix en el
|
||||
fitxer editat a la posici<63> on hi ha el cursor.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 6.1: L'ORDRE OBRIR
|
||||
|
||||
|
||||
** Premeu o per obrir una l<>nia sota el cursor i entrar en mode inserci<63>. **
|
||||
|
||||
1. Moveu el cursor a la l<>nia de sota marcada amb --->.
|
||||
|
||||
2. Premeu o (min<69>scula) per obrir una l<>nia SOTA el cursor i situar-vos
|
||||
en mode d'inserci<63>.
|
||||
|
||||
3. Ara copieu la l<>nia marcada amb ---> i premeu <ESC> per tornar al mode
|
||||
normal.
|
||||
|
||||
---> Despr<70>s de pr<70>mer o el cursor es situa a la l<>nia nova en mode inserci<63>.
|
||||
|
||||
4. Per obrir una l<>nia SOBRE el cursor, premeu la O maj<61>scula, en lloc
|
||||
de la min<69>scula. Proveu-ho amb la l<>nia de sota.
|
||||
Obriu una l<>nia sobre aquesta amb Shift-O amb el cursor en aquesta l<>nia.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 6.2: L'ORDRE AFEGIR
|
||||
|
||||
|
||||
** Premeu a per afegir text DESPR<50>S del cursor. **
|
||||
|
||||
1. Moveu el cursor al final de la primera l<>nia de sota marcada
|
||||
amb ---> prement $ en el mode Normal.
|
||||
|
||||
2. Premeu la lletra a (min<69>scula) per afegir text DESPR<50>S del car<61>cter
|
||||
sota el cursor. (La A maj<61>scula afegeix text al final de l<>nia.)
|
||||
|
||||
Nota: Aix<69> s'evita haver de pr<70>mer i , l'<27>ltim car<61>cter, el text a inserir,
|
||||
la tecla <ESC>, cursor a la dreta, i finalment x , nom<6F>s per afegir
|
||||
text a final de l<>nia.
|
||||
|
||||
3. Ara completeu la primera l<>nia. Tingueu en compte que aquesta ordre
|
||||
<20>s exactament igual que la d'inserir, excepte pel que fa al lloc on
|
||||
s'insereix el text.
|
||||
|
||||
---> Aquesta l<>nia us permetr<74> practicar
|
||||
---> Aquesta l<>nia us permetr<74> practicar afegir text a final de l<>nia.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 6.3: UNA ALTRA MANERA DE SUBSTITUIR
|
||||
|
||||
|
||||
** Teclegeu una R maj<61>scula per substituir m<>s d'un car<61>cter. **
|
||||
|
||||
1. Moveu el cursor a la l<>nia de sota marcada amb --->.
|
||||
|
||||
2. Poseu el cursor al principi de la primera paraula que es diferent
|
||||
respecte a la segona l<>nia marcada amb ---> (la paraula "l'<27>ltima").
|
||||
|
||||
3. Ara premeu R i substitu<74>u el que queda de text a la primera l<>nia
|
||||
escrivint sobre el text vell, per fer-la igual que la segona.
|
||||
|
||||
---> Per fer aquesta l<>nia igual que l'<27>ltima useu les tecles.
|
||||
---> Per fer aquesta l<>nia igual que la segona, premeu R i el text nou.
|
||||
|
||||
4. Tingueu en compte que en pr<70>mer <ESC> per sortir, el text que no
|
||||
s'hagi alterat es mant<6E>.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lli<6C><69> 6.4: ESTABLIR OPCIONS
|
||||
|
||||
** Feu que les ordres cercar o substituir ignorin les difer<65>ncies
|
||||
entre maj<61>scules i min<69>scules **
|
||||
|
||||
1. Cerqueu la paraula 'ignorar' amb: /ignorar
|
||||
Repetiu-ho uns quants cops amb la tecla n.
|
||||
|
||||
2. Establiu l'opci<63> 'ic' (Ignorar Capitals) escrivint:
|
||||
:set ic
|
||||
|
||||
3. Ara cerqueu 'ignorar' un altre cop amb la tecla n.
|
||||
Repetiu-ho uns quants cops m<>s.
|
||||
|
||||
4. Establiu les opcions 'hlsearch' i 'incsearch':
|
||||
:set hls is
|
||||
|
||||
5. Ara torneu a executar una ordre de cerca, i mireu qu<71> passa:
|
||||
/ignorar
|
||||
|
||||
6. Per treure el ressalt dels resultats, feu:
|
||||
:nohlsearch
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 6 SUMARI
|
||||
|
||||
|
||||
1. L'ordre o obre una l<>nia SOTA la del cursor i mou el cursor a la nova
|
||||
l<>nia, en mode Inserci<63>.
|
||||
La O maj<61>scula obre la l<>nia a SOBRE la que hi ha el cursor.
|
||||
|
||||
2. Premeu una a per afegir text DESPR<50>S del car<61>cter sota el cursor.
|
||||
La A maj<61>scula afegeix autom<6F>ticament el text a final de l<>nia.
|
||||
|
||||
3. L'ordre R maj<61>scula us posa en mode substituci<63> fins que premeu <ESC>.
|
||||
|
||||
4. Escriviu ":set xxx" per establir l'opci<63> "xxx"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 7: ORDRES D'AJUDA
|
||||
|
||||
|
||||
** Utilitzeu el sistema intern d'ajuda **
|
||||
|
||||
El Vim t<> un extens sistema d'ajuda. Per llegir una introducci<63> proveu una
|
||||
d'aquestes tres coses:
|
||||
- premeu la tecla <AJUDA> (si en teniu alguna)
|
||||
- premeu la tecla <F1> (si en teniu alguna)
|
||||
- escriviu :help <ENTRAR>
|
||||
|
||||
Teclegeu :q <ENTRAR> per tancar la finestra d'ajuda.
|
||||
|
||||
Podeu trobar ajuda sobre pr<70>cticament qualsevol tema donant un argument
|
||||
a l'ordre ":help". Proveu aix<69> (no oblideu pr<70>mer <ENTRAR>):
|
||||
|
||||
:help w
|
||||
:help c_<T
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLI<4C><49> 8: CREAR UN SCRIPT D'INICI
|
||||
|
||||
** Activar funcions autom<6F>ticament **
|
||||
|
||||
El Vim t<> moltes m<>s funcions que el Vi, per<65> moltes estan desactivades per
|
||||
omissi<73>. Per comen<65>ar a utilitzar m<>s funcions heu de crear un fitxer "vimrc".
|
||||
|
||||
1. Comenceu a editar el fitxer "vimrc", depenent del sistema
|
||||
:edit ~/.vimrc per Unix
|
||||
:edit $VIM/_vimrc per MS-Windows
|
||||
|
||||
2. Ara llegiu el fitxer "vimrc" d'exemple:
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Deseu el fitxer amb:
|
||||
|
||||
:write
|
||||
|
||||
El pr<70>xim cop que executeu el Vim usar<61> ressalt de sintaxi.
|
||||
Podeu afegir els ajustos que vulgueu en aquest fitxer "vimrc".
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Aqu<71> conclou el Tutor del Vim. Ha sigut un intent de fer-vos una breu
|
||||
introducci<63> a l'editor Vim, suficient com per qu<71> el pugueu comen<65>ar a fer
|
||||
servir. Est<73> lluny de ser complet perqu<71> el Vim t<> moltes m<>s ordres.
|
||||
Llegiu el manual de l'usuari: ":help user-manual".
|
||||
|
||||
Per un estudi m<>s profund us recomanem el seg<65>ent llibre:
|
||||
Vim - Vi Improved - de Steve Oualline
|
||||
Editorial: New Riders
|
||||
<20>s el primer llibre dedicat completament al Vim, especialment <20>til per a
|
||||
usuaris novells. T<> molts exemples i dibuixos.
|
||||
Vegeu http://iccf-holland.org/click5.html
|
||||
|
||||
Aquest altre <20>s m<>s vell i tracta m<>s sobre el Vi que sobre el Vim:
|
||||
Learning the Vi Editor - de Linda Lamb
|
||||
Editorial: O'Reilly & Associates Inc.
|
||||
<20>s un bon llibre per saber qualsevol cosa que desitgeu sobre el Vi.
|
||||
La sisena edici<63> tamb<6D> inclou informaci<63> sobre el Vim.
|
||||
|
||||
Aquest tutorial ha estat escrit per Michael C. Pierce i Robert K. Ware,
|
||||
Colorado School of Mines amb la col<6F>laboraci<63> de Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Modificat pel Vim per Bram Moolenaar.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
807
runtime/tutor/tutor.ca.utf-8
Normal file
807
runtime/tutor/tutor.ca.utf-8
Normal file
@ -0,0 +1,807 @@
|
||||
===============================================================================
|
||||
= B e n v i n g u t s a l t u t o r d e l V I M - Versió 1.5 =
|
||||
===============================================================================
|
||||
|
||||
El Vim és un editor molt potent que té moltes ordres, masses com per
|
||||
explicar-les totes un tutor com aquest. Aquest tutor està dissenyat
|
||||
per descriure les ordres bàsiques que us permetin fer servir el Vim com
|
||||
a editor de propòsit general.
|
||||
|
||||
El temps aproximat de seguir el tutor complet és d'uns 25 o 30 minuts
|
||||
depenent de quant temps dediqueu a experimentar.
|
||||
|
||||
Feu una còpia d'aquest fitxer per practicar-hi (si heu començat amb el
|
||||
programa vimtutor això que esteu llegint ja és una còpia).
|
||||
|
||||
És important recordar que aquest tutor està pensat per ensenyar
|
||||
practicant. És a dir, que haureu d'executar les ordres si les voleu
|
||||
aprendre. Si només llegiu el text el més probable és que les oblideu.
|
||||
|
||||
Ara assegureu-vos que la tecla de bloqueig de majúscules no està
|
||||
activada i premeu la tecla j per moure el cursor avall, fins que
|
||||
la lliçó 1.1 ocupi completament la pantalla.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 1.1: MOURE EL CURSOR
|
||||
|
||||
|
||||
** Per moure el cursor premeu les tecles h,j,k,l tal com està indicat. **
|
||||
^
|
||||
k Pista: La h és a l'esquerra i mou el cursor cap a l'esquerra.
|
||||
< h l > La l és a la dreta i mou el cursor cap a la dreta.
|
||||
j La j sembla una fletxa cap avall.
|
||||
v
|
||||
1. Moveu el cursor per la pantalla fins que us sentiu confortables.
|
||||
|
||||
2. Mantingueu premuda la tecla avall (j) una estona.
|
||||
---> Ara sabeu com moure-us fins a la pròxima lliçó.
|
||||
|
||||
3. Usant la tecla avall, aneu a la lliçó 1.2.
|
||||
|
||||
Nota: Si no esteu segurs de la tecla que heu premut, premeu <ESC> per tornar
|
||||
al mode Normal. Llavors torneu a teclejar l'ordre que volíeu.
|
||||
|
||||
Nota: Les tecles de moviment del cursor (fletxes) també funcionen. Però usant
|
||||
hjkl anireu més ràpid, quan us hi hàgiu acostumant.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 1.2: ENTRAR I SORTIR DEL VIM
|
||||
|
||||
|
||||
!! NOTA: Abans de seguir els passos següents llegiu *tota* la lliçó!!
|
||||
|
||||
1. Premeu <ESC> (per estar segurs que esteu en el mode Normal).
|
||||
|
||||
2. Teclegeu: :q! <ENTRAR>.
|
||||
|
||||
---> Amb això sortireu de l'editor SENSE desar els canvis que hàgiu pogut
|
||||
fer. Si voleu desar els canvis teclegeu:
|
||||
:wq <ENTRAR>
|
||||
|
||||
3. Quan vegeu l'introductor de la shell escriviu l'ordre amb la qual heu
|
||||
arribat a aquest tutor. Podria ser: vimtutor <ENTRAR>
|
||||
O bé: vim tutor <ENTRAR>
|
||||
|
||||
---> 'vim' és l'editor vim, i 'tutor' és el fitxer que voleu editar.
|
||||
|
||||
4. Si heu memoritzat les ordres, feu els passos anteriors, de l'1 al 3,
|
||||
per sortir i tornar a entrar a l'editor. Llavors moveu el cursor avall
|
||||
fins la lliçó 1.3.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 1.3: EDITAR TEXT - ESBORRAR
|
||||
|
||||
|
||||
** En mode Normal premeu x per esborrar el caràcter de sota el cursor. **
|
||||
|
||||
1. Moveu el cursor fins la línia que hi ha més avall marcada amb --->.
|
||||
|
||||
2. Poseu el cursor a sobre el caràcter que cal esborrar, per corregir els
|
||||
errors.
|
||||
|
||||
3. Premeu la tecla x per esborrar el caràcter.
|
||||
|
||||
4. Repetiu els passos 2 i 3 fins que la frase sigui correcta.
|
||||
|
||||
---> Unna vaaca vva salttar sobbree la llluna.
|
||||
|
||||
5. Ara que la línia és correcta, aneu a la lliçó 1.4.
|
||||
|
||||
NOTA: Mentre aneu fent no tracteu de memoritzar, practiqueu i prou.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 1.4: EDITAR TEXT - INSERIR
|
||||
|
||||
|
||||
** En mode Normal premeu i per inserir text. **
|
||||
|
||||
1. Moveu el cursor avall fins la primera línia marcada amb --->.
|
||||
|
||||
2. Per fer la primera línia igual que la segona poseu el cursor sobre el
|
||||
primer caràcter POSTERIOR al text que s'ha d'inserir.
|
||||
|
||||
3. Premeu la tecla i i escriviu el text que falta.
|
||||
|
||||
4. Quan hàgiu acabat premeu <ESC> per tornar al mode Normal. Repetiu
|
||||
els passos 2, 3 i 4 per corregir la frase.
|
||||
|
||||
---> Falten carctrs en aquesta .
|
||||
---> Falten alguns caràcters en aquesta línia.
|
||||
|
||||
5. Quan us trobeu còmodes inserint text aneu al sumari de baix.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 1 SUMARI
|
||||
|
||||
|
||||
1. El cursor es mou amb les fletxes o bé amb les tecles hjkl.
|
||||
h (esquerra) j (avall) k (amunt) l (dreta)
|
||||
|
||||
2. Per entrar al Vim (des de la shell) escriviu: vim FITXER <ENTRAR>
|
||||
|
||||
3. Per sortir teclegeu: <ESC> :q! <ENTRAR> per descartar els canvis.
|
||||
O BÉ teclegeu: <ESC> :wq <ENTRAR> per desar els canvis.
|
||||
|
||||
4. Per esborrar el caràcter de sota el cursor en el mode Normal premeu: x
|
||||
|
||||
5. Per inserir text on hi ha el cursor, en mode Normal, premeu:
|
||||
i escriviu el text <ESC>
|
||||
|
||||
NOTA: La tecla <ESC> us portarà al mode Normal o cancel·larà una ordre
|
||||
que estigui a mitges.
|
||||
|
||||
Ara continueu amb la lliçó 2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 2.1: ORDRES PER ESBORRAR
|
||||
|
||||
|
||||
** Teclegeu dw per esborrar fins al final d'una paraula. **
|
||||
|
||||
1. Premeu <ESC> per estar segurs que esteu en mode normal.
|
||||
|
||||
2. Moveu el cursor avall fins la línia marcada amb --->.
|
||||
|
||||
3. Moveu el cursor fins el principi de la paraula que s'ha d'esborrar.
|
||||
|
||||
4. Teclegeu dw per fer desaparèixer la paraula.
|
||||
|
||||
NOTA: Les lletres dw apareixeran a la línia de baix de la pantalla mentre
|
||||
les aneu escrivint. Si us equivoqueu premeu <ESC> i torneu a començar.
|
||||
|
||||
---> Hi han algunes paraules divertit que no pertanyen paper a aquesta frase.
|
||||
|
||||
5. Repetiu el passos 3 i 4 fins que la frase sigui correcta i continueu a
|
||||
la lliçó 2.2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 2.2: MÉS ORDRES PER ESBORRAR
|
||||
|
||||
|
||||
** Escriviu d$ per esborrar fins al final de la línia. **
|
||||
|
||||
1. Premeu <ESC> per estar segurs que esteu en el mode Normal.
|
||||
|
||||
2. Moveu el cursor avall fins a la línia marcada amb --->.
|
||||
|
||||
3. Moveu el cursor fins el final de la línia correcta
|
||||
(DESPRÉS del primer . ).
|
||||
|
||||
4. Teclegeu d$ per esborrar fins al final de la línia.
|
||||
|
||||
---> Algú ha escrit el final d'aquesta línia dos cops. línia dos cops.
|
||||
|
||||
5. Aneu a la lliçó 2.3 per entendre què està passant.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 2.3: SOBRE ORDRES I OBJECTES
|
||||
|
||||
|
||||
El format de l'ordre d'esborrar d és el següent:
|
||||
|
||||
[nombre] d objecte O BÉ d [nombre] objecte
|
||||
On:
|
||||
nombre - és el nombre de cops que s'ha d'executar (opcional, omissió=1).
|
||||
d - és l'ordre per esborrar.
|
||||
objecte - és la cosa amb la qual operar (llista a baix).
|
||||
|
||||
Una petita llista d'objectes:
|
||||
w - des del cursor fins al final de la paraula, incloent-hi l'espai.
|
||||
e - des del cursor fins al final de la paraula, SENSE incloure l'espai.
|
||||
$ - des del cursor fins al final de la línia.
|
||||
|
||||
NOTA: Per als aventurers: si teclegeu només l'objecte, en el mode Normal,
|
||||
sense cap ordre, el cursor es mourà tal com està especificat a la
|
||||
llista d'objectes.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 2.4: UNA EXCEPCIÓ A 'ORDRE-OBJECTE'
|
||||
|
||||
|
||||
** Teclegeu dd esborrar tota la línia. **
|
||||
|
||||
Com que molt sovint s'han d'eliminar línies senceres els dissenyadors del
|
||||
Vi van creure que seria més fàcil teclejar dd per esborrar tota la línia.
|
||||
|
||||
1. Moveu el cursor a la segona línia de la frase de baix.
|
||||
2. Teclegeu dd per esborrar la línia.
|
||||
3. Ara aneu a la quarta línia.
|
||||
4. Teclegeu 2dd per esborrar dues línies (recordeu nombre-ordre-objecte).
|
||||
|
||||
1) Les roses són vermelles,
|
||||
2) El fang és divertit,
|
||||
3) Les violetes són blaves,
|
||||
4) Tinc un cotxe,
|
||||
5) Els rellotges diuen l'hora,
|
||||
6) El sucre és dolç,
|
||||
7) Igual que tu.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 2.5: L'ORDRE DESFER
|
||||
|
||||
|
||||
** Premeu u per desfer els últims canvis, U per arreglar tota la línia. **
|
||||
|
||||
1. Moveu el cursor sobre el primer error de línia de baix marcada amb --->
|
||||
2. Premeu x per esborrar el caràcter no desitjat.
|
||||
3. Ara premeu u per desfer l'última ordre executada.
|
||||
4. Aquest cop corregiu tots els errors de la línia amb l'ordre x.
|
||||
5. Ara premeu U per restablir la línia al seu estat original.
|
||||
6. Ara premeu u uns quants cops per desfer U i les ordres anteriors.
|
||||
7. Ara premeu CONTROL-R (les dues tecles al mateix temps) uns quants cops
|
||||
per refer les ordres.
|
||||
|
||||
---> Correegiu els errors d'aqquesta línia i dessfeu-los aamb desfer.
|
||||
|
||||
8. Aquestes ordres són molt útils. Ara aneu al sumari de la lliçó 2.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 2 SUMARI
|
||||
|
||||
|
||||
1. Per esborrar del cursor al final de la paraula teclegeu: dw
|
||||
|
||||
2. Per esborrar del cursor al final de la línia teclegeu: d$
|
||||
|
||||
3. Per esborrar una línia sencera teclegeu: dd
|
||||
|
||||
4. El format de qualsevol ordre del mode Normal és:
|
||||
|
||||
[nombre] ordre objecte O BÉ ordre [nombre] objecte
|
||||
on:
|
||||
nombre - és quants cops repetir l'ordre
|
||||
ordre - és què fer, com ara d per esborrar
|
||||
objecte - és amb què s'ha d'actuar, com ara w (paraula),
|
||||
$ (fins a final de línia), etc.
|
||||
|
||||
5. Per desfer les accions anteriors premeu: u
|
||||
Per desfer tots el canvis en una línia premeu: U
|
||||
Per desfer l'ordre desfer premeu: CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 3.1: L'ORDRE 'POSAR'
|
||||
|
||||
|
||||
** Premeu p per posar l'última cosa que heu esborrat després del cursor. **
|
||||
|
||||
|
||||
1. Moveu el cursor a la primera línia de llista de baix.
|
||||
|
||||
2. Teclegeu dd per esborrar la línia i desar-la a la memòria.
|
||||
|
||||
3. Moveu el cursor a la línia ANTERIOR on hauria d'anar.
|
||||
|
||||
4. En mode Normal, premeu p per inserir la línia.
|
||||
|
||||
5. Repetiu els passos 2, 3 i 4 per ordenar les línies correctament.
|
||||
|
||||
d) Pots aprendre tu?
|
||||
b) Les violetes són blaves,
|
||||
c) L'intel·ligència s'aprèn,
|
||||
a) Les roses són vermelles,
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 3.2: L'ORDRE SUBSTITUIR
|
||||
|
||||
|
||||
** Premeu r i un caràcter per substituir el caràcter de sota el cursor. **
|
||||
|
||||
1. Moveu el cursor a la primera línia de sota marcada amb --->.
|
||||
|
||||
2. Moveu el cursor a sobre del primer caràcter equivocat.
|
||||
|
||||
3. Premeu r i tot seguit el caràcter correcte per corregir l'error.
|
||||
|
||||
4. Repetiu els passos 2 i 3 fins que la línia sigui correcta.
|
||||
|
||||
---> Quen van escroure aquerta línia, algh va apretar tikles equivocades!
|
||||
---> Quan van escriure aquesta línia, algú va apretar tecles equivocades!
|
||||
|
||||
5. Ara continueu a la lliçó 3.2.
|
||||
|
||||
NOTA: Recordeu que heu de practicar, no memoritzar.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 3.3: L'ORDRE CANVIAR
|
||||
|
||||
|
||||
** Per canviar una part o tota la paraula, escriviu cw . **
|
||||
|
||||
1. Moveu el cursor a la primera línia de sota marcada amb --->.
|
||||
|
||||
2. Poseu el cursor sobre la u de 'lughc'.
|
||||
|
||||
3. Teclegeu cw i corregiu la paraula (en aquest cas escriviu 'ínia'.)
|
||||
|
||||
4. Premeu <ESC> i aneu al següent error.
|
||||
|
||||
5. Repetiu els passos 3 i 4 fins que les dues frases siguin iguals.
|
||||
|
||||
---> Aquesta lughc té algunes paradskl que s'han de cdddf.
|
||||
---> Aquesta línia té algunes paraules que s'han de canviar.
|
||||
|
||||
Noteu que cw no només canvia la paraula, també us posa en mode d'inserció.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 3.4: MÉS CANVIS AMB c
|
||||
|
||||
|
||||
** L'ordre canviar s'usa amb els mateixos objectes que l'ordre esborrar. **
|
||||
|
||||
1. L'ordre canviar funciona igual que la d'esborrar. El format és:
|
||||
|
||||
[nombre] c objecte O BÉ c [nombre] objecte
|
||||
|
||||
2. Els objectes són els mateixos, com w (paraula), $ (final de línia), etc.
|
||||
|
||||
3. Moveu el cursor fins la primera línia marcada amb --->.
|
||||
|
||||
4. Avanceu fins al primer error.
|
||||
|
||||
5. Premeu c$ per fer la línia igual que la segona i premeu <ESC>.
|
||||
|
||||
---> El final d'aquesta línia necessita canvis per ser igual que la segona.
|
||||
---> El final d'aquesta línia s'ha de corregir amb l'ordre c$.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 3 SUMARI
|
||||
|
||||
|
||||
1. Per tornar a posar el text que s'ha esborrat, premeu p . Això posa el
|
||||
text esborrat DESPRÉS del cursor (si heu esborrat una línia anirà a
|
||||
parar a la línia SEGÜENT d'on hi ha el cursor).
|
||||
|
||||
2. Per substituir el caràcter de sota el cursor, premeu r i tot seguit
|
||||
el caràcter que ha de reemplaçar l'original.
|
||||
|
||||
3. L'ordre canviar permet canviar l'objecte especificat des del cursor
|
||||
fins el final de l'objecte. Per exemple, cw canvia el que hi ha des
|
||||
del cursor fins al final de la paraula, i c$ fins al final de línia.
|
||||
|
||||
4. El format de l'ordre canviar és:
|
||||
|
||||
[nombre] c objecte O BÉ c [nombre] objecte
|
||||
|
||||
Ara aneu a la pròxima lliçó.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 4.1: SITUACIÓ I ESTAT DEL FITXER
|
||||
|
||||
|
||||
** Premeu CTRL-g per veure la situació dins del fitxer i el seu estat.
|
||||
Premeu SHIFT-G per anar a una línia determinada. **
|
||||
|
||||
Nota: No proveu res fins que hàgiu llegit TOTA la lliçó!!
|
||||
|
||||
1. Mantingueu premuda la tecla Control i premeu g . A la part de baix de
|
||||
la pàgina apareixerà un línia amb el nom del fitxer i la línia en la
|
||||
qual us trobeu. Recordeu el número de la línia pel Pas 3.
|
||||
|
||||
2. Premeu Shift-G per anar al final de tot del fitxer.
|
||||
|
||||
3. Teclegeu el número de la línia on éreu i després premeu Shift-G. Això
|
||||
us tornarà a la línia on éreu quan heu premut per primer cop Ctrl-g.
|
||||
(Quan teclegeu el número NO es veurà a la pantalla.)
|
||||
|
||||
4. Ara executeu els passos de l'1 al 3.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 4.2: L'ORDRE CERCAR
|
||||
|
||||
|
||||
** Premeu / seguit de la frase que vulgueu cercar. **
|
||||
|
||||
1. En el mode Normal premeu el caràcter / . Noteu que el cursor apareix
|
||||
a la part de baix de la pantalla igual que amb l'ordre : .
|
||||
|
||||
2. Ara escriviu 'errroor' <ENTRAR>. Aquesta és la paraula que voleu
|
||||
cercar.
|
||||
|
||||
3. Per tornar a cercar la mateixa frase, premeu n .
|
||||
Per cercar la mateixa frase en direcció contraria, premeu Shift-N .
|
||||
|
||||
4. Si voleu cercar una frase en direcció ascendent, useu l'ordre ? en
|
||||
lloc de /.
|
||||
|
||||
---> "errroor" no és com s'escriu error; errroor és un error.
|
||||
|
||||
Note: Quan la cerca arribi al final del fitxer continuarà a l'inici.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 4.3: CERCA DE PARÈNTESIS
|
||||
|
||||
|
||||
** Premeu % per cercar el ),], o } corresponent. **
|
||||
|
||||
1. Poseu el cursor en qualsevol (, [, o { de la línia marcada amb --->.
|
||||
|
||||
2. Ara premeu el caràcter % .
|
||||
|
||||
3. El cursor hauria d'anar a la clau o parèntesis corresponent.
|
||||
|
||||
4. Premeu % per tornar el cursor al primer parèntesi.
|
||||
|
||||
---> Això ( és una línia amb caràcters (, [ ] i { } de prova. ))
|
||||
|
||||
Nota: Això és molt útil per trobar errors en programes informàtics!
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 4.4: UNA MANERA DE CANVIAR ERRORS
|
||||
|
||||
|
||||
** Escriviu :s/vell/nou/g per substituir 'vell' per 'nou'. **
|
||||
|
||||
1. Moveu el cursor a la línia de sota marcada amb --->.
|
||||
|
||||
2. Escriviu :s/laa/la <ENTRAR> . Aquesta ordre només canvia la primera
|
||||
coincidència que es trobi a la línia.
|
||||
|
||||
3. Ara escriviu :s/laa/la/g per fer una substitució global. Això
|
||||
canviarà totes les coincidències que es trobin a la línia.
|
||||
|
||||
---> laa millor època per veure laa flor és laa primavera.
|
||||
|
||||
4. Per canviar totes les coincidències d'una cadena entre dues línies,
|
||||
escriviu :#,#s/vell/nou/g on #,# són els nombres de les línies.
|
||||
Escriviu :%s/vell/nou/g per substituir la cadena a tot el fitxer.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 4 SUMARI
|
||||
|
||||
|
||||
1. Ctrl-g mostra la posició dins del fitxer i l'estat del mateix.
|
||||
Shift-G us porta al final del fitxer. Un número seguit de Shift-G
|
||||
us porta a la línia corresponent.
|
||||
|
||||
2. L'ordre / seguida d'una frase cerca la frase ENDAVANT.
|
||||
L'ordre ? seguida d'una frase cerca la frase ENDARRERE.
|
||||
Després d'una cerca premeu n per trobar la pròxima coincidència en
|
||||
la mateixa direcció, o Shift-N per cercar en la direcció contrària.
|
||||
|
||||
3. L'ordre % quan el cursor és a sobre un (,),[,],{, o } troba la
|
||||
parella corresponent.
|
||||
|
||||
4. Per substituir el primer 'vell' per 'nou' en una línia :s/vell/nou
|
||||
Per substituir tots els 'vell' per 'nou' en una línia :s/vell/nou/g
|
||||
Per substituir frases entre les línies # i # :#,#s/vell/nou/g
|
||||
Per substituir totes les coincidències en el fitxer :%s/vell/nou/g
|
||||
Per demanar confirmació cada cop afegiu 'c' :%s/vell/nou/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 5.1: COM EXECUTAR UNA ORDRE EXTERNA
|
||||
|
||||
|
||||
** Teclegeu :! seguit d'una ordre externa per executar-la. **
|
||||
|
||||
1. Premeu el familiar : per col·locar el cursor a la part de baix de
|
||||
la pantalla. Això us permet entrar una ordre.
|
||||
|
||||
2. Ara teclegeu el caràcter ! (signe d'exclamació). Això us permet
|
||||
executar qualsevol ordre de la shell.
|
||||
|
||||
3. Com a exemple escriviu ls i tot seguit premeu <ENTRAR>. Això us
|
||||
mostrarà el contingut del directori, tal com si estiguéssiu a la
|
||||
línia d'ordres. Feu servir :!dir si ls no funciona.
|
||||
|
||||
Nota: D'aquesta manera es pot executar qualsevol ordre externa.
|
||||
|
||||
Nota: Totes les ordres : s'han d'acabar amb la tecla <ENTRAR>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 5.2: MÉS SOBRE L'ESCRIPTURA DE FITXERS
|
||||
|
||||
|
||||
** Per desar els canvis fets, escriviu :w FITXER. ***
|
||||
|
||||
1. Escriviu :!dir o bé :!ls per obtenir un llistat del directori.
|
||||
Ja sabeu que heu de prémer <ENTRAR> després d'això.
|
||||
|
||||
2. Trieu un nom de fitxer que no existeixi, com ara PROVA.
|
||||
|
||||
3. Ara feu: :w PROVA (on PROVA és el nom que heu triat.)
|
||||
|
||||
4. Això desa tot el fitxer amb el nom de PROVA. Per comprovar-ho
|
||||
escriviu :!dir per veure el contingut del directori.
|
||||
|
||||
Note: Si sortiu del Vim i entreu una altra vegada amb el fitxer PROVA, el
|
||||
fitxer serà una còpia exacta del tutor que heu desat.
|
||||
|
||||
5. Ara esborreu el fitxer teclejant (MS-DOS): :!del PROVA
|
||||
o bé (Unix): :!rm PROVA
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 5.3: UNA ORDRE SELECTIVA PER DESAR
|
||||
|
||||
|
||||
** Per desar una part del fitxer, escriviu :#,# w FITXER **
|
||||
|
||||
1. Un altre cop, feu :!dir o :!ls per obtenir un llistat del directori
|
||||
i trieu un nom de fitxer adequat com ara PROVA.
|
||||
|
||||
2. Moveu el cursor a dalt de tot de la pàgina i premeu Ctrl-g per
|
||||
saber el número de la línia. RECORDEU AQUEST NÚMERO!
|
||||
|
||||
3. Ara aneu a baix de tot de la pàgina i torneu a prémer Ctrl-g.
|
||||
RECORDEU AQUEST NÚMERO TAMBÉ!
|
||||
|
||||
4. Per desar NOMÉS una secció en un fitxer, escriviu :#,# w PROVA on
|
||||
#,# són els dos números que heu recordat (dalt,baix) i PROVA el nom
|
||||
del fitxer.
|
||||
|
||||
5. Mireu que el fitxer nou hi sigui amb :!dir però no l'esborreu.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 5.4: OBTENIR I AJUNTAR FITXERS
|
||||
|
||||
|
||||
** Per inserir el contingut d'un fitxer, feu :r FITXER **
|
||||
|
||||
1. Assegureu-vos, amb l'ordre :!dir , que el fitxer PROVA encara hi és.
|
||||
|
||||
2. Poseu el cursor a dalt de tot d'aquesta pàgina.
|
||||
|
||||
NOTA: Després d'executar el Pas 3 veureu la lliçó 5.3. Aleshores moveu-vos
|
||||
cap avall fins a aquesta lliçó un altre cop.
|
||||
|
||||
3. Ara obtingueu el fitxer PROVA amb l'ordre :r PROVA on PROVA és el
|
||||
nom del fitxer.
|
||||
|
||||
NOTA: El fitxer que obtingueu es posa en el lloc on hi hagi el cursor.
|
||||
|
||||
4. Per comprovar que s'ha obtingut el fitxer tireu enrere i mireu com
|
||||
ara hi han dues còpies de la lliçó 5.3: l'original i la del fitxer.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 5 SUMARI
|
||||
|
||||
|
||||
1. :!ordre executa una ordre externa.
|
||||
|
||||
Alguns exemples útils són:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - mostra un llistat del directori
|
||||
:!del FITXER :!rm FITXER - esborra el fitxer FITXER
|
||||
|
||||
2. :w FITXER escriu el fitxer editat al disc dur, amb el nom FITXER.
|
||||
|
||||
3. :#,#w FITXER desa les línies de # a # en el fitxer FITXER.
|
||||
|
||||
4. :r FITXER llegeix el fitxer FITXER del disc dur i l'insereix en el
|
||||
fitxer editat a la posició on hi ha el cursor.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 6.1: L'ORDRE OBRIR
|
||||
|
||||
|
||||
** Premeu o per obrir una línia sota el cursor i entrar en mode inserció. **
|
||||
|
||||
1. Moveu el cursor a la línia de sota marcada amb --->.
|
||||
|
||||
2. Premeu o (minúscula) per obrir una línia SOTA el cursor i situar-vos
|
||||
en mode d'inserció.
|
||||
|
||||
3. Ara copieu la línia marcada amb ---> i premeu <ESC> per tornar al mode
|
||||
normal.
|
||||
|
||||
---> Després de prémer o el cursor es situa a la línia nova en mode inserció.
|
||||
|
||||
4. Per obrir una línia SOBRE el cursor, premeu la O majúscula, en lloc
|
||||
de la minúscula. Proveu-ho amb la línia de sota.
|
||||
Obriu una línia sobre aquesta amb Shift-O amb el cursor en aquesta línia.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 6.2: L'ORDRE AFEGIR
|
||||
|
||||
|
||||
** Premeu a per afegir text DESPRÉS del cursor. **
|
||||
|
||||
1. Moveu el cursor al final de la primera línia de sota marcada
|
||||
amb ---> prement $ en el mode Normal.
|
||||
|
||||
2. Premeu la lletra a (minúscula) per afegir text DESPRÉS del caràcter
|
||||
sota el cursor. (La A majúscula afegeix text al final de línia.)
|
||||
|
||||
Nota: Així s'evita haver de prémer i , l'últim caràcter, el text a inserir,
|
||||
la tecla <ESC>, cursor a la dreta, i finalment x , només per afegir
|
||||
text a final de línia.
|
||||
|
||||
3. Ara completeu la primera línia. Tingueu en compte que aquesta ordre
|
||||
és exactament igual que la d'inserir, excepte pel que fa al lloc on
|
||||
s'insereix el text.
|
||||
|
||||
---> Aquesta línia us permetrà practicar
|
||||
---> Aquesta línia us permetrà practicar afegir text a final de línia.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 6.3: UNA ALTRA MANERA DE SUBSTITUIR
|
||||
|
||||
|
||||
** Teclegeu una R majúscula per substituir més d'un caràcter. **
|
||||
|
||||
1. Moveu el cursor a la línia de sota marcada amb --->.
|
||||
|
||||
2. Poseu el cursor al principi de la primera paraula que es diferent
|
||||
respecte a la segona línia marcada amb ---> (la paraula "l'última").
|
||||
|
||||
3. Ara premeu R i substituïu el que queda de text a la primera línia
|
||||
escrivint sobre el text vell, per fer-la igual que la segona.
|
||||
|
||||
---> Per fer aquesta línia igual que l'última useu les tecles.
|
||||
---> Per fer aquesta línia igual que la segona, premeu R i el text nou.
|
||||
|
||||
4. Tingueu en compte que en prémer <ESC> per sortir, el text que no
|
||||
s'hagi alterat es manté.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lliçó 6.4: ESTABLIR OPCIONS
|
||||
|
||||
** Feu que les ordres cercar o substituir ignorin les diferències
|
||||
entre majúscules i minúscules **
|
||||
|
||||
1. Cerqueu la paraula 'ignorar' amb: /ignorar
|
||||
Repetiu-ho uns quants cops amb la tecla n.
|
||||
|
||||
2. Establiu l'opció 'ic' (Ignorar Capitals) escrivint:
|
||||
:set ic
|
||||
|
||||
3. Ara cerqueu 'ignorar' un altre cop amb la tecla n.
|
||||
Repetiu-ho uns quants cops més.
|
||||
|
||||
4. Establiu les opcions 'hlsearch' i 'incsearch':
|
||||
:set hls is
|
||||
|
||||
5. Ara torneu a executar una ordre de cerca, i mireu què passa:
|
||||
/ignorar
|
||||
|
||||
6. Per treure el ressalt dels resultats, feu:
|
||||
:nohlsearch
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 6 SUMARI
|
||||
|
||||
|
||||
1. L'ordre o obre una línia SOTA la del cursor i mou el cursor a la nova
|
||||
línia, en mode Inserció.
|
||||
La O majúscula obre la línia a SOBRE la que hi ha el cursor.
|
||||
|
||||
2. Premeu una a per afegir text DESPRÉS del caràcter sota el cursor.
|
||||
La A majúscula afegeix automàticament el text a final de línia.
|
||||
|
||||
3. L'ordre R majúscula us posa en mode substitució fins que premeu <ESC>.
|
||||
|
||||
4. Escriviu ":set xxx" per establir l'opció "xxx"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 7: ORDRES D'AJUDA
|
||||
|
||||
|
||||
** Utilitzeu el sistema intern d'ajuda **
|
||||
|
||||
El Vim té un extens sistema d'ajuda. Per llegir una introducció proveu una
|
||||
d'aquestes tres coses:
|
||||
- premeu la tecla <AJUDA> (si en teniu alguna)
|
||||
- premeu la tecla <F1> (si en teniu alguna)
|
||||
- escriviu :help <ENTRAR>
|
||||
|
||||
Teclegeu :q <ENTRAR> per tancar la finestra d'ajuda.
|
||||
|
||||
Podeu trobar ajuda sobre pràcticament qualsevol tema donant un argument
|
||||
a l'ordre ":help". Proveu això (no oblideu prémer <ENTRAR>):
|
||||
|
||||
:help w
|
||||
:help c_<T
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LLIÇÓ 8: CREAR UN SCRIPT D'INICI
|
||||
|
||||
** Activar funcions automàticament **
|
||||
|
||||
El Vim té moltes més funcions que el Vi, però moltes estan desactivades per
|
||||
omissió. Per començar a utilitzar més funcions heu de crear un fitxer "vimrc".
|
||||
|
||||
1. Comenceu a editar el fitxer "vimrc", depenent del sistema
|
||||
:edit ~/.vimrc per Unix
|
||||
:edit $VIM/_vimrc per MS-Windows
|
||||
|
||||
2. Ara llegiu el fitxer "vimrc" d'exemple:
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Deseu el fitxer amb:
|
||||
|
||||
:write
|
||||
|
||||
El pròxim cop que executeu el Vim usarà ressalt de sintaxi.
|
||||
Podeu afegir els ajustos que vulgueu en aquest fitxer "vimrc".
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Aquí conclou el Tutor del Vim. Ha sigut un intent de fer-vos una breu
|
||||
introducció a l'editor Vim, suficient com per què el pugueu començar a fer
|
||||
servir. Està lluny de ser complet perquè el Vim té moltes més ordres.
|
||||
Llegiu el manual de l'usuari: ":help user-manual".
|
||||
|
||||
Per un estudi més profund us recomanem el següent llibre:
|
||||
Vim - Vi Improved - de Steve Oualline
|
||||
Editorial: New Riders
|
||||
És el primer llibre dedicat completament al Vim, especialment útil per a
|
||||
usuaris novells. Té molts exemples i dibuixos.
|
||||
Vegeu http://iccf-holland.org/click5.html
|
||||
|
||||
Aquest altre és més vell i tracta més sobre el Vi que sobre el Vim:
|
||||
Learning the Vi Editor - de Linda Lamb
|
||||
Editorial: O'Reilly & Associates Inc.
|
||||
És un bon llibre per saber qualsevol cosa que desitgeu sobre el Vi.
|
||||
La sisena edició també inclou informació sobre el Vim.
|
||||
|
||||
Aquest tutorial ha estat escrit per Michael C. Pierce i Robert K. Ware,
|
||||
Colorado School of Mines amb la col·laboració de Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Modificat pel Vim per Bram Moolenaar.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
@ -1,812 +0,0 @@
|
||||
===============================================================================
|
||||
= V <EFBFBD> t e j t e v t u t o r i a l u V I M - Verze 1.5 =
|
||||
===============================================================================
|
||||
|
||||
Vim je velmi v<EFBFBD>konn<EFBFBD> editor, kter<EFBFBD> m<EFBFBD> p<EFBFBD><EFBFBD>li<EFBFBD> mnoho p<EFBFBD><EFBFBD>kaz<EFBFBD> na to, aby
|
||||
mohly b<EFBFBD>t v<EFBFBD>echny vysv<EFBFBD>tlen<EFBFBD> ve v<EFBFBD>uce jako tato. Tato v<EFBFBD>uka obsahuje
|
||||
dostate<EFBFBD>n<EFBFBD> mno<EFBFBD>stv<EFBFBD> p<EFBFBD><EFBFBD>kaz<EFBFBD> na to, aby bylo mo<EFBFBD>n<EFBFBD> pou<EFBFBD><EFBFBD>vat Vim jako
|
||||
v<EFBFBD>ce<EFBFBD><EFBFBD>elov<EFBFBD> editor.
|
||||
|
||||
P<EFBFBD>ibli<EFBFBD>n<EFBFBD> <EFBFBD>as pot<EFBFBD>ebn<EFBFBD> ke zvl<EFBFBD>dnut<EFBFBD> t<EFBFBD>to v<EFBFBD>uky je 25-30 minut, z<EFBFBD>le<EFBFBD><EFBFBD>
|
||||
na tom, kolik <EFBFBD>asu str<EFBFBD>v<EFBFBD>te p<EFBFBD>ezku<EFBFBD>ov<EFBFBD>n<EFBFBD>m.
|
||||
|
||||
P<EFBFBD><EFBFBD>kazy v lekc<EFBFBD>ch upravuj<EFBFBD> text. Vytvo<EFBFBD> kopii tohoto souboru pro
|
||||
procvi<EFBFBD>ov<EFBFBD>n<EFBFBD> (p<EFBFBD>i startu "vimtutor" je ji<EFBFBD> toto kopie).
|
||||
|
||||
Je d<EFBFBD>le<EFBFBD>it<EFBFBD> pamatovat, <EFBFBD>e tato v<EFBFBD>uka je vytvo<EFBFBD>ena pro v<EFBFBD>uku pou<EFBFBD><EFBFBD>v<EFBFBD>n<EFBFBD>m.
|
||||
To znamen<EFBFBD>, <EFBFBD>e je pot<EFBFBD>eba si p<EFBFBD><EFBFBD>kazy vyzkou<EFBFBD>et pro jejich spr<EFBFBD>vn<EFBFBD>
|
||||
nau<EFBFBD>en<EFBFBD>. Pokud si jen <EFBFBD>te<EFBFBD> text, p<EFBFBD><EFBFBD>kazy zapomene<EFBFBD>!
|
||||
|
||||
Nyn<EFBFBD> se p<EFBFBD>esv<EFBFBD>d<EFBFBD>te, <EFBFBD>e Shift-Lock NEN<EFBFBD> stla<EFBFBD>en<EFBFBD> a n<EFBFBD>kolikr<EFBFBD>t stiskn<EFBFBD>te
|
||||
kl<EFBFBD>vesu j aby se kurzor posunul natolik, <EFBFBD>e lekce 1.1 zapln<EFBFBD> celou
|
||||
obrazovku.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.1: POHYB KURZORU
|
||||
|
||||
|
||||
** Pro pohyb kurzoru pou<EFBFBD><EFBFBD>vej kl<EFBFBD>vesy h,j,k,l jak je zn<EFBFBD>zorn<EFBFBD>no n<EFBFBD><EFBFBD>e. **
|
||||
^
|
||||
k Funkce: Kl<EFBFBD>vesa h je vlevo a vykon<EFBFBD> pohyb vlevo.
|
||||
< h l > Kl<EFBFBD>vesa l je vpravo a vykon<EFBFBD> pohyb vpravo.
|
||||
j Kl<EFBFBD>vesa j vypad<EFBFBD> na <EFBFBD>ipku dolu.
|
||||
v
|
||||
1. Pohybuj kurzorem po obrazovce dokud si na to nezvykne<EFBFBD>.
|
||||
|
||||
2. Dr<EFBFBD> kl<EFBFBD>vesu pro pohyb dolu (j), dokud se jej<EFBFBD> funkce nezopakuje.
|
||||
---> Te<EFBFBD> v<EFBFBD><EFBFBD> jak se p<EFBFBD>esunout na n<EFBFBD>sleduj<EFBFBD>c<EFBFBD> lekci.
|
||||
|
||||
3. Pou<EFBFBD>it<EFBFBD>m kl<EFBFBD>vesy dolu p<EFBFBD>ejdi na lekci 1.2.
|
||||
|
||||
Pozn<EFBFBD>mka: Pokud si n<EFBFBD>kdy nejsi jist n<EFBFBD><EFBFBD><EFBFBD>m, co jsi napsal, stla<EFBFBD> <ESC> pro
|
||||
p<EFBFBD>echod do Norm<EFBFBD>ln<EFBFBD>ho m<EFBFBD>du. Pot<EFBFBD> p<EFBFBD>epi<EFBFBD> po<EFBFBD>adovan<EFBFBD> p<EFBFBD><EFBFBD>kaz.
|
||||
|
||||
Pozn<EFBFBD>mka: Kurzorov<EFBFBD> kl<EFBFBD>vesy tak<EFBFBD> funguj<EFBFBD>, av<EFBFBD>ak pou<EFBFBD><EFBFBD>v<EFBFBD>n<EFBFBD> hjkl je rychlej<EFBFBD><EFBFBD>
|
||||
jakmile si na n<EFBFBD>j zvykne<EFBFBD>.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.2: SPU<EFBFBD>T<EFBFBD>N<EFBFBD> A UKON<EFBFBD>EN<EFBFBD> VIM
|
||||
|
||||
|
||||
!! POZN<EFBFBD>MKA: P<EFBFBD>ed vykon<EFBFBD>n<EFBFBD>m t<EFBFBD>chto krok<EFBFBD> si p<EFBFBD>e<EFBFBD>ti celou lekci!!
|
||||
|
||||
1. Stla<EFBFBD> <ESC> (pro uji<EFBFBD>t<EFBFBD>n<EFBFBD>, <EFBFBD>e se nach<EFBFBD>z<EFBFBD><EFBFBD> v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du).
|
||||
|
||||
2. Napi<EFBFBD>: :q! <ENTER>.
|
||||
|
||||
---> T<EFBFBD>mto ukon<EFBFBD><EFBFBD><EFBFBD> editor BEZ ulo<EFBFBD>en<EFBFBD> zm<EFBFBD>n, kter<EFBFBD> si vykonal.
|
||||
Pokud chce<EFBFBD> ulo<EFBFBD>it zm<EFBFBD>ny a ukon<EFBFBD>it editor napi<EFBFBD>:
|
||||
:wq <ENTER>
|
||||
|
||||
3. A<EFBFBD> se dostane<EFBFBD> na p<EFBFBD><EFBFBD>kazov<EFBFBD> <EFBFBD><EFBFBD>dek, napi<EFBFBD> p<EFBFBD><EFBFBD>kaz, kter<EFBFBD>m se dostane<EFBFBD> zp<EFBFBD>t
|
||||
do t<EFBFBD>to v<EFBFBD>uky. To m<EFBFBD><EFBFBD>e b<EFBFBD>t: vimtutor <ENTER>
|
||||
B<EFBFBD><EFBFBD>n<EFBFBD> se pou<EFBFBD><EFBFBD>v<EFBFBD>: vim tutor <ENTER>
|
||||
|
||||
---> 'vim' znamen<EFBFBD> spu<EFBFBD>t<EFBFBD>n<EFBFBD> editoru, 'tutor' je soubor k editaci.
|
||||
|
||||
4. Pokud si tyto kroky spolehliv<EFBFBD> pamatuje<EFBFBD>, vykonej kroky 1 a<EFBFBD> 3, <EFBFBD><EFBFBD>m<EFBFBD>
|
||||
ukon<EFBFBD><EFBFBD><EFBFBD> a znovu spust<EFBFBD><EFBFBD> editor. Potom p<EFBFBD>esu<EFBFBD> kurzor dolu na lekci 1.3.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.3: <EFBFBD>PRAVA TEXTU - MAZ<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Stisknut<EFBFBD>m kl<EFBFBD>vesy x v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du sma<EFBFBD>e<EFBFBD> znak na m<EFBFBD>st<EFBFBD> kurzoru. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. K odstran<EFBFBD>n<EFBFBD> chyb p<EFBFBD>ejdi kurzorem na znak, kter<EFBFBD> chce<EFBFBD> smazat.
|
||||
|
||||
3. Stla<EFBFBD> kl<EFBFBD>vesu x k odstran<EFBFBD>n<EFBFBD> necht<EFBFBD>n<EFBFBD>ch znak<EFBFBD>.
|
||||
|
||||
4. Opakuj kroky 2 a<EFBFBD> 4 dokud nen<EFBFBD> v<EFBFBD>ta spr<EFBFBD>vn<EFBFBD>.
|
||||
|
||||
---> Kr<EFBFBD><EFBFBD>va sko<EFBFBD><EFBFBD>illa p<EFBFBD>ess m<EFBFBD>ss<EFBFBD>c.
|
||||
|
||||
5. Pokud je v<EFBFBD>ta spr<EFBFBD>vn<EFBFBD>, p<EFBFBD>ejdi na lekci 1.4.
|
||||
|
||||
POZN<EFBFBD>MKA: Nesna<EFBFBD> se pouze zapamatovat p<EFBFBD>edv<EFBFBD>d<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD>kazy, u<EFBFBD> se je pou<EFBFBD><EFBFBD>v<EFBFBD>n<EFBFBD>m.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.4: <EFBFBD>PRAVA TEXTU - VKL<EFBFBD>D<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Stla<EFBFBD>en<EFBFBD> kl<EFBFBD>vesy i v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du umo<EFBFBD><EFBFBD>uje vkl<EFBFBD>d<EFBFBD>n<EFBFBD> textu. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor na prvn<EFBFBD> <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. Pro upraven<EFBFBD> prvn<EFBFBD>ho <EFBFBD><EFBFBD>dku do podoby <EFBFBD><EFBFBD>dku druh<EFBFBD>ho, p<EFBFBD>esu<EFBFBD> kurzor na
|
||||
prvn<EFBFBD> znak za m<EFBFBD>sto, kde m<EFBFBD> b<EFBFBD>t text vlo<EFBFBD>en<EFBFBD>.
|
||||
|
||||
3. Stla<EFBFBD> i a napi<EFBFBD> pot<EFBFBD>ebn<EFBFBD> dodatek.
|
||||
|
||||
4. Po opraven<EFBFBD> ka<EFBFBD>d<EFBFBD> chyby stla<EFBFBD> <ESC> pro n<EFBFBD>vrat do Norm<EFBFBD>ln<EFBFBD>ho m<EFBFBD>du.
|
||||
Opakuj kroky 2 a<EFBFBD> 4 dokud nen<EFBFBD> v<EFBFBD>ta spr<EFBFBD>vn<EFBFBD>.
|
||||
|
||||
---> N<EFBFBD>jak<EFBFBD> txt na t<EFBFBD>to .
|
||||
---> N<EFBFBD>jak<EFBFBD> text chyb<EFBFBD> na t<EFBFBD>to <EFBFBD><EFBFBD>dce.
|
||||
|
||||
5. Pokud ji<EFBFBD> ovl<EFBFBD>d<EFBFBD><EFBFBD> vkl<EFBFBD>d<EFBFBD>n<EFBFBD> textu, p<EFBFBD>ejdi na n<EFBFBD>sleduj<EFBFBD>c<EFBFBD> shrnut<EFBFBD>.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<EFBFBD> LEKCE 1
|
||||
|
||||
|
||||
1. Kurzorem se pohybuje pomoc<EFBFBD> <EFBFBD>ipek nebo kl<EFBFBD>vesami hjkl.
|
||||
h (vlevo) j (dolu) k (nahoru) l (vpravo)
|
||||
|
||||
2. Pro spu<EFBFBD>t<EFBFBD>n<EFBFBD> Vimu (z p<EFBFBD><EFBFBD>kazov<EFBFBD>ho <EFBFBD><EFBFBD>dku) napi<EFBFBD>: vim SOUBOR <ENTER>
|
||||
|
||||
3. Pro ukon<EFBFBD>en<EFBFBD> Vimu napi<EFBFBD>: <ESC> :q! <ENTER> bez ulo<EFBFBD>en<EFBFBD> zm<EFBFBD>n.
|
||||
anebo: <ESC> :wq <ENTER> pro ulo<EFBFBD>en<EFBFBD> zm<EFBFBD>n.
|
||||
|
||||
4. Pro smaz<EFBFBD>n<EFBFBD> znaku pod kurzorem napi<EFBFBD> v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du: x
|
||||
|
||||
5. Pro vkl<EFBFBD>d<EFBFBD>n<EFBFBD> textu od m<EFBFBD>sta kurzoru napi<EFBFBD> v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du:
|
||||
i vkl<EFBFBD>dan<EFBFBD> text <ESC>
|
||||
|
||||
POZN<EFBFBD>MKA: Stla<EFBFBD>en<EFBFBD> <ESC> t<EFBFBD> p<EFBFBD>em<EFBFBD>st<EFBFBD> do Norm<EFBFBD>ln<EFBFBD>ho m<EFBFBD>du nebo zru<EFBFBD><EFBFBD> necht<EFBFBD>n<EFBFBD>
|
||||
a <EFBFBD><EFBFBD>ste<EFBFBD>n<EFBFBD> dokon<EFBFBD>en<EFBFBD> p<EFBFBD><EFBFBD>kaz.
|
||||
|
||||
Nyn<EFBFBD> pokra<EFBFBD>uj Lekc<EFBFBD> 2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.1: P<EFBFBD><EFBFBD>KAZY MAZ<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** P<EFBFBD><EFBFBD>kaz dw sma<EFBFBD>e znaky do konce slova. **
|
||||
|
||||
1. Stla<EFBFBD> <ESC> k ubezpe<EFBFBD>en<EFBFBD>, <EFBFBD>e jsi v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du.
|
||||
|
||||
2. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
3. P<EFBFBD>esu<EFBFBD> kurzor na za<EFBFBD><EFBFBD>tek slova, kter<EFBFBD> je pot<EFBFBD>eba smazat.
|
||||
|
||||
4. Napi<EFBFBD> dw , aby slovo zmizelo.
|
||||
|
||||
POZN<EFBFBD>MKA: P<EFBFBD>smena dw se zobraz<EFBFBD> na posledn<EFBFBD>m <EFBFBD><EFBFBD>dku obrazovky jakmile je
|
||||
nap<EFBFBD><EFBFBD>e<EFBFBD>. Kdy<EFBFBD> nap<EFBFBD><EFBFBD>e<EFBFBD> n<EFBFBD>co <EFBFBD>patn<EFBFBD>, stla<EFBFBD> <ESC> a za<EFBFBD>ni znova.
|
||||
|
||||
---> Jsou tu n<EFBFBD>jak<EFBFBD> slova z<EFBFBD>bava, kter<EFBFBD> nepat<EFBFBD><EFBFBD> list do t<EFBFBD>to v<EFBFBD>ty.
|
||||
|
||||
5. Opakuj kroky 3 a<EFBFBD> 4 dokud nen<EFBFBD> v<EFBFBD>ta spr<EFBFBD>vn<EFBFBD> a p<EFBFBD>ejdi na lekci 2.2.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.2: V<EFBFBD>CE P<EFBFBD><EFBFBD>KAZ<EFBFBD> MAZ<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Naps<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD>kazu d$ sma<EFBFBD>e v<EFBFBD>e a<EFBFBD> do konce <EFBFBD><EFBFBD>dky. **
|
||||
|
||||
1. Stla<EFBFBD> <ESC> k ubezpe<EFBFBD>en<EFBFBD>, <EFBFBD>e jsi v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du.
|
||||
|
||||
2. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
3. P<EFBFBD>esu<EFBFBD> kurzor na konec spr<EFBFBD>vn<EFBFBD> v<EFBFBD>ty (ZA prvn<EFBFBD> te<EFBFBD>ku).
|
||||
|
||||
4. Napi<EFBFBD> d$ ,aby jsi smazal znaky a<EFBFBD> do konce <EFBFBD><EFBFBD>dku.
|
||||
|
||||
---> N<EFBFBD>kdo napsal konec t<EFBFBD>to v<EFBFBD>ty dvakr<EFBFBD>t. konec t<EFBFBD>to v<EFBFBD>ty dvakr<EFBFBD>t.
|
||||
|
||||
|
||||
5. P<EFBFBD>ejdi na lekci 2.3 pro pochopen<EFBFBD> toho, co se stalo.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.3: ROZ<EFBFBD>I<EFBFBD>OVAC<EFBFBD> P<EFBFBD><EFBFBD>KAZY A OBJEKTY
|
||||
|
||||
|
||||
Form<EFBFBD>t mazac<EFBFBD>ho p<EFBFBD><EFBFBD>kazu d je n<EFBFBD>sleduj<EFBFBD>c<EFBFBD>:
|
||||
|
||||
[<5B><>slo] d objekt NEBO d [<EFBFBD><EFBFBD>slo] objekt
|
||||
Kde:
|
||||
<EFBFBD><EFBFBD>slo - ud<EFBFBD>v<EFBFBD> kolikr<EFBFBD>t se p<EFBFBD><EFBFBD>kaz vykon<EFBFBD> (voliteln<EFBFBD>, v<EFBFBD>choz<EFBFBD>=1).
|
||||
d - je p<EFBFBD><EFBFBD>kaz maz<EFBFBD>n<EFBFBD>.
|
||||
objekt - ud<EFBFBD>v<EFBFBD> na <EFBFBD>em se p<EFBFBD><EFBFBD>kaz vykon<EFBFBD>v<EFBFBD> (vypsan<EFBFBD> n<EFBFBD><EFBFBD>e).
|
||||
|
||||
Kr<EFBFBD>tk<EFBFBD> v<EFBFBD>pis objekt<EFBFBD>:
|
||||
w - od kurzoru do konce slova, v<EFBFBD>etn<EFBFBD> mezer.
|
||||
e - od kurzoru do konce slova, BEZ mezer.
|
||||
$ - od kurzoru do konce <EFBFBD><EFBFBD>dku.
|
||||
|
||||
POZN<EFBFBD>MKA: Stla<EFBFBD>en<EFBFBD>m kl<EFBFBD>vesy objektu v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du se kurzor p<EFBFBD>esune na
|
||||
m<EFBFBD>sto up<EFBFBD>esn<EFBFBD>n<EFBFBD> ve v<EFBFBD>pisu objekt<EFBFBD>.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.4: V<EFBFBD>JIMKA Z 'P<EFBFBD><EFBFBD>KAZ-OBJEKT'
|
||||
|
||||
|
||||
** Naps<EFBFBD>n<EFBFBD>m dd sma<EFBFBD>e<EFBFBD> cel<EFBFBD> <EFBFBD><EFBFBD>dek. **
|
||||
|
||||
Vzhledem k <EFBFBD>astosti maz<EFBFBD>n<EFBFBD> cel<EFBFBD>ho <EFBFBD><EFBFBD>dku se auto<EFBFBD>i Vimu rozhodli, <EFBFBD>e bude
|
||||
jednodu<EFBFBD><EFBFBD> napsat prost<EFBFBD> dv<EFBFBD> d k smaz<EFBFBD>n<EFBFBD> cel<EFBFBD>ho <EFBFBD><EFBFBD>dku.
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor na druh<EFBFBD> <EFBFBD><EFBFBD>dek spodn<EFBFBD>ho textu.
|
||||
2. Napi<EFBFBD> dd pro smaz<EFBFBD>n<EFBFBD> <EFBFBD><EFBFBD>dku.
|
||||
3. P<EFBFBD>ejdi na <EFBFBD>tvrt<EFBFBD> <EFBFBD><EFBFBD>dek.
|
||||
4. Napi<EFBFBD> 2dd (vzpome<EFBFBD> si <EFBFBD><EFBFBD>slo-p<EFBFBD><EFBFBD>kaz-objekt) pro smaz<EFBFBD>n<EFBFBD> dvou <EFBFBD><EFBFBD>dk<EFBFBD>.
|
||||
|
||||
1) R<EFBFBD><EFBFBD>e jsou <EFBFBD>erven<EFBFBD>,
|
||||
2) Bl<EFBFBD>to je z<EFBFBD>bavn<EFBFBD>,
|
||||
3) Fialky jsou modr<EFBFBD>,
|
||||
4) M<EFBFBD>m auto,
|
||||
5) Hodinky ukazuj<EFBFBD> <EFBFBD>as,
|
||||
6) Cukr je sladk<EFBFBD>,
|
||||
7) A to jsi i ty.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.5: P<EFBFBD><EFBFBD>KAZ UNDO
|
||||
|
||||
|
||||
** Stla<EFBFBD> u pro vr<EFBFBD>cen<EFBFBD> posledn<EFBFBD>ho p<EFBFBD><EFBFBD>kazu, U pro celou <EFBFBD><EFBFBD>dku. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> ---> a p<EFBFBD>em<EFBFBD>sti ho na prvn<EFBFBD> chybu.
|
||||
2. Napi<EFBFBD> x pro smaz<EFBFBD>n<EFBFBD> prvn<EFBFBD>ho necht<EFBFBD>n<EFBFBD>ho znaku.
|
||||
3. Te<EFBFBD> napi<EFBFBD> u <EFBFBD><EFBFBD>m<EFBFBD> vr<EFBFBD>t<EFBFBD><EFBFBD> zp<EFBFBD>t posledn<EFBFBD> vykonan<EFBFBD> p<EFBFBD><EFBFBD>kaz.
|
||||
4. Nyn<EFBFBD> oprav v<EFBFBD>echny chyby na <EFBFBD><EFBFBD>dku pomoc<EFBFBD> p<EFBFBD><EFBFBD>kazu x .
|
||||
5. Napi<EFBFBD> velk<EFBFBD> U <EFBFBD><EFBFBD>m<EFBFBD> vr<EFBFBD>t<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>dek do p<EFBFBD>vodn<EFBFBD>ho stavu.
|
||||
6. Te<EFBFBD> napi<EFBFBD> u n<EFBFBD>kolikr<EFBFBD>t, <EFBFBD><EFBFBD>m<EFBFBD> vr<EFBFBD>t<EFBFBD><EFBFBD> zp<EFBFBD>t p<EFBFBD><EFBFBD>kaz U .
|
||||
7. Stla<EFBFBD> CTRL-R (kl<EFBFBD>vesu CTRL dr<EFBFBD> stla<EFBFBD>enou a stiskni R) n<EFBFBD>kolikr<EFBFBD>t,
|
||||
<EFBFBD><EFBFBD>m<EFBFBD> vr<EFBFBD>t<EFBFBD><EFBFBD> zp<EFBFBD>t p<EFBFBD>edt<EFBFBD>m vr<EFBFBD>cen<EFBFBD> p<EFBFBD><EFBFBD>kazy (redo).
|
||||
|
||||
---> Opprav chybby nna toomto <EFBFBD><EFBFBD>dku a nahra<EFBFBD> je pommoc<EFBFBD> undo.
|
||||
|
||||
8. Toto jsou velmi u<EFBFBD>ite<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD>kazy. Nyn<EFBFBD> p<EFBFBD>ejdi na souhrn Lekce 2.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<EFBFBD> LEKCE 2
|
||||
|
||||
|
||||
1. Pro smaz<EFBFBD>n<EFBFBD> znak<EFBFBD> od kurzoru do konce slova napi<EFBFBD>: dw
|
||||
|
||||
2. Pro smaz<EFBFBD>n<EFBFBD> znak<EFBFBD> od kurzoru do konce <EFBFBD><EFBFBD>dku napi<EFBFBD>: d$
|
||||
|
||||
3. Pro smaz<EFBFBD>n<EFBFBD> cel<EFBFBD>ho <EFBFBD><EFBFBD>dku napi<EFBFBD>: dd
|
||||
|
||||
4. Form<EFBFBD>t p<EFBFBD><EFBFBD>kazu v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du je:
|
||||
|
||||
[<5B><>slo] p<EFBFBD><EFBFBD>kaz objekt NEBO p<EFBFBD><EFBFBD>kaz [<EFBFBD><EFBFBD>slo] objekt
|
||||
kde:
|
||||
<EFBFBD><EFBFBD>slo - ud<EFBFBD>v<EFBFBD> po<EFBFBD>et opakov<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD>kazu
|
||||
p<EFBFBD><EFBFBD>kaz - ud<EFBFBD>v<EFBFBD> co je t<EFBFBD>eba vykonat, nap<EFBFBD><EFBFBD>klad d ma<EFBFBD>e
|
||||
objekt - ud<EFBFBD>v<EFBFBD> rozsah p<EFBFBD><EFBFBD>kazu, nap<EFBFBD><EFBFBD>klad w (slovo),
|
||||
$ (do konce <EFBFBD><EFBFBD>dku), atd.
|
||||
|
||||
5. Pro vr<EFBFBD>cen<EFBFBD> p<EFBFBD>ede<EFBFBD>l<EFBFBD> <EFBFBD>innosti, napi<EFBFBD>: u (mal<EFBFBD> u)
|
||||
Pro vr<EFBFBD>cen<EFBFBD> v<EFBFBD>ech <EFBFBD>prav na <EFBFBD><EFBFBD>dku napi<EFBFBD>: U (velk<EFBFBD> U)
|
||||
Pro vr<EFBFBD>cen<EFBFBD> vr<EFBFBD>cen<EFBFBD>ch <EFBFBD>prav (redo) napi<EFBFBD>: CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.1: P<EFBFBD><EFBFBD>KAZ VLO<EFBFBD>IT
|
||||
|
||||
|
||||
** P<EFBFBD><EFBFBD>ka p vlo<EFBFBD><EFBFBD> posledn<EFBFBD> vymazan<EFBFBD> text za kurzor. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na posledn<EFBFBD> <EFBFBD><EFBFBD>dek textu.
|
||||
|
||||
2. Napi<EFBFBD> dd pro smaz<EFBFBD>n<EFBFBD> <EFBFBD><EFBFBD>dku a jeho ulo<EFBFBD>en<EFBFBD> do bufferu.
|
||||
|
||||
3. P<EFBFBD>esu<EFBFBD> kurzor VݩE tam, kam smazan<EFBFBD> <EFBFBD><EFBFBD>dek pat<EFBFBD><EFBFBD>.
|
||||
|
||||
4. V Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du napi<EFBFBD> p pro op<EFBFBD>tn<EFBFBD> vlo<EFBFBD>en<EFBFBD> <EFBFBD><EFBFBD>dku.
|
||||
|
||||
5. Opakuj kroky 2 a<EFBFBD> 4 dokud <EFBFBD><EFBFBD>dky nebudou ve spr<EFBFBD>vn<EFBFBD>m po<EFBFBD>ad<EFBFBD>.
|
||||
|
||||
d) Tak<EFBFBD> se dok<EFBFBD><EFBFBD>e<EFBFBD> vzd<EFBFBD>l<EFBFBD>vat?
|
||||
b) Fialky jsou modr<EFBFBD>,
|
||||
c) Inteligence se u<EFBFBD><EFBFBD>,
|
||||
a) R<EFBFBD><EFBFBD>e jsou <EFBFBD>erven<EFBFBD>,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.2: P<EFBFBD><EFBFBD>KAZ NAHRAZEN<EFBFBD>
|
||||
|
||||
|
||||
** Naps<EFBFBD>n<EFBFBD>m r a znaku se nahrad<EFBFBD> znak pod kurzorem. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na prvn<EFBFBD> <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. P<EFBFBD>esu<EFBFBD> kurzor na za<EFBFBD><EFBFBD>tek prvn<EFBFBD> chyby.
|
||||
|
||||
3. Napi<EFBFBD> r a potom znak, kter<EFBFBD> nahrad<EFBFBD> chybu.
|
||||
|
||||
4. Opakuj kroky 2 a<EFBFBD> 3 dokud nen<EFBFBD> prvn<EFBFBD> <EFBFBD><EFBFBD>dka spr<EFBFBD>vn<EFBFBD>.
|
||||
|
||||
---> Kdi<EFBFBD> byl pz<EFBFBD>n tento <EFBFBD><EFBFBD>deg, n<EFBFBD>kdu stla<EFBFBD>il <EFBFBD>paqn<EFBFBD> kl<EFBFBD>vesy!
|
||||
---> Kdy<EFBFBD> byl ps<EFBFBD>n tento <EFBFBD><EFBFBD>dek, n<EFBFBD>kdo stla<EFBFBD><EFBFBD>l <EFBFBD>patn<EFBFBD> kl<EFBFBD>vesy!
|
||||
|
||||
5. Nyn<EFBFBD> p<EFBFBD>ejdi na Lekci 3.2.
|
||||
|
||||
POZN<EFBFBD>MKA: Zapamatuj si, <EFBFBD>e by ses m<EFBFBD>l u<EFBFBD>it pou<EFBFBD><EFBFBD>v<EFBFBD>n<EFBFBD>m, ne zapamatov<EFBFBD>n<EFBFBD>m.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.3: P<EFBFBD><EFBFBD>KAZ <EFBFBD>PRAVY
|
||||
|
||||
|
||||
** Pokud chce<EFBFBD> zm<EFBFBD>nit <EFBFBD><EFBFBD>st nebo cel<EFBFBD> slovo, napi<EFBFBD> cw . **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor n<EFBFBD><EFBFBD>e na prvn<EFBFBD> <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. Um<EFBFBD>sti kurzor na p<EFBFBD>smeno i v slov<EFBFBD> <EFBFBD>i<EFBFBD>ok.
|
||||
|
||||
3. Napi<EFBFBD> cw a oprav slovo (v tomto p<EFBFBD><EFBFBD>pad<EFBFBD> napi<EFBFBD> '<EFBFBD>dek'.)
|
||||
|
||||
4. Stla<EFBFBD> <ESC> a p<EFBFBD>ejdi na dal<EFBFBD><EFBFBD> chybu (prvn<EFBFBD> znak, kter<EFBFBD> t<EFBFBD>eba zm<EFBFBD>nit.)
|
||||
|
||||
5. Opakuj kroky 3 a<EFBFBD> 4 dokud nen<EFBFBD> prvn<EFBFBD> v<EFBFBD>ta stejn<EFBFBD> jako ta druh<EFBFBD>.
|
||||
|
||||
---> Tento <EFBFBD>i<EFBFBD>ok m<EFBFBD> n<EFBFBD>kolik skic, kter<EFBFBD> psadoinsa zm<EFBFBD>nit pasdgf p<EFBFBD><EFBFBD>kazu.
|
||||
---> Tento <EFBFBD><EFBFBD>dek m<EFBFBD> n<EFBFBD>kolik slov, kter<EFBFBD> pot<EFBFBD>ebuj<EFBFBD> zm<EFBFBD>nit pomoc<EFBFBD> p<EFBFBD><EFBFBD>kazu.
|
||||
|
||||
V<EFBFBD>imni si, <EFBFBD>e cw nejen nahrazuje slovo, ale tak<EFBFBD> p<EFBFBD>em<EFBFBD>st<EFBFBD> do vkl<EFBFBD>d<EFBFBD>n<EFBFBD>.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.4: V<EFBFBD>CE ZM<EFBFBD>N POU<EFBFBD>IT<EFBFBD>M c
|
||||
|
||||
|
||||
** P<EFBFBD><EFBFBD>kaz pro <EFBFBD>pravu se dru<EFBFBD><EFBFBD> se stejn<EFBFBD>mi objekty jako ten pro maz<EFBFBD>n<EFBFBD>. **
|
||||
|
||||
1. P<EFBFBD><EFBFBD>kaz pro <EFBFBD>pravu pracuje stejn<EFBFBD> jako pro maz<EFBFBD>n<EFBFBD>. Form<EFBFBD>t je:
|
||||
|
||||
[<5B><>slo] c objekt NEBO c [<EFBFBD><EFBFBD>slo] objekt
|
||||
|
||||
2. Objekty jsou tak<EFBFBD> shodn<EFBFBD>, jako nap<EFBFBD>.: w (slovo), $ (konec <EFBFBD><EFBFBD>dku), atd.
|
||||
|
||||
3. P<EFBFBD>ejdi n<EFBFBD><EFBFBD>e na prvn<EFBFBD> <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
4. P<EFBFBD>esu<EFBFBD> kurzor na prvn<EFBFBD> rozd<EFBFBD>l.
|
||||
|
||||
5. Napi<EFBFBD> c$ pro upraven<EFBFBD> zbytku <EFBFBD><EFBFBD>dku podle toho druh<EFBFBD>ho a stla<EFBFBD> <ESC>.
|
||||
|
||||
---> Konec tohoto <EFBFBD><EFBFBD>dku pot<EFBFBD>ebuje pomoc, aby byl jako ten druh<EFBFBD>.
|
||||
---> Konec tohoto <EFBFBD><EFBFBD>dku pot<EFBFBD>ebuje opravit pou<EFBFBD>it<EFBFBD>m p<EFBFBD><EFBFBD>kazu c$ .
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<EFBFBD> LEKCE 3
|
||||
|
||||
|
||||
1. Pro vlo<EFBFBD>en<EFBFBD> textu, kter<EFBFBD> byl smaz<EFBFBD>n, napi<EFBFBD> p . To vlo<EFBFBD><EFBFBD> smazan<EFBFBD> text
|
||||
ZA kurzor (pokud byl <EFBFBD><EFBFBD>dek smazan<EFBFBD>, p<EFBFBD>ejde na <EFBFBD><EFBFBD>dek pod kurzorem).
|
||||
|
||||
2. Pro nahrazen<EFBFBD> znaku pod kurzorem, napi<EFBFBD> r a potom znak, kter<EFBFBD>m
|
||||
chce<EFBFBD> p<EFBFBD>vodn<EFBFBD> znak nahradit.
|
||||
|
||||
3. P<EFBFBD><EFBFBD>kaz na upravov<EFBFBD>n<EFBFBD> umo<EFBFBD><EFBFBD>uje zm<EFBFBD>nit specifikovan<EFBFBD> objekt od kurzoru
|
||||
do konce objektu. Nap<EFBFBD><EFBFBD>klad: Napi<EFBFBD> cw ,<EFBFBD><EFBFBD>m<EFBFBD> zm<EFBFBD>n<EFBFBD><EFBFBD> text od pozice
|
||||
kurzoru do konce slova, c$ zm<EFBFBD>n<EFBFBD> text do konce <EFBFBD><EFBFBD>dku.
|
||||
|
||||
4. Form<EFBFBD>t pro nahrazov<EFBFBD>n<EFBFBD> je:
|
||||
|
||||
[<5B><>slo] c objekt NEBO c [<EFBFBD><EFBFBD>slo] objekt
|
||||
|
||||
Nyn<EFBFBD> p<EFBFBD>ejdi na n<EFBFBD>sleduj<EFBFBD>c<EFBFBD> lekci.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.1: POZICE A STATUS SOUBORU
|
||||
|
||||
|
||||
** Stla<EFBFBD> CTRL-g pro zobrazen<EFBFBD> sv<EFBFBD> pozice v souboru a statusu souboru.
|
||||
Stla<EFBFBD> SHIFT-G pro p<EFBFBD>echod na <EFBFBD><EFBFBD>dek v souboru. **
|
||||
|
||||
Pozn<EFBFBD>mka: P<EFBFBD>e<EFBFBD>ti si celou lekci ne<EFBFBD> za<EFBFBD>ne<EFBFBD> vykon<EFBFBD>vat kroky!!
|
||||
|
||||
1. Dr<EFBFBD> kl<EFBFBD>vesu Ctrl stla<EFBFBD>enou a stiskni g . Vespod obrazovky se zobraz<EFBFBD>
|
||||
stavov<EFBFBD> <EFBFBD><EFBFBD>dek s n<EFBFBD>zvem souboru a <EFBFBD><EFBFBD>dkou na kter<EFBFBD> se nach<EFBFBD>z<EFBFBD><EFBFBD>. Zapamatuj
|
||||
si <EFBFBD><EFBFBD>slo <EFBFBD><EFBFBD>dku pro krok 3.
|
||||
|
||||
2. Stla<EFBFBD> shift-G pro p<EFBFBD>esun na konec souboru.
|
||||
|
||||
3. Napi<EFBFBD> <EFBFBD><EFBFBD>slo <EFBFBD><EFBFBD>dku na kter<EFBFBD>m si se nach<EFBFBD>zel a stla<EFBFBD> shift-G. To t<EFBFBD>
|
||||
vr<EFBFBD>t<EFBFBD> na <EFBFBD><EFBFBD>dek, na kter<EFBFBD>m jsi d<EFBFBD><EFBFBD>ve stiskl Ctrl-g.
|
||||
(Kdy<EFBFBD> p<EFBFBD><EFBFBD>e<EFBFBD> <EFBFBD><EFBFBD>sla, tak se NEZOBRAZUJ<EFBFBD> na obrazovce.)
|
||||
|
||||
4. Pokud se c<EFBFBD>t<EFBFBD><EFBFBD> schopn<EFBFBD> vykonat tyto kroky, vykonej je.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.2: P<EFBFBD><EFBFBD>KAZ VYHLED<EFBFBD>V<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Napi<EFBFBD> / n<EFBFBD>sledovan<EFBFBD> <EFBFBD>et<EFBFBD>zcem pro vyhled<EFBFBD>n<EFBFBD> onoho <EFBFBD>et<EFBFBD>zce. **
|
||||
|
||||
1. Stiskni / v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du. V<EFBFBD>imni si, <EFBFBD>e tento znak se spolu s
|
||||
kurzorem zobraz<EFBFBD> v doln<EFBFBD> <EFBFBD><EFBFBD>sti obrazovky jako p<EFBFBD><EFBFBD>kaz : .
|
||||
|
||||
2. Nyn<EFBFBD> napi<EFBFBD> 'chhybba' <ENTER>. To je slovo, kter<EFBFBD> chce<EFBFBD> vyhledat.
|
||||
|
||||
3. Pro vyhled<EFBFBD>n<EFBFBD> dal<EFBFBD><EFBFBD>ho v<EFBFBD>sledku stejn<EFBFBD>ho <EFBFBD>et<EFBFBD>zce, jednodu<EFBFBD>e stla<EFBFBD> n .
|
||||
Pro vyhled<EFBFBD>n<EFBFBD> dal<EFBFBD><EFBFBD>ho v<EFBFBD>sledku stejn<EFBFBD>ho <EFBFBD>et<EFBFBD>zce opa<EFBFBD>n<EFBFBD>m sm<EFBFBD>rem, stiskni
|
||||
Shift-N.
|
||||
|
||||
4. Pokud chce<EFBFBD> vyhledat <EFBFBD>et<EFBFBD>zec v opa<EFBFBD>n<EFBFBD>m sm<EFBFBD>ru, pou<EFBFBD>ij p<EFBFBD><EFBFBD>kaz ? m<EFBFBD>sto
|
||||
p<EFBFBD><EFBFBD>kazu / .
|
||||
|
||||
---> "chhybba" nen<EFBFBD> zp<EFBFBD>sob, jak hl<EFBFBD>skovat chyba; chhybba je chyba.
|
||||
|
||||
Pozn<EFBFBD>mka: Kdy<EFBFBD> vyhled<EFBFBD>v<EFBFBD>n<EFBFBD> dos<EFBFBD>hne konce souboru, bude pokra<EFBFBD>ovat na jeho
|
||||
za<EFBFBD><EFBFBD>tku.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.3: VYHLED<EFBFBD>V<EFBFBD>N<EFBFBD> P<EFBFBD>ROV<EFBFBD> Z<EFBFBD>VORKY
|
||||
|
||||
|
||||
** Napi<EFBFBD> % pro nalezen<EFBFBD> p<EFBFBD>rov<EFBFBD> ),], nebo } . **
|
||||
|
||||
1. P<EFBFBD>em<EFBFBD>sti kurzor na kteroukoli (, [, nebo { v <EFBFBD><EFBFBD>dku ozna<EFBFBD>en<EFBFBD>m --->.
|
||||
|
||||
2. Nyn<EFBFBD> napi<EFBFBD> znak % .
|
||||
|
||||
3. Kurzor se p<EFBFBD>em<EFBFBD>st<EFBFBD> na odpov<EFBFBD>daj<EFBFBD>c<EFBFBD> z<EFBFBD>vorku.
|
||||
|
||||
4. Stla<EFBFBD> % pro p<EFBFBD>esun kurzoru zp<EFBFBD>t na otv<EFBFBD>raj<EFBFBD>c<EFBFBD> z<EFBFBD>vorku.
|
||||
|
||||
---> Toto ( je testovac<EFBFBD> <EFBFBD><EFBFBD>dek ('s, ['s ] a {'s } v n<EFBFBD>m. ))
|
||||
|
||||
Pozn<EFBFBD>mka: Toto je velmi u<EFBFBD>ite<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD> lad<EFBFBD>n<EFBFBD> programu s chyb<EFBFBD>j<EFBFBD>c<EFBFBD>mi
|
||||
uzav<EFBFBD>rac<EFBFBD>mi z<EFBFBD>vorkami.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.4: ZP<EFBFBD>SOB JAK ZM<EFBFBD>NIT CHYBY
|
||||
|
||||
|
||||
** Napi<EFBFBD> :s/star<EFBFBD>/nov<EFBFBD>/g pro nahrazen<EFBFBD> slova 'nov<EFBFBD>' za 'star<EFBFBD>'. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor na <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. Napi<EFBFBD> :s/dobr<EFBFBD><EFBFBD>/dobr<EFBFBD> <ENTER> . V<EFBFBD>imni si, <EFBFBD>e tento p<EFBFBD><EFBFBD>kaz zm<EFBFBD>n<EFBFBD> pouze
|
||||
prvn<EFBFBD> v<EFBFBD>skyt v <EFBFBD><EFBFBD>dku.
|
||||
|
||||
3. Nyn<EFBFBD> napi<EFBFBD> :s/dobr<EFBFBD><EFBFBD>/dobr<EFBFBD>/g co<EFBFBD> znamen<EFBFBD> celkov<EFBFBD> nahrazen<EFBFBD> v <EFBFBD><EFBFBD>dku.
|
||||
Toto nahrad<EFBFBD> v<EFBFBD>echny v<EFBFBD>skyty v <EFBFBD><EFBFBD>dku.
|
||||
|
||||
---> dobr<EFBFBD><EFBFBD> suroviny a dobr<EFBFBD><EFBFBD> n<EFBFBD><EFBFBD>in<EFBFBD> jsou z<EFBFBD>kladem dobr<EFBFBD><EFBFBD> kuchyn<EFBFBD>.
|
||||
|
||||
4. Pro zm<EFBFBD>nu v<EFBFBD>ech v<EFBFBD>skyt<EFBFBD> <EFBFBD>et<EFBFBD>zce mezi dv<EFBFBD>ma <EFBFBD><EFBFBD>dky,
|
||||
Napi<EFBFBD> :#,#s/star<EFBFBD>/nov<EFBFBD>/g kde #,# jsou <EFBFBD><EFBFBD>sla on<EFBFBD>ch <EFBFBD><EFBFBD>dek.
|
||||
Napi<EFBFBD> :%s/star<EFBFBD>/nov<EFBFBD>/g pro zm<EFBFBD>nu v<EFBFBD>ech v<EFBFBD>skyt<EFBFBD> v cel<EFBFBD>m souboru.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<EFBFBD> LEKCE 4
|
||||
|
||||
|
||||
1. Ctrl-g vyp<EFBFBD><EFBFBD>e tvou pozici v souboru a status souboru.
|
||||
Shift-G t<EFBFBD> p<EFBFBD>em<EFBFBD>st<EFBFBD> na konec souboru. <EFBFBD><EFBFBD>slo n<EFBFBD>sledovan<EFBFBD>
|
||||
Shift-G t<EFBFBD> p<EFBFBD>esune na dan<EFBFBD> <EFBFBD><EFBFBD>slo <EFBFBD><EFBFBD>dku.
|
||||
|
||||
2. Naps<EFBFBD>n<EFBFBD> / n<EFBFBD>sledovan<EFBFBD> <EFBFBD>et<EFBFBD>zcem vyhled<EFBFBD> <EFBFBD>et<EFBFBD>zec sm<EFBFBD>rem DOP<EFBFBD>EDU.
|
||||
Naps<EFBFBD>n<EFBFBD> ? n<EFBFBD>sledovan<EFBFBD> <EFBFBD>et<EFBFBD>zcem vyhled<EFBFBD> <EFBFBD>et<EFBFBD>zec sm<EFBFBD>rem DOZADU.
|
||||
Naps<EFBFBD>n<EFBFBD> n po vyhled<EFBFBD>v<EFBFBD>n<EFBFBD> najde n<EFBFBD>sleduj<EFBFBD>c<EFBFBD> v<EFBFBD>skyt <EFBFBD>et<EFBFBD>zce ve stejn<EFBFBD>m
|
||||
sm<EFBFBD>ru, Shift-N ve sm<EFBFBD>ru opa<EFBFBD>n<EFBFBD>m.
|
||||
|
||||
3. Stisknut<EFBFBD> % kdy<EFBFBD> je kurzor na (,),[,],{, nebo } najde odpov<EFBFBD>daj<EFBFBD>c<EFBFBD>
|
||||
p<EFBFBD>rovou z<EFBFBD>vorku.
|
||||
|
||||
4. Pro nahrazen<EFBFBD> nov<EFBFBD>ho za prvn<EFBFBD> star<EFBFBD> v <EFBFBD><EFBFBD>dku napi<EFBFBD> :s/star<EFBFBD>/nov<EFBFBD>
|
||||
Pro nahrazen<EFBFBD> nov<EFBFBD>ho za v<EFBFBD>echny star<EFBFBD> v <EFBFBD><EFBFBD>dku napi<EFBFBD> :s/star<EFBFBD>/nov<EFBFBD>/g
|
||||
Pro nahrazen<EFBFBD> <EFBFBD>et<EFBFBD>zc<EFBFBD> mezi dv<EFBFBD>mi <EFBFBD><EFBFBD>dkami # napi<EFBFBD> :#,#s/star<EFBFBD>/nov<EFBFBD>/g
|
||||
Pro nahrazen<EFBFBD> v<EFBFBD>ech v<EFBFBD>skyt<EFBFBD> v souboru napi<EFBFBD> :%s/star<EFBFBD>/nov<EFBFBD>/g
|
||||
Pro potvrzen<EFBFBD> ka<EFBFBD>d<EFBFBD>ho nahrazen<EFBFBD> p<EFBFBD>idej 'c' :%s/star<EFBFBD>/nov<EFBFBD>/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.1: JAK VYKONAT VN<EFBFBD>J<EFBFBD><EFBFBD> P<EFBFBD><EFBFBD>KAZ
|
||||
|
||||
|
||||
** Napi<EFBFBD> :! n<EFBFBD>sledovan<EFBFBD> vn<EFBFBD>j<EFBFBD><EFBFBD>m p<EFBFBD><EFBFBD>kazem pro spu<EFBFBD>t<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD>kazu. **
|
||||
|
||||
1. Napi<EFBFBD> obvykl<EFBFBD> p<EFBFBD><EFBFBD>kaz : , kter<EFBFBD> um<EFBFBD>st<EFBFBD> kurzor na spodek obrazovky
|
||||
To umo<EFBFBD>n<EFBFBD> napsat p<EFBFBD><EFBFBD>kaz.
|
||||
|
||||
2. Nyn<EFBFBD> stiskni ! (vyk<EFBFBD>i<EFBFBD>n<EFBFBD>k). To umo<EFBFBD>n<EFBFBD> vykonat jak<EFBFBD>koliv vn<EFBFBD>j<EFBFBD><EFBFBD>
|
||||
p<EFBFBD><EFBFBD>kaz z p<EFBFBD><EFBFBD>kazov<EFBFBD>ho <EFBFBD><EFBFBD>dku.
|
||||
|
||||
3. Nap<EFBFBD><EFBFBD>klad napi<EFBFBD> ls za ! a stiskni <ENTER>. Tento p<EFBFBD><EFBFBD>kaz zobraz<EFBFBD>
|
||||
obsah tv<EFBFBD>ho adres<EFBFBD><EFBFBD>e jako v p<EFBFBD><EFBFBD>kazov<EFBFBD>m <EFBFBD><EFBFBD>dku.
|
||||
Vyzkou<EFBFBD>ej :!dir pokud ls nefunguje.
|
||||
|
||||
Pozn<EFBFBD>mka: Takto je mo<EFBFBD>n<EFBFBD> vykonat jak<EFBFBD>koliv p<EFBFBD><EFBFBD>kaz.
|
||||
|
||||
Pozn<EFBFBD>mka: V<EFBFBD>echny p<EFBFBD><EFBFBD>kazy : mus<EFBFBD> b<EFBFBD>t dokon<EFBFBD>en<EFBFBD> stisknut<EFBFBD>m <ENTER>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.2: V<EFBFBD>CE O UKL<EFBFBD>D<EFBFBD>N<EFBFBD> SOUBOR<EFBFBD>
|
||||
|
||||
|
||||
** Pro ulo<EFBFBD>en<EFBFBD> zm<EFBFBD>n v souboru napi<EFBFBD> :w SOUBOR. **
|
||||
|
||||
1. Napi<EFBFBD> :!dir nebo :!ls pro v<EFBFBD>pis aktu<EFBFBD>ln<EFBFBD>ho adres<EFBFBD><EFBFBD>e.
|
||||
U<EFBFBD> v<EFBFBD><EFBFBD>, <EFBFBD>e za t<EFBFBD>mto mus<EFBFBD><EFBFBD> stisknout <ENTER>.
|
||||
|
||||
2. Vyber si n<EFBFBD>zev souboru, kter<EFBFBD> je<EFBFBD>t<EFBFBD> neexistuje, nap<EFBFBD><EFBFBD>klad TEST.
|
||||
|
||||
3. Nyn<EFBFBD> napi<EFBFBD>: :w TEST (kde TEST je vybran<EFBFBD> n<EFBFBD>zev souboru.)
|
||||
|
||||
4. To ulo<EFBFBD><EFBFBD> cel<EFBFBD> soubor (V<EFBFBD>uka Vimu) pod n<EFBFBD>zvem TEST.
|
||||
Pro ov<EFBFBD><EFBFBD>en<EFBFBD> napi<EFBFBD> znovu :!dir , <EFBFBD><EFBFBD>m<EFBFBD> zobraz<EFBFBD><EFBFBD> obsah adres<EFBFBD><EFBFBD>e.
|
||||
|
||||
Pozn<EFBFBD>mka: Jakmile ukon<EFBFBD><EFBFBD><EFBFBD> Vim a znovu ho spust<EFBFBD><EFBFBD> s n<EFBFBD>zvem souboru TEST,
|
||||
soubor bude p<EFBFBD>esn<EFBFBD> kopie v<EFBFBD>uky, kdy<EFBFBD> si ji ukl<EFBFBD>dal.
|
||||
|
||||
5. Nyn<EFBFBD> odstra<EFBFBD> soubor naps<EFBFBD>n<EFBFBD>m (MS-DOS): :!del TEST
|
||||
nebo (Unix): :!rm TEST
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.3: V<EFBFBD>B<EFBFBD>ROV<EFBFBD> P<EFBFBD><EFBFBD>KAZ ULO<EFBFBD>EN<EFBFBD>
|
||||
|
||||
|
||||
** Pro ulo<EFBFBD>en<EFBFBD> <EFBFBD><EFBFBD>sti souboru napi<EFBFBD> :#,# w SOUBOR **
|
||||
|
||||
1. Je<EFBFBD>t<EFBFBD> jednou napi<EFBFBD> :!dir nebo :!ls pro v<EFBFBD>pis aktu<EFBFBD>ln<EFBFBD>ho adres<EFBFBD><EFBFBD>e
|
||||
a vyber vhodn<EFBFBD> n<EFBFBD>zev souboru jako nap<EFBFBD>. TEST.
|
||||
|
||||
2. P<EFBFBD>esu<EFBFBD> kurzor na vrch t<EFBFBD>to str<EFBFBD>nky a stiskni Ctrl-g pro zobrazen<EFBFBD>
|
||||
<EFBFBD><EFBFBD>sla <EFBFBD><EFBFBD>dku. ZAPAMATUJ SI TOTO <EFBFBD><EFBFBD>SLO!
|
||||
|
||||
3. Nyn<EFBFBD> se p<EFBFBD>esu<EFBFBD> na spodek t<EFBFBD>to str<EFBFBD>nky a op<EFBFBD>t stiskni Ctrl-g.
|
||||
ZAPAMATUJ SI I <EFBFBD><EFBFBD>SLO TOHOTO <EFBFBD><EFBFBD>DKU!
|
||||
|
||||
4. Pro ulo<EFBFBD>en<EFBFBD> POUZE <EFBFBD><EFBFBD>sti souboru, napi<EFBFBD> :#,# w TEST kde #,# jsou
|
||||
<EFBFBD><EFBFBD>sla dvou zapamatovan<EFBFBD>ch <EFBFBD><EFBFBD>dk<EFBFBD> (vrch, spodek) a TEST je n<EFBFBD>zev souboru.
|
||||
|
||||
5. Znova se ujisti, <EFBFBD>e tam ten soubor je pomoc<EFBFBD> :!dir ale NEODSTRA<EFBFBD>UJ ho.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.4: SLU<EFBFBD>OV<EFBFBD>N<EFBFBD> SOUBOR<EFBFBD>
|
||||
|
||||
|
||||
** K vlo<EFBFBD>en<EFBFBD> obsahu souboru napi<EFBFBD> :r N<EFBFBD>ZEV_SOUBORU **
|
||||
|
||||
1. Napi<EFBFBD> :!dir pro uji<EFBFBD>t<EFBFBD>n<EFBFBD>, <EFBFBD>e soubor TEST st<EFBFBD>le existuje.
|
||||
|
||||
2. P<EFBFBD>esu<EFBFBD> kurzor na vrch t<EFBFBD>to str<EFBFBD>nky.
|
||||
|
||||
POZN<EFBFBD>MKA: Po vykon<EFBFBD>n<EFBFBD> kroku 3 uvid<EFBFBD><EFBFBD> lekci 5.3. Potom se op<EFBFBD>t p<EFBFBD>esu<EFBFBD> dol<EFBFBD>
|
||||
na tuto lekci.
|
||||
|
||||
3. Nyn<EFBFBD> vlo<EFBFBD> soubor TEST pou<EFBFBD>it<EFBFBD>m p<EFBFBD><EFBFBD>kazu :r TEST kde TEST je n<EFBFBD>zev
|
||||
souboru.
|
||||
|
||||
POZN<EFBFBD>MKA: Soubor, kter<EFBFBD> vkl<EFBFBD>d<EFBFBD><EFBFBD> se vlo<EFBFBD><EFBFBD> od m<EFBFBD>sta, kde se nach<EFBFBD>z<EFBFBD> kurzor.
|
||||
|
||||
4. Pro potvrzen<EFBFBD> vlo<EFBFBD>en<EFBFBD> souboru, p<EFBFBD>esu<EFBFBD> kurzor zp<EFBFBD>t a v<EFBFBD>imni si, <EFBFBD>e te<EFBFBD>
|
||||
m<EFBFBD><EFBFBD> dv<EFBFBD> kopie lekce 5.3, origin<EFBFBD>l a souborovou verzi.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<EFBFBD> LEKCE 5
|
||||
|
||||
|
||||
1. :!p<EFBFBD><EFBFBD>kaz vykon<EFBFBD> vn<EFBFBD>j<EFBFBD><EFBFBD> p<EFBFBD><EFBFBD>kaz.
|
||||
|
||||
N<EFBFBD>kter<EFBFBD> u<EFBFBD>ite<EFBFBD>n<EFBFBD> p<EFBFBD><EFBFBD>klady jsou:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - zobraz<EFBFBD> obsah souboru.
|
||||
:!del SOUBOR :!rm SOUBOR - odstran<EFBFBD> SOUBOR.
|
||||
|
||||
2. :w SOUBOR ulo<EFBFBD><EFBFBD> aktu<EFBFBD>ln<EFBFBD> text jako SOUBOR na disk.
|
||||
|
||||
3. :#,#w SOUBOR ulo<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>dky od # do # do SOUBORU.
|
||||
|
||||
4. :r SOUBOR vybere z disku SOUBOR a vlo<EFBFBD><EFBFBD> ho do editovan<EFBFBD>ho souboru
|
||||
za pozici kurzoru.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.1: P<EFBFBD><EFBFBD>KAZ OTEV<EFBFBD><EFBFBD>T
|
||||
|
||||
|
||||
** Napi<EFBFBD> o pro vlo<EFBFBD>en<EFBFBD> <EFBFBD><EFBFBD>dku pod kurzor a p<EFBFBD>epnut<EFBFBD> do Vkl<EFBFBD>dac<EFBFBD>ho m<EFBFBD>du. **
|
||||
|
||||
1. P<EFBFBD>em<EFBFBD>sti kurzor n<EFBFBD><EFBFBD>e na <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. Napi<EFBFBD> o (mal<EFBFBD>) pro vlo<EFBFBD>en<EFBFBD> <EFBFBD><EFBFBD>dku POD kurzor a p<EFBFBD>epnut<EFBFBD> do
|
||||
Vkl<EFBFBD>dac<EFBFBD>ho m<EFBFBD>du.
|
||||
|
||||
3. Nyn<EFBFBD> zkop<EFBFBD>ruj <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> ---> a stiskni <ESC> pro ukon<EFBFBD>en<EFBFBD>
|
||||
Vkl<EFBFBD>dac<EFBFBD>ho m<EFBFBD>du.
|
||||
|
||||
---> Po stisknut<EFBFBD> o se kurzor p<EFBFBD>em<EFBFBD>st<EFBFBD> na vlo<EFBFBD>en<EFBFBD> <EFBFBD><EFBFBD>dek do Vkl<EFBFBD>dac<EFBFBD>ho
|
||||
m<EFBFBD>du.
|
||||
|
||||
4. Pro otev<EFBFBD>en<EFBFBD> <EFBFBD><EFBFBD>dku NAD kurzorem jednodu<EFBFBD>e napi<EFBFBD> velk<EFBFBD> O , m<EFBFBD>sto
|
||||
mal<EFBFBD>ho o. Vyzkou<EFBFBD>ej si to na n<EFBFBD>sleduj<EFBFBD>c<EFBFBD>m <EFBFBD><EFBFBD>dku.
|
||||
Vlo<EFBFBD> <EFBFBD><EFBFBD>dek nad t<EFBFBD>mto naps<EFBFBD>n<EFBFBD>m Shift-O po um<EFBFBD>st<EFBFBD>n<EFBFBD> kurzoru na tento <EFBFBD><EFBFBD>dek.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.2: P<EFBFBD><EFBFBD>KAZ P<EFBFBD>IDAT
|
||||
|
||||
|
||||
** Stiskni a pro vlo<EFBFBD>en<EFBFBD> textu ZA kurzor. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor na n<EFBFBD><EFBFBD>e na konec <EFBFBD><EFBFBD>dky ozna<EFBFBD>en<EFBFBD> --->
|
||||
stisknut<EFBFBD>m $ v Norm<EFBFBD>ln<EFBFBD>m m<EFBFBD>du.
|
||||
|
||||
2. Stiskni a (mal<EFBFBD>) pro p<EFBFBD>id<EFBFBD>n<EFBFBD> textu ZA znak, kter<EFBFBD> je pod kurzorem.
|
||||
(Velk<EFBFBD> A p<EFBFBD>id<EFBFBD> na konec <EFBFBD><EFBFBD>dku.)
|
||||
|
||||
Pozn<EFBFBD>mka: T<EFBFBD>mto se vyhne<EFBFBD> stisknut<EFBFBD> i , posledn<EFBFBD>ho znaku, textu na vlo<EFBFBD>en<EFBFBD>,
|
||||
<ESC>, kurzor doprava, a nakonec x na p<EFBFBD>id<EFBFBD>v<EFBFBD>n<EFBFBD> na konec <EFBFBD><EFBFBD>dku!
|
||||
|
||||
3. Nyn<EFBFBD> dokon<EFBFBD><EFBFBD> prvn<EFBFBD> <EFBFBD><EFBFBD>dek. V<EFBFBD>imni si, <EFBFBD>e p<EFBFBD>id<EFBFBD>v<EFBFBD>n<EFBFBD> je vlastn<EFBFBD> stejn<EFBFBD> jako
|
||||
Vkl<EFBFBD>dac<EFBFBD> m<EFBFBD>d, krom<EFBFBD> m<EFBFBD>sta, kam se text vkl<EFBFBD>d<EFBFBD>.
|
||||
|
||||
---> Tento <EFBFBD><EFBFBD>dek ti umo<EFBFBD><EFBFBD>uje nacvi<EFBFBD>it
|
||||
---> Tento <EFBFBD><EFBFBD>dek ti umo<EFBFBD><EFBFBD>uje nacvi<EFBFBD>it p<EFBFBD>id<EFBFBD>v<EFBFBD>n<EFBFBD> textu na konec <EFBFBD><EFBFBD>dky.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.3: JIN<EFBFBD> ZP<EFBFBD>SOB NAHRAZOV<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Napi<EFBFBD> velk<EFBFBD> R pro nahrazen<EFBFBD> v<EFBFBD>c ne<EFBFBD> jednoho znaku. **
|
||||
|
||||
1. P<EFBFBD>esu<EFBFBD> kurzor na prvn<EFBFBD> <EFBFBD><EFBFBD>dek ozna<EFBFBD>en<EFBFBD> --->.
|
||||
|
||||
2. Um<EFBFBD>sti kurzor na za<EFBFBD><EFBFBD>tek prvn<EFBFBD>ho slova, kter<EFBFBD> je odli<EFBFBD>n<EFBFBD> od druh<EFBFBD>ho
|
||||
<EFBFBD><EFBFBD>dku ozna<EFBFBD>en<EFBFBD>ho ---> (slovo 'posledn<EFBFBD>').
|
||||
|
||||
3. Nyn<EFBFBD> stiskni R a nahra<EFBFBD> zbytek textu na prvn<EFBFBD>m <EFBFBD><EFBFBD>dku p<EFBFBD>eps<EFBFBD>n<EFBFBD>m
|
||||
star<EFBFBD>ho textu tak, aby byl prvn<EFBFBD> <EFBFBD><EFBFBD>dek stejn<EFBFBD> jako ten druh<EFBFBD>.
|
||||
|
||||
---> Pro upraven<EFBFBD> prvn<EFBFBD>ho <EFBFBD><EFBFBD>dku do tvaru toho posledn<EFBFBD> na stran<EFBFBD> pou<EFBFBD>ij kl.
|
||||
---> Pro upraven<EFBFBD> prvn<EFBFBD>ho <EFBFBD><EFBFBD>dku do tvaru toho druh<EFBFBD>ho, napi<EFBFBD> R a nov<EFBFBD> text.
|
||||
|
||||
4. V<EFBFBD>imni si, <EFBFBD>e jakmile stiskne<EFBFBD> <ESC> v<EFBFBD>echen nezm<EFBFBD>n<EFBFBD>n<EFBFBD> text z<EFBFBD>st<EFBFBD>v<EFBFBD>.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.4: NASTAVEN<EFBFBD> MO<EFBFBD>NOST<EFBFBD>
|
||||
|
||||
** Nastav mo<EFBFBD>nost, <EFBFBD>e vyhled<EFBFBD>v<EFBFBD>n<EFBFBD> anebo nahrazov<EFBFBD>n<EFBFBD> nedb<EFBFBD> velikosti p<EFBFBD>smen **
|
||||
|
||||
1. Vyhledej <EFBFBD>et<EFBFBD>zec 'ignore' naps<EFBFBD>n<EFBFBD>m:
|
||||
/ignore
|
||||
Zopakuj n<EFBFBD>kolikr<EFBFBD>t stisknut<EFBFBD> kl<EFBFBD>vesy n.
|
||||
|
||||
2. Nastav mo<EFBFBD>nost 'ic' (Ignore case) naps<EFBFBD>n<EFBFBD>m p<EFBFBD><EFBFBD>kazu:
|
||||
:set ic
|
||||
|
||||
3. Nyn<EFBFBD> znovu vyhledej 'ignore' stisknut<EFBFBD>m: n
|
||||
N<EFBFBD>kolikr<EFBFBD>t hled<EFBFBD>n<EFBFBD> zopakuj stisknut<EFBFBD>m kl<EFBFBD>vesy n.
|
||||
|
||||
4. Nastav mo<EFBFBD>nosti 'hlsearch' a 'incsearch':
|
||||
:set hls is
|
||||
|
||||
5. Nyn<EFBFBD> znovu vykonej vyhled<EFBFBD>vac<EFBFBD> p<EFBFBD><EFBFBD>kaz a sleduj, co se stane:
|
||||
/ignore
|
||||
|
||||
6. Pro vypnut<EFBFBD> zv<EFBFBD>raz<EFBFBD>ov<EFBFBD>n<EFBFBD> v<EFBFBD>sledk<EFBFBD> napi<EFBFBD>:
|
||||
:nohlsearch
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRHNUT<EFBFBD> LEKCE 6
|
||||
|
||||
|
||||
1. Stisknut<EFBFBD> o otev<EFBFBD>e nov<EFBFBD> <EFBFBD><EFBFBD>dek POD kurzorem a um<EFBFBD>st<EFBFBD> kurzor na vlo<EFBFBD>en<EFBFBD>
|
||||
<EFBFBD><EFBFBD>dek do Vkl<EFBFBD>dac<EFBFBD>ho m<EFBFBD>du.
|
||||
Naps<EFBFBD>n<EFBFBD> velk<EFBFBD>ho O otev<EFBFBD>e <EFBFBD><EFBFBD>dek NAD <EFBFBD><EFBFBD>dkem, na kter<EFBFBD>m je kurzor.
|
||||
|
||||
2. Stiskni a pro vlo<EFBFBD>en<EFBFBD> textu ZA znak na pozici kurzoru.
|
||||
Naps<EFBFBD>n<EFBFBD> velk<EFBFBD>ho A automaticky p<EFBFBD>id<EFBFBD> text na konec <EFBFBD><EFBFBD>dku.
|
||||
|
||||
3. Stisknut<EFBFBD> velk<EFBFBD>ho R p<EFBFBD>epne do Nahrazovac<EFBFBD>ho m<EFBFBD>du, dokud
|
||||
nestiskne<EFBFBD> <ESC> pro jeho ukon<EFBFBD>en<EFBFBD>.
|
||||
|
||||
4. Naps<EFBFBD>n<EFBFBD> ":set xxx" nastav<EFBFBD> mo<EFBFBD>nosti "xxx".
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LEKCE 7: P<EFBFBD><EFBFBD>KAZY ON-LINE N<EFBFBD>POV<EFBFBD>DY
|
||||
|
||||
|
||||
** Pou<EFBFBD><EFBFBD>vej on-line syst<EFBFBD>m n<EFBFBD>pov<EFBFBD>dy **
|
||||
|
||||
Vim m<EFBFBD> obs<EFBFBD>hl<EFBFBD> on-line syst<EFBFBD>m n<EFBFBD>pov<EFBFBD>dy. Pro za<EFBFBD><EFBFBD>tek vyzkou<EFBFBD>ej jeden z
|
||||
n<EFBFBD>sleduj<EFBFBD>c<EFBFBD>ch:
|
||||
- stiskni kl<EFBFBD>vesu <HELP> (pokud ji m<EFBFBD><EFBFBD>)
|
||||
- stiskni kl<EFBFBD>vesu <F1> (pokud ji m<EFBFBD><EFBFBD>)
|
||||
- napi<EFBFBD> :help <ENTER>
|
||||
|
||||
Napi<EFBFBD> :q <ENTER> pro uzav<EFBFBD>en<EFBFBD> okna n<EFBFBD>pov<EFBFBD>dy.
|
||||
|
||||
M<EFBFBD><EFBFBD>e<EFBFBD> naj<EFBFBD>t n<EFBFBD>pov<EFBFBD>du k jak<EFBFBD>mukoliv t<EFBFBD>matu p<EFBFBD>id<EFBFBD>n<EFBFBD>m argumentu k
|
||||
p<EFBFBD><EFBFBD>kazu ":help". Zkus tyto (nezapome<EFBFBD> stisknout <ENTER>):
|
||||
|
||||
:help w
|
||||
:help c_<T
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LEKCE 8: VYTVO<EFBFBD>EN<EFBFBD> INICIALIZA<EFBFBD>N<EFBFBD>HO SKRIPTU
|
||||
|
||||
** Zapni funkce editoru Vim **
|
||||
|
||||
Vim m<EFBFBD> daleko v<EFBFBD>ce funkc<EFBFBD> ne<EFBFBD> Vi, ale v<EFBFBD>t<EFBFBD>ina z nich je vypnuta ve v<EFBFBD>choz<EFBFBD>m
|
||||
nastaven<EFBFBD>. Pro zapnut<EFBFBD> n<EFBFBD>kter<EFBFBD>ch vytvo<EFBFBD> soubor "vimrc".
|
||||
|
||||
1. Za<EFBFBD>ni upravovat soubor "vimrc". Toto z<EFBFBD>vis<EFBFBD> na pou<EFBFBD>it<EFBFBD>m syst<EFBFBD>mu:
|
||||
:edit ~/.vimrc pro Unix
|
||||
:edit $VIM/_vimrc pro MS-Windows
|
||||
|
||||
2. Nyn<EFBFBD> <EFBFBD>ti uk<EFBFBD>zkov<EFBFBD> "vimrc" soubor:
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Ulo<EFBFBD> soubor pomoc<EFBFBD>:
|
||||
|
||||
:write
|
||||
|
||||
Po p<EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>m startu Vim se zapne zv<EFBFBD>raz<EFBFBD>ov<EFBFBD>n<EFBFBD> syntaxe.
|
||||
Do souboru "vimrc" m<EFBFBD><EFBFBD>e<EFBFBD> p<EFBFBD>idat v<EFBFBD>echny svoje up<EFBFBD>ednost<EFBFBD>ovan<EFBFBD> nastaven<EFBFBD>.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Toto ukon<EFBFBD>uje v<EFBFBD>uku Vim, kter<EFBFBD> byla my<EFBFBD>len<EFBFBD> jako stru<EFBFBD>n<EFBFBD> p<EFBFBD>ehled
|
||||
editoru Vim, tak akor<EFBFBD>t posta<EFBFBD>uj<EFBFBD>c<EFBFBD> pro lehk<EFBFBD> a obstojn<EFBFBD> pou<EFBFBD><EFBFBD>v<EFBFBD>n<EFBFBD> editoru.
|
||||
Tato v<EFBFBD>uka m<EFBFBD> daleko od <EFBFBD>plnosti, proto<EFBFBD>e Vim obsahuje podstatn<EFBFBD> v<EFBFBD>ce
|
||||
p<EFBFBD><EFBFBD>kaz<EFBFBD>. D<EFBFBD>le si p<EFBFBD>e<EFBFBD>ti u<EFBFBD>ivatelsk<EFBFBD> manu<EFBFBD>l: ":help user-manual".
|
||||
|
||||
Pro dal<EFBFBD><EFBFBD> studium je doporu<EFBFBD>en<EFBFBD> kniha:
|
||||
Vim - Vi Improved - od Steve Oualline
|
||||
Nakladatel: New Riders
|
||||
Prvn<EFBFBD> kniha ur<EFBFBD>en<EFBFBD> pro Vim. Obzvl<EFBFBD><EFBFBD>t<EFBFBD> vhodn<EFBFBD> pro za<EFBFBD><EFBFBD>te<EFBFBD>n<EFBFBD>ky.
|
||||
Obsahuje mno<EFBFBD>stv<EFBFBD> p<EFBFBD><EFBFBD>klad<EFBFBD> a obr<EFBFBD>zk<EFBFBD>.
|
||||
viz http://iccf-holland.org/click5.html
|
||||
|
||||
Tato kniha je star<EFBFBD><EFBFBD> a v<EFBFBD>ce v<EFBFBD>novan<EFBFBD> Vi ne<EFBFBD> Vim, ale tak<EFBFBD> doporu<EFBFBD>en<EFBFBD>:
|
||||
Learning the Vi Editor - od Linda Lamb
|
||||
Nakladatel: O'Reilly & Associates Inc.
|
||||
Je to dobr<EFBFBD> kniha pro z<EFBFBD>sk<EFBFBD>n<EFBFBD> v<EFBFBD>domost<EFBFBD> t<EFBFBD>m<EFBFBD><EFBFBD> o v<EFBFBD>em, co m<EFBFBD><EFBFBD>ete s Vi d<EFBFBD>lat.
|
||||
<EFBFBD>est<EFBFBD> vyd<EFBFBD>n<EFBFBD> obsahuje t<EFBFBD><EFBFBD> informace o Vim.
|
||||
|
||||
Tato v<EFBFBD>uka byla napsan<EFBFBD> autory Michael C. Pierce a Robert K. Ware,
|
||||
Colorado School of Mines s pou<EFBFBD>it<EFBFBD>m my<EFBFBD>lenek od: Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Upravil pro Vim: Bram Moolenaar.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
P<EFBFBD>eklad do <EFBFBD>e<EFBFBD>tiny: Lubo<EFBFBD> Turek
|
||||
E-Mail: lubos.turek@gmail.com
|
||||
2007 Feb 28
|
@ -1,812 +0,0 @@
|
||||
===============================================================================
|
||||
= V <20> t e j t e v t u t o r i a l u V I M - Verze 1.5 =
|
||||
===============================================================================
|
||||
|
||||
Vim je velmi v<>konn<6E> editor, kter<65> m<> p<><70>li<6C> mnoho p<><70>kaz<61> na to, aby
|
||||
mohly b<>t v<>echny vysv<73>tlen<65> ve v<>uce jako tato. Tato v<>uka obsahuje
|
||||
dostate<74>n<EFBFBD> mno<6E>stv<74> p<><70>kaz<61> na to, aby bylo mo<6D>n<EFBFBD> pou<6F><75>vat Vim jako
|
||||
v<>ce<63><65>elov<6F> editor.
|
||||
|
||||
P<>ibli<6C>n<EFBFBD> <20>as pot<6F>ebn<62> ke zvl<76>dnut<75> t<>to v<>uky je 25-30 minut, z<>le<6C><65>
|
||||
na tom, kolik <20>asu str<74>v<EFBFBD>te p<>ezku<6B>ov<6F>n<EFBFBD>m.
|
||||
|
||||
P<><50>kazy v lekc<6B>ch upravuj<75> text. Vytvo<76> kopii tohoto souboru pro
|
||||
procvi<76>ov<6F>n<EFBFBD> (p<>i startu "vimtutor" je ji<6A> toto kopie).
|
||||
|
||||
Je d<>le<6C>it<69> pamatovat, <20>e tato v<>uka je vytvo<76>ena pro v<>uku pou<6F><75>v<EFBFBD>n<EFBFBD>m.
|
||||
To znamen<65>, <20>e je pot<6F>eba si p<><70>kazy vyzkou<6F>et pro jejich spr<70>vn<76>
|
||||
nau<61>en<65>. Pokud si jen <20>te<74> text, p<><70>kazy zapomene<6E>!
|
||||
|
||||
Nyn<79> se p<>esv<73>d<EFBFBD>te, <20>e Shift-Lock NEN<45> stla<6C>en<65> a n<>kolikr<6B>t stiskn<6B>te
|
||||
kl<6B>vesu j aby se kurzor posunul natolik, <20>e lekce 1.1 zapln<6C> celou
|
||||
obrazovku.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.1: POHYB KURZORU
|
||||
|
||||
|
||||
** Pro pohyb kurzoru pou<6F><75>vej kl<6B>vesy h,j,k,l jak je zn<7A>zorn<72>no n<><6E>e. **
|
||||
^
|
||||
k Funkce: Kl<4B>vesa h je vlevo a vykon<6F> pohyb vlevo.
|
||||
< h l > Kl<4B>vesa l je vpravo a vykon<6F> pohyb vpravo.
|
||||
j Kl<4B>vesa j vypad<61> na <20>ipku dolu.
|
||||
v
|
||||
1. Pohybuj kurzorem po obrazovce dokud si na to nezvykne<6E>.
|
||||
|
||||
2. Dr<44> kl<6B>vesu pro pohyb dolu (j), dokud se jej<65> funkce nezopakuje.
|
||||
---> Te<54> v<><76> jak se p<>esunout na n<>sleduj<75>c<EFBFBD> lekci.
|
||||
|
||||
3. Pou<6F>it<69>m kl<6B>vesy dolu p<>ejdi na lekci 1.2.
|
||||
|
||||
Pozn<EFBFBD>mka: Pokud si n<>kdy nejsi jist n<><6E><EFBFBD>m, co jsi napsal, stla<6C> <ESC> pro
|
||||
p<>echod do Norm<72>ln<6C>ho m<>du. Pot<6F> p<>epi<70> po<70>adovan<61> p<><70>kaz.
|
||||
|
||||
Pozn<EFBFBD>mka: Kurzorov<6F> kl<6B>vesy tak<61> funguj<75>, av<61>ak pou<6F><75>v<EFBFBD>n<EFBFBD> hjkl je rychlej<65><6A>
|
||||
jakmile si na n<>j zvykne<6E>.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.2: SPU<50>T<EFBFBD>N<EFBFBD> A UKON<4F>EN<45> VIM
|
||||
|
||||
|
||||
!! POZN<5A>MKA: P<>ed vykon<6F>n<EFBFBD>m t<>chto krok<6F> si p<>e<EFBFBD>ti celou lekci!!
|
||||
|
||||
1. Stla<6C> <ESC> (pro uji<6A>t<EFBFBD>n<EFBFBD>, <20>e se nach<63>z<EFBFBD><7A> v Norm<72>ln<6C>m m<>du).
|
||||
|
||||
2. Napi<70>: :q! <ENTER>.
|
||||
|
||||
---> T<>mto ukon<6F><6E><EFBFBD> editor BEZ ulo<6C>en<65> zm<7A>n, kter<65> si vykonal.
|
||||
Pokud chce<63> ulo<6C>it zm<7A>ny a ukon<6F>it editor napi<70>:
|
||||
:wq <ENTER>
|
||||
|
||||
3. A<> se dostane<6E> na p<><70>kazov<6F> <20><>dek, napi<70> p<><70>kaz, kter<65>m se dostane<6E> zp<7A>t
|
||||
do t<>to v<>uky. To m<><6D>e b<>t: vimtutor <ENTER>
|
||||
B<><42>n<EFBFBD> se pou<6F><75>v<EFBFBD>: vim tutor <ENTER>
|
||||
|
||||
---> 'vim' znamen<65> spu<70>t<EFBFBD>n<EFBFBD> editoru, 'tutor' je soubor k editaci.
|
||||
|
||||
4. Pokud si tyto kroky spolehliv<69> pamatuje<6A>, vykonej kroky 1 a<> 3, <20><>m<EFBFBD>
|
||||
ukon<6F><6E><EFBFBD> a znovu spust<73><74> editor. Potom p<>esu<73> kurzor dolu na lekci 1.3.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.3: <20>PRAVA TEXTU - MAZ<41>N<EFBFBD>
|
||||
|
||||
|
||||
** Stisknut<75>m kl<6B>vesy x v Norm<72>ln<6C>m m<>du sma<6D>e<EFBFBD> znak na m<>st<73> kurzoru. **
|
||||
|
||||
1. P<>esu<73> kurzor n<><6E>e na <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. K odstran<61>n<EFBFBD> chyb p<>ejdi kurzorem na znak, kter<65> chce<63> smazat.
|
||||
|
||||
3. Stla<6C> kl<6B>vesu x k odstran<61>n<EFBFBD> necht<68>n<EFBFBD>ch znak<61>.
|
||||
|
||||
4. Opakuj kroky 2 a<> 4 dokud nen<65> v<>ta spr<70>vn<76>.
|
||||
|
||||
---> Kr<4B><72>va sko<6B><6F>illa p<>ess m<>ss<73>c.
|
||||
|
||||
5. Pokud je v<>ta spr<70>vn<76>, p<>ejdi na lekci 1.4.
|
||||
|
||||
POZN<EFBFBD>MKA: Nesna<6E> se pouze zapamatovat p<>edv<64>d<EFBFBD>n<EFBFBD> p<><70>kazy, u<> se je pou<6F><75>v<EFBFBD>n<EFBFBD>m.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.4: <20>PRAVA TEXTU - VKL<4B>D<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Stla<6C>en<65> kl<6B>vesy i v Norm<72>ln<6C>m m<>du umo<6D><6F>uje vkl<6B>d<EFBFBD>n<EFBFBD> textu. **
|
||||
|
||||
1. P<>esu<73> kurzor na prvn<76> <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. Pro upraven<65> prvn<76>ho <20><>dku do podoby <20><>dku druh<75>ho, p<>esu<73> kurzor na
|
||||
prvn<76> znak za m<>sto, kde m<> b<>t text vlo<6C>en<65>.
|
||||
|
||||
3. Stla<6C> i a napi<70> pot<6F>ebn<62> dodatek.
|
||||
|
||||
4. Po opraven<65> ka<6B>d<EFBFBD> chyby stla<6C> <ESC> pro n<>vrat do Norm<72>ln<6C>ho m<>du.
|
||||
Opakuj kroky 2 a<> 4 dokud nen<65> v<>ta spr<70>vn<76>.
|
||||
|
||||
---> N<>jak<61> txt na t<>to .
|
||||
---> N<>jak<61> text chyb<79> na t<>to <20><>dce.
|
||||
|
||||
5. Pokud ji<6A> ovl<76>d<EFBFBD><64> vkl<6B>d<EFBFBD>n<EFBFBD> textu, p<>ejdi na n<>sleduj<75>c<EFBFBD> shrnut<75>.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<55> LEKCE 1
|
||||
|
||||
|
||||
1. Kurzorem se pohybuje pomoc<6F> <20>ipek nebo kl<6B>vesami hjkl.
|
||||
h (vlevo) j (dolu) k (nahoru) l (vpravo)
|
||||
|
||||
2. Pro spu<70>t<EFBFBD>n<EFBFBD> Vimu (z p<><70>kazov<6F>ho <20><>dku) napi<70>: vim SOUBOR <ENTER>
|
||||
|
||||
3. Pro ukon<6F>en<65> Vimu napi<70>: <ESC> :q! <ENTER> bez ulo<6C>en<65> zm<7A>n.
|
||||
anebo: <ESC> :wq <ENTER> pro ulo<6C>en<65> zm<7A>n.
|
||||
|
||||
4. Pro smaz<61>n<EFBFBD> znaku pod kurzorem napi<70> v Norm<72>ln<6C>m m<>du: x
|
||||
|
||||
5. Pro vkl<6B>d<EFBFBD>n<EFBFBD> textu od m<>sta kurzoru napi<70> v Norm<72>ln<6C>m m<>du:
|
||||
i vkl<6B>dan<61> text <ESC>
|
||||
|
||||
POZN<EFBFBD>MKA: Stla<6C>en<65> <ESC> t<> p<>em<65>st<73> do Norm<72>ln<6C>ho m<>du nebo zru<72><75> necht<68>n<EFBFBD>
|
||||
a <20><>ste<74>n<EFBFBD> dokon<6F>en<65> p<><70>kaz.
|
||||
|
||||
Nyn<EFBFBD> pokra<72>uj Lekc<6B> 2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.1: P<><50>KAZY MAZ<41>N<EFBFBD>
|
||||
|
||||
|
||||
** P<><50>kaz dw sma<6D>e znaky do konce slova. **
|
||||
|
||||
1. Stla<6C> <ESC> k ubezpe<70>en<65>, <20>e jsi v Norm<72>ln<6C>m m<>du.
|
||||
|
||||
2. P<>esu<73> kurzor n<><6E>e na <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
3. P<>esu<73> kurzor na za<7A><61>tek slova, kter<65> je pot<6F>eba smazat.
|
||||
|
||||
4. Napi<70> dw , aby slovo zmizelo.
|
||||
|
||||
POZN<EFBFBD>MKA: P<>smena dw se zobraz<61> na posledn<64>m <20><>dku obrazovky jakmile je
|
||||
nap<61><70>e<EFBFBD>. Kdy<64> nap<61><70>e<EFBFBD> n<>co <20>patn<74>, stla<6C> <ESC> a za<7A>ni znova.
|
||||
|
||||
---> Jsou tu n<>jak<61> slova z<>bava, kter<65> nepat<61><74> list do t<>to v<>ty.
|
||||
|
||||
5. Opakuj kroky 3 a<> 4 dokud nen<65> v<>ta spr<70>vn<76> a p<>ejdi na lekci 2.2.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.2: V<>CE P<><50>KAZ<41> MAZ<41>N<EFBFBD>
|
||||
|
||||
|
||||
** Naps<70>n<EFBFBD> p<><70>kazu d$ sma<6D>e v<>e a<> do konce <20><>dky. **
|
||||
|
||||
1. Stla<6C> <ESC> k ubezpe<70>en<65>, <20>e jsi v Norm<72>ln<6C>m m<>du.
|
||||
|
||||
2. P<>esu<73> kurzor n<><6E>e na <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
3. P<>esu<73> kurzor na konec spr<70>vn<76> v<>ty (ZA prvn<76> te<74>ku).
|
||||
|
||||
4. Napi<70> d$ ,aby jsi smazal znaky a<> do konce <20><>dku.
|
||||
|
||||
---> N<>kdo napsal konec t<>to v<>ty dvakr<6B>t. konec t<>to v<>ty dvakr<6B>t.
|
||||
|
||||
|
||||
5. P<>ejdi na lekci 2.3 pro pochopen<65> toho, co se stalo.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.3: ROZ<4F>I<EFBFBD>OVAC<41> P<><50>KAZY A OBJEKTY
|
||||
|
||||
|
||||
Form<72>t mazac<61>ho p<><70>kazu d je n<>sleduj<75>c<EFBFBD>:
|
||||
|
||||
[<5B><>slo] d objekt NEBO d [<5B><>slo] objekt
|
||||
Kde:
|
||||
<20><>slo - ud<75>v<EFBFBD> kolikr<6B>t se p<><70>kaz vykon<6F> (voliteln<6C>, v<>choz<6F>=1).
|
||||
d - je p<><70>kaz maz<61>n<EFBFBD>.
|
||||
objekt - ud<75>v<EFBFBD> na <20>em se p<><70>kaz vykon<6F>v<EFBFBD> (vypsan<61> n<><6E>e).
|
||||
|
||||
Kr<4B>tk<74> v<>pis objekt<6B>:
|
||||
w - od kurzoru do konce slova, v<>etn<74> mezer.
|
||||
e - od kurzoru do konce slova, BEZ mezer.
|
||||
$ - od kurzoru do konce <20><>dku.
|
||||
|
||||
POZN<EFBFBD>MKA: Stla<6C>en<65>m kl<6B>vesy objektu v Norm<72>ln<6C>m m<>du se kurzor p<>esune na
|
||||
m<>sto up<75>esn<73>n<EFBFBD> ve v<>pisu objekt<6B>.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.4: V<>JIMKA Z 'P<><50>KAZ-OBJEKT'
|
||||
|
||||
|
||||
** Naps<70>n<EFBFBD>m dd sma<6D>e<EFBFBD> cel<65> <20><>dek. **
|
||||
|
||||
Vzhledem k <20>astosti maz<61>n<EFBFBD> cel<65>ho <20><>dku se auto<74>i Vimu rozhodli, <20>e bude
|
||||
jednodu<64><75> napsat prost<73> dv<64> d k smaz<61>n<EFBFBD> cel<65>ho <20><>dku.
|
||||
|
||||
1. P<>esu<73> kurzor na druh<75> <20><>dek spodn<64>ho textu.
|
||||
2. Napi<70> dd pro smaz<61>n<EFBFBD> <20><>dku.
|
||||
3. P<>ejdi na <20>tvrt<72> <20><>dek.
|
||||
4. Napi<70> 2dd (vzpome<6D> si <20><>slo-p<><70>kaz-objekt) pro smaz<61>n<EFBFBD> dvou <20><>dk<64>.
|
||||
|
||||
1) R<><52>e jsou <20>erven<65>,
|
||||
2) Bl<42>to je z<>bavn<76>,
|
||||
3) Fialky jsou modr<64>,
|
||||
4) M<>m auto,
|
||||
5) Hodinky ukazuj<75> <20>as,
|
||||
6) Cukr je sladk<64>,
|
||||
7) A to jsi i ty.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.5: P<><50>KAZ UNDO
|
||||
|
||||
|
||||
** Stla<6C> u pro vr<76>cen<65> posledn<64>ho p<><70>kazu, U pro celou <20><>dku. **
|
||||
|
||||
1. P<>esu<73> kurzor n<><6E>e na <20><>dek ozna<6E>en<65> ---> a p<>em<65>sti ho na prvn<76> chybu.
|
||||
2. Napi<70> x pro smaz<61>n<EFBFBD> prvn<76>ho necht<68>n<EFBFBD>ho znaku.
|
||||
3. Te<54> napi<70> u <20><>m<EFBFBD> vr<76>t<EFBFBD><74> zp<7A>t posledn<64> vykonan<61> p<><70>kaz.
|
||||
4. Nyn<79> oprav v<>echny chyby na <20><>dku pomoc<6F> p<><70>kazu x .
|
||||
5. Napi<70> velk<6C> U <20><>m<EFBFBD> vr<76>t<EFBFBD><74> <20><>dek do p<>vodn<64>ho stavu.
|
||||
6. Te<54> napi<70> u n<>kolikr<6B>t, <20><>m<EFBFBD> vr<76>t<EFBFBD><74> zp<7A>t p<><70>kaz U .
|
||||
7. Stla<6C> CTRL-R (kl<6B>vesu CTRL dr<64> stla<6C>enou a stiskni R) n<>kolikr<6B>t,
|
||||
<20><>m<EFBFBD> vr<76>t<EFBFBD><74> zp<7A>t p<>edt<64>m vr<76>cen<65> p<><70>kazy (redo).
|
||||
|
||||
---> Opprav chybby nna toomto <20><>dku a nahra<72> je pommoc<6F> undo.
|
||||
|
||||
8. Toto jsou velmi u<>ite<74>n<EFBFBD> p<><70>kazy. Nyn<79> p<>ejdi na souhrn Lekce 2.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<55> LEKCE 2
|
||||
|
||||
|
||||
1. Pro smaz<61>n<EFBFBD> znak<61> od kurzoru do konce slova napi<70>: dw
|
||||
|
||||
2. Pro smaz<61>n<EFBFBD> znak<61> od kurzoru do konce <20><>dku napi<70>: d$
|
||||
|
||||
3. Pro smaz<61>n<EFBFBD> cel<65>ho <20><>dku napi<70>: dd
|
||||
|
||||
4. Form<72>t p<><70>kazu v Norm<72>ln<6C>m m<>du je:
|
||||
|
||||
[<5B><>slo] p<><70>kaz objekt NEBO p<><70>kaz [<5B><>slo] objekt
|
||||
kde:
|
||||
<20><>slo - ud<75>v<EFBFBD> po<70>et opakov<6F>n<EFBFBD> p<><70>kazu
|
||||
p<><70>kaz - ud<75>v<EFBFBD> co je t<>eba vykonat, nap<61><70>klad d ma<6D>e
|
||||
objekt - ud<75>v<EFBFBD> rozsah p<><70>kazu, nap<61><70>klad w (slovo),
|
||||
$ (do konce <20><>dku), atd.
|
||||
|
||||
5. Pro vr<76>cen<65> p<>ede<64>l<EFBFBD> <20>innosti, napi<70>: u (mal<61> u)
|
||||
Pro vr<76>cen<65> v<>ech <20>prav na <20><>dku napi<70>: U (velk<6C> U)
|
||||
Pro vr<76>cen<65> vr<76>cen<65>ch <20>prav (redo) napi<70>: CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.1: P<><50>KAZ VLO<4C>IT
|
||||
|
||||
|
||||
** P<><50>ka p vlo<6C><6F> posledn<64> vymazan<61> text za kurzor. **
|
||||
|
||||
1. P<>esu<73> kurzor n<><6E>e na posledn<64> <20><>dek textu.
|
||||
|
||||
2. Napi<70> dd pro smaz<61>n<EFBFBD> <20><>dku a jeho ulo<6C>en<65> do bufferu.
|
||||
|
||||
3. P<>esu<73> kurzor V݊E tam, kam smazan<61> <20><>dek pat<61><74>.
|
||||
|
||||
4. V Norm<72>ln<6C>m m<>du napi<70> p pro op<6F>tn<74> vlo<6C>en<65> <20><>dku.
|
||||
|
||||
5. Opakuj kroky 2 a<> 4 dokud <20><>dky nebudou ve spr<70>vn<76>m po<70>ad<61>.
|
||||
|
||||
d) Tak<61> se dok<6F><6B>e<EFBFBD> vzd<7A>l<EFBFBD>vat?
|
||||
b) Fialky jsou modr<64>,
|
||||
c) Inteligence se u<><75>,
|
||||
a) R<><52>e jsou <20>erven<65>,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.2: P<><50>KAZ NAHRAZEN<45>
|
||||
|
||||
|
||||
** Naps<70>n<EFBFBD>m r a znaku se nahrad<61> znak pod kurzorem. **
|
||||
|
||||
1. P<>esu<73> kurzor n<><6E>e na prvn<76> <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. P<>esu<73> kurzor na za<7A><61>tek prvn<76> chyby.
|
||||
|
||||
3. Napi<70> r a potom znak, kter<65> nahrad<61> chybu.
|
||||
|
||||
4. Opakuj kroky 2 a<> 3 dokud nen<65> prvn<76> <20><>dka spr<70>vn<76>.
|
||||
|
||||
---> Kdi<64> byl pz<70>n tento <20><>deg, n<>kdu stla<6C>il <20>paqn<71> kl<6B>vesy!
|
||||
---> Kdy<64> byl ps<70>n tento <20><>dek, n<>kdo stla<6C><61>l <20>patn<74> kl<6B>vesy!
|
||||
|
||||
5. Nyn<79> p<>ejdi na Lekci 3.2.
|
||||
|
||||
POZN<EFBFBD>MKA: Zapamatuj si, <20>e by ses m<>l u<>it pou<6F><75>v<EFBFBD>n<EFBFBD>m, ne zapamatov<6F>n<EFBFBD>m.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.3: P<><50>KAZ <20>PRAVY
|
||||
|
||||
|
||||
** Pokud chce<63> zm<7A>nit <20><>st nebo cel<65> slovo, napi<70> cw . **
|
||||
|
||||
1. P<>esu<73> kurzor n<><6E>e na prvn<76> <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. Um<55>sti kurzor na p<>smeno i v slov<6F> <20>i<EFBFBD>ok.
|
||||
|
||||
3. Napi<70> cw a oprav slovo (v tomto p<><70>pad<61> napi<70> '<27>dek'.)
|
||||
|
||||
4. Stla<6C> <ESC> a p<>ejdi na dal<61><6C> chybu (prvn<76> znak, kter<65> t<>eba zm<7A>nit.)
|
||||
|
||||
5. Opakuj kroky 3 a<> 4 dokud nen<65> prvn<76> v<>ta stejn<6A> jako ta druh<75>.
|
||||
|
||||
---> Tento <20>i<EFBFBD>ok m<> n<>kolik skic, kter<65> psadoinsa zm<7A>nit pasdgf p<><70>kazu.
|
||||
---> Tento <20><>dek m<> n<>kolik slov, kter<65> pot<6F>ebuj<75> zm<7A>nit pomoc<6F> p<><70>kazu.
|
||||
|
||||
V<EFBFBD>imni si, <20>e cw nejen nahrazuje slovo, ale tak<61> p<>em<65>st<73> do vkl<6B>d<EFBFBD>n<EFBFBD>.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.4: V<>CE ZM<5A>N POU<4F>IT<49>M c
|
||||
|
||||
|
||||
** P<><50>kaz pro <20>pravu se dru<72><75> se stejn<6A>mi objekty jako ten pro maz<61>n<EFBFBD>. **
|
||||
|
||||
1. P<><50>kaz pro <20>pravu pracuje stejn<6A> jako pro maz<61>n<EFBFBD>. Form<72>t je:
|
||||
|
||||
[<5B><>slo] c objekt NEBO c [<5B><>slo] objekt
|
||||
|
||||
2. Objekty jsou tak<61> shodn<64>, jako nap<61>.: w (slovo), $ (konec <20><>dku), atd.
|
||||
|
||||
3. P<>ejdi n<><6E>e na prvn<76> <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
4. P<>esu<73> kurzor na prvn<76> rozd<7A>l.
|
||||
|
||||
5. Napi<70> c$ pro upraven<65> zbytku <20><>dku podle toho druh<75>ho a stla<6C> <ESC>.
|
||||
|
||||
---> Konec tohoto <20><>dku pot<6F>ebuje pomoc, aby byl jako ten druh<75>.
|
||||
---> Konec tohoto <20><>dku pot<6F>ebuje opravit pou<6F>it<69>m p<><70>kazu c$ .
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<55> LEKCE 3
|
||||
|
||||
|
||||
1. Pro vlo<6C>en<65> textu, kter<65> byl smaz<61>n, napi<70> p . To vlo<6C><6F> smazan<61> text
|
||||
ZA kurzor (pokud byl <20><>dek smazan<61>, p<>ejde na <20><>dek pod kurzorem).
|
||||
|
||||
2. Pro nahrazen<65> znaku pod kurzorem, napi<70> r a potom znak, kter<65>m
|
||||
chce<63> p<>vodn<64> znak nahradit.
|
||||
|
||||
3. P<><50>kaz na upravov<6F>n<EFBFBD> umo<6D><6F>uje zm<7A>nit specifikovan<61> objekt od kurzoru
|
||||
do konce objektu. Nap<61><70>klad: Napi<70> cw ,<2C><>m<EFBFBD> zm<7A>n<EFBFBD><6E> text od pozice
|
||||
kurzoru do konce slova, c$ zm<7A>n<EFBFBD> text do konce <20><>dku.
|
||||
|
||||
4. Form<72>t pro nahrazov<6F>n<EFBFBD> je:
|
||||
|
||||
[<5B><>slo] c objekt NEBO c [<5B><>slo] objekt
|
||||
|
||||
Nyn<EFBFBD> p<>ejdi na n<>sleduj<75>c<EFBFBD> lekci.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.1: POZICE A STATUS SOUBORU
|
||||
|
||||
|
||||
** Stla<6C> CTRL-g pro zobrazen<65> sv<73> pozice v souboru a statusu souboru.
|
||||
Stla<6C> SHIFT-G pro p<>echod na <20><>dek v souboru. **
|
||||
|
||||
Pozn<7A>mka: P<>e<EFBFBD>ti si celou lekci ne<6E> za<7A>ne<6E> vykon<6F>vat kroky!!
|
||||
|
||||
1. Dr<44> kl<6B>vesu Ctrl stla<6C>enou a stiskni g . Vespod obrazovky se zobraz<61>
|
||||
stavov<6F> <20><>dek s n<>zvem souboru a <20><>dkou na kter<65> se nach<63>z<EFBFBD><7A>. Zapamatuj
|
||||
si <20><>slo <20><>dku pro krok 3.
|
||||
|
||||
2. Stla<6C> shift-G pro p<>esun na konec souboru.
|
||||
|
||||
3. Napi<70> <20><>slo <20><>dku na kter<65>m si se nach<63>zel a stla<6C> shift-G. To t<>
|
||||
vr<76>t<EFBFBD> na <20><>dek, na kter<65>m jsi d<><64>ve stiskl Ctrl-g.
|
||||
(Kdy<64> p<><70>e<EFBFBD> <20><>sla, tak se NEZOBRAZUJ<55> na obrazovce.)
|
||||
|
||||
4. Pokud se c<>t<EFBFBD><74> schopn<70> vykonat tyto kroky, vykonej je.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.2: P<><50>KAZ VYHLED<45>V<EFBFBD>N<EFBFBD>
|
||||
|
||||
|
||||
** Napi<70> / n<>sledovan<61> <20>et<65>zcem pro vyhled<65>n<EFBFBD> onoho <20>et<65>zce. **
|
||||
|
||||
1. Stiskni / v Norm<72>ln<6C>m m<>du. V<>imni si, <20>e tento znak se spolu s
|
||||
kurzorem zobraz<61> v doln<6C> <20><>sti obrazovky jako p<><70>kaz : .
|
||||
|
||||
2. Nyn<79> napi<70> 'chhybba' <ENTER>. To je slovo, kter<65> chce<63> vyhledat.
|
||||
|
||||
3. Pro vyhled<65>n<EFBFBD> dal<61><6C>ho v<>sledku stejn<6A>ho <20>et<65>zce, jednodu<64>e stla<6C> n .
|
||||
Pro vyhled<65>n<EFBFBD> dal<61><6C>ho v<>sledku stejn<6A>ho <20>et<65>zce opa<70>n<EFBFBD>m sm<73>rem, stiskni
|
||||
Shift-N.
|
||||
|
||||
4. Pokud chce<63> vyhledat <20>et<65>zec v opa<70>n<EFBFBD>m sm<73>ru, pou<6F>ij p<><70>kaz ? m<>sto
|
||||
p<><70>kazu / .
|
||||
|
||||
---> "chhybba" nen<65> zp<7A>sob, jak hl<68>skovat chyba; chhybba je chyba.
|
||||
|
||||
Pozn<EFBFBD>mka: Kdy<64> vyhled<65>v<EFBFBD>n<EFBFBD> dos<6F>hne konce souboru, bude pokra<72>ovat na jeho
|
||||
za<7A><61>tku.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.3: VYHLED<45>V<EFBFBD>N<EFBFBD> P<>ROV<4F> Z<>VORKY
|
||||
|
||||
|
||||
** Napi<70> % pro nalezen<65> p<>rov<6F> ),], nebo } . **
|
||||
|
||||
1. P<>em<65>sti kurzor na kteroukoli (, [, nebo { v <20><>dku ozna<6E>en<65>m --->.
|
||||
|
||||
2. Nyn<79> napi<70> znak % .
|
||||
|
||||
3. Kurzor se p<>em<65>st<73> na odpov<6F>daj<61>c<EFBFBD> z<>vorku.
|
||||
|
||||
4. Stla<6C> % pro p<>esun kurzoru zp<7A>t na otv<74>raj<61>c<EFBFBD> z<>vorku.
|
||||
|
||||
---> Toto ( je testovac<61> <20><>dek ('s, ['s ] a {'s } v n<>m. ))
|
||||
|
||||
Pozn<EFBFBD>mka: Toto je velmi u<>ite<74>n<EFBFBD> p<><70> lad<61>n<EFBFBD> programu s chyb<79>j<EFBFBD>c<EFBFBD>mi
|
||||
uzav<61>rac<61>mi z<>vorkami.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.4: ZP<5A>SOB JAK ZM<5A>NIT CHYBY
|
||||
|
||||
|
||||
** Napi<70> :s/star<61>/nov<6F>/g pro nahrazen<65> slova 'nov<6F>' za 'star<61>'. **
|
||||
|
||||
1. P<>esu<73> kurzor na <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. Napi<70> :s/dobr<62><72>/dobr<62> <ENTER> . V<>imni si, <20>e tento p<><70>kaz zm<7A>n<EFBFBD> pouze
|
||||
prvn<76> v<>skyt v <20><>dku.
|
||||
|
||||
3. Nyn<79> napi<70> :s/dobr<62><72>/dobr<62>/g co<63> znamen<65> celkov<6F> nahrazen<65> v <20><>dku.
|
||||
Toto nahrad<61> v<>echny v<>skyty v <20><>dku.
|
||||
|
||||
---> dobr<62><72> suroviny a dobr<62><72> n<><6E>in<69> jsou z<>kladem dobr<62><72> kuchyn<79>.
|
||||
|
||||
4. Pro zm<7A>nu v<>ech v<>skyt<79> <20>et<65>zce mezi dv<64>ma <20><>dky,
|
||||
Napi<70> :#,#s/star<61>/nov<6F>/g kde #,# jsou <20><>sla on<6F>ch <20><>dek.
|
||||
Napi<70> :%s/star<61>/nov<6F>/g pro zm<7A>nu v<>ech v<>skyt<79> v cel<65>m souboru.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<55> LEKCE 4
|
||||
|
||||
|
||||
1. Ctrl-g vyp<79><70>e tvou pozici v souboru a status souboru.
|
||||
Shift-G t<> p<>em<65>st<73> na konec souboru. <20><>slo n<>sledovan<61>
|
||||
Shift-G t<> p<>esune na dan<61> <20><>slo <20><>dku.
|
||||
|
||||
2. Naps<70>n<EFBFBD> / n<>sledovan<61> <20>et<65>zcem vyhled<65> <20>et<65>zec sm<73>rem DOP<4F>EDU.
|
||||
Naps<70>n<EFBFBD> ? n<>sledovan<61> <20>et<65>zcem vyhled<65> <20>et<65>zec sm<73>rem DOZADU.
|
||||
Naps<70>n<EFBFBD> n po vyhled<65>v<EFBFBD>n<EFBFBD> najde n<>sleduj<75>c<EFBFBD> v<>skyt <20>et<65>zce ve stejn<6A>m
|
||||
sm<73>ru, Shift-N ve sm<73>ru opa<70>n<EFBFBD>m.
|
||||
|
||||
3. Stisknut<75> % kdy<64> je kurzor na (,),[,],{, nebo } najde odpov<6F>daj<61>c<EFBFBD>
|
||||
p<>rovou z<>vorku.
|
||||
|
||||
4. Pro nahrazen<65> nov<6F>ho za prvn<76> star<61> v <20><>dku napi<70> :s/star<61>/nov<6F>
|
||||
Pro nahrazen<65> nov<6F>ho za v<>echny star<61> v <20><>dku napi<70> :s/star<61>/nov<6F>/g
|
||||
Pro nahrazen<65> <20>et<65>zc<7A> mezi dv<64>mi <20><>dkami # napi<70> :#,#s/star<61>/nov<6F>/g
|
||||
Pro nahrazen<65> v<>ech v<>skyt<79> v souboru napi<70> :%s/star<61>/nov<6F>/g
|
||||
Pro potvrzen<65> ka<6B>d<EFBFBD>ho nahrazen<65> p<>idej 'c' :%s/star<61>/nov<6F>/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.1: JAK VYKONAT VN<56>J<EFBFBD><4A> P<><50>KAZ
|
||||
|
||||
|
||||
** Napi<70> :! n<>sledovan<61> vn<76>j<EFBFBD><6A>m p<><70>kazem pro spu<70>t<EFBFBD>n<EFBFBD> p<><70>kazu. **
|
||||
|
||||
1. Napi<70> obvykl<6B> p<><70>kaz : , kter<65> um<75>st<73> kurzor na spodek obrazovky
|
||||
To umo<6D>n<EFBFBD> napsat p<><70>kaz.
|
||||
|
||||
2. Nyn<79> stiskni ! (vyk<79>i<EFBFBD>n<EFBFBD>k). To umo<6D>n<EFBFBD> vykonat jak<61>koliv vn<76>j<EFBFBD><6A>
|
||||
p<><70>kaz z p<><70>kazov<6F>ho <20><>dku.
|
||||
|
||||
3. Nap<61><70>klad napi<70> ls za ! a stiskni <ENTER>. Tento p<><70>kaz zobraz<61>
|
||||
obsah tv<74>ho adres<65><73>e jako v p<><70>kazov<6F>m <20><>dku.
|
||||
Vyzkou<6F>ej :!dir pokud ls nefunguje.
|
||||
|
||||
Pozn<EFBFBD>mka: Takto je mo<6D>n<EFBFBD> vykonat jak<61>koliv p<><70>kaz.
|
||||
|
||||
Pozn<EFBFBD>mka: V<>echny p<><70>kazy : mus<75> b<>t dokon<6F>en<65> stisknut<75>m <ENTER>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.2: V<>CE O UKL<4B>D<EFBFBD>N<EFBFBD> SOUBOR<4F>
|
||||
|
||||
|
||||
** Pro ulo<6C>en<65> zm<7A>n v souboru napi<70> :w SOUBOR. **
|
||||
|
||||
1. Napi<70> :!dir nebo :!ls pro v<>pis aktu<74>ln<6C>ho adres<65><73>e.
|
||||
U<> v<><76>, <20>e za t<>mto mus<75><73> stisknout <ENTER>.
|
||||
|
||||
2. Vyber si n<>zev souboru, kter<65> je<6A>t<EFBFBD> neexistuje, nap<61><70>klad TEST.
|
||||
|
||||
3. Nyn<79> napi<70>: :w TEST (kde TEST je vybran<61> n<>zev souboru.)
|
||||
|
||||
4. To ulo<6C><6F> cel<65> soubor (V<>uka Vimu) pod n<>zvem TEST.
|
||||
Pro ov<6F><76>en<65> napi<70> znovu :!dir , <20><>m<EFBFBD> zobraz<61><7A> obsah adres<65><73>e.
|
||||
|
||||
Pozn<EFBFBD>mka: Jakmile ukon<6F><6E><EFBFBD> Vim a znovu ho spust<73><74> s n<>zvem souboru TEST,
|
||||
soubor bude p<>esn<73> kopie v<>uky, kdy<64> si ji ukl<6B>dal.
|
||||
|
||||
5. Nyn<79> odstra<72> soubor naps<70>n<EFBFBD>m (MS-DOS): :!del TEST
|
||||
nebo (Unix): :!rm TEST
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.3: V<>B<EFBFBD>ROV<4F> P<><50>KAZ ULO<4C>EN<45>
|
||||
|
||||
|
||||
** Pro ulo<6C>en<65> <20><>sti souboru napi<70> :#,# w SOUBOR **
|
||||
|
||||
1. Je<4A>t<EFBFBD> jednou napi<70> :!dir nebo :!ls pro v<>pis aktu<74>ln<6C>ho adres<65><73>e
|
||||
a vyber vhodn<64> n<>zev souboru jako nap<61>. TEST.
|
||||
|
||||
2. P<>esu<73> kurzor na vrch t<>to str<74>nky a stiskni Ctrl-g pro zobrazen<65>
|
||||
<20><>sla <20><>dku. ZAPAMATUJ SI TOTO <20><>SLO!
|
||||
|
||||
3. Nyn<79> se p<>esu<73> na spodek t<>to str<74>nky a op<6F>t stiskni Ctrl-g.
|
||||
ZAPAMATUJ SI I <20><>SLO TOHOTO <20><>DKU!
|
||||
|
||||
4. Pro ulo<6C>en<65> POUZE <20><>sti souboru, napi<70> :#,# w TEST kde #,# jsou
|
||||
<20><>sla dvou zapamatovan<61>ch <20><>dk<64> (vrch, spodek) a TEST je n<>zev souboru.
|
||||
|
||||
5. Znova se ujisti, <20>e tam ten soubor je pomoc<6F> :!dir ale NEODSTRA<52>UJ ho.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.4: SLU<4C>OV<4F>N<EFBFBD> SOUBOR<4F>
|
||||
|
||||
|
||||
** K vlo<6C>en<65> obsahu souboru napi<70> :r N<>ZEV_SOUBORU **
|
||||
|
||||
1. Napi<70> :!dir pro uji<6A>t<EFBFBD>n<EFBFBD>, <20>e soubor TEST st<73>le existuje.
|
||||
|
||||
2. P<>esu<73> kurzor na vrch t<>to str<74>nky.
|
||||
|
||||
POZN<EFBFBD>MKA: Po vykon<6F>n<EFBFBD> kroku 3 uvid<69><64> lekci 5.3. Potom se op<6F>t p<>esu<73> dol<6F>
|
||||
na tuto lekci.
|
||||
|
||||
3. Nyn<79> vlo<6C> soubor TEST pou<6F>it<69>m p<><70>kazu :r TEST kde TEST je n<>zev
|
||||
souboru.
|
||||
|
||||
POZN<EFBFBD>MKA: Soubor, kter<65> vkl<6B>d<EFBFBD><64> se vlo<6C><6F> od m<>sta, kde se nach<63>z<EFBFBD> kurzor.
|
||||
|
||||
4. Pro potvrzen<65> vlo<6C>en<65> souboru, p<>esu<73> kurzor zp<7A>t a v<>imni si, <20>e te<74>
|
||||
m<><6D> dv<64> kopie lekce 5.3, origin<69>l a souborovou verzi.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUT<55> LEKCE 5
|
||||
|
||||
|
||||
1. :!p<><70>kaz vykon<6F> vn<76>j<EFBFBD><6A> p<><70>kaz.
|
||||
|
||||
N<>kter<65> u<>ite<74>n<EFBFBD> p<><70>klady jsou:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - zobraz<61> obsah souboru.
|
||||
:!del SOUBOR :!rm SOUBOR - odstran<61> SOUBOR.
|
||||
|
||||
2. :w SOUBOR ulo<6C><6F> aktu<74>ln<6C> text jako SOUBOR na disk.
|
||||
|
||||
3. :#,#w SOUBOR ulo<6C><6F> <20><>dky od # do # do SOUBORU.
|
||||
|
||||
4. :r SOUBOR vybere z disku SOUBOR a vlo<6C><6F> ho do editovan<61>ho souboru
|
||||
za pozici kurzoru.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.1: P<><50>KAZ OTEV<45><56>T
|
||||
|
||||
|
||||
** Napi<70> o pro vlo<6C>en<65> <20><>dku pod kurzor a p<>epnut<75> do Vkl<6B>dac<61>ho m<>du. **
|
||||
|
||||
1. P<>em<65>sti kurzor n<><6E>e na <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. Napi<70> o (mal<61>) pro vlo<6C>en<65> <20><>dku POD kurzor a p<>epnut<75> do
|
||||
Vkl<6B>dac<61>ho m<>du.
|
||||
|
||||
3. Nyn<79> zkop<6F>ruj <20><>dek ozna<6E>en<65> ---> a stiskni <ESC> pro ukon<6F>en<65>
|
||||
Vkl<6B>dac<61>ho m<>du.
|
||||
|
||||
---> Po stisknut<75> o se kurzor p<>em<65>st<73> na vlo<6C>en<65> <20><>dek do Vkl<6B>dac<61>ho
|
||||
m<>du.
|
||||
|
||||
4. Pro otev<65>en<65> <20><>dku NAD kurzorem jednodu<64>e napi<70> velk<6C> O , m<>sto
|
||||
mal<61>ho o. Vyzkou<6F>ej si to na n<>sleduj<75>c<EFBFBD>m <20><>dku.
|
||||
Vlo<EFBFBD> <20><>dek nad t<>mto naps<70>n<EFBFBD>m Shift-O po um<75>st<73>n<EFBFBD> kurzoru na tento <20><>dek.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.2: P<><50>KAZ P<>IDAT
|
||||
|
||||
|
||||
** Stiskni a pro vlo<6C>en<65> textu ZA kurzor. **
|
||||
|
||||
1. P<>esu<73> kurzor na n<><6E>e na konec <20><>dky ozna<6E>en<65> --->
|
||||
stisknut<75>m $ v Norm<72>ln<6C>m m<>du.
|
||||
|
||||
2. Stiskni a (mal<61>) pro p<>id<69>n<EFBFBD> textu ZA znak, kter<65> je pod kurzorem.
|
||||
(Velk<6C> A p<>id<69> na konec <20><>dku.)
|
||||
|
||||
Pozn<EFBFBD>mka: T<>mto se vyhne<6E> stisknut<75> i , posledn<64>ho znaku, textu na vlo<6C>en<65>,
|
||||
<ESC>, kurzor doprava, a nakonec x na p<>id<69>v<EFBFBD>n<EFBFBD> na konec <20><>dku!
|
||||
|
||||
3. Nyn<79> dokon<6F><6E> prvn<76> <20><>dek. V<>imni si, <20>e p<>id<69>v<EFBFBD>n<EFBFBD> je vlastn<74> stejn<6A> jako
|
||||
Vkl<6B>dac<61> m<>d, krom<6F> m<>sta, kam se text vkl<6B>d<EFBFBD>.
|
||||
|
||||
---> Tento <20><>dek ti umo<6D><6F>uje nacvi<76>it
|
||||
---> Tento <20><>dek ti umo<6D><6F>uje nacvi<76>it p<>id<69>v<EFBFBD>n<EFBFBD> textu na konec <20><>dky.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.3: JIN<49> ZP<5A>SOB NAHRAZOV<4F>N<EFBFBD>
|
||||
|
||||
|
||||
** Napi<70> velk<6C> R pro nahrazen<65> v<>c ne<6E> jednoho znaku. **
|
||||
|
||||
1. P<>esu<73> kurzor na prvn<76> <20><>dek ozna<6E>en<65> --->.
|
||||
|
||||
2. Um<55>sti kurzor na za<7A><61>tek prvn<76>ho slova, kter<65> je odli<6C>n<EFBFBD> od druh<75>ho
|
||||
<20><>dku ozna<6E>en<65>ho ---> (slovo 'posledn<64>').
|
||||
|
||||
3. Nyn<79> stiskni R a nahra<72> zbytek textu na prvn<76>m <20><>dku p<>eps<70>n<EFBFBD>m
|
||||
star<61>ho textu tak, aby byl prvn<76> <20><>dek stejn<6A> jako ten druh<75>.
|
||||
|
||||
---> Pro upraven<65> prvn<76>ho <20><>dku do tvaru toho posledn<64> na stran<61> pou<6F>ij kl.
|
||||
---> Pro upraven<65> prvn<76>ho <20><>dku do tvaru toho druh<75>ho, napi<70> R a nov<6F> text.
|
||||
|
||||
4. V<>imni si, <20>e jakmile stiskne<6E> <ESC> v<>echen nezm<7A>n<EFBFBD>n<EFBFBD> text z<>st<73>v<EFBFBD>.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.4: NASTAVEN<45> MO<4D>NOST<53>
|
||||
|
||||
** Nastav mo<6D>nost, <20>e vyhled<65>v<EFBFBD>n<EFBFBD> anebo nahrazov<6F>n<EFBFBD> nedb<64> velikosti p<>smen **
|
||||
|
||||
1. Vyhledej <20>et<65>zec 'ignore' naps<70>n<EFBFBD>m:
|
||||
/ignore
|
||||
Zopakuj n<>kolikr<6B>t stisknut<75> kl<6B>vesy n.
|
||||
|
||||
2. Nastav mo<6D>nost 'ic' (Ignore case) naps<70>n<EFBFBD>m p<><70>kazu:
|
||||
:set ic
|
||||
|
||||
3. Nyn<79> znovu vyhledej 'ignore' stisknut<75>m: n
|
||||
N<>kolikr<6B>t hled<65>n<EFBFBD> zopakuj stisknut<75>m kl<6B>vesy n.
|
||||
|
||||
4. Nastav mo<6D>nosti 'hlsearch' a 'incsearch':
|
||||
:set hls is
|
||||
|
||||
5. Nyn<79> znovu vykonej vyhled<65>vac<61> p<><70>kaz a sleduj, co se stane:
|
||||
/ignore
|
||||
|
||||
6. Pro vypnut<75> zv<7A>raz<61>ov<6F>n<EFBFBD> v<>sledk<64> napi<70>:
|
||||
:nohlsearch
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRHNUT<55> LEKCE 6
|
||||
|
||||
|
||||
1. Stisknut<75> o otev<65>e nov<6F> <20><>dek POD kurzorem a um<75>st<73> kurzor na vlo<6C>en<65>
|
||||
<20><>dek do Vkl<6B>dac<61>ho m<>du.
|
||||
Naps<70>n<EFBFBD> velk<6C>ho O otev<65>e <20><>dek NAD <20><>dkem, na kter<65>m je kurzor.
|
||||
|
||||
2. Stiskni a pro vlo<6C>en<65> textu ZA znak na pozici kurzoru.
|
||||
Naps<70>n<EFBFBD> velk<6C>ho A automaticky p<>id<69> text na konec <20><>dku.
|
||||
|
||||
3. Stisknut<75> velk<6C>ho R p<>epne do Nahrazovac<61>ho m<>du, dokud
|
||||
nestiskne<6E> <ESC> pro jeho ukon<6F>en<65>.
|
||||
|
||||
4. Naps<70>n<EFBFBD> ":set xxx" nastav<61> mo<6D>nosti "xxx".
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LEKCE 7: P<><50>KAZY ON-LINE N<>POV<4F>DY
|
||||
|
||||
|
||||
** Pou<6F><75>vej on-line syst<73>m n<>pov<6F>dy **
|
||||
|
||||
Vim m<> obs<62>hl<68> on-line syst<73>m n<>pov<6F>dy. Pro za<7A><61>tek vyzkou<6F>ej jeden z
|
||||
n<>sleduj<75>c<EFBFBD>ch:
|
||||
- stiskni kl<6B>vesu <HELP> (pokud ji m<><6D>)
|
||||
- stiskni kl<6B>vesu <F1> (pokud ji m<><6D>)
|
||||
- napi<70> :help <ENTER>
|
||||
|
||||
Napi<70> :q <ENTER> pro uzav<61>en<65> okna n<>pov<6F>dy.
|
||||
|
||||
M<><4D>e<EFBFBD> naj<61>t n<>pov<6F>du k jak<61>mukoliv t<>matu p<>id<69>n<EFBFBD>m argumentu k
|
||||
p<><70>kazu ":help". Zkus tyto (nezapome<6D> stisknout <ENTER>):
|
||||
|
||||
:help w
|
||||
:help c_<T
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LEKCE 8: VYTVO<56>EN<45> INICIALIZA<5A>N<EFBFBD>HO SKRIPTU
|
||||
|
||||
** Zapni funkce editoru Vim **
|
||||
|
||||
Vim m<> daleko v<>ce funkc<6B> ne<6E> Vi, ale v<>t<EFBFBD>ina z nich je vypnuta ve v<>choz<6F>m
|
||||
nastaven<65>. Pro zapnut<75> n<>kter<65>ch vytvo<76> soubor "vimrc".
|
||||
|
||||
1. Za<5A>ni upravovat soubor "vimrc". Toto z<>vis<69> na pou<6F>it<69>m syst<73>mu:
|
||||
:edit ~/.vimrc pro Unix
|
||||
:edit $VIM/_vimrc pro MS-Windows
|
||||
|
||||
2. Nyn<79> <20>ti uk<75>zkov<6F> "vimrc" soubor:
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Ulo<6C> soubor pomoc<6F>:
|
||||
|
||||
:write
|
||||
|
||||
Po p<><70><EFBFBD>t<EFBFBD>m startu Vim se zapne zv<7A>raz<61>ov<6F>n<EFBFBD> syntaxe.
|
||||
Do souboru "vimrc" m<><6D>e<EFBFBD> p<>idat v<>echny svoje up<75>ednost<73>ovan<61> nastaven<65>.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Toto ukon<6F>uje v<>uku Vim, kter<65> byla my<6D>len<65> jako stru<72>n<EFBFBD> p<>ehled
|
||||
editoru Vim, tak akor<6F>t posta<74>uj<75>c<EFBFBD> pro lehk<68> a obstojn<6A> pou<6F><75>v<EFBFBD>n<EFBFBD> editoru.
|
||||
Tato v<>uka m<> daleko od <20>plnosti, proto<74>e Vim obsahuje podstatn<74> v<>ce
|
||||
p<><70>kaz<61>. D<>le si p<>e<EFBFBD>ti u<>ivatelsk<73> manu<6E>l: ":help user-manual".
|
||||
|
||||
Pro dal<61><6C> studium je doporu<72>en<65> kniha:
|
||||
Vim - Vi Improved - od Steve Oualline
|
||||
Nakladatel: New Riders
|
||||
Prvn<76> kniha ur<75>en<65> pro Vim. Obzvl<76><6C>t<EFBFBD> vhodn<64> pro za<7A><61>te<74>n<EFBFBD>ky.
|
||||
Obsahuje mno<6E>stv<74> p<><70>klad<61> a obr<62>zk<7A>.
|
||||
viz http://iccf-holland.org/click5.html
|
||||
|
||||
Tato kniha je star<61><72> a v<>ce v<>novan<61> Vi ne<6E> Vim, ale tak<61> doporu<72>en<65>:
|
||||
Learning the Vi Editor - od Linda Lamb
|
||||
Nakladatel: O'Reilly & Associates Inc.
|
||||
Je to dobr<62> kniha pro z<>sk<73>n<EFBFBD> v<>domost<73> t<>m<EFBFBD><6D> o v<>em, co m<><6D>ete s Vi d<>lat.
|
||||
<20>est<73> vyd<79>n<EFBFBD> obsahuje t<><74> informace o Vim.
|
||||
|
||||
Tato v<>uka byla napsan<61> autory Michael C. Pierce a Robert K. Ware,
|
||||
Colorado School of Mines s pou<6F>it<69>m my<6D>lenek od: Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Upravil pro Vim: Bram Moolenaar.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
P<>eklad do <20>e<EFBFBD>tiny: Lubo<62> Turek
|
||||
E-Mail: lubos.turek@gmail.com
|
||||
2007 Feb 28
|
@ -1,812 +0,0 @@
|
||||
===============================================================================
|
||||
= V í t e j t e v t u t o r i a l u V I M - Verze 1.5 =
|
||||
===============================================================================
|
||||
|
||||
Vim je velmi výkonný editor, který má příliš mnoho příkazů na to, aby
|
||||
mohly být všechny vysvětlené ve výuce jako tato. Tato výuka obsahuje
|
||||
dostatečné množství příkazů na to, aby bylo možné používat Vim jako
|
||||
víceúčelový editor.
|
||||
|
||||
Přibližný čas potřebný ke zvládnutí této výuky je 25-30 minut, záleží
|
||||
na tom, kolik času strávíte přezkušováním.
|
||||
|
||||
Příkazy v lekcích upravují text. Vytvoř kopii tohoto souboru pro
|
||||
procvičování (při startu "vimtutor" je již toto kopie).
|
||||
|
||||
Je důležité pamatovat, že tato výuka je vytvořena pro výuku používáním.
|
||||
To znamená, že je potřeba si příkazy vyzkoušet pro jejich správné
|
||||
naučení. Pokud si jen čteš text, příkazy zapomeneš!
|
||||
|
||||
Nyní se přesvědčte, že Shift-Lock NENÍ stlačený a několikrát stiskněte
|
||||
klávesu j aby se kurzor posunul natolik, že lekce 1.1 zaplní celou
|
||||
obrazovku.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.1: POHYB KURZORU
|
||||
|
||||
|
||||
** Pro pohyb kurzoru používej klávesy h,j,k,l jak je znázorněno níže. **
|
||||
^
|
||||
k Funkce: Klávesa h je vlevo a vykoná pohyb vlevo.
|
||||
< h l > Klávesa l je vpravo a vykoná pohyb vpravo.
|
||||
j Klávesa j vypadá na šipku dolu.
|
||||
v
|
||||
1. Pohybuj kurzorem po obrazovce dokud si na to nezvykneš.
|
||||
|
||||
2. Drž klávesu pro pohyb dolu (j), dokud se její funkce nezopakuje.
|
||||
---> Teď víš jak se přesunout na následující lekci.
|
||||
|
||||
3. Použitím klávesy dolu přejdi na lekci 1.2.
|
||||
|
||||
Poznámka: Pokud si někdy nejsi jist něčím, co jsi napsal, stlač <ESC> pro
|
||||
přechod do Normálního módu. Poté přepiš požadovaný příkaz.
|
||||
|
||||
Poznámka: Kurzorové klávesy také fungují, avšak používání hjkl je rychlejší
|
||||
jakmile si na něj zvykneš.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.2: SPUŠTĚNÍ A UKONČENÍ VIM
|
||||
|
||||
|
||||
!! POZNÁMKA: Před vykonáním těchto kroků si přečti celou lekci!!
|
||||
|
||||
1. Stlač <ESC> (pro ujištění, že se nacházíš v Normálním módu).
|
||||
|
||||
2. Napiš: :q! <ENTER>.
|
||||
|
||||
---> Tímto ukončíš editor BEZ uložení změn, které si vykonal.
|
||||
Pokud chceš uložit změny a ukončit editor napiš:
|
||||
:wq <ENTER>
|
||||
|
||||
3. Až se dostaneš na příkazový řádek, napiš příkaz, kterým se dostaneš zpět
|
||||
do této výuky. To může být: vimtutor <ENTER>
|
||||
Běžně se používá: vim tutor <ENTER>
|
||||
|
||||
---> 'vim' znamená spuštění editoru, 'tutor' je soubor k editaci.
|
||||
|
||||
4. Pokud si tyto kroky spolehlivě pamatuješ, vykonej kroky 1 až 3, čímž
|
||||
ukončíš a znovu spustíš editor. Potom přesuň kurzor dolu na lekci 1.3.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.3: ÚPRAVA TEXTU - MAZÁNÍ
|
||||
|
||||
|
||||
** Stisknutím klávesy x v Normálním módu smažeš znak na místě kurzoru. **
|
||||
|
||||
1. Přesuň kurzor níže na řádek označený --->.
|
||||
|
||||
2. K odstranění chyb přejdi kurzorem na znak, který chceš smazat.
|
||||
|
||||
3. Stlač klávesu x k odstranění nechtěných znaků.
|
||||
|
||||
4. Opakuj kroky 2 až 4 dokud není věta správně.
|
||||
|
||||
---> Krááva skoččilla přess měssíc.
|
||||
|
||||
5. Pokud je věta správně, přejdi na lekci 1.4.
|
||||
|
||||
POZNÁMKA: Nesnaž se pouze zapamatovat předváděné příkazy, uč se je používáním.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 1.4: ÚPRAVA TEXTU - VKLÁDÁNÍ
|
||||
|
||||
|
||||
** Stlačení klávesy i v Normálním módu umožňuje vkládání textu. **
|
||||
|
||||
1. Přesuň kurzor na první řádek označený --->.
|
||||
|
||||
2. Pro upravení prvního řádku do podoby řádku druhého, přesuň kurzor na
|
||||
první znak za místo, kde má být text vložený.
|
||||
|
||||
3. Stlač i a napiš potřebný dodatek.
|
||||
|
||||
4. Po opravení každé chyby stlač <ESC> pro návrat do Normálního módu.
|
||||
Opakuj kroky 2 až 4 dokud není věta správně.
|
||||
|
||||
---> Nějaký txt na této .
|
||||
---> Nějaký text chybí na této řádce.
|
||||
|
||||
5. Pokud již ovládáš vkládání textu, přejdi na následující shrnutí.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUTÍ LEKCE 1
|
||||
|
||||
|
||||
1. Kurzorem se pohybuje pomocí šipek nebo klávesami hjkl.
|
||||
h (vlevo) j (dolu) k (nahoru) l (vpravo)
|
||||
|
||||
2. Pro spuštění Vimu (z příkazového řádku) napiš: vim SOUBOR <ENTER>
|
||||
|
||||
3. Pro ukončení Vimu napiš: <ESC> :q! <ENTER> bez uložení změn.
|
||||
anebo: <ESC> :wq <ENTER> pro uložení změn.
|
||||
|
||||
4. Pro smazání znaku pod kurzorem napiš v Normálním módu: x
|
||||
|
||||
5. Pro vkládání textu od místa kurzoru napiš v Normálním módu:
|
||||
i vkládaný text <ESC>
|
||||
|
||||
POZNÁMKA: Stlačení <ESC> tě přemístí do Normálního módu nebo zruší nechtěný
|
||||
a částečně dokončený příkaz.
|
||||
|
||||
Nyní pokračuj Lekcí 2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.1: PŘÍKAZY MAZÁNÍ
|
||||
|
||||
|
||||
** Příkaz dw smaže znaky do konce slova. **
|
||||
|
||||
1. Stlač <ESC> k ubezpečení, že jsi v Normálním módu.
|
||||
|
||||
2. Přesuň kurzor níže na řádek označený --->.
|
||||
|
||||
3. Přesuň kurzor na začátek slova, které je potřeba smazat.
|
||||
|
||||
4. Napiš dw , aby slovo zmizelo.
|
||||
|
||||
POZNÁMKA: Písmena dw se zobrazí na posledním řádku obrazovky jakmile je
|
||||
napíšeš. Když napíšeš něco špatně, stlač <ESC> a začni znova.
|
||||
|
||||
---> Jsou tu nějaká slova zábava, která nepatří list do této věty.
|
||||
|
||||
5. Opakuj kroky 3 až 4 dokud není věta správně a přejdi na lekci 2.2.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.2: VÍCE PŘÍKAZŮ MAZÁNÍ
|
||||
|
||||
|
||||
** Napsání příkazu d$ smaže vše až do konce řádky. **
|
||||
|
||||
1. Stlač <ESC> k ubezpečení, že jsi v Normálním módu.
|
||||
|
||||
2. Přesuň kurzor níže na řádek označený --->.
|
||||
|
||||
3. Přesuň kurzor na konec správné věty (ZA první tečku).
|
||||
|
||||
4. Napiš d$ ,aby jsi smazal znaky až do konce řádku.
|
||||
|
||||
---> Někdo napsal konec této věty dvakrát. konec této věty dvakrát.
|
||||
|
||||
|
||||
5. Přejdi na lekci 2.3 pro pochopení toho, co se stalo.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.3: ROZŠIŘOVACÍ PŘÍKAZY A OBJEKTY
|
||||
|
||||
|
||||
Formát mazacího příkazu d je následující:
|
||||
|
||||
[číslo] d objekt NEBO d [číslo] objekt
|
||||
Kde:
|
||||
číslo - udává kolikrát se příkaz vykoná (volitelné, výchozí=1).
|
||||
d - je příkaz mazání.
|
||||
objekt - udává na čem se příkaz vykonává (vypsané níže).
|
||||
|
||||
Krátký výpis objektů:
|
||||
w - od kurzoru do konce slova, včetně mezer.
|
||||
e - od kurzoru do konce slova, BEZ mezer.
|
||||
$ - od kurzoru do konce řádku.
|
||||
|
||||
POZNÁMKA: Stlačením klávesy objektu v Normálním módu se kurzor přesune na
|
||||
místo upřesněné ve výpisu objektů.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.4: VÝJIMKA Z 'PŘÍKAZ-OBJEKT'
|
||||
|
||||
|
||||
** Napsáním dd smažeš celý řádek. **
|
||||
|
||||
Vzhledem k častosti mazání celého řádku se autoři Vimu rozhodli, že bude
|
||||
jednoduší napsat prostě dvě d k smazání celého řádku.
|
||||
|
||||
1. Přesuň kurzor na druhý řádek spodního textu.
|
||||
2. Napiš dd pro smazání řádku.
|
||||
3. Přejdi na čtvrtý řádek.
|
||||
4. Napiš 2dd (vzpomeň si číslo-příkaz-objekt) pro smazání dvou řádků.
|
||||
|
||||
1) Růže jsou červené,
|
||||
2) Bláto je zábavné,
|
||||
3) Fialky jsou modré,
|
||||
4) Mám auto,
|
||||
5) Hodinky ukazují čas,
|
||||
6) Cukr je sladký,
|
||||
7) A to jsi i ty.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 2.5: PŘÍKAZ UNDO
|
||||
|
||||
|
||||
** Stlač u pro vrácení posledního příkazu, U pro celou řádku. **
|
||||
|
||||
1. Přesuň kurzor níže na řádek označený ---> a přemísti ho na první chybu.
|
||||
2. Napiš x pro smazání prvního nechtěného znaku.
|
||||
3. Teď napiš u čímž vrátíš zpět poslední vykonaný příkaz.
|
||||
4. Nyní oprav všechny chyby na řádku pomocí příkazu x .
|
||||
5. Napiš velké U čímž vrátíš řádek do původního stavu.
|
||||
6. Teď napiš u několikrát, čímž vrátíš zpět příkaz U .
|
||||
7. Stlač CTRL-R (klávesu CTRL drž stlačenou a stiskni R) několikrát,
|
||||
čímž vrátíš zpět předtím vrácené příkazy (redo).
|
||||
|
||||
---> Opprav chybby nna toomto řádku a nahraď je pommocí undo.
|
||||
|
||||
8. Toto jsou velmi užitečné příkazy. Nyní přejdi na souhrn Lekce 2.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUTÍ LEKCE 2
|
||||
|
||||
|
||||
1. Pro smazání znaků od kurzoru do konce slova napiš: dw
|
||||
|
||||
2. Pro smazání znaků od kurzoru do konce řádku napiš: d$
|
||||
|
||||
3. Pro smazání celého řádku napiš: dd
|
||||
|
||||
4. Formát příkazu v Normálním módu je:
|
||||
|
||||
[číslo] příkaz objekt NEBO příkaz [číslo] objekt
|
||||
kde:
|
||||
číslo - udává počet opakování příkazu
|
||||
příkaz - udává co je třeba vykonat, například d maže
|
||||
objekt - udává rozsah příkazu, například w (slovo),
|
||||
$ (do konce řádku), atd.
|
||||
|
||||
5. Pro vrácení předešlé činnosti, napiš: u (malé u)
|
||||
Pro vrácení všech úprav na řádku napiš: U (velké U)
|
||||
Pro vrácení vrácených úprav (redo) napiš: CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.1: PŘÍKAZ VLOŽIT
|
||||
|
||||
|
||||
** Příka p vloží poslední vymazaný text za kurzor. **
|
||||
|
||||
1. Přesuň kurzor níže na poslední řádek textu.
|
||||
|
||||
2. Napiš dd pro smazání řádku a jeho uložení do bufferu.
|
||||
|
||||
3. Přesuň kurzor VÝŠE tam, kam smazaný řádek patří.
|
||||
|
||||
4. V Normálním módu napiš p pro opětné vložení řádku.
|
||||
|
||||
5. Opakuj kroky 2 až 4 dokud řádky nebudou ve správném pořadí.
|
||||
|
||||
d) Také se dokážeš vzdělávat?
|
||||
b) Fialky jsou modré,
|
||||
c) Inteligence se učí,
|
||||
a) Růže jsou červené,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.2: PŘÍKAZ NAHRAZENÍ
|
||||
|
||||
|
||||
** Napsáním r a znaku se nahradí znak pod kurzorem. **
|
||||
|
||||
1. Přesuň kurzor níže na první řádek označený --->.
|
||||
|
||||
2. Přesuň kurzor na začátek první chyby.
|
||||
|
||||
3. Napiš r a potom znak, který nahradí chybu.
|
||||
|
||||
4. Opakuj kroky 2 až 3 dokud není první řádka správně.
|
||||
|
||||
---> Kdiž byl pzán tento řádeg, někdu stlažil špaqné klávesy!
|
||||
---> Když byl psán tento řádek, někdo stlačíl špatné klávesy!
|
||||
|
||||
5. Nyní přejdi na Lekci 3.2.
|
||||
|
||||
POZNÁMKA: Zapamatuj si, že by ses měl učit používáním, ne zapamatováním.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.3: PŘÍKAZ ÚPRAVY
|
||||
|
||||
|
||||
** Pokud chceš změnit část nebo celé slovo, napiš cw . **
|
||||
|
||||
1. Přesuň kurzor níže na první řádek označený --->.
|
||||
|
||||
2. Umísti kurzor na písmeno i v slově řiťok.
|
||||
|
||||
3. Napiš cw a oprav slovo (v tomto případě napiš 'ádek'.)
|
||||
|
||||
4. Stlač <ESC> a přejdi na další chybu (první znak, který třeba změnit.)
|
||||
|
||||
5. Opakuj kroky 3 až 4 dokud není první věta stejná jako ta druhá.
|
||||
|
||||
---> Tento řiťok má několik skic, které psadoinsa změnit pasdgf příkazu.
|
||||
---> Tento řádek má několik slov, které potřebují změnit pomocí příkazu.
|
||||
|
||||
Všimni si, že cw nejen nahrazuje slovo, ale také přemístí do vkládání.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 3.4: VÍCE ZMĚN POUŽITÍM c
|
||||
|
||||
|
||||
** Příkaz pro úpravu se druží se stejnými objekty jako ten pro mazání. **
|
||||
|
||||
1. Příkaz pro úpravu pracuje stejně jako pro mazání. Formát je:
|
||||
|
||||
[číslo] c objekt NEBO c [číslo] objekt
|
||||
|
||||
2. Objekty jsou také shodné, jako např.: w (slovo), $ (konec řádku), atd.
|
||||
|
||||
3. Přejdi níže na první řádek označený --->.
|
||||
|
||||
4. Přesuň kurzor na první rozdíl.
|
||||
|
||||
5. Napiš c$ pro upravení zbytku řádku podle toho druhého a stlač <ESC>.
|
||||
|
||||
---> Konec tohoto řádku potřebuje pomoc, aby byl jako ten druhý.
|
||||
---> Konec tohoto řádku potřebuje opravit použitím příkazu c$ .
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUTÍ LEKCE 3
|
||||
|
||||
|
||||
1. Pro vložení textu, který byl smazán, napiš p . To vloží smazaný text
|
||||
ZA kurzor (pokud byl řádek smazaný, přejde na řádek pod kurzorem).
|
||||
|
||||
2. Pro nahrazení znaku pod kurzorem, napiš r a potom znak, kterým
|
||||
chceš původní znak nahradit.
|
||||
|
||||
3. Příkaz na upravování umožňuje změnit specifikovaný objekt od kurzoru
|
||||
do konce objektu. Například: Napiš cw ,čímž změníš text od pozice
|
||||
kurzoru do konce slova, c$ změní text do konce řádku.
|
||||
|
||||
4. Formát pro nahrazování je:
|
||||
|
||||
[číslo] c objekt NEBO c [číslo] objekt
|
||||
|
||||
Nyní přejdi na následující lekci.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.1: POZICE A STATUS SOUBORU
|
||||
|
||||
|
||||
** Stlač CTRL-g pro zobrazení své pozice v souboru a statusu souboru.
|
||||
Stlač SHIFT-G pro přechod na řádek v souboru. **
|
||||
|
||||
Poznámka: Přečti si celou lekci než začneš vykonávat kroky!!
|
||||
|
||||
1. Drž klávesu Ctrl stlačenou a stiskni g . Vespod obrazovky se zobrazí
|
||||
stavový řádek s názvem souboru a řádkou na které se nacházíš. Zapamatuj
|
||||
si číslo řádku pro krok 3.
|
||||
|
||||
2. Stlač shift-G pro přesun na konec souboru.
|
||||
|
||||
3. Napiš číslo řádku na kterém si se nacházel a stlač shift-G. To tě
|
||||
vrátí na řádek, na kterém jsi dříve stiskl Ctrl-g.
|
||||
(Když píšeš čísla, tak se NEZOBRAZUJÍ na obrazovce.)
|
||||
|
||||
4. Pokud se cítíš schopný vykonat tyto kroky, vykonej je.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.2: PŘÍKAZ VYHLEDÁVÁNÍ
|
||||
|
||||
|
||||
** Napiš / následované řetězcem pro vyhledání onoho řetězce. **
|
||||
|
||||
1. Stiskni / v Normálním módu. Všimni si, že tento znak se spolu s
|
||||
kurzorem zobrazí v dolní části obrazovky jako příkaz : .
|
||||
|
||||
2. Nyní napiš 'chhybba' <ENTER>. To je slovo, které chceš vyhledat.
|
||||
|
||||
3. Pro vyhledání dalšího výsledku stejného řetězce, jednoduše stlač n .
|
||||
Pro vyhledání dalšího výsledku stejného řetězce opačným směrem, stiskni
|
||||
Shift-N.
|
||||
|
||||
4. Pokud chceš vyhledat řetězec v opačném směru, použij příkaz ? místo
|
||||
příkazu / .
|
||||
|
||||
---> "chhybba" není způsob, jak hláskovat chyba; chhybba je chyba.
|
||||
|
||||
Poznámka: Když vyhledávání dosáhne konce souboru, bude pokračovat na jeho
|
||||
začátku.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.3: VYHLEDÁVÁNÍ PÁROVÉ ZÁVORKY
|
||||
|
||||
|
||||
** Napiš % pro nalezení párové ),], nebo } . **
|
||||
|
||||
1. Přemísti kurzor na kteroukoli (, [, nebo { v řádku označeném --->.
|
||||
|
||||
2. Nyní napiš znak % .
|
||||
|
||||
3. Kurzor se přemístí na odpovídající závorku.
|
||||
|
||||
4. Stlač % pro přesun kurzoru zpět na otvírající závorku.
|
||||
|
||||
---> Toto ( je testovací řádek ('s, ['s ] a {'s } v něm. ))
|
||||
|
||||
Poznámka: Toto je velmi užitečné pří ladění programu s chybějícími
|
||||
uzavíracími závorkami.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 4.4: ZPŮSOB JAK ZMĚNIT CHYBY
|
||||
|
||||
|
||||
** Napiš :s/staré/nové/g pro nahrazení slova 'nové' za 'staré'. **
|
||||
|
||||
1. Přesuň kurzor na řádek označený --->.
|
||||
|
||||
2. Napiš :s/dobréé/dobré <ENTER> . Všimni si, že tento příkaz změní pouze
|
||||
první výskyt v řádku.
|
||||
|
||||
3. Nyní napiš :s/dobréé/dobré/g což znamená celkové nahrazení v řádku.
|
||||
Toto nahradí všechny výskyty v řádku.
|
||||
|
||||
---> dobréé suroviny a dobréé náčiní jsou základem dobréé kuchyně.
|
||||
|
||||
4. Pro změnu všech výskytů řetězce mezi dvěma řádky,
|
||||
Napiš :#,#s/staré/nové/g kde #,# jsou čísla oněch řádek.
|
||||
Napiš :%s/staré/nové/g pro změnu všech výskytů v celém souboru.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUTÍ LEKCE 4
|
||||
|
||||
|
||||
1. Ctrl-g vypíše tvou pozici v souboru a status souboru.
|
||||
Shift-G tě přemístí na konec souboru. Číslo následované
|
||||
Shift-G tě přesune na dané číslo řádku.
|
||||
|
||||
2. Napsání / následované řetězcem vyhledá řetězec směrem DOPŘEDU.
|
||||
Napsání ? následované řetězcem vyhledá řetězec směrem DOZADU.
|
||||
Napsání n po vyhledávání najde následující výskyt řetězce ve stejném
|
||||
směru, Shift-N ve směru opačném.
|
||||
|
||||
3. Stisknutí % když je kurzor na (,),[,],{, nebo } najde odpovídající
|
||||
párovou závorku.
|
||||
|
||||
4. Pro nahrazení nového za první starý v řádku napiš :s/staré/nové
|
||||
Pro nahrazení nového za všechny staré v řádku napiš :s/staré/nové/g
|
||||
Pro nahrazení řetězců mezi dvěmi řádkami # napiš :#,#s/staré/nové/g
|
||||
Pro nahrazení všech výskytů v souboru napiš :%s/staré/nové/g
|
||||
Pro potvrzení každého nahrazení přidej 'c' :%s/staré/nové/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.1: JAK VYKONAT VNĚJŠÍ PŘÍKAZ
|
||||
|
||||
|
||||
** Napiš :! následované vnějším příkazem pro spuštění příkazu. **
|
||||
|
||||
1. Napiš obvyklý příkaz : , který umístí kurzor na spodek obrazovky
|
||||
To umožní napsat příkaz.
|
||||
|
||||
2. Nyní stiskni ! (vykřičník). To umožní vykonat jakýkoliv vnější
|
||||
příkaz z příkazového řádku.
|
||||
|
||||
3. Například napiš ls za ! a stiskni <ENTER>. Tento příkaz zobrazí
|
||||
obsah tvého adresáře jako v příkazovém řádku.
|
||||
Vyzkoušej :!dir pokud ls nefunguje.
|
||||
|
||||
Poznámka: Takto je možné vykonat jakýkoliv příkaz.
|
||||
|
||||
Poznámka: Všechny příkazy : musí být dokončené stisknutím <ENTER>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.2: VÍCE O UKLÁDÁNÍ SOUBORŮ
|
||||
|
||||
|
||||
** Pro uložení změn v souboru napiš :w SOUBOR. **
|
||||
|
||||
1. Napiš :!dir nebo :!ls pro výpis aktuálního adresáře.
|
||||
Už víš, že za tímto musíš stisknout <ENTER>.
|
||||
|
||||
2. Vyber si název souboru, který ještě neexistuje, například TEST.
|
||||
|
||||
3. Nyní napiš: :w TEST (kde TEST je vybraný název souboru.)
|
||||
|
||||
4. To uloží celý soubor (Výuka Vimu) pod názvem TEST.
|
||||
Pro ověření napiš znovu :!dir , čímž zobrazíš obsah adresáře.
|
||||
|
||||
Poznámka: Jakmile ukončíš Vim a znovu ho spustíš s názvem souboru TEST,
|
||||
soubor bude přesná kopie výuky, když si ji ukládal.
|
||||
|
||||
5. Nyní odstraň soubor napsáním (MS-DOS): :!del TEST
|
||||
nebo (Unix): :!rm TEST
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.3: VÝBĚROVÝ PŘÍKAZ ULOŽENÍ
|
||||
|
||||
|
||||
** Pro uložení části souboru napiš :#,# w SOUBOR **
|
||||
|
||||
1. Ještě jednou napiš :!dir nebo :!ls pro výpis aktuálního adresáře
|
||||
a vyber vhodný název souboru jako např. TEST.
|
||||
|
||||
2. Přesuň kurzor na vrch této stránky a stiskni Ctrl-g pro zobrazení
|
||||
čísla řádku. ZAPAMATUJ SI TOTO ČÍSLO!
|
||||
|
||||
3. Nyní se přesuň na spodek této stránky a opět stiskni Ctrl-g.
|
||||
ZAPAMATUJ SI I ČÍSLO TOHOTO ŘÁDKU!
|
||||
|
||||
4. Pro uložení POUZE části souboru, napiš :#,# w TEST kde #,# jsou
|
||||
čísla dvou zapamatovaných řádků (vrch, spodek) a TEST je název souboru.
|
||||
|
||||
5. Znova se ujisti, že tam ten soubor je pomocí :!dir ale NEODSTRAŇUJ ho.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 5.4: SLUČOVÁNÍ SOUBORŮ
|
||||
|
||||
|
||||
** K vložení obsahu souboru napiš :r NÁZEV_SOUBORU **
|
||||
|
||||
1. Napiš :!dir pro ujištění, že soubor TEST stále existuje.
|
||||
|
||||
2. Přesuň kurzor na vrch této stránky.
|
||||
|
||||
POZNÁMKA: Po vykonání kroku 3 uvidíš lekci 5.3. Potom se opět přesuň dolů
|
||||
na tuto lekci.
|
||||
|
||||
3. Nyní vlož soubor TEST použitím příkazu :r TEST kde TEST je název
|
||||
souboru.
|
||||
|
||||
POZNÁMKA: Soubor, který vkládáš se vloží od místa, kde se nachází kurzor.
|
||||
|
||||
4. Pro potvrzení vložení souboru, přesuň kurzor zpět a všimni si, že teď
|
||||
máš dvě kopie lekce 5.3, originál a souborovou verzi.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRNUTÍ LEKCE 5
|
||||
|
||||
|
||||
1. :!příkaz vykoná vnější příkaz.
|
||||
|
||||
Některé užitečné příklady jsou:
|
||||
(MS-DOS) (Unix)
|
||||
:!dir :!ls - zobrazí obsah souboru.
|
||||
:!del SOUBOR :!rm SOUBOR - odstraní SOUBOR.
|
||||
|
||||
2. :w SOUBOR uloží aktuální text jako SOUBOR na disk.
|
||||
|
||||
3. :#,#w SOUBOR uloží řádky od # do # do SOUBORU.
|
||||
|
||||
4. :r SOUBOR vybere z disku SOUBOR a vloží ho do editovaného souboru
|
||||
za pozici kurzoru.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.1: PŘÍKAZ OTEVŘÍT
|
||||
|
||||
|
||||
** Napiš o pro vložení řádku pod kurzor a přepnutí do Vkládacího módu. **
|
||||
|
||||
1. Přemísti kurzor níže na řádek označený --->.
|
||||
|
||||
2. Napiš o (malé) pro vložení řádku POD kurzor a přepnutí do
|
||||
Vkládacího módu.
|
||||
|
||||
3. Nyní zkopíruj řádek označený ---> a stiskni <ESC> pro ukončení
|
||||
Vkládacího módu.
|
||||
|
||||
---> Po stisknutí o se kurzor přemístí na vložený řádek do Vkládacího
|
||||
módu.
|
||||
|
||||
4. Pro otevření řádku NAD kurzorem jednoduše napiš velké O , místo
|
||||
malého o. Vyzkoušej si to na následujícím řádku.
|
||||
Vlož řádek nad tímto napsáním Shift-O po umístění kurzoru na tento řádek.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.2: PŘÍKAZ PŘIDAT
|
||||
|
||||
|
||||
** Stiskni a pro vložení textu ZA kurzor. **
|
||||
|
||||
1. Přesuň kurzor na níže na konec řádky označené --->
|
||||
stisknutím $ v Normálním módu.
|
||||
|
||||
2. Stiskni a (malé) pro přidání textu ZA znak, který je pod kurzorem.
|
||||
(Velké A přidá na konec řádku.)
|
||||
|
||||
Poznámka: Tímto se vyhneš stisknutí i , posledního znaku, textu na vložení,
|
||||
<ESC>, kurzor doprava, a nakonec x na přidávání na konec řádku!
|
||||
|
||||
3. Nyní dokončí první řádek. Všimni si, že přidávání je vlastně stejné jako
|
||||
Vkládací mód, kromě místa, kam se text vkládá.
|
||||
|
||||
---> Tento řádek ti umožňuje nacvičit
|
||||
---> Tento řádek ti umožňuje nacvičit přidávání textu na konec řádky.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.3: JINÝ ZPŮSOB NAHRAZOVÁNÍ
|
||||
|
||||
|
||||
** Napiš velké R pro nahrazení víc než jednoho znaku. **
|
||||
|
||||
1. Přesuň kurzor na první řádek označený --->.
|
||||
|
||||
2. Umísti kurzor na začátek prvního slova, které je odlišné od druhého
|
||||
řádku označeného ---> (slovo 'poslední').
|
||||
|
||||
3. Nyní stiskni R a nahraď zbytek textu na prvním řádku přepsáním
|
||||
starého textu tak, aby byl první řádek stejný jako ten druhý.
|
||||
|
||||
---> Pro upravení prvního řádku do tvaru toho poslední na straně použij kl.
|
||||
---> Pro upravení prvního řádku do tvaru toho druhého, napiš R a nový text.
|
||||
|
||||
4. Všimni si, že jakmile stiskneš <ESC> všechen nezměněný text zůstává.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Lekce 6.4: NASTAVENÍ MOŽNOSTÍ
|
||||
|
||||
** Nastav možnost, že vyhledávání anebo nahrazování nedbá velikosti písmen **
|
||||
|
||||
1. Vyhledej řetězec 'ignore' napsáním:
|
||||
/ignore
|
||||
Zopakuj několikrát stisknutí klávesy n.
|
||||
|
||||
2. Nastav možnost 'ic' (Ignore case) napsáním příkazu:
|
||||
:set ic
|
||||
|
||||
3. Nyní znovu vyhledej 'ignore' stisknutím: n
|
||||
Několikrát hledání zopakuj stisknutím klávesy n.
|
||||
|
||||
4. Nastav možnosti 'hlsearch' a 'incsearch':
|
||||
:set hls is
|
||||
|
||||
5. Nyní znovu vykonej vyhledávací příkaz a sleduj, co se stane:
|
||||
/ignore
|
||||
|
||||
6. Pro vypnutí zvýrazňování výsledků napiš:
|
||||
:nohlsearch
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SHRHNUTÍ LEKCE 6
|
||||
|
||||
|
||||
1. Stisknutí o otevře nový řádek POD kurzorem a umístí kurzor na vložený
|
||||
řádek do Vkládacího módu.
|
||||
Napsání velkého O otevře řádek NAD řádkem, na kterém je kurzor.
|
||||
|
||||
2. Stiskni a pro vložení textu ZA znak na pozici kurzoru.
|
||||
Napsání velkého A automaticky přidá text na konec řádku.
|
||||
|
||||
3. Stisknutí velkého R přepne do Nahrazovacího módu, dokud
|
||||
nestiskneš <ESC> pro jeho ukončení.
|
||||
|
||||
4. Napsání ":set xxx" nastaví možnosti "xxx".
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LEKCE 7: PŘÍKAZY ON-LINE NÁPOVĚDY
|
||||
|
||||
|
||||
** Používej on-line systém nápovědy **
|
||||
|
||||
Vim má obsáhlý on-line systém nápovědy. Pro začátek vyzkoušej jeden z
|
||||
následujících:
|
||||
- stiskni klávesu <HELP> (pokud ji máš)
|
||||
- stiskni klávesu <F1> (pokud ji máš)
|
||||
- napiš :help <ENTER>
|
||||
|
||||
Napiš :q <ENTER> pro uzavření okna nápovědy.
|
||||
|
||||
Můžeš najít nápovědu k jakémukoliv tématu přidáním argumentu k
|
||||
příkazu ":help". Zkus tyto (nezapomeň stisknout <ENTER>):
|
||||
|
||||
:help w
|
||||
:help c_<T
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
LEKCE 8: VYTVOŘENÍ INICIALIZAČNÍHO SKRIPTU
|
||||
|
||||
** Zapni funkce editoru Vim **
|
||||
|
||||
Vim má daleko více funkcí než Vi, ale většina z nich je vypnuta ve výchozím
|
||||
nastavení. Pro zapnutí některých vytvoř soubor "vimrc".
|
||||
|
||||
1. Začni upravovat soubor "vimrc". Toto závisí na použitém systému:
|
||||
:edit ~/.vimrc pro Unix
|
||||
:edit $VIM/_vimrc pro MS-Windows
|
||||
|
||||
2. Nyní čti ukázkový "vimrc" soubor:
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Ulož soubor pomocí:
|
||||
|
||||
:write
|
||||
|
||||
Po příštím startu Vim se zapne zvýrazňování syntaxe.
|
||||
Do souboru "vimrc" můžeš přidat všechny svoje upřednostňované nastavení.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Toto ukončuje výuku Vim, která byla myšlená jako stručný přehled
|
||||
editoru Vim, tak akorát postačující pro lehké a obstojné používání editoru.
|
||||
Tato výuka má daleko od úplnosti, protože Vim obsahuje podstatně více
|
||||
příkazů. Dále si přečti uživatelský manuál: ":help user-manual".
|
||||
|
||||
Pro další studium je doporučená kniha:
|
||||
Vim - Vi Improved - od Steve Oualline
|
||||
Nakladatel: New Riders
|
||||
První kniha určená pro Vim. Obzvláště vhodná pro začátečníky.
|
||||
Obsahuje množství příkladů a obrázků.
|
||||
viz http://iccf-holland.org/click5.html
|
||||
|
||||
Tato kniha je starší a více věnovaná Vi než Vim, ale také doporučená:
|
||||
Learning the Vi Editor - od Linda Lamb
|
||||
Nakladatel: O'Reilly & Associates Inc.
|
||||
Je to dobrá kniha pro získání vědomostí téměř o všem, co můžete s Vi dělat.
|
||||
Šesté vydání obsahuje též informace o Vim.
|
||||
|
||||
Tato výuka byla napsaná autory Michael C. Pierce a Robert K. Ware,
|
||||
Colorado School of Mines s použitím myšlenek od: Charles Smith,
|
||||
Colorado State University. E-mail: bware@mines.colorado.edu.
|
||||
|
||||
Upravil pro Vim: Bram Moolenaar.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Překlad do češtiny: Luboš Turek
|
||||
E-Mail: lubos.turek@gmail.com
|
||||
2007 Feb 28
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user